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

[Feature]: Release nightly version with a patch or minor version bump #6438

Open
colinaaa opened this issue May 4, 2024 · 0 comments
Open
Labels
feat New feature or request pending triage The issue/PR is currently untouched.

Comments

@colinaaa
Copy link

colinaaa commented May 4, 2024

What problem does this feature solve?

I'm trying to use Renovate to upgrade @rspack/core to nightly for testing. The renovate.json looks like this:

{
  "packageRules": [
    {
      "matchPackagePrefixes": [
        "@rspack/",
      ],
      "followTag": "nightly",
      "rangeStrategy": "pin",
      "ignoreUnstable": false,
      "respectLatest": false,
      "automerge": false
    }
  ]
}

But it does not work. Renovate bot did not create any updating PR.

On the other hand, the swc is working, and the renovate bot created PR like this:

fix(deps): update dependency @swc/core to ^1.5.3-nightly-20240501.1

The current version of swc@latest is 1.5.2. And the 1.5.3-nightly-20240501.1 is a pre-release version that Renovate would think newer than the latest version.

However, @rspack/core uses the same major, minor, and patch versions as latest for nightly and canary npm dist-tag.

When major, minor, and patch are equal, a pre-release version has lower precedence than a normal version:

Example: 1.0.0-alpha < 1.0.0.

https://semver.org/#spec-item-11

This makes Renovate not updating the @rspack/core to latest(in my case, 0.6.3 to 0.6.3-canary-42527c5-20240504004548)

What does the proposed API of configuration look like?

Release canary and nightly versions with a patch or minor version bump.

E.g.: the latest of @rspack/core is 0.6.3.

Then, the canary version should be 0.7.0-canary-{commit}-{datetime} or 0.6.4-canary-{commit}-{datetime} if only patch changes exist.

This is how typescript and changesets do the versioning.

@colinaaa colinaaa added feat New feature or request pending triage The issue/PR is currently untouched. labels May 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feat New feature or request pending triage The issue/PR is currently untouched.
Projects
None yet
Development

No branches or pull requests

1 participant