Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@
"prettier-eslint": "^16.3.0",
"ts-jest": "^29.1.0",
"ts-node": "^10.9.2",
"typescript": "^5.2.2"
"typescript": "^6.0.0"
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 | 🔴 Critical

Pipeline failure: Regenerate package-lock.json.

The CI pipeline failed because package-lock.json is out of sync with the updated TypeScript version in package.json. After verifying compatibility (see other comments), run npm install to regenerate the lockfile.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@package.json` at line 68, package-lock.json is out of sync with the updated
TypeScript entry in package.json; run npm install locally to update/regenerate
package-lock.json so the lockfile matches the new "typescript": "^6.0.0" entry,
verify the updated package-lock.json is added to the commit, and push the commit
so the CI pipeline can pass; reference the package.json "typescript" field and
the package-lock.json file when making this change.

⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Check for TypeScript version constraints in ecosystem dependencies

echo "=== Checking peerDependencies of TypeScript ecosystem tools ==="

# Check `@typescript-eslint/eslint-plugin` peer deps
echo -e "\n@typescript-eslint/eslint-plugin@7.9.0:"
npm view `@typescript-eslint/eslint-plugin`@7.9.0 peerDependencies.typescript

# Check ts-jest peer deps
echo -e "\nts-jest@29.1.0:"
npm view ts-jest@29.1.0 peerDependencies.typescript

# Check ts-node peer deps  
echo -e "\nts-node@10.9.2:"
npm view ts-node@10.9.2 peerDependencies.typescript

# Check eslint-config-standard-with-typescript peer deps
echo -e "\neslint-config-standard-with-typescript@19.0.1:"
npm view eslint-config-standard-with-typescript@19.0.1 peerDependencies

Repository: ZeroGachis/smartway-react-native-ui

Length of output: 526


Resolve TypeScript 6.0 incompatibility with ts-jest.

ts-jest@29.1.0 does not support TypeScript 6.0—its peer dependency constraint is >=4.3 <6. Either upgrade to a newer version of ts-jest that supports TypeScript 6.0, or use a TypeScript version below 6.0. The other tools (ts-node@10.9.2, eslint-config-standard-with-typescript@19.0.1, and @typescript-eslint/eslint-plugin@7.9.0) are compatible with TypeScript 6.0.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@package.json` at line 68, The package.json currently pins "typescript":
"^6.0.0" which is incompatible with ts-jest@29.1.0 (peer <6); update
dependencies to resolve this by either (A) upgrading ts-jest to a version that
declares support for TypeScript 6 (change ts-jest from "ts-jest@29.1.0" to a
newer compatible release) or (B) downgrading the "typescript" entry to a <6.x
range (e.g., "^5.x") so it satisfies ts-jest@29.1.0; modify package.json
accordingly and run install/test to verify (focus on the "typescript" and
"ts-jest" dependency entries).

⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🌐 Web query:

TypeScript 6.0.0 release notes breaking changes

💡 Result:

TypeScript 6.0.0 introduces several breaking changes and deprecations as a transition release preparing for TypeScript 7.0 (native Go-based compiler). It maintains API compatibility with 5.9 but changes defaults and deprecates legacy options. Key breaking changes and default shifts: - rootDir defaults to . (tsconfig directory) instead of inferred from sources. Set explicitly if sources are in subdirs like src/. - types defaults to [] (no auto-inclusion of @types packages). Explicitly list needed types (e.g., ["node"]) for build performance gains (20-50%). - Deprecated target: es5 (lowest now es2015/es2025 recommended). - Deprecated --downlevelIteration. - Deprecated --moduleResolution node/node10 (migrate to nodenext or bundler) and classic (removed). - Deprecated --baseUrl (use paths mappings without it). - Deprecated --esModuleInterop false / --allowSyntheticDefaultImports false. - Deprecated --alwaysStrict false (strict mode closer to default). - Deprecated outFile. - Deprecated legacy module syntax for namespaces, import asserts {}, no-default-lib directives. - Specifying CLI files with existing tsconfig.json now errors. - Behavioral: strict/use strict closer to always on; moduleResolution bundler with commonjs; type ordering may differ (use --stableTypeOrdering flag). Deprecations can be ignored in 6.0 via "ignoreDeprecations": "6.0" in tsconfig.json but will be removed in 7.0. Address warnings before upgrading further. Official docs recommend explicit tsconfig settings reflecting modern practices (target es2025, bundler resolution, explicit types). For full details, see official handbook: https://www.typescriptlang.org/docs/handbook/release-notes/typescript-6-0.html

Citations:


Update tsconfig.json for TypeScript 6.0.0 breaking changes.

TypeScript 6.0.0 introduces significant defaults changes and deprecations:

  • rootDir now defaults to . (tsconfig directory) instead of being inferred; set explicitly if sources are in subdirectories like src/
  • types now defaults to [] (no auto-inclusion of @types packages); explicitly list required types like ["node"]
  • Deprecated: target: es5 (use es2015 or later), --moduleResolution node/classic (migrate to bundler or nodenext), --baseUrl, --esModuleInterop false, --allowSyntheticDefaultImports false

Update tsconfig.json with explicit settings for rootDir, types, target, and moduleResolution to align with modern practices. Deprecation warnings can be suppressed temporarily with "ignoreDeprecations": "6.0" but will be removed in TypeScript 7.0.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@package.json` at line 68, Upgrade guidance: Because package.json now pins
"typescript": "^6.0.0", update tsconfig.json to explicitly set rootDir (e.g.,
"rootDir": "src" if your sources live there), add required types (e.g., "types":
["node"]), raise the target to a modern ES (e.g., "target": "es2015" or later)
and change moduleResolution to a supported scheme ("bundler" or "nodenext");
optionally add "ignoreDeprecations": "6.0" to suppress temporary warnings.
Locate and modify the tsconfig.json compilerOptions keys rootDir, types, target,
moduleResolution, and add ignoreDeprecations as needed.

},
"peerDependencies": {
"react": "*",
Expand Down
Loading