Skip to content

Support global.json's rollForward latest* variants#538

Merged
HarithaVattikuti merged 7 commits into
actions:mainfrom
js6pak:feat/support-rollForward
May 26, 2026
Merged

Support global.json's rollForward latest* variants#538
HarithaVattikuti merged 7 commits into
actions:mainfrom
js6pak:feat/support-rollForward

Conversation

@js6pak
Copy link
Copy Markdown
Contributor

@js6pak js6pak commented Jul 20, 2024

Description:
This PR is a cleaned up version of #481, which fixes 2 issues:

  1. In the original npm run build wasn't rerun so dist is stale there
  2. The tests that were added never passed successfully

There are a few additional commits in this PR:

  1. babb40f which fixes the 6 minute delay on windows runners caused by clear-toolcache.ps1
  2. d9dae35 makes sure tests run even before the PR workflow is manually accepted, this can be dropped if needed

Related issue:
Fixes #448, closes #481

Check list:

  • Mark if documentation changes are required.
  • Mark if tests were added or updated to cover the changes.

@js6pak js6pak requested a review from a team as a code owner July 20, 2024 22:55
@js6pak
Copy link
Copy Markdown
Contributor Author

js6pak commented Aug 6, 2024

@HarithaVattikuti

@js6pak js6pak force-pushed the feat/support-rollForward branch 2 times, most recently from d3880ca to 4456588 Compare May 1, 2025 18:30
@js6pak
Copy link
Copy Markdown
Contributor Author

js6pak commented May 1, 2025

@HarithaVattikuti bump

@priyagupta108
Copy link
Copy Markdown
Contributor

Hi @js6pak,

Thank you for this contribution, this fills an important gap in global.json support! Here are a few review points:

  1. Rebase onto latest main. This will ensure your changes are up-to-date with the current codebase.

  2. Revert the workflow trigger changes. The branch filter removals across the CI workflow files (.github/workflows/*.yml) appear unrelated to this feature. Please revert those so they remain as-is.

Once those are addressed, happy to take another look. Thanks!

@priyagupta108 priyagupta108 self-assigned this May 6, 2026
js6pak added 2 commits May 7, 2026 21:26
This further enhances time savings seen in actions#213, down from a few minutes to seconds.
This means you are going to be notified of CI issues quicker, especially if you have to wait for a confirmation before running the workflows on your PR.
@js6pak js6pak force-pushed the feat/support-rollForward branch 5 times, most recently from 2306c4f to b7a286c Compare May 7, 2026 21:33
@js6pak
Copy link
Copy Markdown
Contributor Author

js6pak commented May 7, 2026

@priyagupta108 I've rebased the PR, so you can take a look. Workflow trigger changes are needed for external contributors to test whether their changes pass CI, so I'd recommend keeping them, but if you want to drop it, I'd do it after making sure you don't want any other changes to the actual feature (so I can test that CI works after requested changes :v).

@js6pak
Copy link
Copy Markdown
Contributor Author

js6pak commented May 8, 2026

@priyagupta108 Note the Basic validation workflow is broken on the main branch: https://github.com/actions/setup-dotnet/actions/workflows/basic-validation.yml?query=branch%3Amain, so it's unrelated to this PR.

@priyagupta108
Copy link
Copy Markdown
Contributor

Hi @js6pak, thanks for the quick rebase!

A few follow-up items to address:

  1. __tests__/e2e-test-csproj changes: Migrating the entire test project from MSTest to Newtonsoft.Json just to support a single latestMinor test case feels like a significant change, especially since that test depends on .NET Core 3.1, which has been EOL since December 2022. Would you consider reverting the migration and dropping the latestMinor test instead?

  2. actions/checkout version: Some of the new jobs added in e2e-tests.yml still use actions/checkout@v3. Could these be updated to actions/checkout@v6 to match the rest of the workflow?

  3. Branch filters: The current branch filters (main, releases/*) are intentional because they prevent CI from running on every push to every branch, which helps keep workflow costs and noise low for the repo. Could you please drop this change from the PR once your testing is complete?

Once those are addressed, happy to continue the review. Thanks!

@js6pak js6pak force-pushed the feat/support-rollForward branch from b7a286c to c0e4638 Compare May 21, 2026 00:15
@js6pak
Copy link
Copy Markdown
Contributor Author

js6pak commented May 21, 2026

A few follow-up items to address:

  1. __tests__/e2e-test-csproj changes: Migrating the entire test project from MSTest to Newtonsoft.Json just to support a single latestMinor test case feels like a significant change, especially since that test depends on .NET Core 3.1, which has been EOL since December 2022. Would you consider reverting the migration and dropping the latestMinor test instead?
  2. actions/checkout version: Some of the new jobs added in e2e-tests.yml still use actions/checkout@v3. Could these be updated to actions/checkout@v6 to match the rest of the workflow?
  3. Branch filters: The current branch filters (main, releases/*) are intentional because they prevent CI from running on every push to every branch, which helps keep workflow costs and noise low for the repo. Could you please drop this change from the PR once your testing is complete?

Once those are addressed, happy to continue the review. Thanks!

Thanks for catching 2., I disagree with 1. and 3. but addressed them.

@HarithaVattikuti HarithaVattikuti merged commit 98af08b into actions:main May 26, 2026
120 of 123 checks passed
@nikita-bestuzhev-ct
Copy link
Copy Markdown

nikita-bestuzhev-ct commented May 28, 2026

@HarithaVattikuti, @priyagupta108, hello!

JFYI, the following global.json:

{
  "sdk": {
    "version": "8.0",
    "rollForward": "latestFeature"
  }
}

now fails with:
Error: Cannot read properties of undefined (reading 'substring')

See https://github.com/actions/setup-dotnet/pull/538/changes#diff-83766f6dc1065d750be380c25c707c33a1516e036ef73f08764fbbb9cb9048a7R212

Was it done intentionally?

@otemnov
Copy link
Copy Markdown

otemnov commented May 28, 2026

@nikita-bestuzhev-ct I've opened an issue #739

@Frulfump
Copy link
Copy Markdown

@HarithaVattikuti, @priyagupta108, hello!

JFYI, the following global.json:

{
  "sdk": {
    "version": "8.0",
    "rollForward": "latestFeature"
  }
}

now fails with:
Error: Cannot read properties of undefined (reading 'substring')

See https://github.com/actions/setup-dotnet/pull/538/changes#diff-83766f6dc1065d750be380c25c707c33a1516e036ef73f08764fbbb9cb9048a7R212

Was it done intentionally?

8.0 isn't a valid version according to the docs for global.json https://learn.microsoft.com/en-us/dotnet/core/tools/global-json#version

version

Type: string

The version of the .NET SDK to use.

This field:

Requires the full version number, such as 10.0.100.
Doesn't support version numbers like 10, 10.0, or 10.0.x.
Doesn't have wildcard support.
Doesn't support version ranges.

mergify Bot added a commit to ArcadeData/arcadedb that referenced this pull request May 31, 2026
Bumps the github-actions group with 2 updates: [docker/setup-qemu-action](https://github.com/docker/setup-qemu-action) and [actions/setup-dotnet](https://github.com/actions/setup-dotnet).
Updates `docker/setup-qemu-action` from 4.0.0 to 4.1.0
Release notes

*Sourced from [docker/setup-qemu-action's releases](https://github.com/docker/setup-qemu-action/releases).*

> v4.1.0
> ------
>
> * Add `reset` input to uninstall current emulators by [`@​crazy-max`](https://github.com/crazy-max) in [docker/setup-qemu-action#21](https://redirect.github.com/docker/setup-qemu-action/pull/21)
> * Bump `@​docker/actions-toolkit` from 0.77.0 to 0.91.0 in [docker/setup-qemu-action#250](https://redirect.github.com/docker/setup-qemu-action/pull/250) [docker/setup-qemu-action#247](https://redirect.github.com/docker/setup-qemu-action/pull/247)
> * Bump brace-expansion from 1.1.12 to 1.1.15 in [docker/setup-qemu-action#265](https://redirect.github.com/docker/setup-qemu-action/pull/265)
> * Bump fast-xml-builder from 1.0.0 to 1.2.0 in [docker/setup-qemu-action#286](https://redirect.github.com/docker/setup-qemu-action/pull/286)
> * Bump fast-xml-parser from 5.4.2 to 5.8.0 in [docker/setup-qemu-action#255](https://redirect.github.com/docker/setup-qemu-action/pull/255)
> * Bump flatted from 3.3.3 to 3.4.2 in [docker/setup-qemu-action#257](https://redirect.github.com/docker/setup-qemu-action/pull/257)
> * Bump glob from 10.3.15 to 10.5.0 in [docker/setup-qemu-action#254](https://redirect.github.com/docker/setup-qemu-action/pull/254)
> * Bump handlebars from 4.7.8 to 4.7.9 in [docker/setup-qemu-action#262](https://redirect.github.com/docker/setup-qemu-action/pull/262)
> * Bump lodash from 4.17.23 to 4.18.1 in [docker/setup-qemu-action#273](https://redirect.github.com/docker/setup-qemu-action/pull/273)
> * Bump postcss from 8.5.6 to 8.5.10 in [docker/setup-qemu-action#285](https://redirect.github.com/docker/setup-qemu-action/pull/285)
> * Bump tar from 6.2.1 to 7.5.15 in [docker/setup-qemu-action#287](https://redirect.github.com/docker/setup-qemu-action/pull/287)
> * Bump tmp from 0.2.5 to 0.2.6 in [docker/setup-qemu-action#291](https://redirect.github.com/docker/setup-qemu-action/pull/291)
> * Bump undici from 6.23.0 to 6.26.0 in [docker/setup-qemu-action#251](https://redirect.github.com/docker/setup-qemu-action/pull/251)
> * Bump vite from 7.3.1 to 7.3.2 in [docker/setup-qemu-action#271](https://redirect.github.com/docker/setup-qemu-action/pull/271)
>
> **Full Changelog**: <docker/setup-qemu-action@v4.0.0...v4.1.0>


Commits

* [`0611638`](docker/setup-qemu-action@0611638) Merge pull request [#21](https://redirect.github.com/docker/setup-qemu-action/issues/21) from crazy-max/uninst
* [`ce59c81`](docker/setup-qemu-action@ce59c81) chore: update generated content
* [`2ddad44`](docker/setup-qemu-action@2ddad44) uninstall current emulators
* [`8c37cd6`](docker/setup-qemu-action@8c37cd6) Merge pull request [#250](https://redirect.github.com/docker/setup-qemu-action/issues/250) from docker/dependabot/npm\_and\_yarn/docker/actions-to...
* [`d1a0ff3`](docker/setup-qemu-action@d1a0ff3) chore: update generated content
* [`0a8f3dc`](docker/setup-qemu-action@0a8f3dc) build(deps): bump `@​docker/actions-toolkit` from 0.79.0 to 0.91.0
* [`9430f61`](docker/setup-qemu-action@9430f61) Merge pull request [#291](https://redirect.github.com/docker/setup-qemu-action/issues/291) from docker/dependabot/npm\_and\_yarn/tmp-0.2.6
* [`978bd77`](docker/setup-qemu-action@978bd77) chore: update generated content
* [`3479feb`](docker/setup-qemu-action@3479feb) build(deps): bump tmp from 0.2.5 to 0.2.6
* [`b113c26`](docker/setup-qemu-action@b113c26) Merge pull request [#255](https://redirect.github.com/docker/setup-qemu-action/issues/255) from docker/dependabot/npm\_and\_yarn/fast-xml-parser-5...
* Additional commits viewable in [compare view](docker/setup-qemu-action@ce36039...0611638)
  
Updates `actions/setup-dotnet` from 5.2.0 to 5.3.0
Release notes

*Sourced from [actions/setup-dotnet's releases](https://github.com/actions/setup-dotnet/releases).*

> v5.3.0
> ------
>
> What's Changed
> --------------
>
> ### Enhancements
>
> * Add dotnet-version: latest support with dotnet-channel input by [`@​mahabaleshwars`](https://github.com/mahabaleshwars) in [actions/setup-dotnet#730](https://redirect.github.com/actions/setup-dotnet/pull/730)
> * Support global.json's rollForward latest\* variants by [`@​js6pak`](https://github.com/js6pak) in [actions/setup-dotnet#538](https://redirect.github.com/actions/setup-dotnet/pull/538)
> * Improve version resolution by [`@​akoeplinger`](https://github.com/akoeplinger) in [actions/setup-dotnet#560](https://redirect.github.com/actions/setup-dotnet/pull/560)
>
> ### Dependency Updates
>
> * Upgrade @actions/\* and fast-xml-parser dependencies by [`@​Copilot`](https://github.com/Copilot) in [actions/setup-dotnet#728](https://redirect.github.com/actions/setup-dotnet/pull/728)
> * Update install scripts to v2026.05.19 (preserve archive links) by [`@​MichaelSimons`](https://github.com/MichaelSimons) in [actions/setup-dotnet#736](https://redirect.github.com/actions/setup-dotnet/pull/736)
> * Add rollForward note in README, improve proxy health check in e2e tests and bump version to v5.3.0 by [`@​priyagupta108`](https://github.com/priyagupta108) in [actions/setup-dotnet#738](https://redirect.github.com/actions/setup-dotnet/pull/738)
>
> ### Bug Fixes
>
> * Update Test Proxy job by [`@​priya-kinthali`](https://github.com/priya-kinthali) in [actions/setup-dotnet#703](https://redirect.github.com/actions/setup-dotnet/pull/703)
>
> New Contributors
> ----------------
>
> * [`@​Copilot`](https://github.com/Copilot) made their first contribution in [actions/setup-dotnet#728](https://redirect.github.com/actions/setup-dotnet/pull/728)
> * [`@​akoeplinger`](https://github.com/akoeplinger) made their first contribution in [actions/setup-dotnet#560](https://redirect.github.com/actions/setup-dotnet/pull/560)
> * [`@​MichaelSimons`](https://github.com/MichaelSimons) made their first contribution in [actions/setup-dotnet#736](https://redirect.github.com/actions/setup-dotnet/pull/736)
> * [`@​js6pak`](https://github.com/js6pak) made their first contribution in [actions/setup-dotnet#538](https://redirect.github.com/actions/setup-dotnet/pull/538)
>
> **Full Changelog**: <actions/setup-dotnet@v5...v5.3.0>


Commits

* [`9a946fd`](actions/setup-dotnet@9a946fd) Add rollForward note in README, improve proxy health check in e2e tests and b...
* [`98af08b`](actions/setup-dotnet@98af08b) Support global.json's rollForward latest\* variants ([#538](https://redirect.github.com/actions/setup-dotnet/issues/538))
* [`8404272`](actions/setup-dotnet@8404272) Update install scripts to v2026.05.19 ([#736](https://redirect.github.com/actions/setup-dotnet/issues/736))
* [`f1970f5`](actions/setup-dotnet@f1970f5) Don't download releases-index.json to resolve major version ([#560](https://redirect.github.com/actions/setup-dotnet/issues/560))
* [`af9211b`](actions/setup-dotnet@af9211b) Add dotnet-version: latest support with dotnet-channel input ([#730](https://redirect.github.com/actions/setup-dotnet/issues/730))
* [`df991ae`](actions/setup-dotnet@df991ae) chore: bump @actions/\* and fast-xml-parser dependencies ([#728](https://redirect.github.com/actions/setup-dotnet/issues/728))
* [`a66eefa`](actions/setup-dotnet@a66eefa) CI: remove manual PowerShell install from test-proxy job (e2e-tests.yml) ([#703](https://redirect.github.com/actions/setup-dotnet/issues/703))
* See full diff in [compare view](actions/setup-dotnet@c2fa09f...9a946fd)
  
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
  
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot show  ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore  major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
- `@dependabot ignore  minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
- `@dependabot ignore ` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore ` will remove all of the ignore conditions of the specified dependency
- `@dependabot unignore  ` will remove the ignore condition of the specified dependency and ignore conditions
Copy link
Copy Markdown

@cyberbossone-coder cyberbossone-coder left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This user cannot use or change this without permmission

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Script crashes when rollForward feature is set to latestMinor

8 participants