annotate CONTRIBUTING @ 33755:cde4cfeb6e3e stable

ui: restore behavior to ignore some I/O errors (issue5658) e9646ff34d55 and 1bfb9a63b98e refactored ui methods to no longer silently swallow some IOError instances. This is arguably the correct thing to do. However, it had the unfortunate side-effect of causing StdioError to bubble up to sensitive code like transaction aborts, leading to an uncaught exceptions and failures to e.g. roll back a transaction. This could occur when a remote HTTP or SSH client connection dropped. The new behavior is resulting in semi-frequent "abandonded transaction" errors on multiple high-volume repositories at Mozilla. This commit effectively reverts e9646ff34d55 and 1bfb9a63b98e to restore the old behavior. I agree with the principle that I/O errors shouldn't be ignored. That makes this change... unfortunate. However, our hands are tied for what to do on stable. I think the proper solution is for the ui's behavior to be configurable (possibly via a context manager). During critical sections like transaction rollback and abort, it should be possible to suppress errors. But this feature would not be appropriate on stable.
author Gregory Szorc <gregory.szorc@gmail.com>
date Tue, 15 Aug 2017 13:04:31 -0700
parents a492610a2fc1
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
30084
a492610a2fc1 contributing: add new file with a pointer to the wiki
Augie Fackler <augie@google.com>
parents:
diff changeset
1 Our full contribution guidelines are in our wiki, please see:
a492610a2fc1 contributing: add new file with a pointer to the wiki
Augie Fackler <augie@google.com>
parents:
diff changeset
2
a492610a2fc1 contributing: add new file with a pointer to the wiki
Augie Fackler <augie@google.com>
parents:
diff changeset
3 https://www.mercurial-scm.org/wiki/ContributingChanges
a492610a2fc1 contributing: add new file with a pointer to the wiki
Augie Fackler <augie@google.com>
parents:
diff changeset
4
a492610a2fc1 contributing: add new file with a pointer to the wiki
Augie Fackler <augie@google.com>
parents:
diff changeset
5 If you just want a checklist to follow, you can go straight to
a492610a2fc1 contributing: add new file with a pointer to the wiki
Augie Fackler <augie@google.com>
parents:
diff changeset
6
a492610a2fc1 contributing: add new file with a pointer to the wiki
Augie Fackler <augie@google.com>
parents:
diff changeset
7 https://www.mercurial-scm.org/wiki/ContributingChanges#Submission_checklist
a492610a2fc1 contributing: add new file with a pointer to the wiki
Augie Fackler <augie@google.com>
parents:
diff changeset
8
a492610a2fc1 contributing: add new file with a pointer to the wiki
Augie Fackler <augie@google.com>
parents:
diff changeset
9 If you can't run the entire testsuite for some reason (it can be
a492610a2fc1 contributing: add new file with a pointer to the wiki
Augie Fackler <augie@google.com>
parents:
diff changeset
10 difficult on Windows), please at least run `contrib/check-code.py` on
a492610a2fc1 contributing: add new file with a pointer to the wiki
Augie Fackler <augie@google.com>
parents:
diff changeset
11 any files you've modified and run `python contrib/check-commit` on any
a492610a2fc1 contributing: add new file with a pointer to the wiki
Augie Fackler <augie@google.com>
parents:
diff changeset
12 commits you've made (for example, `python contrib/check-commit
a492610a2fc1 contributing: add new file with a pointer to the wiki
Augie Fackler <augie@google.com>
parents:
diff changeset
13 273ce12ad8f1` will report some style violations on a very old commit).