Skip to content

0.2.2: build fails because hardcoded python interpreter name #35

@kloczek

Description

@kloczek

Description

Looks like pep517 build fails because hardcoded python interpreter name.

Reproduce

Run /usr/bin/python3 -sBm build -w --no-isolation

Expected behavior

None of the python code should assume that python interpreter name is python.
Instead hadcoding that name interpreter name should be obtained from sys.executable

Context

Run build in env where there is no python executable and is for example python3 ends with

+ /usr/bin/python3 -sBm build -w --no-isolation
* Getting build dependencies for wheel...
running egg_info
creating jupyterlab_pygments.egg-info
writing jupyterlab_pygments.egg-info/PKG-INFO
writing dependency_links to jupyterlab_pygments.egg-info/dependency_links.txt
writing top-level names to jupyterlab_pygments.egg-info/top_level.txt
writing manifest file 'jupyterlab_pygments.egg-info/SOURCES.txt'
reading manifest file 'jupyterlab_pygments.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
/usr/lib/python3.8/site-packages/setuptools/config/setupcfg.py:293: _DeprecatedConfig: Deprecated config in `setup.cfg`
!!

        ********************************************************************************
        The license_file parameter is deprecated, use license_files instead.

        By 2023-Oct-30, you need to update your project and remove deprecated calls
        or your builds will no longer be supported.

        See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details.
        ********************************************************************************

!!
  parsed = self.parsers.get(option_name, lambda x: x)(value)
warning: no directories found matching 'jupyterlab_pygments/labextension'
no previously-included directories found matching '**/node_modules'
no previously-included directories found matching 'lib'
no previously-included directories found matching 'binder'
warning: no previously-included files matching '*~' found anywhere in distribution
warning: no previously-included files matching '*.pyc' found anywhere in distribution
warning: no previously-included files matching '*.pyo' found anywhere in distribution
warning: no previously-included files matching '.git' found anywhere in distribution
warning: no previously-included files matching '.ipynb_checkpoints' found anywhere in distribution
adding license file 'LICENSE'
writing manifest file 'jupyterlab_pygments.egg-info/SOURCES.txt'
* Building wheel...
yarn not found, ignoring yarn.lock file
➤ YN0070: Migrating from Yarn 1; automatically enabling the compatibility node-modules linker 👍

➤ YN0000: ┌ Resolution step
➤ YN0061: │ lru-cache@npm:7.8.0 is deprecated: Please update to latest patch version to fix memory leak https://github.com/isaacs/node-lru-cache/issues/227
➤ YN0061: │ @npmcli/move-file@npm:1.1.2 is deprecated: This functionality has been moved to @npmcli/fs
➤ YN0061: │ crypto@npm:1.0.1 is deprecated: This package is no longer supported. It's now a built-in Node module. If you've depended on crypto, you should switch to the one that's built-in.
➤ YN0061: │ querystring@npm:0.2.0 is deprecated: The querystring API is considered Legacy. new code should use the URLSearchParams API instead.

[..]

➤ YN0013: │ yjs@npm:13.5.34 can't be found in the cache and will be fetched from the remote registry
➤ YN0013: │ yocto-queue@npm:0.1.0 can't be found in the cache and will be fetched from the remote registry
➤ YN0000: └ Completed in 0s 499ms
➤ YN0000: ┌ Link step
➤ YN0007: │ @fortawesome/fontawesome-free@npm:5.15.4 must be built because it never has been before or the last one failed
➤ YN0007: │ core-js-pure@npm:3.21.1 must be built because it never has been before or the last one failed
➤ YN0007: │ es5-ext@npm:0.10.60 must be built because it never has been before or the last one failed
➤ YN0007: │ leveldown@npm:5.6.0 must be built because it never has been before or the last one failed
➤ YN0000: └ Completed in 8s 935ms
➤ YN0000: Done with warnings in 23s 13ms
command not found: python
Traceback (most recent call last):
  File "/usr/lib/python3.8/site-packages/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
    main()
  File "/usr/lib/python3.8/site-packages/pyproject_hooks/_in_process/_in_process.py", line 335, in main
    json_out['return_val'] = hook(**hook_input['kwargs'])
  File "/usr/lib/python3.8/site-packages/pyproject_hooks/_in_process/_in_process.py", line 251, in build_wheel
    return _build_backend().build_wheel(wheel_directory, config_settings,
  File "/usr/lib/python3.8/site-packages/jupyter_packaging/build_api.py", line 22, in build_wheel
    builder()
  File "/usr/lib/python3.8/site-packages/jupyter_packaging/setupbase.py", line 233, in builder
    run(npm_cmd + ["run", build_cmd], cwd=node_package)
  File "/usr/lib/python3.8/site-packages/jupyter_packaging/setupbase.py", line 297, in run
    return subprocess.check_call(cmd, **kwargs)
  File "/usr/lib64/python3.8/subprocess.py", line 364, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['/usr/bin/jlpm', 'run', 'build:prod']' returned non-zero exit status 127.

ERROR Backend subprocess exited when trying to invoke build_wheel

Please have a look on setuptools deprecation warning as well.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions