• Bug#1103146: jsonpickle: FTBFS in testing/i386: dh_auto_test: error: py

    From Lucas Nussbaum@21:1/5 to All on Mon Apr 14 14:00:01 2025
    Source: jsonpickle
    Version: 4.0.2+dfsg-1
    Severity: serious
    Justification: FTBFS
    Tags: trixie sid ftbfs
    User: lucas@debian.org
    Usertags: ftbfs-20250414 ftbfs-trixie

    Hi,

    During a rebuild of all packages in testing (trixie), your package failed
    to build on i386.


    Relevant part (hopefully):
    debian/rules binary
    dh binary --buildsystem=pybuild
    dh_update_autotools_config -O--buildsystem=pybuild
    dh_autoreconf -O--buildsystem=pybuild
    dh_auto_configure -O--buildsystem=pybuild
    dh_auto_build -O--buildsystem=pybuild
    I: pybuild plugin_pyproject:129: Building wheel for python3.13 with "build" module
    I: pybuild base:311: python3.13 -m build --skip-dependency-check --no-isolation --wheel --outdir /build/reproducible-path/jsonpickle-4.0.2+dfsg/.pybuild/cpython3_3.13
    * Building wheel...
    running bdist_wheel
    running build
    running build_py
    creating build/lib/jsonpickle
    copying jsonpickle/util.py -> build/lib/jsonpickle
    copying jsonpickle/handlers.py -> build/lib/jsonpickle
    copying jsonpickle/compat.py -> build/lib/jsonpickle
    copying jsonpickle/tags.py -> build/lib/jsonpickle
    copying jsonpickle/backend.py -> build/lib/jsonpickle
    copying jsonpickle/tags_pd.py -> build/lib/jsonpickle
    copying jsonpickle/version.py -> build/lib/jsonpickle
    copying jsonpickle/pickler.py -> build/lib/jsonpickle
    copying jsonpickle/unpickler.py -> build/lib/jsonpickle
    copying jsonpickle/errors.py -> build/lib/jsonpickle
    copying jsonpickle/__init__.py -> build/lib/jsonpickle
    creating build/lib/jsonpickle/ext
    copying jsonpickle/ext/pandas.py -> build/lib/jsonpickle/ext
    copying jsonpickle/ext/numpy.py -> build/lib/jsonpickle/ext
    copying jsonpickle/ext/__init__.py -> build/lib/jsonpickle/ext
    copying jsonpickle/ext/gmpy.py -> build/lib/jsonpickle/ext
    running egg_info
    writing jsonpickle.egg-info/PKG-INFO
    writing dependency_links to jsonpickle.egg-info/dependency_links.txt
    writing requirements to jsonpickle.egg-info/requires.txt
    writing top-level names to jsonpickle.egg-info/top_level.txt
    reading manifest file 'jsonpickle.egg-info/SOURCES.txt'
    adding license file 'LICENSE'
    writing manifest file 'jsonpickle.egg-info/SOURCES.txt'
    installing to build/bdist.linux-i686/wheel
    running install
    running install_lib
    creating build/bdist.linux-i686/wheel
    creating build/bdist.linux-i686/wheel/jsonpickle
    copying build/lib/jsonpickle/util.py -> build/bdist.linux-i686/wheel/./jsonpickle
    copying build/lib/jsonpickle/handlers.py -> build/bdist.linux-i686/wheel/./jsonpickle
    copying build/lib/jsonpickle/compat.py -> build/bdist.linux-i686/wheel/./jsonpickle
    copying build/lib/jsonpickle/tags.py -> build/bdist.linux-i686/wheel/./jsonpickle
    copying build/lib/jsonpickle/backend.py -> build/bdist.linux-i686/wheel/./jsonpickle
    copying build/lib/jsonpickle/tags_pd.py -> build/bdist.linux-i686/wheel/./jsonpickle
    creating build/bdist.linux-i686/wheel/jsonpickle/ext
    copying build/lib/jsonpickle/ext/pandas.py -> build/bdist.linux-i686/wheel/./jsonpickle/ext
    copying build/lib/jsonpickle/ext/numpy.py -> build/bdist.linux-i686/wheel/./jsonpickle/ext
    copying build/lib/jsonpickle/ext/__init__.py -> build/bdist.linux-i686/wheel/./jsonpickle/ext
    copying build/lib/jsonpickle/ext/gmpy.py -> build/bdist.linux-i686/wheel/./jsonpickle/ext
    copying build/lib/jsonpickle/version.py -> build/bdist.linux-i686/wheel/./jsonpickle
    copying build/lib/jsonpickle/pickler.py -> build/bdist.linux-i686/wheel/./jsonpickle
    copying build/lib/jsonpickle/unpickler.py -> build/bdist.linux-i686/wheel/./jsonpickle
    copying build/lib/jsonpickle/errors.py -> build/bdist.linux-i686/wheel/./jsonpickle
    copying build/lib/jsonpickle/__init__.py -> build/bdist.linux-i686/wheel/./jsonpickle
    running install_egg_info
    Copying jsonpickle.egg-info to build/bdist.linux-i686/wheel/./jsonpickle-4.0.2+dfsg.egg-info
    running install_scripts
    creating build/bdist.linux-i686/wheel/jsonpickle-4.0.2+dfsg.dist-info/WHEEL creating '/build/reproducible-path/jsonpickle-4.0.2+dfsg/.pybuild/cpython3_3.13/.tmp-n6dcarpy/jsonpickle-4.0.2+dfsg-py3-none-any.whl' and adding 'build/bdist.linux-i686/wheel' to it
    adding 'jsonpickle/__init__.py'
    adding 'jsonpickle/backend.py'
    adding 'jsonpickle/compat.py'
    adding 'jsonpickle/errors.py'
    adding 'jsonpickle/handlers.py'
    adding 'jsonpickle/pickler.py'
    adding 'jsonpickle/tags.py'
    adding 'jsonpickle/tags_pd.py'
    adding 'jsonpickle/unpickler.py'
    adding 'jsonpickle/util.py'
    adding 'jsonpickle/version.py'
    adding 'jsonpickle/ext/__init__.py'
    adding 'jsonpickle/ext/gmpy.py'
    adding 'jsonpickle/ext/numpy.py'
    adding 'jsonpickle/ext/pandas.py'
    adding 'jsonpickle-4.0.2+dfsg.dist-info/LICENSE'
    adding 'jsonpickle-4.0.2+dfsg.dist-info/METADATA'
    adding 'jsonpickle-4.0.2+dfsg.dist-info/WHEEL'
    adding 'jsonpickle-4.0.2+dfsg.dist-info/top_level.txt'
    adding 'jsonpickle-4.0.2+dfsg.dist-info/RECORD'
    removing build/bdist.linux-i686/wheel
    Successfully built jsonpickle-4.0.2+dfsg-py3-none-any.whl
    I: pybuild plugin_pyproject:144: Unpacking wheel built for python3.13 with "installer" module
    dh_auto_test -O--buildsystem=pybuild
    I: pybuild base:311: cd /build/reproducible-path/jsonpickle-4.0.2+dfsg/.pybuild/cpython3_3.13/build; python3.13 -m pytest tests
    ============================= test session starts ==============================
    platform linux -- Python 3.13.2, pytest-8.3.5, pluggy-1.5.0
    rootdir: /build/reproducible-path/jsonpickle-4.0.2+dfsg/.pybuild/cpython3_3.13/build
    configfile: pytest.ini
    plugins: typeguard-4.4.2
    collected 386 items

    tests/backend_test.py .............sss [ 4%]
    tests/bson_test.py ...... [ 5%]
    tests/collections_test.py ...... [ 7%]
    tests/datetime_test.py ................. [ 11%]
    tests/document_test.py . [ 11%]
    tests/ecdsa_test.py s [ 12%]
    tests/feedparser_test.py . [ 12%]
    tests/handler_test.py ...... [ 13%]
    tests/jsonpickle_test.py ............................................... [ 26%]
    ........................................................................ [ 44%]
    .................................................. [ 57%]
    tests/numpy_test.py ..................... [ 63%]
    tests/object_test.py ................................................... [ 76%]
    .................... [ 81%]
    tests/pandas_test.py ....F..................... [ 88%]
    tests/sklearn_test.py .. [ 88%]
    tests/sqlalchemy_test.py ... [ 89%]
    tests/stdlib_test.py ... [ 90%]
    tests/util_test.py .................................. [ 99%]
    tests/wizard_test.py .. [ 99%]
    tests/zoneinfo_test.py . [100%]

    =================================== FAILURES ===================================
    ______________________ test_multindex_dataframe_roundtrip ______________________

    left = Index([1, 2], dtype='int64', name='idx_lvl1')
    right = Index([1, 2], dtype='int32', name='idx_lvl1')
    obj = 'MultiIndex level [1]'

    def _check_types(left, right, obj: str = "Index") -> None:
    if not exact:
    return

    assert_class_equal(left, right, exact=exact, obj=obj)
    assert_attr_equal("inferred_type", left, right, obj=obj)

    # Skip exact dtype checking when `check_categorical` is False
    if isinstance(left.dtype, CategoricalDtype) and isinstance(
    right.dtype, CategoricalDtype
    ):
    if check_categorical:
    assert_attr_equal("dtype", left, right, obj=obj)
    assert_index_equal(left.categories, right.categories, exact=exact)
    return

    assert_attr_equal("dtype", left, right, obj=obj)
    E AssertionError: MultiIndex level [1] are different
    E
    E Attribute "dtype" are different
    E [left]: int64
    E [right]: int32

    /usr/lib/python3/dist-packages/pandas/_testing/asserters.py:247: AssertionError

    During handling of the above exception, another exception occurred:

    def test_multindex_dataframe_roundtrip():
    df = pd.DataFrame(
    {
    'idx_lvl0': ['a', 'b', 'c'],
    'idx_lvl1': np.int_([1, 1, 2]),
    'an_int': np.int_([1, 2, 3]),
    'a_float': np.float64([2.5, 3.5, 4.5]),
    'a_nan': np.array([np.nan] * 3),
    'a_minus_inf': np.array([-np.inf] * 3),
    'an_inf': np.array([np.inf] * 3),
    'a_str': np.str_('foo'),
    }
    )
    df = df.set_index(['idx_lvl0', 'idx_lvl1'])

    decoded_df = roundtrip(df)
    assert_frame_equal(decoded_df, df)

    tests/pandas_test.py:114:
    _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

    left = Index([1, 1, 2], dtype='int64', name='idx_lvl1')
    right = Index([1, 1, 2], dtype='int32', name='idx_lvl1')
    obj = 'MultiIndex level [1]'

    def _check_types(left, right, obj: str = "Index") -> None:
    if not exact:
    return

    assert_class_equal(left, right, exact=exact, obj=obj)
    assert_attr_equal("inferred_type", left, right, obj=obj)

    # Skip exact dtype checking when `check_categorical` is False
    if isinstance(left.dtype, CategoricalDtype) and isinstance(
    right.dtype, CategoricalDtype
    ):
    if check_categorical:
    assert_attr_equal("dtype", left, right, obj=obj)
    assert_index_equal(left.categories, right.categories, exact=exact)
    return

    assert_attr_equal("dtype", left, right, obj=obj)
    E AssertionError: MultiIndex level [1] are different
    E
    E Attribute "dtype" are different
    E [left]: int64
    E [right]: int32

    /usr/lib/python3/dist-packages/pandas/_testing/asserters.py:247: AssertionError
    =============================== warnings summary ===============================
    tests/feedparser_test.py::FeedParserTestCase::test tests/feedparser_test.py::FeedParserTestCase::test tests/feedparser_test.py::FeedParserTestCase::test tests/feedparser_test.py::FeedParserTestCase::test tests/feedparser_test.py::FeedParserTestCase::test tests/feedparser_test.py::FeedParserTestCase::test
    /usr/lib/python3/dist-packages/feedparser/html.py:152: DeprecationWarning: 'count' is passed as positional argument
    data = re.sub(r'<!((?!DOCTYPE|--|\[))', r'&lt;!\1', data, re.IGNORECASE)

    tests/numpy_test.py::test_ndarray_roundtrip tests/numpy_test.py::test_ndarray_roundtrip
    /usr/lib/python3/dist-packages/numpy/_core/records.py:136: DeprecationWarning: Data type alias 'a' was deprecated in NumPy 2.0. Use the 'S' alias instead.
    dtype = sb.dtype(formats, aligned)

    tests/numpy_test.py::test_ndarray_roundtrip tests/sklearn_test.py::test_decision_tree
    /build/reproducible-path/jsonpickle-4.0.2+dfsg/.pybuild/cpython3_3.13/build/jsonpickle/ext/numpy.py:303: UserWarning: ndarray is defined by reference to an object we do not know how to serialize. A deep copy is serialized instead, breaking memory
    aliasing.
    warnings.warn(msg)

    -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html =========================== short test summary info ============================
    FAILED tests/pandas_test.py::test_multindex_dataframe_roundtrip - AssertionEr...
    ============ 1 failed, 381 passed, 4 skipped, 10 warnings in 2.32s =============
    E: pybuild pybuild:389: test: plugin pyproject failed with: exit code=1: cd /build/reproducible-path/jsonpickle-4.0.2+dfsg/.pybuild/cpython3_3.13/build; python3.13 -m pytest tests
    dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.13 returned exit code 13


    The full build log is available from: http://qa-logs.debian.net/2025/04/14/jsonpickle_4.0.2+dfsg-1_testing-i386.log

    All bugs filed during this archive rebuild are listed at: https://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=ftbfs-20250414;users=lucas@debian.org
    or: https://udd.debian.org/bugs/?release=na&merged=ign&fnewerval=7&flastmodval=7&fusertag=only&fusertagtag=ftbfs-20250414&fusertaguser=lucas@debian.org&allbugs=1&cseverity=1&ctags=1&caffected=1#results

    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 mark 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 mine so that we can identify if something relevant changed in the meantime.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Debian Bug Tracking System@21:1/5 to All on Wed Apr 16 03:40:02 2025
    Processing control commands:

    tag -1 pending
    Bug #1103146 [src:jsonpickle] jsonpickle: FTBFS in testing/i386: dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.13 returned exit code 13
    Added tag(s) pending.

    --
    1103146: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1103146
    Debian Bug Tracking System
    Contact owner@bugs.debian.org with problems

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Colin Watson@21:1/5 to All on Wed Apr 16 03:40:02 2025
    Control: tag -1 pending

    Hello,

    Bug #1103146 in jsonpickle reported by you has been fixed in the
    Git repository and is awaiting an upload. You can see the commit
    message below and you can check the diff of the fix at:

    https://salsa.debian.org/python-team/packages/jsonpickle/-/commit/6587920555c2b6c1aaee81c882ec1d7ca7bebb25

    ------------------------------------------------------------------------
    Fix test_multindex_dataframe_roundtrip on 32-bit architectures

    Closes: #1103146 ------------------------------------------------------------------------

    (this message was generated automatically)
    --
    Greetings

    https://bugs.debian.org/1103146

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Debian Bug Tracking System@21:1/5 to All on Wed Apr 16 04:00:01 2025
    This is a multi-part message in MIME format...

    Your message dated Wed, 16 Apr 2025 01:49:05 +0000
    with message-id <E1u4rth-00B1B8-9U@fasolo.debian.org>
    and subject line Bug#1103146: fixed in jsonpickle 4.0.2+dfsg-2
    has caused the Debian Bug report #1103146,
    regarding jsonpickle: FTBFS in testing/i386: dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.13 returned exit code 13
    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 owner@bugs.debian.org
    immediately.)


    --
    1103146: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1103146
    Debian Bug Tracking System
    Contact owner@bugs.debian.org with problems

    Received: (at submit) by bugs.debian.org; 14 Apr 2025 11:43:52 +0000 X-Spam-Checker-Version: SpamAssassin 3.4.6-bugs.debian.org_2005_01_02
    (2021-04-09) on buxtehude.debian.org
    X-Spam-Level:
    X-Spam-Status: No, score=-105.1 required=4.0 tests=BAYES_00,DKIMWL_WL_HIGH,
    DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FOURLA,
    FROMDEVELOPER,SPF_HELO_NONE,SPF_NONE,UNPARSEABLE_RELAY,
    USER_IN_DKIM_WELCOMELIST,USER_IN_DKIM_WHITELIST autolearn=ham
    autolearn_force=no version=3.4.6-bugs.debian.org_2005_01_02 X-Spam-Bayes: score:0.0000 Tokens: new, 113; hammy, 150; neutral, 413; spammy,
    0. spammytokens:
    hammytokens:0.000-+--Hx-spam-relays-external:sk:stravin,
    0.000-+--H*RT:sk:stravin, 0.000-+--Hx-spam-relays-external:311,
    0.000-+--H*RT:311, 0.000-+--H*RT:108
    Return-path: <lucas@debian.org>
    Received: from stravinsky.debian.org ([2001:41b8:202:deb::311:1