ipywidgets
ipywidgets copied to clipboard
jupyterlab-widgets 1.0.2: pep517 build fails
Description
I'm trying to buil jupyterlab-widgets 1.0.2 out of sdist tar ball from pypi. Looks like tsconfig.json has contents which points outside of source tar ball.
{
"extends": "../tsconfigbase",
"compilerOptions": {
"outDir": "lib",
"rootDir": "src",
"types": ["node"]
},
"include": ["src/**/*"],
"references": [
{
"path": "../packages/base"
},
{
"path": "../packages/controls"
},
{
"path": "../packages/output"
}
]
}
That content is causig that pep517 buidd is failing
+ /usr/bin/python3 -sBm build -w --no-isolation
* Getting dependencies for wheel...
setup.py:18: DeprecatedWarning: ensure_python is deprecated as of 0.7 and will be removed in 1.0. Use `setuptools` `python_requires` instead
ensure_python(">=3.6")
setup.py:43: DeprecatedWarning: create_cmdclass is deprecated as of 0.8 and will be removed in 1.0. "
Use `wrap_installers` to handle prebuild steps in cmdclass.
Use `get_data_files` to handle data files.
Use `include_package_data=True` and `MANIFEST.in` for package data.
cmdclass = create_cmdclass(
setup.py:54: DeprecatedWarning: install_npm is deprecated as of 0.8 and will be removed in 1.0. Use `npm_builder` and `wrap_installers`
jsbuild.append(install_npm(HERE, build_cmd="build:prod", npm=["jlpm"]))
running egg_info
writing jupyterlab_widgets.egg-info/PKG-INFO
writing dependency_links to jupyterlab_widgets.egg-info/dependency_links.txt
writing top-level names to jupyterlab_widgets.egg-info/top_level.txt
reading manifest file 'jupyterlab_widgets.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
no previously-included directories found matching 'src'
no previously-included directories found matching 'style'
no previously-included directories found matching '**/node_modules'
no previously-included directories found matching 'lib'
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_widgets.egg-info/SOURCES.txt'
* Building wheel...
setup.py:18: DeprecatedWarning: ensure_python is deprecated as of 0.7 and will be removed in 1.0. Use `setuptools` `python_requires` instead
ensure_python(">=3.6")
setup.py:43: DeprecatedWarning: create_cmdclass is deprecated as of 0.8 and will be removed in 1.0. "
Use `wrap_installers` to handle prebuild steps in cmdclass.
Use `get_data_files` to handle data files.
Use `include_package_data=True` and `MANIFEST.in` for package data.
cmdclass = create_cmdclass(
setup.py:54: DeprecatedWarning: install_npm is deprecated as of 0.8 and will be removed in 1.0. Use `npm_builder` and `wrap_installers`
jsbuild.append(install_npm(HERE, build_cmd="build:prod", npm=["jlpm"]))
running bdist_wheel
running jsdeps
Installing build dependencies with npm. This may take a while...
> jlpm install
yarn install v1.21.1
info No lockfile found.
[1/4] Resolving packages...
warning @jupyterlab/application > @jupyterlab/ui-components > @blueprintjs/core > [email protected]: You can find the new Popper v2 at @popperjs/core, this package is dedicated to the legacy v1
warning @jupyterlab/application > @jupyterlab/ui-components > @blueprintjs/core > react-popper > [email protected]: You can find the new Popper v2 at @popperjs/core, this package is dedicated to the legacy v1
warning @jupyterlab/application > @jupyterlab/apputils > url > [email protected]: The querystring API is considered Legacy. new code should use the URLSearchParams API instead.
warning @jupyterlab/builder > @jupyterlab/buildutils > [email protected]: 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.
warning @jupyterlab/builder > @jupyterlab/buildutils > verdaccio > [email protected]: request has been deprecated, see https://github.com/request/request/issues/3142
warning @jupyterlab/builder > @jupyterlab/buildutils > verdaccio > @verdaccio/readme > jsdom > [email protected]: request has been deprecated, see https://github.com/request/request/issues/3142
warning @jupyterlab/builder > @jupyterlab/buildutils > verdaccio > request > [email protected]: this library is no longer supported
warning @jupyterlab/builder > @jupyterlab/buildutils > verdaccio > @verdaccio/readme > jsdom > request > [email protected]: this library is no longer supported
warning @jupyterlab/builder > @jupyterlab/buildutils > verdaccio > request > [email protected]: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.
warning @jupyterlab/builder > @jupyterlab/buildutils > verdaccio > @verdaccio/readme > jsdom > request > [email protected]: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.
warning @jupyterlab/builder > @jupyterlab/buildutils > verdaccio > @verdaccio/readme > jsdom > [email protected]: request-promise-native has been deprecated because it extends the now deprecated request package, see https://github.com/request/request/issues/3142
[2/4] Fetching packages...
[3/4] Linking dependencies...
warning " > @lumino/[email protected]" has unmet peer dependency "[email protected]".
warning "@jupyterlab/application > @jupyterlab/[email protected]" has unmet peer dependency "react@^17.0.1".
warning "@jupyterlab/builder > @jupyterlab/buildutils > verdaccio > [email protected]" has unmet peer dependency "typanion@*".
warning " > @typescript-eslint/[email protected]" has incorrect peer dependency "eslint@^5.0.0 || ^6.0.0".
warning " > @typescript-eslint/[email protected]" has incorrect peer dependency "eslint@^5.0.0 || ^6.0.0".
warning Workspaces can only be enabled in private projects.
warning Workspaces can only be enabled in private projects.
[4/4] Building fresh packages...
success Saved lockfile.
$ jlpm run clean && jlpm run build:prod
yarn run v1.21.1
$ jlpm run clean:lib
$ rimraf lib tsconfig.tsbuildinfo
Done in 1.18s.
yarn run v1.21.1
$ jlpm run build:lib && jlpm run build:labextension
$ tsc
tsconfig.json:2:14 - error TS6053: File '../tsconfigbase' not found.
2 "extends": "../tsconfigbase",
~~~~~~~~~~~~~~~~~
tsconfig.json:10:5 - error TS6053: File '/home/tkloczko/rpmbuild/BUILD/packages/base' not found.
10 {
~
11 "path": "../packages/base"
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
12 },
~~~~~
tsconfig.json:13:5 - error TS6053: File '/home/tkloczko/rpmbuild/BUILD/packages/controls' not found.
13 {
~
14 "path": "../packages/controls"
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
15 },
~~~~~
tsconfig.json:16:5 - error TS6053: File '/home/tkloczko/rpmbuild/BUILD/packages/output' not found.
16 {
~
17 "path": "../packages/output"
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
18 }
~~~~~
Found 4 errors.
error Command failed with exit code 2.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
error Command failed with exit code 2.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
error Command failed with exit code 2.
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
Traceback (most recent call last):
File "/usr/lib/python3.8/site-packages/pep517/in_process/_in_process.py", line 363, in <module>
main()
File "/usr/lib/python3.8/site-packages/pep517/in_process/_in_process.py", line 345, in main
json_out['return_val'] = hook(**hook_input['kwargs'])
File "/usr/lib/python3.8/site-packages/pep517/in_process/_in_process.py", line 261, in build_wheel
return _build_backend().build_wheel(wheel_directory, config_settings,
File "/usr/lib/python3.8/site-packages/setuptools/build_meta.py", line 244, in build_wheel
return self._build_with_temp_dir(['bdist_wheel'], '.whl',
File "/usr/lib/python3.8/site-packages/setuptools/build_meta.py", line 229, in _build_with_temp_dir
self.run_setup()
File "/usr/lib/python3.8/site-packages/setuptools/build_meta.py", line 174, in run_setup
exec(compile(code, __file__, 'exec'), locals())
File "setup.py", line 96, in <module>
setuptools.setup(**setup_args)
File "/usr/lib/python3.8/site-packages/setuptools/__init__.py", line 155, in setup
return distutils.core.setup(**attrs)
File "/usr/lib/python3.8/site-packages/setuptools/_distutils/core.py", line 148, in setup
return run_commands(dist)
File "/usr/lib/python3.8/site-packages/setuptools/_distutils/core.py", line 163, in run_commands
dist.run_commands()
File "/usr/lib/python3.8/site-packages/setuptools/_distutils/dist.py", line 967, in run_commands
self.run_command(cmd)
File "/usr/lib/python3.8/site-packages/setuptools/_distutils/dist.py", line 986, in run_command
cmd_obj.run()
File "/usr/lib/python3.8/site-packages/jupyter_packaging/setupbase.py", line 640, in run
[self.run_command(cmd) for cmd in cmds]
File "/usr/lib/python3.8/site-packages/jupyter_packaging/setupbase.py", line 640, in <listcomp>
[self.run_command(cmd) for cmd in cmds]
File "/usr/lib/python3.8/site-packages/setuptools/_distutils/cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "/usr/lib/python3.8/site-packages/setuptools/_distutils/dist.py", line 986, in run_command
cmd_obj.run()
File "/usr/lib/python3.8/site-packages/jupyter_packaging/setupbase.py", line 321, in run
c.run()
File "/usr/lib/python3.8/site-packages/jupyter_packaging/setupbase.py", line 615, in run
builder()
File "/usr/lib/python3.8/site-packages/jupyter_packaging/setupbase.py", line 212, in builder
run(npm_cmd + ['install'], cwd=node_package)
File "/usr/lib/python3.8/site-packages/jupyter_packaging/setupbase.py", line 275, 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', 'install']' returned non-zero exit status 2.
ERROR Backend subproccess exited when trying to invoke build_wheel
This is from us developing in a monorepo and wanting to have consistent typescript configuration across the packages in the monorepo.
So how should look tjat file for sdist archive?
That file is at https://github.com/jupyter-widgets/ipywidgets/blob/7.x/tsconfigbase.json
You should be able to copy that file into the directory, change the tsconfig to point to ./tsconfigbase.json rather than going up a directory.
I don't know if there will be other problems. We don't build the package by itself when we release or develop it.
If you are building this yourself, please also make a consideration about whether or not you want to include the yarn.lock file from the repo root from that release. If this is not used, new versions of dependencies (that satisfy semver ranges) will be pulled in. When the file is in use, the versions are locked to be identical to what they were at the time of the original build.
If you are building this yourself, please also make a consideration about whether or not you want to include the
yarn.lockfile from the repo root from that release. If this is not used, new versions of dependencies (that satisfy semver ranges) will be pulled in. When the file is in use, the versions are locked to be identical to what they were at the time of the original build.
So why that file is not included in pypi sdist tar ball? 🤔
I just checked git repo from and looks like there is no yarn.lock file in repo and looks like there is no that file
[tkloczko@devel-g2v SPECS]$ git clone https://github.com/jupyter-widgets/ipywidgets/ -b @jupyter-widgets/[email protected]
Cloning into 'ipywidgets'...
remote: Enumerating objects: 49748, done.
remote: Counting objects: 100% (3161/3161), done.
remote: Compressing objects: 100% (1314/1314), done.
remote: Total 49748 (delta 2130), reused 2693 (delta 1838), pack-reused 46587
Receiving objects: 100% (49748/49748), 32.63 MiB | 15.52 MiB/s, done.
Resolving deltas: 100% (32677/32677), done.
Note: switching to 'f800c95081a8ea62a85f24f07f08511e6058d108'.
You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by switching back to a branch.
If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -c with the switch command. Example:
git switch -c <new-branch-name>
Or undo this operation with:
git switch -
Turn off this advice by setting config variable advice.detachedHead to false
[tkloczko@devel-g2v SPECS]$ cd ipywidgets
[tkloczko@devel-g2v ipywidgets]$ find . -name yarn.lock -print
[tkloczko@devel-g2v ipywidgets]$
Vidar is referring to this file: https://github.com/jupyter-widgets/ipywidgets/blob/master/yarn.lock
WIll check that. Thx.
Nevertheless looks like that file is missing in sdist and is missing in git tagged content. If exact content of that file is not in tageed part and I'll be downloading it from master each buildpotentially will be with different content of that file -> builds will be not repeatable.
Just tested with https://github.com/jupyter-widgets/ipywidgets/blob/master/yarn.lock using 1.1.0 sdist tar ball and pep517 build still fails
[tkloczko@devel-g2v SPECS]$ rpmbuild -ba python-jupyterlab-widgets.spec warning: Macro expanded in comment on line 9: %{VCS}/archive/%{version}/%{name}-%{version}.tar.gz
warning: Downloading https://files.pythonhosted.org/packages/source/j/jupyterlab_widgets/jupyterlab_widgets-1.1.0.tar.gz to /home/tkloczko/rpmbuild/SOURCES/jupyterlab_widgets-1.1.0.tar.gz
warning: Downloading https://raw.githubusercontent.com/jupyter-widgets/ipywidgets/master/yarn.lock#/python-jupyterlab-widgets-yarn.lock to /home/tkloczko/rpmbuild/SOURCES/python-jupyterlab-widgets-yarn.lock
Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.yvFr7R
+ umask 022
+ cd /home/tkloczko/rpmbuild/BUILD
+ cd /home/tkloczko/rpmbuild/BUILD
+ rm -rf jupyterlab_widgets-1.1.0
+ /usr/bin/gzip -dc /home/tkloczko/rpmbuild/SOURCES/jupyterlab_widgets-1.1.0.tar.gz
+ /usr/bin/tar -xof -
+ STATUS=0
+ '[' 0 -ne 0 ']'
+ cd jupyterlab_widgets-1.1.0
+ /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w .
+ /usr/bin/cat /home/tkloczko/rpmbuild/SOURCES/python-jupyterlab-widgets-trim_build_dependencies.patch
+ /usr/bin/patch -p1 -s --fuzz=0 --no-backup-if-mismatch -f
+ /usr/bin/cp /home/tkloczko/rpmbuild/SOURCES/python-jupyterlab-widgets-yarn.lock yarn.lock
+ RPM_EC=0
++ jobs -p
+ exit 0
Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.csRG7r
+ umask 022
+ cd /home/tkloczko/rpmbuild/BUILD
+ cd jupyterlab_widgets-1.1.0
+ CFLAGS='-O2 -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fdata-sections -ffunction-sections -flto=auto -flto-partition=none'
+ CXXFLAGS='-O2 -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fdata-sections -ffunction-sections -flto=auto -flto-partition=none'
+ FFLAGS='-O2 -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fdata-sections -ffunction-sections -flto=auto -flto-partition=none -I/usr/lib64/gfortran/modules'
+ FCFLAGS='-O2 -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fdata-sections -ffunction-sections -flto=auto -flto-partition=none -I/usr/lib64/gfortran/modules'
+ LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,--gc-sections -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -flto=auto -flto-partition=none -fuse-linker-plugin -Wl,--build-id=sha1'
+ CC=/usr/bin/gcc
+ CXX=/usr/bin/g++
+ FC=/usr/bin/gfortran
+ AR=/usr/bin/gcc-ar
+ NM=/usr/bin/gcc-nm
+ RANLIB=/usr/bin/gcc-ranlib
+ export CFLAGS CXXFLAGS FFLAGS FCFLAGS LDFLAGS CC CXX FC AR NM RANLIB
+ PBR_VERSION=1.1.0
+ SETUPTOOLS_SCM_PRETEND_VERSION=1.1.0
+ /usr/bin/python3 -sBm build -w --no-isolation
* Getting dependencies for wheel...
setup.py:40: DeprecatedWarning: create_cmdclass is deprecated as of 0.8 and will be removed in 1.0. "
Use `wrap_installers` to handle prebuild steps in cmdclass.
Use `get_data_files` to handle data files.
Use `include_package_data=True` and `MANIFEST.in` for package data.
cmdclass = create_cmdclass(
setup.py:51: DeprecatedWarning: install_npm is deprecated as of 0.8 and will be removed in 1.0. Use `npm_builder` and `wrap_installers`
jsbuild.append(install_npm(HERE, build_cmd="build:prod", npm=["jlpm"]))
running egg_info
writing jupyterlab_widgets.egg-info/PKG-INFO
writing dependency_links to jupyterlab_widgets.egg-info/dependency_links.txt
writing top-level names to jupyterlab_widgets.egg-info/top_level.txt
reading manifest file 'jupyterlab_widgets.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
no previously-included directories found matching 'src'
no previously-included directories found matching 'style'
no previously-included directories found matching '**/node_modules'
no previously-included directories found matching 'lib'
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_widgets.egg-info/SOURCES.txt'
* Building wheel...
setup.py:40: DeprecatedWarning: create_cmdclass is deprecated as of 0.8 and will be removed in 1.0. "
Use `wrap_installers` to handle prebuild steps in cmdclass.
Use `get_data_files` to handle data files.
Use `include_package_data=True` and `MANIFEST.in` for package data.
cmdclass = create_cmdclass(
setup.py:51: DeprecatedWarning: install_npm is deprecated as of 0.8 and will be removed in 1.0. Use `npm_builder` and `wrap_installers`
jsbuild.append(install_npm(HERE, build_cmd="build:prod", npm=["jlpm"]))
running bdist_wheel
running jsdeps
Installing build dependencies with npm. This may take a while...
> jlpm install
yarn install v1.21.1
[1/4] Resolving packages...
[2/4] Fetching packages...
[3/4] Linking dependencies...
warning "@jupyterlab/application > @lumino/[email protected]" has unmet peer dependency "[email protected]".
warning " > @lumino/[email protected]" has unmet peer dependency "[email protected]".
warning "@jupyterlab/application > @jupyterlab/[email protected]" has unmet peer dependency "react@^17.0.1".
warning "@jupyterlab/builder > @jupyterlab/buildutils > verdaccio > [email protected]" has unmet peer dependency "typanion@*".
warning " > @typescript-eslint/[email protected]" has incorrect peer dependency "eslint@^5.0.0 || ^6.0.0".
warning " > @typescript-eslint/[email protected]" has incorrect peer dependency "eslint@^5.0.0 || ^6.0.0".
warning Workspaces can only be enabled in private projects.
warning Workspaces can only be enabled in private projects.
[4/4] Building fresh packages...
success Saved lockfile.
$ jlpm run clean && jlpm run build:prod
yarn run v1.21.1
$ jlpm run clean:lib
$ rimraf lib tsconfig.tsbuildinfo
Done in 1.57s.
yarn run v1.21.1
$ jlpm run build:lib && jlpm run build:labextension
$ tsc
tsconfig.json:2:14 - error TS6053: File '../tsconfigbase' not found.
2 "extends": "../tsconfigbase",
~~~~~~~~~~~~~~~~~
tsconfig.json:10:5 - error TS6053: File '/home/tkloczko/rpmbuild/BUILD/packages/base' not found.
10 {
~
11 "path": "../packages/base"
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
12 },
~~~~~
tsconfig.json:13:5 - error TS6053: File '/home/tkloczko/rpmbuild/BUILD/packages/controls' not found.
13 {
~
14 "path": "../packages/controls"
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
15 },
~~~~~
tsconfig.json:16:5 - error TS6053: File '/home/tkloczko/rpmbuild/BUILD/packages/output' not found.
16 {
~
17 "path": "../packages/output"
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
18 }
~~~~~
Found 4 errors.
error Command failed with exit code 2.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
error Command failed with exit code 2.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
error Command failed with exit code 2.
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
Traceback (most recent call last):
File "/usr/lib/python3.8/site-packages/pep517/in_process/_in_process.py", line 363, in <module>
main()
File "/usr/lib/python3.8/site-packages/pep517/in_process/_in_process.py", line 345, in main
json_out['return_val'] = hook(**hook_input['kwargs'])
File "/usr/lib/python3.8/site-packages/pep517/in_process/_in_process.py", line 261, in build_wheel
return _build_backend().build_wheel(wheel_directory, config_settings,
File "/usr/lib/python3.8/site-packages/setuptools/build_meta.py", line 244, in build_wheel
return self._build_with_temp_dir(['bdist_wheel'], '.whl',
File "/usr/lib/python3.8/site-packages/setuptools/build_meta.py", line 229, in _build_with_temp_dir
self.run_setup()
File "/usr/lib/python3.8/site-packages/setuptools/build_meta.py", line 174, in run_setup
exec(compile(code, __file__, 'exec'), locals())
File "setup.py", line 93, in <module>
setuptools.setup(**setup_args)
File "/usr/lib/python3.8/site-packages/setuptools/__init__.py", line 155, in setup
return distutils.core.setup(**attrs)
File "/usr/lib/python3.8/site-packages/setuptools/_distutils/core.py", line 148, in setup
return run_commands(dist)
File "/usr/lib/python3.8/site-packages/setuptools/_distutils/core.py", line 163, in run_commands
dist.run_commands()
File "/usr/lib/python3.8/site-packages/setuptools/_distutils/dist.py", line 967, in run_commands
self.run_command(cmd)
File "/usr/lib/python3.8/site-packages/setuptools/_distutils/dist.py", line 986, in run_command
cmd_obj.run()
File "/usr/lib/python3.8/site-packages/jupyter_packaging/setupbase.py", line 724, in run
[self.run_command(cmd) for cmd in cmds]
File "/usr/lib/python3.8/site-packages/jupyter_packaging/setupbase.py", line 724, in <listcomp>
[self.run_command(cmd) for cmd in cmds]
File "/usr/lib/python3.8/site-packages/setuptools/_distutils/cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "/usr/lib/python3.8/site-packages/setuptools/_distutils/dist.py", line 986, in run_command
cmd_obj.run()
File "/usr/lib/python3.8/site-packages/jupyter_packaging/setupbase.py", line 344, in run
c.run()
File "/usr/lib/python3.8/site-packages/jupyter_packaging/setupbase.py", line 693, in run
builder()
File "/usr/lib/python3.8/site-packages/jupyter_packaging/setupbase.py", line 230, in builder
run(npm_cmd + ["install"], cwd=node_package)
File "/usr/lib/python3.8/site-packages/jupyter_packaging/setupbase.py", line 296, 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', 'install']' returned non-zero exit status 2.
ERROR Backend subproccess exited when trying to invoke build_wheel
error: Bad exit status from /var/tmp/rpm-tmp.csRG7r (%build)
I can try with git repo content from exact tag however I need to know which tag I should use
[tkloczko@devel-g2v SPECS]$ git clone https://github.com/jupyter-widgets/ipywidgets/
Cloning into 'ipywidgets'...
remote: Enumerating objects: 49748, done.
remote: Counting objects: 100% (3451/3451), done.
remote: Compressing objects: 100% (1474/1474), done.
remote: Total 49748 (delta 2292), reused 2933 (delta 1964), pack-reused 46297
Receiving objects: 100% (49748/49748), 32.70 MiB | 13.07 MiB/s, done.
Resolving deltas: 100% (32675/32675), done.
[tkloczko@devel-g2v SPECS]$ cd ipywidgets
[tkloczko@devel-g2v ipywidgets]$ git tag | grep 1.1.0
@jupyter-widgets/[email protected]
@jupyter-widgets/[email protected]
@jupyter-widgets/[email protected]
@jupyter-widgets/[email protected]
@jupyter-widgets/[email protected]
This is the commit for the jupyterlab_widgets 1.1.0 python package (and ipywidgets 7.7.0 and widgetsnbextension 3.6.0): https://github.com/jupyter-widgets/ipywidgets/commit/4372d90a71934b4954b626aed3a49ca23f3e210e. In the repo, that commit is tagged with tag 7.7.0. (Ideally we should tag that commit with the version number of each package that is released at that commit, not just the ipywidgets package.)
I've been trying to use that hash yarn.loc and still no sucess
[tkloczko@devel-g2v SPECS]$ rpmbuild -ba python-jupyterlab-widgets.spec
warning: Downloading https://files.pythonhosted.org/packages/source/j/jupyterlab_widgets/jupyterlab_widgets-1.1.0.tar.gz to /home/tkloczko/rpmbuild/SOURCES/jupyterlab_widgets-1.1.0.tar.gz
warning: Downloading https://raw.githubusercontent.com/jupyter-widgets/ipywidgets/4372d90a/yarn.lock#/python-jupyterlab-widgets-yarn.lock to /home/tkloczko/rpmbuild/SOURCES/python-jupyterlab-widgets-yarn.lock
Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.V1QAxQ
+ umask 022
+ cd /home/tkloczko/rpmbuild/BUILD
+ cd /home/tkloczko/rpmbuild/BUILD
+ rm -rf jupyterlab_widgets-1.1.0
+ /usr/bin/gzip -dc /home/tkloczko/rpmbuild/SOURCES/jupyterlab_widgets-1.1.0.tar.gz
+ /usr/bin/tar -xof -
+ STATUS=0
+ '[' 0 -ne 0 ']'
+ cd jupyterlab_widgets-1.1.0
+ /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w .
+ /usr/bin/cat /home/tkloczko/rpmbuild/SOURCES/python-jupyterlab-widgets-trim_build_dependencies.patch
+ /usr/bin/patch -p1 -s --fuzz=0 --no-backup-if-mismatch -f
+ /usr/bin/cp /home/tkloczko/rpmbuild/SOURCES/python-jupyterlab-widgets-yarn.lock yarn.lock
+ /usr/bin/rm tsconfig.json
+ RPM_EC=0
++ jobs -p
+ exit 0
Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.Abzyi7
+ umask 022
+ cd /home/tkloczko/rpmbuild/BUILD
+ cd jupyterlab_widgets-1.1.0
+ CFLAGS='-O2 -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fdata-sections -ffunction-sections -flto=auto -flto-partition=none'
+ CXXFLAGS='-O2 -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fdata-sections -ffunction-sections -flto=auto -flto-partition=none'
+ FFLAGS='-O2 -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fdata-sections -ffunction-sections -flto=auto -flto-partition=none -I/usr/lib64/gfortran/modules'
+ FCFLAGS='-O2 -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fdata-sections -ffunction-sections -flto=auto -flto-partition=none -I/usr/lib64/gfortran/modules'
+ LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,--gc-sections -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -flto=auto -flto-partition=none -fuse-linker-plugin -Wl,--build-id=sha1'
+ CC=/usr/bin/gcc
+ CXX=/usr/bin/g++
+ FC=/usr/bin/gfortran
+ AR=/usr/bin/gcc-ar
+ NM=/usr/bin/gcc-nm
+ RANLIB=/usr/bin/gcc-ranlib
+ export CFLAGS CXXFLAGS FFLAGS FCFLAGS LDFLAGS CC CXX FC AR NM RANLIB
+ PBR_VERSION=1.1.0
+ SETUPTOOLS_SCM_PRETEND_VERSION=1.1.0
+ /usr/bin/python3 -sBm build -w --no-isolation
* Getting dependencies for wheel...
setup.py:40: DeprecatedWarning: create_cmdclass is deprecated as of 0.8 and will be removed in 1.0. "
Use `wrap_installers` to handle prebuild steps in cmdclass.
Use `get_data_files` to handle data files.
Use `include_package_data=True` and `MANIFEST.in` for package data.
cmdclass = create_cmdclass(
setup.py:51: DeprecatedWarning: install_npm is deprecated as of 0.8 and will be removed in 1.0. Use `npm_builder` and `wrap_installers`
jsbuild.append(install_npm(HERE, build_cmd="build:prod", npm=["jlpm"]))
running egg_info
writing jupyterlab_widgets.egg-info/PKG-INFO
writing dependency_links to jupyterlab_widgets.egg-info/dependency_links.txt
writing top-level names to jupyterlab_widgets.egg-info/top_level.txt
reading manifest file 'jupyterlab_widgets.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no files found matching 'ts*.json'
no previously-included directories found matching 'src'
no previously-included directories found matching 'style'
no previously-included directories found matching '**/node_modules'
no previously-included directories found matching 'lib'
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_widgets.egg-info/SOURCES.txt'
* Building wheel...
setup.py:40: DeprecatedWarning: create_cmdclass is deprecated as of 0.8 and will be removed in 1.0. "
Use `wrap_installers` to handle prebuild steps in cmdclass.
Use `get_data_files` to handle data files.
Use `include_package_data=True` and `MANIFEST.in` for package data.
cmdclass = create_cmdclass(
setup.py:51: DeprecatedWarning: install_npm is deprecated as of 0.8 and will be removed in 1.0. Use `npm_builder` and `wrap_installers`
jsbuild.append(install_npm(HERE, build_cmd="build:prod", npm=["jlpm"]))
running bdist_wheel
running jsdeps
Installing build dependencies with npm. This may take a while...
> jlpm install
yarn install v1.21.1
[1/4] Resolving packages...
[2/4] Fetching packages...
[3/4] Linking dependencies...
warning " > @lumino/[email protected]" has unmet peer dependency "[email protected]".
warning "@jupyterlab/application > @jupyterlab/[email protected]" has unmet peer dependency "react@^17.0.1".
warning "@jupyterlab/application > @jupyterlab/ui-components > @blueprintjs/core > [email protected]" has incorrect peer dependency "[email protected] || ^15.0.0 || ^16.0.0".
warning "@jupyterlab/application > @jupyterlab/ui-components > @blueprintjs/core > react-popper > [email protected]" has incorrect peer dependency "react@^0.14.0 || ^15.0.0 || ^16.0.0".
warning " > @typescript-eslint/[email protected]" has incorrect peer dependency "eslint@^5.0.0 || ^6.0.0".
warning " > @typescript-eslint/[email protected]" has incorrect peer dependency "eslint@^5.0.0 || ^6.0.0".
[4/4] Building fresh packages...
success Saved lockfile.
$ jlpm run clean && jlpm run build:prod
yarn run v1.21.1
$ jlpm run clean:lib
$ rimraf lib tsconfig.tsbuildinfo
Done in 1.57s.
yarn run v1.21.1
$ jlpm run build:lib && jlpm run build:labextension
$ tsc
Version 3.9.7
Syntax: tsc [options] [file...]
Examples: tsc hello.ts
tsc --outFile file.js file.ts
tsc @args.txt
tsc --build tsconfig.json
Options:
-h, --help Print this message.
-w, --watch Watch input files.
--pretty Stylize errors and messages using color and context (experimental).
--all Show all compiler options.
-v, --version Print the compiler's version.
--init Initializes a TypeScript project and creates a tsconfig.json file.
-p FILE OR DIRECTORY, --project FILE OR DIRECTORY Compile the project given the path to its configuration file, or to a folder with a 'tsconfig.json'.
-b, --build Build one or more projects and their dependencies, if out of date
-t VERSION, --target VERSION Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019', 'ES2020', or 'ESNEXT'.
-m KIND, --module KIND Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', 'es2020', or 'ESNext'.
--lib Specify library files to be included in the compilation.
'es5' 'es6' 'es2015' 'es7' 'es2016' 'es2017' 'es2018' 'es2019' 'es2020' 'esnext' 'dom' 'dom.iterable' 'webworker' 'webworker.importscripts' 'scripthost' 'es2015.core' 'es2015.collection' 'es2015.generator' 'es2015.iterable' 'es2015.promise' 'es2015.proxy' 'es2015.reflect' 'es2015.symbol' 'es2015.symbol.wellknown' 'es2016.array.include' 'es2017.object' 'es2017.sharedmemory' 'es2017.string' 'es2017.intl' 'es2017.typedarrays' 'es2018.asyncgenerator' 'es2018.asynciterable' 'es2018.intl' 'es2018.promise' 'es2018.regexp' 'es2019.array' 'es2019.object' 'es2019.string' 'es2019.symbol' 'es2020.bigint' 'es2020.promise' 'es2020.string' 'es2020.symbol.wellknown' 'esnext.array' 'esnext.symbol' 'esnext.asynciterable' 'esnext.intl' 'esnext.bigint' 'esnext.string' 'esnext.promise'
--allowJs Allow javascript files to be compiled.
--jsx KIND Specify JSX code generation: 'preserve', 'react-native', or 'react'.
-d, --declaration Generates corresponding '.d.ts' file.
--declarationMap Generates a sourcemap for each corresponding '.d.ts' file.
--sourceMap Generates corresponding '.map' file.
--outFile FILE Concatenate and emit output to single file.
--outDir DIRECTORY Redirect output structure to the directory.
--removeComments Do not emit comments to output.
--noEmit Do not emit outputs.
--strict Enable all strict type-checking options.
--noImplicitAny Raise error on expressions and declarations with an implied 'any' type.
--strictNullChecks Enable strict null checks.
--strictFunctionTypes Enable strict checking of function types.
--strictBindCallApply Enable strict 'bind', 'call', and 'apply' methods on functions.
--strictPropertyInitialization Enable strict checking of property initialization in classes.
--noImplicitThis Raise error on 'this' expressions with an implied 'any' type.
--alwaysStrict Parse in strict mode and emit "use strict" for each source file.
--noUnusedLocals Report errors on unused locals.
--noUnusedParameters Report errors on unused parameters.
--noImplicitReturns Report error when not all code paths in function return a value.
--noFallthroughCasesInSwitch Report errors for fallthrough cases in switch statement.
--types Type declaration files to be included in compilation.
--esModuleInterop Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'.
@<file> Insert command line options and files from a file.
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
Traceback (most recent call last):
File "/usr/lib/python3.8/site-packages/pep517/in_process/_in_process.py", line 363, in <module>
main()
File "/usr/lib/python3.8/site-packages/pep517/in_process/_in_process.py", line 345, in main
json_out['return_val'] = hook(**hook_input['kwargs'])
File "/usr/lib/python3.8/site-packages/pep517/in_process/_in_process.py", line 261, in build_wheel
return _build_backend().build_wheel(wheel_directory, config_settings,
File "/usr/lib/python3.8/site-packages/setuptools/build_meta.py", line 244, in build_wheel
return self._build_with_temp_dir(['bdist_wheel'], '.whl',
File "/usr/lib/python3.8/site-packages/setuptools/build_meta.py", line 229, in _build_with_temp_dir
self.run_setup()
File "/usr/lib/python3.8/site-packages/setuptools/build_meta.py", line 174, in run_setup
exec(compile(code, __file__, 'exec'), locals())
File "setup.py", line 93, in <module>
setuptools.setup(**setup_args)
File "/usr/lib/python3.8/site-packages/setuptools/__init__.py", line 87, in setup
return distutils.core.setup(**attrs)
File "/usr/lib/python3.8/site-packages/setuptools/_distutils/core.py", line 148, in setup
return run_commands(dist)
File "/usr/lib/python3.8/site-packages/setuptools/_distutils/core.py", line 163, in run_commands
dist.run_commands()
File "/usr/lib/python3.8/site-packages/setuptools/_distutils/dist.py", line 967, in run_commands
self.run_command(cmd)
File "/usr/lib/python3.8/site-packages/setuptools/dist.py", line 1214, in run_command
super().run_command(command)
File "/usr/lib/python3.8/site-packages/setuptools/_distutils/dist.py", line 986, in run_command
cmd_obj.run()
File "/usr/lib/python3.8/site-packages/jupyter_packaging/setupbase.py", line 724, in run
[self.run_command(cmd) for cmd in cmds]
File "/usr/lib/python3.8/site-packages/jupyter_packaging/setupbase.py", line 724, in <listcomp>
[self.run_command(cmd) for cmd in cmds]
File "/usr/lib/python3.8/site-packages/setuptools/_distutils/cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "/usr/lib/python3.8/site-packages/setuptools/dist.py", line 1214, in run_command
super().run_command(command)
File "/usr/lib/python3.8/site-packages/setuptools/_distutils/dist.py", line 986, in run_command
cmd_obj.run()
File "/usr/lib/python3.8/site-packages/jupyter_packaging/setupbase.py", line 344, in run
c.run()
File "/usr/lib/python3.8/site-packages/jupyter_packaging/setupbase.py", line 693, in run
builder()
File "/usr/lib/python3.8/site-packages/jupyter_packaging/setupbase.py", line 230, in builder
run(npm_cmd + ["install"], cwd=node_package)
File "/usr/lib/python3.8/site-packages/jupyter_packaging/setupbase.py", line 296, 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', 'install']' returned non-zero exit status 1.
ERROR Backend subproccess exited when trying to invoke build_wheel
gentle ping 😄