Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 02 Jan 2013 01:36:57 +0100] rev 18222
branchmap: disable fallback to unfiltered branchcache
Disables this simple optimisation to allow coming more powerfull approach: cache
collaboration.
Our goal is to have branchcache collaborate. This means that unfiltered
branchcache will fallback to some filtered branchcache if invalid. We can't have
the filtered branchcache to use the unfiltered one. That would loop.
Idan Kamara <idankk86@gmail.com> [Fri, 21 Dec 2012 17:19:52 +0100] rev 18221
localrepo: filter unknown nodes from the phasecache on destroyed
When commit is followed by strip (qrefresh), phasecache contains nodes that were
removed from the changelog. Since phasecache is filecached with .hg/store/phaseroots
which doesn't change as a result of stripping, we have to filter it manually.
If we don't write it immediately, the next time it is read from disk the nodes
will be filtered again. That's what happened before, but there's no reason not
to write it immediately.
The change in test-keyword.t is caused by the above.
Idan Kamara <idankk86@gmail.com> [Fri, 04 Jan 2013 06:11:29 +0100] rev 18220
phases: make _filterunknown a member function of phasecache
We'd like the ability to call filterunknown on an existing phasecache
instance after nodes are destroyed.
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 04 Jan 2013 01:37:38 +0100] rev 18219
localrepo: drop `_cacheabletip` method
It iss dead code now.
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 04 Jan 2013 01:25:55 +0100] rev 18218
branchmap: drop `_cacheabletip` usage in `updatecache`
Nobody overwrite the `_cacheabletip` any more. We always update the cache for
the whole repo and write it to disk (or at list try to). The `updatecache` code
is simplied to remove the double phase logic associated with _cacheabletip.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Fri, 28 Dec 2012 03:42:21 +0100] rev 18217
mq: drop `_cacheabletip` usage
Strip have dedicated work around to solve the same problem, strip is even a
fraction faster without that thanks to simpler update process of the branchcache.
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 28 Dec 2012 02:34:32 +0100] rev 18216
bundlerepo: drop use of `_cacheabletip`
Now that bundlerepo use a read only VFS, we do not worry about what part of the
branchmap is written back to disk. Nothing is written at all.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Fri, 28 Dec 2012 02:32:47 +0100] rev 18215
bundlerepo: enforce reading from core repo only
We do not want anything computed with the bundle overlay to be written back in
the repo. Such write will likely contains invalid data.
The short terms goal of this change is to drop use of `_cacheabletip` in bundle
repo.
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 04 Jan 2013 04:52:57 +0100] rev 18214
branchmap: ignore Abort error while writing cache
Read only vfs can now raise Abort exception. Note that encoding.local are also a
possible raiser.
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 04 Jan 2013 01:07:25 +0100] rev 18213
vfs: add a read only vfs
This read only wrapper is intended to be used bundle repo. See follow up commit
for details.
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sat, 22 Dec 2012 19:41:11 +0100] rev 18212
branchmap: read return None in case of failure
This makes a clear distinction between having read a valid cache on disk or not.
This will help caches of various filtering level to collaborate.
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sat, 29 Dec 2012 00:40:18 +0100] rev 18211
clfilter: fallback to unfiltered version when linkrev point to filtered history
On `filectx`, linkrev may point to any revision in the repository. When the
repository is filtered this may lead to `filectx` trying to build `changectx`
for filtered revision. In such case we fallback to creating `changectx` on the
unfiltered version of the reposition. This fallback should not be an issue
because `changectx` from `filectx` are not used in complex operation that
care about filtering. It is complicated to work around the issue in a
clearer way as code raising such `filectx` rarely have access to the
repository directly.
Linkrevs create a lot of issue with filtering. It is stored in revlog entry at
creation time and never changed. Nothing prevent the changeset revision pointed
to become filtered. Several bogus behavior emerge from such situation. Those
bugs are complex to solve and not part of the current effort to install
filtering. This changeset is simple hack that prevent plain crash in favor on
minor misbehavior without visible effect.
This "hack" is longly documented in to code itself to help people that would
look at it in the future.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Mon, 24 Dec 2012 11:58:40 +0100] rev 18210
phases: prepare phase command for filtering
The phase command have some logic to report change made. We ensure this logic
run unfiltered.
With --force the command can change phase of a changeset for public to draft.
Such change can lead to obsolescence marker to apply again and the changeset to
be "hidden". If we do not run the logic unfiltered it could failed to fetch the
phase of a newly filtered changeset.
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Mon, 24 Dec 2012 11:57:48 +0100] rev 18209
phases: avoid changectx creation while checking command result
This minor changesets saves the creation of a `changectx` ctx object only used to
fetch the revision number.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Tue, 04 Dec 2012 15:25:22 +0100] rev 18208
test: use obsolescence marker to test hidden
Instead of using a custom dedicated extension.
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Wed, 02 Jan 2013 13:59:07 +0100] rev 18207
test-command-template.t: make "age" filter test work on Feb 29th
reported by Julien Cristau.
Matt Mackall <mpm@selenic.com> [Wed, 02 Jan 2013 00:24:28 -0600] rev 18206
merge with stable
Matt Mackall <mpm@selenic.com> [Wed, 02 Jan 2013 00:07:43 -0600] rev 18205
Added signature for changeset a4765077b65e
Matt Mackall <mpm@selenic.com> [Wed, 02 Jan 2013 00:07:40 -0600] rev 18204
Added tag 2.4.2 for changeset a4765077b65e
Matt Mackall <mpm@selenic.com> [Wed, 02 Jan 2013 00:03:31 -0600] rev 18203
merge with i18n
Matt Mackall <mpm@selenic.com> [Wed, 02 Jan 2013 00:02:22 -0600] rev 18202
merge i18n heads
Angel Ezquerra <angel.ezquerra@gmail.com> [Thu, 20 Dec 2012 19:22:12 +0100] rev 18201
hgweb, paper: add (Atom) subscribe links to the repository index
This is similar to the subscribe links that already exist in other templates.
Rather than the usual RSS and Atom links a single feed icon linking to the
atom-log is shown.
Angel Ezquerra <angel.ezquerra@gmail.com> [Tue, 04 Dec 2012 00:41:29 +0100] rev 18200
hgweb: add (Atom) subscribe link to the main paper template pages
The subscribe link is found at the bottom of the navigation sidebar.
This uses a free icon from http://feedicons.com.
Augie Fackler <raf@durin42.com> [Mon, 31 Dec 2012 21:50:35 -0600] rev 18199
test-command-template.t: fix test so it all year
This test started failing for me after midnight UTC on December
31st. Fixed it by specifying a date 7 years in the future more
precisely (rather than just adding 8 to the year and specifying
January 1st), which allows the test to pass both now and on 2012-12-01
at the same time.
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sun, 30 Dec 2012 03:49:15 +0100] rev 18198
amend: prevent loss of bookmark on failed amend
The active bookmark were moved to the temporary commit. When the transaction
were rollbacked, the bookmark were lost.
We now temporarly disable the bookmark to prevent this effect.
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sat, 29 Dec 2012 18:00:18 +0100] rev 18197
amend: invalidate dirstate in case of failure (issue3670)
The temporary commit created by amend update the dirstate. If the final commit
fails, we need to invalidate the change made to the dirstate, otherwise the
release of the wlock will write the dirstate created after the rollbacked
temporary commit.
This dirstate writing logic should probably be handled in the same object than
the transaction one. However such change are too big for stable.
Nikolaj Sjujskij <sterkrig@myopera.com> [Sat, 24 Nov 2012 01:40:39 +0400] rev 18196
i18n-ru: delete loose letter
Alexander Sauta <demosito@gmail.com> [Thu, 27 Dec 2012 07:32:51 +0000] rev 18195
i18n-ru: synchonized with 777084ac8416
Matt Mackall <mpm@selenic.com> [Thu, 20 Dec 2012 16:36:45 -0600] rev 18194
paper: sanity-check page feed links
filelog has feeds in header, but not in menu bar
help has header feeds pointing to tags
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Sun, 30 Dec 2012 19:19:52 +0100] rev 18193
zeroconf: use port from server instead of picking port from config (issue3746)
In order to get the port, wrap create server instead of
hgweb_mod/hgwebdir_mod.