Skip to content

Conversation

@fraxken
Copy link
Member

@fraxken fraxken commented Nov 29, 2025

No description provided.

@changeset-bot
Copy link

changeset-bot bot commented Nov 29, 2025

🦋 Changeset detected

Latest commit: 0e844a4

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
@nodesecure/tree-walker Minor

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR refactors tree loading logic by introducing a TreeDependencies class to encapsulate dependency filtering and transformation. The main change abstracts the complexity of filtering Arborist nodes based on dev dependencies and workspace settings away from the walker implementation.

  • Introduces TreeDependencies class to handle dependency filtering from Arborist nodes
  • Updates LocalDependencyTreeLoader to return TreeDependencies instead of raw Arborist.Node
  • Adds comprehensive tests for LocalDependencyTreeLoader

Reviewed changes

Copilot reviewed 6 out of 7 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
workspaces/tree-walker/src/npm/TreeDependencies.ts New class that encapsulates logic for filtering and transforming Arborist node edges into a Map of dependencies
workspaces/tree-walker/src/npm/LocalDependencyTreeLoader.ts Updated to return TreeDependencies instead of Arborist.Node, with options now bundled into a single object
workspaces/tree-walker/src/npm/walker.ts Refactored to use TreeDependencies API, simplifying the dependency iteration logic
workspaces/tree-walker/test/npm/LocalDependencyTreeLoader.spec.ts New test file covering both virtual and actual tree loading scenarios
workspaces/tree-walker/test/fixtures/tree-loader-virtual/package.json Test fixture for tree loading tests
workspaces/tree-walker/test/fixtures/tree-loader-virtual/package-lock.json Lock file fixture for virtual tree loading test
.changeset/yummy-knives-grab.md Changeset documenting this as a minor version change
Files not reviewed (1)
  • workspaces/tree-walker/test/fixtures/tree-loader-virtual/package-lock.json: Language not supported

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@fraxken fraxken force-pushed the tree-walker-virtual-tree branch from 0ff4671 to 0e844a4 Compare November 29, 2025 17:33
@fraxken fraxken merged commit d280c39 into master Nov 30, 2025
5 checks passed
@fraxken fraxken deleted the tree-walker-virtual-tree branch November 30, 2025 12:29
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.

4 participants