Skip to content

fix(release): surface bundled JavaScript licenses - #853

Closed
bm1016bm-svg wants to merge 2 commits into
apache:mainfrom
bm1016bm-svg:codex/surface-bundled-js-license
Closed

fix(release): surface bundled JavaScript licenses#853
bm1016bm-svg wants to merge 2 commits into
apache:mainfrom
bm1016bm-svg:codex/surface-bundled-js-license

Conversation

@bm1016bm-svg

Copy link
Copy Markdown

Surfaces webpack-generated third-party JavaScript notices in the wheel's standard license directory, so consumers do not have to discover them inside package data.

Changes

  • include main.*.js.LICENSE.txt through PEP 639 license-files
  • point wheel consumers to the bundled notices from LICENSE-wheel
  • fail release artifact verification when the notices are absent

How I tested this

  • python -m pytest tests/test_verify_apache_artifacts.py tests/test_release_config.py (20 passed)
  • built a wheel with Flit and inspected it to confirm the notice appears under .dist-info/licenses/burr/tracking/server/build/static/js/

Notes

Closes #756.

Checklist

  • PR has an informative and human-readable title
  • Changes are limited to a single goal
  • Relevant checks and tests pass
  • The functionality change is tested
  • New helper behavior is self-describing and covered by tests
  • No placeholder code was added
  • License documentation was updated

@github-actions github-actions Bot added the area/ci Workflows, build, release scripts label Jul 26, 2026
@jernejfrank

Copy link
Copy Markdown
Contributor

This makes the entire CI matrix fail before tests run. The new license-
files glob points into the gitignored burr/tracking/server/build
directory, which is absent in a clean checkout, so Flit errors with No
files found for [project.license-files]. Could we store the license
notice at a stable, committed path instead?

@bm1016bm-svg

Copy link
Copy Markdown
Author

Addressed: the bundled UI notice now lives at the committed root-level LICENSE-bundled-js path, and both wheel metadata and release validation use that stable file. The focused suite passes (18 tests), and a wheel build includes all four expected license files. The new Apache Actions runs currently require maintainer approval before jobs can start.

@bm1016bm-svg

Copy link
Copy Markdown
Author

Closing as superseded by #868, which solves #756 more comprehensively by generating LICENSE-wheel from the built UI dependency graph and enforcing it in release validation. Thanks for the review and for catching the clean-checkout packaging issue.

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

Labels

area/ci Workflows, build, release scripts

Projects

None yet

Development

Successfully merging this pull request may close these issues.

License: surface bundled JS dependencies in wheel's LICENSE rather than only the webpack-generated LICENSE.txt

2 participants