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.
branchmap: enable caching for filtered version too
The `_branchcache` attribute is turned into a dictionary. Key are filter name and
value is a `branchcache` object. Unfiltered version is cached as `None` filter.
The attribute is renamed to `_branchcaches` to avoid confusion with the previous
one. Both old and new contents are dictionary even if their contents are
different. I prefer possible extension code to crash right away instead of just
messing the wrong dictionary.
As all different caches work isolated to each other, this code keeps the
previous behavior of using the unfiltered cache we nothing is filtered. This
is a cheap way to have cache collaborate and nullify potential impact in the
default case.
branchmap: report filtername when read fails
Now that we can have multiple one, we need to know which filecache failed to be
read from disk.
clfilter: ensure unfiltered repo have a filtername attribute too
That will allows to use `repo.filtername` for dispatch purpose.
branchmap: move the cache file name into a dedicated function
Filtered view of the repo will want to write they file name in a different file.
branchmap: read and write key part related to filtered revision
Now that we have a third part for the cache key we need to write and read it on
disk. It is only written when there is filtered revision. This keep the format
compatible with older version.
Notes that, at this state, filtered repository does not use any disk caches yet.
check-code: disallow defunct <> operator
Added a test for that and one other python3 check in
test-check-code.t.
largefiles: stop using <> operator in favor of !=
<> has been deprecated for a while, and != is futureproof