v4.0.0-rc.0
Pre-release
Pre-release
Release Notes v4.0.0-rc.0
This release represents a complete architectural rewrite of the
action-reporting-cliwith significant enhancements and breaking changes.
📦 Changes
Complete Architectural Rewrite
- Complete codebase rewrite with a new modular architecture and organization
- Changed entry point from
index.jstocli.js - Modified module exports structure in
package.json - Organized codebase into logical directories:
src/github/: GitHub API interactionssrc/report/: Report generation logicsrc/util/: Utility functions
Enhanced Logging System
- Added Winston-based logging with multiple output levels
- Implemented spinners with Ora for better UX during long operations
- Added debug mode with file-based logging
- Improved warning log usage for better visibility
Improved Caching System
- Added dedicated cache management in
src/util/cache.js - Enhanced performance with persistent API response caching
New Features
- Added options to skip archived/forked repositories
- Improved report logic and generation
- Added messaging to display report and output options
- Enhanced CLI help text
Documentation
- Improved README clarity and usage instructions
- Added comprehensive contributing guidelines
- Enhanced inline code documentation
Testing Infrastructure
- Complete rewrite of tests with Jest framework
- Added mocks and fixtures for testing
- Implemented unit tests across all components
🐛 Bug Fixes
- No specific bug fixes were included in this release as it's a complete rewrite
🆙 Dependencies
- Updated Node.js requirement to >=20 and npm to >=10
- Added new dependencies:
ora(v8.2.0) for terminal spinners and progress indicatorswinston(v3.17.0) for advanced logging
- Updated Octokit packages to latest versions:
@octokit/coreto v7.0.2@octokit/plugin-paginate-restto v13.1.0@octokit/plugin-throttlingto v11.0.1
- Updated other dependencies:
gotto v14.4.7csvto v6.3.11meowto v13.2.0normalize-urlto v8.0.2
- Updated all development dependencies to latest versions
📊 File Statistics
- Added: 25 new JavaScript files
- Removed: 3 files (
index.js,utils/reporting.js,utils/wait.js) - Total Changes: 15,557 insertions, 2,551 deletions across 54 files
🔄 Migration Guide
Users upgrading from v3.x will need to:
-
Update Node.js to version 20 or later and npm to version 10 or later
-
Update imports/requires to use the new module structure:
// Old imports (v3) import Reporting from '@stoe/action-reporting-cli' // New imports (v4) import Report from '@stoe/action-reporting-cli' // or for specific components import {CSVReporter} from '@stoe/action-reporting-cli/report' import {Repository} from '@stoe/action-reporting-cli/github'
-
Review the updated CLI options and parameters
-
Update any code that directly uses the library's exports
See the documentation for detailed migration instructions.