Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

python311Packages.meson-python: 0.12.1 -> 0.13.2, python311Packages.python-rtmidi: 1.4.9 -> 1.5.4, ledfx: 2.0.67 -> 2.0.69 #240791

Closed
wants to merge 3 commits into from

Conversation

fabaff
Copy link
Member

@fabaff fabaff commented Jun 30, 2023

Description of changes
Things done
  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
  • 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/)
  • 23.11 Release Notes (or backporting 23.05 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (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.

Copy link
Member

@SuperSandro2000 SuperSandro2000 left a comment

Choose a reason for hiding this comment

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

The meson-python update seems to be necessary

python-rtmidi> WARNING: The directory '/homeless-shelter/.cache/pip' or its parent directory is not owned or is not writable by the current user. The cache has been disabled. Check the permissions and owner of that directory. If executing pip with sudo, you should use sudo's -H flag.
python-rtmidi> Processing /build/python_rtmidi-1.5.4
python-rtmidi>   Running command Preparing metadata (pyproject.toml)
python-rtmidi>   meson-python: error: Unknown configuration key "tool.meson-python.args.dist"
python-rtmidi>   error: subprocess-exited-with-error
python-rtmidi>
python-rtmidi>   × Preparing metadata (pyproject.toml) did not run successfully.
python-rtmidi>   │ exit code: 1
python-rtmidi>   ╰─> See above for output.
python-rtmidi>
python-rtmidi>   note: This error originates from a subprocess, and is likely not a problem with pip.
python-rtmidi>   full command: /nix/store/lwzzgbnj41d657lpxczk6l5f7d5zcnj1-python3-3.10.11/bin/python3.10 /nix/store/rdchpzmsc5z3p55c51k9p2n2xfj5xcd1-python3.10-pip-23.0.1/lib/python3.10/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py prepare_metadata_for_build_wheel /build/tmpg3uzk5eg
python-rtmidi>   cwd: /build/python_rtmidi-1.5.4
python-rtmidi>   Preparing metadata (pyproject.toml) ... error
python-rtmidi> error: metadata-generation-failed
python-rtmidi>
python-rtmidi> × Encountered error while generating package metadata.
python-rtmidi> ╰─> See above for output.
python-rtmidi>
python-rtmidi> note: This is an issue with the package mentioned above, not pip.
python-rtmidi> hint: See above for details.

I think we should target staging here and we need to take a look why darwin fails to build.

@fabaff fabaff marked this pull request as draft July 1, 2023 21:46
@SuperSandro2000
Copy link
Member

The first group of failures is because they expect a specific darwin sdk framework to be present

>       assert name.group('plat') == PLATFORM
E       AssertionError: assert 'macosx_10_12_x86_64' == 'macosx_10_16_x86_64'
E         - macosx_10_16_x86_64
E         ?            ^
E         + macosx_10_12_x86_64
E         ?            ^
tests/test_wheel.py:182: AssertionError

We can substitute them with our version.

No idea what the other is about


_________________________ test_archflags_envvar[arm64] _________________________
package_purelib_and_platlib = PosixPath('/private/tmp/nix-build-python3.11-meson-python-0.13.2.drv-0/meson_python-0.13.2/tests/packages/purelib-and-platlib')
monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x103ef4e90>
tmp_path = PosixPath('/private/tmp/nix-build-python3.11-meson-python-0.13.2.drv-0/pytest-of-_nixbld1/pytest-0/test_archflags_envvar_arm64_0')
arch = 'arm64'
    @pytest.mark.skipif(platform.system() != 'Darwin', reason='macOS specific test')
    @pytest.mark.parametrize(('arch'), ['x86_64', 'arm64'])
    def test_archflags_envvar(package_purelib_and_platlib, monkeypatch, tmp_path, arch):
        monkeypatch.setenv('ARCHFLAGS', f'-arch {arch}')
>       filename = mesonpy.build_wheel(tmp_path)
/private/tmp/nix-build-python3.11-meson-python-0.13.2.drv-0/meson_python-0.13.2/tests/test_wheel.py:249: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
/private/tmp/nix-build-python3.11-meson-python-0.13.2.drv-0/meson_python-0.13.2/mesonpy/__init__.py:1047: in wrapper
    return func(*args, **kwargs)
/private/tmp/nix-build-python3.11-meson-python-0.13.2.drv-0/meson_python-0.13.2/mesonpy/__init__.py:1111: in build_wheel
    with _project(config_settings) as project:
/nix/store/bdfd6syxs97xj8ask1ib4faf956lsjps-python3-3.11.4/lib/python3.11/contextlib.py:137: in __enter__
    return next(self.gen)
/private/tmp/nix-build-python3.11-meson-python-0.13.2.drv-0/meson_python-0.13.2/mesonpy/__init__.py:985: in _project
    with Project.with_temp_working_dir(
/nix/store/bdfd6syxs97xj8ask1ib4faf956lsjps-python3-3.11.4/lib/python3.11/contextlib.py:137: in __enter__
    return next(self.gen)
/private/tmp/nix-build-python3.11-meson-python-0.13.2.drv-0/meson_python-0.13.2/mesonpy/__init__.py:831: in with_temp_working_dir
    yield cls(source_dir, tmpdir, build_dir, meson_args, editable_verbose)
/private/tmp/nix-build-python3.11-meson-python-0.13.2.drv-0/meson_python-0.13.2/mesonpy/__init__.py:719: in __init__
    self._configure(reconfigure=reconfigure)
/private/tmp/nix-build-python3.11-meson-python-0.13.2.drv-0/meson_python-0.13.2/mesonpy/__init__.py:762: in _configure
    self._run(['meson', 'setup', *setup_args])
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
self = <mesonpy.Project object at 0x103962390>
cmd = ['meson', 'setup', '/private/tmp/nix-build-python3.11-meson-python-0.13.2.drv-0/meson_python-0.13.2/tests/packages/pur....13.2/tests/packages/purelib-and-platlib/.mesonpy-4otp_0t3/build', '-Dbuildtype=release', '-Db_ndebug=if-release', ...]
    def _run(self, cmd: Sequence[str]) -> None:
        """Invoke a subprocess."""
        # Flush the line to ensure that the log line with the executed
        # command line appears before the command output. Without it,
        # the lines appear in the wrong order in pip output.
        print('{cyan}{bold}+ {}{reset}'.format(' '.join(cmd), **_STYLES), flush=True)
        r = subprocess.run(cmd, cwd=self._build_dir)
        if r.returncode != 0:
>           raise SystemExit(r.returncode)
E           SystemExit: 1
/private/tmp/nix-build-python3.11-meson-python-0.13.2.drv-0/meson_python-0.13.2/mesonpy/__init__.py:741: SystemExit
----------------------------- Captured stdout call -----------------------------
+ meson setup /private/tmp/nix-build-python3.11-meson-python-0.13.2.drv-0/meson_python-0.13.2/tests/packages/purelib-and-platlib /private/tmp/nix-build-python3.11-meson-python-0.13.2.drv-0/meson_python-0.13.2/tests/packages/purelib-and-platlib/.mesonpy-4otp_0t3/build -Dbuildtype=release -Db_ndebug=if-release -Db_vscrt=md --cross-file /private/tmp/nix-build-python3.11-meson-python-0.13.2.drv-0/meson_python-0.13.2/tests/packages/purelib-and-platlib/.mesonpy-4otp_0t3/build/meson-python-cross-file.ini --native-file=/private/tmp/nix-build-python3.11-meson-python-0.13.2.drv-0/meson_python-0.13.2/tests/packages/purelib-and-platlib/.mesonpy-4otp_0t3/build/meson-python-native-file.ini
The Meson build system
Version: 1.1.1
Source dir: /private/tmp/nix-build-python3.11-meson-python-0.13.2.drv-0/meson_python-0.13.2/tests/packages/purelib-and-platlib
Build dir: /private/tmp/nix-build-python3.11-meson-python-0.13.2.drv-0/meson_python-0.13.2/tests/packages/purelib-and-platlib/.mesonpy-4otp_0t3/build
Build type: cross build
Project name: purelib-and-platlib
Project version: 1.0.0
../../meson.build:5:0: ERROR: Unable to get clang pre-processor defines:
Compiler stdout:
-----
Compiler stderr:
clang-11: error: cannot use 'cpp-output' output with multiple -arch options
-----
A full log can be found at /private/tmp/nix-build-python3.11-meson-python-0.13.2.drv-0/meson_python-0.13.2/tests/packages/purelib-and-platlib/.mesonpy-4otp_0t3/build/meson-logs/meson-log.txt

@reckenrode
Copy link
Contributor

reckenrode commented Jul 5, 2023

The first group of failures is because they expect a specific darwin sdk framework to be present

>       assert name.group('plat') == PLATFORM
E       AssertionError: assert 'macosx_10_12_x86_64' == 'macosx_10_16_x86_64'
E         - macosx_10_16_x86_64
E         ?            ^
E         + macosx_10_12_x86_64
E         ?            ^
tests/test_wheel.py:182: AssertionError

We can substitute them with our version.

10.16 is a compatibility version for macOS 11.0. Is it actually using 11.0 APIs or just hard-coding a particular SDK assumption?

Never mind, this is a purity issue. It’s picking up the version of the builder (e.g., on my macOS 13.4.1 system).

E       AssertionError: assert 'macosx_11_0_arm64' == 'macosx_13_0_arm64'
E         - macosx_13_0_arm64
E         ?         ^
E         + macosx_11_0_arm64
E         ?         ^

@SuperSandro2000
Copy link
Member

meson-python will be included with #239969, I am going to cherry-pick the other things into python-updates already.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants