-
Notifications
You must be signed in to change notification settings - Fork 903
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
[devOps] Centralize version release process to single-repo changes #819
Comments
Our first win in the release process: @joeyklee archived the ml5-boilerplate repo, which removes one of the four repos involved in the original release process. 4 -> 3! |
Secondly, we decided to switch over to using @latest in our examples, which cuts the updates to the ml5-examples repo out of our version release process. The two PRs that executed these changes are:
3 -> 2! |
We also switched over to using a version badge on the ml5-website repo, which cuts out the manual update process for the website! Those changes are in #811 That's 2 -> 1, which completes the primary goal for these changes! Next, I'll work on some improvements to the release workflow in the repository. |
@bomanimc - Your documentation of the progress and approaches are so helpful for explaining the decision making process behind each of these changes! Bravo! |
Re-opening this issue because we're not quite centralized! The |
#809 is complete, so we can also close this task. Making a release of the library now only requires changes to this repository. Next, we can work on making the process of cutting a release even easier by simplifying our branches and versioning processes. |
This issue extends a conversation discussed in #387.
Context: Current Methodology
The ml5.js project’s public-facing resources are a confluence of a few different sub-projects that each address a different focus within the overall usability of the library. With regards to devops, the four primary libraries are:
When a new release of the core library (e.g. 0.4.2 → 0.4.3) is launched, each of the other repos needs to be updated to use the latest version number in the documentation, code examples, etc as well. A goal in this process is to have the version number for the repository explicitly listed on all the imports, rather than allowing imports with UNPKG to silently default to the latest version, which is believed to be helpful for support and debugging. This means that there’s a time-consuming, multi-faceted process that can be quite difficult for new members on the project to take on. The process is as follows (see release process issue by Joey for further discussion #387):
Updating the Core ml5.js Library (ml5-library - Published w/ NPM & served w/ UNPKG):
Updating the ml5.js Examples (ml5-examples - Deploys with GitHub Pages):
Updating the ml5.js Website (ml5-website - Deploys with Netlify):
Updating the ml5.js Boilerplate (ml5-boilerplate):
Next Steps
Updating this thread with details and associating PRs and issues with similar levels of documentation and context!
The text was updated successfully, but these errors were encountered: