Skip to content

python3Packages.plotly: 6.1.0 -> 6.1.2, unbreak on darwin#418321

Merged
GaetanLepage merged 2 commits intoNixOS:masterfrom
yzx9:plotly-6-1-2
Jun 23, 2025
Merged

python3Packages.plotly: 6.1.0 -> 6.1.2, unbreak on darwin#418321
GaetanLepage merged 2 commits intoNixOS:masterfrom
yzx9:plotly-6-1-2

Conversation

@yzx9
Copy link
Contributor

@yzx9 yzx9 commented Jun 20, 2025

Plotly has been failing on darwin since the bump to 6.1.0.

If I should rebase this branch onto staging, please let me know. I'm also happy to split the version update into a separate PR if that helps get this one merged sooner.

Hydra: https://hydra.nixos.org/job/nixpkgs/trunk/python313Packages.plotly.aarch64-darwin

Things done

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)
    • sandbox = relaxed
    • sandbox = true
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • Nixpkgs 25.11 Release Notes (or backporting 24.11 and 25.05 Nixpkgs Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
  • NixOS 25.11 Release Notes (or backporting 24.11 and 25.05 NixOS Release notes)
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
  • Fits CONTRIBUTING.md, pkgs/README.md, maintainers/README.md and other contributing documentation in corresponding paths.

Add a 👍 reaction to pull requests you find important.

@ofborg ofborg bot added the 6.topic: darwin Running or building packages on Darwin label Jun 20, 2025
@github-actions github-actions bot added 10.rebuild-darwin: 101-500 This PR causes between 101 and 500 packages to rebuild on Darwin. 10.rebuild-linux: 101-500 This PR causes between 101 and 500 packages to rebuild on Linux. 6.topic: python Python is a high-level, general-purpose programming language. labels Jun 20, 2025
@yzx9
Copy link
Contributor Author

yzx9 commented Jun 20, 2025

Many unit tests were failing during NumPy import with the following error: RecursionError: maximum recursion depth exceeded. We had previously removed some tests for the same reason, but that patch was dropped in the recent update (#408185). However, the newly added tests are now causing failures on Darwin. Let’s disable them for now.

details
ERROR tests/test_plotly_utils/validators/test_pandas_series_input.py::test_color_validator_categorical[Index] - RecursionError: maximum recursion depth exceeded
= 175 failed, 2855 passed, 21 skipped, 192 deselected, 4 xfailed, 686 warnings, 2 errors in 74.32s (0:01:14) =

error:

tests/test_plotly_utils/validators/test_xarray_input.py:126: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
_plotly_utils/basevalidators.py:1395: in validate_coerce
    self.raise_invalid_val(v)
_plotly_utils/basevalidators.py:308: in raise_invalid_val
    v=repr(v),
/nix/store/qzqlix3rhk63zsmf05p1w14cx78rh96c-python3.12-xarray-2025.04.0/lib/python3.12/site-packages/xarray/core/common.py:184: in>
    return formatting.array_repr(self)
/nix/store/q54d9qqlb27g2nf9ja4zsa89gl7b3yvm-python3-3.12.11/lib/python3.12/reprlib.py:21: in wrapper
    result = user_function(self)
/nix/store/qzqlix3rhk63zsmf05p1w14cx78rh96c-python3.12-xarray-2025.04.0/lib/python3.12/site-packages/xarray/core/formatting.py:688>
    data_repr = short_data_repr(arr)
/nix/store/qzqlix3rhk63zsmf05p1w14cx78rh96c-python3.12-xarray-2025.04.0/lib/python3.12/site-packages/xarray/core/formatting.py:657>
    return limit_lines(repr(array.data), limit=40)
/nix/store/4xvvphpbvk5kkiqqnq3hflipbzb7ym2q-python3.12-numpy-2.3.0/lib/python3.12/site-packages/numpy/_core/arrayprint.py:1621: in>
    extras.append(f"dtype={dtype_short_repr(arr.dtype)}")
/nix/store/4xvvphpbvk5kkiqqnq3hflipbzb7ym2q-python3.12-numpy-2.3.0/lib/python3.12/site-packages/numpy/_core/arrayprint.py:1574: in>
    return f"'{str(dtype)}'"
/nix/store/4xvvphpbvk5kkiqqnq3hflipbzb7ym2q-python3.12-numpy-2.3.0/lib/python3.12/site-packages/numpy/__init__.py:852: in <module>
    from . import exceptions
<frozen importlib._bootstrap>:1412: in _handle_fromlist
    ???
/nix/store/4xvvphpbvk5kkiqqnq3hflipbzb7ym2q-python3.12-numpy-2.3.0/lib/python3.12/site-packages/numpy/__init__.py:733: in __getatt>
    import numpy.exceptions as exceptions
/nix/store/4xvvphpbvk5kkiqqnq3hflipbzb7ym2q-python3.12-numpy-2.3.0/lib/python3.12/site-packages/numpy/__init__.py:733: in __getatt>
    import numpy.exceptions as exceptions
E   RecursionError: maximum recursion depth exceeded
!!! Recursion detected (same locals & position)

caused by the following code:

"""
Stand-alone module to provide information about whether optional deps exist.

"""

from importlib import import_module
import logging
import sys

logger = logging.getLogger(__name__)
_not_importable = set()


def get_module(name, should_load=True):
    """
    Return module or None. Absolute import is required.

    :param (str) name: Dot-separated module path. E.g., 'scipy.stats'.
    :raise: (ImportError) Only when exc_msg is defined.
    :return: (module|None) If import succeeds, the module will be returned.

    """
    if not should_load:
        return sys.modules.get(name, None)

    if name not in _not_importable:
        try:
            return import_module(name)
        except ImportError:
            _not_importable.add(name)
        except Exception:
            _not_importable.add(name)
            msg = f"Error importing optional module {name}"
            logger.exception(msg)

    return None

@yzx9 yzx9 marked this pull request as ready for review June 22, 2025 01:51
@nix-owners nix-owners bot requested a review from Pandapip1 June 22, 2025 01:52
@GaetanLepage
Copy link
Contributor

nixpkgs-review result

Generated using nixpkgs-review.

Command: nixpkgs-review pr 418321 --package python312Packages.plotly --package python313Packages.plotly
Commit: 51a0ea5fb7c3c8eb81e08740870426049cfcf382


x86_64-linux

✅ 4 packages built:
  • python312Packages.plotly
  • python312Packages.plotly.dist (python312Packages.plotly.dist.dist)
  • python313Packages.plotly
  • python313Packages.plotly.dist (python313Packages.plotly.dist.dist)

aarch64-linux

✅ 4 packages built:
  • python312Packages.plotly
  • python312Packages.plotly.dist (python312Packages.plotly.dist.dist)
  • python313Packages.plotly
  • python313Packages.plotly.dist (python313Packages.plotly.dist.dist)

x86_64-darwin

✅ 4 packages built:
  • python312Packages.plotly
  • python312Packages.plotly.dist (python312Packages.plotly.dist.dist)
  • python313Packages.plotly
  • python313Packages.plotly.dist (python313Packages.plotly.dist.dist)

aarch64-darwin

✅ 4 packages built:
  • python312Packages.plotly
  • python312Packages.plotly.dist (python312Packages.plotly.dist.dist)
  • python313Packages.plotly
  • python313Packages.plotly.dist (python313Packages.plotly.dist.dist)

@GaetanLepage GaetanLepage requested a review from NickCao June 22, 2025 22:50
Copy link
Member

@Pandapip1 Pandapip1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Diff LGTM

@github-actions github-actions bot added 12.approvals: 1 This PR was reviewed and approved by one person. 12.approved-by: package-maintainer This PR was reviewed and approved by a maintainer listed in any of the changed packages. labels Jun 22, 2025
@GaetanLepage GaetanLepage merged commit 60db5c3 into NixOS:master Jun 23, 2025
32 of 33 checks passed
@yzx9 yzx9 deleted the plotly-6-1-2 branch June 23, 2025 08:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

6.topic: darwin Running or building packages on Darwin 6.topic: python Python is a high-level, general-purpose programming language. 10.rebuild-darwin: 101-500 This PR causes between 101 and 500 packages to rebuild on Darwin. 10.rebuild-linux: 101-500 This PR causes between 101 and 500 packages to rebuild on Linux. 12.approvals: 1 This PR was reviewed and approved by one person. 12.approved-by: package-maintainer This PR was reviewed and approved by a maintainer listed in any of the changed packages.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants