Skip to content

Conversation

@EagleoutIce
Copy link
Member

No description provided.

@EagleoutIce EagleoutIce requested a review from Copilot December 31, 2025 16:58
@EagleoutIce EagleoutIce linked an issue Dec 31, 2025 that may be closed by this pull request
@EagleoutIce EagleoutIce changed the title [Plugin] Vignette, Test-Info and general meta-plugin support [Plugin] Vignette, Test-Info and general meta-file-plugin support Dec 31, 2025
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 introduces meta-plugin support for categorizing files by their role in an R project, specifically adding support for vignette and test files. The changes refactor the file role system from a single role per file to multiple roles per file, enabling more flexible file categorization.

Key Changes:

  • Adds new FileRole.Vignette and FileRole.Test enum values with corresponding plugin implementations
  • Refactors file role handling from singular role property to plural roles array throughout the codebase
  • Enhances query outputs to display role counts and use the new stringifyRLicense utility for better license formatting

Reviewed changes

Copilot reviewed 21 out of 21 changed files in this pull request and generated 9 comments.

Show a summary per file
File Description
test/functionality/project/plugin/plugin-test-helper.ts Removes analyzer reset calls between test iterations
test/functionality/project/plugin/namespace-file.test.ts Updates import and usage to renamed FlowrAnalyzerNamespaceFilesPlugin
src/util/r-license.ts Adds stringifyRLicense function to convert license objects back to readable strings
src/queries/catalog/project-query/project-query-format.ts Enhances project query output with role counts, improved pluralization, and license stringification
src/queries/catalog/project-query/project-query-executor.ts Adds role counts computation and project name extraction
src/queries/catalog/files-query/files-query-format.ts Updates to handle multiple roles per file and adds prototype name guessing
src/queries/catalog/files-query/files-query-executor.ts Migrates from single role to multiple roles with updated filtering logic
src/project/plugins/project-discovery/flowr-analyzer-project-discovery-plugin.ts Adds ProjectDiscoveryConfig interface and onlyTraversePaths option for selective file traversal
src/project/plugins/plugin-registry.ts Registers new vignette and test file plugins and updates namespace plugin reference
src/project/plugins/flowr-analyzer-plugin-defaults.ts Adds vignette and test plugins to default plugin set
src/project/plugins/file-plugins/flowr-analyzer-vignette-file-plugin.ts New plugin for detecting and categorizing vignette files
src/project/plugins/file-plugins/flowr-analyzer-test-file-plugin.ts New plugin for detecting and categorizing test files
src/project/plugins/file-plugins/flowr-analyzer-namespace-files-plugin.ts Renames class from FlowrAnalyzerNamespaceFilePlugin to FlowrAnalyzerNamespaceFilesPlugin
src/project/plugins/file-plugins/flowr-analyzer-file-plugin.ts Updates return type to support continuation flag for multi-plugin processing
src/project/plugins/file-plugins/files/flowr-rmarkdown-file.ts Updates constructor to merge existing roles with new Source role
src/project/plugins/file-plugins/files/flowr-news-file.ts Changes from file.role to file.roles
src/project/plugins/file-plugins/files/flowr-namespace-file.ts Changes from file.role to file.roles
src/project/plugins/file-plugins/files/flowr-jupyter-file.ts Updates constructor to merge existing roles with new Source role
src/project/plugins/file-plugins/files/flowr-description-file.ts Changes from file.role to file.roles
src/project/context/flowr-file.ts Core refactoring of role system from single to multiple roles with new assignRole implementation
src/project/context/flowr-analyzer-files-context.ts Updates file management to handle multiple roles per file and enhances reset logic

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

@EagleoutIce EagleoutIce merged commit 9bad1c1 into main Dec 31, 2025
19 checks passed
@EagleoutIce EagleoutIce deleted the 2107-vignette-support branch December 31, 2025 17:17
@EagleoutIce
Copy link
Member Author

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.

Vignette Support

2 participants