Mercurial > hg
view tests/test-sidedata.t @ 45034:b1a1702262c9 stable
py3: fix crash when server address is 0.0.0.0 (issue6362)
`socket.getfqdn()` assumes that the name is passed as `str` on Python 3 and
always returns `str` in this case. Mercurial passed `bytes` (but still expected
a `str` result), which worked by chance in many cases, except for e.g.
b'0.0.0.0', which was returned unchanged, breaking later code.
Instead of calling `socket.getfqdn()`, we can also use `self.server_name` from
the base `HTTPServer` class, which already stores the FQDN of the locally-bound
socket name (see `BaseHTTPServer.py` in the Python 2 stdlib and
`http/server.py` in the Python 3 stdlib).
author | Manuel Jacob <me@manueljacob.de> |
---|---|
date | Fri, 03 Jul 2020 23:25:19 +0200 |
parents | bca9d1a6c4c5 |
children | ea9563e9e65a |
line wrap: on
line source
========================================================== Test file dedicated to checking side-data related behavior ========================================================== Check data can be written/read from sidedata ============================================ $ cat << EOF >> $HGRCPATH > [extensions] > testsidedata=$TESTDIR/testlib/ext-sidedata.py > EOF $ hg init test-sidedata --config format.exp-use-side-data=yes $ cd test-sidedata $ echo aaa > a $ hg add a $ hg commit -m a --traceback $ echo aaa > b $ hg add b $ hg commit -m b $ echo xxx >> a $ hg commit -m aa $ hg debugsidedata -c 0 2 sidedata entries entry-0001 size 4 entry-0002 size 32 $ hg debugsidedata -c 1 -v 2 sidedata entries entry-0001 size 4 '\x00\x00\x006' entry-0002 size 32 '\x98\t\xf9\xc4v\xf0\xc5P\x90\xf7wRf\xe8\xe27e\xfc\xc1\x93\xa4\x96\xd0\x1d\x97\xaaG\x1d\xd7t\xfa\xde' $ hg debugsidedata -m 2 2 sidedata entries entry-0001 size 4 entry-0002 size 32 $ hg debugsidedata a 1 2 sidedata entries entry-0001 size 4 entry-0002 size 32 Check upgrade behavior ====================== Right now, sidedata has not upgrade support Check that we can upgrade to sidedata ------------------------------------- $ hg init up-no-side-data --config format.exp-use-side-data=no $ hg debugformat -v -R up-no-side-data format-variant repo config default fncache: yes yes yes dotencode: yes yes yes generaldelta: yes yes yes sparserevlog: yes yes yes sidedata: no no no copies-sdc: no no no plain-cl-delta: yes yes yes compression: zlib zlib zlib compression-level: default default default $ hg debugformat -v -R up-no-side-data --config format.exp-use-side-data=yes format-variant repo config default fncache: yes yes yes dotencode: yes yes yes generaldelta: yes yes yes sparserevlog: yes yes yes sidedata: no yes no copies-sdc: no no no plain-cl-delta: yes yes yes compression: zlib zlib zlib compression-level: default default default $ hg debugupgraderepo -R up-no-side-data --config format.exp-use-side-data=yes > /dev/null Check that we can downgrade from sidedata ----------------------------------------- $ hg init up-side-data --config format.exp-use-side-data=yes $ hg debugformat -v -R up-side-data format-variant repo config default fncache: yes yes yes dotencode: yes yes yes generaldelta: yes yes yes sparserevlog: yes yes yes sidedata: yes no no copies-sdc: no no no plain-cl-delta: yes yes yes compression: zlib zlib zlib compression-level: default default default $ hg debugformat -v -R up-side-data --config format.exp-use-side-data=no format-variant repo config default fncache: yes yes yes dotencode: yes yes yes generaldelta: yes yes yes sparserevlog: yes yes yes sidedata: yes no no copies-sdc: no no no plain-cl-delta: yes yes yes compression: zlib zlib zlib compression-level: default default default $ hg debugupgraderepo -R up-side-data --config format.exp-use-side-data=no > /dev/null