Source: intake Version: 0.6.0-4 Severity: serious Justification: FTBFS on amd64 Tags: bullseye sid ftbfs Usertags: ftbfs-20210213 ftbfs-bullseye
Hi, During a rebuild of all packages in sid, your package failed to build on amd64. Relevant part (hopefully): > make[1]: Entering directory '/<<PKGBUILDDIR>>' > dh_install > # For some reason, not all data is movable via install or dh_install, so > # just force copy (and overwrite if needed) for pytest to actually work > for py in `py3versions -sv` ; do cp -a intake/source/tests > .pybuild/cpython3_${py}_intake/build/intake/source; done > PYBUILD_SYSTEM=custom \ > PYBUILD_TEST_ARGS='cd {build_dir}; > PATH=/<<PKGBUILDDIR>>/debian/{package}/usr/bin:/<<PKGBUILDDIR>>/debian/{package}/usr/lib:/<<PKGBUILDDIR>>/debian/{package}/build/intake:$PATH > {interpreter} -m pytest' \ > dh_auto_test --buildsystem=pybuild > I: pybuild base:232: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_intake/build; > PATH=/<<PKGBUILDDIR>>/debian/python3-intake/usr/bin:/<<PKGBUILDDIR>>/debian/python3-intake/usr/lib:/<<PKGBUILDDIR>>/debian/python3-intake/build/intake:$PATH > python3.9 -m pytest > ============================= test session starts > ============================== > platform linux -- Python 3.9.1+, pytest-6.0.2, py-1.10.0, pluggy-0.13.0 > rootdir: /<<PKGBUILDDIR>> > collected 371 items / 9 skipped / 362 selected > > intake/auth/tests/test_auth.py ...... [ > 1%] > intake/catalog/tests/test_alias.py .. [ > 2%] > intake/catalog/tests/test_auth_integration.py .. [ > 2%] > intake/catalog/tests/test_caching_integration.py .................. [ > 7%] > intake/catalog/tests/test_core.py . [ > 7%] > intake/catalog/tests/test_default.py . [ > 8%] > intake/catalog/tests/test_discovery.py . [ > 8%] > intake/catalog/tests/test_gui.py ..s..s [ > 9%] > intake/catalog/tests/test_local.py ..................................... [ > 19%] > ................................................. [ > 33%] > intake/catalog/tests/test_parameters.py ............ [ > 36%] > intake/catalog/tests/test_persist.py .s [ > 36%] > intake/catalog/tests/test_reload_integration.py .... [ > 38%] > intake/catalog/tests/test_remote_integration.py ........................ [ > 44%] > ... [ > 45%] > intake/catalog/tests/test_utils.py ....... [ > 47%] > intake/catalog/tests/test_zarr.py ... [ > 47%] > intake/cli/client/tests/test_cache.py ...... [ > 49%] > intake/cli/client/tests/test_conf.py ..... [ > 50%] > intake/cli/client/tests/test_local_integration.py ......... [ > 53%] > intake/cli/server/tests/test_serializer.py sss......... [ > 56%] > intake/cli/server/tests/test_server.py ......ss.. [ > 59%] > intake/cli/tests/test_util.py ........ [ > 61%] > intake/container/tests/test_generics.py . [ > 61%] > intake/container/tests/test_persist.py ...s [ > 62%] > intake/gui/tests/test_init_gui.py ..s [ > 63%] > intake/source/tests/test_base.py ................. [ > 68%] > intake/source/tests/test_cache.py ...............s [ > 72%] > intake/source/tests/test_csv.py ......FFF..s.. [ > 76%] > intake/source/tests/test_discovery.py ...... [ > 77%] > intake/source/tests/test_npy.py ........... [ > 80%] > intake/source/tests/test_text.py .................. [ > 85%] > intake/source/tests/test_utils.py ............................... [ > 94%] > intake/tests/test_config.py ........ [ > 96%] > intake/tests/test_top_level.py ......s. [ > 98%] > intake/tests/test_utils.py ...... > [100%] > > =================================== FAILURES > =================================== > ______________________________ test_read_pattern > _______________________________ > > sample_pattern_datasource = sources: > csv: > args: > urlpath: > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_intake/build/intake/source/tests/sample{num:d}_{dup:d}.csv > description: '' > driver: intake.source.csv.CSVSource > metadata: {} > > > def test_read_pattern(sample_pattern_datasource): > da = sample_pattern_datasource.to_dask() > assert set(da.num.cat.categories) == {2, 3} > assert set(da.dup.cat.categories) == {1, 2} > > check_read_pattern_output(sample_pattern_datasource) > > intake/source/tests/test_csv.py:156: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > source = sources: > csv: > args: > urlpath: > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_intake/build/intake/source/tests/sample{num:d}_{dup:d}.csv > description: '' > driver: intake.source.csv.CSVSource > metadata: {} > > > def check_read_pattern_output(source): > da = source.to_dask() > assert da.num.cat.known is True > assert da.dup.cat.known is True > > # check that first partition has correct num and dup; which file > # it represents is not guaranteed > df0 = da.get_partition(0).compute() > if df0['name'][0].endswith('1'): > > assert all(df0.num == 2) > E assert False > E + where False = all(0 3\n1 3\n2 3\n3 3\nName: num, > dtype: category\nCategories (2, int64): [2, 3] == 2) > E + where 0 3\n1 3\n2 3\n3 3\nName: num, dtype: > category\nCategories (2, int64): [2, 3] = name score rank num dup\n0 > Alice1 100.5 1 3 2\n1 Bob1 50.3 2 3 2\n2 Charlie1 > 25.0 3 3 2\n3 Eve1 25.0 3 3 2.num > > intake/source/tests/test_csv.py:119: AssertionError > _________________________ test_read_pattern_with_cache > _________________________ > > sample_pattern_datasource_with_cache = sources: > csv: > args: > urlpath: > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_intake/build/intake/s... regex: > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_intake/build/intake/source/tests > type: file > > > def test_read_pattern_with_cache(sample_pattern_datasource_with_cache): > da = sample_pattern_datasource_with_cache.to_dask() > assert set(da.num.cat.categories) == {2, 3} > assert set(da.dup.cat.categories) == {1, 2} > > check_read_pattern_output(sample_pattern_datasource_with_cache) > > intake/source/tests/test_csv.py:163: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > source = sources: > csv: > args: > urlpath: > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_intake/build/intake/s... regex: > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_intake/build/intake/source/tests > type: file > > > def check_read_pattern_output(source): > da = source.to_dask() > assert da.num.cat.known is True > assert da.dup.cat.known is True > > # check that first partition has correct num and dup; which file > # it represents is not guaranteed > df0 = da.get_partition(0).compute() > if df0['name'][0].endswith('1'): > assert all(df0.num == 2) > > assert all(df0.dup == 1) > E assert False > E + where False = all(0 2\n1 2\n2 2\n3 2\nName: dup, > dtype: category\nCategories (2, int64): [1, 2] == 1) > E + where 0 2\n1 2\n2 2\n3 2\nName: dup, dtype: > category\nCategories (2, int64): [1, 2] = name score rank num dup\n0 > Alice1 100.5 1 2 2\n1 Bob1 50.3 2 2 2\n2 Charlie1 > 25.0 3 2 2\n3 Eve1 25.0 3 2 2.dup > > intake/source/tests/test_csv.py:120: AssertionError > ----------------------------- Captured stderr call > ----------------------------- > > 0/|/sample2_2.csv: | > > 0/|/sample3_2.csv: |[A > > > 0/|/sample2_1.csv: |[A[A > > > > [A > > > [A[A > __________________ test_read_pattern_with_path_as_pattern_str > __________________ > > sample_list_datasource_with_path_as_pattern_str = sources: > csv: > args: > path_as_pattern: sample{num:d}_{dup:d}.csv > urlpath: > - /<<BUILDDIR>>...e/build/intake/source/tests/sample2_2.csv > description: '' > driver: intake.source.csv.CSVSource > metadata: {} > > > def > test_read_pattern_with_path_as_pattern_str(sample_list_datasource_with_path_as_pattern_str): > da = sample_list_datasource_with_path_as_pattern_str.to_dask() > assert set(da.num.cat.categories) == {2} > assert set(da.dup.cat.categories) == {1, 2} > > > > check_read_pattern_output(sample_list_datasource_with_path_as_pattern_str) > > intake/source/tests/test_csv.py:170: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > source = sources: > csv: > args: > path_as_pattern: sample{num:d}_{dup:d}.csv > urlpath: > - /<<BUILDDIR>>...e/build/intake/source/tests/sample2_2.csv > description: '' > driver: intake.source.csv.CSVSource > metadata: {} > > > def check_read_pattern_output(source): > da = source.to_dask() > assert da.num.cat.known is True > assert da.dup.cat.known is True > > # check that first partition has correct num and dup; which file > # it represents is not guaranteed > df0 = da.get_partition(0).compute() > if df0['name'][0].endswith('1'): > assert all(df0.num == 2) > > assert all(df0.dup == 1) > E assert False > E + where False = all(0 2\n1 2\n2 2\n3 2\nName: dup, > dtype: category\nCategories (2, int64): [1, 2] == 1) > E + where 0 2\n1 2\n2 2\n3 2\nName: dup, dtype: > category\nCategories (2, int64): [1, 2] = name score rank num dup\n0 > Alice1 100.5 1 2 2\n1 Bob1 50.3 2 2 2\n2 Charlie1 > 25.0 3 2 2\n3 Eve1 25.0 3 2 2.dup > > intake/source/tests/test_csv.py:120: AssertionError > =========================== short test summary info > ============================ > FAILED intake/source/tests/test_csv.py::test_read_pattern - assert False > FAILED intake/source/tests/test_csv.py::test_read_pattern_with_cache - > assert... > FAILED > intake/source/tests/test_csv.py::test_read_pattern_with_path_as_pattern_str > ================== 3 failed, 355 passed, 22 skipped in 50.61s > ================== > E: pybuild pybuild:353: test: plugin custom failed with: exit code=1: cd > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_intake/build; > PATH=/<<PKGBUILDDIR>>/debian/python3-intake/usr/bin:/<<PKGBUILDDIR>>/debian/python3-intake/usr/lib:/<<PKGBUILDDIR>>/debian/python3-intake/build/intake:$PATH > python3.9 -m pytest > dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.9 > returned exit code 13 The full build log is available from: http://qa-logs.debian.net/2021/02/13/intake_0.6.0-4_unstable.log A list of current common problems and possible solutions is available at http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute! If you reassign this bug to another package, please marking it as 'affects'-ing this package. See https://www.debian.org/Bugs/server-control#affects If you fail to reproduce this, please provide a build log and diff it with me so that we can identify if something relevant changed in the meantime. About the archive rebuild: The rebuild was done on EC2 VM instances from Amazon Web Services, using a clean, minimal and up-to-date chroot. Every failed build was retried once to eliminate random failures.