Skip to content
This repository was archived by the owner on Mar 14, 2026. It is now read-only.

⬆️ Bump typescript from 5.8.3 to 5.9.3#322

Closed
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/npm_and_yarn/typescript-5.9.3
Closed

⬆️ Bump typescript from 5.8.3 to 5.9.3#322
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/npm_and_yarn/typescript-5.9.3

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Dec 1, 2025

Copy link
Copy Markdown
Contributor

Bumps typescript from 5.8.3 to 5.9.3.

Release notes

Sourced from typescript's releases.

TypeScript 5.9.3

Note: this tag was recreated to point at the correct commit. The npm package contained the correct content.

For release notes, check out the release announcement

Downloads are available on:

TypeScript 5.9

Note: this tag was recreated to point at the correct commit. The npm package contained the correct content.

For release notes, check out the release announcement

Downloads are available on:

TypeScript 5.9 RC

Note: this tag was recreated to point at the correct commit. The npm package contained the correct content.

For release notes, check out the release announcement

Downloads are available on:

TypeScript 5.9 Beta

Note: this tag was recreated to point at the correct commit. The npm package contained the correct content.

For release notes, check out the release announcement.

Downloads are available on:

Commits
  • c63de15 Bump version to 5.9.3 and LKG
  • 8428ca4 🤖 Pick PR #62438 (Fix incorrectly ignored dts file fr...) into release-5.9 (#...
  • a131cac 🤖 Pick PR #62351 (Add missing Float16Array constructo...) into release-5.9 (#...
  • 0424333 🤖 Pick PR #62423 (Revert PR 61928) into release-5.9 (#62425)
  • bdb641a 🤖 Pick PR #62311 (Fix parenthesizer rules for manuall...) into release-5.9 (#...
  • 0d9b9b9 🤖 Pick PR #61978 (Restructure CI to prepare for requi...) into release-5.9 (#...
  • 2dce0c5 Intentionally regress one buggy declaration output to an older version (#62163)
  • 5be3346 Bump version to 5.9.2 and LKG
  • ad825f2 Bump version to 5.9.1-rc and LKG
  • 463a5bf Update LKG
  • Additional commits viewable in compare view

Dependabot compatibility score

You can trigger a rebase of this PR by commenting @dependabot rebase.


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 merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> 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)

Changelog by CodeRabbit

Upgrade TypeScript to 5.9.3 for improved developer experience, performance optimizations, and support for new ECMAScript module features.

Changed

  • ⬆️ Bump typescript from 5.8.3 to 5.9.3 in package.json

Note
Automatic rebases have been disabled on this pull request as it has been open for over 30 days.

Bumps [typescript](https://github.com/microsoft/TypeScript) from 5.8.3 to 5.9.3.
- [Release notes](https://github.com/microsoft/TypeScript/releases)
- [Commits](microsoft/TypeScript@v5.8.3...v5.9.3)

---
updated-dependencies:
- dependency-name: typescript
  dependency-version: 5.9.3
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file javascript Pull requests that update Javascript code labels Dec 1, 2025
@dependabot dependabot Bot requested a review from NatoBoram as a code owner December 1, 2025 07:35
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file javascript Pull requests that update Javascript code labels Dec 1, 2025
@coderabbitai

coderabbitai Bot commented Dec 1, 2025

Copy link
Copy Markdown

Walkthrough

The TypeScript devDependency is updated from version 5.8.3 to 5.9.3 in package.json. No other modifications to dependencies, configuration, or source code are present.

Changes

Cohort / File(s) Summary
Dependency Update
package.json
Updated TypeScript devDependency from 5.8.3 to 5.9.3

Possibly related PRs

Suggested reviewers

  • NatoBoram

Pre-merge checks and finishing touches

Caution

Pre-merge checks failed

Please resolve all errors before merging. Addressing warnings is optional.

  • Ignore
❌ Failed checks (1 error)
Check name Status Explanation Resolution
Gitmoji Commits ❌ Error The commit uses ':arrow_up:' text representation instead of the required '⬆️' emoji character, violating Gitmoji standard. Amend the commit to use '⬆️' emoji: '⬆️ Bump typescript from 5.8.3 to 5.9.3' using git commit --amend and git push --force-with-lease.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title begins with the ⬆️ emoji and clearly describes a dependency upgrade from TypeScript 5.8.3 to 5.9.3, which matches the primary change in the pull request.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Git Flow ✅ Passed The source branch 'dependabot/npm_and_yarn/typescript-5.9.3' adheres to Git Flow configuration as it uses the allowed 'dependabot/' prefix for the @dependabot[bot] user.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch dependabot/npm_and_yarn/typescript-5.9.3

Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Actionable comments posted: 1

📜 Review details

Configuration used: CodeRabbit UI

Review profile: ASSERTIVE

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between f28a499 and 48d16fc.

⛔ Files ignored due to path filters (1)
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (1)
  • package.json (1 hunks)
🧰 Additional context used
🧠 Learnings (8)
📓 Common learnings
Learnt from: NatoBoram
Repo: NatoBoram/neopaper-main PR: 1
File: package.json:14-15
Timestamp: 2025-09-11T04:16:20.121Z
Learning: Node.js v22.18.0+ enables "type stripping" by default, allowing direct execution of TypeScript files with `node file.ts` for erasable TypeScript syntax (types, interfaces, basic annotations). Earlier versions (v22.6.0+) require --experimental-strip-types flag, and v22.7.0+ added --experimental-transform-types for enums/namespaces. This eliminates the need for tools like jiti, tsx, or ts-node in many cases.
Learnt from: NatoBoram
Repo: NatoBoram/neopaper-main PR: 1
File: package.json:14-15
Timestamp: 2025-09-11T04:16:20.121Z
Learning: When reviewing Node.js projects with TypeScript, check if they're using Node.js v22.18.0+ with native TypeScript support before suggesting additional tools like jiti, tsx, or ts-node. If the code only uses erasable TypeScript syntax and Node.js version supports it, direct execution with `node file.ts` is the preferred modern approach.
Learnt from: NatoBoram
Repo: NatoBoram/neopaper-main PR: 1
File: package.json:14-15
Timestamp: 2025-09-11T04:16:20.121Z
Learning: Node.js native TypeScript support only works with erasable TypeScript syntax by default in v22.18.0+. Code using transformable syntax like enums, namespaces, or decorators still requires the --experimental-transform-types flag even in the latest versions.
Learnt from: NatoBoram
Repo: NatoBoram/based.ts PR: 125
File: package.json:43-43
Timestamp: 2025-09-02T22:22:01.549Z
Learning: In TypeScript projects, if `typescript/native-preview` is installed as a devDependency, the `tsgo` command is available and can be used in build scripts instead of `tsc` for experimental purposes.
Learnt from: NatoBoram
Repo: NatoBoram/based.ts PR: 137
File: .github/workflows/docs.yaml:22-28
Timestamp: 2025-10-27T06:50:26.562Z
Learning: In the NatoBoram/based.ts repository, use `latest` for Node.js and PNPM versions in GitHub Actions workflows rather than pinning specific versions. The project maintainer prefers to surface and fix breaking changes from new versions proactively instead of avoiding them.
Learnt from: CR
Repo: NatoBoram/gigachad.ts PR: 0
File: coderabbit-custom-pre-merge-checks-unique-id-file-non-traceable-F7F2B60C-1728-4C9A-8889-4F2235E186CA.txt:0-0
Timestamp: 2025-11-26T23:02:30.482Z
Learning: dependabot/ branches are allowed for the user dependabot[bot]
Learnt from: CR
Repo: NatoBoram/bookmarklets PR: 0
File: coderabbit-custom-pre-merge-checks-unique-id-file-non-traceable-F7F2B60C-1728-4C9A-8889-4F2235E186CA.txt:0-0
Timestamp: 2025-11-26T22:47:35.797Z
Learning: Allow dependabot/ branches for the user dependabot[bot] in addition to standard Git Flow branch naming
Learnt from: CR
Repo: NatoBoram/load_env PR: 0
File: coderabbit-custom-pre-merge-checks-unique-id-file-non-traceable-F7F2B60C-1728-4C9A-8889-4F2235E186CA.txt:0-0
Timestamp: 2025-11-26T23:01:12.361Z
Learning: Branch names must follow Git Flow config: master/develop branches use 'main', features use 'feature/' prefix, bugfixes use 'bugfix/' prefix, releases use 'release/' prefix, hotfixes use 'hotfix/' prefix, support branches use 'support/' prefix, and version tags use 'v' prefix. Additionally, 'dependabot/' branches are allowed for dependabot[bot].
Learnt from: NatoBoram
Repo: NatoBoram/neopaper-main PR: 1
File: .github/workflows/node.js.yaml:42-42
Timestamp: 2025-09-11T04:19:52.123Z
Learning: In NatoBoram's repositories, the preference is to allow the fix job in CI workflows to auto-fix issues directly on the main branch when build failures occur, rather than restricting fixes to pull requests only. This is an intentional design decision to maintain a clean main branch through automatic remediation.
Learnt from: CR
Repo: NatoBoram/based.ts PR: 0
File: coderabbit-custom-pre-merge-checks-unique-id-file-non-traceable-F7F2B60C-1728-4C9A-8889-4F2235E186CA.txt:0-0
Timestamp: 2025-11-26T22:59:47.091Z
Learning: Git Flow: Branch names must follow the configured prefixes - feature/, bugfix/, release/, hotfix/, support/, with master and develop mapped to 'main'. Additionally, dependabot/ branches are allowed for the dependabot[bot] user.
Learnt from: CR
Repo: NatoBoram/heroicons.svelte PR: 0
File: coderabbit-custom-pre-merge-checks-unique-id-file-non-traceable-F7F2B60C-1728-4C9A-8889-4F2235E186CA.txt:0-0
Timestamp: 2025-11-26T22:45:42.274Z
Learning: Git Flow: Branch names must follow the configured prefixes - feature/, bugfix/, release/, hotfix/, support/, or v for version tags, with master and develop branches mapped to main. Additionally, dependabot/ branches are allowed for dependabot[bot].
📚 Learning: 2025-09-11T04:16:20.121Z
Learnt from: NatoBoram
Repo: NatoBoram/neopaper-main PR: 1
File: package.json:14-15
Timestamp: 2025-09-11T04:16:20.121Z
Learning: Node.js v22.18.0+ enables "type stripping" by default, allowing direct execution of TypeScript files with `node file.ts` for erasable TypeScript syntax (types, interfaces, basic annotations). Earlier versions (v22.6.0+) require --experimental-strip-types flag, and v22.7.0+ added --experimental-transform-types for enums/namespaces. This eliminates the need for tools like jiti, tsx, or ts-node in many cases.

Applied to files:

  • package.json
📚 Learning: 2025-09-11T04:16:20.121Z
Learnt from: NatoBoram
Repo: NatoBoram/neopaper-main PR: 1
File: package.json:14-15
Timestamp: 2025-09-11T04:16:20.121Z
Learning: When reviewing Node.js projects with TypeScript, check if they're using Node.js v22.18.0+ with native TypeScript support before suggesting additional tools like jiti, tsx, or ts-node. If the code only uses erasable TypeScript syntax and Node.js version supports it, direct execution with `node file.ts` is the preferred modern approach.

Applied to files:

  • package.json
📚 Learning: 2025-09-11T04:16:20.121Z
Learnt from: NatoBoram
Repo: NatoBoram/neopaper-main PR: 1
File: package.json:14-15
Timestamp: 2025-09-11T04:16:20.121Z
Learning: Node.js native TypeScript support only works with erasable TypeScript syntax by default in v22.18.0+. Code using transformable syntax like enums, namespaces, or decorators still requires the --experimental-transform-types flag even in the latest versions.

Applied to files:

  • package.json
📚 Learning: 2025-10-27T06:50:26.562Z
Learnt from: NatoBoram
Repo: NatoBoram/based.ts PR: 137
File: .github/workflows/docs.yaml:22-28
Timestamp: 2025-10-27T06:50:26.562Z
Learning: In the NatoBoram/based.ts repository, use `latest` for Node.js and PNPM versions in GitHub Actions workflows rather than pinning specific versions. The project maintainer prefers to surface and fix breaking changes from new versions proactively instead of avoiding them.

Applied to files:

  • package.json
📚 Learning: 2025-10-03T04:01:12.024Z
Learnt from: CR
Repo: NatoBoram/gigachads.ts PR: 0
File: .github/copilot-instructions.md:0-0
Timestamp: 2025-10-03T04:01:12.024Z
Learning: Applies to **/package.json : Do not manually edit package.json dependencies; use pnpm commands

Applied to files:

  • package.json
📚 Learning: 2025-11-26T22:59:34.924Z
Learnt from: CR
Repo: NatoBoram/based.ts PR: 0
File: .github/instructions/vitest.instructions.md:0-0
Timestamp: 2025-11-26T22:59:34.924Z
Learning: Applies to **/*.test.ts : Import `afterAll`, `afterEach`, `describe`, `test`, and `vi` from 'vitest' for CLI command testing

Applied to files:

  • package.json
📚 Learning: 2025-11-26T22:59:34.924Z
Learnt from: CR
Repo: NatoBoram/based.ts PR: 0
File: .github/instructions/vitest.instructions.md:0-0
Timestamp: 2025-11-26T22:59:34.924Z
Learning: Applies to **/*.test.ts : Import `describe` and `test` from 'vitest'

Applied to files:

  • package.json
🔍 Remote MCP context7, exa, github

Based on the information I've successfully gathered, here's my summary of relevant context for reviewing this PR:

TypeScript 5.9.3 Upgrade Review Context

Release Quality & Stability

TypeScript 5.9.3 was released on October 1, 2025, with a note that the tag was recreated to point at the correct commit, but the npm package contained the correct content. No specific changes were made for TypeScript 5.9.2 (Stable), and TypeScript 5.9.3 includes fixes for reported issues in its milestone.

Major Features in TypeScript 5.9

TypeScript 5.9 introduces a minimal and updated tsc --init experience that generates a more concise tsconfig.json with only essential settings, support for import defer, support for --module node20, and improved DOM API descriptions.

Key Consideration: Type Inference Changes

A potential area of concern: Between versions 5.8.3 and 5.9.2, TypeScript can no longer derive certain complex types and defaults to any instead in some scenarios. This is a known behavioral change that may affect projects with complex generic type patterns.

Project Context

The Leanish project is a Svelte-based web client with TypeScript configuration already in place. Since this is a straightforward devDependency version bump with no other changes, the upgrade should be low-risk, though the codebase should be tested to ensure no type inference regressions occur.

Related Activity

This dependency update has been applied across multiple related projects in the same organization (load_env, bookmarklets, and based.ts), indicating coordinated dependency management.,,,,

⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: build_android

Comment thread package.json
"tailwindcss": "^3.4.17",
"tslib": "^2.8.1",
"typescript": "5.8.3",
"typescript": "5.9.3",

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

🧩 Analysis chain

🌐 Web query:

TypeScript 5.9.3 release notes breaking changes

💡 Result:

Short answer: There are no documented breaking changes specific to TypeScript 5.9.3. The TypeScript 5.9 release notes / announcement list the notable behavioral changes for 5.9 (type-argument inference, lib.d.ts changes, etc.), and the 5.9.3 tag is a patch with fixes — no separate breaking changes are listed for 5.9.3. [1][2]

Sources:

  • TypeScript 5.9 release announcement / release notes (noting no changes since RC). [1]
  • GitHub issues about the v5.9.3 release notes / tag formatting (shows v5.9.3 is a patch release and the release notes page was misformatted). [2]

🌐 Web query:

TypeScript 5.9 type inference changes defaults to any

💡 Result:

Short answer: No — TypeScript 5.9 did not change the language to “default everything to any.” It introduced changes to type-argument inference (to avoid leaking type variables) which can make some generic calls produce different inferred types or new errors unless you provide explicit type arguments. If a type parameter has a declared default, that default is used when inference can't choose; otherwise inference behaves as before (and may still fall back to any in positions where no candidate can be inferred). See the official notes and announcement. [1][2]

Sources:

  • TypeScript 5.9 release notes. [1]
  • TypeScript team announcement (blog). [2]

🏁 Script executed:

# Check if TypeScript 5.9.3 exists as a published version
curl -s https://registry.npmjs.org/typescript/5.9.3 | jq '.version, .dist.tarball' 2>/dev/null || echo "Version lookup via npm API"

Repository: NatoBoram/Leanish

Length of output: 131


🏁 Script executed:

#!/bin/bash
echo "=== Running type check ==="
pnpm run check

Repository: NatoBoram/Leanish

Length of output: 363


Verify TypeScript 5.9 type-argument inference changes don't require code updates.

TypeScript 5.9 introduced changes to type-argument inference to avoid leaking type variables, which may require some generic call sites to provide explicit type arguments. Confirm the codebase compiles cleanly and the type checker produces no new errors with TypeScript 5.9.3.

🤖 Prompt for AI Agents
In package.json around line 126, the project bumped TypeScript to 5.9.3; verify
the new type-argument inference behavior by switching to TS 5.9.3 locally,
running a fresh install and a full typecheck (npm/yarn install then npx tsc
--noEmit), and address any new errors by adding explicit type arguments at
generic call sites that fail inference, widening or constraining generic
function signatures where they leak type variables, updating overloaded function
signatures to disambiguate inference, or introducing narrow casts/const
assertions only where necessary; after fixes re-run the typecheck and CI to
ensure the codebase compiles cleanly with no new TypeScript errors.

@github-project-automation github-project-automation Bot moved this to In Progress in Leanish Dec 1, 2025
@dependabot @github

dependabot Bot commented on behalf of github Jan 3, 2026

Copy link
Copy Markdown
Contributor Author

Superseded by #329.

@dependabot dependabot Bot closed this Jan 3, 2026
@dependabot dependabot Bot deleted the dependabot/npm_and_yarn/typescript-5.9.3 branch January 3, 2026 23:49
@github-project-automation github-project-automation Bot moved this from In Progress to Done in Leanish Jan 3, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

dependencies Pull requests that update a dependency file javascript Pull requests that update Javascript code

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

0 participants