Skip to content

Add filtering#5

Merged
A9G-Data-Droid merged 7 commits intomainfrom
AddFiltering
Apr 30, 2025
Merged

Add filtering#5
A9G-Data-Droid merged 7 commits intomainfrom
AddFiltering

Conversation

@A9G-Data-Droid
Copy link
Copy Markdown
Owner

Overview

This pull request introduces a new feature to filter projects when generating Mermaid diagrams along with various other improvements and updates. Below are the details of the changes:
Key Changes

  1. New Filter Feature

    Purpose: Allow users to exclude projects whose names match a specified filter when generating diagrams.
    Changes Made:
    Added a --filter option to the command-line interface in Program.cs.
    Updated Commands.cs to include a filter parameter for both Project and Solution methods.
    Modified implementations in MermaidDiagram, ClassDiagram, and GraphDiagram to respect the filter parameter.
    Enhanced test cases in CommandsTests.cs to validate filtered content.

  2. Codebase Refactoring

    Moved classes/interfaces (DiagramType, IMermaidDiagram, MermaidDiagram) into a new Base subfolder under mermaid-graph/Diagrams.
    Updated namespace references to MermaidGraph.Diagrams.Base.
    Simplified the factory method for retrieving DiagramType.

  3. Dependency Updates

    Updated NuGet package versions:
    Microsoft.Build from 17.12.6 to 17.13.9
    Microsoft.Build.Locator from 1.7.8 to 1.9.1
    Microsoft.Build.Utilities.Core from 17.12.6 to 17.13.9
    Microsoft.ClearScript.V8 from 7.4.5 to 7.5.0
    Microsoft.ClearScript.V8.Native.win-x64 from 7.4.5 to 7.5.0
    Testing Libraries:
    MSTest.TestAdapter from 3.7.3 to 3.8.3
    MSTest.TestFramework from 3.7.3 to 3.8.3
    NUnit.Analyzers from 4.6.0 to 4.7.0
    NUnit3TestAdapter from 4.3.2 to 5.0.0

  4. New Additions

    Added a version.json file for versioning using Nerdbank.GitVersioning.

  5. Documentation Updates

    Updated README.md to include documentation for the new --filter parameter.
    Made a minor style change to the NuGet badge to use flat-round.

  6. Testing Enhancements

    Introduced new test cases in MermaidDiagramTests.cs:
    Validate diagram type retrieval.
    Test header initialization for diagrams.
    Improved existing tests:
    Enhanced assertions to validate filter functionality.
    Expanded test coverage for solution and project diagrams.

Summary of Files Changed

Major Feature Updates:
    mermaid-graph/Commands.cs
    mermaid-graph/Program.cs
Refactoring:
    Files moved to mermaid-graph/Diagrams/Base/.
Dependency Updates:
    mermaid-graph.csproj
    mermaid-graphTests.csproj
New Files:
    version.json
    .github/workflows/publish.yml
    mermaid-graphTests/MermaidDiagramTests.cs
Documentation:
    README.md

This PR enhances the functionality and maintainability of the project while introducing new testing and documentation improvements.

 - Refactor
 - Change scope to be more appropriate
 - DRY
 - More tests
Improve tests
Add nerdback versioning for 1.1
@A9G-Data-Droid
Copy link
Copy Markdown
Owner Author

Closes #4
Closes #6

This was linked to issues Apr 30, 2025
@A9G-Data-Droid A9G-Data-Droid self-assigned this Apr 30, 2025
@A9G-Data-Droid A9G-Data-Droid added the enhancement New feature or request label Apr 30, 2025
@A9G-Data-Droid A9G-Data-Droid merged commit 3e79d2c into main Apr 30, 2025
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Fix code scanning alert Needs a way to filter out unwanted elements

1 participant