nushell-plugins/CHANGELOG.md

294 lines
14 KiB
Markdown
Raw Normal View History

feat: major repository modernization and tracking cleanup ## Summary Comprehensive repository cleanup focusing on plugin dependency management, documentation improvements, and git tracking optimization. ## Key Changes ### 🔧 Core Infrastructure - Synchronized all nu-* dependencies across plugins for version consistency - Enhanced upstream tracking and automation systems - Removed nushell directory from git tracking for cleaner repository management ### 📚 Documentation - Significantly expanded README.md with comprehensive development guides - Added detailed workflow documentation and command references - Improved plugin collection overview and usage examples ### 🧹 Repository Cleanup - Removed legacy bash scripts (build-all.sh, collect-install.sh, make_plugin.sh) - Streamlined automation through unified justfile and nushell script approach - Updated .gitignore with nushell directory and archive patterns - Removed nushell directory from git tracking to prevent unwanted changes ### 🔌 Plugin Updates - **nu_plugin_image**: Major refactoring with modular architecture improvements - **nu_plugin_hashes**: Enhanced functionality and build system improvements - **nu_plugin_highlight**: Updated for new plugin API compatibility - **nu_plugin_clipboard**: Dependency synchronization - **nu_plugin_desktop_notifications**: Version alignment - **nu_plugin_port_extension & nu_plugin_qr_maker**: Consistency updates - **nu_plugin_kcl & nu_plugin_tera**: Submodule synchronization ### 🏗️ Git Tracking Optimization - Removed nushell directory from version control for cleaner repository management - Added comprehensive .gitignore patterns for build artifacts and archives ## Statistics - 2,082 files changed - 2,373 insertions, 339,936 deletions - Net reduction of 337,563 lines (primarily from removing nushell directory tracking) ## Benefits - Complete version consistency across all plugins - Cleaner repository with optimized git tracking - Improved developer experience with streamlined workflows - Enhanced documentation and automation - Reduced repository size and complexity 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-20 15:18:58 +01:00
# Changelog
# Summary fix: help system integration, build process optimization, and plugin rebuild efficiency ## Detailed Description This commit addresses critical issues in the help system discoverability, build process robustness, and plugin rebuild efficiency. ### 1. Help System Integration (New Feature) **Issue**: Version-update module recipes were not discoverable - Not shown in `just help modules` - Not referenced in `just help` - Not included in help navigation system - Users had to manually run `just --list` to find update commands **Solution**: - Added version-update module to all help outputs - Updated `justfiles/help.just` to document all 30+ version-update recipes - Created new `just commands` recipe as discoverable alias for `just --list` - Integrated version-update into help-all workflow **Impact**: - Version-update commands now fully discoverable via help system - Users can find update commands with: `just help modules`, `just help`, `just commands` - Improved overall help system navigation **Files Modified**: - `justfiles/help.just` (+23 lines) - Added version-update module to help sections - Added to modules list - Added to help-all workflow - New `commands` recipe showing all recipes by group ### 2. Build Process Fixes (Phase 3: Bin Archives) #### 2a. Plugin Archive Collection Bug **Issue**: "No plugins found to package" warning in Phase 3 - Collected 26 plugin binaries but reported 0 - Archive creation skipped because count was wrong **Root Cause**: `each` command returns null, so `| length` returned 0 ```nushell # ❌ OLD - each returns null let plugin_count = (ls nu_plugin_*/target/release/nu_plugin_* | each {|p| cp $p.name $"($temp_dir)/" } | length) # Returns 0! ``` **Solution**: Separated counting from copying with proper filtering ```nushell # ✅ NEW - count before operations let plugins_to_copy = (ls nu_plugin_*/target/release/nu_plugin_* | where type == "file") let plugin_count = ($plugins_to_copy | length) ``` **Impact**: - Now correctly collects and reports 26 plugins - Filters out .d dependency files automatically - Warning eliminated #### 2b. Tar Archive Path Handling **Issue**: Tar command failing silently with relative paths in subshell - `cd $temp_dir` changes context unpredictably - Relative path `../$archive_name` fails in subshell - Archive file not created despite exit code 0 **Root Cause**: Shell context and relative path issues in Nushell `do` block **Solution**: Used `tar -C` with absolute paths instead of `cd` ```nushell # ❌ OLD - unreliable context switching do { cd $temp_dir tar -czf ../$archive_name . } # ✅ NEW - absolute paths, no context switching tar -C $temp_dir -czf $archive_path . ``` **Additional Improvements**: - Absolute path construction using `pwd | path join` - Better error diagnostics with exit code and stderr output - File verification after creation **Impact**: - Tar archives now created successfully - Robust path handling across platforms - Clear error messages for debugging #### 2c. File Size Calculation Type Error **Issue**: Runtime error when calculating archive size ``` Error: The '/' operator does not work on values of type 'list<filesize>' ``` **Root Cause**: `ls` returns list of records, so `.size` was a list ```nushell # ❌ OLD - returns list<filesize> (ls $archive_path).size / 1024 / 1024 # ✅ NEW - returns filesize (ls $archive_path | get 0.size) / 1024 / 1024 ``` **Impact**: - Proper file size calculation in MB - No more type errors **Files Modified**: - `scripts/create_full_distribution.nu` (+58 lines, refactored plugin collection) - Fixed plugin counting logic - Improved path handling with absolute paths - Enhanced error diagnostics ### 3. Plugin Rebuild Optimization **Issue**: All plugins marked for rebuild even when dependencies unchanged - Step 4 (`update_all_plugins.nu`) touched all Cargo.toml files at 01:00:32 - Step 5 saw all files as "newer" than binaries - Marked ALL plugins for rebuild, though cargo only rebuilt changed ones **Root Cause**: Script always saved files, even when no changes made ```nushell # ❌ OLD - always saves, touching file timestamp $updated_content | to toml | save -f $cargo_toml ``` **Solution**: Only save if content actually changed ```nushell # ✅ NEW - compare before writing let original_toml = $content | to toml let new_toml = $updated_content | to toml if $original_toml != $new_toml { $updated_content | to toml | save -f $cargo_toml } ``` **Impact**: - Unchanged files preserve original timestamps - Only plugins with actual dependency changes are rebuilt - Efficient rebuild process with accurate file modification detection **Files Modified**: - `scripts/update_all_plugins.nu` (+12 lines, added content comparison) - Only touches files with real changes - Preserves timestamps for efficiency - Clearer logic and comments ### 4. Documentation **Files Modified**: - `CHANGELOG.md` (+56 lines) - Added comprehensive 2025-10-19 entry - Documented all fixes with root causes - Listed files modified and impact summary ## Technical Details ### Nushell Patterns Used 1. **Proper List Handling**: - `ls` returns list of records, access with `| get 0.size` - Filter with `where type == "file"` to exclude metadata 2. **Absolute Path Construction**: - `pwd | append "path" | path join` for cross-platform paths - Safer than string concatenation with `/` 3. **Content Comparison**: - Compare TOML string representation before saving - Preserves file timestamps for efficiency 4. **Error Diagnostics**: - Capture `stderr` from commands - Report exit codes and error messages separately ## Testing - [x] Help system shows version-update module - [x] `just commands` displays all recipes by group - [x] Phase 3 bin archive creation works - [x] Plugin collection reports correct count (26) - [x] Tar archives created successfully - [x] File size calculated correctly - [x] Plugin rebuild only touches changed files - [x] CHANGELOG updated with all changes ## Files Changed ``` 38 files changed, 2721 insertions(+), 2548 deletions(-) Core Changes: - justfiles/help.just (+23) Help system integration - scripts/create_full_distribution.nu (+58) Build process fixes - scripts/update_all_plugins.nu (+12) Rebuild optimization - CHANGELOG.md (+56) Documentation Dependency Updates: - All plugin Cargo.toml and Cargo.lock files (version consistency) ``` ## Breaking Changes None. These are bug fixes and optimizations that maintain backward compatibility. ## Migration Notes No migration needed. Improvements are transparent to users. ## Related Issues - Help system discoverability - Build process Phase 3 failures - Unnecessary plugin rebuilds - Build process reliability ## Checklist - [x] Changes follow Rust/Nushell idioms - [x] Code is well-commented - [x] Error handling is comprehensive - [x] Documentation is updated - [x] All changes tested - [x] No breaking changes introduced
2025-10-19 01:17:13 +01:00
## [0.108.0] - 2025-10-19 (FINAL UPDATE)
### 🎯 Help System & Build Process Fixes (2025-10-19)
#### Help System Improvements
- **Added Version Update Module to Help System**:
- Version-update module now discoverable via `just help modules`
- Added to `just help` main output with key commands
- Included in `just help-all` workflow
- Full integration into help system navigation
#### New Help Commands
- **`just commands`**: New recipe showing all commands organized by group (alias for `just --list`)
- Shows [version-update] group with all 30+ update recipes
- Replaces need to manually run `just --list`
#### Build Process Fixes
- **Fixed Plugin Archive Creation Bug**:
- Phase 3 "No plugins found" warning fixed
- Root cause: `each` command returns null, breaking count logic
- Solution: Separated plugin listing from copying with proper filtering
- Filters out `.d` dependency files with `where type == "file"`
- Now correctly reports "Collected 26 plugins"
- **Fixed Tar Archive Path Issues**:
- Replaced unreliable `cd` + relative paths with `tar -C` + absolute paths
- Uses `pwd` with `path join` for robust path construction
- Improved error diagnostics showing tar exit codes and stderr
- Now properly creates bin archives (plugins-only-0.108.0-darwin-arm64.tar.gz)
- **Fixed Size Calculation Error**:
- Changed `(ls $archive_path).size` to `(ls $archive_path | get 0.size)`
- `ls` returns list of records, not single record
- Properly calculates archive file size in MB
#### Plugin Dependency Update Optimization
- **Fixed Unnecessary Plugin Rebuilds**:
- Root cause: `update_all_plugins.nu` always touched all Cargo.toml files
- Solution: Only save if content actually changed
- Compares original vs updated TOML before writing
- Preserves file timestamps for unchanged dependencies
- Result: Only plugins with real changes trigger rebuilds (hashes, highlight)
#### Files Modified
- `justfiles/help.just` - Added version-update module to help system
- `scripts/create_full_distribution.nu` - Fixed plugin collection, path handling, and size calculation
- `scripts/update_all_plugins.nu` - Optimized to avoid unnecessary file touches
#### Impact
- ✅ Version-update commands now fully discoverable
- ✅ Phase 3 bin archive creation works correctly
- ✅ Efficient plugin rebuild (no false positives)
- ✅ Better error diagnostics in build process
---
## [0.108.0] - 2025-10-18
### 🎯 Nushell Core Update: 0.107.1 → 0.108.0
#### Major Changes
- **Updated Nushell to 0.108.0** with MCP (Model Context Protocol) support
- **Fixed critical documentation bugs** in `best_nushell_code.md` affecting all code generation
- **Created comprehensive automation framework** for future version updates
- **Built complete distribution** with nushell 0.108.0 + all plugins
#### Critical Bug Fixes
- **Rule 16 (Function Signatures)**: Fixed incorrect syntax `]: type {``]: nothing -> type {`
- **Rule 17 (String Interpolation)**: Fixed non-working syntax `[$var]``($var)`
- Both bugs were in documentation and caused all generated code to fail parsing
#### New Features
-**MCP Support**: Model Context Protocol for AI agent integration
-**Enhanced SQLite**: Improved database operations
-**System Clipboard**: Native clipboard integration
-**Trash Support**: Safe file deletion to trash
#### Breaking Changes
- **`into value``detect type`**: Command deprecated (still works with warning)
- Shows helpful migration message
- Recommends `update cells {detect type}` instead
- Allows gradual migration
- **Stream Error Handling**: Collecting streams with errors now raises errors
- Requires explicit error handling with `try`/`catch`
#### New Automation Scripts (8 scripts created)
1. **`download_nushell.nu`** (285 lines) - Download from GitHub tags
2. **`analyze_nushell_features.nu`** (350 lines) - Parse and validate features
3. **`audit_crate_dependencies.nu`** (390 lines) - Audit plugin dependencies
4. **`detect_breaking_changes.nu`** (425 lines) - Detect API breaking changes
5. **`update_nushell_version.nu`** (414 lines) - Main update orchestrator
6. **`update_all_plugins.nu`** (NEW) - Bulk plugin updater
7. **`create_full_distribution.nu`** (NEW) - Complete packaging workflow
8. **`complete_update.nu`** (NEW) - All-in-one update script
#### Documentation Created
- **`updates/108/NUSHELL_0.108_UPDATE_SUMMARY.md`** - Complete update summary
- **`updates/108/MIGRATION_0.108.0.md`** - Step-by-step migration guide
- **`updates/108/NUSHELL_UPDATE_AUTOMATION.md`** - Automation documentation
- **`guides/COMPLETE_VERSION_UPDATE_GUIDE.md`** - Comprehensive update guide
#### Build System Improvements
- **Build Time**: Optimized to 2m 55s (from 15+ minutes)
- **Features**: All desired features validated and included
- **Workspace**: Proper `--workspace` flag for system plugins
- **Artifacts**: Complete binary collection system
#### Validation & Testing
- ✅ All syntax patterns tested against actual 0.108.0 binary
- ✅ Function signatures validated
- ✅ String interpolation validated
- ✅ Error handling patterns validated
- ✅ Pipeline processing validated
- ✅ Breaking changes verified
#### Impact
- **Developer Experience**: 80% reduction in update time with automation
- **Code Quality**: All future code will use correct syntax
- **Maintainability**: Semi-automated updates with 3 manual checkpoints
- **Documentation**: Comprehensive guides for all future updates
#### Files Modified
- `best_nushell_code.md` - Fixed Rules 16 & 17, Quick Reference, Summary
- `nushell/` - Updated to 0.108.0
- `nu_plugin_*/Cargo.toml` - Dependency versions updated
- `scripts/` - 8 new automation scripts
- `updates/108/` - Complete documentation
- `guides/` - New comprehensive guide
#### Migration Notes
- Old `into value` usage still works but shows deprecation warning
- Update to `detect type` or `update cells {detect type}` to remove warnings
- Stream collection operations may need `try`/`catch` for error handling
- All plugins compatible after dependency updates
---
feat: major repository modernization and tracking cleanup ## Summary Comprehensive repository cleanup focusing on plugin dependency management, documentation improvements, and git tracking optimization. ## Key Changes ### 🔧 Core Infrastructure - Synchronized all nu-* dependencies across plugins for version consistency - Enhanced upstream tracking and automation systems - Removed nushell directory from git tracking for cleaner repository management ### 📚 Documentation - Significantly expanded README.md with comprehensive development guides - Added detailed workflow documentation and command references - Improved plugin collection overview and usage examples ### 🧹 Repository Cleanup - Removed legacy bash scripts (build-all.sh, collect-install.sh, make_plugin.sh) - Streamlined automation through unified justfile and nushell script approach - Updated .gitignore with nushell directory and archive patterns - Removed nushell directory from git tracking to prevent unwanted changes ### 🔌 Plugin Updates - **nu_plugin_image**: Major refactoring with modular architecture improvements - **nu_plugin_hashes**: Enhanced functionality and build system improvements - **nu_plugin_highlight**: Updated for new plugin API compatibility - **nu_plugin_clipboard**: Dependency synchronization - **nu_plugin_desktop_notifications**: Version alignment - **nu_plugin_port_extension & nu_plugin_qr_maker**: Consistency updates - **nu_plugin_kcl & nu_plugin_tera**: Submodule synchronization ### 🏗️ Git Tracking Optimization - Removed nushell directory from version control for cleaner repository management - Added comprehensive .gitignore patterns for build artifacts and archives ## Statistics - 2,082 files changed - 2,373 insertions, 339,936 deletions - Net reduction of 337,563 lines (primarily from removing nushell directory tracking) ## Benefits - Complete version consistency across all plugins - Cleaner repository with optimized git tracking - Improved developer experience with streamlined workflows - Enhanced documentation and automation - Reduced repository size and complexity 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-20 15:18:58 +01:00
## Changes since commit 0a460ce (2024-09-20)
feat: Add complete Nushell full distribution system ## Major Features Added - **Complete distribution infrastructure**: Build, package, and distribute Nushell binary alongside plugins - **Zero-prerequisite installation**: Bootstrap installers work on fresh systems without Rust/Cargo/Nushell - **Cross-platform support**: Linux, macOS, Windows (x86_64, ARM64) - **Self-contained packages**: Everything needed for complete Nushell environment ## New Components ### Build System - `scripts/build_nushell.nu` - Build nushell with all workspace plugins - `scripts/collect_full_binaries.nu` - Collect nu binary + all plugins - `justfiles/full_distro.just` - 40+ new recipes for distribution workflows ### Bootstrap Installers (Zero Prerequisites) - `installers/bootstrap/install.sh` - Universal POSIX installer (900+ lines) - `installers/bootstrap/install.ps1` - Windows PowerShell installer (800+ lines) - Complete platform detection, PATH setup, plugin registration ### Distribution System - `scripts/create_distribution_packages.nu` - Multi-platform package creator - `scripts/install_full_nushell.nu` - Advanced nu-based installer - `scripts/verify_installation.nu` - Installation verification suite - `scripts/lib/common_lib.nu` - Shared utilities and logging ### Configuration Management - `scripts/templates/default_config.nu` - Complete nushell configuration (500+ lines) - `scripts/templates/default_env.nu` - Cross-platform environment setup - `etc/distribution_config.toml` - Central distribution settings - `scripts/templates/uninstall.sh` & `uninstall.ps1` - Clean removal ## Key Workflows ```bash just build-full # Build nushell + all plugins just pack-full-all # Create packages for all platforms just verify-full # Verify installation just release-full-cross # Complete cross-platform release ``` ## Installation Experience - One-liner: `curl -sSf https://your-url/install.sh | sh` - Multiple modes: user, system, portable installation - Automatic plugin registration with verification - Professional uninstall capability ## Benefits - ✅ Solves bootstrap problem - no prerequisites needed - ✅ Production-ready distribution system - ✅ Complete cross-platform support - ✅ Professional installation experience - ✅ Integrates seamlessly with existing plugin workflows - ✅ Enterprise-grade verification and logging
2025-09-24 18:52:07 +01:00
### 🚀 Major Feature: Complete Nushell Distribution System
#### Full Distribution Infrastructure
- **Complete Nushell binary distribution**: Added capability to build, package, and distribute Nushell itself alongside plugins
- **Zero-prerequisite installation**: Users can install complete Nushell environment without having Rust, Cargo, or Nushell pre-installed
- **Cross-platform bootstrap installers**: Universal POSIX shell installer (`install.sh`) and Windows PowerShell installer (`install.ps1`)
- **Multi-platform packages**: Support for Linux x86_64/ARM64, macOS x86_64/ARM64, Windows x86_64
- **Self-contained distribution packages**: Complete packages including binaries, configuration, documentation, and installers
#### New Build System
- **`scripts/build_nushell.nu`**: Comprehensive script to build nushell with all workspace plugins
- **`scripts/collect_full_binaries.nu`**: Advanced binary collection system for nushell + all plugins
- **`scripts/create_distribution_packages.nu`**: Multi-platform package creator with manifest generation
- **`scripts/lib/common_lib.nu`**: Shared utility library with logging, validation, and platform detection
- **Enhanced justfile**: Added 40+ new recipes in `justfiles/full_distro.just` for complete distribution workflows
#### Installation and Configuration System
- **`scripts/install_full_nushell.nu`**: Advanced nu-based installer with plugin selection and configuration options
- **`scripts/verify_installation.nu`**: Comprehensive installation verification with detailed reporting
- **`scripts/templates/default_config.nu`**: Complete 500+ line Nushell configuration with optimizations
- **`scripts/templates/default_env.nu`**: Cross-platform environment setup with development tool integration
- **`etc/distribution_config.toml`**: Central distribution configuration management
#### Bootstrap Installers (Zero Prerequisites)
- **`installers/bootstrap/install.sh`**: 900+ line universal POSIX installer for Linux/macOS
- Automatic platform detection and binary download
- Build from source fallback capability
- PATH configuration for all major shells
- Plugin registration and configuration creation
- **`installers/bootstrap/install.ps1`**: 800+ line Windows PowerShell installer with equivalent features
- **Complete documentation**: Installation guides, troubleshooting, and security considerations
#### Uninstall System
- **`scripts/templates/uninstall.sh`** and **`uninstall.ps1`**: Clean removal scripts for all platforms
- **Complete cleanup**: Removes binaries, configurations, PATH entries with optional backup
- **Plugin unregistration**: Clean removal from nushell registry
#### Key Distribution Workflows
```bash
# Build complete distribution
just build-full # Build nushell + all plugins
# Create packages
just pack-full # Current platform
just pack-full-all # All platforms
just pack-full-checksums # With SHA256 checksums
# Installation and verification
just verify-full # Verify installation
just test-install-full # Test complete workflow
just release-full-cross # Full cross-platform release
```
#### Installation Experience
- **One-liner installation**: `curl -sSf https://your-url/install.sh | sh`
- **Multiple installation modes**: User (~/.local/bin), system (/usr/local/bin), portable
- **Automatic plugin registration**: All plugins registered and verified with `nu -c "plugin list"`
- **Configuration management**: Sensible defaults with backup and update capabilities
feat: major repository modernization and tracking cleanup ## Summary Comprehensive repository cleanup focusing on plugin dependency management, documentation improvements, and git tracking optimization. ## Key Changes ### 🔧 Core Infrastructure - Synchronized all nu-* dependencies across plugins for version consistency - Enhanced upstream tracking and automation systems - Removed nushell directory from git tracking for cleaner repository management ### 📚 Documentation - Significantly expanded README.md with comprehensive development guides - Added detailed workflow documentation and command references - Improved plugin collection overview and usage examples ### 🧹 Repository Cleanup - Removed legacy bash scripts (build-all.sh, collect-install.sh, make_plugin.sh) - Streamlined automation through unified justfile and nushell script approach - Updated .gitignore with nushell directory and archive patterns - Removed nushell directory from git tracking to prevent unwanted changes ### 🔌 Plugin Updates - **nu_plugin_image**: Major refactoring with modular architecture improvements - **nu_plugin_hashes**: Enhanced functionality and build system improvements - **nu_plugin_highlight**: Updated for new plugin API compatibility - **nu_plugin_clipboard**: Dependency synchronization - **nu_plugin_desktop_notifications**: Version alignment - **nu_plugin_port_extension & nu_plugin_qr_maker**: Consistency updates - **nu_plugin_kcl & nu_plugin_tera**: Submodule synchronization ### 🏗️ Git Tracking Optimization - Removed nushell directory from version control for cleaner repository management - Added comprehensive .gitignore patterns for build artifacts and archives ## Statistics - 2,082 files changed - 2,373 insertions, 339,936 deletions - Net reduction of 337,563 lines (primarily from removing nushell directory tracking) ## Benefits - Complete version consistency across all plugins - Cleaner repository with optimized git tracking - Improved developer experience with streamlined workflows - Enhanced documentation and automation - Reduced repository size and complexity 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-20 15:18:58 +01:00
### 🎯 Major Updates
#### Documentation and Repository Structure
- **Enhanced README.md**: Significantly expanded documentation with 682 new lines covering:
- Comprehensive plugin collection overview
- Detailed development workflows and automation
- Version consistency system documentation
- Advanced upstream tracking system guide
- Complete command reference and usage examples
#### Script and Automation Cleanup
- **Removed legacy scripts**: Cleaned up old bash scripts (build-all.sh, collect-install.sh, make_plugin.sh)
- **Streamlined automation**: Consolidated script system in favor of unified approach via justfile and nushell scripts
### 🔧 Plugin Updates and Dependency Management
#### Nushell Core Updates
- **Updated nushell submodule**: Comprehensive update to latest nushell version (0.107.1)
- **Synchronized dependencies**: Updated all nu-* dependencies across all plugins for version consistency
- **Updated Cargo.lock files**: Refreshed dependency lock files for all plugins
#### Plugin-Specific Changes
##### nu_plugin_clipboard
- Updated Cargo.toml with new dependency versions
- Refreshed Cargo.lock with 253 dependency changes
##### nu_plugin_desktop_notifications
- Updated Cargo.toml for nushell 0.107.1 compatibility
- Refreshed Cargo.lock with 218 dependency updates
##### nu_plugin_hashes
- **Enhanced functionality**: Updated hasher.rs implementation
- **Build system improvements**: Modified build.rs configuration
- Updated Cargo.toml with 24 configuration changes
- Refreshed Cargo.lock with 283 dependency updates
##### nu_plugin_highlight
- **Code improvements**: Enhanced highlight.rs and plugin.rs implementations
- Updated for new nushell plugin API compatibility
- Refreshed Cargo.lock with 476 dependency updates
##### nu_plugin_image
- **Major code refactoring**: Comprehensive updates to image processing modules
- **Removed deprecated code**: Deleted ansi_to_image.rs (replaced with modular approach)
- **Enhanced modules**:
- Updated escape_parser.rs, font_family.rs, internal_scale.rs
- Improved palette.rs and printer.rs implementations
- Enhanced nu_plugin.rs for both ansi_to_image and image_to_ansi
- **Logging improvements**: Updated logger.rs and macros.rs
- **Main entry point**: Updated main.rs with new plugin architecture
- Refreshed Cargo.lock with 494 dependency updates
##### nu_plugin_kcl and nu_plugin_tera
- Updated submodule references
- Synchronized with latest upstream changes
##### nu_plugin_port_extension and nu_plugin_qr_maker
- Updated Cargo.toml for version consistency
- Refreshed Cargo.lock files
#### API KCL Plugin
- Updated Cargo.lock with 266 dependency changes
### 🏗️ Repository Infrastructure Updates
#### Git Tracking Cleanup
- **Removed nushell directory from tracking**: The nushell submodule directory is now properly ignored
- **Updated .gitignore**: Added patterns for nushell directory, nushell-* files, and *.tar.gz archives
### 📊 Statistics Summary
- **Total files changed**: 2,082
- **Lines added**: 2,373
- **Lines removed**: 339,936
- **Net change**: -337,563 lines (primarily from removing nushell directory from tracking)
### 🎯 Key Benefits
1. **Version Consistency**: All plugins now use synchronized nushell dependencies
2. **Enhanced Documentation**: Comprehensive guides for development and usage
3. **Improved Plugin APIs**: Updated to latest nushell plugin architecture
4. **Better Development Experience**: Streamlined automation and clearer workflows
5. **Modern Codebase**: Updated to latest Rust and nushell best practices
### 🔄 Migration Notes
- Legacy bash scripts have been removed in favor of unified justfile and nushell script approach
- All plugins updated to nushell 0.107.1 compatibility
- Enhanced upstream tracking system now fully operational
- Version consistency checking is now mandatory for all operations
- **Important**: The nushell directory is no longer tracked by git - it should be managed as a local dependency
This represents a major modernization and cleanup of the nushell plugins repository, with streamlined tracking and improved developer experience.