forked from Bash-it/bash-it
-
Notifications
You must be signed in to change notification settings - Fork 0
[pull] master from Bash-it:master #44
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Conversation
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
Addresses review feedback on PR #2318: - Rename function to _get-git-default-remote-name (dash naming convention) - Scope function to operate on BASH_IT directory, not CWD - Add command prefix to git commands for safety Original implementation by Edwin Kofler (@hyperupcall) Co-Authored-By: Edwin Kofler <edwin@kofler.dev> 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
Adds strategic planning documents to guide technical debt reduction and issue management for the bash-it project. **New Documentation** (`docs/plans/`): 1. **Quick Reference** - TL;DR summary with: - 5 quick win bugs ready to fix - 6 strategic decisions needed - 18 stale issues to close - Actionable next steps 2. **Comprehensive Issue Analysis** - Detailed breakdown: - Categorizes all 32 open issues - Identifies fixable bugs vs. decisions needed - Recommends closure strategy for stale issues - Provides effort estimates and recommendations 3. **2025 Roadmap** - 6-month technical debt reduction plan: - Phase 1: Quick wins (5 bugs, 1 week) - Phase 2: Issue gardening (close stale, 1 week) - Phase 3: Strategic decisions (1 month) - Phase 4-7: Pre-commit expansion, docs, testing, packaging - Success metrics and KPIs - Risk management and resource requirements **Key Findings**: - 78% of issues are stale (>2 years old) - 5 bugs can be fixed in ~4 hours - Closing stale issues would reduce count from 32 → ~10 - Pre-commit cleanup can reach 80% coverage in 3 months **CLAUDE.md Updates**: - Added "Project Planning & Roadmaps" section - Links to all three planning documents - Makes strategic direction visible to AI assistants These documents provide clear direction for maintainers and contributors on priorities, technical debt, and project health improvements. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
Addresses @akinomyoga's review feedback on PR #2344: 1. **Replace pushd/popd with git --git-dir/--work-tree** - More direct approach without changing shell directory - Avoids side effects from directory changes - Cleaner code without need for popd cleanup 2. **Simplify awk command** - Changed from: `awk 'NR==1 { name=$1; print name } $1 != name { exit 1 }'` - Changed to: `awk 'NR==1 { print $1 }'` - Use bash parameter expansion `${remote_name:-origin}` for fallback - Simpler, more readable, same behavior **Testing:** - ✅ Function correctly returns 'fork' for current repo - ✅ Function correctly returns 'me' for test repo with non-standard remote - ✅ Shellcheck passes with no warnings Co-authored-by: akinomyoga <akinomyoga@users.noreply.github.com> 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
The down4me function was failing when users passed URLs with protocols (http:// or https://) because it would create malformed URLs like: http://downforeveryoneorjustme.com/http://example.com **Changes:** - Strip http:// and https:// protocols from input URLs - Strip trailing slashes - Use `command` prefix to bypass user aliases for curl/sed - Add example for both URL and domain formats **Testing:** - Passes shellcheck with no warnings - Passes shfmt formatting checks - Works with both `down4me http://google.com` and `down4me google.com` Closes #2296 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
The uninstall script was blindly restoring from an old backup file created during initial installation, potentially overwriting months or years of user changes made after installing bash-it. **Problem:** Users who ran uninstall.sh would lose all changes made to their bashrc since the initial bash-it installation, with no way to recover them. **Solution:** Before restoring the old backup, create a new backup of the current config at ~/.bashrc.pre-uninstall.bak (or ~/.bash_profile.pre-uninstall.bak). **Benefits:** - Users' current configurations are preserved - Users can review and merge changes if needed - Clear messaging about where to find the backup - Backwards compatible with existing behavior **Testing:** - Passes shellcheck with no warnings - Passes shfmt formatting checks Closes #2238 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
Updated all three planning documents to reflect the completed work: **Issues Fixed (6 total)**: - #2317: Auto-detect git remote (PR #2345) - #2248: Laravel artisan completion (PR #2349) - #2296: down4me URL malformation (PR #2350) - #2260: SSH completion @ sign (PR #2351) - #2238: Uninstall script backup (PR #2352) - #2216: Node version conditional display (PR #2353) **Changes to docs/plans/**: 1. bash-it-issues-comprehensive-analysis.md - Marked 5 quick wins as FIXED with PR numbers - Updated executive summary: 32 → 27 open issues - Updated work plan to show Phase 1 completed - Updated issue reference appendix 2. bash-it-quick-reference.md - Moved completed issues to "Fixed" section - Updated TL;DR metrics - Removed completed items from decision list - Updated metrics table with current progress 3. bash-it-roadmap-2025.md - Updated health metrics (32 → 27 issues) - Marked Phase 1 as COMPLETED - Listed all 6 PRs with dates - Updated success criteria checkmarks **Remaining Work**: - 1 quick fix (#2314 - todo alias rename) - 18 stale issues to close - 4 strategic decisions needed 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
Use -L flag with cp to dereference symlinks when backing up current config. This ensures users with homesick or other symlink-based dotfile managers get the actual file content backed up, not just another symlink. Without this fix: - User has ~/.bashrc -> ~/dotfiles/bashrc (symlink) - Uninstall creates ~/.bashrc.pre-uninstall.bak -> ~/dotfiles/bashrc (symlink) - If user later removes dotfiles repo, backup becomes dangling symlink With this fix: - User has ~/.bashrc -> ~/dotfiles/bashrc (symlink) - Uninstall creates ~/.bashrc.pre-uninstall.bak (regular file with content) - Backup is always accessible regardless of symlink target state 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
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.
See Commits and Changes for more details.
Created by
pull[bot] (v2.0.0-alpha.4)
Can you help keep this open source service alive? 💖 Please sponsor : )