JetBrains: Figure out how to tag releases
Created by: vdavid
@vdavid's Slack message to #dev-chat:
I’m wondering about the new release process for our updated JetBrains plugin. Context: The plugin used to live in its dedicated repo, and the release process included creating a new release here and tagging the released commit with the version number. This process was helpful because it preserved a pointer to the repo state for each version. I’d love to keep this feature. Problem: The plugin code is now merged to the monorepo. We already use the releases page for our main Sourcegraph product releases. Examples of solutions that don’t seem to preserve a pointer to the repo state:
- Marek mentions the sg repo as a release-only repo in a recent video. However, it only contains the release binaries, and I’m not sure how I could know exactly which repo version those releases were generated from.
- For the VS Code extension, we use a CHANGELOG.md file to track releases. No clear pointers to the matching repo state. If I find no good solution, I’ll let this go, but it’d be helpful to us to find an elegant way to track multiple product releases in the monorepo.
Responses:
- Dax: "Release repo with a changelog? It might require a manual sync but that is what I would use. Essentially just a copy of the specific folder in the monorepo that is updated per-release."
- Joe Chen: "Just a wild idea... release repo includes the commit of monorepo as a submodule
then tag on the change of the submodule." - Joe Chen: "Other note: have you thought about GitHub packages? is/could the plugin be an Apache Maven package? Which I think you might be able to publish without a relation to the repository's releases