Releases: DevExpGbb/gh-devlake
Releases · DevExpGbb/gh-devlake
v0.3.7
What's Changed
- fix: v0.3.7 quick wins (9 issues) by @ewega in #49
- refactor: separate scope/project commands, eliminate shared globals by @ewega in #50
- fix: handle nested scope objects in ListScopes API response by @ewega in #51
- refactor: make init wizard purely interactive, fix orchestrator UX by @ewega in #52
- Release 0.3.7: supported plugins + env cleanup by @ewega in #53
Full Changelog: v0.3.6...v0.3.7
v0.3.6
What's Changed
Per-plugin token resolution (#15, PR #28)
- \ oken.Resolve\ now accepts a \plugin\ parameter and resolves plugin-specific environment variables (\GITLAB_TOKEN, \AZURE_DEVOPS_PAT, etc.)
- Added \pluginEnvFileKeys(), \pluginEnvVarKeys(), \pluginDisplayName()\ helpers for per-plugin resolution
- \EnvVarNames/\EnvFileKeys\ informational fields added to \ConnectionDef\
- 14 new unit tests in
esolve_test.go\ covering flag priority, per-plugin env vars, cross-plugin isolation
Display required PAT scopes proactively (#17, PR #29)
- Prints required PAT scopes before connection creation so users know what's needed upfront
- Shows scope hint on test failure (\Ensure your PAT has these scopes: ...)
- Added \scopeHintSuffix()\ helper and enriched error messages in \�uildAndCreateConnection\
Full Changelog: v0.3.5...v0.3.6
v0.3.5 — Connection Lifecycle
Connection Lifecycle
Complete CRUD for plugin connections:
- *\configure connection delete* (#9 / PR #25) — Delete connections with confirmation prompt, state file cleanup
- *\configure connection test* (#10 / PR #26) — Test saved connections by ID, interactive or flag-based
- *\configure connection update* (#11 / PR #27) — In-place PATCH for token rotation, org/enterprise changes; post-update test; state file sync
All three commands support both interactive and --plugin/--id\ flag modes.
v0.3.4 — CLI Restructure
What's Changed
Command Renames (#5)
configure connections→configure connectionconfigure scopes→configure scopeconfigure projects→configure project- Old plural names kept as hidden aliases for backward compatibility
--plugin Flag (#6)
- New
--pluginflag onconfigure scope,configure project, andconfigure full - Replaces
--skip-copilot/--skip-github(deprecated, hidden) - Flag mode requires
--plugin; interactive mode prompts for selection
Connection List (#7)
- New
configure connection listsubcommand - Lists all connections across plugins with table output
- Optional
--pluginfilter
CLI Versioning (#8)
gh devlake --versionnow works- Version injected at build time via ldflags
- Dev builds show
dev
Full Changelog: v0.3.3...v0.3.4
v0.3.3 — Enterprise Support
What's New
- Enterprise slug support — --enterprise\ flag on \configure scopes\ and \configure projects\
- Copilot scope ID fix — enterprise+org → \�nterprise/org, enterprise-only → \�nterprise, org-only → \org\
- Connection testing — \gh-copilot\ connections now support \Test Connection\ via API
- Rate limit alignment — Copilot connections use 5000 req/hr (GitHub stays at 4500)
- Unit tests — 15 new tests for scope ID computation and connection request building
Issues Closed
v0.3.2
v0.3.1
v0.3.0
v0.2.3
Fixes
- Targeted ACR pre-deploy: Replaced full Bicep pre-deploy with targeted \�z acr create\ — eliminates the misleading 'Bicep pre-deploy for ACR failed' warning
- Auto-purge soft-deleted Key Vaults: Detects and purges soft-deleted Key Vaults before deployment, preventing \ConflictError\ on re-deploy
- Cleanup purges Key Vault: \cleanup --keep-resource-group\ now also purges the Key Vault from soft-deleted state
New helpers
- \�zure.CreateACR()\ — idempotent ACR creation
- \�zure.CheckSoftDeletedKeyVault()\ — queries soft-deleted vault state
- \�zure.PurgeKeyVault()\ — permanently removes a soft-deleted vault
v0.2.2 - Prompt fixes & Azure error reporting
What's New
- Fixed init wizard prompt handling: \SelectWithOther\ now accepts freeform text input (e.g. typing \southafricanorth\ directly at the region prompt works), matches text against menu items case-insensitively, and retries up to 3 times on invalid input instead of silently returning empty
- Suppressed misleading output during wizard: \deploy local\ and \deploy azure\ no longer print 'Next Steps' instructions when called from \init\ (quiet mode flags)
- Empty selection guard: Init wizard no longer falls through to the custom-image path when no image choice is selected
- Better Bicep error messages: \DeployBicep\ now captures stderr from Azure CLI, showing the actual deployment error (e.g. \ProvisionNotSupportedForRegion) instead of just \�xit status 1\
Smoke-tested
Full end-to-end Azure deployment verified in \westeurope\ region (official images, MySQL Flexible Server, 3 Container Instances, health check, migration trigger).
Binaries
| Platform | File |
|---|---|
| Windows (amd64) | gh-devlake-windows-amd64.exe |
| Linux (amd64) | gh-devlake-linux-amd64 |
| macOS (amd64) | gh-devlake-darwin-amd64 |
| macOS (arm64) | gh-devlake-darwin-arm64 |