Skip to content

up deps#19

Open
gugu wants to merge 3 commits into
mainfrom
up-deps-06-2024
Open

up deps#19
gugu wants to merge 3 commits into
mainfrom
up-deps-06-2024

Conversation

@gugu

@gugu gugu commented Jun 8, 2026

Copy link
Copy Markdown
Member

Summary by CodeRabbit

  • Chores

    • Updated development tooling and testing/linting packages to newer releases.
    • Adjusted TypeScript module resolution setting.
  • Updates

    • Upgraded the mock service worker used by the project, which updates integrity-check responses from the worker.

@coderabbitai

coderabbitai Bot commented Jun 8, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: de4d7bfa-d9a0-4895-9ef0-17b8b0327641

📥 Commits

Reviewing files that changed from the base of the PR and between ca01982 and b10e9b2.

⛔ Files ignored due to path filters (1)
  • package-lock.json is excluded by !**/package-lock.json
📒 Files selected for processing (1)
  • package.json
🚧 Files skipped from review as they are similar to previous changes (1)
  • package.json

📝 Walkthrough

Walkthrough

This PR updates devDependencies in package.json, increments the MSW PACKAGE_VERSION in public/mockServiceWorker.js, and changes TypeScript moduleResolution to bundler in tsconfig.json.

Changes

Dependency and config updates

Layer / File(s) Summary
DevDependencies, MSW runtime, and TS config
package.json, public/mockServiceWorker.js, tsconfig.json
Bumps development dependencies (Rollup ecosystem, ESLint TypeScript tooling, Vitest, Playwright, MSW, TypeScript, etc.) in package.json; updates PACKAGE_VERSION in public/mockServiceWorker.js from 2.12.10 to 2.14.6; changes compilerOptions.moduleResolution from node to bundler in tsconfig.json.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Poem

🐰
I hopped through package.json with care,
Bumped versions up, freshened the air,
MSW now wears 2.14.6 bright,
TS resolver set just right,
A tiny hop, a tidy pair.

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 inconclusive)

Check name Status Explanation Resolution
Title check ❓ Inconclusive The title 'up deps' is vague and generic, using abbreviated non-descriptive language that fails to convey meaningful information about the specific changes made. Use a more descriptive title such as 'Update devDependencies, moduleResolution, and MSW version' to clearly communicate the main changes to reviewers.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch up-deps-06-2024

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

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@package.json`:
- Around line 40-51: The package.json lists major upgrades (typescript@6.0.3,
eslint@10.4.1, vitest@4.1.8, `@typescript-eslint`@8.60.1, playwright@1.60.0,
rollup@4.61.1, msw@2.14.6) and npm audit flags a moderate ws vulnerability; run
npm audit fix to update ws and re-run tests. Verify each breaking-change area:
update TS flags (check strict/moduleResolution/targets in tsconfig.json and code
for removed classic resolution), convert ESLint config to flat config (replace
legacy .eslintrc patterns with eslint.config.js and ensure Node >=20 in
CI/engines), and update Vitest browser provider usage to the new provider
factory API in vitest.config (and any imports referencing `@vitest/browser`).
Finally, pin or adjust versions in package.json as needed and run full test/CI
to validate.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 083c12bf-ad14-4ada-a355-c68333e43077

📥 Commits

Reviewing files that changed from the base of the PR and between fe1fda7 and 982191a.

⛔ Files ignored due to path filters (1)
  • package-lock.json is excluded by !**/package-lock.json
📒 Files selected for processing (2)
  • package.json
  • public/mockServiceWorker.js

Comment thread package.json
Comment on lines +40 to +51
"@rollup/plugin-node-resolve": "^16.0.3",
"@rollup/plugin-typescript": "^12.3.0",
"@vitest/browser": "^4.1.8",
"@typescript-eslint/eslint-plugin": "^8.60.1",
"@typescript-eslint/parser": "^8.60.1",
"eslint": "^10.4.1",
"msw": "^2.14.6",
"playwright": "^1.60.0",
"rollup": "^4.61.1",
"tslib": "^2.8.1",
"typescript": "^5.0.0",
"vitest": "^3.0.0"
"typescript": "^6.0.3",
"vitest": "^4.1.8"

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

🏁 Script executed:

#!/bin/bash
# Description: Verify that the updated npm package versions exist and check for security advisories.

echo "=== Checking if package versions exist on npm ==="
for pkg in "typescript@6.0.3" "eslint@10.4.1" "vitest@4.1.8" "`@typescript-eslint/eslint-plugin`@8.60.1" "`@typescript-eslint/parser`@8.60.1" "msw@2.14.6" "playwright@1.60.0" "rollup@4.61.1" "`@vitest/browser`@4.1.8" "`@rollup/plugin-node-resolve`@16.0.3" "`@rollup/plugin-typescript`@12.3.0"; do
  echo "Checking $pkg..."
  npm view "$pkg" version 2>&1 | head -5
done

echo ""
echo "=== Checking for security advisories ==="
npm audit --package-lock-only 2>&1 || echo "Note: audit may require package-lock.json"

Repository: Short-io/browser-sdk

Length of output: 930


🌐 Web query:

TypeScript 6.0 breaking changes and release notes

💡 Result:

TypeScript 6.0 was released on March 23, 2026, as the final major version of the TypeScript compiler built on the original JavaScript-based codebase [1][2][3]. It serves as a transition release designed to bridge the gap between TypeScript 5.9 and the upcoming TypeScript 7.0, which is a native rewrite written in Go [4][2][3]. Breaking Changes and Deprecations TypeScript 6.0 introduced several breaking changes and deprecations to align the compiler with modern ecosystem standards and prepare for the 7.0 architecture [4][2]. Many of these can be temporarily ignored by setting "ignoreDeprecations": "6.0" in your tsconfig.json, though these options will be removed in TypeScript 7.0 [5][4]. Key breaking changes and default setting shifts include: 1. Compiler Defaults: Several defaults have been updated to reflect modern best practices. Notably, "strict" is now true by default [1][6]. 2. Deprecated Targets and Resolutions: Support for target: "es5" is deprecated [5][4][6]. The "classic" module resolution strategy has been removed and now triggers a compiler error [6]. 3. Module Formats: "module" now defaults to "esnext" [1][6]. Legacy module formats including AMD, UMD, and System are now compiler errors [6]. 4. Configuration Defaults: - "types" now defaults to an empty array ([]) [5][4][6]. - "rootDir" now defaults to the directory containing the tsconfig.json file [1][6]. - "esModuleInterop" and "allowSyntheticDefaultImports" are now enabled by default [6]. - "noUncheckedSideEffectImports" is now true by default [1][6]. 5. Syntax Deprecations: Import assertions (import... assert {...}) are deprecated in favor of the newer import syntax with "with" [2]. Transition to TypeScript 7.0 Because TypeScript 6.0 is the final JavaScript-based release, the development team has focused on deprecating patterns that are incompatible with the Go-based TypeScript 7.0 [2][7]. TypeScript 7.0 Beta was announced on April 21, 2026 [8][3]. To assist with the transition, Microsoft released a compatibility package, @typescript/typescript6, which provides a tsc6 binary to allow developers to run TypeScript 6.0 and 7.0 side-by-side during the migration process [8].

Citations:


🌐 Web query:

ESLint 10.0 breaking changes and migration guide

💡 Result:

ESLint v10.0.0 was released on February 6, 2026 [1][2]. As a major release, it introduced significant breaking changes [3][2]. Key Breaking Changes and Migration Requirements: Node.js Version Support: ESLint v10 dropped support for older Node.js versions. It now requires Node.js ^20.19.0, ^22.13.0, or >=24 [1][2]. Removal of Legacy Configuration: Support for the legacy.eslintrc configuration format has been removed [1][4][2]. Users must migrate to the flat configuration format (eslint.config.js) [2]. Configuration Lookup Algorithm: The configuration file lookup algorithm has changed; it now starts searching from the linted file's directory and searches upward, rather than beginning from the current working directory [4][2]. eslint-env Comments: Comments using /* eslint-env / are now reported as errors [5][4][2]. Updated Recommended Config: The eslint:recommended configuration has been updated, including new rules such as no-useless-assignment and preserve-caught-error [2]. Dependency and Tooling Changes: - Jiti < v2.2.0 is no longer supported [5][4]. - The stylish formatter now uses native styleText instead of the chalk library [5][1]. - Removed deprecated SourceCode methods and rule context methods [1][3]. - Removed support for v10_ and unstable_* flags [1][3]. - no-shadow-restricted-names rule now reports globalThis by default [5][1]. For detailed migration steps and specific code examples, refer to the official ESLint Migration Guide [5][2]. As of June 2026, the current version is 10.4.1 [6][7].

Citations:


🌐 Web query:

Vitest 4.0 breaking changes and migration guide

💡 Result:

Vitest 4.0 was released on October 22, 2025 [1][2][3]. As a major release, it introduced several breaking changes and required updates to your environment [2][3]. Key Breaking Changes and Migration Steps: Environment Requirements Vitest 4.0 requires Node.js >= 20.0.0 and Vite >= 6.0.0 [4]. Ensure your environment is updated before proceeding with other migration steps [4]. Browser Mode Browser Mode is stable in Vitest 4.0 [2][3]. The primary breaking change involves the configuration API: you must now provide a provider factory instead of a string (e.g., instead of 'playwright', you must import and use the factory provided by the @vitest/browser-playwright, @vitest/browser-webdriverio, or @vitest/browser-preview packages) [1][2][4]. The preview feature is no longer a default provider [4]. Internal Changes and Deprecations - Module Runner: Vitest now uses the Module Runner instead of vite-node [1][5][4]. Some features previously available through vite-node may no longer be available [4]. - Configuration: The workspace option has been removed in favor of projects [1][5]. Projects now only allow files containing vitest.config or vite.config in their names [1][5]. - API Cleanup: Many deprecated APIs, internal helpers, environment exports, and types (such as ErrorWithDiff and UserConfig) have been removed [1][5]. Node types should now be imported from vitest/node rather than the main entry point [1][5]. - Test/Reporter Changes: The minWorkers option has been removed and is now automatically set to 0 in non-watch mode [1][5]. The verbose reporter has been updated to print tests in a list, and a new tree reporter has been introduced [1][5]. - Coverage: Several coverage options were removed or changed, including ignoreEmptyLines and experimentalAstAwareRemapping (now enabled by default) [4]. Mocking and Spies There were significant changes to mocking and spying behavior [4]. For example, vi.spyOn no longer resets the state of spies and only restores mocks created manually with it; automocks are no longer affected by restoreAllMocks or the restoreMocks config option [4]. Additionally, some mock function naming conventions have changed [4]. For a full list of removals and specific code migration examples, refer to the official Vitest Migration Guide at https://vitest.dev/guide/migration.html [4].

Citations:


Confirm dependency versions exist; address audit + check major migration points

  • npm has the listed versions available for: TypeScript 6.0.3, ESLint 10.4.1, Vitest 4.1.8, @typescript-eslint/* 8.60.1, MSW 2.14.6, Playwright 1.60.0, Rollup 4.61.1, @vitest/browser 4.1.8, @rollup/plugin-node-resolve 16.0.3, @rollup/plugin-typescript 12.3.0.
  • npm audit reports a moderate vulnerability in ws (8.0.0–8.20.0), with a fix available via npm audit fix; apply and re-test.
  • Migration risk areas to review against your configs/code:
    • TypeScript 6: stricter defaults (e.g., strict true by default), classic module resolution removed, legacy targets/resolutions deprecated.
    • ESLint 10: requires Node 20+ (see project engines/CI), legacy .eslintrc/config patterns removed in favor of flat config (eslint.config.js).
    • Vitest 4: browser provider configuration API changed (provider factory instead of string), plus related config/API cleanups.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@package.json` around lines 40 - 51, The package.json lists major upgrades
(typescript@6.0.3, eslint@10.4.1, vitest@4.1.8, `@typescript-eslint`@8.60.1,
playwright@1.60.0, rollup@4.61.1, msw@2.14.6) and npm audit flags a moderate ws
vulnerability; run npm audit fix to update ws and re-run tests. Verify each
breaking-change area: update TS flags (check strict/moduleResolution/targets in
tsconfig.json and code for removed classic resolution), convert ESLint config to
flat config (replace legacy .eslintrc patterns with eslint.config.js and ensure
Node >=20 in CI/engines), and update Vitest browser provider usage to the new
provider factory API in vitest.config (and any imports referencing
`@vitest/browser`). Finally, pin or adjust versions in package.json as needed and
run full test/CI to validate.

gugu and others added 2 commits June 8, 2026 19:28
Switch to moduleResolution=bundler, the correct setting for this
ESNext + Rollup project, resolving the TS5107 deprecation error.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The eslint.config.js imports @eslint/js but it was never declared in
devDependencies. ESLint 10 ships it as a separate package, so lint
crashed with ERR_MODULE_NOT_FOUND. npm run lint now passes.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
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.

1 participant