Fedora Account System
Red Hat Associate
Red Hat Customer
Spec URL: https://lbalhar.fedorapeople.org/python-jupyter-builder.spec SRPM URL: https://lbalhar.fedorapeople.org/python-jupyter-builder-1.0.2-1.fc44.src.rpm Description: Build tools for JupyterLab extensions — extracted from the core JupyterLab codebase to be maintained and used independently. Fedora Account System Username: lbalhar I'm testing the new package together with others from this stack in: https://copr.fedorainfracloud.org/coprs/g/python/jupyterlab/builds/
Copr build: https://copr.fedorainfracloud.org/coprs/build/10660758 (succeeded) Review template: https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2494179-python-jupyter-builder/fedora-rawhide-x86_64/10660758-python-jupyter-builder/fedora-review/review.txt Please take a look if any issues were found. --- This comment was created by the fedora-review-service https://github.com/FrostyX/fedora-review-service If you want to trigger a new Copr build, add a comment containing new Spec and SRPM URLs or [fedora-review-service-build] string.
The specfile is sane. Relevant rpmlint findings: python3-jupyter-builder.noarch: E: non-executable-script /usr/lib/python3.15/site-packages/jupyter_builder/yarn.js 644 /usr/bin/env node I'll check the bundled things before approving.
The yarn.js file is a vendored bundled distribution of Yarn (https://github.com/yarnpkg/yarn), which includes third-party code which should liekly be provided in bundled() as well. I wonder how tedious that would be :/ Itelf, it claims to be BSD-2-Clause: {name:"@yarnpkg/cli",version:"3.5.0",license:"BSD-2-Clause"... THIRD_PARTY_LICENSES/yarn.js.LICENSE.txt only lists licenses of software bundled in yarn, but does not list the license of yarn :/ (perhaps this shall be fixed upstream?) There's also {"@yarnpkg/core":"workspace:^","@yarnpkg/fslib":"workspace:^","@yarnpkg/libzip":"workspace:^","@yarnpkg/parsers":"workspace:^","@yarnpkg/plugin-compat":"workspace:^","@yarnpkg/plugin-dlx":"workspace:^","@yarnpkg/plugin-essentials":"workspace:^","@yarnpkg/plugin-file":"workspace:^","@yarnpkg/plugin-git":"workspace:^","@yarnpkg/plugin-github":"workspace:^","@yarnpkg/plugin-http":"workspace:^","@yarnpkg/plugin-init":"workspace:^","@yarnpkg/plugin-link":"workspace:^","@yarnpkg/plugin-nm":"workspace:^","@yarnpkg/plugin-npm":"workspace:^","@yarnpkg/plugin-npm-cli":"workspace:^","@yarnpkg/plugin-pack":"workspace:^","@yarnpkg/plugin-patch":"workspace:^","@yarnpkg/plugin-pnp":"workspace:^","@yarnpkg/plugin-pnpm":"workspace:^","@yarnpkg/plugin-workspace-tools":"workspace:^","@yarnpkg/shell":"workspace:^",chalk:"^3.0.0","ci-info":"^3.2.0",clipanion:"3.2.0-rc.4",semver:"^7.1.2",tslib:"^1.13.0",typanion:"^3.3.0",yup:"^0.32.9"} And those likely have licenses of their own. echo '{"@yarnpkg/core":"workspace:^","@yarnpkg/fslib":"workspace:^","@yarnpkg/libzip":"workspace:^","@yarnpkg/p arsers":"workspace:^","@yarnpkg/plugin-compat":"workspace:^","@yarnpkg/plugin-dlx":"workspace:^","@yarnpkg/plug in-essentials":"workspace:^","@yarnpkg/plugin-file":"workspace:^","@yarnpkg/plugin-git":"workspace:^","@yarnpkg /plugin-github":"workspace:^","@yarnpkg/plugin-http":"workspace:^","@yarnpkg/plugin-init":"workspace:^","@yarnp kg/plugin-link":"workspace:^","@yarnpkg/plugin-nm":"workspace:^","@yarnpkg/plugin-npm":"workspace:^","@yarnpkg/ plugin-npm-cli":"workspace:^","@yarnpkg/plugin-pack":"workspace:^","@yarnpkg/plugin-patch":"workspace:^","@yarn pkg/plugin-pnp":"workspace:^","@yarnpkg/plugin-pnpm":"workspace:^","@yarnpkg/plugin-workspace-tools":"workspace :^","@yarnpkg/shell":"workspace:^","chalk":"^3.0.0","ci-info":"^3.2.0","clipanion":"3.2.0-rc.4","semver":"^7.1. 2","tslib":"^1.13.0","typanion":"^3.3.0","yup":"^0.32.9"}' \ | jq -r 'keys[]' \ | while read pkg; do printf '%-45s %s\n' "$pkg" "$(npm view "$pkg" license 2>/dev/null || echo 'NOT FOUND')" done @yarnpkg/core BSD-2-Clause @yarnpkg/fslib BSD-2-Clause @yarnpkg/libzip BSD-2-Clause @yarnpkg/parsers BSD-2-Clause @yarnpkg/plugin-compat BSD-2-Clause @yarnpkg/plugin-dlx BSD-2-Clause @yarnpkg/plugin-essentials BSD-2-Clause @yarnpkg/plugin-file BSD-2-Clause @yarnpkg/plugin-git BSD-2-Clause @yarnpkg/plugin-github BSD-2-Clause @yarnpkg/plugin-http BSD-2-Clause @yarnpkg/plugin-init BSD-2-Clause @yarnpkg/plugin-link BSD-2-Clause @yarnpkg/plugin-nm BSD-2-Clause @yarnpkg/plugin-npm BSD-2-Clause @yarnpkg/plugin-npm-cli BSD-2-Clause @yarnpkg/plugin-pack BSD-2-Clause @yarnpkg/plugin-patch BSD-2-Clause @yarnpkg/plugin-pnp BSD-2-Clause @yarnpkg/plugin-pnpm BSD-2-Clause @yarnpkg/plugin-workspace-tools BSD-2-Clause @yarnpkg/shell BSD-2-Clause chalk MIT ci-info MIT clipanion MIT semver ISC tslib 0BSD typanion MIT yup MIT
I don't think I'm able to get all the info we need for the RPM package from the source files as they are currently, so I've opened https://github.com/jupyterlab/jupyter-builder/issues/169
Spec URL: https://lbalhar.fedorapeople.org/python-jupyter-builder.spec SRPM URL: https://lbalhar.fedorapeople.org/python-jupyter-builder-1.2.2-1.fc44.src.rpm
2 nitpicks: > # Remove shebang line from yarn.js > sed -i '1d' jupyter_builder/yarn.js Better guard that by checking if the first line actually has a shebang. In case it does not have it in a later version, we don't want to strip the first line. Something like 1{/^#!/d} --- The %generate_buildrequires section is the only section that is not separated by 2 empty lines. Neither is blocking. Package APPROVED.