Your message dated Thu, 03 Oct 2024 23:04:50 +0000
with message-id <e1swusm-00dk5h...@fasolo.debian.org>
and subject line Bug#1082393: fixed in python-webargs 8.6.0-1
has caused the Debian Bug report #1082393,
regarding FTBFS: TestBottleParser.test_parse_json_with_nonutf8_chars
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact ow...@bugs.debian.org
immediately.)
--
1082393: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1082393
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems
--- Begin Message ---
Source: python-webargs
Version: 8.5.0-1
Severity: serious
Tags: ftbfs
Justification: FTBFS
Dear maintainer,
During a test rebuild, python-webargs failed to rebuild.
-------------------------------------------------------------------------------
[...]
dh_auto_test -O--buildsystem=pybuild
I: pybuild base:311: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_webargs/build;
python3.12 -m pytest -k 'not test_get_path_param and not
test_get_with_no_json_body and not test_post and not
test_missing_required_field_throws_422 and not test_required_field_provided and
not test_use_kwargs_with_error and not
test_user_validator_returns_422_by_default'
============================= test session starts ==============================
platform linux -- Python 3.12.6, pytest-8.3.3, pluggy-1.5.0
rootdir: /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_webargs/build
configfile: pyproject.toml
plugins: asyncio-0.20.3, typeguard-4.3.0
asyncio: mode=Mode.STRICT
collected 464 items / 7 deselected / 457 selected
tests/test_bottleparser.py .....................F...............F..s [ 8%]
tests/test_core.py ..................................................... [ 20%]
........................................................................ [ 36%]
.............. [ 39%]
tests/test_djangoparser.py ........................................s.... [ 49%]
. [ 49%]
tests/test_falconparser.py .....................................s....... [ 59%]
...... [ 60%]
tests/test_flaskparser.py .............................................. [ 70%]
.......................................................... [ 83%]
tests/test_pyramidparser.py ........................................... [ 92%]
tests/test_tornadoparser.py ................................. [100%]
=================================== FAILURES ===================================
_____________ TestBottleParser.test_parse_json_with_nonutf8_chars ______________
self = <tests.test_bottleparser.TestBottleParser object at 0xffff925b91f0>
testapp = <webtest.app.TestApp object at 0xffff92bd6480>
def test_parse_json_with_nonutf8_chars(self, testapp):
res = testapp.post(
"/echo_json",
b"\xfe",
headers={"Accept": "application/json", "Content-Type":
"application/json"},
expect_errors=True,
)
assert res.status_code == 400
> assert res.json == {"json": ["Invalid JSON body."]}
webargs/testing.py:162:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib/python3/dist-packages/webtest/response.py:470: in json
return self.json_body
/usr/lib/python3/dist-packages/webob/response.py:574: in _json_body__get
return json.loads(self.body.decode('UTF-8'))
/usr/lib/python3.12/json/__init__.py:346: in loads
return _default_decoder.decode(s)
/usr/lib/python3.12/json/decoder.py:337: in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <json.decoder.JSONDecoder object at 0xffff939823c0>, s = 'Invalid JSON'
idx = 0
def raw_decode(self, s, idx=0):
"""Decode a JSON document from ``s`` (a ``str`` beginning with
a JSON document) and return a 2-tuple of the Python
representation and the index in ``s`` where the document ended.
This can be used to decode a JSON document from a string that may
have extraneous data at the end.
"""
try:
obj, end = self.scan_once(s, idx)
except StopIteration as err:
> raise JSONDecodeError("Expecting value", s, err.value) from None
E json.decoder.JSONDecodeError: Expecting value: line 1 column 1
(char 0)
/usr/lib/python3.12/json/decoder.py:355: JSONDecodeError
______________________ TestBottleParser.test_invalid_json ______________________
self = <tests.test_bottleparser.TestBottleParser object at 0xffff925ba660>
testapp = <webtest.app.TestApp object at 0xffff92bd6480>
def test_invalid_json(self, testapp):
res = testapp.post(
"/echo_json",
'{"foo": "bar", }',
headers={"Accept": "application/json", "Content-Type":
"application/json"},
expect_errors=True,
)
assert res.status_code == 400
> assert res.json == {"json": ["Invalid JSON body."]}
webargs/testing.py:253:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib/python3/dist-packages/webtest/response.py:470: in json
return self.json_body
/usr/lib/python3/dist-packages/webob/response.py:574: in _json_body__get
return json.loads(self.body.decode('UTF-8'))
/usr/lib/python3.12/json/__init__.py:346: in loads
return _default_decoder.decode(s)
/usr/lib/python3.12/json/decoder.py:337: in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <json.decoder.JSONDecoder object at 0xffff939823c0>, s = 'Invalid JSON'
idx = 0
def raw_decode(self, s, idx=0):
"""Decode a JSON document from ``s`` (a ``str`` beginning with
a JSON document) and return a 2-tuple of the Python
representation and the index in ``s`` where the document ended.
This can be used to decode a JSON document from a string that may
have extraneous data at the end.
"""
try:
obj, end = self.scan_once(s, idx)
except StopIteration as err:
> raise JSONDecodeError("Expecting value", s, err.value) from None
E json.decoder.JSONDecodeError: Expecting value: line 1 column 1
(char 0)
/usr/lib/python3.12/json/decoder.py:355: JSONDecodeError
=============================== warnings summary ===============================
../../../../../../usr/lib/python3/dist-packages/django/conf/__init__.py:267
/usr/lib/python3/dist-packages/django/conf/__init__.py:267:
RemovedInDjango50Warning: The USE_L10N setting is deprecated. Starting with
Django 5.0, localized formatting of data will always be enabled. For example
Django will display numbers and dates using the format of the current locale.
warnings.warn(USE_L10N_DEPRECATED_MSG, RemovedInDjango50Warning)
-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
=========================== short test summary info ============================
FAILED
tests/test_bottleparser.py::TestBottleParser::test_parse_json_with_nonutf8_chars
FAILED tests/test_bottleparser.py::TestBottleParser::test_invalid_json - json...
====== 2 failed, 452 passed, 3 skipped, 7 deselected, 1 warning in 1.88s =======
E: pybuild pybuild:389: test: plugin pyproject failed with: exit code=1: cd
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_webargs/build; python3.12 -m pytest -k
'not test_get_path_param and not test_get_with_no_json_body and not test_post
and not test_missing_required_field_throws_422 and not
test_required_field_provided and not test_use_kwargs_with_error and not
test_user_validator_returns_422_by_default'
dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.12
returned exit code 13
make: *** [debian/rules:12: build] Error 25
dpkg-buildpackage: error: debian/rules build subprocess returned exit status 2
--------------------------------------------------------------------------------
Build finished at 2024-09-19T23:30:29Z
-------------------------------------------------------------------------------
The above is just how the build ends and not necessarily the most relevant part.
If required, the full build log is available here (for the next 30 days):
https://debusine.debian.net/artifact/800657/
About the archive rebuild: The build was made on debusine.debian.net,
on arm64 using sbuild.
You can find the build task here:
https://debusine.debian.net/work-request/39208/
If this is really a bug in one of the build-depends, please use
reassign and affects, so that this is still visible in the BTS web
page for this package.
Thanks,
Stefano
--- End Message ---
--- Begin Message ---
Source: python-webargs
Source-Version: 8.6.0-1
Done: Colin Watson <cjwat...@debian.org>
We believe that the bug you reported is fixed in the latest version of
python-webargs, which is due to be installed in the Debian FTP archive.
A summary of the changes between this version and the previous one is
attached.
Thank you for reporting the bug, which will now be closed. If you
have further comments please address them to 1082...@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.
Debian distribution maintenance software
pp.
Colin Watson <cjwat...@debian.org> (supplier of updated python-webargs package)
(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmas...@ftp-master.debian.org)
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
Format: 1.8
Date: Thu, 03 Oct 2024 23:42:24 +0100
Source: python-webargs
Architecture: source
Version: 8.6.0-1
Distribution: unstable
Urgency: medium
Maintainer: Debian Python Team <team+pyt...@tracker.debian.org>
Changed-By: Colin Watson <cjwat...@debian.org>
Closes: 1082393
Changes:
python-webargs (8.6.0-1) unstable; urgency=medium
.
* Team upload.
* New upstream release:
- Fix the handling of invalid JSON bodies in the bottle parser to
support bottle versions >=0.13 (closes: #1082393).
Checksums-Sha1:
291414f94c62b73270dcc41e251471bb55b12034 2416 python-webargs_8.6.0-1.dsc
72bec11c839918e02340842c97f5e71c4d084971 101280
python-webargs_8.6.0.orig.tar.gz
7ddc14c20e7a1116d6bf9551ad1175cbcf2ac3b6 4560
python-webargs_8.6.0-1.debian.tar.xz
Checksums-Sha256:
4d653409fe8abcca26b14ca26e74fa783951a117545e20f589d7c5a3bacce159 2416
python-webargs_8.6.0-1.dsc
f80f18c4a1280e8bcc1b787ac456f8439ccc683b74fe29cdb438baccdc40d215 101280
python-webargs_8.6.0.orig.tar.gz
2044a133bc44fede1e13f7dec4c587c9b055ec182b38685af88c3f1cff3af2ad 4560
python-webargs_8.6.0-1.debian.tar.xz
Files:
dbe6954219fed72194128a8c30353f10 2416 python optional
python-webargs_8.6.0-1.dsc
d3d4ea72ce57d84359ed93349699bf83 101280 python optional
python-webargs_8.6.0.orig.tar.gz
f4de9f7535f0c7cb09ef6ece40196a83 4560 python optional
python-webargs_8.6.0-1.debian.tar.xz
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEErApP8SYRtvzPAcEROTWH2X2GUAsFAmb/Hh8ACgkQOTWH2X2G
UAsZRBAAnM7/uKKB1pPBCuzv7louQU/iRAwojcQkevZdIgXCYBdEaim/FQiroQy8
sIvip6PYYOjk4oWpJmQyw66BVkP4Un7TBLvQl9KeMI4aKTz+sKIgYubbxZgHk79h
12NW/tC6Ud8ySJJsefsmRVKhNKgh/J5POzc5DHwU/3UpQ+cpCC7xA52pRUXohs6p
yEV4nNpC1yw81/fdDE8bJHyHFT+ZNDlyKE2bS2tJaZ5Bg8+V+ZA/l9vQ6uOMTkLE
6pyIGR5Ko+WgxCojOc9PcjIoAJHXP4dmnC/aOz4woiYaK+UR0t6N9YY9Tuvd6qgG
wFIAabtfZZhEUQ5X6sAN3YawP1ear96i8gL3ob4M3t4BGzmL6GhMxsU/rU8E5EmE
Jbqa9yU2+YfNqQoaIEunrsV/TAK51bHOFOgtTpUl5q2g4uE+yOm9/vFOF3sIaZe7
UkRoA8wzZb0b8JFszp3UFSws5E4b6jsvNALgwibajNEzxILVfmR5+6kFBEASMWJ1
B87QKVq8wo/3f0Ed6EY9qGrGq+Hc37JWp/O6Ppa5FF/rzmRvyatdTveowdcYyiW5
hoZT1kTrP3d0Q2iLGKZkoaqxt/omI7wEppKbxHtghjFPvS5b4jdjdcPcth9XAblK
ld1ion/Vk5+uz25FK9i3xyPepQ3bfXujIUGnmyl+D9I3CKr6v/0=
=FGfs
-----END PGP SIGNATURE-----
pgpAcxiUlnDEN.pgp
Description: PGP signature
--- End Message ---