Moar coverage, badges, test cleanup, proper polishing, updated unit tests, and much more.#7
Merged
Moar coverage, badges, test cleanup, proper polishing, updated unit tests, and much more.#7
Conversation
… Barrel Roll extension test: add test for ignoring undefined entries in BarrelContentBuilder test: implement test for recursive directory handling in BarrelFileGenerator test: add test for merging duplicate exports in ExportParser fix: update coverage badge to reflect accurate coverage percentage
- Added new images for barrel roll functionality: barrel-roll-icon.png, barrel-roll-logo.png, barrel-roll-repository-logo.png, barrel-roll-small-logo.png, and barrel-roll.png. - Updated test file patterns in run-tests.js to point to the new distribution directory structure. - Refactored barrel file generation options to use IBarrelGenerationOptions interface. - Simplified FileSystemService tests by removing jest.restoreAllMocks() in afterEach. - Updated export parser to use IParsedExport interface instead of ParsedExport. - Created new extension test suite to validate extension activation and command execution. - Refactored logging functionality to improve error handling and output. - Consolidated barrel-related types into a single barrel.ts file for better organization. - Removed deprecated barrel entry and export types to streamline the codebase. - Updated TypeScript configuration to reflect changes in output directory from out to dist. - Adjusted webpack configuration to output bundled files to the dist directory.
Contributor
There was a problem hiding this comment.
Pull request overview
This pull request standardizes the TypeScript build output directory from out/ to dist/, consolidates barrel-related types into a single file, adds comprehensive unit tests with coverage tooling (c8), and enhances project metadata and documentation with badges, icons, and GitHub templates.
Changes:
- Standardized build output directory from
out/todist/across all configuration files - Consolidated barrel types from multiple files into a single
src/types/barrel.tsfile and renamed interfaces to use "I" prefix convention - Added unit tests for utility functions and core services, achieving 95.14% code coverage
- Enhanced VS Code extension metadata with icon, improved description, submenu structure, and refined command titles
- Added GitHub issue templates, pull request template, and dependency-cruiser configuration
Reviewed changes
Copilot reviewed 36 out of 46 changed files in this pull request and generated 15 comments.
Show a summary per file
| File | Description |
|---|---|
| webpack.config.cjs | Updated output path from out to dist |
| tsconfig.json, tsconfig.test.json, tsconfig.test-suite.json | Updated output directories and exclusions to use dist instead of out; removed compiler options from test-suite config |
| src/types/barrel.ts | New consolidated file merging all barrel-related types and enums |
| src/types/barrel/*.ts | Deleted individual type files (consolidated into barrel.ts) |
| src/types/index.ts | Updated import path to reference consolidated barrel.ts |
| src/core/parser/export.parser.ts | Updated type references from ParsedExport to IParsedExport |
| src/core/barrel/barrel-file.generator.ts | Updated type references to use new interface names with "I" prefix |
| src/extension.ts | Updated type import to IBarrelGenerationOptions |
| src/utils/*.test.ts | Added/restructured unit tests for utility functions |
| src/logging/pino.logger.test.ts | New comprehensive test file for PinoLogger |
| src/extension.test.ts | New comprehensive test file for extension activation and commands |
| src/core/io/file-system.service.test.ts | Removed jest.restoreAllMocks() call |
| package.json | Updated main entry point, author format, activation events, command titles, added c8 dependency and coverage configuration, added extension scripts |
| README.md | Added logo and reorganized badges |
| ARCHITECTURE.md | Updated build output references |
| .gitignore, .npmignore, .prettierignore, .jscpd.json, .gitattributes, eslint.config.mjs | Updated to reference dist instead of out |
| .github/ISSUE_TEMPLATE/*.md | Added bug report and feature request templates |
| .github/PULL_REQUEST_TEMPLATE.md | Added pull request template |
| .dependency-cruiser.cjs | Added dependency cruiser configuration |
| scripts/run-tests.js | Updated test file patterns to use dist |
| badges/coverage.svg | Updated coverage badge from 94.8% to 95.14% |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
…dify install script to dynamically reference version
…el-roll.png with barrel-roll-icon.png
… and release workflows
…rt patterns; add depcheck CI
…add AGENTS.md for automation documentation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request introduces several improvements and refinements to the project, focusing on standardizing the build output directory, enhancing documentation and metadata, improving the GitHub workflow, and refactoring some internal types for better consistency. The most important changes are grouped below:
Build Output Directory Standardization:
out/todist/across configuration files, documentation, scripts, and ignore files. This includes.gitattributes,.jscpd.json,.npmignore,.prettierignore,ARCHITECTURE.md,eslint.config.mjs,package.json, and test scripts. This ensures consistency and clarity in how build artifacts are managed. [1] [2] [3] [4] [5] [6] [7] [8] [9]Documentation and Metadata Enhancements:
README.mdwith a project logo, improved badge layout, and reordered badges for better visibility.package.jsonto enhance discoverability in the VS Code marketplace.ARCHITECTURE.mdto reflect the new build output directory. [1] [2]GitHub Workflow Improvements:
VS Code Extension Manifest and Command Improvements:
Type Consistency and Refactoring:
ParsedExporttoIParsedExportand updated references in the parser and barrel file generator for improved clarity and consistency. [1] [2] [3] [4] [5] [6] [7] [8]These changes collectively improve the maintainability, usability, and professionalism of the project.