Skip to content

Replace Proprietary and Other with SPDX LicenseRef identifiers - #275

Merged
freakboy3742 merged 2 commits into
beeware:mainfrom
Georgefifth:fix/proprietary-license-spdx
Aug 24, 2026
Merged

Replace Proprietary and Other with SPDX LicenseRef identifiers#275
freakboy3742 merged 2 commits into
beeware:mainfrom
Georgefifth:fix/proprietary-license-spdx

Conversation

@Georgefifth

@Georgefifth Georgefifth commented Aug 24, 2026

Copy link
Copy Markdown
Contributor

Problem:

Solution:

  • Replace the Proprietary and Other choices with LicenseRef-Proprietary and LicenseRef-Other.
  • Render the existing proprietary LICENSE text for LicenseRef-Proprietary (as before); Other had no LICENSE template branch, so behaviour is unchanged.

Result:

  • briefcase new -Q license=LicenseRef-Proprietary generates a project with a valid SPDX license value and the proprietary LICENSE text; verified end-to-end against the paired briefcase PR.
  • Full test suite: 12 passed.

Refs beeware/briefcase#3016

PR Checklist:

  • I will abide by the BeeWare Code of Conduct
  • I have read and have followed the CONTRIBUTING.md file
  • This PR was generated or assisted using an AI tool

Assisted-by: Hermes Agent (Qwen3.8-Max) — changes reviewed and verified end-to-end by the operator

The briefcase new wizard will now offer 'LicenseRef-Proprietary' as the
license value for proprietary projects, since 'Proprietary' is not a
valid SPDX expression under PEP 639 metadata (beeware/briefcase#3016).

The 'Proprietary' choice is retained so that older briefcase versions
(which still pass 'Proprietary') continue to work against this template.

Refs beeware/briefcase#3016

@freakboy3742 freakboy3742 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Thanks for the PR, but you've massively overengineered this, and slightly missed the point.

The original issue is that Proprietary isn't a valid value for a license - it needs to be an SPDX identifier.

No unit test is needed for this change - just a change to the template. The test that is presented here doesn't actually validate anything.

Comment thread cookiecutter.json Outdated
"GPL-3.0+",
"Proprietary",
"LicenseRef-Proprietary",
"Other"

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

As noted on the Briefcase PR, we should also be handling "Other"

Suggested change
"Other"
"LicenseRef-Other"

Proprietary and Other are not valid SPDX expressions under PEP 639. Use LicenseRef-Proprietary and LicenseRef-Other, matching the paired change in beeware/briefcase#3021.

Refs beeware/briefcase#3016
@Georgefifth Georgefifth changed the title Support LicenseRef-Proprietary as a license choice Replace Proprietary and Other with SPDX LicenseRef identifiers Aug 24, 2026

@Georgefifth Georgefifth left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Addressed: the test is removed, and "Other" is now replaced with LicenseRef-Other alongside LicenseRef-Proprietary. I also dropped the backward-compat dual values — briefcase releases pin a template hash, so there is no real-world mixing of old and new values, and the extra choices were just noise.

@freakboy3742 freakboy3742 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Thanks for those updates!

@freakboy3742
freakboy3742 merged commit 4787359 into beeware:main Aug 24, 2026
28 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants