Mercurial > hg
view tests/test-gendoc.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 | 5abc47d4ca6b |
children |
line wrap: on
line source
#require docutils #require gettext Test document extraction $ HGENCODING=UTF-8 $ export HGENCODING $ { echo C; ls "$TESTDIR/../i18n"/*.po | sort; } | while read PO; do > LOCALE=`basename "$PO" .po` > echo "% extracting documentation from $LOCALE" > LANGUAGE=$LOCALE "$PYTHON" "$TESTDIR/../doc/gendoc.py" >> gendoc-$LOCALE.txt 2> /dev/null || exit > > if [ $LOCALE != C ]; then > if [ ! -f $TESTDIR/test-gendoc-$LOCALE.t ]; then > echo missing test-gendoc-$LOCALE.t > fi > cmp -s gendoc-C.txt gendoc-$LOCALE.txt && echo "** NOTHING TRANSLATED ($LOCALE) **" > fi > done; true % extracting documentation from C % extracting documentation from da % extracting documentation from de % extracting documentation from el % extracting documentation from fr % extracting documentation from it % extracting documentation from ja % extracting documentation from pt_BR % extracting documentation from ro % extracting documentation from ru % extracting documentation from sv % extracting documentation from zh_CN % extracting documentation from zh_TW