From d0ff0ebb43c02b476f76afe748c7e30456285a83 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 25 Feb 2026 20:45:44 +0800 Subject: [PATCH 1/4] Bump actions/setup-node from 4 to 6 (#25545) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bumps [actions/setup-node](https://github.com/actions/setup-node) from 4 to 6.
Release notes

Sourced from actions/setup-node's releases.

v6.0.0

What's Changed

Breaking Changes

Dependency Upgrades

Full Changelog: https://github.com/actions/setup-node/compare/v5...v6.0.0

v5.0.0

What's Changed

Breaking Changes

This update, introduces automatic caching when a valid packageManager field is present in your package.json. This aims to improve workflow performance and make dependency management more seamless. To disable this automatic caching, set package-manager-cache: false

steps:
- uses: actions/checkout@v5
- uses: actions/setup-node@v5
  with:
    package-manager-cache: false

Make sure your runner is on version v2.327.1 or later to ensure compatibility with this release. See Release Notes

Dependency Upgrades

New Contributors

Full Changelog: https://github.com/actions/setup-node/compare/v4...v5.0.0

v4.4.0

... (truncated)

Commits

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=actions/setup-node&package-manager=github_actions&previous-version=4&new-version=6)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) 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 this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
--------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: ringabout <43030857+ringabout@users.noreply.github.com> --- .github/workflows/ci_packages.yml | 6 +++--- .github/workflows/ci_publish.yml | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/ci_packages.yml b/.github/workflows/ci_packages.yml index 51ed2773b2..6cef86c28a 100644 --- a/.github/workflows/ci_packages.yml +++ b/.github/workflows/ci_packages.yml @@ -37,10 +37,10 @@ jobs: with: fetch-depth: 2 - - name: 'Install node.js 20.x' - uses: actions/setup-node@v4 + - name: 'Install node.js' + uses: actions/setup-node@v6 with: - node-version: '20.x' + node-version: 24 - name: 'Install dependencies (Linux amd64)' if: runner.os == 'Linux' && matrix.cpu == 'amd64' diff --git a/.github/workflows/ci_publish.yml b/.github/workflows/ci_publish.yml index d38a10d364..44cfaf8213 100644 --- a/.github/workflows/ci_publish.yml +++ b/.github/workflows/ci_publish.yml @@ -22,9 +22,9 @@ jobs: fetch-depth: 2 - name: 'Install node.js' - uses: actions/setup-node@v4 + uses: actions/setup-node@v6 with: - node-version: '' + node-version: 24 - name: 'Install dependencies (Linux amd64)' if: runner.os == 'Linux' && matrix.cpu == 'amd64' From 74499e4561140ffa12384944b0db8c221dc9ee4a Mon Sep 17 00:00:00 2001 From: ringabout <43030857+ringabout@users.noreply.github.com> Date: Thu, 26 Feb 2026 02:09:24 +0800 Subject: [PATCH 2/4] fixes #21281; proc f(x: static[auto]) doesn't treat x as static (#25543) fixes #21281 --- compiler/semtypes.nim | 10 +++++++++- tests/vm/t21281.nim | 13 +++++++++++++ 2 files changed, 22 insertions(+), 1 deletion(-) create mode 100644 tests/vm/t21281.nim diff --git a/compiler/semtypes.nim b/compiler/semtypes.nim index 94435886a9..da7576ca4a 100644 --- a/compiler/semtypes.nim +++ b/compiler/semtypes.nim @@ -1203,7 +1203,15 @@ proc addImplicitGeneric(c: PContext; typeClass: PType, typId: PIdent; # is this a bindOnce type class already present in the param list? for i in 0.. Date: Thu, 26 Feb 2026 02:10:00 +0800 Subject: [PATCH 3/4] allows implicitRangeConvs for literals (#25542) Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- compiler/sempass2.nim | 1 + tests/range/timplicitrangedownsizing2.nim | 11 ----------- tests/range/timplicitrangedownsizing3.nim | 14 ++++++++++++++ 3 files changed, 15 insertions(+), 11 deletions(-) delete mode 100644 tests/range/timplicitrangedownsizing2.nim create mode 100644 tests/range/timplicitrangedownsizing3.nim diff --git a/compiler/sempass2.nim b/compiler/sempass2.nim index c1279f3754..91ade858e9 100644 --- a/compiler/sempass2.nim +++ b/compiler/sempass2.nim @@ -1550,6 +1550,7 @@ proc track(tracked: PEffects, n: PNode) = # Check for implicit range conversions if n.kind == nkHiddenStdConv and (not tracked.isArrayIndexing) and + n[1].kind notin {nkCharLit..nkUInt64Lit, nkFloatLit..nkFloat128Lit} and shouldWarnRangeConversion(tracked.config, n.info, n.typ, n[1].typ): message(tracked.config, n.info, warnImplicitRangeConversion, typeToString(n[1].typ) & " -> " & typeToString(n.typ)) diff --git a/tests/range/timplicitrangedownsizing2.nim b/tests/range/timplicitrangedownsizing2.nim deleted file mode 100644 index 679fad60be..0000000000 --- a/tests/range/timplicitrangedownsizing2.nim +++ /dev/null @@ -1,11 +0,0 @@ -discard """ - matrix: "--warning:systemRangeConversion --warningaserror:systemRangeConversion" - action: "reject" - errormsg: "implicit range conversion int literal(12) -> Natural" -""" - - -proc foo(x: Natural) = - discard - -foo(12) \ No newline at end of file diff --git a/tests/range/timplicitrangedownsizing3.nim b/tests/range/timplicitrangedownsizing3.nim new file mode 100644 index 0000000000..7796a207b7 --- /dev/null +++ b/tests/range/timplicitrangedownsizing3.nim @@ -0,0 +1,14 @@ +discard """ + matrix: "--warning:systemRangeConversion --warningaserror:systemRangeConversion" +""" + +proc foo(x: range[0..100]) = discard + +foo(12) + +type + Float = range[0.0..100.0] + +proc bar(x: Float) = discard + +bar(12.0) \ No newline at end of file From 358d9b4497189070bd1243601e59ea33be38c5fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kevin=20Hovs=C3=A4ter?= Date: Fri, 27 Feb 2026 02:24:23 +0100 Subject: [PATCH 4/4] Fix casing of types in example (#25556) From the Standard Library Style Guide: > Type identifiers should be in PascalCase. All other identifiers should > be in camelCase with the exception of constants which may use > PascalCase but are not required to. --- doc/tut1.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/tut1.md b/doc/tut1.md index f116357394..072d8f3ba6 100644 --- a/doc/tut1.md +++ b/doc/tut1.md @@ -1159,8 +1159,8 @@ In Nim new types can be defined within a `type` statement: ```nim test = "nim c $1" type - biggestInt = int64 # biggest integer type that is available - biggestFloat = float64 # biggest float type that is available + BiggestInt = int64 # biggest integer type that is available + BiggestFloat = float64 # biggest float type that is available ``` Enumeration and object types may only be defined within a