Package: src:python-dynasor
Version: 2.1-2
Severity: serious
Tags: ftbfs forky sid

Dear maintainer:

During a rebuild of all packages in unstable, this package failed to build.

Below you will find the last part of the build log (probably the most
relevant part, but not necessarily). If required, the full build log
is available here:

https://people.debian.org/~sanvila/build-logs/202606/

About the archive rebuild: The build was made on virtual machines from AWS,
using sbuild and a reduced chroot with only build-essential packages.

If you cannot reproduce the bug please contact me privately, as I
am willing to provide ssh access to a virtual machine where the bug is
fully reproducible.

If this is really a bug in one of the build-depends, please use
reassign and add an affects on src:python-dynasor, so that this is still
visible in the BTS web page for this package.

Thanks.

--------------------------------------------------------------------------------
[...]

        Notes
        -----
        - If the file contains pickle data, then whatever object is stored
          in the pickle is returned.
        - If the file is a ``.npy`` file, then a single array is returned.
        - If the file is a ``.npz`` file, then a dictionary-like object is
          returned, containing ``{filename: array}`` key-value pairs, one for
          each file in the archive.
        - If the file is a ``.npz`` file, the returned value supports the
          context manager protocol in a similar fashion to the open function::
    
            with load('foo.npz') as data:
                a = data['a']
    
          The underlying file descriptor is closed when exiting the 'with'
          block.
    
        Examples
        --------
        >>> import numpy as np
    
        Store data to disk, and load it again:
    
        >>> np.save('/tmp/123', np.array([[1, 2, 3], [4, 5, 6]]))
        >>> np.load('/tmp/123.npy')
        array([[1, 2, 3],
               [4, 5, 6]])
    
        Store compressed data to disk, and load it again:
    
        >>> a=np.array([[1, 2, 3], [4, 5, 6]])
        >>> b=np.array([1, 2])
        >>> np.savez('/tmp/123.npz', a=a, b=b)
        >>> data = np.load('/tmp/123.npz')
        >>> data['a']
        array([[1, 2, 3],
               [4, 5, 6]])
        >>> data['b']
        array([1, 2])
        >>> data.close()
    
        Mem-map the stored array, and then access the second row
        directly from disk:
    
        >>> X = np.load('/tmp/123.npy', mmap_mode='r')
        >>> X[1, :]
        memmap([4, 5, 6])
    
        """
        if encoding not in ('ASCII', 'latin1', 'bytes'):
            # The 'encoding' value for pickle also affects what encoding
            # the serialized binary data of NumPy arrays is loaded
            # in. Pickle does not pass on the encoding information to
            # NumPy. The unpickling code in numpy._core.multiarray is
            # written to assume that unicode data appearing where binary
            # should be is in 'latin1'. 'bytes' is also safe, as is 'ASCII'.
            #
            # Other encoding values can corrupt binary data, and we
            # purposefully disallow them. For the same reason, the errors=
            # argument is not exposed, as values other than 'strict'
            # result can similarly silently corrupt numerical data.
            raise ValueError("encoding must be 'ASCII', 'latin1', or 'bytes'")
    
        pickle_kwargs = {'encoding': encoding, 'fix_imports': fix_imports}
    
        with contextlib.ExitStack() as stack:
            if hasattr(file, 'read'):
                fid = file
                own_fid = False
            else:
                fid = stack.enter_context(open(os.fspath(file), "rb"))
                own_fid = True
    
            # Code to distinguish from NumPy binary files and pickles.
            _ZIP_PREFIX = b'PK\x03\x04'
            _ZIP_SUFFIX = b'PK\x05\x06'  # empty zip files start with this
            N = len(format.MAGIC_PREFIX)
            magic = fid.read(N)
            if not magic:
>               raise EOFError("No data left in file")
E               EOFError: No data left in file

/usr/lib/python3/dist-packages/numpy/lib/_npyio_impl.py:463: EOFError
----------------------------- Captured stderr call -----------------------------
Traceback (most recent call last):
  File 
"/<<PKGBUILDDIR>>/.pybuild/cpython3_3.14/build/dynasor/trajectory/extxyz_trajectory_reader.py",
 line 94, in _get_next
    atoms = next(self._generator_xyz)
StopIteration

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<string>", line 1, in <module>
    import sys; from multiprocessing.forkserver import main; main(12, 13, 
['__main__'], sys_argv=sys.argv[1:], **{'sys_path': 
['/<<PKGBUILDDIR>>/.pybuild/cpython3_3.14/scripts', 
'/<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3.14/dist-packages', 
'/<<PKGBUILDDIR>>/.pybuild/cpython3_3.14/build', '/usr/lib/python314.zip', 
'/usr/lib/python3.14', '/usr/lib/python3.14/lib-dynload', 
'/usr/local/lib/python3.14/dist-packages', '/usr/lib/python3/dist-packages', 
'/usr/lib/python3.14/dist-packages'], 'main_path': 
'/<<PKGBUILDDIR>>/.pybuild/cpython3_3.14/scripts/dynasor', 'authkey_r': 15})
                                                             
~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.14/multiprocessing/forkserver.py", line 230, in main
    spawn.import_main_path(main_path)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
  File "/usr/lib/python3.14/multiprocessing/spawn.py", line 307, in 
import_main_path
    _fixup_main_from_path(main_path)
    ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
  File "/usr/lib/python3.14/multiprocessing/spawn.py", line 297, in 
_fixup_main_from_path
    main_content = runpy.run_path(main_path,
                                  run_name="__mp_main__")
  File "<frozen runpy>", line 294, in run_path
  File "<frozen runpy>", line 98, in _run_module_code
  File "<frozen runpy>", line 88, in _run_code
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.14/scripts/dynasor", line 3, in 
<module>
    main()
    ~~~~^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.14/build/dynasor/cli/main.py", 
line 176, in main
    traj = Trajectory(args.trajectory,
                      trajectory_format=args.trajectory_format,
    ...<4 lines>...
                      frame_step=args.step,
                      )
  File 
"/<<PKGBUILDDIR>>/.pybuild/cpython3_3.14/build/dynasor/trajectory/trajectory.py",
 line 105, in __init__
    frame0 = next(self._reader_obj)
  File 
"/<<PKGBUILDDIR>>/.pybuild/cpython3_3.14/build/dynasor/trajectory/extxyz_trajectory_reader.py",
 line 121, in __next__
    self._get_next()
    ~~~~~~~~~~~~~~^^
  File 
"/<<PKGBUILDDIR>>/.pybuild/cpython3_3.14/build/dynasor/trajectory/extxyz_trajectory_reader.py",
 line 98, in _get_next
    raise StopIteration
StopIteration
Traceback (most recent call last):
  File 
"/<<PKGBUILDDIR>>/.pybuild/cpython3_3.14/build/dynasor/trajectory/extxyz_trajectory_reader.py",
 line 94, in _get_next
    atoms = next(self._generator_xyz)
  File 
"/<<PKGBUILDDIR>>/.pybuild/cpython3_3.14/build/dynasor/trajectory/extxyz_trajectory_reader.py",
 line 26, in iread
    buff.append(ex.submit(chunk_to_atoms, chunk))
                ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.14/concurrent/futures/process.py", line 816, in submit
    self._adjust_process_count()
    ~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/usr/lib/python3.14/concurrent/futures/process.py", line 775, in 
_adjust_process_count
    self._spawn_process()
    ~~~~~~~~~~~~~~~~~~~^^
  File "/usr/lib/python3.14/concurrent/futures/process.py", line 793, in 
_spawn_process
    p.start()
    ~~~~~~~^^
  File "/usr/lib/python3.14/multiprocessing/process.py", line 121, in start
    self._popen = self._Popen(self)
                  ~~~~~~~~~~~^^^^^^
  File "/usr/lib/python3.14/multiprocessing/context.py", line 306, in _Popen
    return Popen(process_obj)
  File "/usr/lib/python3.14/multiprocessing/popen_forkserver.py", line 35, in 
__init__
    super().__init__(process_obj)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
  File "/usr/lib/python3.14/multiprocessing/popen_fork.py", line 20, in __init__
    self._launch(process_obj)
    ~~~~~~~~~~~~^^^^^^^^^^^^^
  File "/usr/lib/python3.14/multiprocessing/popen_forkserver.py", line 51, in 
_launch
    self.sentinel, w = forkserver.connect_to_new_process(self._fds)
                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
  File "/usr/lib/python3.14/multiprocessing/forkserver.py", line 106, in 
connect_to_new_process
    connection.answer_challenge(
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~^
            wrapped_client, self._forkserver_authkey)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.14/multiprocessing/connection.py", line 995, in 
answer_challenge
    message = connection.recv_bytes(256)         # reject large message
  File "/usr/lib/python3.14/multiprocessing/connection.py", line 226, in 
recv_bytes
    buf = self._recv_bytes(maxlength)
  File "/usr/lib/python3.14/multiprocessing/connection.py", line 451, in 
_recv_bytes
    buf = self._recv(4)
  File "/usr/lib/python3.14/multiprocessing/connection.py", line 416, in _recv
    chunk = read(handle, to_read)
ConnectionResetError: [Errno 104] Connection reset by peer

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.14/scripts/dynasor", line 3, in 
<module>
    main()
    ~~~~^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.14/build/dynasor/cli/main.py", 
line 176, in main
    traj = Trajectory(args.trajectory,
                      trajectory_format=args.trajectory_format,
    ...<4 lines>...
                      frame_step=args.step,
                      )
  File 
"/<<PKGBUILDDIR>>/.pybuild/cpython3_3.14/build/dynasor/trajectory/trajectory.py",
 line 105, in __init__
    frame0 = next(self._reader_obj)
  File 
"/<<PKGBUILDDIR>>/.pybuild/cpython3_3.14/build/dynasor/trajectory/extxyz_trajectory_reader.py",
 line 121, in __next__
    self._get_next()
    ~~~~~~~~~~~~~~^^
  File 
"/<<PKGBUILDDIR>>/.pybuild/cpython3_3.14/build/dynasor/trajectory/extxyz_trajectory_reader.py",
 line 98, in _get_next
    raise StopIteration
StopIteration
=============================== warnings summary ===============================
.pybuild/cpython3_3.14/build/tests/test_trajectory_and_window_iterator.py::test_trajectory_with_mdanalysis_reader_xtc
.pybuild/cpython3_3.14/build/tests/test_trajectory_frame.py::test_read_indices_from_trajectory
.pybuild/cpython3_3.14/build/tests/trajectory_reader/test_mdanalysis_trajectory_reader.py::test_units_only_from_traj
.pybuild/cpython3_3.14/build/tests/trajectory_reader/test_mdanalysis_trajectory_reader.py::test_units_from_user_matching_traj
.pybuild/cpython3_3.14/build/tests/trajectory_reader/test_mdanalysis_trajectory_reader.py::test_units_from_user_not_matching_traj
.pybuild/cpython3_3.14/build/tests/trajectory_reader/test_mdanalysis_trajectory_reader.py::test_stopiteration_of_closed_file
  /usr/lib/python3/dist-packages/MDAnalysis/core/universe.py:1916: UserWarning: 
there is no reference attributes in this universe to guess types from
    warnings.warn(str(e))

.pybuild/cpython3_3.14/build/tests/test_trajectory_and_window_iterator.py::test_trajectory_with_mdanalysis_reader_xtc
.pybuild/cpython3_3.14/build/tests/test_trajectory_frame.py::test_read_indices_from_trajectory
.pybuild/cpython3_3.14/build/tests/trajectory_reader/test_mdanalysis_trajectory_reader.py::test_units_only_from_traj
.pybuild/cpython3_3.14/build/tests/trajectory_reader/test_mdanalysis_trajectory_reader.py::test_units_from_user_matching_traj
.pybuild/cpython3_3.14/build/tests/trajectory_reader/test_mdanalysis_trajectory_reader.py::test_units_from_user_not_matching_traj
.pybuild/cpython3_3.14/build/tests/trajectory_reader/test_mdanalysis_trajectory_reader.py::test_stopiteration_of_closed_file
  /usr/lib/python3/dist-packages/MDAnalysis/core/universe.py:1916: UserWarning: 
there is no reference attributes (elements, types, or names) in this universe 
to guess mass from
    warnings.warn(str(e))

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
=========================== short test summary info ============================
FAILED tests/test_cli.py::test_dynasor_CLI - EOFError: No data left in file
===== 1 failed, 132 passed, 1 deselected, 12 warnings in 91.65s (0:01:31) ======
E: pybuild pybuild:485: test: plugin pyproject failed with: exit code=1: cd 
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.14/build; python3.14 -m pytest -k 'not 
test_integration_static_structure_factor'
I: pybuild base:385: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build; 
python3.13 -m pytest -k 'not test_integration_static_structure_factor'
============================= test session starts ==============================
platform linux -- Python 3.13.12, pytest-9.0.3, pluggy-1.6.0
rootdir: /<<PKGBUILDDIR>>
plugins: typeguard-4.4.4
collected 134 items / 1 deselected / 133 selected

tests/filon/test_filon.py ...                                            [  2%]
tests/test_SED.py ...                                                    [  4%]
tests/test_average_independent_samples.py ..                             [  6%]
tests/test_cli.py .                                                      [  6%]
tests/test_dho.py ....                                                   [  9%]
tests/test_dynasor_API.py ......                                         [ 14%]
tests/test_integration.py .                                              [ 15%]
tests/test_lattice.py ..                                                 [ 16%]
tests/test_logging.py .                                                  [ 17%]
tests/test_normalization.py ..                                           [ 18%]
tests/test_numba.py .                                                    [ 19%]
tests/test_parse_gromacs_index_file.py ...                               [ 21%]
tests/test_qpoints.py ......                                             [ 26%]
tests/test_regression_vs_old_cmdline_results.py .                        [ 27%]
tests/test_sample_class.py ...........                                   [ 35%]
tests/test_spherical_average.py .....                                    [ 39%]
tests/test_time_averager.py .                                            [ 39%]
tests/test_tools.py .....                                                [ 43%]
tests/test_trajectory_and_window_iterator.py ............                [ 52%]
tests/test_trajectory_frame.py ...                                       [ 54%]
tests/test_units.py .                                                    [ 55%]
tests/test_utils.py .                                                    [ 56%]
tests/test_weighting.py ..............................                   [ 78%]
tests/test_weights.py ..                                                 [ 80%]
tests/trajectory_reader/test_ase_trajectory_reader.py .......            [ 85%]
tests/trajectory_reader/test_extxyz_trajectory_reader.py .......         [ 90%]
tests/trajectory_reader/test_lammps_trajectory_reader.py ......          [ 95%]
tests/trajectory_reader/test_mdanalysis_trajectory_reader.py ......      [100%]

=============================== warnings summary ===============================
.pybuild/cpython3_3.13/build/tests/test_dynasor_API.py: 10 warnings
.pybuild/cpython3_3.13/build/tests/test_trajectory_and_window_iterator.py: 12 
warnings
.pybuild/cpython3_3.13/build/tests/test_trajectory_frame.py: 2 warnings
  /usr/lib/python3.13/multiprocessing/popen_fork.py:67: DeprecationWarning: 
This process (pid=463) is multi-threaded, use of fork() may lead to deadlocks 
in the child.
    self.pid = os.fork()

.pybuild/cpython3_3.13/build/tests/test_trajectory_and_window_iterator.py::test_trajectory_with_mdanalysis_reader_xtc
.pybuild/cpython3_3.13/build/tests/test_trajectory_frame.py::test_read_indices_from_trajectory
.pybuild/cpython3_3.13/build/tests/trajectory_reader/test_mdanalysis_trajectory_reader.py::test_units_only_from_traj
.pybuild/cpython3_3.13/build/tests/trajectory_reader/test_mdanalysis_trajectory_reader.py::test_units_from_user_matching_traj
.pybuild/cpython3_3.13/build/tests/trajectory_reader/test_mdanalysis_trajectory_reader.py::test_units_from_user_not_matching_traj
.pybuild/cpython3_3.13/build/tests/trajectory_reader/test_mdanalysis_trajectory_reader.py::test_stopiteration_of_closed_file
  /usr/lib/python3/dist-packages/MDAnalysis/core/universe.py:1916: UserWarning: 
there is no reference attributes in this universe to guess types from
    warnings.warn(str(e))

.pybuild/cpython3_3.13/build/tests/test_trajectory_and_window_iterator.py::test_trajectory_with_mdanalysis_reader_xtc
.pybuild/cpython3_3.13/build/tests/test_trajectory_frame.py::test_read_indices_from_trajectory
.pybuild/cpython3_3.13/build/tests/trajectory_reader/test_mdanalysis_trajectory_reader.py::test_units_only_from_traj
.pybuild/cpython3_3.13/build/tests/trajectory_reader/test_mdanalysis_trajectory_reader.py::test_units_from_user_matching_traj
.pybuild/cpython3_3.13/build/tests/trajectory_reader/test_mdanalysis_trajectory_reader.py::test_units_from_user_not_matching_traj
.pybuild/cpython3_3.13/build/tests/trajectory_reader/test_mdanalysis_trajectory_reader.py::test_stopiteration_of_closed_file
  /usr/lib/python3/dist-packages/MDAnalysis/core/universe.py:1916: UserWarning: 
there is no reference attributes (elements, types, or names) in this universe 
to guess mass from
    warnings.warn(str(e))

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
========== 133 passed, 1 deselected, 36 warnings in 101.80s (0:01:41) ==========
dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p "3.14 
3.13" --parallel=2 returned exit code 13
make: *** [debian/rules:6: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess failed with exit 
status 2
--------------------------------------------------------------------------------

Reply via email to