All notable changes to the "42 Header+" extension will be documented in this file.
The format is based on Keep a Changelog.
Note: This is an enhanced fork of the original 42 Header extension by kube.
- Activation Event Optimization: Changed from
*toonStartupFinished- Significantly improves VSCode startup performance
- No longer blocks VSCode startup
- Still maintains full functionality including auto-update on save
- Follows VSCode best practices for extension activation
- Dependency Update: Updated moment.js from 2.17.1 to 2.30.1
- Fixed RegExp Denial of Service vulnerability (GHSA-446m-mv8f-q348)
- Fixed Path Traversal vulnerability (GHSA-8hfj-j24r-96c4)
- Display Name Update: Changed to "42 Header Plus (Enhanced)" to comply with VSCode Marketplace naming requirements
- Header Template Alignment: Improved whitespace alignment in header template for better visual consistency
- Adjusted spacing between filename/author fields and alignment markers
- Refined created/updated timestamp field alignment
- Fixed marketplace publishing conflicts with original extension
- Automated Publishing: GitHub Actions workflow for VSCode Marketplace deployment
- Automatic publishing on version tags
- Automated .vsix package creation
- GitHub releases integration
- Enhanced package.json with marketplace metadata
- Added keywords for better discoverability
- Added gallery banner configuration
- Improved description and categorization
- Version consistency across repository
- Documentation updates for marketplace preparation
- Project Renamed: "42header" → "42 Header Plus" (package:
42header-plus)- New repository: https://github.com/MarioLJFerreira/vscode-42header-plus
- New publisher: MarioLJFerreira
- Extension ID:
MarioLJFerreira.42header-plus - Enhanced branding to reflect additional features
- Updated all documentation and URLs
- Note: Version scheme remains 0.42.x to maintain consistency with original project
- Comprehensive Test Suite: Added unit and integration tests with Mocha and Chai
- Unit tests for header generation, parsing, and rendering
- Integration tests for extension commands and configuration
- Test coverage for all major functionality
- CI/CD Pipeline: GitHub Actions workflow for automated testing
- Multi-platform testing (Linux, Windows, macOS)
- Node.js 18.x and 20.x compatibility testing
- Automated linting and security audits
- Contribution Guidelines: Added CONTRIBUTING.md with development guidelines
- Issue Templates: GitHub issue templates for bugs and feature requests
- Pull Request Template: Structured PR template for better collaboration
- Updated TypeScript configuration for better compatibility
- Improved .gitignore with test and coverage directories
- Enhanced README with development and testing documentation
- Campus Selection: New configuration option to select your 42 campus from a dropdown list of 35+ campuses worldwide
- Automatically generates student email based on selected campus (e.g.,
username@student.42lisboa.com) - Supports all major 42 campuses including Portugal (Lisboa, Porto), France, Spain, Germany, Italy, Netherlands, and more
- Email configuration can still override the automatic campus-based email
- Automatically generates student email based on selected campus (e.g.,
- Change Keybinding Command: New command "42 Header: Change Keybinding" that opens the keyboard shortcuts editor
- Makes it easy for users to customize the header insertion shortcut
- Accessible via Command Palette (F1)
- Email configuration description updated to clarify it overrides campus-based email
- Improved email generation logic with campus support
- Updated repository URLs to point to fork
- Added fork attribution in README and LICENSE
- Insert 42 header in files
- Automatic header update on save
- Configurable username and email
- Support for multiple programming languages