Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(developer): add --for-publishing to kmc 🎺 #9717

Merged

Conversation

mcdurdin
Copy link
Member

@mcdurdin mcdurdin commented Oct 9, 2023

The new --for-publishing flag allows us to enforce additional requirements for keyboards and lexical models that are to be published to the keymanapp repositories. This flag will always be switched on in the repository builds. This flag overrides the skipMetadata option which is a project-level option.

There is a bit of a delicate balance of requirements here:

  1. We want to be able to automatically verify keyboards and package licenses if they are in the repository.
  2. We do not want to force license checks on privately built keyboards and models.
  3. We want to provide pathways for users to check locally before submitting to the repository.
  4. If possible, we want to be able to build the .keyboard_info and .model_info files locally, but this should be up to the user for local builds.

For now, the only additional check that this flag provides is to verify that the license is MIT, which was an unchecked requirement for the repositories in the past.

Future checks can be added for file layout, additional required metadata files.

Anticipate adding this as a tool to Keyman Developer IDE -- a 'pre-publish' check -- in the future.

@keymanapp-test-bot skip

The new --for-publishing flag allows us to enforce additional
requirements for keyboards and lexical models that are to be published
to the keymanapp repositories. This flag will always be switched on in
the repository builds. This flag overrides the 'skipMetadata' option
which is a project-level option.

There is a bit of a delicate balance of requirements here:

1. We want to be able to automatically verify keyboards and package
   licenses if they are in the repository.
2. We do not want to force license checks on privately built keyboards
   and models.
3. We want to provide pathways for users to check locally before
   submitting to the repository.
4. If possible, we want to be able to build the .keyboard_info and
   .model_info files locally, but this should be up to the user for
   local builds.

For now, the only additional check that this flag provides is to verify
that the license is MIT, which was an unchecked requirement for the
repositories in the past.

Future checks can be added for file layout, additional required
metadata files.

Anticipate adding this as a tool to Keyman Developer IDE -- a
'pre-publish' check -- in the future.
@mcdurdin mcdurdin requested a review from darcywong00 as a code owner October 9, 2023 00:52
@keymanapp-test-bot
Copy link

keymanapp-test-bot bot commented Oct 9, 2023

User Test Results

Test specification and instructions

User tests are not required

Test Artifacts

@keymanapp-test-bot keymanapp-test-bot bot changed the title chore(developer): add --for-publishing to kmc chore(developer): add --for-publishing to kmc 🎺 Oct 9, 2023
@keymanapp-test-bot keymanapp-test-bot bot added this to the A17S23 milestone Oct 9, 2023
Base automatically changed from chore/update-kmp-compiler-xml2js-dependency to epic/package-metadata October 11, 2023 00:19
@mcdurdin mcdurdin merged commit 41ed45c into epic/package-metadata Oct 11, 2023
2 checks passed
@mcdurdin mcdurdin deleted the chore/developer/add-for-publishing-flag branch October 11, 2023 00:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants