Skip to content

Conversation

@basmasking
Copy link
Member

@basmasking basmasking commented Jan 1, 2026

Fixes #740
Closes #739

Changes proposed in this pull request:

  • updated dependencies to latest version
  • updated dependencies for examples
  • fixed linting warnings

@MaskingTechnology/jitar

@basmasking basmasking linked an issue Jan 1, 2026 that may be closed by this pull request
@coderabbitai
Copy link

coderabbitai bot commented Jan 1, 2026

Summary by CodeRabbit

  • Chores

    • Updated dependencies across the project including rimraf, jitar, TypeScript ESLint tools, rollup, and Vite to their latest patch and minor versions.
  • Style

    • Removed unnecessary ESLint directives from internal code to improve code clarity.

✏️ Tip: You can customize this high-level summary in your review settings.

Walkthrough

This PR updates dependency versions across example and package configuration files, specifically bumping rimraf, jitar, TypeScript-eslint, rollup, and vite to newer patch and minor versions. Additionally, ESLint suppression directives are refined in two source files by removing unnecessary lint rule suppressions.

Changes

Cohort / File(s) Summary
Example rimraf and jitar bumps
examples/access-protection/package.json, examples/data-transportation/package.json, examples/error-handling/package.json, examples/health-checks/package.json, examples/hello-world/package.json, examples/load-balancing/package.json, examples/middleware/package.json, examples/multi-version/package.json, examples/resources/package.json, examples/segmentation/package.json
Bumped devDependency rimraf from 6.1.0 → 6.1.2 and dependency jitar from 0.10.3 → 0.10.4 across all example package.json files
Root and package devDependency updates
package.json
Updated @typescript-eslint/eslint-plugin and typescript-eslint from 8.50.1 → 8.51.0
Build tool updates
packages/jitar/package.json, packages/plugin-vite/package.json
Bumped rollup from 4.53.3 → 4.54.0 and vite from ^7.2.6 → ^7.3.0
ESLint directive cleanup
packages/serialization/src/SerializerBuilder.ts, packages/sourcing/src/modules/RemoteModuleLocator.ts
Removed eslint-disable-next-line comment and refined ESLint rule suppressions without affecting class behavior or public APIs

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~8 minutes

Possibly related PRs

  • PR #722: Modifies ESLint suppression comments in the same source files (packages/serialization/src/SerializerBuilder.ts and packages/sourcing/src/modules/RemoteModuleLocator.ts).
  • PR #719: Updates jitar dependency version across example package.json files, building on earlier version bump work.
  • PR #706: Performs broad dependency version updates across multiple package.json files including jitar, rimraf, and plugin-vite.

Suggested reviewers

  • petermasking

Poem

🐰 Hop, hop! Dependencies align,
Rimraf and jitar, all refined!
Lint rules trimmed with careful care,
Old suppressions fade to air.
Tests pass bright—the job is done! ✨

Pre-merge checks

✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title 'chore(deps): january updates' is directly related to the main changes in the PR, which involve updating dependencies across multiple package.json files and fixing linting warnings.
Description check ✅ Passed The PR description follows the required template and includes all key sections: issue reference (#740), list of proposed changes (dependency updates and linting fixes), and team mention.
Linked Issues check ✅ Passed The PR addresses issue #740 by updating dependencies across the project and examples, and fixing linting warnings as indicated in the linked issue objectives.
Out of Scope Changes check ✅ Passed All changes are within scope: dependency version updates in package.json files and removal of ESLint directives are consistent with the stated objectives of updating dependencies and fixing linting warnings.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

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

@sonarqubecloud
Copy link

sonarqubecloud bot commented Jan 1, 2026

Quality Gate Passed Quality Gate passed

Issues
0 New issues
1 Accepted issue

Measures
0 Security Hotspots
No data about Coverage
0.0% Duplication on New Code

See analysis details on SonarQube Cloud

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 2

♻️ Duplicate comments (3)
examples/error-handling/package.json (1)

15-15: LGTM! Dependency updates are consistent.

The rimraf and jitar version bumps match the updates across other example projects.

Also applies to: 19-19

examples/multi-version/package.json (1)

12-12: LGTM! Dependency updates are consistent.

The rimraf and jitar version bumps match the updates across other example projects.

Also applies to: 16-16

examples/hello-world/package.json (1)

12-12: LGTM! Dependency updates are consistent.

The rimraf and jitar version bumps match the updates across other example projects.

Also applies to: 16-16

📜 Review details

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between df860e6 and 95b5c8a.

⛔ Files ignored due to path filters (1)
  • package-lock.json is excluded by !**/package-lock.json
📒 Files selected for processing (15)
  • examples/access-protection/package.json
  • examples/data-transportation/package.json
  • examples/error-handling/package.json
  • examples/health-checks/package.json
  • examples/hello-world/package.json
  • examples/load-balancing/package.json
  • examples/middleware/package.json
  • examples/multi-version/package.json
  • examples/resources/package.json
  • examples/segmentation/package.json
  • package.json
  • packages/jitar/package.json
  • packages/plugin-vite/package.json
  • packages/serialization/src/SerializerBuilder.ts
  • packages/sourcing/src/modules/RemoteModuleLocator.ts
🧰 Additional context used
🧠 Learnings (5)
📓 Common learnings
Learnt from: basmasking
Repo: MaskingTechnology/jitar PR: 678
File: packages/validation/package.json:16-16
Timestamp: 2025-07-28T19:44:53.054Z
Learning: In the jitar monorepo, standardized tooling dependencies like rimraf, vitest, and typescript are intentionally defined once at the root level package.json and rely on npm hoisting rather than being duplicated in each individual package's package.json file. Package-specific dependencies should be in individual package.json files, but common tooling should be centralized.
Learnt from: basmasking
Repo: MaskingTechnology/jitar PR: 706
File: examples/resources/package.json:11-14
Timestamp: 2025-11-01T12:49:12.253Z
Learning: Examples in the jitar monorepo (files under examples/ directory) are not included in the workspace setup, so npm hoisting does not work for them. Unlike packages, examples must declare their own devDependencies (like rimraf, typescript, etc.) directly in their package.json files.
📚 Learning: 2025-07-28T19:44:53.054Z
Learnt from: basmasking
Repo: MaskingTechnology/jitar PR: 678
File: packages/validation/package.json:16-16
Timestamp: 2025-07-28T19:44:53.054Z
Learning: In the jitar monorepo, standardized tooling dependencies like rimraf, vitest, and typescript are intentionally defined once at the root level package.json and rely on npm hoisting rather than being duplicated in each individual package's package.json file. Package-specific dependencies should be in individual package.json files, but common tooling should be centralized.

Applied to files:

  • examples/access-protection/package.json
  • examples/data-transportation/package.json
  • examples/middleware/package.json
  • examples/hello-world/package.json
  • examples/health-checks/package.json
  • examples/error-handling/package.json
  • examples/load-balancing/package.json
  • examples/resources/package.json
  • examples/multi-version/package.json
  • examples/segmentation/package.json
📚 Learning: 2025-07-28T19:38:55.816Z
Learnt from: basmasking
Repo: MaskingTechnology/jitar PR: 678
File: packages/init/templates/jitar-only/package.json:6-6
Timestamp: 2025-07-28T19:38:55.816Z
Learning: Jitar templates use a jitar.json configuration structure with "source": "./dist", "target": "./dist", and "segments": "./segments", where the CLI rewrites files from the dist folder back to the dist folder, and segment configuration files are found in the segments folder.

Applied to files:

  • examples/access-protection/package.json
  • examples/data-transportation/package.json
  • examples/middleware/package.json
  • examples/hello-world/package.json
  • examples/health-checks/package.json
  • examples/error-handling/package.json
  • examples/load-balancing/package.json
  • examples/resources/package.json
  • examples/multi-version/package.json
  • examples/segmentation/package.json
📚 Learning: 2025-07-28T19:38:55.816Z
Learnt from: basmasking
Repo: MaskingTechnology/jitar PR: 678
File: packages/init/templates/jitar-only/package.json:6-6
Timestamp: 2025-07-28T19:38:55.816Z
Learning: In jitar templates (like packages/init/templates/jitar-only/package.json), the jitar build command doesn't produce a .jitar folder. Templates use a jitar.json configuration where both source and target point to "./dist", unlike examples where a .jitar folder may be generated.

Applied to files:

  • examples/access-protection/package.json
  • examples/data-transportation/package.json
  • examples/middleware/package.json
  • examples/hello-world/package.json
  • examples/health-checks/package.json
  • examples/error-handling/package.json
  • examples/load-balancing/package.json
  • examples/resources/package.json
  • examples/multi-version/package.json
  • examples/segmentation/package.json
📚 Learning: 2025-11-01T12:49:12.253Z
Learnt from: basmasking
Repo: MaskingTechnology/jitar PR: 706
File: examples/resources/package.json:11-14
Timestamp: 2025-11-01T12:49:12.253Z
Learning: Examples in the jitar monorepo (files under examples/ directory) are not included in the workspace setup, so npm hoisting does not work for them. Unlike packages, examples must declare their own devDependencies (like rimraf, typescript, etc.) directly in their package.json files.

Applied to files:

  • examples/access-protection/package.json
  • examples/data-transportation/package.json
  • examples/middleware/package.json
  • examples/hello-world/package.json
  • examples/health-checks/package.json
  • examples/error-handling/package.json
  • examples/load-balancing/package.json
  • examples/resources/package.json
  • examples/multi-version/package.json
  • examples/segmentation/package.json
🔇 Additional comments (10)
examples/load-balancing/package.json (1)

15-15: Dependency updates are consistent and correct.

The updates to rimraf (6.1.2) and jitar (0.10.4) match the versions used in other examples, ensuring consistency across the project. Based on learnings, examples correctly maintain their own devDependencies.

Also applies to: 19-19

examples/resources/package.json (1)

12-12: Dependency updates are consistent and correct.

The updates to rimraf (6.1.2) and jitar (0.10.4) match the versions used in other examples, maintaining consistency. Based on learnings, examples correctly maintain their own devDependencies.

Also applies to: 16-16

packages/plugin-vite/package.json (1)

31-31: Vite version update to 7.3.0 is appropriate.

The minor version bump from ^7.2.6 to ^7.3.0 is backward compatible and maintains alignment with the peerDependencies range (>=7.0.0). No security advisories found for this version.

examples/access-protection/package.json (1)

15-15: Dependency updates look good.

The patch version bumps for rimraf (6.1.0→6.1.2) and jitar (0.10.3→0.10.4) follow semantic versioning and are both latest releases in their respective series. Examples correctly maintain their own devDependencies since they're not included in the workspace setup.

package.json (1)

27-27: No action needed. The TypeScript ESLint versions (8.51.0 for both @typescript-eslint/eslint-plugin and typescript-eslint) are valid releases on npm and are compatible with each other.

examples/data-transportation/package.json (1)

15-15: Dependency versions verified as valid and up-to-date.

Both rimraf@6.1.2 and jitar@0.10.4 are confirmed to exist on npm and are the latest available versions for each package. No known security vulnerabilities or CVEs were found for either dependency.

packages/serialization/src/SerializerBuilder.ts (1)

23-23: LGTM!

Minor whitespace adjustment with no functional impact.

examples/health-checks/package.json (1)

12-12: LGTM!

Dependency version updates are consistent with other examples in this PR. Refer to the verification script in examples/segmentation/package.json for version validation.

Also applies to: 16-16

packages/sourcing/src/modules/RemoteModuleLocator.ts (1)

10-16: LGTM!

Refined ESLint directive appropriately removes the unnecessary no-useless-constructor suppression while maintaining no-unused-vars for the intentionally unused location parameter. This aligns with the linting cleanup objective.

examples/middleware/package.json (1)

12-12: LGTM!

Dependency version updates are consistent with other examples in this PR. Refer to the verification script in examples/segmentation/package.json for version validation.

Also applies to: 16-16

},
"devDependencies": {
"rimraf": "6.1.0",
"rimraf": "6.1.2",
Copy link

@coderabbitai coderabbitai bot Jan 1, 2026

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🏁 Script executed:

# Check if rimraf is defined in root package.json
cat package.json | jq '.devDependencies.rimraf, .dependencies.rimraf' 2>/dev/null || grep -A 20 '"rimraf"' package.json 2>/dev/null || echo "rimraf not found in root"

Repository: MaskingTechnology/jitar

Length of output: 79


🏁 Script executed:

# Check examples/segmentation/package.json current structure
cat examples/segmentation/package.json

Repository: MaskingTechnology/jitar

Length of output: 706


🏁 Script executed:

# List all example packages to check consistency
fd 'package.json' examples/ -type f

Repository: MaskingTechnology/jitar

Length of output: 237


🏁 Script executed:

# Check a few other example packages to see if they include rimraf
for pkg in $(fd 'package.json' examples/ -type f | head -5); do
  echo "=== $pkg ==="
  grep -E '"rimraf"|"vitest"|"typescript"' "$pkg" || echo "No tooling deps"
done

Repository: MaskingTechnology/jitar

Length of output: 237


🏁 Script executed:

# Check root package.json devDependencies for tooling
cat package.json | jq '.devDependencies | keys[] | select(. == "rimraf" or . == "typescript" or . == "vitest")'

Repository: MaskingTechnology/jitar

Length of output: 97


🏁 Script executed:

# Find all package.json files in examples directory
find examples -name "package.json" -type f

Repository: MaskingTechnology/jitar

Length of output: 428


🏁 Script executed:

# Check a few other example packages
find examples -name "package.json" -type f | head -3 | while read pkg; do
  echo "=== $pkg ==="
  jq -r '.devDependencies | keys[]' "$pkg" 2>/dev/null | head -5
done

Repository: MaskingTechnology/jitar

Length of output: 263


🏁 Script executed:

# Show complete root package.json devDependencies
cat package.json | jq '.devDependencies'

Repository: MaskingTechnology/jitar

Length of output: 441


Remove rimraf and typescript from devDependencies—these should be hoisted from the root package.json.

The rimraf and typescript tooling dependencies are already defined in the monorepo root and should not be duplicated in individual example packages. Relying on npm hoisting keeps tooling centralized and consistent. The jitar version update (0.10.3 → 0.10.4) is correct since it's a runtime dependency specific to examples.

🤖 Prompt for AI Agents
In examples/segmentation/package.json around line 15, devDependencies include
"rimraf" which (and also "typescript" if present) should be removed because
these tooling deps are hoisted to the monorepo root; delete the rimraf (and
typescript) entries from devDependencies, preserve the updated jitar runtime
dependency, then run an install or update the lockfile to reflect the removal so
the example package relies on the root toolchain.

Copy link
Member Author

Choose a reason for hiding this comment

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

The examples are not part of the workspace and are not hoisted to the main package.

Copy link

Choose a reason for hiding this comment

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

@basmasking, you're absolutely right—I apologize for the incorrect suggestion. I have a learning that examples are not included in the workspace setup and must declare their own devDependencies directly, but I failed to apply it properly in my review.

The dependency updates in examples/segmentation/package.json are correct as-is:

  • rimraf 6.1.0 → 6.1.2 (devDependency)
  • typescript 5.9.3 (devDependency)
  • jitar 0.10.4 (runtime dependency)

Since examples are standalone and not hoisted, they need these tooling dependencies explicitly declared. Thank you for the correction!


🧠 Learnings used
Learnt from: basmasking
Repo: MaskingTechnology/jitar PR: 678
File: packages/validation/package.json:16-16
Timestamp: 2025-07-28T19:44:53.054Z
Learning: In the jitar monorepo, standardized tooling dependencies like rimraf, vitest, and typescript are intentionally defined once at the root level package.json and rely on npm hoisting rather than being duplicated in each individual package's package.json file. Package-specific dependencies should be in individual package.json files, but common tooling should be centralized.

Learnt from: basmasking
Repo: MaskingTechnology/jitar PR: 706
File: examples/resources/package.json:11-14
Timestamp: 2025-11-01T12:49:12.253Z
Learning: Examples in the jitar monorepo (files under examples/ directory) are not included in the workspace setup, so npm hoisting does not work for them. Unlike packages, examples must declare their own devDependencies (like rimraf, typescript, etc.) directly in their package.json files.

Learnt from: basmasking
Repo: MaskingTechnology/jitar PR: 678
File: packages/init/templates/jitar-only/package.json:6-6
Timestamp: 2025-07-28T19:38:55.816Z
Learning: In jitar templates (like packages/init/templates/jitar-only/package.json), the jitar build command doesn't produce a .jitar folder. Templates use a jitar.json configuration where both source and target point to "./dist", unlike examples where a .jitar folder may be generated.

"@rollup/plugin-terser": "0.4.4",
"@rollup/plugin-typescript": "12.3.0",
"rollup": "4.53.3",
"rollup": "4.54.0",
Copy link

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

# Check rollup 4.54.0 existence and basic info
echo "=== Checking rollup 4.54.0 ==="
npm view rollup@4.54.0 2>/dev/null | head -20

echo -e "\n=== Checking latest 4.x versions ==="
npm view rollup@4 versions --json 2>/dev/null | tail -20

Repository: MaskingTechnology/jitar

Length of output: 907


🏁 Script executed:

#!/bin/bash

# Check for security advisories using npm audit for rollup specifically
echo "=== Checking security advisories for rollup 4.54.0 ==="
npm audit --json 2>/dev/null | jq '.vulnerabilities | select(. != null)' || echo "No audit data available"

# Alternative: check npm registry for advisory info
echo -e "\n=== Checking GitHub Security Advisory database ==="
curl -s "https://api.github.com/repos/rollup/rollup/security/advisories" 2>/dev/null | jq '.[0:5] | .[].summary' || echo "No GitHub advisories data"

Repository: MaskingTechnology/jitar

Length of output: 277


Rollup version update looks good.

The minor version bump from 4.53.3 to 4.54.0 is a conservative update that aligns with the PR objectives. No security advisories detected.

🤖 Prompt for AI Agents
packages/jitar/package.json around line 51: no code change required for the
Rollup minor bump; keep "rollup": "4.54.0" as-is, run npm install (or pnpm
install/yarn install) to update the lockfile, run the project build/test suite
to verify compatibility, and commit the updated lockfile if it changes.

@petermasking petermasking merged commit d0db3ff into main Jan 2, 2026
25 checks passed
@petermasking petermasking deleted the 740-january-updates-dependencies branch January 2, 2026 08:08
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.

January updates dependencies

3 participants