Releases: vnykmshr/dotfiles
Release list
v4.0.0 - The Trim
Summary
Consolidation release that strips the repo down to reference-worthy quality.
- -2,610 lines removed across 40 files
- 12 files deleted (7 cli-tools configs, alias-reminder, environment-detection, personal-functions, 2 docs)
- 58 tests (up from 22) — added zsh syntax validation and functionality checks
- Zero known bugs — all injection vectors, broken aliases, and stale references fixed
Breaking Changes
qc(),acp(),workflowutil(),mkproject()functions removedalias test='run_tests'renamed tortalias-remindermodule deletedintelligent-historyrenamed tohistorygourceq/gourcev/gourcevidreplaced bybin/gource-vizscript
Highlights
- PATH unified to single
path=()array — predictable, no duplicates eval brew shellenvremoved (~100-200ms startup savings)- All
=====separators and marketing language stripped - 7 cli-tools configs merged into single init file
- Security
chpwdhook removed (explicitseccheckonly) - CI: added jq, shellcheck, zsh linting steps
touch -calias removed (was preventing file creation)urlencode/urldecode/calcinjection vectors fixed
Full Changelog
v3.7.0 - Organization and Quality Improvements
v3.7.0 - Organization and Quality Improvements
This release focuses on better organization, documentation quality, and comprehensive testing. No functionality removed, no breaking changes.
Key Improvements
Function Organization
Reorganized 40+ shell functions into 10 logical categories for better discoverability:
- File & Directory Operations
- Git Operations (including qc, acp quick shortcuts)
- Development & Processes
- System Information
- Docker Operations
- Kubernetes Operations
- Tmux Session Management
- Text & Data Processing
- Visualization & Utilities
- Dotfiles & Workflow Management
All function names preserved (no renames).
Workflow Streamlining
- Removed unused workflow tools: dev-server, test-runner, project-init (653 lines)
- Simplified git-helpers (removed emoji from commit suggestions)
- Made workflow opt-in via DOTFILES_SKIP_WORKFLOW=1
Documentation
- Consolidated and improved README (330 → 281 lines, 15% reduction)
- Simplified COMMAND_EXAMPLES.md (387 → 63 lines)
- Removed AI-tone, improved human readability
- Updated accuracy (module counts, line counts, test counts)
- Merged scattered docs into single comprehensive README
Testing
- Added comprehensive critical path test suite
- 22 tests total (9 basic + 13 critical path)
- Tests cover: OS detection, template processing, symlinks, backup/restore, cross-platform
- All tests passing ✅
What Changed
Added
- Comprehensive behavioral test suite for core functionality
- Personal workflow functions: qc, acp, status, workflowutil, mkproject
- 10 logical function categories for better organization
Changed
- Reorganized functions file (all preserved, better organized)
- Consolidated personal-functions into main functions (now minimal placeholder)
- Documentation: consolidated, simplified, improved tone
- Workflow automation: 1156 → 503 lines (opt-in)
- Tests: 29 → 22 (removed redundant/system tests)
Removed
- Unused workflow tools: dev-server (125 lines), test-runner (123 lines), project-init (159 lines)
- Documentation files: CONTRIBUTING.md, docs/README.md, docs/customization-guide.md
- Redundant tests (7): meta tests, duplicates, system capability tests
Statistics
- Workflow: 653 lines removed
- Documentation: ~100 lines removed, improved clarity
- Functions: 462 lines reorganized (none removed)
- Tests: 22 comprehensive tests (all passing)
- Pre-commit hooks: 25 validation checks
Compatibility
- No breaking changes: All functions preserved
- No renames: Function names unchanged (kept short/abbreviated forms)
- Cross-platform: macOS, Linux, WSL
- Shell: Zsh with 0.158s startup time
Upgrade Notes
This is a drop-in upgrade with no breaking changes:
cd ~/.dotfiles
git pull
git checkout v3.7.0
make installAll existing configurations and customizations will work as-is.
Full Changelog
See CHANGELOG.md for complete details.
Commits Since v3.6.0
- Workflow cleanup and streamlining
- Documentation consolidation
- Comprehensive testing implementation
- Function reorganization
- Documentation improvements
- Test suite optimization
- Version bump to 3.7.0
Full Diff: v3.6.0...v3.7.0
v3.6.0
New Features
User Commands
make restore- Interactive backup restoration- Lists available backups with timestamps
- Supports numbered selection or direct path input
make uninstall- Clean dotfiles removal- Safely removes symlinks
- Preserves backups for recovery
Infrastructure & Automation
- Dependabot configuration for automated dependency updates
- Weekly updates for GitHub Actions
- Weekly updates for pre-commit hooks
- Gitleaks security scanning in CI workflow
- Scans all commits for accidentally committed secrets
- Generates SARIF artifacts for GitHub Security
Documentation
- CONTRIBUTING.md with development guidelines
- Clear contribution process
- Code quality standards
- Testing requirements
- docs/troubleshooting.md for common issues
- Installation problems and solutions
- Shell performance debugging
- Platform-specific guidance
- Recovery procedures
- Repository badges added to README
- CI status badge
- Version badge
Maintenance
- Updated VERSION file from 3.3.0 to 3.5.0 (sync with releases)
Full Changelog: v3.5.0...v3.6.0
v3.5.0
What's New
Features
- User-owned TMPDIR management - Comprehensive TMPDIR management system that resolves permission errors with Claude Code and Flutter test commands
- Auto-creates
~/tmpdirectory with secure permissions (700) - Automatic cleanup of files older than 7 days
- Management commands:
tmpdir-status,tmpdir-disable,tmpdir-enable,tmpdir-clean - Optional disable with
DOTFILES_SKIP_TMPDIR=1 - Reduces Time Machine backup overhead on macOS
- Auto-creates
Bug Fixes
- Fix touch command path in cleanup_tmpdir for reliable execution during shell initialization
- Use
$HOMEinstead of~in home paths for better path resolution - Resolve shell reload command lookup errors
- Fix packages target in Makefile
- Remove
find=fdalias to prevent tooling conflicts - Reduce restrictive patterns in global gitignore
Enhancements
- Add gource visualization aliases and install gource, sox, ffmpeg packages
- Rename
gstattogsl(git status list) - Add
gstatalias for git status
Maintenance
- Major refactoring pass: removed 291 lines of unused code and duplicates
- Clean up redundant comments and notes
- Remove marketing language, use factual descriptions in documentation
- Code formatting improvements
Installation
curl -fsSL https://raw.githubusercontent.com/vnykmshr/dotfiles/v3.5.0/install.sh | bashFull Changelog: v3.4.0...v3.5.0
v3.4.0 - Shell Compatibility & Quality Improvements
Added
- Enhanced alias reminder system with global scope and improved randomization
- Cross-platform utility aliases (conncount, memfree, duckload, findbig)
- Environment variable control for workflow completions
Fixed
- Alias reminder math expression errors and array scoping issues
- Completion system warnings caused by conflicting workflow definitions
- findbig command execution error with fd/find conflicts
- Shell compatibility issues with associative arrays and parsing
Changed
- Improved shell script quality and zsh compatibility
- Disabled problematic workflow completions by default (opt-in with DOTFILES_ENABLE_WORKFLOW_COMPLETIONS)
- Enhanced error handling and documentation
- Cleaned up documentation and removed AI-generated bloat
Technical Improvements
- Fixed global associative array declarations for proper zsh scoping
- Resolved completion system conflicts with alias expansions
- Enhanced cross-platform compatibility for system utilities
- Improved shell environment stability and reliability
v3.3.0 - Development Automation Complete
Release v3.3.0 - Development Automation Complete
Overview
Major release completing the development automation suite with comprehensive code refactoring and quality improvements. This release represents a 66% code reduction while adding significant new functionality.
New Features
Universal Development Commands
dev- Universal development server command for any project typetest- Universal test runner command for any project typetestwatch- Continuous testing with file watching (requires entr)
Smart Project Detection
- Go projects:
go.moddetection, runsgo run .orgo test ./... - Node.js projects:
package.jsonscript detection (dev/start/test) - Python projects: Django, pytest, unittest support
- Rust projects:
Cargo.tomldetection withcargo run/test - Makefile projects: target detection (dev/serve/start/test)
Enhanced Environment Detection
- Auto-activation: .nvmrc and .python-version files with mise integration
- .env loading: Automatic environment variable loading on directory change
- Project automation: Auto-load development tools in supported projects
Code Quality Improvements
Major Refactoring
- 125 lines removed (66% code reduction) from automation modules
- Eliminated AI bloat: Removed duplicate detection logic and verbose implementations
- Consolidated architecture: Single 63-line dev-automation module replaces 183 lines
- Improved maintainability: Clear separation of concerns, reusable patterns
Performance Optimization
- Shell startup: 0.087-0.148s (improved from previous 0.158s)
- Lazy loading: Development tools loaded only in relevant project directories
- Efficient detection: Optimized project type detection logic
Documentation Accuracy
- Fixed performance claims: Updated to reflect actual measurements
- Removed misleading features: Eliminated references to non-existent functions
- Accurate git alias count: Updated from "40+" to actual "45+"
- Current implementation: All examples work with actual codebase
Technical Architecture
config/zsh/
├── environment-detection # Auto-activation and .env loading
├── dev-automation # Universal dev/test commands (63 lines)
├── go-dev # Go-specific development tools
└── git-helpers # Smart git workflow automation
Compatibility
- Cross-platform: macOS, Linux, WSL support maintained
- Fallback handling: Graceful degradation when tools unavailable
- No breaking changes: All existing functionality preserved
Testing
- Comprehensive test suite: All 13 tests passing
- Real-world validation: Tested with Go, Node.js, and Python projects
- Environment detection: Verified .nvmrc and .env loading
- Performance validation: Startup time benchmarked
Migration Notes
No migration required. All existing configurations and commands continue to work unchanged. New universal commands complement rather than replace existing workflows.
Philosophy Applied
This release exemplifies the project philosophy:
- Real utility over feature count: Focus on daily development needs
- Practical over verbose: Clean implementations without unnecessary complexity
- Code quality: Eliminate redundancy, maximize maintainability
- Performance conscious: Fast startup, efficient detection
Next Steps
All core development automation is now complete. Future enhancements will focus on:
- Build/deploy automation (if requested)
- Project templates and scaffolding
- Additional language support based on user needs
Full Changelog: v3.2.0...v3.3.0
v3.2.0 - Enhanced Git Workflow & Performance
What's New
Added
- Enhanced git workflow with smart commit suggestions
- Branch management commands: gnew, gswitch, gclean
- 45+ git aliases and workflow helpers
- Performance monitoring with shell-bench
Fixed
- Remove shebangs from sourced config files
- Improve shell compatibility and loading
Changed
- Optimize shell startup performance
- Refactor git helpers for better usability
Full Changelog: v3.1.0...v3.2.0
v3.1.0 - macOS Automation & Quality
What's New
Added
- macOS defaults automation script with 41 system preferences
make toolscommand to show development tools status- Permission handling for macOS accessibility settings
Fixed
- macOS defaults permission error blocking installation
- Removed missing test-configs.sh hook from pre-commit
- Arithmetic expression failures in test scripts
Changed
- Enhanced Makefile with development tools overview
- Improved pre-commit system reliability
Full Changelog: v3.0.0...v3.1.0
v3.0.0 - Professional Grade Optimization
🎉 Major Release
Complete rewrite focusing on minimalism, maintainability, and real-world usage.
Added
- JSON-based template system with placeholder replacement
- Advanced OS detection and environment handling
- Full mise integration for tool management
- Automated testing framework with 20+ validation checks
- Smart alias reminder system
- Modern CLI tools integration (bat, eza, fd, ripgrep, zoxide)
- Comprehensive documentation
Changed
- 65% code reduction by eliminating verbose patterns
- Optimized shell startup time with lazy loading
- Unified coding style and naming conventions
Technical Highlights
- alias-reminder: 366 → 107 lines (70% reduction)
- personal-functions: 370 → 87 lines (76% reduction)
- lib/utils.sh: 143 → 32 lines (78% reduction)
- Makefile: 354 → 91 lines (74% reduction)
Full Changelog: v2.2.0...v3.0.0