-
Notifications
You must be signed in to change notification settings - Fork 2
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
Changelogs #1084
Comments
I just created an initial event for the next hour we all have availability: 5/24 11:30-12:30PM MST. |
Thoughts, questions, etc.
|
Could we leverage pull requests to capture issues/changes that are included in a "new" version of a sim? |
Another thought, an alternative to manually making changelog entries "as we go"... Write a script to gather the commit messages between production version deploys, then manually curate those commit messages into a changelog. (This script seems like it would be relatively easy for the sim repo, but more work for dependency repos.) Use this script and "manual curation" to update the changelog just before publishing each production version. |
JB, CM, ON, AR, AM, KP: Change log needs to have:
Process of creating change log:
Changelog for PhET-iO vs PhET brand. focus right now on the PhET brand only. |
Next steps:
|
This was discussed during 5/27/21 developer meeting: The plan and overview was presented to the developer team. No one had concerns. We will need to allocate some time for a developer (or subteam) to work on this, we will bring back to management to discuss. @oliver-phet thought about pull requests and wondered if those could be used to naturally track changes made to sims and mostly common code. In addition to more change documentation, this might provide more stability. It is outside of our process, and we agreed we could learn more about this from people that use pull requests regularly. |
Additional notes from 5/27/21 developer meeting:
Assigning to @kathy-phet for prioritization, scheduling, and assignment. |
I was unable to attend the discussion at the 5/27/21 developer meeting. The idea of including a specific marker in certain commit messages then aggregating them with a script has the following disadvantages:
Git commit messages are not designed to be rewritten, and I don't think we should work toward a solution that makes it difficult to edit change logs or requires a nonstandard approach of editing change logs. The solution to these problems is to maintain a changes.txt or changes.md file in each repository, which is manually added to at the time of a user-facing change (often as part of a commit that implements the described solution). If a user forgets to update the changelog.txt file, they can add an entry later. Corrections or improvements can be made at any time. This is straightforward for simulation repositories, since they can have version delimiters, which can be automatically inserted by the build process:
For common code repos, we may need to annotate each change with a date, so that we find all common code changes that impact a project. For example:
This way, when we publish the next version of a sim, we can aggregate the relevant common code changes from dependencies and output them together (perhaps integrated into the sim's changes.txt or perhaps in a new combined report build artifact). In my opinion, this approach or something like it will serve our project well. Some known problems or questions regarding this proposal:
Regarding pull requests: managing changelogs through pull requests is not a good fit for our project for a few reasons: pull requests must be done in a branch which creates more overhead. Next, it seems odd for Developer X to create a pull request, then approve their own request. It adds a lot of overhead to something that should be simple, like adding a line of text to a text file. |
This came up again in phetsims/density#202. We are worried about not having a solution for this before we start to scale. The current business revolves around the Standard PhET-iO Wrapper, but it seems like we should have something for custom wrappers. We will continue to want to push people to new versions, and release notes may help communicate the new value and features a new version has in addition to providing an upgrade guide. |
At 5/13/21 status meeting, a potential need for a changelog was identified. This would enabled PhET to easily determine what was "new" in a version, and communicate that info to users and clients. Further discussion will happen in a subgroup, composed of KP, JB, CM, AR, SR, CM, ON.
The text was updated successfully, but these errors were encountered: