diff --git a/.taplo.toml b/.taplo.toml index 36eb7e1687..e410837a87 100644 --- a/.taplo.toml +++ b/.taplo.toml @@ -5,6 +5,7 @@ exclude = ["docs/registry.toml", "docs/settings.toml"] [formatting] align_entries = false +align_comments = false array_auto_collapse = true array_auto_expand = true indent_tables = false diff --git a/registry.toml b/registry.toml index 5b5efd5242..9c13f5138c 100644 --- a/registry.toml +++ b/registry.toml @@ -65,6 +65,7 @@ backends = [ "cargo:age-plugin-yubikey", ] description = "age-plugin-yubikey is a plugin for age clients like age and rage, which enables files to be encrypted to age identities stored on YubiKeys" +test = ["which age-plugin-yubikey", ""] # libpcsclite.so.1 is missing in CI [tools.agebox] backends = ["aqua:slok/agebox", "ubi:slok/agebox", "asdf:slok/asdf-agebox"] @@ -104,7 +105,7 @@ test = ["alp --version", "{{version}}"] [tools.amass] backends = ["github:owasp-amass/amass", "asdf:dhoeric/asdf-amass"] description = "In-depth attack surface mapping and asset discovery" -test = ["amass -version 2>&1", "v"] +test = ["amass -version 2>&1", "v"] # version is wrong from the CLI [tools.amazon-ecr-credential-helper] backends = [ @@ -206,7 +207,7 @@ description = "AsciidoctorJ is the official library for running Asciidoctor on t [tools.assh] backends = ["github:moul/assh", "asdf:mise-plugins/mise-assh"] description = "make your ssh client smarter" -test = ["assh --version", "assh version "] +test = ["assh --version", "assh version "] # 2.16.0 reports version n/a [tools.ast-grep] backends = [ @@ -383,6 +384,7 @@ test = ["bazel --version", "bazel {{version}}"] [tools.bazel-watcher] backends = ["aqua:bazelbuild/bazel-watcher"] description = "Tools for building Bazel targets when source files change" +test = ["ibazel version 2>&1", "iBazel - Version v{{version}}"] [tools.bazelisk] backends = ["aqua:bazelbuild/bazelisk", "asdf:josephtate/asdf-bazelisk"] @@ -391,6 +393,8 @@ description = "A user-friendly launcher for Bazel" [tools.bbr-s3-config-validator] backends = ["asdf:mise-plugins/tanzu-plug-in-for-asdf"] description = "The BOSH Backup and Restore (BBR) S3 bucket configuration validator is a tool to validate and troubleshoot your Cloud Foundry and BBR external blobstore configuration" +os = ["linux"] +test = ["bbr-s3-config-validator --help", ""] # no version output [tools.bfs] backends = ["asdf:mise-plugins/mise-bfs"] @@ -506,6 +510,7 @@ test = ["buck2 --version", "buck2"] [tools.buf] backends = ["aqua:bufbuild/buf", "ubi:bufbuild/buf", "asdf:truepay/asdf-buf"] description = "The best way of working with Protocol Buffers" +test = ["buf --version", "{{version}}"] [tools.buildifier] backends = ["aqua:bazelbuild/buildtools/buildifier"] @@ -526,6 +531,7 @@ test = ["bun --version", "{{version}}"] [tools.cabal] backends = ["aqua:haskell/cabal/cabal-install"] description = "Cabal(haskell): Common Architecture for Building Applications and Libraries" +test = ["cabal --version", "cabal-install version {{version}}"] [tools.caddy] backends = ["aqua:caddyserver/caddy", "asdf:salasrod/asdf-caddy"] @@ -559,6 +565,7 @@ backends = [ "cargo:cargo-binstall", ] description = "Binary installation for rust projects" +test = ["cargo binstall -V", "{{version}}"] [tools.cargo-insta] backends = ["aqua:mitsuhiko/insta", "ubi:mitsuhiko/insta"] @@ -671,6 +678,7 @@ backends = [ "asdf:lwiechec/asdf-chisel", ] description = "A fast TCP/UDP tunnel over HTTP" +test = ["chisel --version", "{{version}}"] [tools.choose] backends = [ @@ -757,8 +765,15 @@ description = "Command line tool for Amazon Route 53" test = ["cli53 --version", "cli53 version {{version}}"] [tools.clickhouse] -backends = ["asdf:mise-plugins/mise-clickhouse"] +backends = [ + # "ubi:ClickHouse/ClickHouse", # ubi not working on linux + "asdf:mise-plugins/mise-clickhouse", +] description = "ClickHouse® is a high-performance, column-oriented SQL database management system (DBMS) for online analytical processing (OLAP)" +test = [ + "clickhouse --version", + "ClickHouse local version {{version | trim_end_matches(pat='-lts') | trim_end_matches(pat='-stable')}}", +] [tools.clj-kondo] backends = ["github:clj-kondo/clj-kondo", "asdf:rynkowsg/asdf-clj-kondo"] @@ -1019,6 +1034,8 @@ test = ["curlie version", "curlie {{version}}"] [tools.cyclonedx] backends = ["aqua:CycloneDX/cyclonedx-cli", "asdf:xeedio/asdf-cyclonedx"] description = "CycloneDX CLI tool for SBOM analysis, merging, diffs and format conversions" +# TODO: re-enable test when aqua-registry is updated to use gnu instead of musl +# test = ["cyclonedx --version", "{{version}}"] [tools.dagger] backends = ["aqua:dagger/dagger", "asdf:virtualstaticvoid/asdf-dagger"] @@ -1101,8 +1118,9 @@ backends = ["aqua:devspace-sh/devspace", "asdf:NeoHsu/asdf-devspace"] description = "DevSpace - The Fastest Developer Tool for Kubernetes Automate your deployment workflow with DevSpace and develop software directly inside Kubernetes" [tools.dhall] -backends = ["asdf:mise-plugins/mise-dhall"] +backends = ["aqua:dhall-lang/dhall-haskell", "asdf:mise-plugins/mise-dhall"] description = "Maintainable configuration files (haskell)" +test = ["dhall --version", "{{version}}"] [tools.diffoci] backends = ["aqua:reproducible-containers/diffoci"] @@ -1144,7 +1162,6 @@ backends = [ description = "Command-line tool that generates gluecode from a djinni-IDL file" test = ["djinni --version", "djinni generator version {{version}}"] - [tools.dmd] backends = ["asdf:mise-plugins/mise-dmd"] description = "D programming language (DMD compiler)" @@ -1167,6 +1184,7 @@ backends = [ ] description = "minT(oolkit): Mint awesome, secure and production ready containers just the way you need them! Don't change anything in your container image and minify it by up to 30x (and for compiled languages even more) making it secure too! (free and open source)" os = ["linux", "macos"] +test = ["slim --version", ""] # prints out weird version of mint or something [tools.dockle] backends = ["aqua:goodwithtech/dockle", "asdf:mathew-fleisch/asdf-dockle"] @@ -1330,6 +1348,7 @@ description = "ecspresso is a deployment tool for Amazon ECS" [tools.edit] backends = ["aqua:microsoft/edit"] description = "We all edit" +# test = ["edit --version", "edit version {{version}}"] # exits 1 on CI [tools.editorconfig-checker] backends = [ @@ -1418,6 +1437,9 @@ backends = [ { full = "aqua:eza-community/eza", platforms = [ "linux", ] }, + { full = "ubi:eza-community/eza", platforms = [ + "linux", + ] }, "asdf:mise-plugins/mise-eza", "cargo:eza", ] @@ -1444,8 +1466,13 @@ backends = ["asdf:mise-plugins/mise-ffmpeg"] description = "A complete, cross-platform solution to record, convert and stream audio and video" [tools.figma-export] -backends = ["github:RedMadRobot/figma-export", "asdf:younke/asdf-figma-export"] +backends = [ + "github:RedMadRobot/figma-export[bin_path=Release]", + "asdf:younke/asdf-figma-export", +] description = "Command line utility to export colors, typography, icons and images from Figma to Xcode / Android Studio project" +os = ["macos"] +test = ["figma-export --version", "{{version}}"] [tools.fillin] backends = ["aqua:itchyny/fillin", "asdf:ouest/asdf-fillin"] @@ -1454,6 +1481,7 @@ description = "fill-in your command and execute" [tools.firebase] backends = ["aqua:firebase/firebase-tools", "asdf:jthegedus/asdf-firebase"] description = "The Firebase Command Line Tools" +test = ["firebase --version", "{{version}}"] [tools.fission] backends = ["aqua:fission/fission", "asdf:virtualstaticvoid/asdf-fission"] @@ -1470,6 +1498,7 @@ backends = [ "asdf:mise-plugins/asdf-flarectl", ] description = "A CLI application for interacting with a Cloudflare account. Powered by cloudflare-go" +# test = ["flarectl --version", "flarectl version {{version}}"] # flarectl removed since v4 [tools.flatc] backends = [ @@ -1600,6 +1629,10 @@ test = ["ghalint version", "{{version}}"] [tools.ghc] backends = ["asdf:mise-plugins/mise-ghcup"] description = "The Glorious Glasgow Haskell Compiler." +test = [ + "ghc --version", + "The Glorious Glasgow Haskell Compilation System, version {{version}}", +] [tools.ghcup] backends = [ @@ -1738,6 +1771,7 @@ description = "Go library and CLIs for working with container registries" [tools.go-getter] backends = ["aqua:hashicorp/go-getter", "asdf:mise-plugins/mise-go-getter"] description = "Package for downloading things from a string URL using a variety of protocols" +test = ["which go-getter", "go-getter"] [tools.go-jira] backends = ["aqua:go-jira/jira", "asdf:dguihal/asdf-go-jira"] @@ -1889,8 +1923,7 @@ backends = [ "asdf:mise-plugins/mise-grain", ] description = "The Grain compiler toolchain and CLI. Home of the modern web staple" -# TODO: enable test when versions host is updated -# test = ["grain --version", "{{version}}"] +test = ["grain --version", "{{version}}"] [tools.granted] backends = ["aqua:common-fate/granted", "asdf:dex4er/asdf-granted"] @@ -1970,6 +2003,8 @@ description = "Hamler A Haskell-style functional programming language running on [tools.harper-cli] backends = ["aqua:Automattic/harper/harper-cli"] description = "harper-cli is a small, experimental frontend for Harper. It can be used in any situation where you might need to check a large number of files automatically (like in continuous integration)" +# harper-cli intentionally prints different version. See https://github.com/Automattic/harper/issues/557#issuecomment-2635037944 +test = ["harper-cli --version", "harper-cli"] [tools.harper-ls] backends = ["aqua:Automattic/harper/harper-ls"] @@ -1980,6 +2015,7 @@ test = ["harper-ls --version", "harper-ls {{version}}"] backends = ["aqua:kdabir/has", "asdf:sylvainmetayer/asdf-has"] description = "checks presence of various command line tools and their versions on the path" os = ["linux", "macos"] +test = ["has --version", "v{{version}}"] [tools.haskell] backends = ["asdf:mise-plugins/mise-haskell"] @@ -2581,6 +2617,7 @@ backends = [ "asdf:asdf-community/asdf-kubectl", ] description = "kubectl cli" +test = ["kubectl version --client", "Client Version: v{{version}}"] [tools.kubectl-convert] backends = [ @@ -2616,7 +2653,10 @@ description = "Faster way to switch between clusters and namespaces in kubectl" [tools.kubefedctl] backends = ["aqua:kubernetes-retired/kubefed", "asdf:kvokka/asdf-kubefedctl"] description = "kubefedctl controls a Kubernetes Cluster Federation" -test = ["kubefedctl version", "kubefedctl version:"] +test = [ + "kubefedctl version", + "kubefedctl version:", +] # may not have version in output [tools.kubefirst] backends = ["github:konstructio/kubefirst", "asdf:Claywd/asdf-kubefirst"] @@ -2909,6 +2949,7 @@ backends = [ "vfox:mise-plugins/vfox-maven", ] description = "Apache Maven core" +test = ["mvn --version", "Apache Maven {{version}}"] [tools.mc] backends = ["asdf:mise-plugins/mise-mc"] @@ -3028,6 +3069,7 @@ description = "A mock code autogenerator for Go" [tools.mockolo] backends = ["github:uber/mockolo", "asdf:mise-plugins/mise-mockolo"] description = "Efficient Mock Generator for Swift" +test = ["mockolo --help", "Show help information"] [tools.mold] backends = ["aqua:rui314/mold", "ubi:rui314/mold"] @@ -3294,7 +3336,7 @@ backends = [ "asdf:mise-plugins/mise-opsgenie-lamp", ] description = "OpsGenie Lamp with Go SDK" -test = ["opsgenie-lamp --version", "lamp version "] +test = ["opsgenie-lamp --version", "lamp version "] # 3.1.4 reports 3.2.0 [tools.oras] backends = ["aqua:oras-project/oras", "asdf:bodgit/asdf-oras"] @@ -3332,6 +3374,10 @@ description = "This is the linter for oxc." [tools.pachctl] backends = ["aqua:pachyderm/pachyderm", "asdf:abatilo/asdf-pachctl"] description = "Data-Centric Pipelines and Data Versioning" +test = [ + "pachctl help", + "", +] # version subcommand fails with invalid configuration [tools.packer] backends = ["aqua:hashicorp/packer", "asdf:mise-plugins/mise-hashicorp"] @@ -3408,7 +3454,7 @@ backends = [ "asdf:mise-plugins/tanzu-plug-in-for-asdf", ] description = "CLI to interact with Tanzu Network API V2 interface" -test = ["pivnet version", ""] +test = ["pivnet version", "{{version}}"] [tools.pixi] backends = ["github:prefix-dev/pixi"] @@ -3549,7 +3595,7 @@ backends = [ "asdf:pbr0ck3r/asdf-protoc-gen-go-grpc", ] description = "This tool generates Go language bindings of services in protobuf definition files for gRPC" -test = ["protoc-gen-go-grpc --version", "protoc-gen-go-grpc"] +test = ["protoc-gen-go-grpc --version", "protoc-gen-go-grpc {{version}}"] [tools.protoc-gen-grpc-web] backends = ["asdf:mise-plugins/mise-protoc-gen-grpc-web"] @@ -3709,6 +3755,7 @@ description = "regsync is a registry synchronization utility used to update mirr [tools.restic] backends = ["aqua:restic/restic", "asdf:xataz/asdf-restic"] description = "Fast, secure, efficient backup program" +test = ["restic version", "restic {{version}}"] [tools.restish] backends = [ @@ -3717,6 +3764,7 @@ backends = [ "go:github.com/danielgtaylor/restish", ] description = "Restish is a CLI for interacting with REST-ish HTTP APIs with some nice features built-in" +test = ["restish --version", "restish version {{version}}"] [tools.resvg] backends = ["aqua:linebender/resvg", "cargo:resvg"] @@ -3757,6 +3805,7 @@ backends = [ "asdf:https://github.com/boris-smidt-klarrio/asdf-ripsecrets", ] description = "A command-line tool to prevent committing secret keys into your source code" +test = ["ripsecrets --version", "ripsecrets {{version}}"] [tools.rke] backends = ["aqua:rancher/rke", "asdf:particledecay/asdf-rke"] @@ -3885,7 +3934,11 @@ backends = ["asdf:mise-plugins/mise-semtag"] description = "Semantic Tagging Script for Git" [tools.semver] -backends = ["vfox:mise-plugins/mise-semver", "asdf:mathew-fleisch/asdf-semver"] +backends = [ + # "aqua:fsaintjacques/semver-tool", # see https://github.com/jdx/mise/discussions/5833 + "vfox:mise-plugins/mise-semver", + "asdf:mathew-fleisch/asdf-semver", +] description = "semver bash implementation" test = ["semver --version", "semver: {{version}}"] @@ -4481,6 +4534,10 @@ backends = [ "aqua:NetApp/trident/tridentctl", "asdf:asdf-community/asdf-tridentctl", ] +depends = ["kubectl"] +description = "Storage orchestrator for containers" +os = ["linux", "macos"] +test = ["tridentctl version --client", "{{version}}"] [tools.trivy] backends = ["aqua:aquasecurity/trivy", "asdf:zufardhiyaulhaq/asdf-trivy"] @@ -4496,7 +4553,10 @@ test = ["trufflehog --version", "trufflehog {{version}}"] [tools.trunk] backends = ["npm:@trunkio/launcher"] description = "Trunk is a comprehensive code quality tool that runs linters, formatters, and security scanners to help maintain high-quality codebases (https://trunk.io)" -test = ["trunk --help", "trunk [flags] [subcommand]"] +test = [ + "trunk --help", + "trunk [flags] [subcommand]", +] # --version can't be used because we know the launcher version, but we get the binary version [tools.trzsz-ssh] aliases = ["tssh"] @@ -4799,7 +4859,7 @@ description = "Modern HTTP benchmarking tool" [tools.wtfutil] backends = ["aqua:wtfutil/wtf", "asdf:NeoHsu/asdf-wtfutil"] description = "WTF is the personal information dashboard for your terminal" -test = ["wtfutil --help", "wtfutil "] +test = ["wtfutil --help", "wtfutil "] # may not have version in output [tools.xc] backends = ["aqua:joerdav/xc", "asdf:airtonix/asdf-xc"] @@ -4961,6 +5021,7 @@ test = ["zigmod version", "{{version}}"] [tools.zizmor] backends = ["aqua:zizmorcore/zizmor", "ubi:zizmorcore/zizmor", "cargo:zizmor"] description = "Static analysis for GitHub Actions" +test = ["zizmor --version", "zizmor {{version}}"] [tools.zls] backends = ["aqua:zigtools/zls", "ubi:zigtools/zls"] diff --git a/tasks.toml b/tasks.toml index 9dc319fed5..9e75f60047 100644 --- a/tasks.toml +++ b/tasks.toml @@ -143,28 +143,28 @@ run = "cargo test --all-features" env = { CARGO_TERM_COLOR = "always", "RUST_TEST_THREADS" = "1" } ["docker:image"] -hide = true # docker stuff is not working correctly right now +hide = true # docker stuff is not working correctly right now description = "build docker image from Dockerfile" run = 'docker build --build-arg GITHUB_TOKEN=$GITHUB_API_TOKEN $root -f $root/packaging/dev/Dockerfile -t ghcr.io/jdx/mise:dev' ["docker:run"] -hide = true # docker stuff is not working correctly right now +hide = true # docker stuff is not working correctly right now description = "run a command inside of development docker container" run = 'docker run -ti --rm -e GITHUB_API_TOKEN -e TEST_ALL -v $root:/mise -v /tmp/mise/target:/tmp/mise/target -v /tmp/mise/registry:/tmp/mise/registry -w /mise ghcr.io/jdx/mise:dev' depends = ["docker:image"] ["docker:cargo"] -hide = true # docker stuff is not working correctly right now +hide = true # docker stuff is not working correctly right now description = "run cargo inside of development docker container" run = 'mise tasks run docker:run cargo' ["docker:mise"] -hide = true # docker stuff is not working correctly right now +hide = true # docker stuff is not working correctly right now description = "run mise inside of development docker container" run = "mise tasks run -- docker:cargo run --" ["docker:e2e"] -hide = true # docker stuff is not working correctly right now +hide = true # docker stuff is not working correctly right now description = "run e2e tests inside of development docker container" run = "mise tasks run docker:mise run test:e2e"