-
Notifications
You must be signed in to change notification settings - Fork 10
[Plugin] Vignette, Test-Info and general meta-file-plugin support #2142
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
There was a problem hiding this 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.VignetteandFileRole.Testenum values with corresponding plugin implementations - Refactors file role handling from singular
roleproperty to pluralrolesarray throughout the codebase - Enhances query outputs to display role counts and use the new
stringifyRLicenseutility 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.
src/project/plugins/file-plugins/flowr-analyzer-test-file-plugin.ts
Outdated
Show resolved
Hide resolved
src/project/plugins/file-plugins/flowr-analyzer-test-file-plugin.ts
Outdated
Show resolved
Hide resolved
src/project/plugins/file-plugins/flowr-analyzer-vignette-file-plugin.ts
Outdated
Show resolved
Hide resolved
src/project/plugins/file-plugins/flowr-analyzer-test-file-plugin.ts
Outdated
Show resolved
Hide resolved
src/project/plugins/file-plugins/flowr-analyzer-vignette-file-plugin.ts
Outdated
Show resolved
Hide resolved
|
This pull request is included in v2.8.0 (see Release v2.8.0 (Call-Graphs, Roxygen 2 Support, Many Plugins, Registrations, Exceptions and Hooks)). |
No description provided.