registry: add github backend for djinni tool#7363
Conversation
There was a problem hiding this comment.
Pull request overview
This PR refactors the registry.toml file to add GitHub backends as the primary option for multiple tools (djinni, bosh-backup-and-restore, clusterawsadm, helm-diff, k3kcli, mdbook-linkcheck, and opsgenie-lamp), while maintaining UBI backends as fallback options. This change improves integration with GitHub's releases API and provides better version filtering through created_at timestamps.
Key Changes:
- Added GitHub backend entries for 7 tools with appropriate configuration parameters
- Maintained existing UBI and ASDF backends for backward compatibility
- All GitHub backends are positioned as the first/primary option in the backends array
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
registry.toml
Outdated
| [tools.bosh-backup-and-restore] | ||
| aliases = ["bbr"] | ||
| backends = [ | ||
| "github:cloudfoundry-incubator/bosh-backup-and-restore[bin=bosh-backup-and-restore,asset_pattern=bbr-*-{darwin_os}-{amd64_arch}]", |
There was a problem hiding this comment.
The bin parameter is set to 'bosh-backup-and-restore' while the tool's alias is 'bbr' and the UBI backend uses 'matching=bbr-1'. Consider using 'bin=bbr' for consistency with the tool alias and UBI configuration.
| "github:cloudfoundry-incubator/bosh-backup-and-restore[bin=bosh-backup-and-restore,asset_pattern=bbr-*-{darwin_os}-{amd64_arch}]", | |
| "github:cloudfoundry-incubator/bosh-backup-and-restore[bin=bbr,asset_pattern=bbr-*-{darwin_os}-{amd64_arch}]", |
registry.toml
Outdated
|
|
||
| [tools.clusterawsadm] | ||
| backends = [ | ||
| "github:kubernetes-sigs/cluster-api-provider-aws[bin=cluster-api-provider-aws,asset_pattern=clusterawsadm-{darwin_os}-{amd64_arch}]", |
There was a problem hiding this comment.
The bin parameter is set to 'cluster-api-provider-aws' but the tool is named 'clusterawsadm' and the asset pattern suggests the binary should be 'clusterawsadm'. Consider using 'bin=clusterawsadm' for consistency.
registry.toml
Outdated
|
|
||
| [tools.helm-diff] | ||
| backends = [ | ||
| "github:databus23/helm-diff[bin_path=bin,bin=helm-diff]", |
There was a problem hiding this comment.
The UBI backend uses 'rename_exe=helm-diff' to rename 'diff' to 'helm-diff', but the GitHub backend sets 'bin=helm-diff' directly. If the binary in the GitHub release is named 'diff', the bin parameter should be 'bin=diff' to match the UBI backend's approach.
| "github:databus23/helm-diff[bin_path=bin,bin=helm-diff]", | |
| "github:databus23/helm-diff[bin_path=bin,bin=diff]", |
registry.toml
Outdated
|
|
||
| [tools.k3kcli] | ||
| backends = [ | ||
| "github:rancher/k3k[bin=k3k,version_prefix=v,asset_pattern=k3kcli-{darwin_os}-{amd64_arch}]", |
There was a problem hiding this comment.
The bin parameter is set to 'k3k' while the asset pattern and UBI backend both indicate 'k3kcli' should be the binary name. Consider using 'bin=k3kcli' for consistency with the tool name and asset pattern.
8ed6625 to
6be77df
Compare
Add github backend as primary for djinni with ubi as fallback. The github backend provides better integration with GitHub releases API and created_at timestamps for version filtering. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
6be77df to
edec583
Compare
Hyperfine Performance
|
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
mise-2025.12.10 x -- echo |
20.2 ± 0.5 | 19.4 | 22.8 | 1.00 |
mise x -- echo |
20.3 ± 0.6 | 19.2 | 24.4 | 1.01 ± 0.04 |
mise env
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
mise-2025.12.10 env |
19.3 ± 0.7 | 18.3 | 25.1 | 1.00 |
mise env |
19.9 ± 0.7 | 18.7 | 25.8 | 1.03 ± 0.05 |
mise hook-env
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
mise-2025.12.10 hook-env |
19.6 ± 0.6 | 18.7 | 25.0 | 1.00 |
mise hook-env |
19.8 ± 0.5 | 18.8 | 21.3 | 1.01 ± 0.04 |
mise ls
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
mise-2025.12.10 ls |
17.4 ± 0.6 | 16.3 | 22.6 | 1.00 |
mise ls |
17.4 ± 0.3 | 16.6 | 18.7 | 1.00 ± 0.04 |
xtasks/test/perf
| Command | mise-2025.12.10 | mise | Variance |
|---|---|---|---|
| install (cached) | 109ms | 109ms | +0% |
| ls (cached) | 67ms | 68ms | -1% |
| bin-paths (cached) | 74ms | 73ms | +1% |
| task-ls (cached) | 4241ms | ✅ 280ms | +1414% |
✅ Performance improvement: task-ls cached is 1414%
### 🚀 Features - **(alias)** rename alias to tool-alias, add shell-alias command by @jdx in [#7357](#7357) - **(upgrade)** display summary of upgraded tools by @jdx in [#7372](#7372) - **(vfox)** embed vfox plugin Lua code in binary by @jdx in [#7369](#7369) ### 🐛 Bug Fixes - **(aqua)** add start_operations for progress reporting by @jdx in [#7354](#7354) - **(github)** improve asset detection for distro-specific and Swift artifacts by @jdx in [#7347](#7347) - **(github)** clean up static_helpers.rs and fix archive bin= option by @jdx in [#7366](#7366) - **(http)** add start_operations for progress reporting by @jdx in [#7355](#7355) - **(lockfile)** place lockfile alongside config file by @jdx in [#7360](#7360) - **(progress)** add start_operations to core plugins by @jdx in [#7351](#7351) - **(ruby-install)** Use ruby_install_bin to update by @calebhearth in [#7350](#7350) - **(rust)** add release_url for rust versions by @jdx in [#7373](#7373) - **(schema)** add `tool_alias`, mark `alias` as deprecated by @SKalt in [#7358](#7358) - **(toolset)** filter tools by OS in list_current_versions by @jdx in [#7356](#7356) - **(ubi)** only show deprecation warning during installation by @jdx in [#7380](#7380) - **(ui)** remove noisy "record size" message during install by @jdx in [#7381](#7381) - update mise-versions URL to use /tools/ prefix by @jdx in [#7378](#7378) ### 🚜 Refactor - **(backend)** unified AssetMatcher with checksum fetching by @jdx in [#7370](#7370) - **(backend)** deprecate ubi backend in favor of github by @jdx in [#7374](#7374) - **(toolset)** decompose mod.rs into smaller modules by @jdx in [#7371](#7371) ### 🧪 Testing - **(e2e)** fix and rename ubi and vfox_embedded_override tests by @jdx in [052ea40](052ea40) ### 📦 Registry - add vfox-gcloud backend for gcloud by @jdx in [#7349](#7349) - convert amplify to use github backend by @jdx in [#7365](#7365) - add github backend for djinni tool by @jdx in [#7363](#7363) - switch glab to native gitlab backend by @jdx in [#7364](#7364) - add s5cmd by @jdx in [#7376](#7376) ### Chore - **(registry)** disable flaky tests for gitu and ktlint by @jdx in [64151cb](64151cb) - resolve clippy warnings and add stricter CI check by @jdx in [#7367](#7367) - suppress dead_code warnings in asset_matcher module by @jdx in [#7377](#7377) ### New Contributors - @calebhearth made their first contribution in [#7350](#7350)
* upstream/main: fix(ui): remove noisy "record size" message during install (jdx#7381) test(e2e): fix and rename ubi and vfox_embedded_override tests fix: update mise-versions URL to use /tools/ prefix (jdx#7378) fix(ubi): only show deprecation warning during installation (jdx#7380) registry: add s5cmd (jdx#7376) chore: suppress dead_code warnings in asset_matcher module (jdx#7377) refactor(backend): deprecate ubi backend in favor of github (jdx#7374) fix(rust): add release_url for rust versions (jdx#7373) feat(vfox): embed vfox plugin Lua code in binary (jdx#7369) refactor(backend): unified AssetMatcher with checksum fetching (jdx#7370) feat(upgrade): display summary of upgraded tools (jdx#7372) fix(github): clean up static_helpers.rs and fix archive bin= option (jdx#7366) refactor(toolset): decompose mod.rs into smaller modules (jdx#7371) chore: resolve clippy warnings and add stricter CI check (jdx#7367) registry: switch glab to native gitlab backend (jdx#7364) fix(ruby-install): Use ruby_install_bin to update (jdx#7350) registry: add github backend for djinni tool (jdx#7363) registry: convert amplify to use github backend (jdx#7365) chore(registry): disable flaky tests for gitu and ktlint
Summary
mise test-tool djinni- successfully downloaded and installedDetails
The github backend provides better integration with GitHub releases API and created_at timestamps for version filtering. This follows the pattern from recent commits converting ubi-only tools to github backend.
🤖 Generated with Claude Code
Note
Add a GitHub backend for
tools.djinni, keeping existing UBI and ASDF backends.tools.djinni: Addgithub:cross-language-cpp/djinni-generator[bin=djinni,asset_pattern=djinni]backend alongside existingubiandasdfbackends.Written by Cursor Bugbot for commit edec583. This will update automatically on new commits. Configure here.