Conversation
Improved build organization by centralizing all binary outputs to a dedicated bin/ directory: Changes: - Updated build-all.ps1 to create and output all binaries to bin/ - Updated .gitignore to exclude bin/ directory - Updated BUILD.md documentation with new bin/ paths in all examples - Updated GitHub Actions workflow to build to bin/ and package from there - Added automatic bin/ directory creation in build script Benefits: - Cleaner project root directory - Consistent local and CI/CD build output location - Standard Go project structure - Easier to manage and clean build artifacts All 5 tools now build to: - bin/msgraphtool.exe - bin/smtptool.exe - bin/imaptool.exe - bin/pop3tool.exe - bin/jmaptool.exe Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Version update for build output organization improvements. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Pull Request Review: Release v2.6.10 - Organize build output to bin/ directoryOverall Assessment✅ APPROVED - This is a well-executed refactoring that improves build organization and follows Go community best practices. Code Quality and Best Practices✅ Strengths
📝 Minor Observations
Potential Bugs or Issues🔴 CRITICAL ISSUE: Inconsistent ZIP Archive Structure Between PlatformsLocation: .github/workflows/build.yml:136-142
The Windows Compress-Archive command uses paths like bin\msgraphtool.exe which will create a bin\ folder in the ZIP, while the Linux/macOS version does cd bin first, so binaries end up at root level. Recommendation: Update Windows ZIP creation to match Linux/macOS structure by cd into bin first, then use relative paths. ✅ No Other Bugs Found
Performance Considerations✅ No performance impact - changes are purely organizational Security Concerns✅ No security issues identified Test Coverage
Summary of Recommendations🔴 Critical (Fix Before Merge)
🟡 Important (Should Fix)
🟢 Nice-to-Have
ConclusionThis PR represents a positive improvement to project organization. The main concern is the platform-inconsistent ZIP archive structure which should be addressed before merging. Great work on maintaining consistent documentation updates across BUILD.md! |
Summary
This release improves build organization by centralizing all binary outputs to a dedicated
bin/subdirectory, following Go community best practices.Changes
Build Organization
build-all.ps1to automatically createbin/directory and output all executables therebin/to ignore list, keeping the repository cleanBUILD.mdwith newbin/paths in all examplesbin/and package from thereBenefits
bin/to remove all build artifactsBuild Output Location
All 5 tools now build to:
bin/msgraphtool.exebin/smtptool.exebin/imaptool.exebin/pop3tool.exebin/jmaptool.exeUsage
Files Changed
.github/workflows/build.yml- Updated CI/CD pipeline.gitignore- Added bin/ directoryBUILD.md- Updated documentation with bin/ pathsbuild-all.ps1- Updated to create and use bin/internal/common/version/version.go- Bumped to 2.6.10Testing
✅ All 5 tools built successfully to
bin/directory✅ Version verification passed (2.6.10)
✅ Build script output correct
Generated with Claude Code