asdf icon indicating copy to clipboard operation
asdf copied to clipboard

fix!: remove `use_release_candidate` option

Open jthegedus opened this issue 2 years ago • 4 comments

Summary

Now we are using release-please & GitHub Releases to manage our changelog generation and release pipeline we're no longer using release candidates (as they were originally intended) with asdf core.

People who wish to test the latest code should use HEAD via asdf update --head.

If HEAD is too unstable for people and they want an RC equivalent, then we have two options:

  1. we can implement asdf update <sha>
  2. we can recommend users cd to asdf installation and perform a manual git checkout <sha>

Given no users have raised missing the RC I feel we are safe to go with option 2 here. We can add asdf update <sha> in future if it becomes necessary to do so.

Other Information

This also removes sort_versions from the repository 🎉

Related:

  • https://github.com/asdf-vm/asdf/issues/1428 - we were discussing removing sort_versions which this PR does

Fixes #1515

jthegedus avatar Jan 18 '23 14:01 jthegedus

Big question before we merge, is this considered a "breaking change"? I would think yes, as we're changing an external API, though it is only for users to update, but it could be used in a CI pipeline? 🤔

Thoughts @Stratus3D

Edit: I have marked as Breaking with ! in the conventional-commit type. I still wish to get your thoughts.

jthegedus avatar Jan 18 '23 15:01 jthegedus

When I created this change I was not considering the scenario where we would manually create rc or beta tags.

I will update this PR with another suggestion.

jthegedus avatar Jan 25 '23 14:01 jthegedus

Big question before we merge, is this considered a "breaking change"?

I guess I never answered your question yesterday. Yes, I'd consider this a breaking change just to be safe.

Stratus3D avatar Jan 25 '23 14:01 Stratus3D

My last push was to just rebase before my new changes. I won't get to proposing my new changes until next week (2nd week April 2023).

The gist of my upcoming changes are:

  • prepare
    • detect default branch
    • detect remote
    • git fetch from remote
  • asdf update: use GitHub Release to detect "latest" version, then checkout the tag (as we do now)
    • manual GH Releases do NOT default to "latest", that is a checkbox to manually opt-in
    • automated release-please GH Releases will assign "latest"
  • asdf update --head: checkout default branch and reset to HEAD (as it does now)
  • asdf update <sha|tag>: checkout the specific SHA or Tag

Still working through updating tests cases etc

While certainly more code than what we currently have, I feel this is more straightforward.

jthegedus avatar Apr 06 '23 14:04 jthegedus