Sun, 12 Mar 2017 07:09:18 +0530 minirst: make encoding.encoding unicodes to pass into encode() and decode()
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 12 Mar 2017 07:09:18 +0530] rev 31327
minirst: make encoding.encoding unicodes to pass into encode() and decode()
Sun, 12 Mar 2017 06:59:37 +0530 minirst: make regular expressions bytes
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 12 Mar 2017 06:59:37 +0530] rev 31326
minirst: make regular expressions bytes
Sat, 11 Mar 2017 17:14:02 -0800 setup: convert setupversion to unicode
Gregory Szorc <gregory.szorc@gmail.com> [Sat, 11 Mar 2017 17:14:02 -0800] rev 31325
setup: convert setupversion to unicode Something deep in the bowels of distutils expects "version" passed to setup() to be a str/unicode. So, convert the type. This still works on Python 2 because the string is ascii and an implicit coercion back to str/bytes should work without issue. If it does cause problems, we can always make the unicode conversion dependent on running Python 3. This change makes `python3.5 setup.py install` work.
Wed, 14 Jan 2015 01:15:26 +0100 util: add debugstacktrace depth limit
Mads Kiilerich <madski@unity3d.com> [Wed, 14 Jan 2015 01:15:26 +0100] rev 31324
util: add debugstacktrace depth limit Useful when you don't care about the start of the stack, but only want to see the last entries.
Fri, 16 Jan 2015 04:26:40 +0100 util: strip trailing newline from debugstacktrace message
Mads Kiilerich <madski@unity3d.com> [Fri, 16 Jan 2015 04:26:40 +0100] rev 31323
util: strip trailing newline from debugstacktrace message This makes the function more convenient to use as drop-in replacement for ui.write & co.
Fri, 16 Jan 2015 04:26:40 +0100 tests: rework util.debugstacktrace tests
Mads Kiilerich <madski@unity3d.com> [Fri, 16 Jan 2015 04:26:40 +0100] rev 31322
tests: rework util.debugstacktrace tests Prepare for adding another test.
Sat, 11 Mar 2017 11:04:14 -0800 vfs: use repo.vfs.rename
Mads Kiilerich <mads@kiilerich.com> [Sat, 11 Mar 2017 11:04:14 -0800] rev 31321
vfs: use repo.vfs.rename
Sat, 11 Mar 2017 11:02:25 -0800 vfs: use repo.vfs.unlinkpath
Mads Kiilerich <mads@kiilerich.com> [Sat, 11 Mar 2017 11:02:25 -0800] rev 31320
vfs: use repo.vfs.unlinkpath
Wed, 14 Jan 2015 01:15:26 +0100 merge: use repo.wvfs.unlinkpath
Mads Kiilerich <madski@unity3d.com> [Wed, 14 Jan 2015 01:15:26 +0100] rev 31319
merge: use repo.wvfs.unlinkpath
Wed, 14 Jan 2015 01:15:26 +0100 vfs: use repo.wvfs.unlinkpath
Mads Kiilerich <madski@unity3d.com> [Wed, 14 Jan 2015 01:15:26 +0100] rev 31318
vfs: use repo.wvfs.unlinkpath
Wed, 08 Mar 2017 18:11:41 -0500 policy: try and always have a bytes for module policy
Augie Fackler <raf@durin42.com> [Wed, 08 Mar 2017 18:11:41 -0500] rev 31317
policy: try and always have a bytes for module policy debuginstall now runs cleanly in Python 3.
Wed, 08 Mar 2017 18:11:19 -0500 init: zstd is already python3-ready, so don't run it through our importer
Augie Fackler <raf@durin42.com> [Wed, 08 Mar 2017 18:11:19 -0500] rev 31316
init: zstd is already python3-ready, so don't run it through our importer
Fri, 03 Mar 2017 14:42:56 -0500 config: guard against setconfig specifying unicode values on py3
Augie Fackler <raf@durin42.com> [Fri, 03 Mar 2017 14:42:56 -0500] rev 31315
config: guard against setconfig specifying unicode values on py3 This was leading to some difficult to trace problems because the values were set in one place, but then blew up much later in the program. Exploding violently with an assertion seems reasonable here.
Fri, 03 Mar 2017 14:43:27 -0500 dispatch: enforce bytes when converting boolean flags to config items
Augie Fackler <raf@durin42.com> [Fri, 03 Mar 2017 14:43:27 -0500] rev 31314
dispatch: enforce bytes when converting boolean flags to config items This fixes --verbose on Python 3.
Fri, 03 Mar 2017 13:52:08 -0500 py3: add a test that proves %include and missing-extension code works
Augie Fackler <raf@durin42.com> [Fri, 03 Mar 2017 13:52:08 -0500] rev 31313
py3: add a test that proves %include and missing-extension code works
Fri, 03 Mar 2017 14:08:02 -0500 extensions: tapdance to get reasonable import error formatting
Augie Fackler <raf@durin42.com> [Fri, 03 Mar 2017 14:08:02 -0500] rev 31312
extensions: tapdance to get reasonable import error formatting I'm not thrilled with this, but it seems to work.
Sat, 11 Mar 2017 10:35:44 -0800 rebase: abort if *any* commit in rebase set is public
Martin von Zweigbergk <martinvonz@google.com> [Sat, 11 Mar 2017 10:35:44 -0800] rev 31311
rebase: abort if *any* commit in rebase set is public
Sat, 11 Mar 2017 13:53:14 -0500 merge with stable
Augie Fackler <augie@google.com> [Sat, 11 Mar 2017 13:53:14 -0500] rev 31310
merge with stable
Thu, 09 Mar 2017 20:53:14 -0800 httpconnection: rename config to groups
Gregory Szorc <gregory.szorc@gmail.com> [Thu, 09 Mar 2017 20:53:14 -0800] rev 31309
httpconnection: rename config to groups Because that is what it is.
Thu, 09 Mar 2017 20:51:57 -0800 httpconnection: don't use dict()
Gregory Szorc <gregory.szorc@gmail.com> [Thu, 09 Mar 2017 20:51:57 -0800] rev 31308
httpconnection: don't use dict() Not sure the history here. But we don't do this elsewhere.
Thu, 09 Mar 2017 15:38:00 -0800 formatter: set _first on formatter, not ui
Martin von Zweigbergk <martinvonz@google.com> [Thu, 09 Mar 2017 15:38:00 -0800] rev 31307
formatter: set _first on formatter, not ui The _first field is used for tracking when to emit a separator between items. It seems like it's clearly formatter state, not ui state, so let's move it there.
Fri, 10 Mar 2017 23:07:20 -0800 rebase: unhide original working directory node as well (issue5219)
Martin von Zweigbergk <martinvonz@google.com> [Fri, 10 Mar 2017 23:07:20 -0800] rev 31306
rebase: unhide original working directory node as well (issue5219) By including the working directory revision at the start of rebase in the repo._rebaseset, we make sure it's not hidden when we update back to it at the end of the rebase. This feels like abusing the set a bit given its name (_rebaseset), but I couldn't think of another name that's clearly better.
Fri, 10 Mar 2017 23:06:31 -0800 rebase: pass in a regular set to _setrebasesetvisibility()
Martin von Zweigbergk <martinvonz@google.com> [Fri, 10 Mar 2017 23:06:31 -0800] rev 31305
rebase: pass in a regular set to _setrebasesetvisibility() Trivial refactoring to simplify the next patch.
Wed, 01 Feb 2017 09:18:44 -0800 tests: demonstrate broken rebase from obsolete commit
Martin von Zweigbergk <martinvonz@google.com> [Wed, 01 Feb 2017 09:18:44 -0800] rev 31304
tests: demonstrate broken rebase from obsolete commit This shows the bug I reported in issue 5219.
Wed, 01 Mar 2017 16:19:41 -0800 treemanifest: make node reuse match flat manifest behavior
Durham Goode <durham@fb.com> [Wed, 01 Mar 2017 16:19:41 -0800] rev 31303
treemanifest: make node reuse match flat manifest behavior In a flat manifest, a node with the same content but different parents is still considered a new node. In the current tree manifests however, if the content is the same, we ignore the parents entirely and just reuse the existing node. In our external treemanifest extension, we want to allow having one treemanifest for every flat manifests, as a way of easeing the migration to treemanifests. To make this possible, let's change the root node treemanifest behavior to match the behavior for flat manifests, so we can have a 1:1 relationship. While this sounds like a BC breakage, it's not actually a state users can normally get in because: A) you can't make empty commits, and B) even if you try to make an empty commit (by making a commit then amending it's changes away), the higher level commit logic in localrepo.commitctx() forces the commit to use the original p1 manifest node if no files were changed. So this would only affect extensions and automation that reached passed the normal localrepo.commit() logic straight into the manifest logic.
Fri, 10 Mar 2017 17:37:39 -0500 help: update help.internalstable for new censor docs
Augie Fackler <augie@google.com> [Fri, 10 Mar 2017 17:37:39 -0500] rev 31302
help: update help.internalstable for new censor docs
Fri, 10 Mar 2017 16:54:41 -0500 parsers: drop old nonnormalentries method
Augie Fackler <augie@google.com> [Fri, 10 Mar 2017 16:54:41 -0500] rev 31301
parsers: drop old nonnormalentries method This is okay to do because the Python will fall back transparently if the method is missing.
Fri, 10 Mar 2017 16:53:00 -0500 parsers: avoid leak of nonnset and otherpset
Augie Fackler <augie@google.com> [Fri, 10 Mar 2017 16:53:00 -0500] rev 31300
parsers: avoid leak of nonnset and otherpset Py_BuildValue increments the refcount, rather than stealing the reference, which I missed in code review.
Thu, 09 Mar 2017 20:33:29 -0800 sslutil: issue warning when [hostfingerprint] is used
Gregory Szorc <gregory.szorc@gmail.com> [Thu, 09 Mar 2017 20:33:29 -0800] rev 31299
sslutil: issue warning when [hostfingerprint] is used Mercurial 3.9 added the [hostsecurity] section, which is better than [hostfingerprints] in every way. One of the ways that [hostsecurity] is better is that it supports SHA-256 and SHA-512 fingerprints, not just SHA-1 fingerprints. The world is moving away from SHA-1 because it is borderline secure. Mercurial should be part of that movement. This patch adds a warning when a valid SHA-1 fingerprint from the [hostfingerprints] section is being used. The warning informs users to switch to [hostsecurity]. It even prints the config option they should set. It uses the SHA-256 fingerprint because recommending a SHA-1 fingerprint in 2017 would be ill-advised. The warning will print itself on every connection to a server until it is fixed. There is no way to suppress the warning. I admit this is annoying. But given the security implications of sticking with SHA-1, I think this is justified. If this patch is accepted, I'll likely send a follow-up to start warning on SHA-1 certificates in [hostsecurity] as well. Then sometime down the road, we can drop support for SHA-1 fingerprints. Credit for this idea comes from timeless in issue 5466.
Thu, 09 Mar 2017 19:59:52 -0800 setup: use setuptools on Windows (issue5400)
Gregory Szorc <gregory.szorc@gmail.com> [Thu, 09 Mar 2017 19:59:52 -0800] rev 31298
setup: use setuptools on Windows (issue5400) We've had a long, complicated history with setuptools. We want to make it the universal default. But when we do, it breaks things. `python setup.py build` is broken on Windows today. Forcing the use of setuptools via FORCE_SETUPTOOLS=1 unbreaks things. Since the previous bustage with making setuptools the default was on !Windows, it seems safe to move ahead with the setuptools transition on Windows. So this patch does that.
(0) -30000 -10000 -3000 -1000 -300 -100 -50 -30 +30 +50 +100 +300 +1000 +3000 +10000 tip