diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml new file mode 100644 index 0000000000..b904a1f7ad --- /dev/null +++ b/.github/FUNDING.yml @@ -0,0 +1 @@ +github: jdx diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index 8cafba338b..da6f9052d0 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -103,29 +103,111 @@ jobs: max_attempts: 3 command: mise run test dockerhub: - runs-on: ubuntu-latest + runs-on: ${{ matrix.platform.os }} + strategy: + fail-fast: false + matrix: + platform: + - os: ubuntu-latest + tag_suffix: amd64 + platform: linux/amd64 + - os: ubuntu-24.04-arm + tag_suffix: arm64 + platform: linux/arm64 steps: - uses: actions/checkout@v4 with: fetch-depth: 0 + - name: Prepare + run: | + platform="${{ matrix.platform.platform }}" + echo "PLATFORM_PAIR=${platform//\//-}" >> "$GITHUB_ENV" + - name: Docker meta + id: meta + uses: docker/metadata-action@v5 + with: + images: | + jdxcode/mise + ghcr.io/jdx/mise + - name: Login to Docker Hub + uses: docker/login-action@v3 + with: + username: jdxcode + password: ${{ secrets.DOCKER_PASSWORD }} + - name: Login to GHCR + uses: docker/login-action@v3 + with: + registry: ghcr.io + username: ${{ github.repository_owner }} + password: ${{ secrets.GITHUB_TOKEN }} - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 - - name: Log in to Docker Hub + - name: Build and push by digest + id: build + uses: docker/build-push-action@v6 + with: + platforms: ${{ matrix.platform.platform }} + labels: ${{ steps.meta.outputs.labels }} + outputs: type=image,"name=jdxcode/mise,ghcr.io/jdx/mise",push-by-digest=true,name-canonical=true,push=true + - name: Export digest + run: | + mkdir -p ${{ runner.temp }}/digests + digest="${{ steps.build.outputs.digest }}" + touch "${{ runner.temp }}/digests/${digest#sha256:}" + - name: Upload digest + uses: actions/upload-artifact@v4 + with: + name: digests-${{ env.PLATFORM_PAIR }} + path: ${{ runner.temp }}/digests/* + if-no-files-found: error + retention-days: 1 + merge: + runs-on: ubuntu-latest + needs: [dockerhub] + steps: + - name: Download digests + uses: actions/download-artifact@v4 + with: + path: ${{ runner.temp }}/digests + pattern: digests-* + merge-multiple: true + - name: Login to Docker Hub uses: docker/login-action@v3 with: - username: ${{ secrets.DOCKER_USERNAME }} + username: jdxcode password: ${{ secrets.DOCKER_PASSWORD }} - - name: Extract metadata (tags, labels) for Docker + - name: Login to GHCR + uses: docker/login-action@v3 + with: + registry: ghcr.io + username: jdx + password: ${{ secrets.GITHUB_TOKEN }} + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + - name: Docker meta id: meta uses: docker/metadata-action@v5 with: - images: jdxcode/mise - - name: Build and push Docker image - uses: docker/build-push-action@v6 - with: - context: . - file: ./Dockerfile - platforms: linux/amd64,linux/arm64 - push: true - tags: jdxcode/mise:latest,jdxcode/mise:${{ github.ref_name }} - labels: ${{ steps.meta.outputs.labels }} + images: | + jdxcode/mise + ghcr.io/jdx/mise + tags: | + type=ref,event=branch + type=ref,event=pr + type=semver,pattern={{version}} + type=semver,pattern={{major}}.{{minor}} + - name: Create manifest list and push + working-directory: ${{ runner.temp }}/digests + run: | + docker buildx imagetools create $(jq -cr '.tags | map("-t " + .) | join(" ")' <<< "$DOCKER_METADATA_OUTPUT_JSON") \ + $(printf 'jdxcode/mise:${{ github.ref_name }}@sha256:%s ' *) + docker buildx imagetools create $(jq -cr '.tags | map("-t " + .) | join(" ")' <<< "$DOCKER_METADATA_OUTPUT_JSON") \ + $(printf 'ghcr.io/jdx/mise:${{ github.ref_name }}@sha256:%s ' *) + docker buildx imagetools create -t jdxcode/mise:latest \ + $(printf 'jdxcode/mise:${{ github.ref_name }}@sha256:%s ' *) + docker buildx imagetools create -t ghcr.io/jdx/mise:latest \ + $(printf 'ghcr.io/jdx/mise:${{ github.ref_name }}@sha256:%s ' *) + - name: Inspect image + run: | + docker buildx imagetools inspect jdxcode/mise:${{ steps.meta.outputs.version }} + docker buildx imagetools inspect ghcr.io/jdx/mise:${{ steps.meta.outputs.version }} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index fa97e0e14b..5e471faa19 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -272,7 +272,13 @@ jobs: merge-multiple: true - run: echo "${{ secrets.MINISIGN_KEY }}" >minisign.key - run: ls -R artifacts - - run: scripts/release.sh + - uses: actions/download-artifact@v4 + with: + name: tarball-x86_64-unknown-linux-gnu + path: dist + - run: tar -C "$HOME" -xvf "dist/mise-$(./scripts/get-version.sh)-linux-x64.tar.zst" + - run: echo "$HOME/mise/bin" >> "$GITHUB_PATH" + - run: mise x -- scripts/release.sh env: CLOUDFLARE_ACCESS_KEY_ID: ${{ secrets.CLOUDFLARE_ACCESS_KEY_ID }} CLOUDFLARE_API_TOKEN: ${{ secrets.CLOUDFLARE_TOKEN }} diff --git a/CHANGELOG.md b/CHANGELOG.md index 56b098e8b8..9c5c6915ce 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,80 @@ # Changelog +## [2025.1.14](https://github.com/jdx/mise/compare/v2025.1.13..v2025.1.14) - 2025-01-24 + +### ๐ Features + +- **(registry)** add gron by [@MontakOleg](https://github.com/MontakOleg) in [#4204](https://github.com/jdx/mise/pull/4204) + +### ๐ Bug Fixes + +- spurious semver warning on `mise outdated` by [@jdx](https://github.com/jdx) in [#4199](https://github.com/jdx/mise/pull/4199) + +### Chore + +- lint issue in Dockerfile by [@jdx](https://github.com/jdx) in [47ad5d6](https://github.com/jdx/mise/commit/47ad5d67890188478cf8c8f2e6796b6752546e6c) +- fix some typos in markdown file by [@chuangjinglu](https://github.com/chuangjinglu) in [#4198](https://github.com/jdx/mise/pull/4198) +- pin aws-cli by [@jdx](https://github.com/jdx) in [f7311fd](https://github.com/jdx/mise/commit/f7311fd8fc85b6920c5a484862865adc9ef7261d) +- use arm64 runners for docker by [@jdx](https://github.com/jdx) in [#4200](https://github.com/jdx/mise/pull/4200) + +### New Contributors + +- @chuangjinglu made their first contribution in [#4198](https://github.com/jdx/mise/pull/4198) + +## [2025.1.13](https://github.com/jdx/mise/compare/v2025.1.12..v2025.1.13) - 2025-01-24 + +### Chore + +- fixing aws-cli in release.sh by [@jdx](https://github.com/jdx) in [5b4a65a](https://github.com/jdx/mise/commit/5b4a65a84e07141de9ed69798921b4b0ef69aa02) +- fixing aws-cli in release.sh by [@jdx](https://github.com/jdx) in [4c67db5](https://github.com/jdx/mise/commit/4c67db59ecfb55eb724dc05bca7eb7281a625929) + +## [2025.1.12](https://github.com/jdx/mise/compare/v2025.1.11..v2025.1.12) - 2025-01-24 + +### Chore + +- setup mise for release task by [@jdx](https://github.com/jdx) in [78d3dfb](https://github.com/jdx/mise/commit/78d3dfb164776cfb39a1920485c21fcd6ecd3ebe) + +## [2025.1.11](https://github.com/jdx/mise/compare/v2025.1.10..v2025.1.11) - 2025-01-23 + +### Chore + +- pin aws-cli by [@jdx](https://github.com/jdx) in [ca16daf](https://github.com/jdx/mise/commit/ca16daf5e5dbb9159d853570528087b24f63500b) + +## [2025.1.10](https://github.com/jdx/mise/compare/v2025.1.9..v2025.1.10) - 2025-01-23 + +### ๐ Features + +- **(registry)** use aqua for periphery by [@MontakOleg](https://github.com/MontakOleg) in [#4157](https://github.com/jdx/mise/pull/4157) +- split remote task by [@acesyde](https://github.com/acesyde) in [#4156](https://github.com/jdx/mise/pull/4156) + +### ๐ Bug Fixes + +- **(docs)** environment variable MISE_OVERRIDE_TOOL_VERSIONS_FILENAME should be plural by [@roele](https://github.com/roele) in [#4183](https://github.com/jdx/mise/pull/4183) +- completions were missing non-asdf tools by [@jdx](https://github.com/jdx) in [55b31a4](https://github.com/jdx/mise/commit/55b31a452b807ada4e2ba40c8b5588b77b79642e) +- broken link for `/tasks/task-configuration` by [@134130](https://github.com/134130) in [#4155](https://github.com/jdx/mise/pull/4155) +- whitespace in mise.run script by [@jdx](https://github.com/jdx) in [#4153](https://github.com/jdx/mise/pull/4153) +- confusing error in fish_command_not_found by [@MrGreenTea](https://github.com/MrGreenTea) in [#4162](https://github.com/jdx/mise/pull/4162) +- use correct python path for venv creation in windows by [@tisoft](https://github.com/tisoft) in [#4164](https://github.com/jdx/mise/pull/4164) + +### ๐ Documentation + +- neovim cookbook by [@EricDriussi](https://github.com/EricDriussi) in [#4161](https://github.com/jdx/mise/pull/4161) + +### ๐งช Testing + +- fix a couple of tool tests by [@jdx](https://github.com/jdx) in [#4186](https://github.com/jdx/mise/pull/4186) + +### Chore + +- added issue auto-closer by [@jdx](https://github.com/jdx) in [3c831c1](https://github.com/jdx/mise/commit/3c831c19a644fbb2f393f969ebaa5137f9415793) + +### New Contributors + +- @tisoft made their first contribution in [#4164](https://github.com/jdx/mise/pull/4164) +- @MrGreenTea made their first contribution in [#4162](https://github.com/jdx/mise/pull/4162) +- @EricDriussi made their first contribution in [#4161](https://github.com/jdx/mise/pull/4161) +- @134130 made their first contribution in [#4155](https://github.com/jdx/mise/pull/4155) + ## [2025.1.9](https://github.com/jdx/mise/compare/v2025.1.8..v2025.1.9) - 2025-01-17 ### ๐ Features diff --git a/Cargo.lock b/Cargo.lock index 57f075f808..25430b2d8a 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -577,9 +577,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.26" +version = "4.5.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8eb5e908ef3a6efbe1ed62520fb7287959888c88485abe072543190ecc66783" +checksum = "769b0145982b4b48713e01ec42d61614425f27b7058bda7180a3a41f30104796" dependencies = [ "clap_builder", "clap_derive", @@ -587,9 +587,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.26" +version = "4.5.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96b01801b5fc6a0a232407abc821660c9c6d25a1cafc0d4f85f29fb8d9afc121" +checksum = "1b26884eb4b57140e4d2d93652abfa49498b938b3c9179f9fc487b0acc3edad7" dependencies = [ "anstream", "anstyle", @@ -1301,7 +1301,7 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bbf7d3d8b433d4dc8fe3e5383ad01f1cb2ffba8e999191af8bf7af1e9fa3e2ca" dependencies = [ - "indexmap 2.7.0", + "indexmap 2.7.1", "log", "once_cell", "pest", @@ -1668,7 +1668,7 @@ dependencies = [ "futures-core", "futures-sink", "http", - "indexmap 2.7.0", + "indexmap 2.7.1", "slab", "tokio", "tokio-util", @@ -1735,15 +1735,6 @@ dependencies = [ "digest", ] -[[package]] -name = "home" -version = "0.5.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "589533453244b0995c858700322199b2becb13b627df2851f64a2775d024abcf" -dependencies = [ - "windows-sys 0.59.0", -] - [[package]] name = "homedir" version = "0.3.4" @@ -2188,9 +2179,9 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.7.0" +version = "2.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62f822373a4fe84d4bb149bf54e584a7f4abec90e072ed49cda0edea5b95471f" +checksum = "8c9c992b02b5b4c94ea26e32fe5bccb7aa7d9f390ab5c1221ff895bc7ea8b652" dependencies = [ "equivalent", "hashbrown 0.15.2", @@ -2267,9 +2258,9 @@ checksum = "4b3f7cef34251886990511df1c61443aa928499d598a9473929ab5a90a527304" [[package]] name = "ipnet" -version = "2.10.1" +version = "2.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ddc24109865250148c2e0f3d25d4f0f479571723792d3802153c60922a4fb708" +checksum = "469fb0b9cefa57e3ef31275ee7cacb78f2fdca44e4765491884a2b119d4eb130" [[package]] name = "is_terminal_polyfill" @@ -2523,12 +2514,12 @@ dependencies = [ [[package]] name = "luajit-src" -version = "210.5.11+97813fb" +version = "210.5.12+a4f56a4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3015551c284515db7c30c559fc1080f9cb9ee990d1f6fca315451a107c7540bb" +checksum = "b3a8e7962a5368d5f264d045a5a255e90f9aa3fc1941ae15a8d2940d42cac671" dependencies = [ "cc", - "which 6.0.3", + "which", ] [[package]] @@ -2658,7 +2649,7 @@ dependencies = [ [[package]] name = "mise" -version = "2025.1.9" +version = "2025.1.14" dependencies = [ "base64 0.22.1", "built", @@ -2695,7 +2686,7 @@ dependencies = [ "homedir", "humantime", "indenter", - "indexmap 2.7.0", + "indexmap 2.7.1", "indicatif", "indoc", "insta", @@ -2752,7 +2743,7 @@ dependencies = [ "versions", "vfox", "walkdir", - "which 7.0.1", + "which", "xx", "xz2", "zip", @@ -3033,9 +3024,9 @@ dependencies = [ [[package]] name = "openssl-probe" -version = "0.1.5" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" +checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e" [[package]] name = "openssl-sys" @@ -3232,7 +3223,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3672b37090dbd86368a4145bc067582552b29c27377cad4e0a306c97f9bd7772" dependencies = [ "fixedbitset", - "indexmap 2.7.0", + "indexmap 2.7.1", ] [[package]] @@ -3732,7 +3723,7 @@ dependencies = [ "generic-array", "hex", "impl-tools", - "indexmap 2.7.0", + "indexmap 2.7.1", "rand", "regex", "serde", @@ -3822,9 +3813,9 @@ dependencies = [ [[package]] name = "rustix" -version = "0.38.43" +version = "0.38.44" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a78891ee6bf2340288408954ac787aa063d8e8817e9f53abb37c695c6d834ef6" +checksum = "fdb5bc1ae2baa591800df16c9ca78619bf65c0488b41b96ccec5d11220d8c154" dependencies = [ "bitflags", "errno 0.3.10", @@ -4056,9 +4047,9 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.24" +version = "1.0.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3cb6eb87a131f756572d7fb904f6e7b68633f09cca868c5df1c4b8d1a694bbba" +checksum = "f79dfe2d285b0488816f30e700a7438c5a73d816b5b7d3ac72fbc48b0d185e03" [[package]] name = "serde" @@ -4101,11 +4092,11 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.135" +version = "1.0.137" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b0d7ba2887406110130a978386c4e1befb98c674b4fba677954e4db976630d9" +checksum = "930cfb6e6abf99298aaad7d29abbef7a9999a9a8806a40088f55f0dcec03146b" dependencies = [ - "indexmap 2.7.0", + "indexmap 2.7.1", "itoa", "memchr", "ryu", @@ -4153,7 +4144,7 @@ dependencies = [ "chrono", "hex", "indexmap 1.9.3", - "indexmap 2.7.0", + "indexmap 2.7.1", "serde", "serde_derive", "serde_json", @@ -4179,7 +4170,7 @@ version = "0.9.34+deprecated" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47" dependencies = [ - "indexmap 2.7.0", + "indexmap 2.7.1", "itoa", "ryu", "serde", @@ -4324,9 +4315,9 @@ checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe" [[package]] name = "similar" -version = "2.6.0" +version = "2.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1de1d4f81173b03af4c0cbed3c898f6bff5b870e4a7f5d6f4057d62a7a4b686e" +checksum = "bbbb5d9659141646ae647b42fe094daf6c6192d1620870b449d9557f748b2daa" [[package]] name = "siphasher" @@ -4618,9 +4609,9 @@ dependencies = [ [[package]] name = "test-log" -version = "0.2.16" +version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3dffced63c2b5c7be278154d76b479f9f9920ed34e7574201407f0b14e2bbb93" +checksum = "e7f46083d221181166e5b6f6b1e5f1d499f3a76888826e6cb1d057554157cd0f" dependencies = [ "env_logger", "test-log-macros", @@ -4629,9 +4620,9 @@ dependencies = [ [[package]] name = "test-log-macros" -version = "0.2.16" +version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5999e24eaa32083191ba4e425deb75cdf25efefabe5aaccb7446dd0d4122a3f5" +checksum = "888d0c3c6db53c0fdab160d2ed5e12ba745383d3e85813f2ea0f2b1475ab553f" dependencies = [ "proc-macro2", "quote", @@ -4848,7 +4839,7 @@ version = "0.22.22" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4ae48d6208a266e853d946088ed816055e556cc6028c5e8e2b84d9fa5dd7c7f5" dependencies = [ - "indexmap 2.7.0", + "indexmap 2.7.1", "serde", "serde_spanned", "toml_datetime", @@ -4981,9 +4972,9 @@ checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" [[package]] name = "ubi" -version = "0.4.0" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2bfd383c0349e48be6f232be1a4efdc1c73264bf56157f36762635d4d8bf716" +checksum = "771fe3d46f7fbcaf2a572ad253fea3a707e8e513d13de0cb4e40a5b7d6e198af" dependencies = [ "anyhow", "async-trait", @@ -5004,7 +4995,7 @@ dependencies = [ "tempfile", "thiserror 2.0.11", "url", - "which 7.0.1", + "which", "xz2", "zip", ] @@ -5086,9 +5077,9 @@ dependencies = [ [[package]] name = "unicode-ident" -version = "1.0.14" +version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adb9e6ca4f869e1180728b7950e35922a7fc6397f7b641499e8f3ef06e50dc83" +checksum = "11cd88e12b17c6494200a9c1b683a04fcac9573ed74cd1b62aeb2727c5592243" [[package]] name = "unicode-segmentation" @@ -5156,7 +5147,7 @@ checksum = "cbbaeb12c0a624b90c36daee220349c9084d0c7f619ba9fdb30825c84d14327d" dependencies = [ "clap", "heck 0.5.0", - "indexmap 2.7.0", + "indexmap 2.7.1", "itertools 0.14.0", "kdl", "log", @@ -5226,7 +5217,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6d66bb0124101043f5195f7c0f1c62d7e7a159c06e0c1e9a583774b44cb28718" dependencies = [ "homedir", - "indexmap 2.7.0", + "indexmap 2.7.1", "itertools 0.14.0", "log", "mlua", @@ -5387,18 +5378,6 @@ dependencies = [ "rustls-pki-types", ] -[[package]] -name = "which" -version = "6.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4ee928febd44d98f2f459a4a79bd4d928591333a494a10a868418ac1b39cf1f" -dependencies = [ - "either", - "home", - "rustix", - "winsafe", -] - [[package]] name = "which" version = "7.0.1" @@ -5901,7 +5880,7 @@ dependencies = [ "displaydoc", "flate2", "hmac", - "indexmap 2.7.0", + "indexmap 2.7.1", "lzma-rs", "memchr", "pbkdf2", diff --git a/Cargo.toml b/Cargo.toml index e104fc835b..6bcd11341e 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "mise" -version = "2025.1.9" +version = "2025.1.14" edition = "2021" description = "The front-end to your dev env" authors = ["Jeff Dickey (@jdx)"] diff --git a/README.md b/README.md index bb8723f609..17d9f917c8 100644 --- a/README.md +++ b/README.md @@ -35,7 +35,7 @@ Install mise (other methods [here](https://mise.jdx.dev/getting-started.html)): ```sh-session $ curl https://mise.run | sh $ ~/.local/bin/mise --version -2025.1.9 macos-arm64 (a1b2d3e 2025-01-17) +2025.1.14 macos-arm64 (a1b2d3e 2025-01-24) ``` or install a specific a version: diff --git a/aqua-registry b/aqua-registry index b8fc9fcc59..0f03159c30 160000 --- a/aqua-registry +++ b/aqua-registry @@ -1 +1 @@ -Subproject commit b8fc9fcc595ab61325b536b0185446830173194c +Subproject commit 0f03159c30ed88d00c4b75df675afcb159a41aaf diff --git a/completions/_mise b/completions/_mise index 713fab4489..3641e1b793 100644 --- a/completions/_mise +++ b/completions/_mise @@ -27,11 +27,11 @@ _mise() { zstyle ":completion:${curcontext}:" cache-policy _usage_mise_cache_policy fi - if ( [[ -z "${_usage_spec_mise_2025_1_9:-}" ]] || _cache_invalid _usage_spec_mise_2025_1_9 ) \ - && ! _retrieve_cache _usage_spec_mise_2025_1_9; + if ( [[ -z "${_usage_spec_mise_2025_1_14:-}" ]] || _cache_invalid _usage_spec_mise_2025_1_14 ) \ + && ! _retrieve_cache _usage_spec_mise_2025_1_14; then spec="$(mise usage)" - _store_cache _usage_spec_mise_2025_1_9 spec + _store_cache _usage_spec_mise_2025_1_14 spec fi _arguments "*: :(($(usage complete-word --shell zsh -s "$spec" -- "${words[@]}" )))" diff --git a/completions/mise.bash b/completions/mise.bash index 973519fcf3..883d960fb2 100644 --- a/completions/mise.bash +++ b/completions/mise.bash @@ -6,14 +6,14 @@ _mise() { return 1 fi - if [[ -z ${_usage_spec_mise_2025_1_9:-} ]]; then - _usage_spec_mise_2025_1_9="$(mise usage)" + if [[ -z ${_usage_spec_mise_2025_1_14:-} ]]; then + _usage_spec_mise_2025_1_14="$(mise usage)" fi local cur prev words cword was_split comp_args _comp_initialize -n : -- "$@" || return # shellcheck disable=SC2207 - _comp_compgen -- -W "$(usage complete-word --shell bash -s "${_usage_spec_mise_2025_1_9}" --cword="$cword" -- "${words[@]}")" + _comp_compgen -- -W "$(usage complete-word --shell bash -s "${_usage_spec_mise_2025_1_14}" --cword="$cword" -- "${words[@]}")" _comp_ltrim_colon_completions "$cur" # shellcheck disable=SC2181 if [[ $? -ne 0 ]]; then diff --git a/completions/mise.fish b/completions/mise.fish index c90e812d3d..cfcc7a182b 100644 --- a/completions/mise.fish +++ b/completions/mise.fish @@ -6,12 +6,12 @@ if ! command -v usage &> /dev/null return 1 end -if ! set -q _usage_spec_mise_2025_1_9 - set -g _usage_spec_mise_2025_1_9 (mise usage | string collect) +if ! set -q _usage_spec_mise_2025_1_14 + set -g _usage_spec_mise_2025_1_14 (mise usage | string collect) end set -l tokens if commandline -x >/dev/null 2>&1 - complete -xc mise -a '(usage complete-word --shell fish -s "$_usage_spec_mise_2025_1_9" -- (commandline -xpc) (commandline -t))' + complete -xc mise -a '(usage complete-word --shell fish -s "$_usage_spec_mise_2025_1_14" -- (commandline -xpc) (commandline -t))' else - complete -xc mise -a '(usage complete-word --shell fish -s "$_usage_spec_mise_2025_1_9" -- (commandline -opc) (commandline -t))' + complete -xc mise -a '(usage complete-word --shell fish -s "$_usage_spec_mise_2025_1_14" -- (commandline -opc) (commandline -t))' end diff --git a/default.nix b/default.nix index 877be60bf7..0b6868bbae 100644 --- a/default.nix +++ b/default.nix @@ -2,7 +2,7 @@ rustPlatform.buildRustPackage { pname = "mise"; - version = "2025.1.9"; + version = "2025.1.14"; src = lib.cleanSource ./.; diff --git a/docs/contributing.md b/docs/contributing.md index 83b27aeb4b..bfc8c28000 100644 --- a/docs/contributing.md +++ b/docs/contributing.md @@ -3,7 +3,7 @@ Before submitting a PR, unless it's something obvious, consider filing an issue or simply mention what you plan to do in the [Discord](https://discord.gg/UBa7pJUN7Z). PRs are often either rejected or need to change significantly after submission so make sure before you start working on something it won't be a wasted effort. -Issues ideal for contributors can be found with the ["help wanted"](https://github.com/jdx/mise/issues?q=is%3Aissue+is%3Aopen+label%3A%22help+wanted%22) and ["good first issue"](https://github.com/jdx/mise/labels/good%20first%20issue) labels. These are isssues that I feel are self-contained therefore don't require super in-depth understanding of the codebase or that require knowledge about something I don't understand very well myself. +Issues ideal for contributors can be found with the ["help wanted"](https://github.com/jdx/mise/issues?q=is%3Aissue+is%3Aopen+label%3A%22help+wanted%22) and ["good first issue"](https://github.com/jdx/mise/labels/good%20first%20issue) labels. These are issues that I feel are self-contained therefore don't require super in-depth understanding of the codebase or that require knowledge about something I don't understand very well myself. ## Testing diff --git a/docs/getting-started.md b/docs/getting-started.md index bd99a42741..d62bf16764 100644 --- a/docs/getting-started.md +++ b/docs/getting-started.md @@ -74,7 +74,7 @@ sudo apt install -y mise ```sh sudo dnf install -y dnf-plugins-core -sudo dnf config-manager --add-repo https://mise.jdx.dev/rpm/mise.repo +sudo dnf config-manager addrepo --from-repofile=https://mise.jdx.dev/rpm/mise.repo sudo dnf install -y mise ``` diff --git a/docs/registry.md b/docs/registry.md index 0af2856e54..7940f4273f 100644 --- a/docs/registry.md +++ b/docs/registry.md @@ -318,6 +318,7 @@ You can also specify the full name for a tool using `mise use aqua:1password/cli | grain | [asdf:mise-plugins/mise-grain](https://github.com/mise-plugins/mise-grain) | | granted | [aqua:common-fate/granted](https://github.com/common-fate/granted) [asdf:dex4er/asdf-granted](https://github.com/dex4er/asdf-granted) | | grex | [aqua:pemistahl/grex](https://github.com/pemistahl/grex) [asdf:ouest/asdf-grex](https://github.com/ouest/asdf-grex) | +| gron | [aqua:tomnomnom/gron](https://github.com/tomnomnom/gron) [ubi:tomnomnom/gron](https://github.com/tomnomnom/gron) | | groovy | [asdf:mise-plugins/mise-groovy](https://github.com/mise-plugins/mise-groovy) [vfox:mise-plugins/vfox-groovy](https://github.com/mise-plugins/vfox-groovy) | | grpc-health-probe | [aqua:grpc-ecosystem/grpc-health-probe](https://github.com/grpc-ecosystem/grpc-health-probe) [asdf:zufardhiyaulhaq/asdf-grpc-health-probe](https://github.com/zufardhiyaulhaq/asdf-grpc-health-probe) | | grpcurl | [aqua:fullstorydev/grpcurl](https://github.com/fullstorydev/grpcurl) [asdf:asdf-community/asdf-grpcurl](https://github.com/asdf-community/asdf-grpcurl) | diff --git a/docs/tasks/task-configuration.md b/docs/tasks/task-configuration.md index ead6f9545a..fd483e25ae 100644 --- a/docs/tasks/task-configuration.md +++ b/docs/tasks/task-configuration.md @@ -26,7 +26,7 @@ run = ["echo hello"] ### `run_windows` -An alterative script to run when `mise run` is executed on windows: +An alternative script to run when `mise run` is executed on windows: ```toml [tasks.build] diff --git a/docs/tasks/toml-tasks.md b/docs/tasks/toml-tasks.md index 7076c472f7..a60d632586 100644 --- a/docs/tasks/toml-tasks.md +++ b/docs/tasks/toml-tasks.md @@ -462,5 +462,5 @@ run = 'echo {{arg(name="user")}}' hide = true quiet = true # this is mandatory to make completion work (makes the mise command just print "alice bob charlie") description = "List users" -run = 'echo "alice bob charlie"' +run = 'echo "alice\nbob\ncharlie"' ``` diff --git a/docs/tips-and-tricks.md b/docs/tips-and-tricks.md index 42cc431ade..c26454a250 100644 --- a/docs/tips-and-tricks.md +++ b/docs/tips-and-tricks.md @@ -62,7 +62,7 @@ the version of mise that was current when the script was created. ## Installation via zsh zinit -[Zinit](https://github.com/zdharma-continuum/zinit) is a plugin manager for ZSH, wich this snippet you will get mise (and usage for shell completion): +[Zinit](https://github.com/zdharma-continuum/zinit) is a plugin manager for ZSH, which this snippet you will get mise (and usage for shell completion): ```sh zinit as="command" lucid from="gh-r" for \ diff --git a/man/man1/mise.1 b/man/man1/mise.1 index c8ce805b76..be974e0c0c 100644 --- a/man/man1/mise.1 +++ b/man/man1/mise.1 @@ -6,15 +6,7 @@ mise \- The front\-end to your dev env .SH SYNOPSIS \fBmise\fR [\fB\-C\fR|\fB\-\-cd\fR] [\fB\-E\fR|\fB\-\-env\fR] [\fB\-j\fR|\fB\-\-jobs\fR] [\fB\-\-output\fR] [\fB\-\-raw\fR] [\fB\-\-no\-config\fR] [\fB\-y\fR|\fB\-\-yes\fR] [\fB\-q\fR|\fB\-\-quiet\fR] [\fB\-\-silent\fR] [\fB\-v\fR|\fB\-\-verbose\fR]... [\fB\-h\fR|\fB\-\-help\fR] [\fITASK\fR] [\fITASK_ARGS\fR] [\fITASK_ARGS_LAST\fR] [\fIsubcommands\fR] .SH DESCRIPTION -.PP -mise is a tool for managing runtime versions. https://github.com/jdx/mise -.PP -It\*(Aqs a replacement for tools like nvm, nodenv, rbenv, rvm, chruby, pyenv, etc. -that works for any language. It\*(Aqs also great for managing linters/tools like -jq and shellcheck. -.PP -It is inspired by asdf and uses asdf\*(Aqs plugin ecosystem under the hood: -https://asdf\-vm.com/ +mise manages dev tools, env vars, and runs tasks. https://github.com/jdx/mise .SH OPTIONS .TP \fB\-C\fR, \fB\-\-cd\fR=\fIDIR\fR diff --git a/mise.lock b/mise.lock index fe990483ab..03e4c80b70 100644 --- a/mise.lock +++ b/mise.lock @@ -1,12 +1,9 @@ [tools.actionlint] -version = "1.7.6" +version = "1.7.7" backend = "aqua:rhysd/actionlint" [tools.actionlint.checksums] -actionlint-linux-x86_64 = "sha256:bf567ce887b8b045fdd6001411aea1971e90a49e4f5172801fb648902843c9ec" -actionlint-macos-aarch64 = "sha256:baa69aa6ae140310d9d86127d916abd42cd2ad446aef0a04f2a7fe7f54da7d67" -"actionlint_1.7.6_darwin_arm64.tar.gz" = "sha256:9a7c9cb2b627bb137ef68742eead2dd5b78f3ddc44876e84c37d323ba28b4710" -"actionlint_1.7.6_linux_amd64.tar.gz" = "sha256:5d1a70d9de15fee5371e6f9e20cc29b284e814d6ee1b882f9749e91caf716eba" +"actionlint_1.7.7_darwin_arm64.tar.gz" = "sha256:2693315b9093aeacb4ebd91a993fea54fc215057bf0da2659056b4bc033873db" [tools.bun] version = "1.1.44" diff --git a/mise.usage.kdl b/mise.usage.kdl index 3ce0eb644e..c851068455 100644 --- a/mise.usage.kdl +++ b/mise.usage.kdl @@ -2,7 +2,7 @@ min_usage_version "1.3" name mise bin mise about "The front-end to your dev env" -long_about "\nmise is a tool for managing runtime versions. https://github.com/jdx/mise\n\nIt's a replacement for tools like nvm, nodenv, rbenv, rvm, chruby, pyenv, etc.\nthat works for any language. It's also great for managing linters/tools like\njq and shellcheck.\n\nIt is inspired by asdf and uses asdf's plugin ecosystem under the hood:\nhttps://asdf-vm.com/" +long_about "mise manages dev tools, env vars, and runs tasks. https://github.com/jdx/mise" usage "Usage: mise [OPTIONS] [TASK] [COMMAND]" flag "-C --cd" help="Change directory before running command" global=#true { arg