Sun, 16 Jul 2017 11:17:00 -0700 commandserver: do not handle EINTR for selector.select
Jun Wu <quark@fb.com> [Sun, 16 Jul 2017 11:17:00 -0700] rev 33543
commandserver: do not handle EINTR for selector.select selectors2 library handles EINTR transparently so we don't need to handle select.error ourselves.
Sun, 16 Jul 2017 02:33:14 +0200 debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net> [Sun, 16 Jul 2017 02:33:14 +0200] rev 33542
debugobsolete: also report the number of obsoleted changesets This seems useful to have the number of obsoleted changesets when calling debugobsolete.
Sun, 16 Jul 2017 02:20:06 +0200 transaction-summary: display the summary for all transactions
Boris Feld <boris.feld@octobus.net> [Sun, 16 Jul 2017 02:20:06 +0200] rev 33541
transaction-summary: display the summary for all transactions Now that we records "all" changes happening in a transaction (in tr.changes) we will be able to provide better report on various changes (phases turned public, changeset obsoleted, branch merged or created, etc..) This is far too late in the cycle to play with this, but having this existing method called more widely will help extensions to play around with various options during the 4.4 cycle. Instead of calling registersummarycallback only for transactions we want, we always call it and use the transaction name to decide when to report (eg: we do not want `hg amend` to report new obsoleted changesets). Filtering on transaction name does not seems great, but seems good enough for the moment. We can change the API during the next cycle. The previous manual call during unbundling of the bundle2 "obsmarkers" part is no longer necessary and has been dropped.
Sun, 16 Jul 2017 02:38:14 +0200 test-strip: fix call to super class in crashstriprepo
Boris Feld <boris.feld@octobus.net> [Sun, 16 Jul 2017 02:38:14 +0200] rev 33540
test-strip: fix call to super class in crashstriprepo The 'self' argument is already taken care of by the 'super(...)' call. Instead we were passing the repository instance as the 'desc' value. This got discovered by breaking the next changeset.
Sat, 15 Jul 2017 23:49:22 +0200 share: share 'cachevfs' with the source clone (issue5108)
Boris Feld <boris.feld@octobus.net> [Sat, 15 Jul 2017 23:49:22 +0200] rev 33539
share: share 'cachevfs' with the source clone (issue5108) Share extension now also share caches reads and writes. Not sharing caches results in costly caches recomputations which can takes up to minutes when using shares on large repositories. There are a couple of file in the '.hg/cache/' that depends of the current visibility. Visibility can be affected by the working copy location, something which is specific to each share. We ignores them for this series because they: * are the minority, * already have a good fallback to other precomputed caches, * are only affected when people use the experimental evolution feature.
Sat, 15 Jul 2017 23:05:15 +0200 cachevfs: add a devel warning for cache access though 'vfs'
Boris Feld <boris.feld@octobus.net> [Sat, 15 Jul 2017 23:05:15 +0200] rev 33538
cachevfs: add a devel warning for cache access though 'vfs' This will help third party extensions to migrate to the new 'cachevfs'.
Sat, 15 Jul 2017 23:30:25 +0200 cachevfs: migration the tags fnode cache to 'cachevfs'
Boris Feld <boris.feld@octobus.net> [Sat, 15 Jul 2017 23:30:25 +0200] rev 33537
cachevfs: migration the tags fnode cache to 'cachevfs' This will help sharing the cache between shares.
Sat, 15 Jul 2017 23:30:16 +0200 cachevfs: migrate tagscache to 'cachevfs'
Boris Feld <boris.feld@octobus.net> [Sat, 15 Jul 2017 23:30:16 +0200] rev 33536
cachevfs: migrate tagscache to 'cachevfs' This will help sharing the cache between shares.
Sat, 15 Jul 2017 22:42:50 +0200 cachevfs: migration the revbranchcache to 'cachevfs'
Boris Feld <boris.feld@octobus.net> [Sat, 15 Jul 2017 22:42:50 +0200] rev 33535
cachevfs: migration the revbranchcache to 'cachevfs' This will help sharing the cache between shares.
Sat, 15 Jul 2017 22:42:31 +0200 cachevfs: use the new vfs in when computing branchmap cache
Boris Feld <boris.feld@octobus.net> [Sat, 15 Jul 2017 22:42:31 +0200] rev 33534
cachevfs: use the new vfs in when computing branchmap cache This will help sharing the cache between shares.
Sat, 15 Jul 2017 23:05:04 +0200 cachevfs: add a vfs dedicated to cache
Boris Feld <boris.feld@octobus.net> [Sat, 15 Jul 2017 23:05:04 +0200] rev 33533
cachevfs: add a vfs dedicated to cache Most of the cache content lives in '.hg/cache/'. Moreover they are computed exclusively from data in the '.hg/store' directory. This creates issues with the share extension as the '.hg/store' directory is shared but the '.hg/cache' is not. On large repositories, this makes this prevent some usage of the share extension inefficient as some caches can take minutes to be recomputed. To improve the situation, we introduce a new 'cachevfs' that will be dedicated to cache reading and writing. In the next patches of this series, we'll migrate the 4 existing caches to it and update the share extension.
Sat, 15 Jul 2017 22:40:51 +0200 vfsward: register 'write with no lock' warnings as 'check-locks' config
Boris Feld <boris.feld@octobus.net> [Sat, 15 Jul 2017 22:40:51 +0200] rev 33532
vfsward: register 'write with no lock' warnings as 'check-locks' config Update 'write with no lock' warnings in order to be better controlled by the config. We reuse the option used for lock order for these other lock related message. The message can now be disabled using 'devel.check-locks = no' (in addition to the usual 'devel.all-warnings = no').
Sun, 16 Jul 2017 17:38:39 +0900 demandimport: prefer loaded module over package attribute (issue5617)
Yuya Nishihara <yuya@tcha.org> [Sun, 16 Jul 2017 17:38:39 +0900] rev 33531
demandimport: prefer loaded module over package attribute (issue5617) In general, the attribute of the same name is overwritten by executing an import statement. import a.b print(a.b.c) # 'c' of a/b/__init__.py from a.b.c import d print(a.b.c) # a/b/c.py However, this appears not true for the scenario described in the test case, and surprisingly, "from a.b.c import d" works even if "a.b.c" is not a module. This patch works around the problem by taking the right module from sys.modules if available.
Sun, 16 Jul 2017 17:19:22 +0900 demandimport: drop Py3 workarounds from Py2 implementation
Yuya Nishihara <yuya@tcha.org> [Sun, 16 Jul 2017 17:19:22 +0900] rev 33530
demandimport: drop Py3 workarounds from Py2 implementation
Sun, 16 Jul 2017 17:16:32 +0900 demandimport: drop hack for old Pythons which had no level argument
Yuya Nishihara <yuya@tcha.org> [Sun, 16 Jul 2017 17:16:32 +0900] rev 33529
demandimport: drop hack for old Pythons which had no level argument _import() was added by 868282fa29d8, but it is identical to _origimport() now.
Sun, 16 Jul 2017 17:47:10 +0900 tests: drop "absimport" conditionals which should be always true
Yuya Nishihara <yuya@tcha.org> [Sun, 16 Jul 2017 17:47:10 +0900] rev 33528
tests: drop "absimport" conditionals which should be always true
Sat, 15 Jul 2017 14:17:35 +0200 color: drop the now useless color extension
Boris Feld <boris.feld@octobus.net> [Sat, 15 Jul 2017 14:17:35 +0200] rev 33527
color: drop the now useless color extension all the extension features are provided by core since 4.2.
Sat, 15 Jul 2017 14:16:54 +0200 extensions: expand the builtins extensions declaration
Boris Feld <boris.feld@octobus.net> [Sat, 15 Jul 2017 14:16:54 +0200] rev 33526
extensions: expand the builtins extensions declaration This will future updates of the set cleaner and more readable.
Sat, 15 Jul 2017 20:31:52 +0200 debugextensions: drop the color from the test
Boris Feld <boris.feld@octobus.net> [Sat, 15 Jul 2017 20:31:52 +0200] rev 33525
debugextensions: drop the color from the test We are about to remove the extension so we remove trace of it in this specific test to prevent it to be confused.
Fri, 30 Jun 2017 03:30:13 +0200 configitems: register the 'bugzilla.notify' config
Boris Feld <boris.feld@octobus.net> [Fri, 30 Jun 2017 03:30:13 +0200] rev 33524
configitems: register the 'bugzilla.notify' config
Fri, 30 Jun 2017 03:44:56 +0200 configitems: register the 'ui.mergemarkertemplate' config
Boris Feld <boris.feld@octobus.net> [Fri, 30 Jun 2017 03:44:56 +0200] rev 33523
configitems: register the 'ui.mergemarkertemplate' config
Sat, 15 Jul 2017 14:14:53 +0200 configitems: register the 'ui.color' config
Boris Feld <boris.feld@octobus.net> [Sat, 15 Jul 2017 14:14:53 +0200] rev 33522
configitems: register the 'ui.color' config
Sat, 15 Jul 2017 14:14:46 +0200 color: drop the _enabledbydefault module variable
Boris Feld <boris.feld@octobus.net> [Sat, 15 Jul 2017 14:14:46 +0200] rev 33521
color: drop the _enabledbydefault module variable Since color is on by default, cleanup the now useless variable in both core and color extension.
Fri, 30 Jun 2017 03:44:45 +0200 configitems: register the 'ui.forcecwd' config
Boris Feld <boris.feld@octobus.net> [Fri, 30 Jun 2017 03:44:45 +0200] rev 33520
configitems: register the 'ui.forcecwd' config
Fri, 30 Jun 2017 03:44:43 +0200 configitems: register the 'ui.fallbackencoding' config
Boris Feld <boris.feld@octobus.net> [Fri, 30 Jun 2017 03:44:43 +0200] rev 33519
configitems: register the 'ui.fallbackencoding' config
Mon, 10 Jul 2017 21:49:37 +0200 bookmark: deprecate direct del of a bookmark value
Boris Feld <boris.feld@octobus.net> [Mon, 10 Jul 2017 21:49:37 +0200] rev 33518
bookmark: deprecate direct del of a bookmark value We want all bookmark deletion to go through 'applychanges', so lets deprecate legacy ways of doing bookmark deletion.
Mon, 10 Jul 2017 21:47:34 +0200 bookmark: deprecate direct set of a bookmark value
Boris Feld <boris.feld@octobus.net> [Mon, 10 Jul 2017 21:47:34 +0200] rev 33517
bookmark: deprecate direct set of a bookmark value We want all bookmark update to go through 'applychanges', so lets deprecate legacy ways of doing bookmark update.
Mon, 10 Jul 2017 20:26:53 +0200 bookmark: track bookmark changes at the transaction level
Boris Feld <boris.feld@octobus.net> [Mon, 10 Jul 2017 20:26:53 +0200] rev 33516
bookmark: track bookmark changes at the transaction level The transaction has now a 'bookmarks' dictionary in tr.changes. The structure of the dictionary is {BOOKMARK_NAME: (OLD_NODE, NEW_NODE)}. If a bookmark is deleted NEW_NODE will be None. If a bookmark is created OLD_NODE will be None. If the bookmark is updated multiple time, the initial value is preserved.
Mon, 10 Jul 2017 20:10:03 +0200 bookmark: deprecate 'recordchange' in favor of 'applychanges'
Boris Feld <boris.feld@octobus.net> [Mon, 10 Jul 2017 20:10:03 +0200] rev 33515
bookmark: deprecate 'recordchange' in favor of 'applychanges' Now that we have migrated all in-core caller of 'recordchange' to 'applychanges', deprecate 'recordchange' so external callers will move to the new unified method.
Mon, 10 Jul 2017 20:06:15 +0200 bookmark: drop deletedivergent
Boris Feld <boris.feld@octobus.net> [Mon, 10 Jul 2017 20:06:15 +0200] rev 33514
bookmark: drop deletedivergent It has no caller anymore.
(0) -30000 -10000 -3000 -1000 -300 -100 -50 -30 +30 +50 +100 +300 +1000 +3000 +10000 tip