Skip to content

Add initial version#2

Merged
marinofelipe merged 6 commits intomainfrom
initial-version
Sep 18, 2025
Merged

Add initial version#2
marinofelipe merged 6 commits intomainfrom
initial-version

Conversation

@marinofelipe
Copy link
Contributor

The current spmgraph version, with the addition of the recently designed edit and load functionalities that support custom spmgraph setups

* It has both the `edit` and `load` functionalities that support custom linter set ups
@marinofelipe marinofelipe self-assigned this Sep 18, 2025
@marinofelipe marinofelipe requested a review from a team as a code owner September 18, 2025 14:19
Copilot AI review requested due to automatic review settings September 18, 2025 14:19
Copy link

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 adds the initial version of spmgraph, a Swift Package Manager dependency graph utilities tool. The tool provides visualization, selective testing, and linting capabilities for Package.swift dependency graphs, with the addition of recently designed edit and load functionalities that support custom spmgraph setups.

Key changes:

  • Core functionality for visualizing, testing, and linting SPM dependency graphs
  • Command-line interface with subcommands for edit, load, tests, lint, and visualize operations
  • Configuration system allowing users to create custom lint rules and settings via SPMGraphConfig.swift files

Reviewed Changes

Copilot reviewed 36 out of 38 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
Sources/SPMGraphVisualize/SPMGraphVisualize.swift Main visualization module with GraphViz integration and PNG generation
Sources/SPMGraphTests/SPMGraphTests.swift Selective testing functionality that maps affected modules based on git changes
Sources/SPMGraphLint/SPMGraphLint.swift Linting engine that validates dependency graph rules and outputs formatted results
Sources/SPMGraphExecutable/ Command-line interface implementation with ArgumentParser for all subcommands
Sources/SPMGraphDescriptionInterface/ Dynamic configuration loading system for user-defined lint rules
Sources/SPMGraphConfigSetup/ Edit and load functionality for managing SPMGraphConfig.swift files
Sources/Core/ Shared utilities including system integration, package loading, and git operations
Package.swift Swift Package Manager configuration defining all targets and dependencies

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

@marinofelipe marinofelipe merged commit 0bec1b1 into main Sep 18, 2025
2 checks passed
@marinofelipe marinofelipe deleted the initial-version branch September 18, 2025 14:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants