diff --git a/.cargo/config.toml b/.cargo/config.toml index 35049cbc..cb93f952 100644 --- a/.cargo/config.toml +++ b/.cargo/config.toml @@ -1,2 +1,3 @@ [alias] xtask = "run --package xtask --" +stackablectl = "run --bin stackablectl --" diff --git a/.dockerignore b/.dockerignore index 5f53f952..7fd788f8 100644 --- a/.dockerignore +++ b/.dockerignore @@ -10,10 +10,5 @@ crate-hashes.json result image.tar -node_modules -.pnp -.pnp.* -.yarn - # We do NOT want to ignore .git because we use the `built` crate to gather the current git commit hash at built time # This means we need the .git directory in our Docker image, it will be thrown away and won't be included in the final image diff --git a/.gitattributes b/.gitattributes index 74bc5051..b29b6b3f 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,9 +1,7 @@ -web/src/api/schema.d.ts linguist-generated extra/completions/* linguist-generated crate-hashes.json linguist-generated extra/man/* linguist-generated Cargo.nix linguist-generated -yarn.lock linguist-generated nix/** linguist-generated go.sum linguist-generated gomod2nix.toml linguist-generated diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index aebd52ca..4fafd3a5 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -10,25 +10,22 @@ - Not all of these items are applicable to all PRs, the author should update this template to only leave the boxes in that are relevant - Please make sure all these things are done and tick the boxes -```[tasklist] -# Author +### Author + - [ ] Changes are OpenShift compatible - [ ] CRD changes approved - [ ] Helm chart can be installed and deployed operator works - [ ] Integration tests passed (for non trivial changes) -``` -```[tasklist] -# Reviewer +### Reviewer + - [ ] Code contains useful comments - [ ] (Integration-)Test cases added - [ ] Documentation added or updated - [ ] Changelog updated - [ ] Cargo.toml only contains references to git tags (not specific commits or branches) -``` -```[tasklist] -# Acceptance +### Acceptance + - [ ] Feature Tracker has been updated - [ ] Proper release label has been added -``` diff --git a/.github/workflows/pr_cockpit-web.yml b/.github/workflows/pr_cockpit-web.yml deleted file mode 100644 index 4847c572..00000000 --- a/.github/workflows/pr_cockpit-web.yml +++ /dev/null @@ -1,52 +0,0 @@ ---- -name: web -on: - pull_request: - paths: - - ".github/workflows/pr_cockpit-web.yml" - - "package.json" - - "yarn.lock" - - "web/**" - -jobs: - build-web: - name: Web frontend built - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0 - - uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # v4.0.2 - with: - node-version: 18 - cache: yarn - - run: yarn install --frozen-lockfile - - run: yarn --cwd web run build - - eslint: - name: Run web linting via ESLint - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0 - - uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3.6.0 - with: - node-version: 18 - cache: yarn - - run: yarn install --frozen-lockfile - - run: yarn --cwd web run lint - - prettier: - name: Validate web formatting - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0 - - uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # v4.0.2 - with: - node-version: 18 - cache: yarn - - run: yarn install --frozen-lockfile - - run: yarn --cwd web run format --check - - name: Git Diff showed uncommitted changes - if: ${{ failure() }} - uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1 - with: - script: | - core.setFailed('web/ contains unformatted code, run `yarn --cwd web run format --write` and re-commit!') diff --git a/.github/workflows/pr_cockpit.yml b/.github/workflows/pr_cockpit.yml index 0c28a782..599b4226 100644 --- a/.github/workflows/pr_cockpit.yml +++ b/.github/workflows/pr_cockpit.yml @@ -7,7 +7,6 @@ on: - ".github/workflows/pr_cockpit.yml" - "rust/stackable-cockpitd/**" - "rust/stackable-cockpit/**" - - "docs/modules/cockpit/**" - "docs/modules/ROOT/**" - "Cargo.lock" - "deploy/**" @@ -15,8 +14,8 @@ on: - "go.sum" env: - RUST_VERSION: 1.85.0 - GO_VERSION: '^1.22.5' + RUST_VERSION: 1.93.0 + GO_VERSION: '^1.26.0' CARGO_TERM_COLOR: always CARGO_INCREMENTAL: "0" CARGO_PROFILE_DEV_DEBUG: "0" @@ -52,7 +51,7 @@ jobs: toolchain: ${{ env.RUST_VERSION }} - name: Setup Rust Cache - uses: Swatinem/rust-cache@23bce251a8cd2ffc3c1075eaa2367cf899916d84 # v2.7.3 + uses: Swatinem/rust-cache@98c8021b550208e191a6a3145459bfc9fb29c4c0 # v2.8.0 with: key: pr-stackable-cockpit-chart @@ -101,24 +100,24 @@ jobs: with: toolchain: ${{ env.RUST_VERSION }} - - uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2 + - uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0 with: go-version: ${{ env.GO_VERSION }} - name: Install cosign - uses: sigstore/cosign-installer@4959ce089c160fddf62f7b42464195ba1a56d382 # v3.6.0 + uses: sigstore/cosign-installer@398d4b0eeef1380460a10c8013a76f728fb906ac # v3.9.1 - name: Install syft - uses: anchore/sbom-action/download-syft@61119d458adab75f756bc0b9e4bde25725f86a7a # v0.17.2 + uses: anchore/sbom-action/download-syft@9246b90769f852b3a8921f330c59e0b3f439d6e9 # v0.20.1 - name: Setup Rust Cache - uses: Swatinem/rust-cache@23bce251a8cd2ffc3c1075eaa2367cf899916d84 # v2.7.3 + uses: Swatinem/rust-cache@98c8021b550208e191a6a3145459bfc9fb29c4c0 # v2.8.0 with: key: pr-stackable-cockpit-chart - name: Update Version run: | - cargo install cargo-edit --version 0.11.11 + cargo install --locked cargo-edit --version 0.11.11 cargo set-version --offline --package stackable-cockpit 0.0.0-pr${{ github.event.pull_request.number }} # Recreate charts and publish charts and docker image. The "-e" is needed as we want to override the @@ -149,7 +148,7 @@ jobs: OCI_REGISTRY_SDP_CHARTS_USERNAME: "robot$sdp-charts+github-action-build" steps: - name: Install cosign - uses: sigstore/cosign-installer@4959ce089c160fddf62f7b42464195ba1a56d382 # v3.6.0 + uses: sigstore/cosign-installer@398d4b0eeef1380460a10c8013a76f728fb906ac # v3.9.1 - name: Checkout uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 with: diff --git a/.github/workflows/pr_general.yml b/.github/workflows/pr_general.yml index b09e837d..e5d6dccf 100644 --- a/.github/workflows/pr_general.yml +++ b/.github/workflows/pr_general.yml @@ -4,8 +4,8 @@ name: Pull Request General on: workflow_call env: - RUST_VERSION: 1.85.0 - GO_VERSION: '^1.22.5' + RUST_VERSION: 1.93.0 + GO_VERSION: '^1.26.0' CARGO_TERM_COLOR: always CARGO_INCREMENTAL: "0" CARGO_PROFILE_DEV_DEBUG: "0" @@ -28,17 +28,11 @@ jobs: with: toolchain: ${{ env.RUST_VERSION }} - - uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2 + - uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0 with: go-version: ${{ env.GO_VERSION }} - - uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # v4.0.2 - with: - node-version: 18 - cache: yarn - - run: yarn install --frozen-lockfile - - - uses: Swatinem/rust-cache@a95ba195448af2da9b00fb742d14ffaaf3c21f43 # v2.7.0 + - uses: Swatinem/rust-cache@98c8021b550208e191a6a3145459bfc9fb29c4c0 # v2.8.0 with: key: udeps cache-all-crates: "true" @@ -59,7 +53,7 @@ jobs: - uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0 with: submodules: recursive - - uses: EmbarkStudios/cargo-deny-action@3f4a782664881cf5725d0ffd23969fcce89fd868 # v1.6.3 + - uses: EmbarkStudios/cargo-deny-action@3fd3802e88374d3fe9159b834c7714ec57d6c979 # v2.0.15 with: command: check ${{ matrix.checks }} @@ -76,19 +70,14 @@ jobs: toolchain: ${{ env.RUST_VERSION }} components: rustfmt - - uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2 + - uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0 with: go-version: ${{ env.GO_VERSION }} - - uses: Swatinem/rust-cache@23bce251a8cd2ffc3c1075eaa2367cf899916d84 # v2.7.3 + - uses: Swatinem/rust-cache@98c8021b550208e191a6a3145459bfc9fb29c4c0 # v2.8.0 with: key: doc - - uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # v4.0.2 - with: - node-version: 18 - cache: yarn - - run: yarn install --frozen-lockfile - run: cargo doc --document-private-items run_tests: @@ -103,19 +92,14 @@ jobs: with: toolchain: ${{ env.RUST_VERSION }} - - uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2 + - uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0 with: go-version: ${{ env.GO_VERSION }} - - uses: Swatinem/rust-cache@23bce251a8cd2ffc3c1075eaa2367cf899916d84 # v2.7.3 + - uses: Swatinem/rust-cache@98c8021b550208e191a6a3145459bfc9fb29c4c0 # v2.8.0 with: key: test - - uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # v4.0.2 - with: - node-version: 18 - cache: yarn - - run: yarn install --frozen-lockfile - run: cargo test tests_passed: diff --git a/.github/workflows/pr_pre-commit.yml b/.github/workflows/pr_pre-commit.yml index 6e3ca2fb..581c8056 100644 --- a/.github/workflows/pr_pre-commit.yml +++ b/.github/workflows/pr_pre-commit.yml @@ -3,10 +3,11 @@ name: pre-commit on: pull_request: + merge_group: env: CARGO_TERM_COLOR: always - RUST_TOOLCHAIN_VERSION: "nightly-2025-01-15" + RUST_TOOLCHAIN_VERSION: "nightly-2025-05-26" HADOLINT_VERSION: "v1.17.6" NIX_VERSION: "2.25.2" @@ -17,11 +18,6 @@ jobs: - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 with: fetch-depth: 0 - - uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # v4.0.2 - with: - node-version: 18 - cache: yarn - - run: yarn install --frozen-lockfile - uses: stackabletech/actions/run-pre-commit@5901c3b1455488820c4be367531e07c3c3e82538 # v0.4.0 with: rust: ${{ env.RUST_TOOLCHAIN_VERSION }} diff --git a/.github/workflows/pr_stackablectl.yml b/.github/workflows/pr_stackablectl.yml index 887086ae..8ca9cea7 100644 --- a/.github/workflows/pr_stackablectl.yml +++ b/.github/workflows/pr_stackablectl.yml @@ -14,8 +14,8 @@ on: - "extra/**" env: - RUST_VERSION: 1.85.0 - GO_VERSION: '^1.22.5' + RUST_VERSION: 1.93.0 + GO_VERSION: '^1.26.0' CARGO_TERM_COLOR: always CARGO_INCREMENTAL: "0" CARGO_PROFILE_DEV_DEBUG: "0" @@ -37,10 +37,19 @@ jobs: fail-fast: false matrix: include: + # We intentionally don't use ubuntu-latest because we want to build against an old glibc version. + # (18.04 has glibc 2.27, 20.04 has glibc 2.31, 22.04 has glibc 2.35, 24.04 has glibc 2.39). + # + # A Rust binary will only run on systems that have the same or a newer glibc version! + # By building on a "modern" version we break the pre-build binaries for everyone that isn't + # (e.g. debian is normally behind Ubuntu). + # + # To achieve this we pick the oldest Ubuntu version that works out of the box. - target: x86_64-unknown-linux-gnu - os: ubuntu-24.04 + os: ubuntu-22.04 - target: aarch64-unknown-linux-gnu - os: ubuntu-24.04-arm + os: ubuntu-22.04-arm + # Technically it would be better to pin this versions, but so far this didn't cause any problems - target: x86_64-apple-darwin os: macos-latest - target: aarch64-apple-darwin @@ -56,11 +65,11 @@ jobs: toolchain: ${{ env.RUST_VERSION }} targets: ${{ matrix.target }} - - uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2 + - uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0 with: go-version: ${{ env.GO_VERSION }} - - uses: Swatinem/rust-cache@23bce251a8cd2ffc3c1075eaa2367cf899916d84 # v2.7.3 + - uses: Swatinem/rust-cache@98c8021b550208e191a6a3145459bfc9fb29c4c0 # v2.8.0 with: key: build-stackablectl-${{ matrix.target }} diff --git a/.github/workflows/release_stackablectl.yml b/.github/workflows/release_stackablectl.yml index 136ab21c..2a90b4b4 100644 --- a/.github/workflows/release_stackablectl.yml +++ b/.github/workflows/release_stackablectl.yml @@ -7,7 +7,8 @@ on: - "stackablectl-[0-9]+.[0-9]+.[0-9]+**" env: - RUST_VERSION: 1.85.0 + CARGO_CYCLONEDX_VERSION: 0.5.7 + RUST_VERSION: 1.93.0 CARGO_TERM_COLOR: always CARGO_INCREMENTAL: "0" CARGO_PROFILE_DEV_DEBUG: "0" @@ -46,18 +47,29 @@ jobs: toolchain: ${{ env.RUST_VERSION }} targets: ${{ matrix.target }} - - uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2 + - uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0 with: go-version: '^1.22.2' + - name: Install cargo-cyclonedx + run: cargo install --locked cargo-cyclonedx@${{ env.CARGO_CYCLONEDX_VERSION }} + - name: Build Binary if: matrix.os != 'windows-latest' run: cargo build --target ${{ matrix.target }} --release --package stackablectl + - name: Generate SBOM + run: cargo cyclonedx --all --spec-version 1.5 --describe binaries + - name: Rename Binary run: mv target/${{ matrix.target }}/release/stackablectl${{ matrix.file-suffix }} stackablectl-${{ matrix.target }}${{ matrix.file-suffix }} - - name: Upload Release Binary - uses: softprops/action-gh-release@69320dbe05506a9a39fc8ae11030b214ec2d1f87 # v2.0.5 + - name: Rename SBOM + run: mv rust/stackablectl/stackablectl_bin.cdx.xml stackablectl-${{ matrix.target }}.cdx.xml + + - name: Upload Release Binary and SBOM + uses: softprops/action-gh-release@72f2c25fcb47643c292f7107632f7a47c1df5cd8 # v2.3.2 with: - files: stackablectl-${{ matrix.target }}${{ matrix.file-suffix }} + files: | + stackablectl-${{ matrix.target }}${{ matrix.file-suffix }} + stackablectl-${{ matrix.target }}.cdx.xml diff --git a/.gitignore b/.gitignore index 40b2fd66..3cc0380c 100644 --- a/.gitignore +++ b/.gitignore @@ -1,15 +1,10 @@ # Rust /target -# Frontend -/node_modules htpasswd -.yarn # Misc /demos /stacks /result .env -.pnp -.pnp.* diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 5342909d..62bd2bf5 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -1,5 +1,6 @@ --- fail_fast: true +exclude: ^(Cargo\.nix|crate-hashes\.json|nix/.*)$ default_language_version: node: system @@ -10,7 +11,7 @@ repos: hooks: - id: trailing-whitespace # Generated file - exclude: ^web/src/api/schema\.d\.ts|extra/.*$ + exclude: ^extra/.*$ - id: end-of-file-fixer exclude: Cargo.nix - id: detect-aws-credentials @@ -68,14 +69,6 @@ repos: stages: [pre-commit, pre-merge-commit, manual] pass_filenames: false - - id: gen-openapi - name: gen-openapi - files: ^web/ - language: system - entry: cargo xtask gen-openapi - stages: [pre-commit, pre-merge-commit, manual] - pass_filenames: false - - id: gen-ctl-readme name: gen-ctl-readme files: ^rust/stackablectl/ @@ -102,8 +95,16 @@ repos: - id: cargo-rustfmt name: cargo-rustfmt + files: \.rs$ language: system # Pinning to a specific rustc version, so that we get consistent formatting - entry: cargo +nightly-2025-01-15 fmt --all -- --check + entry: cargo +nightly-2025-05-26 fmt --all -- --check stages: [pre-commit] pass_filenames: false + + - id: ./scripts/verify_release_notes + name: ./scripts/verify_release_notes + language: system + entry: ./scripts/verify_release_notes.sh + stages: [pre-commit, pre-merge-commit, manual] + pass_filenames: false diff --git a/.prettierignore b/.prettierignore deleted file mode 100644 index 438e8979..00000000 --- a/.prettierignore +++ /dev/null @@ -1 +0,0 @@ -web/src/api/schema.d.ts diff --git a/.vscode/settings.json b/.vscode/settings.json index c5d5fdae..82d38ab9 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -3,7 +3,7 @@ "rust-analyzer.cargo.features": "all", "rust-analyzer.rustfmt.overrideCommand": [ "rustfmt", - "+nightly-2025-01-15", + "+nightly-2025-10-23", "--edition", "2024", "--" diff --git a/Cargo.lock b/Cargo.lock index 25232f55..600b48dd 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2,60 +2,39 @@ # It is not intended for manual editing. version = 4 -[[package]] -name = "addr2line" -version = "0.22.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e4503c46a5c0c7844e948c9a4d6acd9f50cccb4de1c48eb9e291ea17470c678" -dependencies = [ - "gimli", -] - -[[package]] -name = "adler" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" - [[package]] name = "adler2" -version = "2.0.0" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627" +checksum = "320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa" [[package]] name = "ahash" -version = "0.8.11" +version = "0.8.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" +checksum = "5a15f179cd60c4584b8a8c596927aadc462e27f2ca70c04e0071964a73ba7a75" dependencies = [ "cfg-if", - "getrandom 0.2.15", + "getrandom 0.3.4", "once_cell", "version_check", - "zerocopy 0.7.35", + "zerocopy", ] [[package]] name = "aho-corasick" -version = "1.1.3" +version = "1.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" +checksum = "ddd31a130427c27518df266943a5308ed92d4b226cc639f5a8f1002816174301" dependencies = [ "memchr", ] [[package]] name = "allocator-api2" -version = "0.2.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f" - -[[package]] -name = "android-tzdata" -version = "0.1.1" +version = "0.2.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" +checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" [[package]] name = "android_system_properties" @@ -68,28 +47,28 @@ dependencies = [ [[package]] name = "ansi-str" -version = "0.8.0" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1cf4578926a981ab0ca955dc023541d19de37112bc24c1a197bd806d3d86ad1d" +checksum = "060de1453b69f46304b28274f382132f4e72c55637cf362920926a70d090890d" dependencies = [ "ansitok", ] [[package]] name = "ansitok" -version = "0.2.0" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "220044e6a1bb31ddee4e3db724d29767f352de47445a6cd75e1a173142136c83" +checksum = "c0a8acea8c2f1c60f0a92a8cd26bf96ca97db56f10bbcab238bbe0cceba659ee" dependencies = [ "nom", - "vte 0.10.1", + "vte 0.14.1", ] [[package]] name = "anstream" -version = "0.6.15" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64e15c1ab1f89faffbf04a634d5e1962e9074f2741eef6d97f3c4e322426d526" +checksum = "824a212faf96e9acacdbd09febd34438f8f711fb84e09a8916013cd7815ca28d" dependencies = [ "anstyle", "anstyle-parse", @@ -102,59 +81,54 @@ dependencies = [ [[package]] name = "anstyle" -version = "1.0.8" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bec1de6f59aedf83baf9ff929c98f2ad654b97c9510f4e70cf6f661d49fd5b1" +checksum = "940b3a0ca603d1eade50a4846a2afffd5ef57a9feac2c0e2ec2e14f9ead76000" [[package]] name = "anstyle-parse" -version = "0.2.5" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb47de1e80c2b463c735db5b217a0ddc39d612e7ac9e2e96a5aed1f57616c1cb" +checksum = "52ce7f38b242319f7cabaa6813055467063ecdc9d355bbb4ce0c68908cd8130e" dependencies = [ "utf8parse", ] [[package]] name = "anstyle-query" -version = "1.1.1" +version = "1.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d36fc52c7f6c869915e99412912f22093507da8d9e942ceaf66fe4b7c14422a" +checksum = "40c48f72fd53cd289104fc64099abca73db4166ad86ea0b4341abe65af83dadc" dependencies = [ - "windows-sys 0.52.0", + "windows-sys 0.61.2", ] [[package]] name = "anstyle-wincon" -version = "3.0.4" +version = "3.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5bf74e1b6e971609db8ca7a9ce79fd5768ab6ae46441c572e46cf596f59e57f8" +checksum = "291e6a250ff86cd4a820112fb8898808a366d8f9f58ce16d1f538353ad55747d" dependencies = [ "anstyle", - "windows-sys 0.52.0", + "once_cell_polyfill", + "windows-sys 0.61.2", ] [[package]] name = "anyhow" -version = "1.0.97" +version = "1.0.102" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dcfed56ad506cb2c684a14971b8861fdc3baaaae314b9e5f9bb532cbe3ba7a4f" +checksum = "7f202df86484c868dbad7eaa557ef785d5c66295e41b460ef922eca0723b842c" [[package]] name = "arbitrary" -version = "1.3.2" +version = "1.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d5a26814d8dcb93b0e5a0ff3c6d80a8843bafb21b39e8e18a6f05471870e110" +checksum = "c3d036a3c4ab069c7b410a2ce876bd74808d2d0888a82667669f8e783a898bf1" dependencies = [ "derive_arbitrary", ] -[[package]] -name = "arrayvec" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b" - [[package]] name = "arrayvec" version = "0.7.6" @@ -163,9 +137,9 @@ checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" [[package]] name = "async-broadcast" -version = "0.7.1" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "20cd0e2e25ea8e5f7e9df04578dc6cf5c83577fd09b1a46aaf5c85e1c33f2a7e" +checksum = "435a87a52755b8f27fcf321ac4f04b2802e337c8c4872923137471ec39c37532" dependencies = [ "event-listener", "event-listener-strategy", @@ -173,21 +147,11 @@ dependencies = [ "pin-project-lite", ] -[[package]] -name = "async-socks5" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8da2537846e16b96d2972ee52a3b355663872a1a687ce6d57a3b6f6b6a181c89" -dependencies = [ - "thiserror 1.0.63", - "tokio", -] - [[package]] name = "async-stream" -version = "0.3.5" +version = "0.3.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd56dd203fef61ac097dd65721a419ddccb106b2d2b70ba60a6b529f03961a51" +checksum = "0b5a71a6f37880a80d1d7f19efd781e4b5de42c88f0722cc13bcb6cc2cfe8476" dependencies = [ "async-stream-impl", "futures-core", @@ -196,24 +160,24 @@ dependencies = [ [[package]] name = "async-stream-impl" -version = "0.3.5" +version = "0.3.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193" +checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.117", ] [[package]] name = "async-trait" -version = "0.1.82" +version = "0.1.89" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a27b8a3a6e1a44fa4c8baf1f653e4172e81486d4941f2237e20dc2d0cf4ddff1" +checksum = "9035ad2d096bed7955a320ee7e2230574d28fd3c3a0f186cbea1ff3c7eed5dbb" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.117", ] [[package]] @@ -224,51 +188,39 @@ checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" [[package]] name = "autocfg" -version = "1.3.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0" +checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8" [[package]] -name = "axum" -version = "0.7.5" +name = "aws-lc-rs" +version = "1.16.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a6c9af12842a67734c9a2e355436e5d03b22383ed60cf13cd0c18fbfe3dcbcf" +checksum = "a054912289d18629dc78375ba2c3726a3afe3ff71b4edba9dedfca0e3446d1fc" dependencies = [ - "async-trait", - "axum-core 0.4.3", - "bytes", - "futures-util", - "http", - "http-body", - "http-body-util", - "hyper", - "hyper-util", - "itoa", - "matchit 0.7.3", - "memchr", - "mime", - "percent-encoding", - "pin-project-lite", - "rustversion", - "serde", - "serde_json", - "serde_path_to_error", - "serde_urlencoded", - "sync_wrapper 1.0.1", - "tokio", - "tower 0.4.13", - "tower-layer", - "tower-service", - "tracing", + "aws-lc-sys", + "zeroize", +] + +[[package]] +name = "aws-lc-sys" +version = "0.39.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "83a25cf98105baa966497416dbd42565ce3a8cf8dbfd59803ec9ad46f3126399" +dependencies = [ + "cc", + "cmake", + "dunce", + "fs_extra", ] [[package]] name = "axum" -version = "0.8.3" +version = "0.8.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "de45108900e1f9b9242f7f2e254aa3e2c029c921c258fe9e6b4217eeebd54288" +checksum = "8b52af3cb4058c895d37317bb27508dccc8e5f2d39454016b297bf4a400597b8" dependencies = [ - "axum-core 0.5.2", + "axum-core", "bytes", "form_urlencoded", "futures-util", @@ -278,40 +230,18 @@ dependencies = [ "hyper", "hyper-util", "itoa", - "matchit 0.8.4", + "matchit", "memchr", "mime", "percent-encoding", "pin-project-lite", - "rustversion", - "serde", + "serde_core", "serde_json", "serde_path_to_error", "serde_urlencoded", - "sync_wrapper 1.0.1", + "sync_wrapper", "tokio", - "tower 0.5.2", - "tower-layer", - "tower-service", - "tracing", -] - -[[package]] -name = "axum-core" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a15c63fd72d41492dc4f497196f5da1fb04fb7529e631d73630d1b491e47a2e3" -dependencies = [ - "async-trait", - "bytes", - "futures-util", - "http", - "http-body", - "http-body-util", - "mime", - "pin-project-lite", - "rustversion", - "sync_wrapper 0.1.2", + "tower", "tower-layer", "tower-service", "tracing", @@ -319,9 +249,9 @@ dependencies = [ [[package]] name = "axum-core" -version = "0.5.2" +version = "0.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68464cd0412f486726fb3373129ef5d2993f90c34bc2bc1c1e9943b2f4fc7ca6" +checksum = "08c78f31d7b1291f7ee735c1c6780ccde7785daae9a9206026862dab7d8792d1" dependencies = [ "bytes", "futures-core", @@ -330,8 +260,7 @@ dependencies = [ "http-body-util", "mime", "pin-project-lite", - "rustversion", - "sync_wrapper 1.0.1", + "sync_wrapper", "tower-layer", "tower-service", "tracing", @@ -339,13 +268,14 @@ dependencies = [ [[package]] name = "axum-extra" -version = "0.9.3" +version = "0.12.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0be6ea09c9b96cb5076af0de2e383bd2bc0c18f827cf1967bdd353e0b910d733" +checksum = "fef252edff26ddba56bbcdf2ee3307b8129acb86f5749b68990c168a6fcc9c76" dependencies = [ - "axum 0.7.5", - "axum-core 0.4.3", + "axum", + "axum-core", "bytes", + "futures-core", "futures-util", "headers", "http", @@ -353,8 +283,6 @@ dependencies = [ "http-body-util", "mime", "pin-project-lite", - "serde", - "tower 0.4.13", "tower-layer", "tower-service", "tracing", @@ -362,36 +290,15 @@ dependencies = [ [[package]] name = "backon" -version = "1.5.0" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd0b50b1b78dbadd44ab18b3c794e496f3a139abb9fbc27d9c94c4eebbb96496" +checksum = "cffb0e931875b666fc4fcb20fee52e9bbd1ef836fd9e9e04ec21555f9f85f7ef" dependencies = [ "fastrand", "gloo-timers", "tokio", ] -[[package]] -name = "backtrace" -version = "0.3.73" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5cc23269a4f8976d0a4d2e7109211a419fe30e8d88d677cd60b6bc79c5732e0a" -dependencies = [ - "addr2line", - "cc", - "cfg-if", - "libc", - "miniz_oxide 0.7.4", - "object", - "rustc-demangle", -] - -[[package]] -name = "base64" -version = "0.21.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" - [[package]] name = "base64" version = "0.22.1" @@ -400,24 +307,24 @@ checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" [[package]] name = "bcrypt" -version = "0.15.1" +version = "0.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e65938ed058ef47d92cf8b346cc76ef48984572ade631927e9937b5ffc7662c7" +checksum = "523ab528ce3a7ada6597f8ccf5bd8d85ebe26d5edf311cad4d1d3cfb2d357ac6" dependencies = [ - "base64 0.22.1", + "base64", "blowfish", - "getrandom 0.2.15", + "getrandom 0.4.2", "subtle", "zeroize", ] [[package]] name = "bindgen" -version = "0.70.1" +version = "0.72.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f49d8fed880d473ea71efb9bf597651e77201bdd4893efe54c9e5d65ae04ce6f" +checksum = "993776b509cfb49c750f11b8f07a46fa23e0a1386ffc01fb1e7d343efc387895" dependencies = [ - "bitflags 2.6.0", + "bitflags", "cexpr", "clang-sys", "itertools 0.13.0", @@ -426,37 +333,31 @@ dependencies = [ "proc-macro2", "quote", "regex", - "rustc-hash 1.1.0", + "rustc-hash", "shlex", - "syn 2.0.87", + "syn 2.0.117", ] [[package]] name = "bit-set" -version = "0.5.3" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1" +checksum = "08807e080ed7f9d5433fa9b275196cfc35414f66a0c79d864dc51a0d825231a3" dependencies = [ "bit-vec", ] [[package]] name = "bit-vec" -version = "0.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" - -[[package]] -name = "bitflags" -version = "1.3.2" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" +checksum = "5e764a1d40d510daf35e07be9eb06e75770908c27d411ee6c92109c9840eaaf7" [[package]] name = "bitflags" -version = "2.6.0" +version = "2.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" +checksum = "843867be96c8daad0d758b57df9392b6d8d271134fce549de6ce169ff98a92af" [[package]] name = "block-buffer" @@ -479,19 +380,25 @@ dependencies = [ [[package]] name = "bstr" -version = "1.10.0" +version = "1.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "40723b8fb387abc38f4f4a37c09073622e41dd12327033091ef8950659e6dc0c" +checksum = "63044e1ae8e69f3b5a92c736ca6269b8d12fa7efe39bf34ddb06d102cf0e2cab" dependencies = [ "memchr", "serde", ] +[[package]] +name = "built" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f4ad8f11f288f48ca24471bbd51ac257aaeaaa07adae295591266b792902ae64" + [[package]] name = "bumpalo" -version = "3.16.0" +version = "3.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" +checksum = "5d20789868f4b01b2f2caec9f5c4e0213b41e3e5702a50157d699ae31ced2fcb" [[package]] name = "byteorder" @@ -501,19 +408,28 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "bytes" -version = "1.10.1" +version = "1.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d71b6127be86fdcfddb610f7182ac57211d4b18a3e9c82eb2d17662f2227ad6a" +checksum = "1e748733b7cbc798e1434b6ac524f0c1ff2ab456fe201501e6497c8417a4fc33" [[package]] name = "cc" -version = "1.1.15" +version = "1.2.59" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57b6a275aa2903740dc87da01c62040406b8812552e97129a63ea8850a17c6e6" +checksum = "b7a4d3ec6524d28a329fc53654bbadc9bdd7b0431f5d65f1a56ffb28a1ee5283" dependencies = [ + "find-msvc-tools", + "jobserver", + "libc", "shlex", ] +[[package]] +name = "cesu8" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" + [[package]] name = "cexpr" version = "0.6.0" @@ -525,21 +441,36 @@ dependencies = [ [[package]] name = "cfg-if" -version = "1.0.0" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801" + +[[package]] +name = "cfg_aliases" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" + +[[package]] +name = "chacha20" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" +checksum = "6f8d983286843e49675a4b7a2d174efe136dc93a18d69130dd18198a6c167601" +dependencies = [ + "cfg-if", + "cpufeatures 0.3.0", + "rand_core 0.10.0", +] [[package]] name = "chrono" -version = "0.4.38" +version = "0.4.44" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401" +checksum = "c673075a2e0e5f4a1dde27ce9dee1ea4558c7ffe648f576438a20ca1d2acc4b0" dependencies = [ - "android-tzdata", "iana-time-zone", "num-traits", - "serde", - "windows-targets 0.52.6", + "windows-link", ] [[package]] @@ -587,9 +518,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.35" +version = "4.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8aa86934b44c19c50f87cc2790e19f54f7a67aedb64101c2e1a2e5ecfb73944" +checksum = "b193af5b67834b676abd72466a96c1024e6a6ad978a1f484bd90b85c94041351" dependencies = [ "clap_builder", "clap_derive", @@ -597,9 +528,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.35" +version = "4.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2414dbb2dd0695280da6ea9261e327479e9d37b0630f6b53ba2a11c60c679fd9" +checksum = "714a53001bf66416adb0e2ef5ac857140e7dc3a0c48fb28b2f10762fc4b5069f" dependencies = [ "anstream", "anstyle", @@ -609,18 +540,18 @@ dependencies = [ [[package]] name = "clap_complete" -version = "4.5.24" +version = "4.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d7db6eca8c205649e8d3ccd05aa5042b1800a784e56bc7c43524fde8abbfa9b" +checksum = "19c9f1dde76b736e3681f28cec9d5a61299cbaae0fce80a68e43724ad56031eb" dependencies = [ "clap", ] [[package]] name = "clap_complete_nushell" -version = "4.5.4" +version = "4.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "315902e790cc6e5ddd20cbd313c1d0d49db77f191e149f96397230fb82a17677" +checksum = "fbb9e9715d29a754b468591be588f6b926f5b0a1eb6a8b62acabeb66ff84d897" dependencies = [ "clap", "clap_complete", @@ -628,50 +559,68 @@ dependencies = [ [[package]] name = "clap_derive" -version = "4.5.32" +version = "4.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09176aae279615badda0765c0c0b3f6ed53f4709118af73cf4655d85d1530cd7" +checksum = "1110bd8a634a1ab8cb04345d8d878267d57c3cf1b38d91b71af6686408bbca6a" dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.117", ] [[package]] name = "clap_lex" -version = "0.7.4" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f46ad14479a25103f283c0f10005961cf086d8dc42205bb44c46ac563475dca6" +checksum = "c8d4a3bb8b1e0c1050499d1815f5ab16d04f0959b233085fb31653fbfc9d98f9" [[package]] name = "clap_mangen" -version = "0.2.23" +version = "0.2.33" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f17415fd4dfbea46e3274fcd8d368284519b358654772afb700dc2e8d2b24eeb" +checksum = "7e30ffc187e2e3aeafcd1c6e2aa416e29739454c0ccaa419226d5ecd181f2d78" dependencies = [ "clap", "roff", ] +[[package]] +name = "cmake" +version = "0.1.58" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c0f78a02292a74a88ac736019ab962ece0bc380e3f977bf72e376c5d78ff0678" +dependencies = [ + "cc", +] + [[package]] name = "colorchoice" -version = "1.0.2" +version = "1.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d07550c9036bf2ae0c684c4297d503f838287c83c53686d05370d0e139ae570" + +[[package]] +name = "combine" +version = "4.6.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3fd119d74b830634cea2a0f58bbd0d54540518a14397557951e79340abc28c0" +checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd" +dependencies = [ + "bytes", + "memchr", +] [[package]] name = "comfy-table" -version = "7.1.1" +version = "7.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b34115915337defe99b2aff5c2ce6771e5fbc4079f4b506301f5cf394c8452f7" +checksum = "958c5d6ecf1f214b4c2bbbbf6ab9523a864bd136dcf71a7e8904799acfe1ad47" dependencies = [ "ansi-str", "console", "crossterm", - "strum 0.26.3", - "strum_macros 0.26.4", - "unicode-width 0.1.13", + "unicode-segmentation", + "unicode-width", ] [[package]] @@ -685,22 +634,21 @@ dependencies = [ [[package]] name = "console" -version = "0.15.8" +version = "0.16.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e1f83fc076bd6dd27517eacdf25fef6c4dfe5f1d7448bafaaf3a26f13b5e4eb" +checksum = "d64e8af5551369d19cf50138de61f1c42074ab970f74e99be916646777f8fc87" dependencies = [ "encode_unicode", - "lazy_static", "libc", - "unicode-width 0.1.13", - "windows-sys 0.52.0", + "unicode-width", + "windows-sys 0.61.2", ] [[package]] name = "const_format" -version = "0.2.34" +version = "0.2.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "126f97965c8ad46d6d9163268ff28432e8f6a1196a55578867832e3049df63dd" +checksum = "7faa7469a93a566e9ccc1c73fe783b4a65c274c5ace346038dca9c39fe0030ad" dependencies = [ "const_format_proc_macros", ] @@ -718,18 +666,27 @@ dependencies = [ [[package]] name = "convert_case" -version = "0.8.0" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baaaa0ecca5b51987b9423ccdc971514dd8b0bb7b4060b983d3664dad3f1f89f" +checksum = "affbf0190ed2caf063e3def54ff444b449371d55c58e513a95ab98eca50adb49" dependencies = [ "unicode-segmentation", ] +[[package]] +name = "convert_case_extras" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "589c70f0faf8aa9d17787557d5eae854d7755cac50f5c3d12c81d3d57661cebb" +dependencies = [ + "convert_case", +] + [[package]] name = "core-foundation" -version = "0.9.4" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" +checksum = "b2a6cd9ae233e7f62ba4e9353e81a88df7fc8a5987b8d445b4d90c879bd156f6" dependencies = [ "core-foundation-sys", "libc", @@ -743,36 +700,45 @@ checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" [[package]] name = "cpufeatures" -version = "0.2.13" +version = "0.2.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280" +dependencies = [ + "libc", +] + +[[package]] +name = "cpufeatures" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51e852e6dc9a5bed1fae92dd2375037bf2b768725bf3be87811edee3249d09ad" +checksum = "8b2a41393f66f16b0823bb79094d54ac5fbd34ab292ddafb9a0456ac9f87d201" dependencies = [ "libc", ] [[package]] name = "crc32fast" -version = "1.4.2" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3" +checksum = "9481c1c90cbf2ac953f07c8d4a58aa3945c425b7185c9154d67a65e4230da511" dependencies = [ "cfg-if", ] [[package]] name = "crossbeam-channel" -version = "0.5.13" +version = "0.5.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33480d6946193aa8033910124896ca395333cae7e2d1113d1fef6c3272217df2" +checksum = "82b8f8f868b36967f9606790d1903570de9ceaf870a7bf9fbbd3016d636a2cb2" dependencies = [ "crossbeam-utils", ] [[package]] name = "crossbeam-deque" -version = "0.8.5" +version = "0.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d" +checksum = "9dd111b7b7f7d55b72c0a6ae361660ee5853c9af73f70c3c2ef6858b950e2e51" dependencies = [ "crossbeam-epoch", "crossbeam-utils", @@ -789,20 +755,21 @@ dependencies = [ [[package]] name = "crossbeam-utils" -version = "0.8.20" +version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80" +checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28" [[package]] name = "crossterm" -version = "0.27.0" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f476fe445d41c9e991fd07515a6f463074b782242ccf4a5b7b1d1012e70824df" +checksum = "d8b9f2e4c67f833b660cdb0a3523065869fb35570177239812ed4c905aeff87b" dependencies = [ - "bitflags 2.6.0", + "bitflags", "crossterm_winapi", - "libc", + "document-features", "parking_lot", + "rustix", "winapi", ] @@ -817,9 +784,9 @@ dependencies = [ [[package]] name = "crypto-common" -version = "0.1.6" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" +checksum = "78c8292055d1c1df0cce5d180393dc8cce0abec0a7102adb6c7b1eef6016d60a" dependencies = [ "generic-array", "typenum", @@ -827,9 +794,9 @@ dependencies = [ [[package]] name = "darling" -version = "0.20.10" +version = "0.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f63b86c8a8826a49b8c21f08a2d07338eec8d900540f8630dc76284be802989" +checksum = "25ae13da2f202d56bd7f91c25fba009e7717a1e4a1cc98a76d844b65ae912e9d" dependencies = [ "darling_core", "darling_macro", @@ -837,71 +804,103 @@ dependencies = [ [[package]] name = "darling_core" -version = "0.20.10" +version = "0.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95133861a8032aaea082871032f5815eb9e98cef03fa916ab4500513994df9e5" +checksum = "9865a50f7c335f53564bb694ef660825eb8610e0a53d3e11bf1b0d3df31e03b0" dependencies = [ - "fnv", "ident_case", "proc-macro2", "quote", "strsim", - "syn 2.0.87", + "syn 2.0.117", ] [[package]] name = "darling_macro" -version = "0.20.10" +version = "0.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" +checksum = "ac3984ec7bd6cfa798e62b4a642426a5be0e68f9401cfc2a01e3fa9ea2fcdb8d" dependencies = [ "darling_core", "quote", - "syn 2.0.87", + "syn 2.0.117", ] [[package]] name = "data-encoding" -version = "2.6.0" +version = "2.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2" +checksum = "d7a1e2f27636f116493b8b860f5546edb47c8d8f8ea73e1d2a20be88e28d1fea" [[package]] name = "delegate" -version = "0.13.3" +version = "0.13.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9b6483c2bbed26f97861cf57651d4f2b731964a28cd2257f934a4b452480d21" +checksum = "780eb241654bf097afb00fc5f054a09b687dad862e485fdcf8399bb056565370" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.117", ] [[package]] name = "deranged" -version = "0.3.11" +version = "0.5.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4" +checksum = "7cd812cc2bc1d69d4764bd80df88b4317eaef9e773c75226407d9bc0876b211c" dependencies = [ "powerfmt", ] [[package]] name = "derive_arbitrary" -version = "1.3.2" +version = "1.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e567bd82dcff979e4b03460c307b3cdc9e96fde3d73bed1496d2bc75d9dd62a" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.117", +] + +[[package]] +name = "derive_more" +version = "2.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d751e9e49156b02b44f9c1815bcb94b984cdcc4396ecc32521c739452808b134" +dependencies = [ + "derive_more-impl", +] + +[[package]] +name = "derive_more-impl" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67e77553c4162a157adbf834ebae5b415acbecbeafc7a74b0e886657506a7611" +checksum = "799a97264921d8623a957f6c3b9011f3b5492f557bbb7a5a19b7fa6d06ba8dcb" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "rustc_version", + "syn 2.0.117", ] [[package]] name = "deunicode" -version = "1.6.0" +version = "1.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "abd57806937c9cc163efc8ea3910e00a62e2aeb0b8119f1793a978088f8f6b04" + +[[package]] +name = "dialoguer" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "339544cc9e2c4dc3fc7149fd630c5f22263a4fdf18a98afd0075784968b5cf00" +checksum = "25f104b501bf2364e78d0d3974cbc774f738f5865306ed128e1e0d7499c0ad96" +dependencies = [ + "console", + "shell-words", + "tempfile", + "zeroize", +] [[package]] name = "digest" @@ -915,23 +914,23 @@ dependencies = [ [[package]] name = "directories" -version = "5.0.1" +version = "6.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a49173b84e034382284f27f1af4dcbbd231ffa358c0fe316541a7337f376a35" +checksum = "16f5094c54661b38d03bd7e50df373292118db60b585c08a411c6d840017fe7d" dependencies = [ "dirs-sys", ] [[package]] name = "dirs-sys" -version = "0.4.1" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "520f05a5cbd335fae5a99ff7a6ab8627577660ee5cfd6a94a6a929b52ff0321c" +checksum = "e01a3366d27ee9890022452ee61b2b63a67e6f13f58900b651ff5665f0bb1fab" dependencies = [ "libc", "option-ext", "redox_users", - "windows-sys 0.48.0", + "windows-sys 0.61.2", ] [[package]] @@ -942,14 +941,14 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.117", ] [[package]] name = "doc-comment" -version = "0.3.3" +version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10" +checksum = "780955b8b195a21ab8e4ac6b60dd1dbdcec1dc6c51c0617964b08c81785e12c9" [[package]] name = "dockerfile-parser" @@ -965,17 +964,32 @@ dependencies = [ "snafu 0.6.10", ] +[[package]] +name = "document-features" +version = "0.2.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d4b8a88685455ed29a21542a33abd9cb6510b6b129abadabdcef0f4c55bc8f61" +dependencies = [ + "litrs", +] + [[package]] name = "dotenvy" version = "0.15.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1aaf95b3e5c8f23aa320147307562d361db0ae0d51242340f558153b4eb2439b" +[[package]] +name = "dunce" +version = "1.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813" + [[package]] name = "dyn-clone" -version = "1.0.17" +version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125" +checksum = "d0881ea181b1df73ff77ffaaf9c7544ecc11e82fba9b5f27b262a3c73a332555" [[package]] name = "educe" @@ -986,26 +1000,26 @@ dependencies = [ "enum-ordinalize", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.117", ] [[package]] name = "either" -version = "1.13.0" +version = "1.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0" +checksum = "48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719" [[package]] name = "encode_unicode" -version = "0.3.6" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f" +checksum = "34aa73646ffb006b8f5147f3dc182bd4bcb190227ce861fc4a4844bf8e3cb2c0" [[package]] name = "encoding_rs" -version = "0.8.34" +version = "0.8.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b45de904aa0b010bce2ab45264d0631681847fa7b6f2eaa7dab7619943bc4f59" +checksum = "75030f3c4f45dafd7586dd6780965a8c7e8e285a5ecb86713e63a79c5b2766f3" dependencies = [ "cfg-if", ] @@ -1016,50 +1030,50 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "06c36cb11dbde389f4096111698d8b567c0720e3452fd5ac3e6b4e47e1939932" dependencies = [ - "thiserror 1.0.63", + "thiserror 1.0.69", ] [[package]] name = "enum-ordinalize" -version = "4.3.0" +version = "4.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fea0dcfa4e54eeb516fe454635a95753ddd39acda650ce703031c6973e315dd5" +checksum = "4a1091a7bb1f8f2c4b28f1fe2cef4980ca2d410a3d727d67ecc3178c9b0800f0" dependencies = [ "enum-ordinalize-derive", ] [[package]] name = "enum-ordinalize-derive" -version = "4.3.1" +version = "4.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d28318a75d4aead5c4db25382e8ef717932d0346600cacae6357eb5941bc5ff" +checksum = "8ca9601fb2d62598ee17836250842873a413586e5d7ed88b356e38ddbb0ec631" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.117", ] [[package]] name = "equivalent" -version = "1.0.1" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" +checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" [[package]] name = "errno" -version = "0.3.9" +version = "0.3.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba" +checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" dependencies = [ "libc", - "windows-sys 0.52.0", + "windows-sys 0.61.2", ] [[package]] name = "event-listener" -version = "5.3.1" +version = "5.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6032be9bd27023a771701cc49f9f053c751055f71efb2e0ae5c15809093675ba" +checksum = "e13b66accf52311f30a0db42147dadea9850cb48cd070028831ae5f5d4b856ab" dependencies = [ "concurrent-queue", "parking", @@ -1068,9 +1082,9 @@ dependencies = [ [[package]] name = "event-listener-strategy" -version = "0.5.2" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f214dc438f977e6d4e3500aaa277f5ad94ca83fbbd9b1a15713ce2344ccc5a1" +checksum = "8be9f3dfaaffdae2972880079a491a1a8bb7cbed0b8dd7a347f668b4150a3b93" dependencies = [ "event-listener", "pin-project-lite", @@ -1078,29 +1092,36 @@ dependencies = [ [[package]] name = "fancy-regex" -version = "0.13.0" +version = "0.16.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "531e46835a22af56d1e3b66f04844bed63158bc094a628bec1d321d9b4c44bf2" +checksum = "998b056554fbe42e03ae0e152895cd1a7e1002aec800fdc6635d20270260c46f" dependencies = [ "bit-set", - "regex-automata 0.4.7", - "regex-syntax 0.8.4", + "regex-automata", + "regex-syntax", ] [[package]] name = "fastrand" -version = "2.3.0" +version = "2.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f1f227452a390804cdb637b74a86990f2a7d7ba4b7d5693aac9b4dd6defd8d6" + +[[package]] +name = "find-msvc-tools" +version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" +checksum = "5baebc0774151f905a1a2cc41989300b1e6fbb29aff0ceffa1064fdd3088d582" [[package]] name = "flate2" -version = "1.0.33" +version = "1.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "324a1be68054ef05ad64b861cc9eaf1d623d2d8cb25b4bf2cb9cdd902b4bf253" +checksum = "843fba2746e448b37e26a819579957415c8cef339bf08564fe8b7ddbd959573c" dependencies = [ "crc32fast", - "miniz_oxide 0.8.0", + "miniz_oxide", + "zlib-rs", ] [[package]] @@ -1115,20 +1136,32 @@ version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2" +[[package]] +name = "foldhash" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77ce24cb58228fbb8aa041425bb1050850ac19177686ea6e0f41a70416f56fdb" + [[package]] name = "form_urlencoded" -version = "1.2.1" +version = "1.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456" +checksum = "cb4cb245038516f5f85277875cdaa4f7d2c9a0fa0468de06ed190163b1581fcf" dependencies = [ "percent-encoding", ] +[[package]] +name = "fs_extra" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42703706b716c37f96a77aea830392ad231f44c9e9a67872fa5548707e11b11c" + [[package]] name = "futures" -version = "0.3.30" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0" +checksum = "8b147ee9d1f6d097cef9ce628cd2ee62288d963e16fb287bd9286455b241382d" dependencies = [ "futures-channel", "futures-core", @@ -1141,9 +1174,9 @@ dependencies = [ [[package]] name = "futures-channel" -version = "0.3.30" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78" +checksum = "07bbe89c50d7a535e539b8c17bc0b49bdb77747034daa8087407d655f3f7cc1d" dependencies = [ "futures-core", "futures-sink", @@ -1151,15 +1184,15 @@ dependencies = [ [[package]] name = "futures-core" -version = "0.3.30" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d" +checksum = "7e3450815272ef58cec6d564423f6e755e25379b217b0bc688e295ba24df6b1d" [[package]] name = "futures-executor" -version = "0.3.30" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d" +checksum = "baf29c38818342a3b26b5b923639e7b1f4a61fc5e76102d4b1981c6dc7a7579d" dependencies = [ "futures-core", "futures-task", @@ -1168,32 +1201,32 @@ dependencies = [ [[package]] name = "futures-io" -version = "0.3.30" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1" +checksum = "cecba35d7ad927e23624b22ad55235f2239cfa44fd10428eecbeba6d6a717718" [[package]] name = "futures-macro" -version = "0.3.30" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" +checksum = "e835b70203e41293343137df5c0664546da5745f82ec9b84d40be8336958447b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.117", ] [[package]] name = "futures-sink" -version = "0.3.30" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5" +checksum = "c39754e157331b013978ec91992bde1ac089843443c49cbc7f46150b0fad0893" [[package]] name = "futures-task" -version = "0.3.30" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004" +checksum = "037711b3d59c33004d3856fbdc83b99d4ff37a24768fa1be9ce3538a1cde4393" [[package]] name = "futures-timer" @@ -1203,9 +1236,9 @@ checksum = "f288b0a4f20f9a56b5d1da57e2227c661b7b16168e2f72365f57b63326e29b24" [[package]] name = "futures-util" -version = "0.3.30" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48" +checksum = "389ca41296e6190b48053de0321d02a77f32f8a5d2461dd38762c0593805c6d6" dependencies = [ "futures-channel", "futures-core", @@ -1215,7 +1248,6 @@ dependencies = [ "futures-task", "memchr", "pin-project-lite", - "pin-utils", "slab", ] @@ -1231,50 +1263,62 @@ dependencies = [ [[package]] name = "getrandom" -version = "0.2.15" +version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" +checksum = "ff2abc00be7fca6ebc474524697ae276ad847ad0a6b3faa4bcb027e9a4614ad0" dependencies = [ "cfg-if", + "js-sys", "libc", - "wasi 0.11.0+wasi-snapshot-preview1", + "wasi", + "wasm-bindgen", ] [[package]] name = "getrandom" -version = "0.3.2" +version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73fea8450eea4bac3940448fb7ae50d91f034f941199fcd9d909a5a07aa455f0" +checksum = "899def5c37c4fd7b2664648c28120ecec138e4d395b459e5ca34f9cce2dd77fd" dependencies = [ "cfg-if", + "js-sys", "libc", - "r-efi", - "wasi 0.14.2+wasi-0.2.4", + "r-efi 5.3.0", + "wasip2", + "wasm-bindgen", ] [[package]] -name = "gimli" -version = "0.29.0" +name = "getrandom" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "40ecd4077b5ae9fd2e9e169b102c6c330d0605168eb0e8bf79952b256dbefffd" +checksum = "0de51e6874e94e7bf76d726fc5d13ba782deca734ff60d5bb2fb2607c7406555" +dependencies = [ + "cfg-if", + "libc", + "r-efi 6.0.0", + "rand_core 0.10.0", + "wasip2", + "wasip3", +] [[package]] name = "glob" -version = "0.3.1" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" +checksum = "0cc23270f6e1808e30a928bdc84dea0b9b4136a8bc82338574f23baf47bbd280" [[package]] name = "globset" -version = "0.4.14" +version = "0.4.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57da3b9b5b85bd66f31093f8c408b90a74431672542466497dcbdfdc02034be1" +checksum = "52dfc19153a48bde0cbd630453615c8151bce3a5adfac7a0aebfbf0a1e1f57e3" dependencies = [ "aho-corasick", "bstr", "log", - "regex-automata 0.4.7", - "regex-syntax 0.8.4", + "regex-automata", + "regex-syntax", ] [[package]] @@ -1283,7 +1327,7 @@ version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0bf760ebf69878d9fd8f110c89703d90ce35095324d1f1edcb595c63945ee757" dependencies = [ - "bitflags 2.6.0", + "bitflags", "ignore", "walkdir", ] @@ -1302,9 +1346,9 @@ dependencies = [ [[package]] name = "h2" -version = "0.4.6" +version = "0.4.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "524e8ac6999421f49a846c2d4411f337e53497d8ec55d67753beffa43c5d9205" +checksum = "2f44da3a8150a6703ed5d34e164b875fd14c2cdab9af1252a9a1020bde2bdc54" dependencies = [ "atomic-waker", "bytes", @@ -1312,7 +1356,7 @@ dependencies = [ "futures-core", "futures-sink", "http", - "indexmap 2.5.0", + "indexmap", "slab", "tokio", "tokio-util", @@ -1321,34 +1365,31 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.12.3" +version = "0.15.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" - -[[package]] -name = "hashbrown" -version = "0.14.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" +checksum = "9229cfe53dfd69f0609a49f65461bd93001ea1ef889cd5529dd176593f5338a1" +dependencies = [ + "foldhash 0.1.5", +] [[package]] name = "hashbrown" -version = "0.15.2" +version = "0.16.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289" +checksum = "841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100" dependencies = [ "allocator-api2", "equivalent", - "foldhash", + "foldhash 0.2.0", ] [[package]] name = "headers" -version = "0.4.0" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "322106e6bd0cba2d5ead589ddb8150a13d7c4217cf80d7c4f682ca994ccc6aa9" +checksum = "b3314d5adb5d94bcdf56771f2e50dbbc80bb4bdf88967526706205ac9eff24eb" dependencies = [ - "base64 0.21.7", + "base64", "bytes", "headers-core", "http", @@ -1378,29 +1419,14 @@ version = "0.0.0-dev" dependencies = [ "bindgen", "cc", - "snafu 0.8.4", -] - -[[package]] -name = "hermit-abi" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024" - -[[package]] -name = "home" -version = "0.5.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5" -dependencies = [ - "windows-sys 0.52.0", + "snafu 0.9.0", ] [[package]] name = "hostname" -version = "0.4.1" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a56f203cd1c76362b69e3863fd987520ac36cf70a8c92627449b2f64a8cf7d65" +checksum = "617aaa3557aef3810a6369d0a99fac8a080891b68bd9f9812a1eeda0c0730cbd" dependencies = [ "cfg-if", "libc", @@ -1409,12 +1435,11 @@ dependencies = [ [[package]] name = "http" -version = "1.1.0" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258" +checksum = "e3ba2a386d7f85a81f119ad7498ebe444d2e22c2af0b86b069416ace48b3311a" dependencies = [ "bytes", - "fnv", "itoa", ] @@ -1430,12 +1455,12 @@ dependencies = [ [[package]] name = "http-body-util" -version = "0.1.2" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "793429d76616a256bcb62c2a2ec2bed781c8307e797e2598c50010f2bee2544f" +checksum = "b021d93e26becf5dc7e1b75b1bed1fd93124b374ceb73f43d4d4eafec896a64a" dependencies = [ "bytes", - "futures-util", + "futures-core", "http", "http-body", "pin-project-lite", @@ -1443,9 +1468,9 @@ dependencies = [ [[package]] name = "httparse" -version = "1.9.4" +version = "1.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fcc0b4a115bf80b728eb8ea024ad5bd707b615bfed49e0665b6e0f86fd082d9" +checksum = "6dbf3de79e51f3d586ab4cb9d5c3e2c14aa28ed23d180cf89b4df0454a69cc87" [[package]] name = "httpdate" @@ -1464,13 +1489,14 @@ dependencies = [ [[package]] name = "hyper" -version = "1.6.0" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc2b571658e38e0c01b1fdca3bbbe93c00d3d71693ff2770043f8c29bc7d6f80" +checksum = "6299f016b246a94207e63da54dbe807655bf9e00044f73ded42c3ac5305fbcca" dependencies = [ + "atomic-waker", "bytes", "futures-channel", - "futures-util", + "futures-core", "h2", "http", "http-body", @@ -1483,33 +1509,12 @@ dependencies = [ "want", ] -[[package]] -name = "hyper-http-proxy" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d06dbdfbacf34d996c6fb540a71a684a7aae9056c71951163af8a8a4c07b9a4" -dependencies = [ - "bytes", - "futures-util", - "headers", - "http", - "hyper", - "hyper-rustls", - "hyper-util", - "pin-project-lite", - "rustls-native-certs", - "tokio", - "tokio-rustls", - "tower-service", -] - [[package]] name = "hyper-rustls" -version = "0.27.2" +version = "0.27.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ee4be2c948921a1a5320b629c4193916ed787a7f7f293fd3f7f5a6c9de74155" +checksum = "e3c93eb611681b207e1fe55d5a71ecf91572ec8a6705cdb6857f7d8d5242cf58" dependencies = [ - "futures-util", "http", "hyper", "hyper-util", @@ -1520,29 +1525,13 @@ dependencies = [ "tokio", "tokio-rustls", "tower-service", - "webpki-roots", -] - -[[package]] -name = "hyper-socks2" -version = "0.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51c227614c208f7e7c2e040526912604a1a957fe467c9c2f5b06c5d032337dab" -dependencies = [ - "async-socks5", - "http", - "hyper", - "hyper-util", - "thiserror 1.0.63", - "tokio", - "tower-service", ] [[package]] name = "hyper-timeout" -version = "0.5.1" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3203a961e5c83b6f5498933e78b6b263e208c197b63e9c6c53cc82ffd3f63793" +checksum = "2b90d566bffbce6a75bd8b09a05aa8c2cb1fabb6cb348f8840c9e4c90a0d83b0" dependencies = [ "hyper", "hyper-util", @@ -1553,17 +1542,20 @@ dependencies = [ [[package]] name = "hyper-util" -version = "0.1.11" +version = "0.1.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "497bbc33a26fdd4af9ed9c70d63f61cf56a938375fbb32df34db9b1cd6d643f2" +checksum = "96547c2556ec9d12fb1578c4eaf448b04993e7fb79cbaad930a656880a6bdfa0" dependencies = [ + "base64", "bytes", "futures-channel", "futures-util", "http", "http-body", "hyper", + "ipnet", "libc", + "percent-encoding", "pin-project-lite", "socket2", "tokio", @@ -1573,14 +1565,15 @@ dependencies = [ [[package]] name = "iana-time-zone" -version = "0.1.60" +version = "0.1.65" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141" +checksum = "e31bc9ad994ba00e440a8aa5c9ef0ec67d5cb5e5cb0cc7f8b744a35b389cc470" dependencies = [ "android_system_properties", "core-foundation-sys", "iana-time-zone-haiku", "js-sys", + "log", "wasm-bindgen", "windows-core", ] @@ -1594,6 +1587,94 @@ dependencies = [ "cc", ] +[[package]] +name = "icu_collections" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2984d1cd16c883d7935b9e07e44071dca8d917fd52ecc02c04d5fa0b5a3f191c" +dependencies = [ + "displaydoc", + "potential_utf", + "utf8_iter", + "yoke", + "zerofrom", + "zerovec", +] + +[[package]] +name = "icu_locale_core" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "92219b62b3e2b4d88ac5119f8904c10f8f61bf7e95b640d25ba3075e6cac2c29" +dependencies = [ + "displaydoc", + "litemap", + "tinystr", + "writeable", + "zerovec", +] + +[[package]] +name = "icu_normalizer" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c56e5ee99d6e3d33bd91c5d85458b6005a22140021cc324cea84dd0e72cff3b4" +dependencies = [ + "icu_collections", + "icu_normalizer_data", + "icu_properties", + "icu_provider", + "smallvec", + "zerovec", +] + +[[package]] +name = "icu_normalizer_data" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da3be0ae77ea334f4da67c12f149704f19f81d1adf7c51cf482943e84a2bad38" + +[[package]] +name = "icu_properties" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bee3b67d0ea5c2cca5003417989af8996f8604e34fb9ddf96208a033901e70de" +dependencies = [ + "icu_collections", + "icu_locale_core", + "icu_properties_data", + "icu_provider", + "zerotrie", + "zerovec", +] + +[[package]] +name = "icu_properties_data" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e2bbb201e0c04f7b4b3e14382af113e17ba4f63e2c9d2ee626b720cbce54a14" + +[[package]] +name = "icu_provider" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "139c4cf31c8b5f33d7e199446eff9c1e02decfc2f0eec2c8d71f65befa45b421" +dependencies = [ + "displaydoc", + "icu_locale_core", + "writeable", + "yoke", + "zerofrom", + "zerotrie", + "zerovec", +] + +[[package]] +name = "id-arena" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d3067d79b975e8844ca9eb072e16b31c3c1c36928edf9c6789548c524d0d954" + [[package]] name = "ident_case" version = "1.0.1" @@ -1602,25 +1683,36 @@ checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" [[package]] name = "idna" -version = "0.5.0" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3b0875f23caa03898994f6ddc501886a45c7d3d62d04d2d90788d47be1b1e4de" +dependencies = [ + "idna_adapter", + "smallvec", + "utf8_iter", +] + +[[package]] +name = "idna_adapter" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6" +checksum = "3acae9609540aa318d1bc588455225fb2085b9ed0c4f6bd0d9d5bcd86f1a0344" dependencies = [ - "unicode-bidi", - "unicode-normalization", + "icu_normalizer", + "icu_properties", ] [[package]] name = "ignore" -version = "0.4.22" +version = "0.4.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b46810df39e66e925525d6e38ce1e7f6e1d208f72dc39757880fcb66e2c58af1" +checksum = "d3d782a365a015e0f5c04902246139249abf769125006fbe7649e2ee88169b4a" dependencies = [ "crossbeam-deque", "globset", "log", "memchr", - "regex-automata 0.4.7", + "regex-automata", "same-file", "walkdir", "winapi-util", @@ -1628,59 +1720,69 @@ dependencies = [ [[package]] name = "indexmap" -version = "1.9.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" -dependencies = [ - "autocfg", - "hashbrown 0.12.3", -] - -[[package]] -name = "indexmap" -version = "2.5.0" +version = "2.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68b900aa2f7301e21c36462b170ee99994de34dff39a4a6a528e80e7376d07e5" +checksum = "45a8a2b9cb3e0b0c1803dbb0758ffac5de2f425b23c28f518faabd9d805342ff" dependencies = [ "equivalent", - "hashbrown 0.14.5", + "hashbrown 0.16.1", "serde", + "serde_core", ] [[package]] name = "indicatif" -version = "0.17.11" +version = "0.18.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "183b3088984b400f4cfac3620d5e076c84da5364016b4f49473de574b2586235" +checksum = "25470f23803092da7d239834776d653104d551bc4d7eacaf31e6837854b8e9eb" dependencies = [ "console", - "number_prefix", "portable-atomic", - "unicode-width 0.2.0", + "unicode-width", + "unit-prefix", "vt100", "web-time", ] +[[package]] +name = "indoc" +version = "2.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "79cf5c93f93228cf8efb3ba362535fb11199ac548a09ce117c9b1adc3030d706" +dependencies = [ + "rustversion", +] + [[package]] name = "inout" -version = "0.1.3" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0c10553d664a4d0bcff9f4215d0aac67a639cc68ef660840afe309b807bc9f5" +checksum = "879f10e63c20629ecabbb64a8010319738c66a5cd0c29b02d63d272b03751d01" dependencies = [ "generic-array", ] [[package]] name = "ipnet" -version = "2.9.0" +version = "2.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d98f6fed1fde3f8c21bc40a1abb88dd75e67924f9cffc3ef95607bad8017f8e2" + +[[package]] +name = "iri-string" +version = "0.7.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f518f335dce6725a761382244631d86cf0ccb2863413590b31338feb467f9c3" +checksum = "25e659a4bb38e810ebc252e53b5814ff908a8c58c2a9ce2fae1bbec24cbf4e20" +dependencies = [ + "memchr", + "serde", +] [[package]] name = "is_terminal_polyfill" -version = "1.70.1" +version = "1.70.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf" +checksum = "a6cb138bb79a146c1bd460005623e142ef0181e3d0219cb493e02f7d08a35695" [[package]] name = "itertools" @@ -1702,9 +1804,9 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.11" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" +checksum = "8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682" [[package]] name = "java-properties" @@ -1717,38 +1819,136 @@ dependencies = [ "regex", ] +[[package]] +name = "jiff" +version = "0.2.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a3546dc96b6d42c5f24902af9e2538e82e39ad350b0c766eb3fbf2d8f3d8359" +dependencies = [ + "jiff-static", + "jiff-tzdb-platform", + "log", + "portable-atomic", + "portable-atomic-util", + "serde_core", + "windows-sys 0.61.2", +] + +[[package]] +name = "jiff-static" +version = "0.2.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2a8c8b344124222efd714b73bb41f8b5120b27a7cc1c75593a6ff768d9d05aa4" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.117", +] + +[[package]] +name = "jiff-tzdb" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c900ef84826f1338a557697dc8fc601df9ca9af4ac137c7fb61d4c6f2dfd3076" + +[[package]] +name = "jiff-tzdb-platform" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "875a5a69ac2bab1a891711cf5eccbec1ce0341ea805560dcd90b7a2e925132e8" +dependencies = [ + "jiff-tzdb", +] + +[[package]] +name = "jni" +version = "0.21.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a87aa2bb7d2af34197c04845522473242e1aa17c12f4935d5856491a7fb8c97" +dependencies = [ + "cesu8", + "cfg-if", + "combine", + "jni-sys 0.3.1", + "log", + "thiserror 1.0.69", + "walkdir", + "windows-sys 0.45.0", +] + +[[package]] +name = "jni-sys" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41a652e1f9b6e0275df1f15b32661cf0d4b78d4d87ddec5e0c3c20f097433258" +dependencies = [ + "jni-sys 0.4.1", +] + +[[package]] +name = "jni-sys" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c6377a88cb3910bee9b0fa88d4f42e1d2da8e79915598f65fb0c7ee14c878af2" +dependencies = [ + "jni-sys-macros", +] + +[[package]] +name = "jni-sys-macros" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38c0b942f458fe50cdac086d2f946512305e5631e720728f2a61aabcd47a6264" +dependencies = [ + "quote", + "syn 2.0.117", +] + +[[package]] +name = "jobserver" +version = "0.1.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9afb3de4395d6b3e67a780b6de64b51c978ecf11cb9a462c66be7d4ca9039d33" +dependencies = [ + "getrandom 0.3.4", + "libc", +] + [[package]] name = "js-sys" -version = "0.3.70" +version = "0.3.94" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1868808506b929d7b0cfa8f75951347aa71bb21144b7791bae35d9bccfcfe37a" +checksum = "2e04e2ef80ce82e13552136fabeef8a5ed1f985a96805761cbb9a2c34e7664d9" dependencies = [ + "cfg-if", + "futures-util", + "once_cell", "wasm-bindgen", ] [[package]] name = "json-patch" -version = "4.0.0" +version = "4.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "159294d661a039f7644cea7e4d844e6b25aaf71c1ffe9d73a96d768c24b0faf4" +checksum = "f300e415e2134745ef75f04562dd0145405c2f7fd92065db029ac4b16b57fe90" dependencies = [ "jsonptr", "serde", "serde_json", - "thiserror 1.0.63", + "thiserror 1.0.69", ] [[package]] name = "jsonpath-rust" -version = "0.7.5" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c00ae348f9f8fd2d09f82a98ca381c60df9e0820d8d79fce43e649b4dc3128b" +checksum = "633a7320c4bb672863a3782e89b9094ad70285e097ff6832cddd0ec615beadfa" dependencies = [ "pest", "pest_derive", "regex", "serde_json", - "thiserror 2.0.12", + "thiserror 2.0.18", ] [[package]] @@ -1763,33 +1963,31 @@ dependencies = [ [[package]] name = "k8s-openapi" -version = "0.24.0" +version = "0.27.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c75b990324f09bef15e791606b7b7a296d02fc88a344f6eba9390970a870ad5" +checksum = "51b326f5219dd55872a72c1b6ddd1b830b8334996c667449c29391d657d78d5e" dependencies = [ - "base64 0.22.1", - "chrono", + "base64", + "jiff", "schemars", "serde", - "serde-value", "serde_json", ] [[package]] name = "k8s-version" -version = "0.1.2" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.92.0#5fdc47a10de685e4eea49fd0a3f6c3a15a4966c1" +version = "0.1.3" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.109.0#a4a204b0696a696b9a49c930703037dd124e876d" dependencies = [ "darling", "regex", - "snafu 0.8.4", + "snafu 0.9.0", ] [[package]] name = "kube" -version = "0.99.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a4eb20010536b48abe97fec37d23d43069bcbe9686adcf9932202327bc5ca6e" +version = "3.0.1" +source = "git+https://github.com/kube-rs/kube-rs?rev=fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5#fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5" dependencies = [ "k8s-openapi", "kube-client", @@ -1800,25 +1998,21 @@ dependencies = [ [[package]] name = "kube-client" -version = "0.99.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fc2ed952042df20d15ac2fe9614d0ec14b6118eab89633985d4b36e688dccf1" +version = "3.0.1" +source = "git+https://github.com/kube-rs/kube-rs?rev=fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5#fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5" dependencies = [ - "base64 0.22.1", + "base64", "bytes", - "chrono", "either", "futures", - "home", "http", "http-body", "http-body-util", "hyper", - "hyper-http-proxy", "hyper-rustls", - "hyper-socks2", "hyper-timeout", "hyper-util", + "jiff", "jsonpath-rust", "k8s-openapi", "kube-core", @@ -1828,61 +2022,58 @@ dependencies = [ "serde", "serde_json", "serde_yaml", - "thiserror 2.0.12", + "thiserror 2.0.18", "tokio", "tokio-tungstenite", "tokio-util", - "tower 0.5.2", - "tower-http 0.6.2", + "tower", + "tower-http", "tracing", ] [[package]] name = "kube-core" -version = "0.99.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff0d0793db58e70ca6d689489183816cb3aa481673e7433dc618cf7e8007c675" +version = "3.0.1" +source = "git+https://github.com/kube-rs/kube-rs?rev=fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5#fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5" dependencies = [ - "chrono", + "derive_more", "form_urlencoded", "http", + "jiff", "json-patch", "k8s-openapi", "schemars", "serde", "serde-value", "serde_json", - "thiserror 2.0.12", + "thiserror 2.0.18", ] [[package]] name = "kube-derive" -version = "0.99.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c562f58dc9f7ca5feac8a6ee5850ca221edd6f04ce0dd2ee873202a88cd494c9" +version = "3.0.1" +source = "git+https://github.com/kube-rs/kube-rs?rev=fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5#fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5" dependencies = [ "darling", "proc-macro2", "quote", "serde", "serde_json", - "syn 2.0.87", + "syn 2.0.117", ] [[package]] name = "kube-runtime" -version = "0.99.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88f34cfab9b4bd8633062e0e85edb81df23cb09f159f2e31c60b069ae826ffdc" +version = "3.0.1" +source = "git+https://github.com/kube-rs/kube-rs?rev=fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5#fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5" dependencies = [ "ahash", "async-broadcast", "async-stream", - "async-trait", "backon", "educe", "futures", - "hashbrown 0.15.2", + "hashbrown 0.16.1", "hostname", "json-patch", "k8s-openapi", @@ -1891,7 +2082,7 @@ dependencies = [ "pin-project", "serde", "serde_json", - "thiserror 2.0.12", + "thiserror 2.0.18", "tokio", "tokio-util", "tracing", @@ -1903,85 +2094,90 @@ version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" +[[package]] +name = "leb128fmt" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09edd9e8b54e49e587e4f6295a7d29c3ea94d469cb40ab8ca70b288248a81db2" + [[package]] name = "libc" -version = "0.2.171" +version = "0.2.184" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c19937216e9d3aa9956d9bb8dfc0b0c8beb6058fc4f7a4dc4d850edf86a237d6" +checksum = "48f5d2a454e16a5ea0f4ced81bd44e4cfc7bd3a507b61887c99fd3538b28e4af" [[package]] name = "libloading" -version = "0.8.5" +version = "0.8.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4979f22fdb869068da03c9f7528f8297c6fd2606bc3a4affe42e6a823fdb8da4" +checksum = "d7c4b02199fee7c5d21a5ae7d8cfa79a6ef5bb2fc834d6e9058e89c825efdc55" dependencies = [ "cfg-if", - "windows-targets 0.52.6", + "windows-link", ] [[package]] name = "libm" -version = "0.2.8" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" +checksum = "b6d2cec3eae94f9f509c767b45932f1ada8350c4bdb85af2fcab4a3c14807981" [[package]] name = "libredox" -version = "0.0.2" +version = "0.1.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3af92c55d7d839293953fcd0fda5ecfe93297cfde6ffbdec13b41d99c0ba6607" +checksum = "7ddbf48fd451246b1f8c2610bd3b4ac0cc6e149d89832867093ab69a17194f08" dependencies = [ - "bitflags 2.6.0", "libc", - "redox_syscall 0.4.1", ] [[package]] -name = "libredox" -version = "0.1.3" +name = "linux-raw-sys" +version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" -dependencies = [ - "bitflags 2.6.0", - "libc", -] +checksum = "32a66949e030da00e8c7d4434b251670a91556f4144941d37452769c25d58a53" [[package]] -name = "linux-raw-sys" -version = "0.4.14" +name = "litemap" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "92daf443525c4cce67b150400bc2316076100ce0b3686209eb8cf3c31612e6f0" + +[[package]] +name = "litrs" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" +checksum = "11d3d7f243d5c5a8b9bb5d6dd2b1602c0cb0b9db1621bafc7ed66e35ff9fe092" [[package]] name = "lock_api" -version = "0.4.12" +version = "0.4.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17" +checksum = "224399e74b87b5f3557511d98dff8b14089b3dadafcab6bb93eab67d3aace965" dependencies = [ - "autocfg", "scopeguard", ] [[package]] name = "log" -version = "0.4.22" +version = "0.4.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24" +checksum = "5e5032e24019045c762d3c0f28f5b6b8bbf38563a65908389bf7978758920897" [[package]] -name = "matchers" -version = "0.1.0" +name = "lru-slab" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558" -dependencies = [ - "regex-automata 0.1.10", -] +checksum = "112b39cec0b298b6c1999fee3e31427f74f676e4cb9879ed1a121b43661a4154" [[package]] -name = "matchit" -version = "0.7.3" +name = "matchers" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e7465ac9959cc2b1404e8e2367b43684a6d13790fe23056cc8c6c5a6b7bcb94" +checksum = "d1525a2a28c7f4fa0fc98bb91ae755d1e2d1505079e05539e35bc876b5d65ae9" +dependencies = [ + "regex-automata", +] [[package]] name = "matchit" @@ -1991,9 +2187,9 @@ checksum = "47e1ffaa40ddd1f3ed91f717a33c8c0ee23fff369e3aa8772b9605cc1d22f4c3" [[package]] name = "memchr" -version = "2.7.4" +version = "2.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" +checksum = "f8ca58f447f06ed17d5fc4043ce1b10dd205e060fb3ce5b979b8ed8e59ff3f79" [[package]] name = "mime" @@ -2019,32 +2215,23 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" [[package]] name = "miniz_oxide" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8a240ddb74feaf34a79a7add65a741f3167852fba007066dcac1ca548d89c08" -dependencies = [ - "adler", -] - -[[package]] -name = "miniz_oxide" -version = "0.8.0" +version = "0.8.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2d80299ef12ff69b16a84bb182e3b9df68b5a91574d3d4fa6e41b65deec4df1" +checksum = "1fa76a2c86f704bdb222d66965fb3d63269ce38518b83cb0575fca855ebb6316" dependencies = [ "adler2", + "simd-adler32", ] [[package]] name = "mio" -version = "1.0.2" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80e04d1dcff3aae0704555fe5fee3bcfaf3d1fdf8a7e521d5b9d2b42acb52cec" +checksum = "50b7e5b27aa02a74bac8c3f23f448f8d87ff11f92d3aac1a6ed369ee08cc56c1" dependencies = [ - "hermit-abi", "libc", - "wasi 0.11.0+wasi-snapshot-preview1", - "windows-sys 0.52.0", + "wasi", + "windows-sys 0.61.2", ] [[package]] @@ -2059,19 +2246,18 @@ dependencies = [ [[package]] name = "nu-ansi-term" -version = "0.46.0" +version = "0.50.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84" +checksum = "7957b9740744892f114936ab4a57b3f487491bbeafaf8083688b16841a4240e5" dependencies = [ - "overload", - "winapi", + "windows-sys 0.61.2", ] [[package]] name = "num-conv" -version = "0.1.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" +checksum = "c6673768db2d862beb9b39a78fdcb1a69439615d5794a1be50caa9bc92c81967" [[package]] name = "num-traits" @@ -2082,79 +2268,49 @@ dependencies = [ "autocfg", ] -[[package]] -name = "num_enum" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e613fc340b2220f734a8595782c551f1250e969d87d3be1ae0579e8d4065179" -dependencies = [ - "num_enum_derive", -] - -[[package]] -name = "num_enum_derive" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af1844ef2428cc3e1cb900be36181049ef3d3193c63e43026cfe202983b27a56" -dependencies = [ - "proc-macro-crate", - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "number_prefix" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3" - [[package]] name = "numtoa" -version = "0.1.0" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8f8bdf33df195859076e54ab11ee78a1b208382d3a26ec40d142ffc1ecc49ef" +checksum = "6aa2c4e539b869820a2b82e1aef6ff40aa85e65decdd5185e83fb4b1249cd00f" [[package]] -name = "object" -version = "0.36.4" +name = "once_cell" +version = "1.21.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "084f1a5821ac4c651660a94a7153d27ac9d8a53736203f58b31945ded098070a" -dependencies = [ - "memchr", -] +checksum = "9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50" [[package]] -name = "once_cell" -version = "1.19.0" +name = "once_cell_polyfill" +version = "1.70.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" +checksum = "384b8ab6d37215f3c5301a95a4accb5d64aa607f1fcb26a11b5303878451b4fe" [[package]] name = "openssl-probe" -version = "0.1.5" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" +checksum = "7c87def4c32ab89d880effc9e097653c8da5d6ef28e6b539d313baaacfbafcbe" [[package]] name = "opentelemetry" -version = "0.28.0" +version = "0.31.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "236e667b670a5cdf90c258f5a55794ec5ac5027e960c224bff8367a59e1e6426" +checksum = "b84bcd6ae87133e903af7ef497404dda70c60d0ea14895fc8a5e6722754fc2a0" dependencies = [ "futures-core", "futures-sink", "js-sys", "pin-project-lite", - "thiserror 2.0.12", + "thiserror 2.0.18", "tracing", ] [[package]] name = "opentelemetry-appender-tracing" -version = "0.28.1" +version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c513c7af3bec30113f3d4620134ff923295f1e9c580fda2b8abe0831f925ddc0" +checksum = "ef6a1ac5ca3accf562b8c306fa8483c85f4390f768185ab775f242f7fe8fdcc2" dependencies = [ "opentelemetry", "tracing", @@ -2164,34 +2320,31 @@ dependencies = [ [[package]] name = "opentelemetry-http" -version = "0.28.0" +version = "0.31.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8863faf2910030d139fb48715ad5ff2f35029fc5f244f6d5f689ddcf4d26253" +checksum = "d7a6d09a73194e6b66df7c8f1b680f156d916a1a942abf2de06823dd02b7855d" dependencies = [ "async-trait", "bytes", "http", "opentelemetry", - "reqwest", - "tracing", + "reqwest 0.12.28", ] [[package]] name = "opentelemetry-otlp" -version = "0.28.0" +version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5bef114c6d41bea83d6dc60eb41720eedd0261a67af57b66dd2b84ac46c01d91" +checksum = "1f69cd6acbb9af919df949cd1ec9e5e7fdc2ef15d234b6b795aaa525cc02f71f" dependencies = [ - "async-trait", - "futures-core", "http", "opentelemetry", "opentelemetry-http", "opentelemetry-proto", "opentelemetry_sdk", "prost", - "reqwest", - "thiserror 2.0.12", + "reqwest 0.12.28", + "thiserror 2.0.18", "tokio", "tonic", "tracing", @@ -2199,35 +2352,38 @@ dependencies = [ [[package]] name = "opentelemetry-proto" -version = "0.28.0" +version = "0.31.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56f8870d3024727e99212eb3bb1762ec16e255e3e6f58eeb3dc8db1aa226746d" +checksum = "a7175df06de5eaee9909d4805a3d07e28bb752c34cab57fa9cff549da596b30f" dependencies = [ "opentelemetry", "opentelemetry_sdk", "prost", "tonic", + "tonic-prost", ] +[[package]] +name = "opentelemetry-semantic-conventions" +version = "0.31.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e62e29dfe041afb8ed2a6c9737ab57db4907285d999ef8ad3a59092a36bdc846" + [[package]] name = "opentelemetry_sdk" -version = "0.28.0" +version = "0.31.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84dfad6042089c7fc1f6118b7040dc2eb4ab520abbf410b79dc481032af39570" +checksum = "e14ae4f5991976fd48df6d843de219ca6d31b01daaab2dad5af2badeded372bd" dependencies = [ - "async-trait", "futures-channel", "futures-executor", "futures-util", - "glob", "opentelemetry", "percent-encoding", - "rand 0.8.5", - "serde_json", - "thiserror 2.0.12", + "rand 0.9.2", + "thiserror 2.0.18", "tokio", "tokio-stream", - "tracing", ] [[package]] @@ -2245,23 +2401,17 @@ dependencies = [ "num-traits", ] -[[package]] -name = "overload" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" - [[package]] name = "parking" -version = "2.2.0" +version = "2.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb813b8af86854136c6922af0598d719255ecb2179515e6e7730d468f05c9cae" +checksum = "f38d5652c16fde515bb1ecef450ab0f6a219d619a7274976324d5e377f7dceba" [[package]] name = "parking_lot" -version = "0.12.3" +version = "0.12.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27" +checksum = "93857453250e3077bd71ff98b6a65ea6621a19bb0f559a85248955ac12c45a1a" dependencies = [ "lock_api", "parking_lot_core", @@ -2269,15 +2419,15 @@ dependencies = [ [[package]] name = "parking_lot_core" -version = "0.9.10" +version = "0.9.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8" +checksum = "2621685985a2ebf1c516881c026032ac7deafcda1a2c9b7850dc81e3dfcb64c1" dependencies = [ "cfg-if", "libc", - "redox_syscall 0.5.3", + "redox_syscall", "smallvec", - "windows-targets 0.52.6", + "windows-link", ] [[package]] @@ -2291,36 +2441,35 @@ dependencies = [ [[package]] name = "pem" -version = "3.0.4" +version = "3.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e459365e590736a54c3fa561947c84837534b8e9af6fc5bf781307e82658fae" +checksum = "1d30c53c26bc5b31a98cd02d20f25a7c8567146caf63ed593a9d87b2775291be" dependencies = [ - "base64 0.22.1", - "serde", + "base64", + "serde_core", ] [[package]] name = "percent-encoding" -version = "2.3.1" +version = "2.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" +checksum = "9b4f627cb1b25917193a259e49bdad08f671f8d9708acfd5fe0a8c1455d87220" [[package]] name = "pest" -version = "2.7.11" +version = "2.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd53dff83f26735fdc1ca837098ccf133605d794cdae66acfc2bfac3ec809d95" +checksum = "e0848c601009d37dfa3430c4666e147e49cdcf1b92ecd3e63657d8a5f19da662" dependencies = [ "memchr", - "thiserror 1.0.63", "ucd-trie", ] [[package]] name = "pest_derive" -version = "2.7.11" +version = "2.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a548d2beca6773b1c244554d36fcf8548a8a58e74156968211567250e48e49a" +checksum = "11f486f1ea21e6c10ed15d5a7c77165d0ee443402f0780849d1768e7d9d6fe77" dependencies = [ "pest", "pest_generator", @@ -2328,42 +2477,41 @@ dependencies = [ [[package]] name = "pest_generator" -version = "2.7.11" +version = "2.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c93a82e8d145725dcbaf44e5ea887c8a869efdcc28706df2d08c69e17077183" +checksum = "8040c4647b13b210a963c1ed407c1ff4fdfa01c31d6d2a098218702e6664f94f" dependencies = [ "pest", "pest_meta", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.117", ] [[package]] name = "pest_meta" -version = "2.7.11" +version = "2.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a941429fea7e08bedec25e4f6785b6ffaacc6b755da98df5ef3e7dcf4a124c4f" +checksum = "89815c69d36021a140146f26659a81d6c2afa33d216d736dd4be5381a7362220" dependencies = [ - "once_cell", "pest", "sha2", ] [[package]] name = "phf" -version = "0.11.2" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ade2d8b8f33c7333b51bcf0428d37e217e9f32192ae4772156f65063b8ce03dc" +checksum = "1fd6780a80ae0c52cc120a26a1a42c1ae51b247a253e4e06113d23d2c2edd078" dependencies = [ "phf_shared", ] [[package]] name = "phf_codegen" -version = "0.11.2" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8d39688d359e6b34654d328e262234662d16cc0f60ec8dcbe5e718709342a5a" +checksum = "aef8048c789fa5e851558d709946d6d79a8ff88c0440c587967f8e94bfb1216a" dependencies = [ "phf_generator", "phf_shared", @@ -2371,9 +2519,9 @@ dependencies = [ [[package]] name = "phf_generator" -version = "0.11.2" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48e4cc64c2ad9ebe670cb8fd69dd50ae301650392e81c05f9bfcb2d5bdbc24b0" +checksum = "3c80231409c20246a13fddb31776fb942c38553c51e871f8cbd687a4cfb5843d" dependencies = [ "phf_shared", "rand 0.8.5", @@ -2381,50 +2529,62 @@ dependencies = [ [[package]] name = "phf_shared" -version = "0.11.2" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90fcb95eef784c2ac79119d1dd819e162b5da872ce6f3c3abe1e8ca1c082f72b" +checksum = "67eabc2ef2a60eb7faa00097bd1ffdb5bd28e62bf39990626a582201b7a754e5" dependencies = [ "siphasher", ] [[package]] name = "pin-project" -version = "1.1.5" +version = "1.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6bf43b791c5b9e34c3d182969b4abb522f9343702850a2e57f460d00d09b4b3" +checksum = "f1749c7ed4bcaf4c3d0a3efc28538844fb29bcdd7d2b67b2be7e20ba861ff517" dependencies = [ "pin-project-internal", ] [[package]] name = "pin-project-internal" -version = "1.1.5" +version = "1.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965" +checksum = "d9b20ed30f105399776b9c883e68e536ef602a16ae6f596d2c473591d6ad64c6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.117", ] [[package]] name = "pin-project-lite" -version = "0.2.14" +version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02" +checksum = "a89322df9ebe1c1578d689c92318e070967d1042b512afbe49518723f4e6d5cd" [[package]] -name = "pin-utils" -version = "0.1.0" +name = "portable-atomic" +version = "1.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" +checksum = "c33a9471896f1c69cecef8d20cbe2f7accd12527ce60845ff44c153bb2a21b49" [[package]] -name = "portable-atomic" -version = "1.11.0" +name = "portable-atomic-util" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "091397be61a01d4be58e7841595bd4bfedb15f1cd54977d79b8271e94ed799a3" +dependencies = [ + "portable-atomic", +] + +[[package]] +name = "potential_utf" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "350e9b48cbc6b0e028b0473b114454c6316e57336ee184ceab6e53f72c178b3e" +checksum = "0103b1cef7ec0cf76490e969665504990193874ea05c85ff9bab8b911d0a0564" +dependencies = [ + "zerovec", +] [[package]] name = "powerfmt" @@ -2434,69 +2594,45 @@ checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" [[package]] name = "ppv-lite86" -version = "0.2.20" +version = "0.2.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04" +checksum = "85eae3c4ed2f50dcfe72643da4befc30deadb458a9b590d720cde2f2b1e97da9" dependencies = [ - "zerocopy 0.7.35", + "zerocopy", ] [[package]] name = "prettyplease" -version = "0.2.22" +version = "0.2.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "479cf940fbbb3426c32c5d5176f62ad57549a0bb84773423ba8be9d089f5faba" +checksum = "479ca8adacdd7ce8f1fb39ce9ecccbfe93a3f1344b3d0d97f20bc0196208f62b" dependencies = [ "proc-macro2", - "syn 2.0.87", + "syn 2.0.117", ] [[package]] name = "proc-macro-crate" -version = "3.2.0" +version = "3.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ecf48c7ca261d60b74ab1a7b20da18bede46776b2e55535cb958eb595c5fa7b" +checksum = "e67ba7e9b2b56446f1d419b1d807906278ffa1a658a8a5d8a39dcb1f5a78614f" dependencies = [ "toml_edit", ] -[[package]] -name = "proc-macro-error" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" -dependencies = [ - "proc-macro-error-attr", - "proc-macro2", - "quote", - "syn 1.0.109", - "version_check", -] - -[[package]] -name = "proc-macro-error-attr" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" -dependencies = [ - "proc-macro2", - "quote", - "version_check", -] - [[package]] name = "proc-macro2" -version = "1.0.86" +version = "1.0.106" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77" +checksum = "8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934" dependencies = [ "unicode-ident", ] [[package]] name = "product-config" -version = "0.7.0" -source = "git+https://github.com/stackabletech/product-config.git?tag=0.7.0#d61d4c7542c942da2ba0e9af4e5e3c3113abb0cf" +version = "0.8.0" +source = "git+https://github.com/stackabletech/product-config.git?tag=0.8.0#678fb7cf30af7d7b516c9a46698a1b661120d54a" dependencies = [ "fancy-regex", "java-properties", @@ -2505,15 +2641,15 @@ dependencies = [ "serde", "serde_json", "serde_yaml", - "snafu 0.8.4", - "xml-rs", + "snafu 0.8.9", + "xml", ] [[package]] name = "prost" -version = "0.13.5" +version = "0.14.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2796faa41db3ec313a31f7624d9286acf277b52de526150b7e69f3debf891ee5" +checksum = "d2ea70524a2f82d518bce41317d0fae74151505651af45faf1ffbd6fd33f0568" dependencies = [ "bytes", "prost-derive", @@ -2521,79 +2657,93 @@ dependencies = [ [[package]] name = "prost-derive" -version = "0.13.5" +version = "0.14.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a56d757972c98b346a9b766e3f02746cde6dd1cd1d1d563472929fdd74bec4d" +checksum = "27c6023962132f4b30eb4c172c91ce92d933da334c59c23cddee82358ddafb0b" dependencies = [ "anyhow", "itertools 0.14.0", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.117", ] [[package]] name = "quinn" -version = "0.11.5" +version = "0.11.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c7c5fdde3cdae7203427dc4f0a68fe0ed09833edc525a03456b153b79828684" +checksum = "b9e20a958963c291dc322d98411f541009df2ced7b5a4f2bd52337638cfccf20" dependencies = [ "bytes", + "cfg_aliases", "pin-project-lite", "quinn-proto", "quinn-udp", - "rustc-hash 2.0.0", + "rustc-hash", "rustls", "socket2", - "thiserror 1.0.63", + "thiserror 2.0.18", "tokio", "tracing", + "web-time", ] [[package]] name = "quinn-proto" -version = "0.11.8" +version = "0.11.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fadfaed2cd7f389d0161bb73eeb07b7b78f8691047a6f3e73caaeae55310a4a6" +checksum = "434b42fec591c96ef50e21e886936e66d3cc3f737104fdb9b737c40ffb94c098" dependencies = [ + "aws-lc-rs", "bytes", - "rand 0.8.5", + "getrandom 0.3.4", + "lru-slab", + "rand 0.9.2", "ring", - "rustc-hash 2.0.0", + "rustc-hash", "rustls", + "rustls-pki-types", "slab", - "thiserror 1.0.63", + "thiserror 2.0.18", "tinyvec", "tracing", + "web-time", ] [[package]] name = "quinn-udp" -version = "0.5.5" +version = "0.5.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fe68c2e9e1a1234e218683dbdf9f9dfcb094113c5ac2b938dfcb9bab4c4140b" +checksum = "addec6a0dcad8a8d96a771f815f0eaf55f9d1805756410b39f5fa81332574cbd" dependencies = [ + "cfg_aliases", "libc", "once_cell", "socket2", "tracing", - "windows-sys 0.59.0", + "windows-sys 0.60.2", ] [[package]] name = "quote" -version = "1.0.37" +version = "1.0.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af" +checksum = "41f2619966050689382d2b44f664f4bc593e129785a36d6ee376ddf37259b924" dependencies = [ "proc-macro2", ] [[package]] name = "r-efi" -version = "5.2.0" +version = "5.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f" + +[[package]] +name = "r-efi" +version = "6.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74765f6d916ee2faa39bc8e68e4f3ed8949b48cccdac59983d287a7cb71ce9c5" +checksum = "f8dcc9c7d52a811697d2151c701e0d08956f92b0e24136cf4cf27b57a6a0d9bf" [[package]] name = "rand" @@ -2608,13 +2758,23 @@ dependencies = [ [[package]] name = "rand" -version = "0.9.0" +version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3779b94aeb87e8bd4e834cee3650289ee9e0d5677f976ecdb6d219e5f4f6cd94" +checksum = "6db2770f06117d490610c7488547d543617b21bfa07796d7a12f6f1bd53850d1" dependencies = [ "rand_chacha 0.9.0", - "rand_core 0.9.3", - "zerocopy 0.8.24", + "rand_core 0.9.5", +] + +[[package]] +name = "rand" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc266eb313df6c5c09c1c7b1fbe2510961e5bcd3add930c1e31f7ed9da0feff8" +dependencies = [ + "chacha20", + "getrandom 0.4.2", + "rand_core 0.10.0", ] [[package]] @@ -2634,7 +2794,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d3022b5f1df60f26e1ffddd6c66e8aa15de382ae63b3a0c1bfc0e4d3e3f325cb" dependencies = [ "ppv-lite86", - "rand_core 0.9.3", + "rand_core 0.9.5", ] [[package]] @@ -2643,96 +2803,92 @@ version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" dependencies = [ - "getrandom 0.2.15", + "getrandom 0.2.17", ] [[package]] name = "rand_core" -version = "0.9.3" +version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "99d9a13982dcf210057a8a78572b2217b667c3beacbf3a0d8b454f6f82837d38" +checksum = "76afc826de14238e6e8c374ddcc1fa19e374fd8dd986b0d2af0d02377261d83c" dependencies = [ - "getrandom 0.3.2", + "getrandom 0.3.4", ] [[package]] -name = "redox_syscall" -version = "0.4.1" +name = "rand_core" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa" -dependencies = [ - "bitflags 1.3.2", -] +checksum = "0c8d0fd677905edcbeedbf2edb6494d676f0e98d54d5cf9bda0b061cb8fb8aba" [[package]] name = "redox_syscall" -version = "0.5.3" +version = "0.5.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a908a6e00f1fdd0dfd9c0eb08ce85126f6d8bbda50017e74bc4a4b7d4a926a4" +checksum = "ed2bf2547551a7053d6fdfafda3f938979645c44812fbfcda098faae3f1a362d" dependencies = [ - "bitflags 2.6.0", + "bitflags", ] -[[package]] -name = "redox_termios" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "20145670ba436b55d91fc92d25e71160fbfbdd57831631c8d7d36377a476f1cb" - [[package]] name = "redox_users" -version = "0.4.6" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43" +checksum = "a4e608c6638b9c18977b00b475ac1f28d14e84b27d8d42f70e0bf1e3dec127ac" dependencies = [ - "getrandom 0.2.15", - "libredox 0.1.3", - "thiserror 1.0.63", + "getrandom 0.2.17", + "libredox", + "thiserror 2.0.18", ] [[package]] -name = "regex" -version = "1.10.6" +name = "ref-cast" +version = "1.0.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4219d74c6b67a3654a9fbebc4b419e22126d13d2f3c4a07ee0cb61ff79a79619" +checksum = "f354300ae66f76f1c85c5f84693f0ce81d747e2c3f21a45fef496d89c960bf7d" dependencies = [ - "aho-corasick", - "memchr", - "regex-automata 0.4.7", - "regex-syntax 0.8.4", + "ref-cast-impl", ] [[package]] -name = "regex-automata" -version = "0.1.10" +name = "ref-cast-impl" +version = "1.0.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132" +checksum = "b7186006dcb21920990093f30e3dea63b7d6e977bf1256be20c3563a5db070da" dependencies = [ - "regex-syntax 0.6.29", + "proc-macro2", + "quote", + "syn 2.0.117", ] [[package]] -name = "regex-automata" -version = "0.4.7" +name = "regex" +version = "1.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38caf58cc5ef2fed281f89292ef23f6365465ed9a41b7a7754eb4e26496c92df" +checksum = "e10754a14b9137dd7b1e3e5b0493cc9171fdd105e0ab477f51b72e7f3ac0e276" dependencies = [ "aho-corasick", "memchr", - "regex-syntax 0.8.4", + "regex-automata", + "regex-syntax", ] [[package]] -name = "regex-syntax" -version = "0.6.29" +name = "regex-automata" +version = "0.4.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" +checksum = "6e1dd4122fc1595e8162618945476892eefca7b88c52820e74af6262213cae8f" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax", +] [[package]] name = "regex-syntax" -version = "0.8.4" +version = "0.8.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b" +checksum = "dc897dd8d9e8bd1ed8cdad82b5966c3e0ecae09fb1907d58efaa013543185d0a" [[package]] name = "relative-path" @@ -2742,11 +2898,11 @@ checksum = "ba39f3699c378cd8970968dcbff9c43159ea4cfbd88d43c00b22f2ef10a435d2" [[package]] name = "reqwest" -version = "0.12.7" +version = "0.12.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8f4955649ef5c38cc7f9e8aa41761d48fb9677197daea9984dc54f56aad5e63" +checksum = "eddd3ca559203180a307f12d114c268abf583f59b03cb906fd0b3ff8646c1147" dependencies = [ - "base64 0.22.1", + "base64", "bytes", "futures-channel", "futures-core", @@ -2755,73 +2911,98 @@ dependencies = [ "http-body", "http-body-util", "hyper", + "hyper-util", + "js-sys", + "log", + "percent-encoding", + "pin-project-lite", + "serde", + "serde_json", + "serde_urlencoded", + "sync_wrapper", + "tokio", + "tower", + "tower-http", + "tower-service", + "url", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", +] + +[[package]] +name = "reqwest" +version = "0.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ab3f43e3283ab1488b624b44b0e988d0acea0b3214e694730a055cb6b2efa801" +dependencies = [ + "base64", + "bytes", + "futures-core", + "http", + "http-body", + "http-body-util", + "hyper", "hyper-rustls", "hyper-util", - "ipnet", "js-sys", "log", - "mime", - "once_cell", "percent-encoding", "pin-project-lite", "quinn", "rustls", - "rustls-native-certs", - "rustls-pemfile", "rustls-pki-types", + "rustls-platform-verifier", "serde", "serde_json", - "serde_urlencoded", - "sync_wrapper 1.0.1", + "sync_wrapper", "tokio", "tokio-rustls", + "tower", + "tower-http", "tower-service", "url", "wasm-bindgen", "wasm-bindgen-futures", "web-sys", - "webpki-roots", - "windows-registry", ] [[package]] name = "ring" -version = "0.17.8" +version = "0.17.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d" +checksum = "a4689e6c2294d81e88dc6261c768b63bc4fcdb852be6d1352498b114f61383b7" dependencies = [ "cc", "cfg-if", - "getrandom 0.2.15", + "getrandom 0.2.17", "libc", - "spin", "untrusted", "windows-sys 0.52.0", ] [[package]] name = "roff" -version = "0.2.2" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88f8660c1ff60292143c98d08fc6e2f654d722db50410e3f3797d40baaf9d8f3" +checksum = "323c417e1d9665a65b263ec744ba09030cfb277e9daa0b018a4ab62e57bc8189" [[package]] name = "rstest" -version = "0.22.0" +version = "0.26.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b423f0e62bdd61734b67cd21ff50871dfaeb9cc74f869dcd6af974fbcb19936" +checksum = "f5a3193c063baaa2a95a33f03035c8a72b83d97a54916055ba22d35ed3839d49" dependencies = [ - "futures", "futures-timer", + "futures-util", "rstest_macros", - "rustc_version", ] [[package]] name = "rstest_macros" -version = "0.22.0" +version = "0.26.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c5e1711e7d14f74b12a58411c542185ef7fb7f2e7f8ee6e2940a883628522b42" +checksum = "9c845311f0ff7951c5506121a9ad75aec44d083c31583b2ea5a30bcb0b0abba0" dependencies = [ "cfg-if", "glob", @@ -2831,15 +3012,15 @@ dependencies = [ "regex", "relative-path", "rustc_version", - "syn 2.0.87", + "syn 2.0.117", "unicode-ident", ] [[package]] name = "rust-embed" -version = "8.5.0" +version = "8.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa66af4a4fdd5e7ebc276f115e895611a34739a9c1c01028383d612d550953c0" +checksum = "04113cb9355a377d83f06ef1f0a45b8ab8cd7d8b1288160717d66df5c7988d27" dependencies = [ "rust-embed-impl", "rust-embed-utils", @@ -2848,44 +3029,32 @@ dependencies = [ [[package]] name = "rust-embed-impl" -version = "8.5.0" +version = "8.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6125dbc8867951125eec87294137f4e9c2c96566e61bf72c45095a7c77761478" +checksum = "da0902e4c7c8e997159ab384e6d0fc91c221375f6894346ae107f47dd0f3ccaa" dependencies = [ "proc-macro2", "quote", "rust-embed-utils", - "syn 2.0.87", + "syn 2.0.117", "walkdir", ] [[package]] name = "rust-embed-utils" -version = "8.5.0" +version = "8.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e5347777e9aacb56039b0e1f28785929a8a3b709e87482e7442c72e7c12529d" +checksum = "5bcdef0be6fe7f6fa333b1073c949729274b05f123a0ad7efcb8efd878e5c3b1" dependencies = [ "sha2", "walkdir", ] -[[package]] -name = "rustc-demangle" -version = "0.1.24" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" - -[[package]] -name = "rustc-hash" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" - [[package]] name = "rustc-hash" -version = "2.0.0" +version = "2.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "583034fd73374156e66797ed8e5b0d5690409c9226b22d87cb7f19821c05d152" +checksum = "94300abf3f1ae2e2b8ffb7b58043de3d399c73fa6f4b73826402a5c457614dbe" [[package]] name = "rustc_version" @@ -2898,23 +3067,24 @@ dependencies = [ [[package]] name = "rustix" -version = "0.38.35" +version = "1.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a85d50532239da68e9addb745ba38ff4612a242c1c7ceea689c4bc7c2f43c36f" +checksum = "b6fe4565b9518b83ef4f91bb47ce29620ca828bd32cb7e408f0062e9930ba190" dependencies = [ - "bitflags 2.6.0", + "bitflags", "errno", "libc", "linux-raw-sys", - "windows-sys 0.52.0", + "windows-sys 0.61.2", ] [[package]] name = "rustls" -version = "0.23.25" +version = "0.23.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "822ee9188ac4ec04a2f0531e55d035fb2de73f18b41a63c70c2712503b6fb13c" +checksum = "758025cb5fccfd3bc2fd74708fd4682be41d99e5dff73c377c0646c6012c73a4" dependencies = [ + "aws-lc-rs", "log", "once_cell", "ring", @@ -2926,39 +3096,60 @@ dependencies = [ [[package]] name = "rustls-native-certs" -version = "0.7.3" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5bfb394eeed242e909609f56089eecfe5fda225042e8b171791b9c95f5931e5" +checksum = "612460d5f7bea540c490b2b6395d8e34a953e52b491accd6c86c8164c5932a63" dependencies = [ "openssl-probe", - "rustls-pemfile", "rustls-pki-types", "schannel", "security-framework", ] [[package]] -name = "rustls-pemfile" -version = "2.1.3" +name = "rustls-pki-types" +version = "1.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "196fe16b00e106300d3e45ecfcb764fa292a535d7326a29a5875c579c7417425" +checksum = "be040f8b0a225e40375822a563fa9524378b9d63112f53e19ffff34df5d33fdd" dependencies = [ - "base64 0.22.1", - "rustls-pki-types", + "web-time", + "zeroize", ] [[package]] -name = "rustls-pki-types" -version = "1.11.0" +name = "rustls-platform-verifier" +version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "917ce264624a4b4db1c364dcc35bfca9ded014d0a958cd47ad3e960e988ea51c" +checksum = "1d99feebc72bae7ab76ba994bb5e121b8d83d910ca40b36e0921f53becc41784" +dependencies = [ + "core-foundation", + "core-foundation-sys", + "jni", + "log", + "once_cell", + "rustls", + "rustls-native-certs", + "rustls-platform-verifier-android", + "rustls-webpki", + "security-framework", + "security-framework-sys", + "webpki-root-certs", + "windows-sys 0.61.2", +] + +[[package]] +name = "rustls-platform-verifier-android" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f87165f0995f63a9fbeea62b64d10b4d9d8e78ec6d7d51fb2125fda7bb36788f" [[package]] name = "rustls-webpki" -version = "0.103.1" +version = "0.103.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fef8b8769aaccf73098557a87cd1816b4f9c7c16811c9c77142aa695c16f2c03" +checksum = "61c429a8649f110dddef65e2a5ad240f747e85f7758a6bccc7e5777bd33f756e" dependencies = [ + "aws-lc-rs", "ring", "rustls-pki-types", "untrusted", @@ -2966,15 +3157,15 @@ dependencies = [ [[package]] name = "rustversion" -version = "1.0.17" +version = "1.0.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "955d28af4278de8121b7ebeb796b6a45735dc01436d898801014aced2773a3d6" +checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d" [[package]] name = "ryu" -version = "1.0.18" +version = "1.0.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" +checksum = "9774ba4a74de5f7b1c1451ed6cd5285a32eddb5cccb8cc655a4e50009e06477f" [[package]] name = "same-file" @@ -2987,20 +3178,21 @@ dependencies = [ [[package]] name = "schannel" -version = "0.1.23" +version = "0.1.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbc91545643bcf3a0bbb6569265615222618bdf33ce4ffbbd13c4bbd4c093534" +checksum = "91c1b7e4904c873ef0710c1f407dde2e6287de2bebc1bbbf7d430bb7cbffd939" dependencies = [ - "windows-sys 0.52.0", + "windows-sys 0.61.2", ] [[package]] name = "schemars" -version = "0.8.22" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fbf2ae1b8bc8e02df939598064d22402220cd5bbcca1c76f7d6a310974d5615" +checksum = "a2b42f36aa1cd011945615b92222f6bf73c599a102a300334cd7f8dbeec726cc" dependencies = [ "dyn-clone", + "ref-cast", "schemars_derive", "serde", "serde_json", @@ -3009,14 +3201,14 @@ dependencies = [ [[package]] name = "schemars_derive" -version = "0.8.22" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32e265784ad618884abaea0600a9adf15393368d840e0222d101a072f3f7534d" +checksum = "7d115b50f4aaeea07e79c1912f645c7513d81715d0420f8bc77a18c6260b307f" dependencies = [ "proc-macro2", "quote", "serde_derive_internals", - "syn 2.0.87", + "syn 2.0.117", ] [[package]] @@ -3036,11 +3228,11 @@ dependencies = [ [[package]] name = "security-framework" -version = "2.11.1" +version = "3.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02" +checksum = "b7f4bc775c73d9a02cde8bf7b2ec4c9d12743edf609006c7facc23998404cd1d" dependencies = [ - "bitflags 2.6.0", + "bitflags", "core-foundation", "core-foundation-sys", "libc", @@ -3049,9 +3241,9 @@ dependencies = [ [[package]] name = "security-framework-sys" -version = "2.11.1" +version = "2.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75da29fe9b9b08fe9d6b22b5b4bcbc75d8db3aa31e639aa56bb62e9d46bfceaf" +checksum = "6ce2691df843ecc5d231c0b14ece2acc3efb62c0a398c7e1d875f3983ce020e3" dependencies = [ "core-foundation-sys", "libc", @@ -3059,19 +3251,21 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.23" +version = "1.0.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b" +checksum = "8a7852d02fc848982e0c167ef163aaff9cd91dc640ba85e263cb1ce46fae51cd" dependencies = [ "serde", + "serde_core", ] [[package]] name = "serde" -version = "1.0.219" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6" +checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e" dependencies = [ + "serde_core", "serde_derive", ] @@ -3085,15 +3279,24 @@ dependencies = [ "serde", ] +[[package]] +name = "serde_core" +version = "1.0.228" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad" +dependencies = [ + "serde_derive", +] + [[package]] name = "serde_derive" -version = "1.0.219" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00" +checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.117", ] [[package]] @@ -3104,29 +3307,40 @@ checksum = "18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.117", ] [[package]] name = "serde_json" -version = "1.0.140" +version = "1.0.149" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "20068b6e96dc6c9bd23e01df8827e6c7e1f2fddd43c21810382803c136b99373" +checksum = "83fc039473c5595ace860d8c4fafa220ff474b3fc6bfdb4293327f1a37e94d86" dependencies = [ "itoa", "memchr", - "ryu", "serde", + "serde_core", + "zmij", ] [[package]] name = "serde_path_to_error" -version = "0.1.16" +version = "0.1.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af99884400da37c88f5e9146b7f1fd0fbcae8f6eec4e9da38b67d05486f814a6" +checksum = "10a9ff822e371bb5403e391ecd83e182e0e77ba7f6fe0160b795797109d1b457" dependencies = [ "itoa", "serde", + "serde_core", +] + +[[package]] +name = "serde_spanned" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6662b5879511e06e8999a8a235d848113e942c9124f211511b16466ee2995f26" +dependencies = [ + "serde_core", ] [[package]] @@ -3147,7 +3361,7 @@ version = "0.9.34+deprecated" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47" dependencies = [ - "indexmap 2.5.0", + "indexmap", "itoa", "ryu", "serde", @@ -3161,18 +3375,18 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" dependencies = [ "cfg-if", - "cpufeatures", + "cpufeatures 0.2.17", "digest", ] [[package]] name = "sha2" -version = "0.10.8" +version = "0.10.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" +checksum = "a7507d819769d01a365ab707794a4084392c824f54a7a6a7862f8c3d0892b283" dependencies = [ "cfg-if", - "cpufeatures", + "cpufeatures 0.2.17", "digest", ] @@ -3185,6 +3399,12 @@ dependencies = [ "lazy_static", ] +[[package]] +name = "shell-words" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc6fe69c597f9c37bfeeeeeb33da3530379845f10be461a66d16d03eca2ded77" + [[package]] name = "shlex" version = "1.3.0" @@ -3193,27 +3413,31 @@ checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" [[package]] name = "signal-hook-registry" -version = "1.4.2" +version = "1.4.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9e9e0b4211b72e7b8b6e85c807d36c212bdb33ea8587f7569562a84df5465b1" +checksum = "c4db69cba1110affc0e9f7bcd48bbf87b3f4fc7c61fc9155afd4c469eb3d6c1b" dependencies = [ + "errno", "libc", ] [[package]] -name = "siphasher" -version = "0.3.11" +name = "simd-adler32" +version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d" +checksum = "703d5c7ef118737c72f1af64ad2f6f8c5e1921f818cdcb97b8fe6fc69bf66214" [[package]] -name = "slab" -version = "0.4.9" +name = "siphasher" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" -dependencies = [ - "autocfg", -] +checksum = "b2aa850e253778c88a04c3d7323b043aeda9d3e30d5971937c1855769763678e" + +[[package]] +name = "slab" +version = "0.4.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c790de23124f9ab44544d7ac05d60440adc586479ce501c1d6d7da3cd8c9cf5" [[package]] name = "slug" @@ -3227,9 +3451,9 @@ dependencies = [ [[package]] name = "smallvec" -version = "1.13.2" +version = "1.15.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" +checksum = "67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03" [[package]] name = "snafu" @@ -3243,13 +3467,22 @@ dependencies = [ [[package]] name = "snafu" -version = "0.8.4" +version = "0.8.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e84b3f4eacbf3a1ce05eac6763b4d629d60cbc94d632e4092c54ade71f1e1a2" +dependencies = [ + "snafu-derive 0.8.9", +] + +[[package]] +name = "snafu" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b835cb902660db3415a672d862905e791e54d306c6e8189168c7f3d9ae1c79d" +checksum = "d1d4bced6a69f90b2056c03dcff2c4737f98d6fb9e0853493996e1d253ca29c6" dependencies = [ "futures-core", "pin-project", - "snafu-derive 0.8.4", + "snafu-derive 0.9.0", ] [[package]] @@ -3265,52 +3498,64 @@ dependencies = [ [[package]] name = "snafu-derive" -version = "0.8.4" +version = "0.8.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38d1e02fca405f6280643174a50c942219f0bbf4dbf7d480f1dd864d6f211ae5" +checksum = "c1c97747dbf44bb1ca44a561ece23508e99cb592e862f22222dcf42f51d1e451" dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.117", +] + +[[package]] +name = "snafu-derive" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "54254b8531cafa275c5e096f62d48c81435d1015405a91198ddb11e967301d40" +dependencies = [ + "heck", + "proc-macro2", + "quote", + "syn 2.0.117", ] [[package]] name = "socket2" -version = "0.5.9" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f5fd57c80058a56cf5c777ab8a126398ece8e442983605d280a44ce79d0edef" +checksum = "3a766e1110788c36f4fa1c2b71b387a7815aa65f88ce0229841826633d93723e" dependencies = [ "libc", - "windows-sys 0.52.0", + "windows-sys 0.61.2", ] [[package]] -name = "spin" -version = "0.9.8" +name = "stable_deref_trait" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" +checksum = "6ce2be8dc25455e1f91df71bfa12ad37d7af1092ae736f3a6cd0e37bc7810596" [[package]] name = "stackable-cockpit" version = "0.0.0-dev" dependencies = [ "bcrypt", + "clap", + "either", "futures", "helm-sys", - "indexmap 2.5.0", + "indexmap", "indicatif", - "k8s-openapi", - "kube", - "rand 0.8.5", - "reqwest", + "rand 0.10.0", + "reqwest 0.13.2", "rstest", "semver", "serde", "serde_json", "serde_yaml", "sha2", - "snafu 0.8.4", + "snafu 0.9.0", "stackable-operator", "tera", "tokio", @@ -3322,30 +3567,20 @@ dependencies = [ "which", ] -[[package]] -name = "stackable-cockpit-web" -version = "0.0.0-dev" -dependencies = [ - "phf", - "phf_codegen", -] - [[package]] name = "stackable-cockpitd" version = "0.0.0-dev" dependencies = [ - "axum 0.7.5", + "axum", "axum-extra", "bcrypt", "clap", "futures", - "k8s-openapi", "serde", - "snafu 0.8.4", + "snafu 0.9.0", "stackable-cockpit", - "stackable-cockpit-web", "tokio", - "tower-http 0.5.2", + "tower-http", "tracing", "tracing-subscriber", "utoipa", @@ -3355,10 +3590,10 @@ dependencies = [ [[package]] name = "stackable-operator" -version = "0.92.0" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.92.0#5fdc47a10de685e4eea49fd0a3f6c3a15a4966c1" +version = "0.109.0" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.109.0#a4a204b0696a696b9a49c930703037dd124e876d" dependencies = [ - "chrono", + "base64", "clap", "const_format", "delegate", @@ -3366,23 +3601,26 @@ dependencies = [ "educe", "either", "futures", - "indexmap 2.5.0", + "http", + "indexmap", + "jiff", "json-patch", "k8s-openapi", "kube", "product-config", + "rand 0.9.2", "regex", "schemars", "semver", "serde", "serde_json", "serde_yaml", - "snafu 0.8.4", + "snafu 0.9.0", "stackable-operator-derive", "stackable-shared", "stackable-telemetry", "stackable-versioned", - "strum 0.27.1", + "strum", "tokio", "tracing", "tracing-appender", @@ -3393,43 +3631,49 @@ dependencies = [ [[package]] name = "stackable-operator-derive" version = "0.3.1" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.92.0#5fdc47a10de685e4eea49fd0a3f6c3a15a4966c1" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.109.0#a4a204b0696a696b9a49c930703037dd124e876d" dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.117", ] [[package]] name = "stackable-shared" -version = "0.0.1" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.92.0#5fdc47a10de685e4eea49fd0a3f6c3a15a4966c1" +version = "0.1.0" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.109.0#a4a204b0696a696b9a49c930703037dd124e876d" dependencies = [ + "jiff", + "k8s-openapi", "kube", + "schemars", "semver", "serde", "serde_yaml", - "snafu 0.8.4", + "snafu 0.9.0", + "strum", + "time", ] [[package]] name = "stackable-telemetry" -version = "0.6.0" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.92.0#5fdc47a10de685e4eea49fd0a3f6c3a15a4966c1" +version = "0.6.3" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.109.0#a4a204b0696a696b9a49c930703037dd124e876d" dependencies = [ - "axum 0.8.3", + "axum", "clap", "futures-util", "opentelemetry", "opentelemetry-appender-tracing", "opentelemetry-otlp", + "opentelemetry-semantic-conventions", "opentelemetry_sdk", "pin-project", - "snafu 0.8.4", - "strum 0.27.1", + "snafu 0.9.0", + "strum", "tokio", - "tower 0.5.2", + "tower", "tracing", "tracing-appender", "tracing-opentelemetry", @@ -3438,55 +3682,66 @@ dependencies = [ [[package]] name = "stackable-versioned" -version = "0.7.1" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.92.0#5fdc47a10de685e4eea49fd0a3f6c3a15a4966c1" +version = "0.9.0" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.109.0#a4a204b0696a696b9a49c930703037dd124e876d" dependencies = [ + "schemars", + "serde", + "serde_json", + "serde_yaml", + "snafu 0.9.0", "stackable-versioned-macros", ] [[package]] name = "stackable-versioned-macros" -version = "0.7.1" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.92.0#5fdc47a10de685e4eea49fd0a3f6c3a15a4966c1" +version = "0.9.0" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.109.0#a4a204b0696a696b9a49c930703037dd124e876d" dependencies = [ "convert_case", + "convert_case_extras", "darling", + "indoc", "itertools 0.14.0", "k8s-openapi", "k8s-version", "kube", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.117", ] [[package]] name = "stackablectl" -version = "1.0.0" +version = "1.4.0" dependencies = [ + "built", "clap", "clap_complete", "clap_complete_nushell", "comfy-table", + "dialoguer", "directories", "dotenvy", "futures", - "indexmap 2.5.0", + "indexmap", "indicatif", "lazy_static", "libc", - "rand 0.8.5", - "reqwest", + "rand 0.10.0", + "reqwest 0.13.2", + "rustls", "semver", "serde", "serde_json", "serde_yaml", - "snafu 0.8.4", + "snafu 0.9.0", "stackable-cockpit", "stackable-operator", "tera", "termion", "tokio", + "toml", "tracing", "tracing-indicatif", "tracing-subscriber", @@ -3501,43 +3756,23 @@ checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" [[package]] name = "strum" -version = "0.26.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06" - -[[package]] -name = "strum" -version = "0.27.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f64def088c51c9510a8579e3c5d67c65349dcf755e5479ad3d010aa6454e2c32" -dependencies = [ - "strum_macros 0.27.1", -] - -[[package]] -name = "strum_macros" -version = "0.26.4" +version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be" +checksum = "9628de9b8791db39ceda2b119bbe13134770b56c138ec1d3af810d045c04f9bd" dependencies = [ - "heck", - "proc-macro2", - "quote", - "rustversion", - "syn 2.0.87", + "strum_macros", ] [[package]] name = "strum_macros" -version = "0.27.1" +version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c77a8c5abcaf0f9ce05d62342b7d298c346515365c36b673df4ebe3ced01fde8" +checksum = "ab85eea0270ee17587ed4156089e10b9e6880ee688791d45a905f5b1ca36f664" dependencies = [ "heck", "proc-macro2", "quote", - "rustversion", - "syn 2.0.87", + "syn 2.0.117", ] [[package]] @@ -3559,9 +3794,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.87" +version = "2.0.117" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25aa4ce346d03a6dcd68dd8b4010bcb74e54e62c90c573f394c46eae99aba32d" +checksum = "e665b8803e7b1d2a727f4023456bbbbe74da67099c585258af0ad9c5013b9b99" dependencies = [ "proc-macro2", "quote", @@ -3570,24 +3805,42 @@ dependencies = [ [[package]] name = "sync_wrapper" -version = "0.1.2" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" +checksum = "0bf256ce5efdfa370213c1dabab5935a12e49f2c58d15e9eac2870d3b4f27263" +dependencies = [ + "futures-core", +] [[package]] -name = "sync_wrapper" -version = "1.0.1" +name = "synstructure" +version = "0.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7065abeca94b6a8a577f9bd45aa0867a2238b74e8eb67cf10d492bc39351394" +checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2" dependencies = [ - "futures-core", + "proc-macro2", + "quote", + "syn 2.0.117", +] + +[[package]] +name = "tempfile" +version = "3.27.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32497e9a4c7b38532efcdebeef879707aa9f794296a4f0244f6f69e9bc8574bd" +dependencies = [ + "fastrand", + "getrandom 0.4.2", + "once_cell", + "rustix", + "windows-sys 0.61.2", ] [[package]] name = "tera" -version = "1.20.0" +version = "1.20.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab9d851b45e865f178319da0abdbfe6acbc4328759ff18dafc3a41c16b4cd2ee" +checksum = "e8004bca281f2d32df3bacd59bc67b312cb4c70cea46cbd79dbe8ac5ed206722" dependencies = [ "chrono", "chrono-tz", @@ -3602,107 +3855,114 @@ dependencies = [ "serde", "serde_json", "slug", - "unic-segment", + "unicode-segmentation", ] [[package]] name = "termion" -version = "4.0.2" +version = "4.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ccce68e518d1173e80876edd54760b60b792750d0cab6444a79101c6ea03848" +checksum = "f44138a9ae08f0f502f24104d82517ef4da7330c35acd638f1f29d3cd5475ecb" dependencies = [ "libc", - "libredox 0.0.2", "numtoa", - "redox_termios", ] [[package]] name = "thiserror" -version = "1.0.63" +version = "1.0.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0342370b38b6a11b6cc11d6a805569958d54cfa061a29969c3b5ce2ea405724" +checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52" dependencies = [ - "thiserror-impl 1.0.63", + "thiserror-impl 1.0.69", ] [[package]] name = "thiserror" -version = "2.0.12" +version = "2.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "567b8a2dae586314f7be2a752ec7474332959c6460e02bde30d702a66d488708" +checksum = "4288b5bcbc7920c07a1149a35cf9590a2aa808e0bc1eafaade0b80947865fbc4" dependencies = [ - "thiserror-impl 2.0.12", + "thiserror-impl 2.0.18", ] [[package]] name = "thiserror-impl" -version = "1.0.63" +version = "1.0.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4558b58466b9ad7ca0f102865eccc95938dca1a74a856f2b57b6629050da261" +checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.117", ] [[package]] name = "thiserror-impl" -version = "2.0.12" +version = "2.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f7cf42b4507d8ea322120659672cf1b9dbb93f8f2d4ecfd6e51350ff5b17a1d" +checksum = "ebc4ee7f67670e9b64d05fa4253e753e016c6c95ff35b89b7941d6b856dec1d5" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.117", ] [[package]] name = "thread_local" -version = "1.1.8" +version = "1.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c" +checksum = "f60246a4944f24f6e018aa17cdeffb7818b76356965d03b07d6a9886e8962185" dependencies = [ "cfg-if", - "once_cell", ] [[package]] name = "time" -version = "0.3.36" +version = "0.3.47" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885" +checksum = "743bd48c283afc0388f9b8827b976905fb217ad9e647fae3a379a9283c4def2c" dependencies = [ "deranged", "itoa", "num-conv", "powerfmt", - "serde", + "serde_core", "time-core", "time-macros", ] [[package]] name = "time-core" -version = "0.1.2" +version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" +checksum = "7694e1cfe791f8d31026952abf09c69ca6f6fa4e1a1229e18988f06a04a12dca" [[package]] name = "time-macros" -version = "0.2.18" +version = "0.2.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf" +checksum = "2e70e4c5a0e0a8a4823ad65dfe1a6930e4f4d756dcd9dd7939022b5e8c501215" dependencies = [ "num-conv", "time-core", ] +[[package]] +name = "tinystr" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8323304221c2a851516f22236c5722a72eaa19749016521d6dff0824447d96d" +dependencies = [ + "displaydoc", + "zerovec", +] + [[package]] name = "tinyvec" -version = "1.8.0" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "445e881f4f6d382d5f27c034e25eb92edd7c784ceab92a0937db7f2e9471b938" +checksum = "3e61e67053d25a4e82c844e8424039d9745781b3fc4f32b8d55ed50f5f667ef3" dependencies = [ "tinyvec_macros", ] @@ -3715,11 +3975,10 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.40.0" +version = "1.51.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2b070231665d27ad9ec9b8df639893f46727666c6767db40317fbe920a5d998" +checksum = "2bd1c4c0fc4a7ab90fc15ef6daaa3ec3b893f004f915f2392557ed23237820cd" dependencies = [ - "backtrace", "bytes", "libc", "mio", @@ -3727,36 +3986,35 @@ dependencies = [ "signal-hook-registry", "socket2", "tokio-macros", - "windows-sys 0.52.0", + "windows-sys 0.61.2", ] [[package]] name = "tokio-macros" -version = "2.4.0" +version = "2.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752" +checksum = "385a6cb71ab9ab790c5fe8d67f1645e6c450a7ce006a33de03daa956cf70a496" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.117", ] [[package]] name = "tokio-rustls" -version = "0.26.0" +version = "0.26.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c7bc40d0e5a97695bb96e27995cd3a08538541b0a846f65bba7a359f36700d4" +checksum = "1729aa945f29d91ba541258c8df89027d5792d85a8841fb65e8bf0f4ede4ef61" dependencies = [ "rustls", - "rustls-pki-types", "tokio", ] [[package]] name = "tokio-stream" -version = "0.1.17" +version = "0.1.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eca58d7bba4a75707817a2c44174253f9236b2d5fbd055602e9d5c07c139a047" +checksum = "32da49809aab5c3bc678af03902d4ccddea2a87d028d86392a4b1560c6906c70" dependencies = [ "futures-core", "pin-project-lite", @@ -3765,9 +4023,9 @@ dependencies = [ [[package]] name = "tokio-tungstenite" -version = "0.26.2" +version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a9daff607c6d2bf6c16fd681ccb7eecc83e4e2cdc1ca067ffaadfca5de7f084" +checksum = "d25a406cddcc431a75d3d9afc6a7c0f7428d4891dd973e4d54c56b46127bf857" dependencies = [ "futures-util", "log", @@ -3777,9 +4035,9 @@ dependencies = [ [[package]] name = "tokio-util" -version = "0.7.11" +version = "0.7.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9cf6b47b3771c49ac75ad09a6162f53ad4b8088b76ac60e8ec1455b31a189fe1" +checksum = "9ae9cec805b01e8fc3fd2fe289f89149a9b66dd16786abd8b19cfa7b48cb0098" dependencies = [ "bytes", "futures-core", @@ -3789,36 +4047,67 @@ dependencies = [ "tokio", ] +[[package]] +name = "toml" +version = "1.1.2+spec-1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "81f3d15e84cbcd896376e6730314d59fb5a87f31e4b038454184435cd57defee" +dependencies = [ + "indexmap", + "serde_core", + "serde_spanned", + "toml_datetime", + "toml_parser", + "toml_writer", + "winnow", +] + [[package]] name = "toml_datetime" -version = "0.6.8" +version = "1.1.1+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41" +checksum = "3165f65f62e28e0115a00b2ebdd37eb6f3b641855f9d636d3cd4103767159ad7" +dependencies = [ + "serde_core", +] [[package]] name = "toml_edit" -version = "0.22.20" +version = "0.25.10+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "583c44c02ad26b0c3f3066fe629275e50627026c51ac2e595cca4c230ce1ce1d" +checksum = "a82418ca169e235e6c399a84e395ab6debeb3bc90edc959bf0f48647c6a32d1b" dependencies = [ - "indexmap 2.5.0", + "indexmap", "toml_datetime", + "toml_parser", + "winnow", +] + +[[package]] +name = "toml_parser" +version = "1.1.2+spec-1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a2abe9b86193656635d2411dc43050282ca48aa31c2451210f4202550afb7526" +dependencies = [ "winnow", ] +[[package]] +name = "toml_writer" +version = "1.1.1+spec-1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "756daf9b1013ebe47a8776667b466417e2d4c5679d441c26230efd9ef78692db" + [[package]] name = "tonic" -version = "0.12.3" +version = "0.14.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "877c5b330756d856ffcc4553ab34a5684481ade925ecc54bcd1bf02b1d0d4d52" +checksum = "fec7c61a0695dc1887c1b53952990f3ad2e3a31453e1f49f10e75424943a93ec" dependencies = [ - "async-stream", "async-trait", - "axum 0.7.5", - "base64 0.22.1", + "base64", "bytes", "flate2", - "h2", "http", "http-body", "http-body-util", @@ -3827,46 +4116,38 @@ dependencies = [ "hyper-util", "percent-encoding", "pin-project", - "prost", - "socket2", + "sync_wrapper", "tokio", "tokio-stream", - "tower 0.4.13", + "tower", "tower-layer", "tower-service", "tracing", ] [[package]] -name = "tower" -version = "0.4.13" +name = "tonic-prost" +version = "0.14.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c" +checksum = "a55376a0bbaa4975a3f10d009ad763d8f4108f067c7c2e74f3001fb49778d309" dependencies = [ - "futures-core", - "futures-util", - "indexmap 1.9.3", - "pin-project", - "pin-project-lite", - "rand 0.8.5", - "slab", - "tokio", - "tokio-util", - "tower-layer", - "tower-service", - "tracing", + "bytes", + "prost", + "tonic", ] [[package]] name = "tower" -version = "0.5.2" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d039ad9159c98b70ecfd540b2573b97f7f52c3e8d9f8ad57a24b916a536975f9" +checksum = "ebe5ef63511595f1344e2d5cfa636d973292adc0eec1f0ad45fae9f0851ab1d4" dependencies = [ "futures-core", "futures-util", + "indexmap", "pin-project-lite", - "sync_wrapper 1.0.1", + "slab", + "sync_wrapper", "tokio", "tokio-util", "tower-layer", @@ -3876,34 +4157,20 @@ dependencies = [ [[package]] name = "tower-http" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e9cd434a998747dd2c4276bc96ee2e0c7a2eadf3cae88e52be55a05fa9053f5" -dependencies = [ - "bitflags 2.6.0", - "bytes", - "http", - "http-body", - "http-body-util", - "mime", - "pin-project-lite", - "tower-layer", - "tower-service", -] - -[[package]] -name = "tower-http" -version = "0.6.2" +version = "0.6.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "403fa3b783d4b626a8ad51d766ab03cb6d2dbfc46b1c5d4448395e6628dc9697" +checksum = "d4e6559d53cc268e5031cd8429d05415bc4cb4aefc4aa5d6cc35fbf5b924a1f8" dependencies = [ - "base64 0.22.1", - "bitflags 2.6.0", + "base64", + "bitflags", "bytes", + "futures-util", "http", "http-body", + "iri-string", "mime", "pin-project-lite", + "tower", "tower-layer", "tower-service", "tracing", @@ -3923,9 +4190,9 @@ checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3" [[package]] name = "tracing" -version = "0.1.40" +version = "0.1.44" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" +checksum = "63e71662fa4b2a2c3a26f570f037eb95bb1f85397f3cd8076caed2f026a6d100" dependencies = [ "log", "pin-project-lite", @@ -3935,32 +4202,32 @@ dependencies = [ [[package]] name = "tracing-appender" -version = "0.2.3" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3566e8ce28cc0a3fe42519fc80e6b4c943cc4c8cef275620eb8dac2d3d4e06cf" +checksum = "786d480bce6247ab75f005b14ae1624ad978d3029d9113f0a22fa1ac773faeaf" dependencies = [ "crossbeam-channel", - "thiserror 1.0.63", + "thiserror 2.0.18", "time", "tracing-subscriber", ] [[package]] name = "tracing-attributes" -version = "0.1.27" +version = "0.1.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" +checksum = "7490cfa5ec963746568740651ac6781f701c9c5ea257c58e057f3ba8cf69e8da" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.117", ] [[package]] name = "tracing-core" -version = "0.1.33" +version = "0.1.36" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e672c95779cf947c5311f83787af4fa8fffd12fb27e4993211a84bdfd9610f9c" +checksum = "db97caf9d906fbde555dd62fa95ddba9eecfd14cb388e4f491a66d74cd5fb79a" dependencies = [ "once_cell", "valuable", @@ -3968,9 +4235,9 @@ dependencies = [ [[package]] name = "tracing-indicatif" -version = "0.3.9" +version = "0.3.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8201ca430e0cd893ef978226fd3516c06d9c494181c8bf4e5b32e30ed4b40aa1" +checksum = "e1ef6990e0438749f0080573248e96631171a0b5ddfddde119aa5ba8c3a9c47e" dependencies = [ "indicatif", "tracing", @@ -3991,14 +4258,12 @@ dependencies = [ [[package]] name = "tracing-opentelemetry" -version = "0.29.0" +version = "0.32.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "721f2d2569dce9f3dfbbddee5906941e953bfcdf736a62da3377f5751650cc36" +checksum = "1ac28f2d093c6c477eaa76b23525478f38de514fa9aeb1285738d4b97a9552fc" dependencies = [ "js-sys", - "once_cell", "opentelemetry", - "opentelemetry_sdk", "smallvec", "tracing", "tracing-core", @@ -4009,9 +4274,9 @@ dependencies = [ [[package]] name = "tracing-serde" -version = "0.1.3" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc6b213177105856957181934e4920de57730fc69bf42c37ee5bb664d406d9e1" +checksum = "704b1aeb7be0d0a84fc9828cae51dab5970fee5088f83d1dd7ee6f6246fc6ff1" dependencies = [ "serde", "tracing-core", @@ -4019,14 +4284,14 @@ dependencies = [ [[package]] name = "tracing-subscriber" -version = "0.3.18" +version = "0.3.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b" +checksum = "cb7f578e5945fb242538965c2d0b04418d38ec25c79d160cd279bf0731c8d319" dependencies = [ "matchers", "nu-ansi-term", "once_cell", - "regex", + "regex-automata", "serde", "serde_json", "sharded-slab", @@ -4046,136 +4311,68 @@ checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" [[package]] name = "tungstenite" -version = "0.26.2" +version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4793cb5e56680ecbb1d843515b23b6de9a75eb04b66643e256a396d43be33c13" +checksum = "8628dcc84e5a09eb3d8423d6cb682965dea9133204e8fb3efee74c2a0c259442" dependencies = [ "bytes", "data-encoding", "http", "httparse", "log", - "rand 0.9.0", + "rand 0.9.2", "sha1", - "thiserror 2.0.12", + "thiserror 2.0.18", "utf-8", ] [[package]] name = "typenum" -version = "1.17.0" +version = "1.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" +checksum = "562d481066bde0658276a35467c4af00bdc6ee726305698a55b86e61d7ad82bb" [[package]] name = "ucd-trie" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed646292ffc8188ef8ea4d1e0e0150fb15a5c2e12ad9b8fc191ae7a8a7f3c4b9" - -[[package]] -name = "unic-char-property" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8c57a407d9b6fa02b4795eb81c5b6652060a15a7903ea981f3d723e6c0be221" -dependencies = [ - "unic-char-range", -] - -[[package]] -name = "unic-char-range" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0398022d5f700414f6b899e10b8348231abf9173fa93144cbc1a43b9793c1fbc" - -[[package]] -name = "unic-common" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80d7ff825a6a654ee85a63e80f92f054f904f21e7d12da4e22f9834a4aaa35bc" - -[[package]] -name = "unic-segment" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e4ed5d26be57f84f176157270c112ef57b86debac9cd21daaabbe56db0f88f23" -dependencies = [ - "unic-ucd-segment", -] - -[[package]] -name = "unic-ucd-segment" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2079c122a62205b421f499da10f3ee0f7697f012f55b675e002483c73ea34700" -dependencies = [ - "unic-char-property", - "unic-char-range", - "unic-ucd-version", -] - -[[package]] -name = "unic-ucd-version" -version = "0.9.0" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96bd2f2237fe450fcd0a1d2f5f4e91711124f7857ba2e964247776ebeeb7b0c4" -dependencies = [ - "unic-common", -] +checksum = "2896d95c02a80c6d6a5d6e953d479f5ddf2dfdb6a244441010e373ac0fb88971" [[package]] name = "unicase" -version = "2.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7d2d4dafb69621809a81864c9c1b864479e1235c0dd4e199924b9742439ed89" -dependencies = [ - "version_check", -] - -[[package]] -name = "unicode-bidi" -version = "0.3.15" +version = "2.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75" +checksum = "dbc4bc3a9f746d862c45cb89d705aa10f187bb96c76001afab07a0d35ce60142" [[package]] name = "unicode-ident" -version = "1.0.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" - -[[package]] -name = "unicode-normalization" -version = "0.1.23" +version = "1.0.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5" -dependencies = [ - "tinyvec", -] +checksum = "e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75" [[package]] name = "unicode-segmentation" -version = "1.12.0" +version = "1.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493" +checksum = "9629274872b2bfaf8d66f5f15725007f635594914870f65218920345aa11aa8c" [[package]] name = "unicode-width" -version = "0.1.13" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0336d538f7abc86d282a4189614dfaa90810dfc2c6f6427eaf88e16311dd225d" +checksum = "b4ac048d71ede7ee76d585517add45da530660ef4390e49b098733c6e897f254" [[package]] -name = "unicode-width" -version = "0.2.0" +name = "unicode-xid" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fc81956842c57dac11422a97c3b8195a1ff727f06e85c84ed2e8aa277c9a0fd" +checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" [[package]] -name = "unicode-xid" -version = "0.2.5" +name = "unit-prefix" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "229730647fbc343e3a80e463c1db7f78f3855d3f3739bee0dda773c9a037c90a" +checksum = "81e544489bf3d8ef66c953931f56617f423cd4b5494be343d9b9d3dda037b9a3" [[package]] name = "unsafe-libyaml" @@ -4191,14 +4388,15 @@ checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" [[package]] name = "url" -version = "2.5.2" +version = "2.5.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22784dbdf76fdde8af1aeda5622b546b422b6fc585325248a2bf9f5e41e94d6c" +checksum = "ff67a8a4397373c3ef660812acab3268222035010ab8680ec4215f38ba3d0eed" dependencies = [ "form_urlencoded", "idna", "percent-encoding", "serde", + "serde_derive", ] [[package]] @@ -4213,6 +4411,12 @@ version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9" +[[package]] +name = "utf8_iter" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be" + [[package]] name = "utf8parse" version = "0.2.2" @@ -4221,11 +4425,11 @@ checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" [[package]] name = "utoipa" -version = "4.2.3" +version = "5.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c5afb1a60e207dca502682537fefcfd9921e71d0b83e9576060f09abc6efab23" +checksum = "2fcc29c80c21c31608227e0912b2d7fddba57ad76b606890627ba8ee7964e993" dependencies = [ - "indexmap 2.5.0", + "indexmap", "serde", "serde_json", "utoipa-gen", @@ -4233,26 +4437,25 @@ dependencies = [ [[package]] name = "utoipa-gen" -version = "4.3.0" +version = "5.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7bf0e16c02bc4bf5322ab65f10ab1149bdbcaa782cba66dc7057370a3f8190be" +checksum = "6d79d08d92ab8af4c5e8a6da20c47ae3f61a0f1dabc1997cdf2d082b757ca08b" dependencies = [ - "proc-macro-error", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.117", ] [[package]] name = "utoipa-swagger-ui" -version = "7.1.0" +version = "9.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "943e0ff606c6d57d410fd5663a4d7c074ab2c5f14ab903b9514565e59fa1189e" +checksum = "d047458f1b5b65237c2f6dc6db136945667f40a7668627b3490b9513a3d43a55" dependencies = [ - "axum 0.7.5", + "axum", + "base64", "mime_guess", "regex", - "reqwest", "rust-embed", "serde", "serde_json", @@ -4263,18 +4466,20 @@ dependencies = [ [[package]] name = "uuid" -version = "1.10.0" +version = "1.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81dfa00651efa65069b0b6b651f4aaa31ba9e3c3ce0137aaad053604ee7e0314" +checksum = "5ac8b6f42ead25368cf5b098aeb3dc8a1a2c05a3eee8a9a1a68c640edbfc79d9" dependencies = [ - "getrandom 0.2.15", + "getrandom 0.4.2", + "js-sys", + "wasm-bindgen", ] [[package]] name = "valuable" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" +checksum = "ba73ea9cf16a25df0c8caa16c51acb937d5712a8429db78a3ee29d5dcacd3a65" [[package]] name = "version_check" @@ -4284,46 +4489,33 @@ checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" [[package]] name = "vt100" -version = "0.15.2" +version = "0.16.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84cd863bf0db7e392ba3bd04994be3473491b31e66340672af5d11943c6274de" +checksum = "054ff75fb8fa83e609e685106df4faeffdf3a735d3c74ebce97ec557d5d36fd9" dependencies = [ "itoa", - "log", - "unicode-width 0.1.13", - "vte 0.11.1", + "unicode-width", + "vte 0.15.0", ] [[package]] name = "vte" -version = "0.10.1" +version = "0.14.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6cbce692ab4ca2f1f3047fcf732430249c0e971bfdd2b234cf2c47ad93af5983" +checksum = "231fdcd7ef3037e8330d8e17e61011a2c244126acc0a982f4040ac3f9f0bc077" dependencies = [ - "arrayvec 0.5.2", - "utf8parse", - "vte_generate_state_changes", + "arrayvec", + "memchr", ] [[package]] name = "vte" -version = "0.11.1" +version = "0.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5022b5fbf9407086c180e9557be968742d839e68346af7792b8592489732197" +checksum = "a5924018406ce0063cd67f8e008104968b74b563ee1b85dde3ed1f7cb87d3dbd" dependencies = [ - "arrayvec 0.7.6", - "utf8parse", - "vte_generate_state_changes", -] - -[[package]] -name = "vte_generate_state_changes" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e369bee1b05d510a7b4ed645f5faa90619e05437111783ea5848f28d97d3c2e" -dependencies = [ - "proc-macro2", - "quote", + "arrayvec", + "memchr", ] [[package]] @@ -4347,62 +4539,56 @@ dependencies = [ [[package]] name = "wasi" -version = "0.11.0+wasi-snapshot-preview1" +version = "0.11.1+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" +checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" [[package]] -name = "wasi" -version = "0.14.2+wasi-0.2.4" +name = "wasip2" +version = "1.0.2+wasi-0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9683f9a5a998d873c0d21fcbe3c083009670149a8fab228644b8bd36b2c48cb3" +checksum = "9517f9239f02c069db75e65f174b3da828fe5f5b945c4dd26bd25d89c03ebcf5" dependencies = [ - "wit-bindgen-rt", + "wit-bindgen", ] [[package]] -name = "wasm-bindgen" -version = "0.2.93" +name = "wasip3" +version = "0.4.0+wasi-0.3.0-rc-2026-01-06" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a82edfc16a6c469f5f44dc7b571814045d60404b55a0ee849f9bcfa2e63dd9b5" +checksum = "5428f8bf88ea5ddc08faddef2ac4a67e390b88186c703ce6dbd955e1c145aca5" dependencies = [ - "cfg-if", - "once_cell", - "wasm-bindgen-macro", + "wit-bindgen", ] [[package]] -name = "wasm-bindgen-backend" -version = "0.2.93" +name = "wasm-bindgen" +version = "0.2.117" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9de396da306523044d3302746f1208fa71d7532227f15e347e2d93e4145dd77b" +checksum = "0551fc1bb415591e3372d0bc4780db7e587d84e2a7e79da121051c5c4b89d0b0" dependencies = [ - "bumpalo", - "log", + "cfg-if", "once_cell", - "proc-macro2", - "quote", - "syn 2.0.87", + "rustversion", + "wasm-bindgen-macro", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-futures" -version = "0.4.43" +version = "0.4.67" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61e9300f63a621e96ed275155c108eb6f843b6a26d053f122ab69724559dc8ed" +checksum = "03623de6905b7206edd0a75f69f747f134b7f0a2323392d664448bf2d3c5d87e" dependencies = [ - "cfg-if", "js-sys", "wasm-bindgen", - "web-sys", ] [[package]] name = "wasm-bindgen-macro" -version = "0.2.93" +version = "0.2.117" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "585c4c91a46b072c92e908d99cb1dcdf95c5218eeb6f3bf1efa991ee7a68cccf" +checksum = "7fbdf9a35adf44786aecd5ff89b4563a90325f9da0923236f6104e603c7e86be" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -4410,28 +4596,65 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.93" +version = "0.2.117" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "afc340c74d9005395cf9dd098506f7f44e38f2b4a21c6aaacf9a105ea5e1e836" +checksum = "dca9693ef2bab6d4e6707234500350d8dad079eb508dca05530c85dc3a529ff2" dependencies = [ + "bumpalo", "proc-macro2", "quote", - "syn 2.0.87", - "wasm-bindgen-backend", + "syn 2.0.117", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.93" +version = "0.2.117" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "39129a682a6d2d841b6c429d0c51e5cb0ed1a03829d8b3d1e69a011e62cb3d3b" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "wasm-encoder" +version = "0.244.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c62a0a307cb4a311d3a07867860911ca130c3494e8c2719593806c08bc5d0484" +checksum = "990065f2fe63003fe337b932cfb5e3b80e0b4d0f5ff650e6985b1048f62c8319" +dependencies = [ + "leb128fmt", + "wasmparser", +] + +[[package]] +name = "wasm-metadata" +version = "0.244.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb0e353e6a2fbdc176932bbaab493762eb1255a7900fe0fea1a2f96c296cc909" +dependencies = [ + "anyhow", + "indexmap", + "wasm-encoder", + "wasmparser", +] + +[[package]] +name = "wasmparser" +version = "0.244.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "47b807c72e1bac69382b3a6fb3dbe8ea4c0ed87ff5629b8685ae6b9a611028fe" +dependencies = [ + "bitflags", + "hashbrown 0.15.5", + "indexmap", + "semver", +] [[package]] name = "web-sys" -version = "0.3.70" +version = "0.3.94" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26fdeaafd9bd129f65e7c031593c24d62186301e0c72c8978fa1678be7d532c0" +checksum = "cd70027e39b12f0849461e08ffc50b9cd7688d942c1c8e3c7b22273236b4dd0a" dependencies = [ "js-sys", "wasm-bindgen", @@ -4448,24 +4671,21 @@ dependencies = [ ] [[package]] -name = "webpki-roots" -version = "0.26.5" +name = "webpki-root-certs" +version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0bd24728e5af82c6c4ec1b66ac4844bdf8156257fccda846ec58b42cd0cdbe6a" +checksum = "804f18a4ac2676ffb4e8b5b5fa9ae38af06df08162314f96a68d2a363e21a8ca" dependencies = [ "rustls-pki-types", ] [[package]] name = "which" -version = "6.0.3" +version = "8.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4ee928febd44d98f2f459a4a79bd4d928591333a494a10a868418ac1b39cf1f" +checksum = "81995fafaaaf6ae47a7d0cc83c67caf92aeb7e5331650ae6ff856f7c0c60c459" dependencies = [ - "either", - "home", - "rustix", - "winsafe", + "libc", ] [[package]] @@ -4486,11 +4706,11 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" [[package]] name = "winapi-util" -version = "0.1.9" +version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" +checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" dependencies = [ - "windows-sys 0.59.0", + "windows-sys 0.61.2", ] [[package]] @@ -4501,56 +4721,70 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" [[package]] name = "windows-core" -version = "0.52.0" +version = "0.62.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" +checksum = "b8e83a14d34d0623b51dce9581199302a221863196a1dde71a7663a4c2be9deb" dependencies = [ - "windows-targets 0.52.6", + "windows-implement", + "windows-interface", + "windows-link", + "windows-result", + "windows-strings", ] [[package]] -name = "windows-link" -version = "0.1.1" +name = "windows-implement" +version = "0.60.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76840935b766e1b0a05c0066835fb9ec80071d4c09a16f6bd5f7e655e3c14c38" +checksum = "053e2e040ab57b9dc951b72c264860db7eb3b0200ba345b4e4c3b14f67855ddf" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.117", +] [[package]] -name = "windows-registry" -version = "0.2.0" +name = "windows-interface" +version = "0.59.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e400001bb720a623c1c69032f8e3e4cf09984deec740f007dd2b03ec864804b0" +checksum = "3f316c4a2570ba26bbec722032c4099d8c8bc095efccdc15688708623367e358" dependencies = [ - "windows-result", - "windows-strings", - "windows-targets 0.52.6", + "proc-macro2", + "quote", + "syn 2.0.117", ] +[[package]] +name = "windows-link" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" + [[package]] name = "windows-result" -version = "0.2.0" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d1043d8214f791817bab27572aaa8af63732e11bf84aa21a45a78d6c317ae0e" +checksum = "7781fa89eaf60850ac3d2da7af8e5242a5ea78d1a11c49bf2910bb5a73853eb5" dependencies = [ - "windows-targets 0.52.6", + "windows-link", ] [[package]] name = "windows-strings" -version = "0.1.0" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4cd9b125c486025df0eabcb585e62173c6c9eddcec5d117d3b6e8c30e2ee4d10" +checksum = "7837d08f69c77cf6b07689544538e017c1bfcf57e34b4c0ff58e6c2cd3b37091" dependencies = [ - "windows-result", - "windows-targets 0.52.6", + "windows-link", ] [[package]] name = "windows-sys" -version = "0.48.0" +version = "0.45.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" +checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" dependencies = [ - "windows-targets 0.48.5", + "windows-targets 0.42.2", ] [[package]] @@ -4564,26 +4798,35 @@ dependencies = [ [[package]] name = "windows-sys" -version = "0.59.0" +version = "0.60.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" +checksum = "f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb" dependencies = [ - "windows-targets 0.52.6", + "windows-targets 0.53.5", +] + +[[package]] +name = "windows-sys" +version = "0.61.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc" +dependencies = [ + "windows-link", ] [[package]] name = "windows-targets" -version = "0.48.5" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" +checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" dependencies = [ - "windows_aarch64_gnullvm 0.48.5", - "windows_aarch64_msvc 0.48.5", - "windows_i686_gnu 0.48.5", - "windows_i686_msvc 0.48.5", - "windows_x86_64_gnu 0.48.5", - "windows_x86_64_gnullvm 0.48.5", - "windows_x86_64_msvc 0.48.5", + "windows_aarch64_gnullvm 0.42.2", + "windows_aarch64_msvc 0.42.2", + "windows_i686_gnu 0.42.2", + "windows_i686_msvc 0.42.2", + "windows_x86_64_gnu 0.42.2", + "windows_x86_64_gnullvm 0.42.2", + "windows_x86_64_msvc 0.42.2", ] [[package]] @@ -4595,18 +4838,35 @@ dependencies = [ "windows_aarch64_gnullvm 0.52.6", "windows_aarch64_msvc 0.52.6", "windows_i686_gnu 0.52.6", - "windows_i686_gnullvm", + "windows_i686_gnullvm 0.52.6", "windows_i686_msvc 0.52.6", "windows_x86_64_gnu 0.52.6", "windows_x86_64_gnullvm 0.52.6", "windows_x86_64_msvc 0.52.6", ] +[[package]] +name = "windows-targets" +version = "0.53.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4945f9f551b88e0d65f3db0bc25c33b8acea4d9e41163edf90dcd0b19f9069f3" +dependencies = [ + "windows-link", + "windows_aarch64_gnullvm 0.53.1", + "windows_aarch64_msvc 0.53.1", + "windows_i686_gnu 0.53.1", + "windows_i686_gnullvm 0.53.1", + "windows_i686_msvc 0.53.1", + "windows_x86_64_gnu 0.53.1", + "windows_x86_64_gnullvm 0.53.1", + "windows_x86_64_msvc 0.53.1", +] + [[package]] name = "windows_aarch64_gnullvm" -version = "0.48.5" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" +checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" [[package]] name = "windows_aarch64_gnullvm" @@ -4614,11 +4874,17 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a9d8416fa8b42f5c947f8482c43e7d89e73a173cead56d044f6a56104a6d1b53" + [[package]] name = "windows_aarch64_msvc" -version = "0.48.5" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" +checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" [[package]] name = "windows_aarch64_msvc" @@ -4626,11 +4892,17 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" +[[package]] +name = "windows_aarch64_msvc" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9d782e804c2f632e395708e99a94275910eb9100b2114651e04744e9b125006" + [[package]] name = "windows_i686_gnu" -version = "0.48.5" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" +checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" [[package]] name = "windows_i686_gnu" @@ -4638,17 +4910,29 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" +[[package]] +name = "windows_i686_gnu" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "960e6da069d81e09becb0ca57a65220ddff016ff2d6af6a223cf372a506593a3" + [[package]] name = "windows_i686_gnullvm" version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" +[[package]] +name = "windows_i686_gnullvm" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa7359d10048f68ab8b09fa71c3daccfb0e9b559aed648a8f95469c27057180c" + [[package]] name = "windows_i686_msvc" -version = "0.48.5" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" +checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" [[package]] name = "windows_i686_msvc" @@ -4656,11 +4940,17 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" +[[package]] +name = "windows_i686_msvc" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e7ac75179f18232fe9c285163565a57ef8d3c89254a30685b57d83a38d326c2" + [[package]] name = "windows_x86_64_gnu" -version = "0.48.5" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" +checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" [[package]] name = "windows_x86_64_gnu" @@ -4668,11 +4958,17 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" +[[package]] +name = "windows_x86_64_gnu" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c3842cdd74a865a8066ab39c8a7a473c0778a3f29370b5fd6b4b9aa7df4a499" + [[package]] name = "windows_x86_64_gnullvm" -version = "0.48.5" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" +checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" [[package]] name = "windows_x86_64_gnullvm" @@ -4680,11 +4976,17 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ffa179e2d07eee8ad8f57493436566c7cc30ac536a3379fdf008f47f6bb7ae1" + [[package]] name = "windows_x86_64_msvc" -version = "0.48.5" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" +checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" [[package]] name = "windows_x86_64_msvc" @@ -4692,35 +4994,120 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" +[[package]] +name = "windows_x86_64_msvc" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d6bbff5f0aada427a1e5a6da5f1f98158182f26556f345ac9e04d36d0ebed650" + [[package]] name = "winnow" -version = "0.6.18" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68a9bda4691f099d435ad181000724da8e5899daa10713c2d432552b9ccd3a6f" +checksum = "09dac053f1cd375980747450bfc7250c264eaae0583872e845c0c7cd578872b5" dependencies = [ "memchr", ] [[package]] -name = "winsafe" -version = "0.0.19" +name = "wit-bindgen" +version = "0.51.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d135d17ab770252ad95e9a872d365cf3090e3be864a34ab46f48555993efc904" +checksum = "d7249219f66ced02969388cf2bb044a09756a083d0fab1e566056b04d9fbcaa5" +dependencies = [ + "wit-bindgen-rust-macro", +] [[package]] -name = "wit-bindgen-rt" -version = "0.39.0" +name = "wit-bindgen-core" +version = "0.51.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1" +checksum = "ea61de684c3ea68cb082b7a88508a8b27fcc8b797d738bfc99a82facf1d752dc" dependencies = [ - "bitflags 2.6.0", + "anyhow", + "heck", + "wit-parser", ] [[package]] -name = "xml-rs" -version = "0.8.21" +name = "wit-bindgen-rust" +version = "0.51.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b7c566e0f4b284dd6561c786d9cb0142da491f46a9fbed79ea69cdad5db17f21" +dependencies = [ + "anyhow", + "heck", + "indexmap", + "prettyplease", + "syn 2.0.117", + "wasm-metadata", + "wit-bindgen-core", + "wit-component", +] + +[[package]] +name = "wit-bindgen-rust-macro" +version = "0.51.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "539a77ee7c0de333dcc6da69b177380a0b81e0dacfa4f7344c465a36871ee601" +checksum = "0c0f9bfd77e6a48eccf51359e3ae77140a7f50b1e2ebfe62422d8afdaffab17a" +dependencies = [ + "anyhow", + "prettyplease", + "proc-macro2", + "quote", + "syn 2.0.117", + "wit-bindgen-core", + "wit-bindgen-rust", +] + +[[package]] +name = "wit-component" +version = "0.244.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d66ea20e9553b30172b5e831994e35fbde2d165325bec84fc43dbf6f4eb9cb2" +dependencies = [ + "anyhow", + "bitflags", + "indexmap", + "log", + "serde", + "serde_derive", + "serde_json", + "wasm-encoder", + "wasm-metadata", + "wasmparser", + "wit-parser", +] + +[[package]] +name = "wit-parser" +version = "0.244.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ecc8ac4bc1dc3381b7f59c34f00b67e18f910c2c0f50015669dde7def656a736" +dependencies = [ + "anyhow", + "id-arena", + "indexmap", + "log", + "semver", + "serde", + "serde_derive", + "serde_json", + "unicode-xid", + "wasmparser", +] + +[[package]] +name = "writeable" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1ffae5123b2d3fc086436f8834ae3ab053a283cfac8fe0a0b8eaae044768a4c4" + +[[package]] +name = "xml" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8aa498d22c9bbaf482329839bc5620c46be275a19a812e9a22a2b07529a642a" [[package]] name = "xtask" @@ -4733,71 +5120,148 @@ dependencies = [ "once_cell", "regex", "serde_json", - "snafu 0.8.4", - "stackable-cockpitd", + "snafu 0.9.0", "stackablectl", "tera", ] [[package]] -name = "zerocopy" -version = "0.7.35" +name = "yoke" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" +checksum = "abe8c5fda708d9ca3df187cae8bfb9ceda00dd96231bed36e445a1a48e66f9ca" dependencies = [ - "byteorder", - "zerocopy-derive 0.7.35", + "stable_deref_trait", + "yoke-derive", + "zerofrom", +] + +[[package]] +name = "yoke-derive" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "de844c262c8848816172cef550288e7dc6c7b7814b4ee56b3e1553f275f1858e" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.117", + "synstructure", ] [[package]] name = "zerocopy" -version = "0.8.24" +version = "0.8.48" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2586fea28e186957ef732a5f8b3be2da217d65c5969d4b1e17f973ebbe876879" +checksum = "eed437bf9d6692032087e337407a86f04cd8d6a16a37199ed57949d415bd68e9" dependencies = [ - "zerocopy-derive 0.8.24", + "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.7.35" +version = "0.8.48" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" +checksum = "70e3cd084b1788766f53af483dd21f93881ff30d7320490ec3ef7526d203bad4" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.117", ] [[package]] -name = "zerocopy-derive" -version = "0.8.24" +name = "zerofrom" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a996a8f63c5c4448cd959ac1bab0aaa3306ccfd060472f85943ee0750f0169be" +checksum = "69faa1f2a1ea75661980b013019ed6687ed0e83d069bc1114e2cc74c6c04c4df" +dependencies = [ + "zerofrom-derive", +] + +[[package]] +name = "zerofrom-derive" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "11532158c46691caf0f2593ea8358fed6bbf68a0315e80aae9bd41fbade684a1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.117", + "synstructure", ] [[package]] name = "zeroize" -version = "1.8.1" +version = "1.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde" +checksum = "b97154e67e32c85465826e8bcc1c59429aaaf107c1e4a9e53c8d8ccd5eff88d0" + +[[package]] +name = "zerotrie" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0f9152d31db0792fa83f70fb2f83148effb5c1f5b8c7686c3459e361d9bc20bf" +dependencies = [ + "displaydoc", + "yoke", + "zerofrom", +] + +[[package]] +name = "zerovec" +version = "0.11.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "90f911cbc359ab6af17377d242225f4d75119aec87ea711a880987b18cd7b239" +dependencies = [ + "yoke", + "zerofrom", + "zerovec-derive", +] + +[[package]] +name = "zerovec-derive" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "625dc425cab0dca6dc3c3319506e6593dcb08a9f387ea3b284dbd52a92c40555" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.117", +] [[package]] name = "zip" -version = "1.1.4" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9cc23c04387f4da0374be4533ad1208cbb091d5c11d070dfef13676ad6497164" +checksum = "12598812502ed0105f607f941c386f43d441e00148fce9dec3ca5ffb0bde9308" dependencies = [ "arbitrary", "crc32fast", - "crossbeam-utils", - "displaydoc", "flate2", - "indexmap 2.5.0", - "num_enum", - "thiserror 1.0.63", + "indexmap", + "memchr", + "zopfli", +] + +[[package]] +name = "zlib-rs" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3be3d40e40a133f9c916ee3f9f4fa2d9d63435b5fbe1bfc6d9dae0aa0ada1513" + +[[package]] +name = "zmij" +version = "1.0.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8848ee67ecc8aedbaf3e4122217aff892639231befc6a1b58d29fff4c2cabaa" + +[[package]] +name = "zopfli" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f05cd8797d63865425ff89b5c4a48804f35ba0ce8d125800027ad6017d2b5249" +dependencies = [ + "bumpalo", + "crc32fast", + "log", + "simd-adler32", ] diff --git a/Cargo.nix b/Cargo.nix index 482d524a..9abd0950 100644 --- a/Cargo.nix +++ b/Cargo.nix @@ -1,10 +1,11 @@ -# This file was @generated by crate2nix 0.14.1 with the command: +# This file was @generated by crate2nix 0.15.0 with the command: # "generate" # See https://github.com/kolloch/crate2nix for more info. { nixpkgs ? , pkgs ? import nixpkgs { config = {}; } +, fetchurl ? pkgs.fetchurl , lib ? pkgs.lib , stdenv ? pkgs.stdenv , buildRustCrateForPkgs ? pkgs: pkgs.buildRustCrate @@ -18,6 +19,11 @@ # (separated by `,`, prefixed with `+`). # Used for conditional compilation based on CPU feature detection. , targetFeatures ? [] + # Additional target attributes for conditional dependencies. + # Use this for custom cfg flags that are passed via rustcflags but need to + # be known at Nix evaluation time for dependency resolution. + # Example: { tracing_unstable = true; } for crates using cfg(tracing_unstable). +, extraTargetFlags ? {} # Whether to perform release builds: longer compile times, faster binaries. , release ? true # Additional crate2nix configuration if it exists. @@ -57,16 +63,6 @@ rec { # File a bug if you depend on any for non-debug work! debug = internal.debugCrate { inherit packageId; }; }; - "stackable-cockpit-web" = rec { - packageId = "stackable-cockpit-web"; - build = internal.buildRustCrateWithFeatures { - packageId = "stackable-cockpit-web"; - }; - - # Debug support which might change between releases. - # File a bug if you depend on any for non-debug work! - debug = internal.debugCrate { inherit packageId; }; - }; "stackable-cockpitd" = rec { packageId = "stackable-cockpitd"; build = internal.buildRustCrateWithFeatures { @@ -99,6 +95,8 @@ rec { }; }; + + # A derivation that joins the outputs of all workspace members together. allWorkspaceMembers = pkgs.symlinkJoin { name = "all-workspace-members"; @@ -123,71 +121,26 @@ rec { # inject test dependencies into the build crates = { - "addr2line" = rec { - crateName = "addr2line"; - version = "0.22.0"; - edition = "2018"; - sha256 = "0y66f1sa27i9kvmlh76ynk60rxfrmkba9ja8x527h32wdb206ibf"; - dependencies = [ - { - name = "gimli"; - packageId = "gimli"; - usesDefaultFeatures = false; - features = [ "read" ]; - } - ]; - features = { - "alloc" = [ "dep:alloc" ]; - "compiler_builtins" = [ "dep:compiler_builtins" ]; - "core" = [ "dep:core" ]; - "cpp_demangle" = [ "dep:cpp_demangle" ]; - "default" = [ "rustc-demangle" "cpp_demangle" "std-object" "fallible-iterator" "smallvec" "memmap2" ]; - "fallible-iterator" = [ "dep:fallible-iterator" ]; - "memmap2" = [ "dep:memmap2" ]; - "object" = [ "dep:object" ]; - "rustc-demangle" = [ "dep:rustc-demangle" ]; - "rustc-dep-of-std" = [ "core" "alloc" "compiler_builtins" "gimli/rustc-dep-of-std" ]; - "smallvec" = [ "dep:smallvec" ]; - "std" = [ "gimli/std" ]; - "std-object" = [ "std" "object" "object/std" "object/compression" "gimli/endian-reader" ]; - }; - }; - "adler" = rec { - crateName = "adler"; - version = "1.0.2"; - edition = "2015"; - sha256 = "1zim79cvzd5yrkzl3nyfx0avijwgk9fqv3yrscdy1cc79ih02qpj"; - authors = [ - "Jonas Schievink " - ]; - features = { - "compiler_builtins" = [ "dep:compiler_builtins" ]; - "core" = [ "dep:core" ]; - "default" = [ "std" ]; - "rustc-dep-of-std" = [ "core" "compiler_builtins" ]; - }; - }; "adler2" = rec { crateName = "adler2"; - version = "2.0.0"; + version = "2.0.1"; edition = "2021"; - sha256 = "09r6drylvgy8vv8k20lnbvwq8gp09h7smfn6h1rxsy15pgh629si"; + sha256 = "1ymy18s9hs7ya1pjc9864l30wk8p2qfqdi7mhhcc5nfakxbij09j"; authors = [ "Jonas Schievink " "oyvindln " ]; features = { - "compiler_builtins" = [ "dep:compiler_builtins" ]; "core" = [ "dep:core" ]; "default" = [ "std" ]; - "rustc-dep-of-std" = [ "core" "compiler_builtins" ]; + "rustc-dep-of-std" = [ "core" ]; }; }; "ahash" = rec { crateName = "ahash"; - version = "0.8.11"; + version = "0.8.12"; edition = "2018"; - sha256 = "04chdfkls5xmhp1d48gnjsmglbqibizs3bpbj6rsj604m10si7g8"; + sha256 = "0xbsp9rlm5ki017c0w6ay8kjwinwm8knjncci95mii30rmwz25as"; authors = [ "Tom Kaitchuck " ]; @@ -198,7 +151,7 @@ rec { } { name = "getrandom"; - packageId = "getrandom 0.2.15"; + packageId = "getrandom 0.3.4"; optional = true; } { @@ -210,7 +163,7 @@ rec { } { name = "zerocopy"; - packageId = "zerocopy 0.7.35"; + packageId = "zerocopy"; usesDefaultFeatures = false; features = [ "simd" ]; } @@ -222,7 +175,7 @@ rec { } ]; features = { - "atomic-polyfill" = [ "dep:atomic-polyfill" "once_cell/atomic-polyfill" ]; + "atomic-polyfill" = [ "dep:portable-atomic" "once_cell/critical-section" ]; "compile-time-rng" = [ "const-random" ]; "const-random" = [ "dep:const-random" ]; "default" = [ "std" "runtime-rng" ]; @@ -234,9 +187,9 @@ rec { }; "aho-corasick" = rec { crateName = "aho-corasick"; - version = "1.1.3"; + version = "1.1.4"; edition = "2021"; - sha256 = "05mrpkvdgp5d20y2p989f187ry9diliijgwrs254fs9s1m1x6q4f"; + sha256 = "00a32wb2h07im3skkikc495jvncf62jl6s96vwc7bhi70h9imlyx"; libName = "aho_corasick"; authors = [ "Andrew Gallant " @@ -259,9 +212,9 @@ rec { }; "allocator-api2" = rec { crateName = "allocator-api2"; - version = "0.2.18"; + version = "0.2.21"; edition = "2018"; - sha256 = "0kr6lfnxvnj164j1x38g97qjlhb7akppqzvgfs0697140ixbav2w"; + sha256 = "08zrzs022xwndihvzdn78yqarv2b9696y67i6h78nla3ww87jgb8"; libName = "allocator_api2"; authors = [ "Zakarum " @@ -273,17 +226,6 @@ rec { }; resolvedDefaultFeatures = [ "alloc" ]; }; - "android-tzdata" = rec { - crateName = "android-tzdata"; - version = "0.1.1"; - edition = "2018"; - sha256 = "1w7ynjxrfs97xg3qlcdns4kgfpwcdv824g611fq32cag4cdr96g9"; - libName = "android_tzdata"; - authors = [ - "RumovZ" - ]; - - }; "android_system_properties" = rec { crateName = "android_system_properties"; version = "0.1.5"; @@ -302,9 +244,9 @@ rec { }; "ansi-str" = rec { crateName = "ansi-str"; - version = "0.8.0"; + version = "0.9.0"; edition = "2021"; - sha256 = "07ddhqynv05xjyhw295w29qy77fi84sh5p2mm46ap0d94s4mgx0w"; + sha256 = "03c9j3870slj40lkdkrpav2p4kig2f1g6x42n8267x397d2y2386"; libName = "ansi_str"; authors = [ "Maxim Zhiburt " @@ -319,9 +261,9 @@ rec { }; "ansitok" = rec { crateName = "ansitok"; - version = "0.2.0"; + version = "0.3.0"; edition = "2021"; - sha256 = "10vc2d1325qsbvbnqnj48zg55wv7jz929drx9vpdscdvl7k48012"; + sha256 = "1vjrlvmwrq5v72rcmfqhdyspvabcz5mx531am7q6071gikmara60"; authors = [ "Maxim Zhiburt " ]; @@ -332,7 +274,7 @@ rec { } { name = "vte"; - packageId = "vte 0.10.1"; + packageId = "vte 0.14.1"; } ]; features = { @@ -343,9 +285,9 @@ rec { }; "anstream" = rec { crateName = "anstream"; - version = "0.6.15"; + version = "1.0.0"; edition = "2021"; - sha256 = "09nm4qj34kiwgzczdvj14x7hgsb235g4sqsay3xsz7zqn4d5rqb4"; + sha256 = "13d2bj0xfg012s4rmq44zc8zgy1q8k9yp7yhvfnarscnmwpj2jl2"; dependencies = [ { name = "anstyle"; @@ -388,9 +330,9 @@ rec { }; "anstyle" = rec { crateName = "anstyle"; - version = "1.0.8"; + version = "1.0.14"; edition = "2021"; - sha256 = "1cfmkza63xpn1kkz844mgjwm9miaiz4jkyczmwxzivcsypk1vv0v"; + sha256 = "0030szmgj51fxkic1hpakxxgappxzwm6m154a3gfml83lq63l2wl"; features = { "default" = [ "std" ]; }; @@ -398,9 +340,9 @@ rec { }; "anstyle-parse" = rec { crateName = "anstyle-parse"; - version = "0.2.5"; + version = "1.0.0"; edition = "2021"; - sha256 = "1jy12rvgbldflnb2x7mcww9dcffw1mx22nyv6p3n7d62h0gdwizb"; + sha256 = "03hkv2690s0crssbnmfkr76kw1k7ah2i6s5amdy9yca2n8w7zkjj"; libName = "anstyle_parse"; dependencies = [ { @@ -418,14 +360,14 @@ rec { }; "anstyle-query" = rec { crateName = "anstyle-query"; - version = "1.1.1"; + version = "1.1.5"; edition = "2021"; - sha256 = "0aj22iy4pzk6mz745sfrm1ym14r0y892jhcrbs8nkj7nqx9gqdkd"; + sha256 = "1p6shfpnbghs6jsa0vnqd8bb8gd7pjd0jr7w0j8jikakzmr8zi20"; libName = "anstyle_query"; dependencies = [ { name = "windows-sys"; - packageId = "windows-sys 0.52.0"; + packageId = "windows-sys 0.61.2"; target = { target, features }: (target."windows" or false); features = [ "Win32_System_Console" "Win32_Foundation" ]; } @@ -434,18 +376,23 @@ rec { }; "anstyle-wincon" = rec { crateName = "anstyle-wincon"; - version = "3.0.4"; + version = "3.0.11"; edition = "2021"; - sha256 = "1y2pkvsrdxbcwircahb4wimans2pzmwwxad7ikdhj5lpdqdlxxsv"; + sha256 = "0zblannm70sk3xny337mz7c6d8q8i24vhbqi42ld8v7q1wjnl7i9"; libName = "anstyle_wincon"; dependencies = [ { name = "anstyle"; packageId = "anstyle"; } + { + name = "once_cell_polyfill"; + packageId = "once_cell_polyfill"; + target = { target, features }: (target."windows" or false); + } { name = "windows-sys"; - packageId = "windows-sys 0.52.0"; + packageId = "windows-sys 0.61.2"; target = { target, features }: (target."windows" or false); features = [ "Win32_System_Console" "Win32_Foundation" ]; } @@ -454,23 +401,22 @@ rec { }; "anyhow" = rec { crateName = "anyhow"; - version = "1.0.97"; - edition = "2018"; - sha256 = "0kvspbiwncmmkdgrwjrimsmbmhzxc641p5ql99l2rjq6smmdbznw"; + version = "1.0.102"; + edition = "2021"; + sha256 = "0b447dra1v12z474c6z4jmicdmc5yxz5bakympdnij44ckw2s83z"; authors = [ "David Tolnay " ]; features = { - "backtrace" = [ "dep:backtrace" ]; "default" = [ "std" ]; }; resolvedDefaultFeatures = [ "default" "std" ]; }; "arbitrary" = rec { crateName = "arbitrary"; - version = "1.3.2"; + version = "1.4.2"; edition = "2021"; - sha256 = "0471f0c4f1bgibhyhf8vnapkp158h1nkrzx0wnq97jwd9n0jcnkx"; + sha256 = "1wcbi4x7i3lzcrkjda4810nqv03lpmvfhb0a85xrq1mbqjikdl63"; authors = [ "The Rust-Fuzz Project Developers" "Nick Fitzgerald " @@ -492,20 +438,7 @@ rec { }; resolvedDefaultFeatures = [ "derive" "derive_arbitrary" ]; }; - "arrayvec 0.5.2" = rec { - crateName = "arrayvec"; - version = "0.5.2"; - edition = "2018"; - sha256 = "12q6hn01x5435bprwlb7w9m7817dyfq55yrl4psygr78bp32zdi3"; - authors = [ - "bluss" - ]; - features = { - "default" = [ "std" ]; - "serde" = [ "dep:serde" ]; - }; - }; - "arrayvec 0.7.6" = rec { + "arrayvec" = rec { crateName = "arrayvec"; version = "0.7.6"; edition = "2018"; @@ -522,9 +455,9 @@ rec { }; "async-broadcast" = rec { crateName = "async-broadcast"; - version = "0.7.1"; - edition = "2018"; - sha256 = "0zia7z1y31awmxma9c89zmvkbj7mdkf7highkmz5z3pa4lp0xk90"; + version = "0.7.2"; + edition = "2021"; + sha256 = "0ckmqcwyqwbl2cijk1y4r0vy60i89gqc86ijrxzz5f2m4yjqfnj3"; libName = "async_broadcast"; authors = [ "Stjepan Glavina " @@ -550,42 +483,12 @@ rec { } ]; - }; - "async-socks5" = rec { - crateName = "async-socks5"; - version = "0.6.0"; - edition = "2021"; - sha256 = "128w31m6nvrvgbaycz3838m8fqsn6lxjmr9fjz99csz18rw578ld"; - libName = "async_socks5"; - authors = [ - "Arsenii Lyashenko " - "Temirkhan Myrzamadi " - ]; - dependencies = [ - { - name = "thiserror"; - packageId = "thiserror 1.0.63"; - } - { - name = "tokio"; - packageId = "tokio"; - features = [ "net" "io-util" ]; - } - ]; - devDependencies = [ - { - name = "tokio"; - packageId = "tokio"; - features = [ "net" "io-util" "rt" "macros" ]; - } - ]; - }; "async-stream" = rec { crateName = "async-stream"; - version = "0.3.5"; - edition = "2018"; - sha256 = "0l8sjq1rylkb1ak0pdyjn83b3k6x36j22myngl4sqqgg7whdsmnd"; + version = "0.3.6"; + edition = "2021"; + sha256 = "0xl4zqncrdmw2g6241wgr11dxdg4h7byy6bz3l6si03qyfk72nhb"; libName = "async_stream"; authors = [ "Carl Lerche " @@ -608,9 +511,9 @@ rec { }; "async-stream-impl" = rec { crateName = "async-stream-impl"; - version = "0.3.5"; - edition = "2018"; - sha256 = "14q179j4y8p2z1d0ic6aqgy9fhwz8p9cai1ia8kpw4bw7q12mrhn"; + version = "0.3.6"; + edition = "2021"; + sha256 = "0kaplfb5axsvf1gfs2gk6c4zx6zcsns0yf3ssk7iwni7bphlvhn7"; procMacro = true; libName = "async_stream_impl"; authors = [ @@ -627,7 +530,7 @@ rec { } { name = "syn"; - packageId = "syn 2.0.87"; + packageId = "syn 2.0.117"; features = [ "full" "visit-mut" ]; } ]; @@ -635,9 +538,9 @@ rec { }; "async-trait" = rec { crateName = "async-trait"; - version = "0.1.82"; + version = "0.1.89"; edition = "2021"; - sha256 = "1wfz9p7x1hhdw8vj47wlsj319s3j84z6a7xgid6gli0sdqx8lyx2"; + sha256 = "1fsxxmz3rzx1prn1h3rs7kyjhkap60i7xvi0ldapkvbb14nssdch"; procMacro = true; libName = "async_trait"; authors = [ @@ -654,9 +557,9 @@ rec { } { name = "syn"; - packageId = "syn 2.0.87"; + packageId = "syn 2.0.117"; usesDefaultFeatures = false; - features = [ "full" "parsing" "printing" "proc-macro" "visit-mut" ]; + features = [ "clone-impls" "full" "parsing" "printing" "proc-macro" "visit-mut" ]; } ]; @@ -677,32 +580,106 @@ rec { }; "autocfg" = rec { crateName = "autocfg"; - version = "1.3.0"; + version = "1.5.0"; edition = "2015"; - sha256 = "1c3njkfzpil03k92q0mij5y1pkhhfr4j3bf0h53bgl2vs85lsjqc"; + sha256 = "1s77f98id9l4af4alklmzq46f21c980v13z2r1pcxx6bqgw0d1n0"; authors = [ "Josh Stone " ]; }; - "axum 0.7.5" = rec { - crateName = "axum"; - version = "0.7.5"; + "aws-lc-rs" = rec { + crateName = "aws-lc-rs"; + version = "1.16.2"; edition = "2021"; - sha256 = "1kyb7pzgn60crl9wyq7dhciv40sxdr1mbqx2r4s7g9j253qrlv1s"; + links = "aws_lc_rs_1_16_2_sys"; + sha256 = "1z6i8qs0xjnzvslxnkhvywzzwfkafb1s4nrpg3f2k1nii4i92m50"; + libName = "aws_lc_rs"; + authors = [ + "AWS-LibCrypto" + ]; dependencies = [ { - name = "async-trait"; - packageId = "async-trait"; + name = "aws-lc-sys"; + packageId = "aws-lc-sys"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "zeroize"; + packageId = "zeroize"; + } + ]; + features = { + "asan" = [ "aws-lc-sys?/asan" "aws-lc-fips-sys?/asan" ]; + "aws-lc-sys" = [ "dep:aws-lc-sys" ]; + "bindgen" = [ "aws-lc-sys?/bindgen" "aws-lc-fips-sys?/bindgen" ]; + "default" = [ "aws-lc-sys" "alloc" "ring-io" "ring-sig-verify" ]; + "fips" = [ "dep:aws-lc-fips-sys" ]; + "non-fips" = [ "aws-lc-sys" ]; + "prebuilt-nasm" = [ "aws-lc-sys?/prebuilt-nasm" ]; + "ring-io" = [ "dep:untrusted" ]; + "ring-sig-verify" = [ "dep:untrusted" ]; + }; + resolvedDefaultFeatures = [ "aws-lc-sys" "prebuilt-nasm" ]; + }; + "aws-lc-sys" = rec { + crateName = "aws-lc-sys"; + version = "0.39.1"; + edition = "2021"; + links = "aws_lc_0_39_1"; + sha256 = "16b32brldbf97s05kzfvz263mkk54padn5kl95kakfh5h7wmr8l3"; + build = "builder/main.rs"; + libName = "aws_lc_sys"; + authors = [ + "AWS-LC" + ]; + buildDependencies = [ + { + name = "cc"; + packageId = "cc"; + features = [ "parallel" ]; + } + { + name = "cmake"; + packageId = "cmake"; } + { + name = "dunce"; + packageId = "dunce"; + } + { + name = "fs_extra"; + packageId = "fs_extra"; + } + ]; + features = { + "bindgen" = [ "dep:bindgen" ]; + "default" = [ "all-bindings" ]; + "fips" = [ "dep:bindgen" ]; + "ssl" = [ "bindgen" "all-bindings" ]; + }; + resolvedDefaultFeatures = [ "prebuilt-nasm" ]; + }; + "axum" = rec { + crateName = "axum"; + version = "0.8.8"; + edition = "2021"; + sha256 = "1f4p0m04mgwpn8b40i9r5mgqxk6w11sv4yri6xfqk305nhyayllb"; + dependencies = [ { name = "axum-core"; - packageId = "axum-core 0.4.3"; + packageId = "axum-core"; } { name = "bytes"; packageId = "bytes"; } + { + name = "form_urlencoded"; + packageId = "form_urlencoded"; + optional = true; + } { name = "futures-util"; packageId = "futures-util"; @@ -730,7 +707,7 @@ rec { name = "hyper-util"; packageId = "hyper-util"; optional = true; - features = [ "tokio" "server" ]; + features = [ "tokio" "server" "service" ]; } { name = "itoa"; @@ -738,7 +715,7 @@ rec { } { name = "matchit"; - packageId = "matchit 0.7.3"; + packageId = "matchit"; } { name = "memchr"; @@ -757,8 +734,8 @@ rec { packageId = "pin-project-lite"; } { - name = "serde"; - packageId = "serde"; + name = "serde_core"; + packageId = "serde_core"; } { name = "serde_json"; @@ -778,7 +755,7 @@ rec { } { name = "sync_wrapper"; - packageId = "sync_wrapper 1.0.1"; + packageId = "sync_wrapper"; } { name = "tokio"; @@ -789,7 +766,7 @@ rec { } { name = "tower"; - packageId = "tower 0.4.13"; + packageId = "tower"; usesDefaultFeatures = false; features = [ "util" ]; } @@ -808,25 +785,16 @@ rec { usesDefaultFeatures = false; } ]; - buildDependencies = [ - { - name = "rustversion"; - packageId = "rustversion"; - } - ]; devDependencies = [ { - name = "rustversion"; - packageId = "rustversion"; - } - { - name = "serde"; - packageId = "serde"; - features = [ "derive" ]; + name = "hyper"; + packageId = "hyper"; + features = [ "client" ]; } { name = "serde_json"; packageId = "serde_json"; + features = [ "raw_value" ]; } { name = "tokio"; @@ -836,7 +804,7 @@ rec { } { name = "tower"; - packageId = "tower 0.4.13"; + packageId = "tower"; rename = "tower"; features = [ "util" "timeout" "limit" "load-shed" "steer" "filter" ]; } @@ -846,15 +814,16 @@ rec { } ]; features = { - "__private_docs" = [ "tower/full" "dep:tower-http" ]; + "__private" = [ "tokio" "http1" "dep:reqwest" ]; + "__private_docs" = [ "axum-core/__private_docs" "tower/full" "dep:serde" "dep:tower-http" ]; "default" = [ "form" "http1" "json" "matched-path" "original-uri" "query" "tokio" "tower-log" "tracing" ]; - "form" = [ "dep:serde_urlencoded" ]; + "form" = [ "dep:form_urlencoded" "dep:serde_urlencoded" "dep:serde_path_to_error" ]; "http1" = [ "dep:hyper" "hyper?/http1" "hyper-util?/http1" ]; "http2" = [ "dep:hyper" "hyper?/http2" "hyper-util?/http2" ]; "json" = [ "dep:serde_json" "dep:serde_path_to_error" ]; "macros" = [ "dep:axum-macros" ]; "multipart" = [ "dep:multer" ]; - "query" = [ "dep:serde_urlencoded" ]; + "query" = [ "dep:form_urlencoded" "dep:serde_urlencoded" "dep:serde_path_to_error" ]; "tokio" = [ "dep:hyper-util" "dep:tokio" "tokio/net" "tokio/rt" "tower/make" "tokio/macros" ]; "tower-log" = [ "tower/log" ]; "tracing" = [ "dep:tracing" "axum-core/tracing" ]; @@ -862,30 +831,20 @@ rec { }; resolvedDefaultFeatures = [ "default" "form" "http1" "http2" "json" "matched-path" "original-uri" "query" "tokio" "tower-log" "tracing" ]; }; - "axum 0.8.3" = rec { - crateName = "axum"; - version = "0.8.3"; + "axum-core" = rec { + crateName = "axum-core"; + version = "0.5.6"; edition = "2021"; - sha256 = "1222spmyw5s2dfggwn62474jkh72ld52abkz5wjbkyg1024i0ify"; + sha256 = "1lcjhxysnbc64rh21ag9m9fpiryd1iwcdh9mwxz1yadiswqqziq8"; + libName = "axum_core"; dependencies = [ - { - name = "axum-core"; - packageId = "axum-core 0.5.2"; - } { name = "bytes"; packageId = "bytes"; } { - name = "form_urlencoded"; - packageId = "form_urlencoded"; - optional = true; - } - { - name = "futures-util"; - packageId = "futures-util"; - usesDefaultFeatures = false; - features = [ "alloc" ]; + name = "futures-core"; + packageId = "futures-core"; } { name = "http"; @@ -899,270 +858,17 @@ rec { name = "http-body-util"; packageId = "http-body-util"; } - { - name = "hyper"; - packageId = "hyper"; - optional = true; - } - { - name = "hyper-util"; - packageId = "hyper-util"; - optional = true; - features = [ "tokio" "server" "service" ]; - } - { - name = "itoa"; - packageId = "itoa"; - } - { - name = "matchit"; - packageId = "matchit 0.8.4"; - } - { - name = "memchr"; - packageId = "memchr"; - } { name = "mime"; packageId = "mime"; } - { - name = "percent-encoding"; - packageId = "percent-encoding"; - } { name = "pin-project-lite"; packageId = "pin-project-lite"; } - { - name = "rustversion"; - packageId = "rustversion"; - } - { - name = "serde"; - packageId = "serde"; - } - { - name = "serde_json"; - packageId = "serde_json"; - optional = true; - features = [ "raw_value" ]; - } - { - name = "serde_path_to_error"; - packageId = "serde_path_to_error"; - optional = true; - } - { - name = "serde_urlencoded"; - packageId = "serde_urlencoded"; - optional = true; - } { name = "sync_wrapper"; - packageId = "sync_wrapper 1.0.1"; - } - { - name = "tokio"; - packageId = "tokio"; - rename = "tokio"; - optional = true; - features = [ "time" ]; - } - { - name = "tower"; - packageId = "tower 0.5.2"; - usesDefaultFeatures = false; - features = [ "util" ]; - } - { - name = "tower-layer"; - packageId = "tower-layer"; - } - { - name = "tower-service"; - packageId = "tower-service"; - } - { - name = "tracing"; - packageId = "tracing"; - optional = true; - usesDefaultFeatures = false; - } - ]; - devDependencies = [ - { - name = "hyper"; - packageId = "hyper"; - features = [ "client" ]; - } - { - name = "serde"; - packageId = "serde"; - features = [ "derive" ]; - } - { - name = "serde_json"; - packageId = "serde_json"; - features = [ "raw_value" ]; - } - { - name = "tokio"; - packageId = "tokio"; - rename = "tokio"; - features = [ "macros" "rt" "rt-multi-thread" "net" "test-util" ]; - } - { - name = "tower"; - packageId = "tower 0.5.2"; - rename = "tower"; - features = [ "util" "timeout" "limit" "load-shed" "steer" "filter" ]; - } - { - name = "tracing"; - packageId = "tracing"; - } - ]; - features = { - "__private" = [ "tokio" "http1" "dep:reqwest" ]; - "__private_docs" = [ "axum-core/__private_docs" "tower/full" "dep:tower-http" ]; - "default" = [ "form" "http1" "json" "matched-path" "original-uri" "query" "tokio" "tower-log" "tracing" ]; - "form" = [ "dep:form_urlencoded" "dep:serde_urlencoded" "dep:serde_path_to_error" ]; - "http1" = [ "dep:hyper" "hyper?/http1" "hyper-util?/http1" ]; - "http2" = [ "dep:hyper" "hyper?/http2" "hyper-util?/http2" ]; - "json" = [ "dep:serde_json" "dep:serde_path_to_error" ]; - "macros" = [ "dep:axum-macros" ]; - "multipart" = [ "dep:multer" ]; - "query" = [ "dep:form_urlencoded" "dep:serde_urlencoded" "dep:serde_path_to_error" ]; - "tokio" = [ "dep:hyper-util" "dep:tokio" "tokio/net" "tokio/rt" "tower/make" "tokio/macros" ]; - "tower-log" = [ "tower/log" ]; - "tracing" = [ "dep:tracing" "axum-core/tracing" ]; - "ws" = [ "dep:hyper" "tokio" "dep:tokio-tungstenite" "dep:sha1" "dep:base64" ]; - }; - resolvedDefaultFeatures = [ "default" "form" "http1" "json" "matched-path" "original-uri" "query" "tokio" "tower-log" "tracing" ]; - }; - "axum-core 0.4.3" = rec { - crateName = "axum-core"; - version = "0.4.3"; - edition = "2021"; - sha256 = "1qx28wg4j6qdcdrisqwyaavlzc0zvbsrcwa99zf9456lfbyn6p51"; - libName = "axum_core"; - dependencies = [ - { - name = "async-trait"; - packageId = "async-trait"; - } - { - name = "bytes"; - packageId = "bytes"; - } - { - name = "futures-util"; - packageId = "futures-util"; - usesDefaultFeatures = false; - features = [ "alloc" ]; - } - { - name = "http"; - packageId = "http"; - } - { - name = "http-body"; - packageId = "http-body"; - } - { - name = "http-body-util"; - packageId = "http-body-util"; - } - { - name = "mime"; - packageId = "mime"; - } - { - name = "pin-project-lite"; - packageId = "pin-project-lite"; - } - { - name = "sync_wrapper"; - packageId = "sync_wrapper 0.1.2"; - } - { - name = "tower-layer"; - packageId = "tower-layer"; - } - { - name = "tower-service"; - packageId = "tower-service"; - } - { - name = "tracing"; - packageId = "tracing"; - optional = true; - usesDefaultFeatures = false; - } - ]; - buildDependencies = [ - { - name = "rustversion"; - packageId = "rustversion"; - } - ]; - devDependencies = [ - { - name = "futures-util"; - packageId = "futures-util"; - usesDefaultFeatures = false; - features = [ "alloc" ]; - } - ]; - features = { - "__private_docs" = [ "dep:tower-http" ]; - "tracing" = [ "dep:tracing" ]; - }; - resolvedDefaultFeatures = [ "tracing" ]; - }; - "axum-core 0.5.2" = rec { - crateName = "axum-core"; - version = "0.5.2"; - edition = "2021"; - sha256 = "19kwzksb4hwr3qfbrhjbqf83z6fjyng14wrkzck6fj1g8784qik8"; - libName = "axum_core"; - dependencies = [ - { - name = "bytes"; - packageId = "bytes"; - } - { - name = "futures-core"; - packageId = "futures-core"; - } - { - name = "http"; - packageId = "http"; - } - { - name = "http-body"; - packageId = "http-body"; - } - { - name = "http-body-util"; - packageId = "http-body-util"; - } - { - name = "mime"; - packageId = "mime"; - } - { - name = "pin-project-lite"; - packageId = "pin-project-lite"; - } - { - name = "rustversion"; - packageId = "rustversion"; - } - { - name = "sync_wrapper"; - packageId = "sync_wrapper 1.0.1"; + packageId = "sync_wrapper"; } { name = "tower-layer"; @@ -1187,24 +893,29 @@ rec { }; "axum-extra" = rec { crateName = "axum-extra"; - version = "0.9.3"; + version = "0.12.5"; edition = "2021"; - sha256 = "0cyp22wy0lykpmkikkr7z0c0rg6j7cw2xpphd83vav5rr44ymrhb"; + sha256 = "0xlwripql5hck5l9nx7mhv5rl4mq0wryxwndpdbbmp96zznm5wpy"; libName = "axum_extra"; dependencies = [ { name = "axum"; - packageId = "axum 0.7.5"; + packageId = "axum"; + optional = true; usesDefaultFeatures = false; } { name = "axum-core"; - packageId = "axum-core 0.4.3"; + packageId = "axum-core"; } { name = "bytes"; packageId = "bytes"; } + { + name = "futures-core"; + packageId = "futures-core"; + } { name = "futures-util"; packageId = "futures-util"; @@ -1236,16 +947,6 @@ rec { name = "pin-project-lite"; packageId = "pin-project-lite"; } - { - name = "serde"; - packageId = "serde"; - } - { - name = "tower"; - packageId = "tower 0.4.13"; - usesDefaultFeatures = false; - features = [ "util" ]; - } { name = "tower-layer"; packageId = "tower-layer"; @@ -1261,47 +962,41 @@ rec { usesDefaultFeatures = false; } ]; - devDependencies = [ - { - name = "axum"; - packageId = "axum 0.7.5"; - } - { - name = "serde"; - packageId = "serde"; - features = [ "derive" ]; - } - { - name = "tower"; - packageId = "tower 0.4.13"; - features = [ "util" ]; - } - ]; features = { + "__private_docs" = [ "axum/json" "dep:serde" "dep:tower" ]; "async-read-body" = [ "dep:tokio-util" "tokio-util?/io" "dep:tokio" ]; + "attachment" = [ "dep:tracing" ]; + "cached" = [ "dep:axum" ]; "cookie" = [ "dep:cookie" ]; "cookie-key-expansion" = [ "cookie" "cookie?/key-expansion" ]; "cookie-private" = [ "cookie" "cookie?/private" ]; "cookie-signed" = [ "cookie" "cookie?/signed" ]; "default" = [ "tracing" ]; - "erased-json" = [ "dep:serde_json" ]; - "form" = [ "dep:serde_html_form" ]; - "json-deserializer" = [ "dep:serde_json" "dep:serde_path_to_error" ]; - "json-lines" = [ "dep:serde_json" "dep:tokio-util" "dep:tokio-stream" "tokio-util?/io" "tokio-stream?/io-util" "dep:tokio" ]; - "multipart" = [ "dep:multer" ]; + "erased-json" = [ "dep:serde_core" "dep:serde_json" "dep:typed-json" ]; + "error-response" = [ "dep:tracing" "tracing/std" ]; + "file-stream" = [ "dep:tokio-util" "tokio-util?/io" "dep:tokio" "tokio?/fs" "tokio?/io-util" ]; + "form" = [ "dep:axum" "dep:form_urlencoded" "dep:serde_core" "dep:serde_html_form" "dep:serde_path_to_error" ]; + "handler" = [ "dep:axum" ]; + "json-deserializer" = [ "dep:serde_core" "dep:serde_json" "dep:serde_path_to_error" ]; + "json-lines" = [ "dep:serde_core" "dep:serde_json" "dep:tokio-util" "dep:tokio-stream" "tokio-util?/io" "tokio-stream?/io-util" "dep:tokio" ]; + "middleware" = [ "dep:axum" ]; + "multipart" = [ "dep:multer" "dep:fastrand" ]; + "optional-path" = [ "dep:axum" "dep:serde_core" ]; "protobuf" = [ "dep:prost" ]; - "query" = [ "dep:serde_html_form" ]; - "tracing" = [ "dep:tracing" "axum-core/tracing" ]; + "query" = [ "dep:form_urlencoded" "dep:serde_core" "dep:serde_html_form" "dep:serde_path_to_error" ]; + "routing" = [ "axum/original-uri" "dep:rustversion" ]; + "tracing" = [ "axum-core/tracing" "axum/tracing" "dep:tracing" ]; "typed-header" = [ "dep:headers" ]; - "typed-routing" = [ "dep:axum-macros" "dep:percent-encoding" "dep:serde_html_form" "dep:form_urlencoded" ]; + "typed-routing" = [ "routing" "dep:axum-macros" "dep:percent-encoding" "dep:serde_core" "dep:serde_html_form" "dep:form_urlencoded" ]; + "with-rejection" = [ "dep:axum" ]; }; resolvedDefaultFeatures = [ "default" "tracing" "typed-header" ]; }; "backon" = rec { crateName = "backon"; - version = "1.5.0"; - edition = "2021"; - sha256 = "15k4p6xyxi4lkiyw5yxrmcws3wwnwjacgcqqmd2dvfldnyqm02zx"; + version = "1.6.0"; + edition = "2024"; + sha256 = "1vzphngmym91xh29x7px6vw1xgcv5vjzw86b9zy6ddkm329hxyyg"; dependencies = [ { name = "fastrand"; @@ -1325,14 +1020,14 @@ rec { { name = "tokio"; packageId = "tokio"; - target = {target, features}: (!("wasm32" == target."arch" or null)); + target = { target, features }: (!("wasm32" == target."arch" or null)); features = [ "time" "rt" "macros" "sync" "rt-multi-thread" ]; } { name = "tokio"; packageId = "tokio"; usesDefaultFeatures = false; - target = {target, features}: ("wasm32" == target."arch" or null); + target = { target, features }: ("wasm32" == target."arch" or null); features = [ "macros" "rt" "sync" ]; } ]; @@ -1350,135 +1045,60 @@ rec { }; resolvedDefaultFeatures = [ "default" "gloo-timers" "gloo-timers-sleep" "std" "std-blocking-sleep" "tokio" "tokio-sleep" ]; }; - "backtrace" = rec { - crateName = "backtrace"; - version = "0.3.73"; - edition = "2021"; - sha256 = "02iffg2pkg5nc36pgml8il7f77s138hhjw9f9l56v5zqlilk5hjw"; + "base64" = rec { + crateName = "base64"; + version = "0.22.1"; + edition = "2018"; + sha256 = "1imqzgh7bxcikp5vx3shqvw9j09g9ly0xr0jma0q66i52r7jbcvj"; authors = [ - "The Rust Project Developers" + "Marshall Pierce " + ]; + features = { + "default" = [ "std" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "std" ]; + }; + "bcrypt" = rec { + crateName = "bcrypt"; + version = "0.19.0"; + edition = "2024"; + sha256 = "1iks6lnzng0x9nniqcfzbrny5sw5inyzbk7qjxjxlyisrqlbafjj"; + authors = [ + "Vincent Prouillet " ]; dependencies = [ { - name = "addr2line"; - packageId = "addr2line"; + name = "base64"; + packageId = "base64"; usesDefaultFeatures = false; - target = { target, features }: (!((target."windows" or false) && ("msvc" == target."env" or null) && (!("uwp" == target."vendor" or null)))); - } - { - name = "cfg-if"; - packageId = "cfg-if"; } { - name = "libc"; - packageId = "libc"; - usesDefaultFeatures = false; - target = { target, features }: (!((target."windows" or false) && ("msvc" == target."env" or null) && (!("uwp" == target."vendor" or null)))); + name = "blowfish"; + packageId = "blowfish"; + features = [ "bcrypt" ]; } { - name = "miniz_oxide"; - packageId = "miniz_oxide 0.7.4"; + name = "getrandom"; + packageId = "getrandom 0.4.2"; + optional = true; usesDefaultFeatures = false; - target = { target, features }: (!((target."windows" or false) && ("msvc" == target."env" or null) && (!("uwp" == target."vendor" or null)))); } { - name = "object"; - packageId = "object"; + name = "subtle"; + packageId = "subtle"; usesDefaultFeatures = false; - target = { target, features }: (!((target."windows" or false) && ("msvc" == target."env" or null) && (!("uwp" == target."vendor" or null)))); - features = [ "read_core" "elf" "macho" "pe" "xcoff" "unaligned" "archive" ]; - } - { - name = "rustc-demangle"; - packageId = "rustc-demangle"; } - ]; - buildDependencies = [ { - name = "cc"; - packageId = "cc"; - } - ]; - features = { - "cpp_demangle" = [ "dep:cpp_demangle" ]; - "default" = [ "std" ]; - "serde" = [ "dep:serde" ]; - "serialize-serde" = [ "serde" ]; - "verify-winapi" = [ "winapi/dbghelp" "winapi/handleapi" "winapi/libloaderapi" "winapi/memoryapi" "winapi/minwindef" "winapi/processthreadsapi" "winapi/synchapi" "winapi/tlhelp32" "winapi/winbase" "winapi/winnt" "winapi/winnls" "winapi/stringapiset" ]; - "winapi" = [ "dep:winapi" ]; - }; - resolvedDefaultFeatures = [ "default" "std" ]; - }; - "base64 0.21.7" = rec { - crateName = "base64"; - version = "0.21.7"; - edition = "2018"; - sha256 = "0rw52yvsk75kar9wgqfwgb414kvil1gn7mqkrhn9zf1537mpsacx"; - authors = [ - "Alice Maz " - "Marshall Pierce " - ]; - features = { - "default" = [ "std" ]; - "std" = [ "alloc" ]; - }; - resolvedDefaultFeatures = [ "alloc" "default" "std" ]; - }; - "base64 0.22.1" = rec { - crateName = "base64"; - version = "0.22.1"; - edition = "2018"; - sha256 = "1imqzgh7bxcikp5vx3shqvw9j09g9ly0xr0jma0q66i52r7jbcvj"; - authors = [ - "Marshall Pierce " - ]; - features = { - "default" = [ "std" ]; - "std" = [ "alloc" ]; - }; - resolvedDefaultFeatures = [ "alloc" "default" "std" ]; - }; - "bcrypt" = rec { - crateName = "bcrypt"; - version = "0.15.1"; - edition = "2021"; - sha256 = "1iv2fvy5yywkx4kijqyy59bq92gldv3nqd4bry97vx4f0pnkhng6"; - authors = [ - "Vincent Prouillet " - ]; - dependencies = [ - { - name = "base64"; - packageId = "base64 0.22.1"; - usesDefaultFeatures = false; - } - { - name = "blowfish"; - packageId = "blowfish"; - features = [ "bcrypt" ]; - } - { - name = "getrandom"; - packageId = "getrandom 0.2.15"; - optional = true; - usesDefaultFeatures = false; - } - { - name = "subtle"; - packageId = "subtle"; - usesDefaultFeatures = false; - } - { - name = "zeroize"; - packageId = "zeroize"; - optional = true; + name = "zeroize"; + packageId = "zeroize"; + optional = true; } ]; features = { "alloc" = [ "base64/alloc" "getrandom" ]; "default" = [ "std" "zeroize" ]; "getrandom" = [ "dep:getrandom" ]; - "js" = [ "getrandom/js" ]; "std" = [ "getrandom/std" "base64/std" ]; "zeroize" = [ "dep:zeroize" ]; }; @@ -1486,9 +1106,9 @@ rec { }; "bindgen" = rec { crateName = "bindgen"; - version = "0.70.1"; - edition = "2018"; - sha256 = "0vyf0jp6apcy9kjyz4s8vldj0xqycnbzb6zv3skkwiqdi3nqz7gl"; + version = "0.72.1"; + edition = "2021"; + sha256 = "15bq73y3wd3x3vxh3z3g72hy08zs8rxg1f0i1xsrrd6g16spcdwr"; libPath = "lib.rs"; authors = [ "Jyun-Yan You " @@ -1499,7 +1119,7 @@ rec { dependencies = [ { name = "bitflags"; - packageId = "bitflags 2.6.0"; + packageId = "bitflags"; } { name = "cexpr"; @@ -1508,7 +1128,7 @@ rec { { name = "clang-sys"; packageId = "clang-sys"; - features = [ "clang_6_0" ]; + features = [ "clang_11_0" ]; } { name = "itertools"; @@ -1529,7 +1149,6 @@ rec { { name = "proc-macro2"; packageId = "proc-macro2"; - usesDefaultFeatures = false; } { name = "quote"; @@ -1544,7 +1163,7 @@ rec { } { name = "rustc-hash"; - packageId = "rustc-hash 1.1.0"; + packageId = "rustc-hash"; } { name = "shlex"; @@ -1552,11 +1171,12 @@ rec { } { name = "syn"; - packageId = "syn 2.0.87"; + packageId = "syn 2.0.117"; features = [ "full" "extra-traits" "visit-mut" ]; } ]; features = { + "__cli" = [ "dep:clap" "dep:clap_complete" ]; "default" = [ "logging" "prettyplease" "runtime" ]; "experimental" = [ "dep:annotate-snippets" ]; "logging" = [ "dep:log" ]; @@ -1568,9 +1188,9 @@ rec { }; "bit-set" = rec { crateName = "bit-set"; - version = "0.5.3"; + version = "0.8.0"; edition = "2015"; - sha256 = "1wcm9vxi00ma4rcxkl3pzzjli6ihrpn9cfdi0c5b4cvga2mxs007"; + sha256 = "18riaa10s6n59n39vix0cr7l2dgwdhcpbcm97x1xbyfp1q47x008"; libName = "bit_set"; authors = [ "Alexis Beingessner " @@ -1584,57 +1204,45 @@ rec { ]; features = { "default" = [ "std" ]; + "serde" = [ "dep:serde" "bit-vec/serde" ]; "std" = [ "bit-vec/std" ]; }; resolvedDefaultFeatures = [ "std" ]; }; "bit-vec" = rec { crateName = "bit-vec"; - version = "0.6.3"; + version = "0.8.0"; edition = "2015"; - sha256 = "1ywqjnv60cdh1slhz67psnp422md6jdliji6alq0gmly2xm9p7rl"; + sha256 = "1xxa1s2cj291r7k1whbxq840jxvmdsq9xgh7bvrxl46m80fllxjy"; libName = "bit_vec"; authors = [ "Alexis Beingessner " ]; features = { + "borsh" = [ "dep:borsh" ]; + "borsh_std" = [ "borsh/std" ]; "default" = [ "std" ]; + "miniserde" = [ "dep:miniserde" ]; + "nanoserde" = [ "dep:nanoserde" ]; "serde" = [ "dep:serde" ]; "serde_no_std" = [ "serde/alloc" ]; "serde_std" = [ "std" "serde/std" ]; }; resolvedDefaultFeatures = [ "std" ]; }; - "bitflags 1.3.2" = rec { - crateName = "bitflags"; - version = "1.3.2"; - edition = "2018"; - sha256 = "12ki6w8gn1ldq7yz9y680llwk5gmrhrzszaa17g1sbrw2r2qvwxy"; - authors = [ - "The Rust Project Developers" - ]; - features = { - "compiler_builtins" = [ "dep:compiler_builtins" ]; - "core" = [ "dep:core" ]; - "rustc-dep-of-std" = [ "core" "compiler_builtins" ]; - }; - resolvedDefaultFeatures = [ "default" ]; - }; - "bitflags 2.6.0" = rec { + "bitflags" = rec { crateName = "bitflags"; - version = "2.6.0"; + version = "2.11.0"; edition = "2021"; - sha256 = "1pkidwzn3hnxlsl8zizh0bncgbjnw7c41cx7bby26ncbzmiznj5h"; + sha256 = "1bwjibwry5nfwsfm9kjg2dqx5n5nja9xymwbfl6svnn8jsz6ff44"; authors = [ "The Rust Project Developers" ]; features = { "arbitrary" = [ "dep:arbitrary" ]; "bytemuck" = [ "dep:bytemuck" ]; - "compiler_builtins" = [ "dep:compiler_builtins" ]; - "core" = [ "dep:core" ]; - "rustc-dep-of-std" = [ "core" "compiler_builtins" ]; - "serde" = [ "dep:serde" ]; + "serde" = [ "serde_core" ]; + "serde_core" = [ "dep:serde_core" ]; }; resolvedDefaultFeatures = [ "std" ]; }; @@ -1688,9 +1296,9 @@ rec { }; "bstr" = rec { crateName = "bstr"; - version = "1.10.0"; + version = "1.12.1"; edition = "2021"; - sha256 = "036wwrchd5gq3q4k6w1j2bfl2bk2ff8c0dsa9y7w7aw7nf7knwj0"; + sha256 = "1arc1v7h5l86vd6z76z3xykjzldqd5icldn7j9d3p7z6x0d4w133"; authors = [ "Andrew Gallant " ]; @@ -1716,16 +1324,33 @@ rec { }; resolvedDefaultFeatures = [ "alloc" "std" ]; }; + "built" = rec { + crateName = "built"; + version = "0.8.0"; + edition = "2021"; + sha256 = "0r5f08lpjsr6j5ajkbmd0ymfmajpq8ddbfvi8ji8rx48y88qzbgl"; + authors = [ + "Lukas Lueg " + ]; + features = { + "cargo-lock" = [ "dep:cargo-lock" ]; + "chrono" = [ "dep:chrono" ]; + "dependency-tree" = [ "cargo-lock/dependency-tree" ]; + "git2" = [ "dep:git2" ]; + "semver" = [ "dep:semver" ]; + }; + }; "bumpalo" = rec { crateName = "bumpalo"; - version = "3.16.0"; + version = "3.20.2"; edition = "2021"; - sha256 = "0b015qb4knwanbdlp1x48pkb4pm57b8gidbhhhxr900q2wb6fabr"; + sha256 = "1jrgxlff76k9glam0akhwpil2fr1w32gbjdf5hpipc7ld2c7h82x"; authors = [ "Nick Fitzgerald " ]; features = { "allocator-api2" = [ "dep:allocator-api2" ]; + "bench_allocator_api" = [ "allocator_api" "blink-alloc/nightly" ]; "serde" = [ "dep:serde" ]; }; resolvedDefaultFeatures = [ "default" ]; @@ -1744,9 +1369,9 @@ rec { }; "bytes" = rec { crateName = "bytes"; - version = "1.10.1"; - edition = "2018"; - sha256 = "0smd4wi2yrhp5pmq571yiaqx84bjqlm1ixqhnvfwzzc6pqkn26yp"; + version = "1.11.1"; + edition = "2021"; + sha256 = "0czwlhbq8z29wq0ia87yass2mzy1y0jcasjb8ghriiybnwrqfx0y"; authors = [ "Carl Lerche " "Sean McArthur " @@ -1760,13 +1385,30 @@ rec { }; "cc" = rec { crateName = "cc"; - version = "1.1.15"; + version = "1.2.59"; edition = "2018"; - sha256 = "1rn62w58ba1ylqlp3saj4n0vh1h40ii1r83xr06p80r9m9ss5djp"; + sha256 = "10sjxshjiyvglpqnap8z8fqdggf9mnxm8dn5kwr8mli4cpnd795p"; authors = [ "Alex Crichton " ]; dependencies = [ + { + name = "find-msvc-tools"; + packageId = "find-msvc-tools"; + } + { + name = "jobserver"; + packageId = "jobserver"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "libc"; + packageId = "libc"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (target."unix" or false); + } { name = "shlex"; packageId = "shlex"; @@ -1775,6 +1417,18 @@ rec { features = { "parallel" = [ "dep:libc" "dep:jobserver" ]; }; + resolvedDefaultFeatures = [ "parallel" ]; + }; + "cesu8" = rec { + crateName = "cesu8"; + version = "1.1.0"; + edition = "2015"; + sha256 = "0g6q58wa7khxrxcxgnqyi9s1z2cjywwwd3hzr5c55wskhx6s0hvd"; + authors = [ + "Eric Kidd " + ]; + features = { + }; }; "cexpr" = rec { crateName = "cexpr"; @@ -1796,31 +1450,69 @@ rec { }; "cfg-if" = rec { crateName = "cfg-if"; - version = "1.0.0"; + version = "1.0.4"; edition = "2018"; - sha256 = "1za0vb97n4brpzpv8lsbnzmq5r8f2b0cpqqr0sy8h5bn751xxwds"; + sha256 = "008q28ajc546z5p2hcwdnckmg0hia7rnx52fni04bwqkzyrghc4k"; libName = "cfg_if"; authors = [ "Alex Crichton " ]; features = { - "compiler_builtins" = [ "dep:compiler_builtins" ]; "core" = [ "dep:core" ]; - "rustc-dep-of-std" = [ "core" "compiler_builtins" ]; + "rustc-dep-of-std" = [ "core" ]; }; }; - "chrono" = rec { - crateName = "chrono"; - version = "0.4.38"; - edition = "2021"; - sha256 = "009l8vc5p8750vn02z30mblg4pv2qhkbfizhfwmzc6vpy5nr67x2"; + "cfg_aliases" = rec { + crateName = "cfg_aliases"; + version = "0.2.1"; + edition = "2018"; + sha256 = "092pxdc1dbgjb6qvh83gk56rkic2n2ybm4yvy76cgynmzi3zwfk1"; + authors = [ + "Zicklag " + ]; + + }; + "chacha20" = rec { + crateName = "chacha20"; + version = "0.10.0"; + edition = "2024"; + sha256 = "00bn2rn8l68qvlq93mhq7b4ns4zy9qbjsyjbb9kljgl4hqr9i3bg"; + authors = [ + "RustCrypto Developers" + ]; dependencies = [ { - name = "android-tzdata"; - packageId = "android-tzdata"; + name = "cfg-if"; + packageId = "cfg-if"; + } + { + name = "cpufeatures"; + packageId = "cpufeatures 0.3.0"; + target = { target, features }: (("x86_64" == target."arch" or null) || ("x86" == target."arch" or null)); + } + { + name = "rand_core"; + packageId = "rand_core 0.10.0"; optional = true; - target = { target, features }: ("android" == target."os" or null); + usesDefaultFeatures = false; } + ]; + features = { + "cipher" = [ "dep:cipher" ]; + "default" = [ "cipher" ]; + "legacy" = [ "cipher" ]; + "rng" = [ "dep:rand_core" ]; + "xchacha" = [ "cipher" ]; + "zeroize" = [ "dep:zeroize" ]; + }; + resolvedDefaultFeatures = [ "rng" ]; + }; + "chrono" = rec { + crateName = "chrono"; + version = "0.4.44"; + edition = "2021"; + sha256 = "1c64mk9a235271j5g3v4zrzqqmd43vp9vki7vqfllpqf5rd0fwy6"; + dependencies = [ { name = "iana-time-zone"; packageId = "iana-time-zone"; @@ -1834,23 +1526,17 @@ rec { usesDefaultFeatures = false; } { - name = "serde"; - packageId = "serde"; - optional = true; - usesDefaultFeatures = false; - } - { - name = "windows-targets"; - packageId = "windows-targets 0.52.6"; + name = "windows-link"; + packageId = "windows-link"; optional = true; target = { target, features }: (target."windows" or false); } ]; features = { - "android-tzdata" = [ "dep:android-tzdata" ]; "arbitrary" = [ "dep:arbitrary" ]; - "clock" = [ "winapi" "iana-time-zone" "android-tzdata" "now" ]; + "clock" = [ "winapi" "iana-time-zone" "now" ]; "default" = [ "clock" "std" "oldtime" "wasmbind" ]; + "defmt" = [ "dep:defmt" "pure-rust-locales?/defmt" ]; "iana-time-zone" = [ "dep:iana-time-zone" ]; "js-sys" = [ "dep:js-sys" ]; "now" = [ "std" ]; @@ -1865,10 +1551,10 @@ rec { "unstable-locales" = [ "pure-rust-locales" ]; "wasm-bindgen" = [ "dep:wasm-bindgen" ]; "wasmbind" = [ "wasm-bindgen" "js-sys" ]; - "winapi" = [ "windows-targets" ]; - "windows-targets" = [ "dep:windows-targets" ]; + "winapi" = [ "windows-link" ]; + "windows-link" = [ "dep:windows-link" ]; }; - resolvedDefaultFeatures = [ "alloc" "android-tzdata" "clock" "iana-time-zone" "now" "serde" "std" "winapi" "windows-targets" ]; + resolvedDefaultFeatures = [ "alloc" "clock" "iana-time-zone" "now" "std" "winapi" "windows-link" ]; }; "chrono-tz" = rec { crateName = "chrono-tz"; @@ -2028,14 +1714,14 @@ rec { "libloading" = [ "dep:libloading" ]; "runtime" = [ "libloading" ]; }; - resolvedDefaultFeatures = [ "clang_3_5" "clang_3_6" "clang_3_7" "clang_3_8" "clang_3_9" "clang_4_0" "clang_5_0" "clang_6_0" "libloading" "runtime" ]; + resolvedDefaultFeatures = [ "clang_10_0" "clang_11_0" "clang_3_5" "clang_3_6" "clang_3_7" "clang_3_8" "clang_3_9" "clang_4_0" "clang_5_0" "clang_6_0" "clang_7_0" "clang_8_0" "clang_9_0" "libloading" "runtime" ]; }; "clap" = rec { crateName = "clap"; - version = "4.5.35"; - edition = "2021"; + version = "4.6.0"; + edition = "2024"; crateBin = []; - sha256 = "0i1rnz7mwbhs5qf10r6vmrkplkzm3477khkwz189rha49f9qdanq"; + sha256 = "0l8k0ja5rf4hpn2g98bqv5m6lkh2q6b6likjpmm6fjw3cxdsz4xi"; dependencies = [ { name = "clap_builder"; @@ -2074,9 +1760,9 @@ rec { }; "clap_builder" = rec { crateName = "clap_builder"; - version = "4.5.35"; - edition = "2021"; - sha256 = "1nczcw6cc49ap99nn3v3n0vrv7j74zin34palq6ji586vnrdn514"; + version = "4.6.0"; + edition = "2024"; + sha256 = "17q6np22yxhh5y5v53y4l31ps3hlaz45mvz2n2nicr7n3c056jki"; dependencies = [ { name = "anstream"; @@ -2113,9 +1799,9 @@ rec { }; "clap_complete" = rec { crateName = "clap_complete"; - version = "4.5.24"; - edition = "2021"; - sha256 = "16zspf5dwksj8dybqmjfg0581ca2a2m0bk9wing681f2m3nbczbd"; + version = "4.6.0"; + edition = "2024"; + sha256 = "1sric3allwj3isk81khgmsx9qab1bafyr37jh4v6wwvbwzfz3j8r"; dependencies = [ { name = "clap"; @@ -2134,17 +1820,17 @@ rec { ]; features = { "debug" = [ "clap/debug" ]; - "unstable-command" = [ "unstable-dynamic" "dep:unicode-xid" "clap/derive" "dep:is_executable" "clap/unstable-ext" ]; - "unstable-doc" = [ "unstable-dynamic" "unstable-command" ]; + "unstable-doc" = [ "unstable-dynamic" ]; "unstable-dynamic" = [ "dep:clap_lex" "dep:shlex" "dep:is_executable" "clap/unstable-ext" ]; + "unstable-shell-tests" = [ "dep:completest" "dep:completest-pty" ]; }; resolvedDefaultFeatures = [ "default" ]; }; "clap_complete_nushell" = rec { crateName = "clap_complete_nushell"; - version = "4.5.4"; - edition = "2021"; - sha256 = "0xvnl61gnc3j76b9y50y35zvg7fls30i7lyb43fmsvncj3kh4n9i"; + version = "4.6.0"; + edition = "2024"; + sha256 = "15yqhkzndsxbmii8nspbl6qga9mrys4fa6srd2s599r9bmqykfgv"; dependencies = [ { name = "clap"; @@ -2172,9 +1858,9 @@ rec { }; "clap_derive" = rec { crateName = "clap_derive"; - version = "4.5.32"; - edition = "2021"; - sha256 = "1mqcag8qapb5yhygg2hi153kzmbf7w5hqp3nl3fvl5cn4yp6l5q9"; + version = "4.6.0"; + edition = "2024"; + sha256 = "0snapc468s7n3avr33dky4y7rmb7ha3qsp9l0k5vh6jacf5bs40i"; procMacro = true; dependencies = [ { @@ -2191,7 +1877,7 @@ rec { } { name = "syn"; - packageId = "syn 2.0.87"; + packageId = "syn 2.0.117"; features = [ "full" ]; } ]; @@ -2204,16 +1890,16 @@ rec { }; "clap_lex" = rec { crateName = "clap_lex"; - version = "0.7.4"; - edition = "2021"; - sha256 = "19nwfls5db269js5n822vkc8dw0wjq2h1wf0hgr06ld2g52d2spl"; + version = "1.1.0"; + edition = "2024"; + sha256 = "1ycqkpygnlqnndghhcxjb44lzl0nmgsia64x9581030yifxs7m68"; }; "clap_mangen" = rec { crateName = "clap_mangen"; - version = "0.2.23"; - edition = "2021"; - sha256 = "1ssfnb9fihhdf3xjlxslhqsrnlc4h8v8vkag4zildspv9pyiax7i"; + version = "0.2.33"; + edition = "2024"; + sha256 = "0y1d3wccspkd48cs9jhc9i2kk5z22sj2lvhwrnpsxqz2hz0zyc3y"; dependencies = [ { name = "clap"; @@ -2239,18 +1925,81 @@ rec { }; resolvedDefaultFeatures = [ "default" ]; }; + "cmake" = rec { + crateName = "cmake"; + version = "0.1.58"; + edition = "2021"; + sha256 = "0y06zxw5sv1p5vvpp5rz1qwbrq7ccawrl09nqy5ahx1a5418mxy0"; + authors = [ + "Alex Crichton " + ]; + dependencies = [ + { + name = "cc"; + packageId = "cc"; + } + ]; + + }; "colorchoice" = rec { crateName = "colorchoice"; - version = "1.0.2"; + version = "1.0.5"; edition = "2021"; - sha256 = "1h18ph538y8yjmbpaf8li98l0ifms2xmh3rax9666c5qfjfi3zfk"; + sha256 = "0w75k89hw39p0mnnhlrwr23q50rza1yjki44qvh2mgrnj065a1qx"; }; + "combine" = rec { + crateName = "combine"; + version = "4.6.7"; + edition = "2018"; + sha256 = "1z8rh8wp59gf8k23ar010phgs0wgf5i8cx4fg01gwcnzfn5k0nms"; + authors = [ + "Markus Westerlind " + ]; + dependencies = [ + { + name = "bytes"; + packageId = "bytes"; + optional = true; + } + { + name = "memchr"; + packageId = "memchr"; + usesDefaultFeatures = false; + } + ]; + devDependencies = [ + { + name = "bytes"; + packageId = "bytes"; + } + ]; + features = { + "bytes" = [ "dep:bytes" ]; + "bytes_05" = [ "dep:bytes_05" ]; + "default" = [ "std" ]; + "futures-03" = [ "pin-project" "std" "futures-core-03" "futures-io-03" "pin-project-lite" ]; + "futures-core-03" = [ "dep:futures-core-03" ]; + "futures-io-03" = [ "dep:futures-io-03" ]; + "pin-project" = [ "pin-project-lite" ]; + "pin-project-lite" = [ "dep:pin-project-lite" ]; + "regex" = [ "dep:regex" ]; + "std" = [ "memchr/std" "bytes" "alloc" ]; + "tokio" = [ "tokio-dep" "tokio-util/io" "futures-core-03" "pin-project-lite" ]; + "tokio-02" = [ "pin-project" "std" "tokio-02-dep" "futures-core-03" "pin-project-lite" "bytes_05" ]; + "tokio-02-dep" = [ "dep:tokio-02-dep" ]; + "tokio-03" = [ "pin-project" "std" "tokio-03-dep" "futures-core-03" "pin-project-lite" ]; + "tokio-03-dep" = [ "dep:tokio-03-dep" ]; + "tokio-dep" = [ "dep:tokio-dep" ]; + "tokio-util" = [ "dep:tokio-util" ]; + }; + resolvedDefaultFeatures = [ "alloc" "bytes" "default" "std" ]; + }; "comfy-table" = rec { crateName = "comfy-table"; - version = "7.1.1"; - edition = "2021"; - sha256 = "1xsjhi63kkzm05im0jwz0z2gprbicz7c5xdgnaczxpipaf8iahdk"; + version = "7.2.2"; + edition = "2024"; + sha256 = "0ixdw77rly84i5z1mxyw6v8lp1isaawnmgxv5d64n88zrxp5v34m"; libName = "comfy_table"; authors = [ "Arne Beer " @@ -2282,28 +2031,21 @@ rec { features = [ "windows" ]; } { - name = "strum"; - packageId = "strum 0.26.3"; - } - { - name = "strum_macros"; - packageId = "strum_macros 0.26.4"; + name = "unicode-segmentation"; + packageId = "unicode-segmentation"; } { name = "unicode-width"; - packageId = "unicode-width 0.1.13"; + packageId = "unicode-width"; } ]; features = { - "ansi-str" = [ "dep:ansi-str" ]; - "console" = [ "dep:console" ]; - "crossterm" = [ "dep:crossterm" ]; - "custom_styling" = [ "ansi-str" "console" "tty" ]; + "custom_styling" = [ "dep:ansi-str" "dep:console" "tty" ]; "default" = [ "tty" ]; "reexport_crossterm" = [ "tty" ]; - "tty" = [ "crossterm" ]; + "tty" = [ "dep:crossterm" ]; }; - resolvedDefaultFeatures = [ "ansi-str" "console" "crossterm" "custom_styling" "default" "tty" ]; + resolvedDefaultFeatures = [ "custom_styling" "default" "tty" ]; }; "concurrent-queue" = rec { crateName = "concurrent-queue"; @@ -2332,50 +2074,45 @@ rec { }; "console" = rec { crateName = "console"; - version = "0.15.8"; - edition = "2018"; - sha256 = "1sz4nl9nz8pkmapqni6py7jxzi7nzqjxzb3ya4kxvmkb0zy867qf"; - authors = [ - "Armin Ronacher " - ]; + version = "0.16.3"; + edition = "2021"; + sha256 = "11zwz1vnfr0nx6dyjx0gjymp8864y5hxwf01ynfd2s8kapsqlknn"; dependencies = [ { name = "encode_unicode"; packageId = "encode_unicode"; target = { target, features }: (target."windows" or false); } - { - name = "lazy_static"; - packageId = "lazy_static"; - } { name = "libc"; packageId = "libc"; + optional = true; } { name = "unicode-width"; - packageId = "unicode-width 0.1.13"; + packageId = "unicode-width"; optional = true; } { name = "windows-sys"; - packageId = "windows-sys 0.52.0"; + packageId = "windows-sys 0.61.2"; target = { target, features }: (target."windows" or false); features = [ "Win32_Foundation" "Win32_System_Console" "Win32_Storage_FileSystem" "Win32_UI_Input_KeyboardAndMouse" ]; } ]; features = { - "default" = [ "unicode-width" "ansi-parsing" ]; + "default" = [ "unicode-width" "ansi-parsing" "std" ]; + "std" = [ "dep:libc" "alloc" ]; "unicode-width" = [ "dep:unicode-width" ]; "windows-console-colors" = [ "ansi-parsing" ]; }; - resolvedDefaultFeatures = [ "ansi-parsing" "default" "unicode-width" ]; + resolvedDefaultFeatures = [ "alloc" "ansi-parsing" "default" "std" "unicode-width" ]; }; "const_format" = rec { crateName = "const_format"; - version = "0.2.34"; + version = "0.2.35"; edition = "2021"; - sha256 = "1pb3vx4k0bl3cy45fmba36hzds1jhkr8y9k3j5nnvm4abjb9fvqj"; + sha256 = "1b9h03z3k76ail1ldqxcqmsc4raa7dwgwwqwrjf6wmism5lp9akz"; authors = [ "rodrimati1992 " ]; @@ -2438,9 +2175,9 @@ rec { }; "convert_case" = rec { crateName = "convert_case"; - version = "0.8.0"; + version = "0.11.0"; edition = "2021"; - sha256 = "17zqy79xlr1n7nc0n1mlnw5qpp8l2nbxrk13jixrhlavrbna1ams"; + sha256 = "0jfv1ajyr65bjlx533n5alfkfjdl8ks4zxfywdiz1jnj1qcz1yxg"; authors = [ "rutrum " ]; @@ -2450,6 +2187,22 @@ rec { packageId = "unicode-segmentation"; } ]; + + }; + "convert_case_extras" = rec { + crateName = "convert_case_extras"; + version = "0.2.0"; + edition = "2021"; + sha256 = "1fyfc5vdblw15k8w7xahmif7bmslx3mdamvmg0brvapqzbq7172q"; + authors = [ + "rutrum " + ]; + dependencies = [ + { + name = "convert_case"; + packageId = "convert_case"; + } + ]; features = { "rand" = [ "dep:rand" ]; "random" = [ "rand" ]; @@ -2457,9 +2210,9 @@ rec { }; "core-foundation" = rec { crateName = "core-foundation"; - version = "0.9.4"; - edition = "2018"; - sha256 = "13zvbbj07yk3b61b8fhwfzhy35535a583irf23vlcg59j7h9bqci"; + version = "0.10.1"; + edition = "2021"; + sha256 = "1xjns6dqf36rni2x9f47b65grxwdm20kwdg9lhmzdrrkwadcv9mj"; libName = "core_foundation"; authors = [ "The Servo Project Developers" @@ -2476,14 +2229,11 @@ rec { } ]; features = { - "chrono" = [ "dep:chrono" ]; "default" = [ "link" ]; "link" = [ "core-foundation-sys/link" ]; "mac_os_10_7_support" = [ "core-foundation-sys/mac_os_10_7_support" ]; "mac_os_10_8_features" = [ "core-foundation-sys/mac_os_10_8_features" ]; - "uuid" = [ "dep:uuid" ]; - "with-chrono" = [ "chrono" ]; - "with-uuid" = [ "uuid" ]; + "with-uuid" = [ "dep:uuid" ]; }; resolvedDefaultFeatures = [ "default" "link" ]; }; @@ -2501,11 +2251,11 @@ rec { }; resolvedDefaultFeatures = [ "default" "link" ]; }; - "cpufeatures" = rec { + "cpufeatures 0.2.17" = rec { crateName = "cpufeatures"; - version = "0.2.13"; + version = "0.2.17"; edition = "2018"; - sha256 = "1b89kljf7phyh63vxwsvf9lbgwkv0dsj7pcjmqgysnwsvkk55s2i"; + sha256 = "10023dnnaghhdl70xcds12fsx2b966sxbxjq5sxs49mvxqw5ivar"; authors = [ "RustCrypto Developers" ]; @@ -2513,21 +2263,61 @@ rec { { name = "libc"; packageId = "libc"; - target = { target, features }: (stdenv.hostPlatform.rust.rustcTarget == "aarch64-linux-android"); + usesDefaultFeatures = false; + target = { target, features }: (target.name == "aarch64-linux-android"); } { name = "libc"; packageId = "libc"; + usesDefaultFeatures = false; target = { target, features }: (("aarch64" == target."arch" or null) && ("linux" == target."os" or null)); } { name = "libc"; packageId = "libc"; + usesDefaultFeatures = false; target = { target, features }: (("aarch64" == target."arch" or null) && ("apple" == target."vendor" or null)); } { name = "libc"; packageId = "libc"; + usesDefaultFeatures = false; + target = { target, features }: (("loongarch64" == target."arch" or null) && ("linux" == target."os" or null)); + } + ]; + + }; + "cpufeatures 0.3.0" = rec { + crateName = "cpufeatures"; + version = "0.3.0"; + edition = "2024"; + sha256 = "00fjhygsqmh4kbxxlb99mcsbspxcai6hjydv4c46pwb67wwl2alb"; + authors = [ + "RustCrypto Developers" + ]; + dependencies = [ + { + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; + target = { target, features }: (("aarch64" == target."arch" or null) && ("android" == target."os" or null)); + } + { + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; + target = { target, features }: (("aarch64" == target."arch" or null) && ("linux" == target."os" or null)); + } + { + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; + target = { target, features }: (("aarch64" == target."arch" or null) && ("apple" == target."vendor" or null)); + } + { + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; target = { target, features }: (("loongarch64" == target."arch" or null) && ("linux" == target."os" or null)); } ]; @@ -2535,9 +2325,9 @@ rec { }; "crc32fast" = rec { crateName = "crc32fast"; - version = "1.4.2"; - edition = "2015"; - sha256 = "1czp7vif73b8xslr3c9yxysmh9ws2r8824qda7j47ffs9pcnjxx9"; + version = "1.5.0"; + edition = "2021"; + sha256 = "04d51liy8rbssra92p0qnwjw8i9rm9c4m3bwy19wjamz1k4w30cl"; authors = [ "Sam Rijs " "Alex Crichton " @@ -2555,9 +2345,9 @@ rec { }; "crossbeam-channel" = rec { crateName = "crossbeam-channel"; - version = "0.5.13"; + version = "0.5.15"; edition = "2021"; - sha256 = "1wkx45r34v7g3wyi3lg2wz536lrrrab4h4hh741shfhr8rlhsj1k"; + sha256 = "1cicd9ins0fkpfgvz9vhz3m9rpkh6n8d3437c3wnfsdkd3wgif42"; libName = "crossbeam_channel"; dependencies = [ { @@ -2574,9 +2364,9 @@ rec { }; "crossbeam-deque" = rec { crateName = "crossbeam-deque"; - version = "0.8.5"; + version = "0.8.6"; edition = "2021"; - sha256 = "03bp38ljx4wj6vvy4fbhx41q8f585zyqix6pncz1mkz93z08qgv1"; + sha256 = "0l9f1saqp1gn5qy0rxvkmz4m6n7fc0b3dbm6q1r5pmgpnyvi3lcx"; libName = "crossbeam_deque"; dependencies = [ { @@ -2620,28 +2410,28 @@ rec { }; "crossbeam-utils" = rec { crateName = "crossbeam-utils"; - version = "0.8.20"; + version = "0.8.21"; edition = "2021"; - sha256 = "100fksq5mm1n7zj242cclkw6yf7a4a8ix3lvpfkhxvdhbda9kv12"; + sha256 = "0a3aa2bmc8q35fb67432w16wvi54sfmb69rk9h5bhd18vw0c99fh"; libName = "crossbeam_utils"; features = { "default" = [ "std" ]; "loom" = [ "dep:loom" ]; }; - resolvedDefaultFeatures = [ "default" "std" ]; + resolvedDefaultFeatures = [ "std" ]; }; "crossterm" = rec { crateName = "crossterm"; - version = "0.27.0"; + version = "0.29.0"; edition = "2021"; - sha256 = "1pr413ki440xgddlmkrc4j1bfx1h8rpmll87zn8ykja1bm2gwxpl"; + sha256 = "0yzqxxd90k7d2ac26xq1awsznsaq0qika2nv1ik3p0vzqvjg5ffq"; authors = [ "T. Post" ]; dependencies = [ { name = "bitflags"; - packageId = "bitflags 2.6.0"; + packageId = "bitflags"; } { name = "crossterm_winapi"; @@ -2650,14 +2440,20 @@ rec { target = { target, features }: (target."windows" or false); } { - name = "libc"; - packageId = "libc"; - target = { target, features }: (target."unix" or false); + name = "document-features"; + packageId = "document-features"; } { name = "parking_lot"; packageId = "parking_lot"; } + { + name = "rustix"; + packageId = "rustix"; + usesDefaultFeatures = false; + target = { target, features }: (target."unix" or false); + features = [ "std" "stdio" "termios" ]; + } { name = "winapi"; packageId = "winapi"; @@ -2667,12 +2463,15 @@ rec { } ]; features = { - "default" = [ "bracketed-paste" "windows" "events" ]; + "default" = [ "bracketed-paste" "events" "windows" "derive-more" ]; + "derive-more" = [ "dep:derive_more" ]; "event-stream" = [ "dep:futures-core" "events" ]; "events" = [ "dep:mio" "dep:signal-hook" "dep:signal-hook-mio" ]; "filedescriptor" = [ "dep:filedescriptor" ]; + "libc" = [ "dep:libc" ]; + "osc52" = [ "dep:base64" ]; "serde" = [ "dep:serde" "bitflags/serde" ]; - "use-dev-tty" = [ "filedescriptor" ]; + "use-dev-tty" = [ "filedescriptor" "rustix/process" ]; "windows" = [ "dep:winapi" "dep:crossterm_winapi" ]; }; resolvedDefaultFeatures = [ "windows" ]; @@ -2697,9 +2496,9 @@ rec { }; "crypto-common" = rec { crateName = "crypto-common"; - version = "0.1.6"; + version = "0.1.7"; edition = "2018"; - sha256 = "1cvby95a6xg7kxdz5ln3rl9xh66nz66w46mm3g56ri1z5x815yqv"; + sha256 = "02nn2rhfy7kvdkdjl457q2z0mklcvj9h662xrq6dzhfialh2kj3q"; libName = "crypto_common"; authors = [ "RustCrypto Developers" @@ -2723,9 +2522,9 @@ rec { }; "darling" = rec { crateName = "darling"; - version = "0.20.10"; + version = "0.23.0"; edition = "2021"; - sha256 = "1299h2z88qn71mizhh05j26yr3ik0wnqmw11ijds89l8i9nbhqvg"; + sha256 = "179fj6p6ajw4dnkrik51wjhifxwy02x5zhligyymcb905zd17bi5"; authors = [ "Ted Driggs " ]; @@ -2742,23 +2541,20 @@ rec { features = { "default" = [ "suggestions" ]; "diagnostics" = [ "darling_core/diagnostics" ]; + "serde" = [ "darling_core/serde" ]; "suggestions" = [ "darling_core/suggestions" ]; }; resolvedDefaultFeatures = [ "default" "suggestions" ]; }; "darling_core" = rec { crateName = "darling_core"; - version = "0.20.10"; + version = "0.23.0"; edition = "2021"; - sha256 = "1rgr9nci61ahnim93yh3xy6fkfayh7sk4447hahawah3m1hkh4wm"; + sha256 = "1c033vrks38vpw8kwgd5w088dsr511kfz55n9db56prkgh7sarcq"; authors = [ "Ted Driggs " ]; dependencies = [ - { - name = "fnv"; - packageId = "fnv"; - } { name = "ident_case"; packageId = "ident_case"; @@ -2778,11 +2574,12 @@ rec { } { name = "syn"; - packageId = "syn 2.0.87"; + packageId = "syn 2.0.117"; features = [ "full" "extra-traits" ]; } ]; features = { + "serde" = [ "dep:serde" ]; "strsim" = [ "dep:strsim" ]; "suggestions" = [ "strsim" ]; }; @@ -2790,9 +2587,9 @@ rec { }; "darling_macro" = rec { crateName = "darling_macro"; - version = "0.20.10"; + version = "0.23.0"; edition = "2021"; - sha256 = "01kq3ibbn47czijj39h3vxyw0c2ksd0jvc097smcrk7n2jjs4dnk"; + sha256 = "13fvzji9xyp304mgq720z5l0xgm54qj68jibwscagkynggn88fdc"; procMacro = true; authors = [ "Ted Driggs " @@ -2808,16 +2605,16 @@ rec { } { name = "syn"; - packageId = "syn 2.0.87"; + packageId = "syn 2.0.117"; } ]; }; "data-encoding" = rec { crateName = "data-encoding"; - version = "2.6.0"; + version = "2.10.0"; edition = "2018"; - sha256 = "1qnn68n4vragxaxlkqcb1r28d3hhj43wch67lm4rpxlw89wnjmp8"; + sha256 = "1shzipi8igi058fkx9wfiy6prd7d8rahz1lb7d4idw9nfvrf58fp"; libName = "data_encoding"; authors = [ "Julien Cretin " @@ -2830,9 +2627,9 @@ rec { }; "delegate" = rec { crateName = "delegate"; - version = "0.13.3"; + version = "0.13.5"; edition = "2018"; - sha256 = "088d919b991lz5bj5k989ab33dzjsi8pdx8whsbnzlmy5cy4idmr"; + sha256 = "0w2karbb16rrz3f5yj1fhsnpss4vl1ag1i8gn2prgw2bcm0v43kq"; procMacro = true; authors = [ "Godfrey Chan " @@ -2849,7 +2646,7 @@ rec { } { name = "syn"; - packageId = "syn 2.0.87"; + packageId = "syn 2.0.117"; features = [ "full" "visit-mut" ]; } ]; @@ -2857,9 +2654,9 @@ rec { }; "deranged" = rec { crateName = "deranged"; - version = "0.3.11"; + version = "0.5.8"; edition = "2021"; - sha256 = "1d1ibqqnr5qdrpw8rclwrf1myn3wf0dygl04idf4j2s49ah6yaxl"; + sha256 = "0711df3w16vx80k55ivkwzwswziinj4dz05xci3rvmn15g615n3w"; authors = [ "Jacob Pratt " ]; @@ -2872,21 +2669,23 @@ rec { } ]; features = { - "default" = [ "std" ]; + "macros" = [ "dep:deranged-macros" ]; "num" = [ "dep:num-traits" ]; "powerfmt" = [ "dep:powerfmt" ]; "quickcheck" = [ "dep:quickcheck" "alloc" ]; - "rand" = [ "dep:rand" ]; - "serde" = [ "dep:serde" ]; - "std" = [ "alloc" ]; + "rand" = [ "rand08" "rand09" "rand010" ]; + "rand010" = [ "dep:rand010" ]; + "rand08" = [ "dep:rand08" ]; + "rand09" = [ "dep:rand09" ]; + "serde" = [ "dep:serde_core" ]; }; - resolvedDefaultFeatures = [ "alloc" "powerfmt" "std" ]; + resolvedDefaultFeatures = [ "default" "powerfmt" ]; }; "derive_arbitrary" = rec { crateName = "derive_arbitrary"; - version = "1.3.2"; + version = "1.4.2"; edition = "2021"; - sha256 = "04bnd985frl81r5sgixgpvncnnj1bfpfnd7qvdx1aahnqi9pbrv7"; + sha256 = "0annkmfwfavd978vwwrxvrpykjfdnc3w6q1ln3j7kyfg5pc7nmhy"; procMacro = true; authors = [ "The Rust-Fuzz Project Developers" @@ -2906,17 +2705,116 @@ rec { } { name = "syn"; - packageId = "syn 2.0.87"; - features = [ "derive" "parsing" ]; + packageId = "syn 2.0.117"; + features = [ "derive" "parsing" "extra-traits" ]; } ]; }; + "derive_more" = rec { + crateName = "derive_more"; + version = "2.1.1"; + edition = "2021"; + sha256 = "0d5i10l4aff744jw7v4n8g6cv15rjk5mp0f1z522pc2nj7jfjlfp"; + authors = [ + "Jelte Fennema " + ]; + dependencies = [ + { + name = "derive_more-impl"; + packageId = "derive_more-impl"; + } + ]; + features = { + "add" = [ "derive_more-impl/add" ]; + "add_assign" = [ "derive_more-impl/add_assign" ]; + "as_ref" = [ "derive_more-impl/as_ref" ]; + "constructor" = [ "derive_more-impl/constructor" ]; + "debug" = [ "derive_more-impl/debug" ]; + "default" = [ "std" ]; + "deref" = [ "derive_more-impl/deref" ]; + "deref_mut" = [ "derive_more-impl/deref_mut" ]; + "display" = [ "derive_more-impl/display" ]; + "eq" = [ "derive_more-impl/eq" ]; + "error" = [ "derive_more-impl/error" ]; + "from" = [ "derive_more-impl/from" ]; + "from_str" = [ "derive_more-impl/from_str" ]; + "full" = [ "add" "add_assign" "as_ref" "constructor" "debug" "deref" "deref_mut" "display" "eq" "error" "from" "from_str" "index" "index_mut" "into" "into_iterator" "is_variant" "mul" "mul_assign" "not" "sum" "try_from" "try_into" "try_unwrap" "unwrap" ]; + "index" = [ "derive_more-impl/index" ]; + "index_mut" = [ "derive_more-impl/index_mut" ]; + "into" = [ "derive_more-impl/into" ]; + "into_iterator" = [ "derive_more-impl/into_iterator" ]; + "is_variant" = [ "derive_more-impl/is_variant" ]; + "mul" = [ "derive_more-impl/mul" ]; + "mul_assign" = [ "derive_more-impl/mul_assign" ]; + "not" = [ "derive_more-impl/not" ]; + "sum" = [ "derive_more-impl/sum" ]; + "testing-helpers" = [ "derive_more-impl/testing-helpers" "dep:rustc_version" ]; + "try_from" = [ "derive_more-impl/try_from" ]; + "try_into" = [ "derive_more-impl/try_into" ]; + "try_unwrap" = [ "derive_more-impl/try_unwrap" ]; + "unwrap" = [ "derive_more-impl/unwrap" ]; + }; + resolvedDefaultFeatures = [ "default" "from" "std" ]; + }; + "derive_more-impl" = rec { + crateName = "derive_more-impl"; + version = "2.1.1"; + edition = "2021"; + sha256 = "1jwdp836vymp35d7mfvvalplkdgk2683nv3zjlx65n1194k9g6kr"; + procMacro = true; + libName = "derive_more_impl"; + authors = [ + "Jelte Fennema " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.117"; + } + ]; + buildDependencies = [ + { + name = "rustc_version"; + packageId = "rustc_version"; + } + ]; + features = { + "add" = [ "syn/extra-traits" "syn/visit" ]; + "add_assign" = [ "syn/extra-traits" "syn/visit" ]; + "as_ref" = [ "syn/extra-traits" "syn/visit" ]; + "debug" = [ "syn/extra-traits" "dep:unicode-xid" ]; + "display" = [ "syn/extra-traits" "dep:unicode-xid" "dep:convert_case" ]; + "eq" = [ "syn/extra-traits" "syn/visit" ]; + "error" = [ "syn/extra-traits" ]; + "from" = [ "syn/extra-traits" ]; + "from_str" = [ "syn/full" "syn/visit" "dep:convert_case" ]; + "full" = [ "add" "add_assign" "as_ref" "constructor" "debug" "deref" "deref_mut" "display" "eq" "error" "from" "from_str" "index" "index_mut" "into" "into_iterator" "is_variant" "mul" "mul_assign" "not" "sum" "try_from" "try_into" "try_unwrap" "unwrap" ]; + "into" = [ "syn/extra-traits" "syn/visit-mut" ]; + "is_variant" = [ "dep:convert_case" ]; + "mul" = [ "syn/extra-traits" "syn/visit" ]; + "mul_assign" = [ "syn/extra-traits" "syn/visit" ]; + "not" = [ "syn/extra-traits" ]; + "testing-helpers" = [ "syn/full" ]; + "try_into" = [ "syn/extra-traits" "syn/full" "syn/visit-mut" ]; + "try_unwrap" = [ "dep:convert_case" ]; + "unwrap" = [ "dep:convert_case" ]; + }; + resolvedDefaultFeatures = [ "default" "from" ]; + }; "deunicode" = rec { crateName = "deunicode"; - version = "1.6.0"; + version = "1.6.2"; edition = "2021"; - sha256 = "006gnml4jy3m03yqma8qvx7kl9i2bw667za9f7yc6k9ckv64959k"; + sha256 = "013biy7hhy59jcbry4dqn2pf4qhaw083ksn8xxiw373wjc37imdb"; authors = [ "Kornel Lesinski " "Amit Chowdhury " @@ -2926,6 +2824,42 @@ rec { }; resolvedDefaultFeatures = [ "alloc" "default" ]; }; + "dialoguer" = rec { + crateName = "dialoguer"; + version = "0.12.0"; + edition = "2021"; + sha256 = "15mdq2cp838yiq9fs1jkhvskixvlqz5p8f8dipkn88xz06sh9w95"; + dependencies = [ + { + name = "console"; + packageId = "console"; + } + { + name = "shell-words"; + packageId = "shell-words"; + } + { + name = "tempfile"; + packageId = "tempfile"; + optional = true; + } + { + name = "zeroize"; + packageId = "zeroize"; + optional = true; + } + ]; + features = { + "default" = [ "editor" "password" ]; + "editor" = [ "tempfile" ]; + "fuzzy-matcher" = [ "dep:fuzzy-matcher" ]; + "fuzzy-select" = [ "fuzzy-matcher" ]; + "password" = [ "zeroize" ]; + "tempfile" = [ "dep:tempfile" ]; + "zeroize" = [ "dep:zeroize" ]; + }; + resolvedDefaultFeatures = [ "default" "editor" "password" "tempfile" "zeroize" ]; + }; "digest" = rec { crateName = "digest"; version = "0.10.7"; @@ -2962,9 +2896,9 @@ rec { }; "directories" = rec { crateName = "directories"; - version = "5.0.1"; + version = "6.0.0"; edition = "2015"; - sha256 = "0dba6xzk79s1clqzxh2qlgzk3lmvvks1lzzjhhi3hd70hhxifjcs"; + sha256 = "0zgy2w088v8w865c11dmc3dih899fgrhvrfp7g83h6v6ai60kx8n"; authors = [ "Simon Ochsenreither " ]; @@ -2978,9 +2912,9 @@ rec { }; "dirs-sys" = rec { crateName = "dirs-sys"; - version = "0.4.1"; + version = "0.5.0"; edition = "2015"; - sha256 = "071jy0pvaad9lsa6mzawxrh7cmr7hsmsdxwzm7jzldfkrfjha3sj"; + sha256 = "1aqzpgq6ampza6v012gm2dppx9k35cdycbj54808ksbys9k366p0"; libName = "dirs_sys"; authors = [ "Simon Ochsenreither " @@ -3003,7 +2937,7 @@ rec { } { name = "windows-sys"; - packageId = "windows-sys 0.48.0"; + packageId = "windows-sys 0.61.2"; target = { target, features }: (target."windows" or false); features = [ "Win32_UI_Shell" "Win32_Foundation" "Win32_Globalization" "Win32_System_Com" ]; } @@ -3030,7 +2964,7 @@ rec { } { name = "syn"; - packageId = "syn 2.0.87"; + packageId = "syn 2.0.117"; } ]; features = { @@ -3039,9 +2973,9 @@ rec { }; "doc-comment" = rec { crateName = "doc-comment"; - version = "0.3.3"; + version = "0.3.4"; edition = "2015"; - sha256 = "043sprsf3wl926zmck1bm7gw0jq50mb76lkpk49vasfr6ax1p97y"; + sha256 = "1j8jbrw8335hciwn3h2idkfc3kmx3pfn0sxcwjw1m8lmn6w5a2bq"; libName = "doc_comment"; authors = [ "Guillaume Gomez " @@ -3086,6 +3020,27 @@ rec { ]; }; + "document-features" = rec { + crateName = "document-features"; + version = "0.2.12"; + edition = "2018"; + sha256 = "0qcgpialq3zgvjmsvar9n6v10rfbv6mk6ajl46dd4pj5hn3aif6l"; + procMacro = true; + libName = "document_features"; + libPath = "lib.rs"; + authors = [ + "Slint Developers " + ]; + dependencies = [ + { + name = "litrs"; + packageId = "litrs"; + } + ]; + features = { + }; + resolvedDefaultFeatures = [ "default" ]; + }; "dotenvy" = rec { crateName = "dotenvy"; version = "0.15.7"; @@ -3107,11 +3062,21 @@ rec { "cli" = [ "clap" ]; }; }; + "dunce" = rec { + crateName = "dunce"; + version = "1.0.5"; + edition = "2021"; + sha256 = "04y8wwv3vvcqaqmqzssi6k0ii9gs6fpz96j5w9nky2ccsl23axwj"; + authors = [ + "Kornel " + ]; + + }; "dyn-clone" = rec { crateName = "dyn-clone"; - version = "1.0.17"; + version = "1.0.20"; edition = "2018"; - sha256 = "09cig7dgg6jnqa10p4233nd8wllbjf4ffsw7wj0m4lwa5w3z0vhd"; + sha256 = "0m956cxcg8v2n8kmz6xs5zl13k2fak3zkapzfzzp7pxih6hix26h"; libName = "dyn_clone"; authors = [ "David Tolnay " @@ -3144,13 +3109,13 @@ rec { } { name = "syn"; - packageId = "syn 2.0.87"; + packageId = "syn 2.0.117"; } ]; devDependencies = [ { name = "syn"; - packageId = "syn 2.0.87"; + packageId = "syn 2.0.117"; features = [ "full" ]; } ]; @@ -3162,38 +3127,38 @@ rec { }; "either" = rec { crateName = "either"; - version = "1.13.0"; - edition = "2018"; - sha256 = "1w2c1mybrd7vljyxk77y9f4w9dyjrmp3yp82mk7bcm8848fazcb0"; + version = "1.15.0"; + edition = "2021"; + sha256 = "069p1fknsmzn9llaizh77kip0pqmcwpdsykv2x30xpjyija5gis8"; authors = [ "bluss" ]; features = { - "default" = [ "use_std" ]; + "default" = [ "std" ]; "serde" = [ "dep:serde" ]; + "use_std" = [ "std" ]; }; - resolvedDefaultFeatures = [ "default" "use_std" ]; + resolvedDefaultFeatures = [ "default" "std" "use_std" ]; }; "encode_unicode" = rec { crateName = "encode_unicode"; - version = "0.3.6"; - edition = "2015"; - sha256 = "07w3vzrhxh9lpjgsg2y5bwzfar2aq35mdznvcp3zjl0ssj7d4mx3"; + version = "1.0.0"; + edition = "2021"; + sha256 = "1h5j7j7byi289by63s3w4a8b3g6l5ccdrws7a67nn07vdxj77ail"; authors = [ "Torbjørn Birch Moltu " ]; features = { "ascii" = [ "dep:ascii" ]; - "clippy" = [ "dep:clippy" ]; "default" = [ "std" ]; }; resolvedDefaultFeatures = [ "default" "std" ]; }; "encoding_rs" = rec { crateName = "encoding_rs"; - version = "0.8.34"; + version = "0.8.35"; edition = "2018"; - sha256 = "0nagpi1rjqdpvakymwmnlxzq908ncg868lml5b70n08bm82fjpdl"; + sha256 = "1wv64xdrr9v37rqqdjsyb8l8wzlcbab80ryxhrszvnj59wy0y0vm"; authors = [ "Henri Sivonen " ]; @@ -3223,16 +3188,16 @@ rec { dependencies = [ { name = "thiserror"; - packageId = "thiserror 1.0.63"; + packageId = "thiserror 1.0.69"; } ]; }; "enum-ordinalize" = rec { crateName = "enum-ordinalize"; - version = "4.3.0"; + version = "4.3.2"; edition = "2021"; - sha256 = "1max64z9giii61qcwl56rndd7pakaylkaij5zqbbbvjl9vxdr87y"; + sha256 = "1w0012dqq5y3xikpswix190jvjl097pjrzpi515jr3qzpfkr242a"; libName = "enum_ordinalize"; dependencies = [ { @@ -3251,9 +3216,9 @@ rec { }; "enum-ordinalize-derive" = rec { crateName = "enum-ordinalize-derive"; - version = "4.3.1"; + version = "4.3.2"; edition = "2021"; - sha256 = "1zy53fabazimwv5cl0366k834ybixzl84lxj9mfavbnlfn532a0d"; + sha256 = "0cf61sxxsf3f6n5xhzjxdrc1793k52250ql32zp9h9fnn8gn1acc"; procMacro = true; libName = "enum_ordinalize_derive"; dependencies = [ @@ -3267,7 +3232,7 @@ rec { } { name = "syn"; - packageId = "syn 2.0.87"; + packageId = "syn 2.0.117"; } ]; features = { @@ -3275,18 +3240,19 @@ rec { }; "equivalent" = rec { crateName = "equivalent"; - version = "1.0.1"; + version = "1.0.2"; edition = "2015"; - sha256 = "1malmx5f4lkfvqasz319lq6gb3ddg19yzf9s8cykfsgzdmyq0hsl"; + sha256 = "03swzqznragy8n0x31lqc78g2af054jwivp7lkrbrc0khz74lyl7"; }; "errno" = rec { crateName = "errno"; - version = "0.3.9"; + version = "0.3.14"; edition = "2018"; - sha256 = "1fi0m0493maq1jygcf1bya9cymz2pc1mqxj26bdv7yjd37v5qk2k"; + sha256 = "1szgccmh8vgryqyadg8xd58mnwwicf39zmin3bsn63df2wbbgjir"; authors = [ "Chris Wong " + "Dan Gohman " ]; dependencies = [ { @@ -3309,7 +3275,7 @@ rec { } { name = "windows-sys"; - packageId = "windows-sys 0.52.0"; + packageId = "windows-sys 0.61.2"; target = { target, features }: (target."windows" or false); features = [ "Win32_Foundation" "Win32_System_Diagnostics_Debug" ]; } @@ -3318,13 +3284,13 @@ rec { "default" = [ "std" ]; "std" = [ "libc/std" ]; }; - resolvedDefaultFeatures = [ "std" ]; + resolvedDefaultFeatures = [ "default" "std" ]; }; "event-listener" = rec { crateName = "event-listener"; - version = "5.3.1"; + version = "5.4.1"; edition = "2021"; - sha256 = "1fkm6q4hjn61wl52xyqyyxai0x9w0ngrzi0wf1qsf8vhsadvwck0"; + sha256 = "1asnp3agbr8shcl001yd935m167ammyi8hnvl0q1ycajryn6cfz1"; libName = "event_listener"; authors = [ "Stjepan Glavina " @@ -3348,6 +3314,7 @@ rec { } ]; features = { + "critical-section" = [ "dep:critical-section" ]; "default" = [ "std" ]; "loom" = [ "concurrent-queue/loom" "parking?/loom" "dep:loom" ]; "parking" = [ "dep:parking" ]; @@ -3360,9 +3327,9 @@ rec { }; "event-listener-strategy" = rec { crateName = "event-listener-strategy"; - version = "0.5.2"; + version = "0.5.4"; edition = "2021"; - sha256 = "18f5ri227khkayhv3ndv7yl4rnasgwksl2jhwgafcxzr7324s88g"; + sha256 = "14rv18av8s7n8yixg38bxp5vg2qs394rl1w052by5npzmbgz7scb"; libName = "event_listener_strategy"; authors = [ "John Nunley " @@ -3380,19 +3347,22 @@ rec { ]; features = { "default" = [ "std" ]; + "loom" = [ "event-listener/loom" ]; + "portable-atomic" = [ "event-listener/portable-atomic" ]; "std" = [ "event-listener/std" ]; }; resolvedDefaultFeatures = [ "default" "std" ]; }; "fancy-regex" = rec { crateName = "fancy-regex"; - version = "0.13.0"; + version = "0.16.2"; edition = "2018"; - sha256 = "1wjbqjsdj8fkq6z2i9llq25iaqzd9f208vxnwg8mdbr2ba1lc7jk"; + sha256 = "0vy4c012f82xcg3gs068mq110zhsrnajh58fmq1jxr7vaijhb2wr"; libName = "fancy_regex"; authors = [ "Raph Levien " "Robin Stocker " + "Keith Hall " ]; dependencies = [ { @@ -3402,13 +3372,13 @@ rec { } { name = "regex-automata"; - packageId = "regex-automata 0.4.7"; + packageId = "regex-automata"; usesDefaultFeatures = false; features = [ "alloc" "syntax" "meta" "nfa" "dfa" "hybrid" ]; } { name = "regex-syntax"; - packageId = "regex-syntax 0.8.4"; + packageId = "regex-syntax"; usesDefaultFeatures = false; } ]; @@ -3422,9 +3392,9 @@ rec { }; "fastrand" = rec { crateName = "fastrand"; - version = "2.3.0"; + version = "2.4.1"; edition = "2018"; - sha256 = "1ghiahsw1jd68df895cy5h3gzwk30hndidn3b682zmshpgmrx41p"; + sha256 = "1mnqxxnxvd69ma9mczabpbbsgwlhd6l78yv3vd681453a9s247wz"; authors = [ "Stjepan Glavina " ]; @@ -3434,13 +3404,21 @@ rec { "js" = [ "std" "getrandom" ]; "std" = [ "alloc" ]; }; - resolvedDefaultFeatures = [ "alloc" "std" ]; + resolvedDefaultFeatures = [ "alloc" "default" "std" ]; + }; + "find-msvc-tools" = rec { + crateName = "find-msvc-tools"; + version = "0.1.9"; + edition = "2018"; + sha256 = "10nmi0qdskq6l7zwxw5g56xny7hb624iki1c39d907qmfh3vrbjv"; + libName = "find_msvc_tools"; + }; "flate2" = rec { crateName = "flate2"; - version = "1.0.33"; + version = "1.1.9"; edition = "2018"; - sha256 = "0lzj9cmr1pcwrgr4nnxjihnksqhxmygcqqdqcjnhbvslh3k1njij"; + sha256 = "0g2pb7cxnzcbzrj8bw4v6gpqqp21aycmf6d84rzb6j748qkvlgw4"; authors = [ "Alex Crichton " "Josh Triplett " @@ -3449,40 +3427,49 @@ rec { { name = "crc32fast"; packageId = "crc32fast"; + optional = true; } { name = "miniz_oxide"; - packageId = "miniz_oxide 0.8.0"; + packageId = "miniz_oxide"; optional = true; usesDefaultFeatures = false; - features = [ "with-alloc" ]; + features = [ "with-alloc" "simd" ]; } { name = "miniz_oxide"; - packageId = "miniz_oxide 0.8.0"; + packageId = "miniz_oxide"; usesDefaultFeatures = false; target = { target, features }: (("wasm32" == target."arch" or null) && (!("emscripten" == target."os" or null))); - features = [ "with-alloc" ]; + features = [ "with-alloc" "simd" ]; + } + { + name = "zlib-rs"; + packageId = "zlib-rs"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" "rust-allocator" ]; } ]; features = { + "any_c_zlib" = [ "any_zlib" ]; "any_zlib" = [ "any_impl" ]; "cloudflare-zlib-sys" = [ "dep:cloudflare-zlib-sys" ]; - "cloudflare_zlib" = [ "any_zlib" "cloudflare-zlib-sys" ]; + "cloudflare_zlib" = [ "any_c_zlib" "cloudflare-zlib-sys" "dep:crc32fast" ]; "default" = [ "rust_backend" ]; + "document-features" = [ "dep:document-features" ]; "libz-ng-sys" = [ "dep:libz-ng-sys" ]; - "libz-rs-sys" = [ "dep:libz-rs-sys" ]; "libz-sys" = [ "dep:libz-sys" ]; "miniz-sys" = [ "rust_backend" ]; - "miniz_oxide" = [ "dep:miniz_oxide" ]; + "miniz_oxide" = [ "any_impl" "dep:miniz_oxide" "dep:crc32fast" ]; "rust_backend" = [ "miniz_oxide" "any_impl" ]; - "zlib" = [ "any_zlib" "libz-sys" ]; - "zlib-default" = [ "any_zlib" "libz-sys/default" ]; - "zlib-ng" = [ "any_zlib" "libz-ng-sys" ]; - "zlib-ng-compat" = [ "zlib" "libz-sys/zlib-ng" ]; - "zlib-rs" = [ "any_zlib" "libz-rs-sys" ]; + "zlib" = [ "any_c_zlib" "libz-sys" "dep:crc32fast" ]; + "zlib-default" = [ "any_c_zlib" "libz-sys/default" "dep:crc32fast" ]; + "zlib-ng" = [ "any_c_zlib" "libz-ng-sys" "dep:crc32fast" ]; + "zlib-ng-compat" = [ "zlib" "libz-sys/zlib-ng" "dep:crc32fast" ]; + "zlib-rs" = [ "any_zlib" "dep:zlib-rs" ]; }; - resolvedDefaultFeatures = [ "any_impl" "default" "miniz_oxide" "rust_backend" ]; + resolvedDefaultFeatures = [ "any_impl" "any_zlib" "default" "miniz_oxide" "rust_backend" "zlib-rs" ]; }; "fnv" = rec { crateName = "fnv"; @@ -3498,7 +3485,7 @@ rec { }; resolvedDefaultFeatures = [ "default" "std" ]; }; - "foldhash" = rec { + "foldhash 0.1.5" = rec { crateName = "foldhash"; version = "0.1.5"; edition = "2021"; @@ -3510,11 +3497,23 @@ rec { "default" = [ "std" ]; }; }; + "foldhash 0.2.0" = rec { + crateName = "foldhash"; + version = "0.2.0"; + edition = "2021"; + sha256 = "1nvgylb099s11xpfm1kn2wcsql080nqmnhj1l25bp3r2b35j9kkp"; + authors = [ + "Orson Peters " + ]; + features = { + "default" = [ "std" ]; + }; + }; "form_urlencoded" = rec { crateName = "form_urlencoded"; - version = "1.2.1"; + version = "1.2.2"; edition = "2018"; - sha256 = "0milh8x7nl4f450s3ddhg57a3flcv6yq8hlkyk6fyr3mcb128dp1"; + sha256 = "1kqzb2qn608rxl3dws04zahcklpplkd5r1vpabwga5l50d2v4k6b"; authors = [ "The rust-url developers" ]; @@ -3532,11 +3531,21 @@ rec { }; resolvedDefaultFeatures = [ "alloc" "default" "std" ]; }; + "fs_extra" = rec { + crateName = "fs_extra"; + version = "1.3.0"; + edition = "2018"; + sha256 = "075i25z70j2mz9r7i9p9r521y8xdj81q7skslyb7zhqnnw33fw22"; + authors = [ + "Denis Kurilenko " + ]; + + }; "futures" = rec { crateName = "futures"; - version = "0.3.30"; + version = "0.3.32"; edition = "2018"; - sha256 = "1c04g14bccmprwsvx2j9m2blhwrynq7vhl151lsvcv4gi0b6jp34"; + sha256 = "0b9q86r5ar18v5xjiyqn7sb8sa32xv98qqnfz779gl7ns7lpw54b"; dependencies = [ { name = "futures-channel"; @@ -3586,6 +3595,7 @@ rec { "executor" = [ "std" "futures-executor/std" ]; "futures-executor" = [ "dep:futures-executor" ]; "io-compat" = [ "compat" "futures-util/io-compat" ]; + "spin" = [ "futures-util/spin" ]; "std" = [ "alloc" "futures-core/std" "futures-task/std" "futures-io/std" "futures-sink/std" "futures-util/std" "futures-util/io" "futures-util/channel" ]; "thread-pool" = [ "executor" "futures-executor/thread-pool" ]; "unstable" = [ "futures-core/unstable" "futures-task/unstable" "futures-channel/unstable" "futures-io/unstable" "futures-util/unstable" ]; @@ -3595,9 +3605,9 @@ rec { }; "futures-channel" = rec { crateName = "futures-channel"; - version = "0.3.30"; + version = "0.3.32"; edition = "2018"; - sha256 = "0y6b7xxqdjm9hlcjpakcg41qfl7lihf6gavk8fyqijsxhvbzgj7a"; + sha256 = "07fcyzrmbmh7fh4ainilf1s7gnwvnk07phdq77jkb9fpa2ffifq7"; libName = "futures_channel"; dependencies = [ { @@ -3623,9 +3633,9 @@ rec { }; "futures-core" = rec { crateName = "futures-core"; - version = "0.3.30"; + version = "0.3.32"; edition = "2018"; - sha256 = "07aslayrn3lbggj54kci0ishmd1pr367fp7iks7adia1p05miinz"; + sha256 = "07bbvwjbm5g2i330nyr1kcvjapkmdqzl4r6mqv75ivvjaa0m0d3y"; libName = "futures_core"; features = { "default" = [ "std" ]; @@ -3636,9 +3646,9 @@ rec { }; "futures-executor" = rec { crateName = "futures-executor"; - version = "0.3.30"; + version = "0.3.32"; edition = "2018"; - sha256 = "07dh08gs9vfll2h36kq32q9xd86xm6lyl9xikmmwlkqnmrrgqxm5"; + sha256 = "17aplz3ns74qn7a04qg7qlgsdx5iwwwkd4jvdfra6hl3h4w9rwms"; libName = "futures_executor"; dependencies = [ { @@ -3659,17 +3669,16 @@ rec { ]; features = { "default" = [ "std" ]; - "num_cpus" = [ "dep:num_cpus" ]; "std" = [ "futures-core/std" "futures-task/std" "futures-util/std" ]; - "thread-pool" = [ "std" "num_cpus" ]; + "thread-pool" = [ "std" ]; }; resolvedDefaultFeatures = [ "default" "std" ]; }; "futures-io" = rec { crateName = "futures-io"; - version = "0.3.30"; + version = "0.3.32"; edition = "2018"; - sha256 = "1hgh25isvsr4ybibywhr4dpys8mjnscw4wfxxwca70cn1gi26im4"; + sha256 = "063pf5m6vfmyxj74447x8kx9q8zj6m9daamj4hvf49yrg9fs7jyf"; libName = "futures_io"; features = { "default" = [ "std" ]; @@ -3678,9 +3687,9 @@ rec { }; "futures-macro" = rec { crateName = "futures-macro"; - version = "0.3.30"; + version = "0.3.32"; edition = "2018"; - sha256 = "1b49qh9d402y8nka4q6wvvj0c88qq91wbr192mdn5h54nzs0qxc7"; + sha256 = "0ys4b1lk7s0bsj29pv42bxsaavalch35rprp64s964p40c1bfdg8"; procMacro = true; libName = "futures_macro"; dependencies = [ @@ -3694,7 +3703,7 @@ rec { } { name = "syn"; - packageId = "syn 2.0.87"; + packageId = "syn 2.0.117"; features = [ "full" ]; } ]; @@ -3702,9 +3711,9 @@ rec { }; "futures-sink" = rec { crateName = "futures-sink"; - version = "0.3.30"; + version = "0.3.32"; edition = "2018"; - sha256 = "1dag8xyyaya8n8mh8smx7x6w2dpmafg2din145v973a3hw7f1f4z"; + sha256 = "14q8ml7hn5a6gyy9ri236j28kh0svqmrk4gcg0wh26rkazhm95y3"; libName = "futures_sink"; features = { "default" = [ "std" ]; @@ -3714,9 +3723,9 @@ rec { }; "futures-task" = rec { crateName = "futures-task"; - version = "0.3.30"; + version = "0.3.32"; edition = "2018"; - sha256 = "013h1724454hj8qczp8vvs10qfiqrxr937qsrv6rhii68ahlzn1q"; + sha256 = "14s3vqf8llz3kjza33vn4ixg6kwxp61xrysn716h0cwwsnri2xq3"; libName = "futures_task"; features = { "default" = [ "std" ]; @@ -3741,9 +3750,9 @@ rec { }; "futures-util" = rec { crateName = "futures-util"; - version = "0.3.30"; + version = "0.3.32"; edition = "2018"; - sha256 = "0j0xqhcir1zf2dcbpd421kgw6wvsk0rpxflylcysn1rlp3g02r1x"; + sha256 = "1mn60lw5kh32hz9isinjlpw34zx708fk5q1x0m40n6g6jq9a971q"; libName = "futures_util"; dependencies = [ { @@ -3791,21 +3800,18 @@ rec { name = "pin-project-lite"; packageId = "pin-project-lite"; } - { - name = "pin-utils"; - packageId = "pin-utils"; - } { name = "slab"; packageId = "slab"; optional = true; + usesDefaultFeatures = false; } ]; features = { - "alloc" = [ "futures-core/alloc" "futures-task/alloc" ]; + "alloc" = [ "futures-core/alloc" "futures-task/alloc" "slab" ]; "async-await-macro" = [ "async-await" "futures-macro" ]; "channel" = [ "std" "futures-channel" ]; - "compat" = [ "std" "futures_01" ]; + "compat" = [ "std" "futures_01" "libc" ]; "default" = [ "std" "async-await" "async-await-macro" ]; "futures-channel" = [ "dep:futures-channel" ]; "futures-io" = [ "dep:futures-io" ]; @@ -3813,12 +3819,14 @@ rec { "futures-sink" = [ "dep:futures-sink" ]; "futures_01" = [ "dep:futures_01" ]; "io" = [ "std" "futures-io" "memchr" ]; - "io-compat" = [ "io" "compat" "tokio-io" ]; + "io-compat" = [ "io" "compat" "tokio-io" "libc" ]; + "libc" = [ "dep:libc" ]; "memchr" = [ "dep:memchr" ]; "portable-atomic" = [ "futures-core/portable-atomic" ]; "sink" = [ "futures-sink" ]; "slab" = [ "dep:slab" ]; - "std" = [ "alloc" "futures-core/std" "futures-task/std" "slab" ]; + "spin" = [ "dep:spin" ]; + "std" = [ "alloc" "futures-core/std" "futures-task/std" "slab/std" ]; "tokio-io" = [ "dep:tokio-io" ]; "unstable" = [ "futures-core/unstable" "futures-task/unstable" ]; "write-all-vectored" = [ "io" ]; @@ -3853,11 +3861,11 @@ rec { }; resolvedDefaultFeatures = [ "more_lengths" ]; }; - "getrandom 0.2.15" = rec { + "getrandom 0.2.17" = rec { crateName = "getrandom"; - version = "0.2.15"; + version = "0.2.17"; edition = "2018"; - sha256 = "1mzlnrb3dgyd1fb84gvw10pyr8wdqdl4ry4sr64i1s8an66pqmn4"; + sha256 = "1l2ac6jfj9xhpjjgmcx6s1x89bbnw9x6j9258yy6xjkzpq0bqapz"; authors = [ "The Rand Project Developers" ]; @@ -3866,6 +3874,12 @@ rec { name = "cfg-if"; packageId = "cfg-if"; } + { + name = "js-sys"; + packageId = "js-sys"; + optional = true; + target = { target, features }: ((("wasm32" == target."arch" or null) || ("wasm64" == target."arch" or null)) && ("unknown" == target."os" or null)); + } { name = "libc"; packageId = "libc"; @@ -3874,10 +3888,17 @@ rec { } { name = "wasi"; - packageId = "wasi 0.11.0+wasi-snapshot-preview1"; + packageId = "wasi"; usesDefaultFeatures = false; target = { target, features }: ("wasi" == target."os" or null); } + { + name = "wasm-bindgen"; + packageId = "wasm-bindgen"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: ((("wasm32" == target."arch" or null) || ("wasm64" == target."arch" or null)) && ("unknown" == target."os" or null)); + } ]; features = { "compiler_builtins" = [ "dep:compiler_builtins" ]; @@ -3887,13 +3908,13 @@ rec { "rustc-dep-of-std" = [ "compiler_builtins" "core" "libc/rustc-dep-of-std" "wasi/rustc-dep-of-std" ]; "wasm-bindgen" = [ "dep:wasm-bindgen" ]; }; - resolvedDefaultFeatures = [ "std" ]; + resolvedDefaultFeatures = [ "js" "js-sys" "std" "wasm-bindgen" ]; }; - "getrandom 0.3.2" = rec { + "getrandom 0.3.4" = rec { crateName = "getrandom"; - version = "0.3.2"; + version = "0.3.4"; edition = "2021"; - sha256 = "1w2mlixa1989v7czr68iji7h67yra2pbg3s480wsqjza1r2sizkk"; + sha256 = "1zbpvpicry9lrbjmkd4msgj3ihff1q92i334chk7pzf46xffz7c9"; authors = [ "The Rand Project Developers" ]; @@ -3902,6 +3923,13 @@ rec { name = "cfg-if"; packageId = "cfg-if"; } + { + name = "js-sys"; + packageId = "js-sys"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (("wasm32" == target."arch" or null) && (("unknown" == target."os" or null) || ("none" == target."os" or null)) && (builtins.elem "atomics" targetFeatures)); + } { name = "libc"; packageId = "libc"; @@ -3952,88 +3980,168 @@ rec { } { name = "r-efi"; - packageId = "r-efi"; + packageId = "r-efi 5.3.0"; usesDefaultFeatures = false; target = { target, features }: (("uefi" == target."os" or null) && ("efi_rng" == target."getrandom_backend" or null)); } { - name = "wasi"; - packageId = "wasi 0.14.2+wasi-0.2.4"; + name = "wasip2"; + packageId = "wasip2"; usesDefaultFeatures = false; target = { target, features }: (("wasm32" == target."arch" or null) && ("wasi" == target."os" or null) && ("p2" == target."env" or null)); } + { + name = "wasm-bindgen"; + packageId = "wasm-bindgen"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (("wasm32" == target."arch" or null) && (("unknown" == target."os" or null) || ("none" == target."os" or null))); + } ]; features = { - "rustc-dep-of-std" = [ "dep:compiler_builtins" "dep:core" ]; "wasm_js" = [ "dep:wasm-bindgen" "dep:js-sys" ]; }; - resolvedDefaultFeatures = [ "std" ]; - }; - "gimli" = rec { - crateName = "gimli"; - version = "0.29.0"; - edition = "2018"; - sha256 = "1zgzprnjaawmg6zyic4f2q2hc39kdhn116qnkqpgvsasgc3x9v20"; - features = { - "default" = [ "read-all" "write" ]; - "endian-reader" = [ "read" "dep:stable_deref_trait" ]; - "fallible-iterator" = [ "dep:fallible-iterator" ]; - "read" = [ "read-core" ]; - "read-all" = [ "read" "std" "fallible-iterator" "endian-reader" ]; - "rustc-dep-of-std" = [ "dep:core" "dep:alloc" "dep:compiler_builtins" ]; - "std" = [ "fallible-iterator?/std" "stable_deref_trait?/std" ]; - "write" = [ "dep:indexmap" ]; - }; - resolvedDefaultFeatures = [ "read" "read-core" ]; - }; - "glob" = rec { - crateName = "glob"; - version = "0.3.1"; - edition = "2015"; - sha256 = "16zca52nglanv23q5qrwd5jinw3d3as5ylya6y1pbx47vkxvrynj"; - authors = [ - "The Rust Project Developers" - ]; - + resolvedDefaultFeatures = [ "std" "wasm_js" ]; }; - "globset" = rec { - crateName = "globset"; - version = "0.4.14"; - edition = "2021"; - sha256 = "1qab0c1drpybgm4nc92lf8b46x0ap44c9y4k23rndgc5bfdkpnjp"; + "getrandom 0.4.2" = rec { + crateName = "getrandom"; + version = "0.4.2"; + edition = "2024"; + sha256 = "0mb5833hf9pvn9dhvxjgfg5dx0m77g8wavvjdpvpnkp9fil1xr8d"; authors = [ - "Andrew Gallant " + "The Rand Project Developers" ]; dependencies = [ { - name = "aho-corasick"; - packageId = "aho-corasick"; + name = "cfg-if"; + packageId = "cfg-if"; } { - name = "bstr"; - packageId = "bstr"; + name = "libc"; + packageId = "libc"; usesDefaultFeatures = false; - features = [ "std" ]; + target = { target, features }: ((("linux" == target."os" or null) || ("android" == target."os" or null)) && (!((("linux" == target."os" or null) && ("" == target."env" or null)) || ("custom" == target."getrandom_backend" or null) || ("linux_raw" == target."getrandom_backend" or null) || ("rdrand" == target."getrandom_backend" or null) || ("rndr" == target."getrandom_backend" or null)))); } { - name = "log"; - packageId = "log"; + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; + target = { target, features }: (("dragonfly" == target."os" or null) || ("freebsd" == target."os" or null) || ("hurd" == target."os" or null) || ("illumos" == target."os" or null) || ("cygwin" == target."os" or null) || (("horizon" == target."os" or null) && ("arm" == target."arch" or null))); + } + { + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; + target = { target, features }: (("haiku" == target."os" or null) || ("redox" == target."os" or null) || ("nto" == target."os" or null) || ("aix" == target."os" or null)); + } + { + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; + target = { target, features }: (("ios" == target."os" or null) || ("visionos" == target."os" or null) || ("watchos" == target."os" or null) || ("tvos" == target."os" or null)); + } + { + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; + target = { target, features }: (("macos" == target."os" or null) || ("openbsd" == target."os" or null) || ("vita" == target."os" or null) || ("emscripten" == target."os" or null)); + } + { + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; + target = { target, features }: ("netbsd" == target."os" or null); + } + { + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; + target = { target, features }: ("solaris" == target."os" or null); + } + { + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; + target = { target, features }: ("vxworks" == target."os" or null); + } + { + name = "r-efi"; + packageId = "r-efi 6.0.0"; + usesDefaultFeatures = false; + target = { target, features }: (("uefi" == target."os" or null) && ("efi_rng" == target."getrandom_backend" or null)); + } + { + name = "rand_core"; + packageId = "rand_core 0.10.0"; + optional = true; + } + { + name = "wasip2"; + packageId = "wasip2"; + usesDefaultFeatures = false; + target = { target, features }: (("wasm32" == target."arch" or null) && ("wasi" == target."os" or null) && ("p2" == target."env" or null)); + } + { + name = "wasip3"; + packageId = "wasip3"; + target = { target, features }: (("wasm32" == target."arch" or null) && ("wasi" == target."os" or null) && ("p3" == target."env" or null)); + } + ]; + features = { + "sys_rng" = [ "dep:rand_core" ]; + "wasm_js" = [ "dep:wasm-bindgen" "dep:js-sys" ]; + }; + resolvedDefaultFeatures = [ "std" "sys_rng" ]; + }; + "glob" = rec { + crateName = "glob"; + version = "0.3.3"; + edition = "2015"; + sha256 = "106jpd3syfzjfj2k70mwm0v436qbx96wig98m4q8x071yrq35hhc"; + authors = [ + "The Rust Project Developers" + ]; + + }; + "globset" = rec { + crateName = "globset"; + version = "0.4.18"; + edition = "2024"; + sha256 = "1qsp3wg0mgxzmshcgymdlpivqlc1bihm6133pl6dx2x4af8w3psj"; + authors = [ + "Andrew Gallant " + ]; + dependencies = [ + { + name = "aho-corasick"; + packageId = "aho-corasick"; + } + { + name = "bstr"; + packageId = "bstr"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "log"; + packageId = "log"; optional = true; } { name = "regex-automata"; - packageId = "regex-automata 0.4.7"; + packageId = "regex-automata"; usesDefaultFeatures = false; features = [ "std" "perf" "syntax" "meta" "nfa" "hybrid" ]; } { name = "regex-syntax"; - packageId = "regex-syntax 0.8.4"; + packageId = "regex-syntax"; usesDefaultFeatures = false; features = [ "std" ]; } ]; features = { + "arbitrary" = [ "dep:arbitrary" ]; "default" = [ "log" ]; "log" = [ "dep:log" ]; "serde" = [ "dep:serde" ]; @@ -4052,7 +4160,7 @@ rec { dependencies = [ { name = "bitflags"; - packageId = "bitflags 2.6.0"; + packageId = "bitflags"; } { name = "ignore"; @@ -4103,9 +4211,9 @@ rec { }; "h2" = rec { crateName = "h2"; - version = "0.4.6"; + version = "0.4.13"; edition = "2021"; - sha256 = "01cjblya9zxyadvxcmgcv2bk9r9pyc8l8bbchjdg88clk738lkjj"; + sha256 = "0m6w5gg0n0m1m5915bxrv8n4rlazhx5icknkslz719jhh4xdli1g"; authors = [ "Carl Lerche " "Sean McArthur " @@ -4139,7 +4247,7 @@ rec { } { name = "indexmap"; - packageId = "indexmap 2.5.0"; + packageId = "indexmap"; features = [ "std" ]; } { @@ -4173,57 +4281,41 @@ rec { features = { }; }; - "hashbrown 0.12.3" = rec { + "hashbrown 0.15.5" = rec { crateName = "hashbrown"; - version = "0.12.3"; + version = "0.15.5"; edition = "2021"; - sha256 = "1268ka4750pyg2pbgsr43f0289l5zah4arir2k4igx5a8c6fg7la"; + sha256 = "189qaczmjxnikm9db748xyhiw04kpmhm9xj9k9hg0sgx7pjwyacj"; authors = [ "Amanieu d'Antras " ]; - features = { - "ahash" = [ "dep:ahash" ]; - "ahash-compile-time-rng" = [ "ahash/compile-time-rng" ]; - "alloc" = [ "dep:alloc" ]; - "bumpalo" = [ "dep:bumpalo" ]; - "compiler_builtins" = [ "dep:compiler_builtins" ]; - "core" = [ "dep:core" ]; - "default" = [ "ahash" "inline-more" ]; - "rayon" = [ "dep:rayon" ]; - "rustc-dep-of-std" = [ "nightly" "core" "compiler_builtins" "alloc" "rustc-internal-api" ]; - "serde" = [ "dep:serde" ]; - }; - resolvedDefaultFeatures = [ "raw" ]; - }; - "hashbrown 0.14.5" = rec { - crateName = "hashbrown"; - version = "0.14.5"; - edition = "2021"; - sha256 = "1wa1vy1xs3mp11bn3z9dv0jricgr6a2j0zkf1g19yz3vw4il89z5"; - authors = [ - "Amanieu d'Antras " + dependencies = [ + { + name = "foldhash"; + packageId = "foldhash 0.1.5"; + optional = true; + usesDefaultFeatures = false; + } ]; features = { - "ahash" = [ "dep:ahash" ]; "alloc" = [ "dep:alloc" ]; "allocator-api2" = [ "dep:allocator-api2" ]; - "compiler_builtins" = [ "dep:compiler_builtins" ]; "core" = [ "dep:core" ]; - "default" = [ "ahash" "inline-more" "allocator-api2" ]; + "default" = [ "default-hasher" "inline-more" "allocator-api2" "equivalent" "raw-entry" ]; + "default-hasher" = [ "dep:foldhash" ]; "equivalent" = [ "dep:equivalent" ]; - "nightly" = [ "allocator-api2?/nightly" "bumpalo/allocator_api" ]; + "nightly" = [ "bumpalo/allocator_api" ]; "rayon" = [ "dep:rayon" ]; - "rkyv" = [ "dep:rkyv" ]; - "rustc-dep-of-std" = [ "nightly" "core" "compiler_builtins" "alloc" "rustc-internal-api" ]; + "rustc-dep-of-std" = [ "nightly" "core" "alloc" "rustc-internal-api" ]; "serde" = [ "dep:serde" ]; }; - resolvedDefaultFeatures = [ "raw" ]; + resolvedDefaultFeatures = [ "default-hasher" ]; }; - "hashbrown 0.15.2" = rec { + "hashbrown 0.16.1" = rec { crateName = "hashbrown"; - version = "0.15.2"; + version = "0.16.1"; edition = "2021"; - sha256 = "12dj0yfn59p3kh3679ac0w1fagvzf4z2zp87a13gbbqbzw0185dz"; + sha256 = "004i3njw38ji3bzdp9z178ba9x3k0c1pgy8x69pj7yfppv4iq7c4"; authors = [ "Amanieu d'Antras " ]; @@ -4243,7 +4335,7 @@ rec { } { name = "foldhash"; - packageId = "foldhash"; + packageId = "foldhash 0.2.0"; optional = true; usesDefaultFeatures = false; } @@ -4251,30 +4343,29 @@ rec { features = { "alloc" = [ "dep:alloc" ]; "allocator-api2" = [ "dep:allocator-api2" ]; - "compiler_builtins" = [ "dep:compiler_builtins" ]; "core" = [ "dep:core" ]; "default" = [ "default-hasher" "inline-more" "allocator-api2" "equivalent" "raw-entry" ]; "default-hasher" = [ "dep:foldhash" ]; "equivalent" = [ "dep:equivalent" ]; - "nightly" = [ "allocator-api2?/nightly" "bumpalo/allocator_api" ]; + "nightly" = [ "foldhash?/nightly" "bumpalo/allocator_api" ]; "rayon" = [ "dep:rayon" ]; - "rustc-dep-of-std" = [ "nightly" "core" "compiler_builtins" "alloc" "rustc-internal-api" "raw-entry" ]; - "serde" = [ "dep:serde" ]; + "rustc-dep-of-std" = [ "nightly" "core" "alloc" "rustc-internal-api" ]; + "serde" = [ "dep:serde_core" "dep:serde" ]; }; resolvedDefaultFeatures = [ "allocator-api2" "default" "default-hasher" "equivalent" "inline-more" "raw-entry" ]; }; "headers" = rec { crateName = "headers"; - version = "0.4.0"; - edition = "2015"; - sha256 = "1abari69kjl2yv2dg06g2x17qgd1a20xp7aqmmg2vfhcppk0c89j"; + version = "0.4.1"; + edition = "2018"; + sha256 = "1sr4zygaq1b2f0k7b5l8vx5vp05wvd82w7vpavgvr52xvdd4scdk"; authors = [ "Sean McArthur " ]; dependencies = [ { name = "base64"; - packageId = "base64 0.21.7"; + packageId = "base64"; } { name = "bytes"; @@ -4349,52 +4440,17 @@ rec { } { name = "snafu"; - packageId = "snafu 0.8.4"; + packageId = "snafu 0.9.0"; features = [ "futures" ]; } ]; - }; - "hermit-abi" = rec { - crateName = "hermit-abi"; - version = "0.3.9"; - edition = "2021"; - sha256 = "092hxjbjnq5fmz66grd9plxd0sh6ssg5fhgwwwqbrzgzkjwdycfj"; - libName = "hermit_abi"; - authors = [ - "Stefan Lankes" - ]; - features = { - "alloc" = [ "dep:alloc" ]; - "compiler_builtins" = [ "dep:compiler_builtins" ]; - "core" = [ "dep:core" ]; - "rustc-dep-of-std" = [ "core" "alloc" "compiler_builtins/rustc-dep-of-std" ]; - }; - resolvedDefaultFeatures = [ "default" ]; - }; - "home" = rec { - crateName = "home"; - version = "0.5.9"; - edition = "2021"; - sha256 = "19grxyg35rqfd802pcc9ys1q3lafzlcjcv2pl2s5q8xpyr5kblg3"; - authors = [ - "Brian Anderson " - ]; - dependencies = [ - { - name = "windows-sys"; - packageId = "windows-sys 0.52.0"; - target = { target, features }: (target."windows" or false); - features = [ "Win32_Foundation" "Win32_UI_Shell" "Win32_System_Com" ]; - } - ]; - }; "hostname" = rec { crateName = "hostname"; - version = "0.4.1"; + version = "0.4.2"; edition = "2021"; - sha256 = "0rbxryl68bwv8hkjdjd8f37kdb10fncgsqrqksv64qy7s4y20vx5"; + sha256 = "1g8cfg0a1v8y5a0zkncbns8hh24amjgskl39cc583wxfawsslyk1"; dependencies = [ { name = "cfg-if"; @@ -4417,9 +4473,9 @@ rec { }; "http" = rec { crateName = "http"; - version = "1.1.0"; - edition = "2018"; - sha256 = "0n426lmcxas6h75c2cp25m933pswlrfjz10v91vc62vib2sdvf91"; + version = "1.4.0"; + edition = "2021"; + sha256 = "06iind4cwsj1d6q8c2xgq8i2wka4ps74kmws24gsi1bzdlw2mfp3"; authors = [ "Alex Crichton " "Carl Lerche " @@ -4430,10 +4486,6 @@ rec { name = "bytes"; packageId = "bytes"; } - { - name = "fnv"; - packageId = "fnv"; - } { name = "itoa"; packageId = "itoa"; @@ -4469,9 +4521,9 @@ rec { }; "http-body-util" = rec { crateName = "http-body-util"; - version = "0.1.2"; + version = "0.1.3"; edition = "2018"; - sha256 = "0kslwazg4400qnc2azkrgqqci0fppv12waicnsy5d8hncvbjjd3r"; + sha256 = "0jm6jv4gxsnlsi1kzdyffjrj8cfr3zninnxpw73mvkxy4qzdj8dh"; libName = "http_body_util"; authors = [ "Carl Lerche " @@ -4484,8 +4536,8 @@ rec { packageId = "bytes"; } { - name = "futures-util"; - packageId = "futures-util"; + name = "futures-core"; + packageId = "futures-core"; usesDefaultFeatures = false; } { @@ -4501,13 +4553,17 @@ rec { packageId = "pin-project-lite"; } ]; - + features = { + "channel" = [ "dep:tokio" ]; + "full" = [ "channel" ]; + }; + resolvedDefaultFeatures = [ "default" ]; }; "httparse" = rec { crateName = "httparse"; - version = "1.9.4"; + version = "1.10.1"; edition = "2018"; - sha256 = "1nc2s1pziq5ncl39xm7ybdhpnw5xsm505smqirr0py2v2550pk0g"; + sha256 = "11ycd554bw2dkgw0q61xsa7a4jn1wb1xbfacmf3dbwsikvkkvgvd"; authors = [ "Sean McArthur " ]; @@ -4545,13 +4601,18 @@ rec { }; "hyper" = rec { crateName = "hyper"; - version = "1.6.0"; + version = "1.9.0"; edition = "2021"; - sha256 = "103ggny2k31z0iq2gzwk2vbx601wx6xkpjpxn40hr3p3b0b5fayc"; + sha256 = "1jmwbwqcaficskg76kq402gbymbnh2z4v99xwq3l5aa6n8bg16b2"; authors = [ "Sean McArthur " ]; dependencies = [ + { + name = "atomic-waker"; + packageId = "atomic-waker"; + optional = true; + } { name = "bytes"; packageId = "bytes"; @@ -4562,10 +4623,9 @@ rec { optional = true; } { - name = "futures-util"; - packageId = "futures-util"; + name = "futures-core"; + packageId = "futures-core"; optional = true; - usesDefaultFeatures = false; } { name = "h2"; @@ -4623,12 +4683,6 @@ rec { packageId = "futures-channel"; features = [ "sink" ]; } - { - name = "futures-util"; - packageId = "futures-util"; - usesDefaultFeatures = false; - features = [ "alloc" "sink" ]; - } { name = "pin-project-lite"; packageId = "pin-project-lite"; @@ -4641,38 +4695,22 @@ rec { ]; features = { "client" = [ "dep:want" "dep:pin-project-lite" "dep:smallvec" ]; - "ffi" = [ "dep:http-body-util" "futures-util?/alloc" ]; + "ffi" = [ "dep:http-body-util" "dep:futures-util" ]; "full" = [ "client" "http1" "http2" "server" ]; - "http1" = [ "dep:futures-channel" "dep:futures-util" "dep:httparse" "dep:itoa" ]; - "http2" = [ "dep:futures-channel" "dep:futures-util" "dep:h2" ]; + "http1" = [ "dep:atomic-waker" "dep:futures-channel" "dep:futures-core" "dep:httparse" "dep:itoa" ]; + "http2" = [ "dep:futures-channel" "dep:futures-core" "dep:h2" ]; "server" = [ "dep:httpdate" "dep:pin-project-lite" "dep:smallvec" ]; "tracing" = [ "dep:tracing" ]; }; resolvedDefaultFeatures = [ "client" "default" "http1" "http2" "server" ]; }; - "hyper-http-proxy" = rec { - crateName = "hyper-http-proxy"; - version = "1.0.0"; + "hyper-rustls" = rec { + crateName = "hyper-rustls"; + version = "0.27.7"; edition = "2021"; - sha256 = "195r0x68m2mgcc8rawbc0plsm9w4lrqhlm7vqsbdjd6gpbgxn1jx"; - libName = "hyper_http_proxy"; - authors = [ - "MetalBear Tech LTD " - ]; + sha256 = "0n6g8998szbzhnvcs1b7ibn745grxiqmlpg53xz206v826v3xjg3"; + libName = "hyper_rustls"; dependencies = [ - { - name = "bytes"; - packageId = "bytes"; - } - { - name = "futures-util"; - packageId = "futures-util"; - usesDefaultFeatures = false; - } - { - name = "headers"; - packageId = "headers"; - } { name = "http"; packageId = "http"; @@ -4680,37 +4718,41 @@ rec { { name = "hyper"; packageId = "hyper"; - features = [ "client" ]; - } - { - name = "hyper-rustls"; - packageId = "hyper-rustls"; - optional = true; usesDefaultFeatures = false; } { name = "hyper-util"; packageId = "hyper-util"; - features = [ "client" "client-legacy" "tokio" ]; + usesDefaultFeatures = false; + features = [ "client-legacy" "tokio" ]; } { - name = "pin-project-lite"; - packageId = "pin-project-lite"; + name = "log"; + packageId = "log"; + optional = true; + } + { + name = "rustls"; + packageId = "rustls"; + usesDefaultFeatures = false; } { name = "rustls-native-certs"; packageId = "rustls-native-certs"; optional = true; } + { + name = "rustls-pki-types"; + packageId = "rustls-pki-types"; + rename = "pki-types"; + } { name = "tokio"; packageId = "tokio"; - features = [ "io-std" "io-util" ]; } { name = "tokio-rustls"; packageId = "tokio-rustls"; - optional = true; usesDefaultFeatures = false; } { @@ -4719,205 +4761,47 @@ rec { } ]; devDependencies = [ - { - name = "hyper"; - packageId = "hyper"; - features = [ "client" "http1" ]; - } { name = "hyper-util"; packageId = "hyper-util"; - features = [ "client" "client-legacy" "http1" "tokio" ]; + usesDefaultFeatures = false; + features = [ "server-auto" ]; + } + { + name = "rustls"; + packageId = "rustls"; + usesDefaultFeatures = false; + features = [ "tls12" ]; } { name = "tokio"; packageId = "tokio"; - features = [ "full" ]; + features = [ "io-std" "macros" "net" "rt-multi-thread" ]; } ]; features = { - "__rustls" = [ "dep:hyper-rustls" "dep:tokio-rustls" "__tls" ]; - "default" = [ "default-tls" ]; - "default-tls" = [ "rustls-tls-native-roots" ]; - "hyper-tls" = [ "dep:hyper-tls" ]; - "native-tls" = [ "dep:native-tls" "tokio-native-tls" "hyper-tls" "__tls" ]; - "native-tls-vendored" = [ "native-tls" "tokio-native-tls?/vendored" ]; - "rustls-tls-native-roots" = [ "dep:rustls-native-certs" "__rustls" "hyper-rustls/rustls-native-certs" ]; - "rustls-tls-webpki-roots" = [ "dep:webpki-roots" "__rustls" "hyper-rustls/webpki-roots" ]; - "tokio-native-tls" = [ "dep:tokio-native-tls" ]; - }; - resolvedDefaultFeatures = [ "__rustls" "__tls" "rustls-tls-native-roots" ]; - }; - "hyper-rustls" = rec { - crateName = "hyper-rustls"; - version = "0.27.2"; - edition = "2021"; - sha256 = "0ma1wyfnqnkz7zyr7wpply3xfvlijd0rqqhb6ajs28c9jhnbxr2y"; - libName = "hyper_rustls"; - dependencies = [ - { - name = "futures-util"; - packageId = "futures-util"; - usesDefaultFeatures = false; - } - { - name = "http"; - packageId = "http"; - } - { - name = "hyper"; - packageId = "hyper"; - usesDefaultFeatures = false; - } - { - name = "hyper-util"; - packageId = "hyper-util"; - usesDefaultFeatures = false; - features = [ "client-legacy" "tokio" ]; - } - { - name = "log"; - packageId = "log"; - optional = true; - } - { - name = "rustls"; - packageId = "rustls"; - usesDefaultFeatures = false; - } - { - name = "rustls-native-certs"; - packageId = "rustls-native-certs"; - optional = true; - } - { - name = "rustls-pki-types"; - packageId = "rustls-pki-types"; - rename = "pki-types"; - } - { - name = "tokio"; - packageId = "tokio"; - } - { - name = "tokio-rustls"; - packageId = "tokio-rustls"; - usesDefaultFeatures = false; - } - { - name = "tower-service"; - packageId = "tower-service"; - } - { - name = "webpki-roots"; - packageId = "webpki-roots"; - optional = true; - } - ]; - devDependencies = [ - { - name = "hyper-util"; - packageId = "hyper-util"; - usesDefaultFeatures = false; - features = [ "server-auto" ]; - } - { - name = "rustls"; - packageId = "rustls"; - usesDefaultFeatures = false; - features = [ "tls12" ]; - } - { - name = "tokio"; - packageId = "tokio"; - features = [ "io-std" "macros" "net" "rt-multi-thread" ]; - } - ]; - features = { - "aws-lc-rs" = [ "rustls/aws_lc_rs" ]; - "default" = [ "native-tokio" "http1" "tls12" "logging" "aws-lc-rs" ]; - "fips" = [ "aws-lc-rs" "rustls/fips" ]; - "http1" = [ "hyper-util/http1" ]; - "http2" = [ "hyper-util/http2" ]; - "log" = [ "dep:log" ]; - "logging" = [ "log" "tokio-rustls/logging" "rustls/logging" ]; - "native-tokio" = [ "rustls-native-certs" ]; - "ring" = [ "rustls/ring" ]; - "rustls-native-certs" = [ "dep:rustls-native-certs" ]; - "rustls-platform-verifier" = [ "dep:rustls-platform-verifier" ]; - "tls12" = [ "tokio-rustls/tls12" "rustls/tls12" ]; - "webpki-roots" = [ "dep:webpki-roots" ]; - "webpki-tokio" = [ "webpki-roots" ]; - }; - resolvedDefaultFeatures = [ "http1" "log" "logging" "native-tokio" "ring" "rustls-native-certs" "tls12" "webpki-roots" "webpki-tokio" ]; - }; - "hyper-socks2" = rec { - crateName = "hyper-socks2"; - version = "0.9.1"; - edition = "2021"; - sha256 = "1avx6crd1i86bcprqz26zrbsk8844s8jc1845ry7x3r09ihjghji"; - libName = "hyper_socks2"; - authors = [ - "Arsenii Lyashenko " - ]; - dependencies = [ - { - name = "async-socks5"; - packageId = "async-socks5"; - } - { - name = "http"; - packageId = "http"; - } - { - name = "hyper"; - packageId = "hyper"; - } - { - name = "hyper-util"; - packageId = "hyper-util"; - features = [ "tokio" ]; - } - { - name = "thiserror"; - packageId = "thiserror 1.0.63"; - } - { - name = "tokio"; - packageId = "tokio"; - } - { - name = "tower-service"; - packageId = "tower-service"; - } - ]; - devDependencies = [ - { - name = "hyper-util"; - packageId = "hyper-util"; - features = [ "http1" "client" "client-legacy" ]; - } - { - name = "tokio"; - packageId = "tokio"; - features = [ "macros" ]; - } - ]; - features = { - "default" = [ "tls" ]; - "hyper-rustls" = [ "dep:hyper-rustls" ]; - "hyper-tls" = [ "dep:hyper-tls" ]; - "rustls" = [ "hyper-rustls" "rusttls" "rustls-native-certs" ]; - "rustls-native-certs" = [ "dep:rustls-native-certs" ]; - "rusttls" = [ "dep:rusttls" ]; - "tls" = [ "hyper-tls" ]; + "aws-lc-rs" = [ "rustls/aws_lc_rs" ]; + "default" = [ "native-tokio" "http1" "tls12" "logging" "aws-lc-rs" ]; + "fips" = [ "aws-lc-rs" "rustls/fips" ]; + "http1" = [ "hyper-util/http1" ]; + "http2" = [ "hyper-util/http2" ]; + "log" = [ "dep:log" ]; + "logging" = [ "log" "tokio-rustls/logging" "rustls/logging" ]; + "native-tokio" = [ "rustls-native-certs" ]; + "ring" = [ "rustls/ring" ]; + "rustls-native-certs" = [ "dep:rustls-native-certs" ]; + "rustls-platform-verifier" = [ "dep:rustls-platform-verifier" ]; + "tls12" = [ "tokio-rustls/tls12" "rustls/tls12" ]; + "webpki-roots" = [ "dep:webpki-roots" ]; + "webpki-tokio" = [ "webpki-roots" ]; }; + resolvedDefaultFeatures = [ "aws-lc-rs" "http1" "log" "logging" "native-tokio" "ring" "rustls-native-certs" "tls12" ]; }; "hyper-timeout" = rec { crateName = "hyper-timeout"; - version = "0.5.1"; + version = "0.5.2"; edition = "2018"; - sha256 = "14rpyv9zz0ncadn9qgmnjz0hiqk3nav7hglkk1a6yfy8wmhsj0rj"; + sha256 = "1c431l5ckr698248yd6bnsmizjy2m1da02cbpmsnmkpvpxkdb41b"; libName = "hyper_timeout"; authors = [ "Herman J. Radtke III " @@ -4951,6 +4835,11 @@ rec { packageId = "hyper"; features = [ "http1" ]; } + { + name = "hyper-util"; + packageId = "hyper-util"; + features = [ "client-legacy" "http1" "server" "server-graceful" ]; + } { name = "tokio"; packageId = "tokio"; @@ -4961,14 +4850,19 @@ rec { }; "hyper-util" = rec { crateName = "hyper-util"; - version = "0.1.11"; + version = "0.1.20"; edition = "2021"; - sha256 = "1wj3svb1r6yv6kgk5fsz6wwajmngc4zxcw4wxpwlmpbgl8rvqys9"; + sha256 = "186zdc58hmm663csmjvrzgkr6jdh93sfmi3q2pxi57gcaqjpqm4n"; libName = "hyper_util"; authors = [ "Sean McArthur " ]; dependencies = [ + { + name = "base64"; + packageId = "base64"; + optional = true; + } { name = "bytes"; packageId = "bytes"; @@ -4981,6 +4875,7 @@ rec { { name = "futures-util"; packageId = "futures-util"; + optional = true; usesDefaultFeatures = false; } { @@ -4995,11 +4890,21 @@ rec { name = "hyper"; packageId = "hyper"; } + { + name = "ipnet"; + packageId = "ipnet"; + optional = true; + } { name = "libc"; packageId = "libc"; optional = true; } + { + name = "percent-encoding"; + packageId = "percent-encoding"; + optional = true; + } { name = "pin-project-lite"; packageId = "pin-project-lite"; @@ -5034,6 +4939,12 @@ rec { name = "bytes"; packageId = "bytes"; } + { + name = "futures-util"; + packageId = "futures-util"; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } { name = "hyper"; packageId = "hyper"; @@ -5046,25 +4957,28 @@ rec { } ]; features = { - "client" = [ "hyper/client" "dep:tracing" "dep:futures-channel" "dep:tower-service" ]; - "client-legacy" = [ "client" "dep:socket2" "tokio/sync" "dep:libc" ]; - "full" = [ "client" "client-legacy" "server" "server-auto" "server-graceful" "service" "http1" "http2" "tokio" "tracing" ]; + "client" = [ "hyper/client" "tokio/net" "dep:tracing" "dep:futures-channel" "dep:tower-service" ]; + "client-legacy" = [ "client" "dep:socket2" "tokio/sync" "dep:libc" "dep:futures-util" ]; + "client-pool" = [ "client" "dep:futures-util" "dep:tower-layer" ]; + "client-proxy" = [ "client" "dep:base64" "dep:ipnet" "dep:percent-encoding" ]; + "client-proxy-system" = [ "dep:system-configuration" "dep:windows-registry" ]; + "full" = [ "client" "client-legacy" "client-pool" "client-proxy" "client-proxy-system" "server" "server-auto" "server-graceful" "service" "http1" "http2" "tokio" "tracing" ]; "http1" = [ "hyper/http1" ]; "http2" = [ "hyper/http2" ]; "server" = [ "hyper/server" ]; "server-auto" = [ "server" "http1" "http2" ]; - "server-graceful" = [ "server" "tokio/sync" "futures-util/alloc" ]; + "server-graceful" = [ "server" "tokio/sync" ]; "service" = [ "dep:tower-service" ]; - "tokio" = [ "dep:tokio" "tokio/net" "tokio/rt" "tokio/time" ]; + "tokio" = [ "dep:tokio" "tokio/rt" "tokio/time" ]; "tracing" = [ "dep:tracing" ]; }; - resolvedDefaultFeatures = [ "client" "client-legacy" "default" "http1" "http2" "server" "server-auto" "service" "tokio" ]; + resolvedDefaultFeatures = [ "client" "client-legacy" "client-proxy" "default" "http1" "http2" "server" "service" "tokio" "tracing" ]; }; "iana-time-zone" = rec { crateName = "iana-time-zone"; - version = "0.1.60"; - edition = "2018"; - sha256 = "0hdid5xz3jznm04lysjm3vi93h3c523w0hcc3xba47jl3ddbpzz7"; + version = "0.1.65"; + edition = "2021"; + sha256 = "0w64khw5p8s4nzwcf36bwnsmqzf61vpwk9ca1920x82bk6nwj6z3"; libName = "iana_time_zone"; authors = [ "Andrew Straw " @@ -5080,7 +4994,7 @@ rec { { name = "core-foundation-sys"; packageId = "core-foundation-sys"; - target = { target, features }: (("macos" == target."os" or null) || ("ios" == target."os" or null)); + target = { target, features }: ("apple" == target."vendor" or null); } { name = "iana-time-zone-haiku"; @@ -5090,12 +5004,17 @@ rec { { name = "js-sys"; packageId = "js-sys"; - target = { target, features }: ("wasm32" == target."arch" or null); + target = { target, features }: (("wasm32" == target."arch" or null) && ("unknown" == target."os" or null)); + } + { + name = "log"; + packageId = "log"; + target = { target, features }: (("wasm32" == target."arch" or null) && ("unknown" == target."os" or null)); } { name = "wasm-bindgen"; packageId = "wasm-bindgen"; - target = { target, features }: ("wasm32" == target."arch" or null); + target = { target, features }: (("wasm32" == target."arch" or null) && ("unknown" == target."os" or null)); } { name = "windows-core"; @@ -5124,124 +5043,434 @@ rec { ]; }; - "ident_case" = rec { - crateName = "ident_case"; - version = "1.0.1"; - edition = "2015"; - sha256 = "0fac21q6pwns8gh1hz3nbq15j8fi441ncl6w4vlnd1cmc55kiq5r"; - authors = [ - "Ted Driggs " - ]; - - }; - "idna" = rec { - crateName = "idna"; - version = "0.5.0"; - edition = "2018"; - sha256 = "1xhjrcjqq0l5bpzvdgylvpkgk94panxgsirzhjnnqfdgc4a9nkb3"; + "icu_collections" = rec { + crateName = "icu_collections"; + version = "2.2.0"; + edition = "2021"; + sha256 = "070r7xd0pynm0hnc1v2jzlbxka6wf50f81wybf9xg0y82v6x3119"; authors = [ - "The rust-url developers" + "The ICU4X Project Developers" ]; dependencies = [ { - name = "unicode-bidi"; - packageId = "unicode-bidi"; + name = "displaydoc"; + packageId = "displaydoc"; + usesDefaultFeatures = false; + } + { + name = "potential_utf"; + packageId = "potential_utf"; + usesDefaultFeatures = false; + features = [ "zerovec" ]; + } + { + name = "utf8_iter"; + packageId = "utf8_iter"; + usesDefaultFeatures = false; + } + { + name = "yoke"; + packageId = "yoke"; usesDefaultFeatures = false; - features = [ "hardcoded-data" ]; + features = [ "derive" ]; + } + { + name = "zerofrom"; + packageId = "zerofrom"; + usesDefaultFeatures = false; + features = [ "derive" ]; } { - name = "unicode-normalization"; - packageId = "unicode-normalization"; + name = "zerovec"; + packageId = "zerovec"; usesDefaultFeatures = false; + features = [ "derive" "yoke" ]; } ]; features = { - "default" = [ "std" ]; - "std" = [ "alloc" "unicode-bidi/std" "unicode-normalization/std" ]; + "alloc" = [ "serde?/alloc" "zerovec/alloc" ]; + "databake" = [ "dep:databake" "zerovec/databake" ]; + "serde" = [ "dep:serde" "zerovec/serde" "potential_utf/serde" "alloc" ]; }; - resolvedDefaultFeatures = [ "alloc" "default" "std" ]; }; - "ignore" = rec { - crateName = "ignore"; - version = "0.4.22"; + "icu_locale_core" = rec { + crateName = "icu_locale_core"; + version = "2.2.0"; edition = "2021"; - sha256 = "1wcaqpi6djqgi1brghrdyw4d5qgnwzhqrqyn4mar4vp677gi0s5l"; + sha256 = "0a9cmin5w1x3bg941dlmgszn33qgq428k7qiqn5did72ndi9n8cj"; authors = [ - "Andrew Gallant " + "The ICU4X Project Developers" ]; dependencies = [ { - name = "crossbeam-deque"; - packageId = "crossbeam-deque"; - } - { - name = "globset"; - packageId = "globset"; - } - { - name = "log"; - packageId = "log"; + name = "displaydoc"; + packageId = "displaydoc"; + usesDefaultFeatures = false; } { - name = "memchr"; - packageId = "memchr"; + name = "litemap"; + packageId = "litemap"; + usesDefaultFeatures = false; } { - name = "regex-automata"; - packageId = "regex-automata 0.4.7"; + name = "tinystr"; + packageId = "tinystr"; usesDefaultFeatures = false; - features = [ "std" "perf" "syntax" "meta" "nfa" "hybrid" "dfa-onepass" ]; } { - name = "same-file"; - packageId = "same-file"; + name = "writeable"; + packageId = "writeable"; + usesDefaultFeatures = false; } { - name = "walkdir"; - packageId = "walkdir"; + name = "zerovec"; + packageId = "zerovec"; + optional = true; + usesDefaultFeatures = false; } + ]; + devDependencies = [ { - name = "winapi-util"; - packageId = "winapi-util"; - target = { target, features }: (target."windows" or false); + name = "litemap"; + packageId = "litemap"; + usesDefaultFeatures = false; + features = [ "testing" ]; } ]; features = { + "alloc" = [ "litemap/alloc" "tinystr/alloc" "writeable/alloc" "serde?/alloc" ]; + "databake" = [ "dep:databake" "alloc" ]; + "serde" = [ "dep:serde" "tinystr/serde" ]; + "zerovec" = [ "dep:zerovec" "tinystr/zerovec" ]; }; + resolvedDefaultFeatures = [ "zerovec" ]; }; - "indexmap 1.9.3" = rec { - crateName = "indexmap"; - version = "1.9.3"; + "icu_normalizer" = rec { + crateName = "icu_normalizer"; + version = "2.2.0"; edition = "2021"; - sha256 = "16dxmy7yvk51wvnih3a3im6fp5lmx0wx76i03n06wyak6cwhw1xx"; + sha256 = "1d7krxr0xpc4x9635k1100a24nh0nrc59n65j6yk6gbfkplmwvn5"; + authors = [ + "The ICU4X Project Developers" + ]; dependencies = [ { - name = "hashbrown"; - packageId = "hashbrown 0.12.3"; + name = "icu_collections"; + packageId = "icu_collections"; + usesDefaultFeatures = false; + } + { + name = "icu_normalizer_data"; + packageId = "icu_normalizer_data"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "icu_properties"; + packageId = "icu_properties"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "icu_provider"; + packageId = "icu_provider"; + usesDefaultFeatures = false; + } + { + name = "smallvec"; + packageId = "smallvec"; + usesDefaultFeatures = false; + } + { + name = "zerovec"; + packageId = "zerovec"; usesDefaultFeatures = false; - features = [ "raw" ]; } ]; - buildDependencies = [ + features = { + "compiled_data" = [ "dep:icu_normalizer_data" "icu_properties?/compiled_data" "icu_provider/baked" ]; + "datagen" = [ "serde" "dep:databake" "icu_properties" "icu_collections/databake" "zerovec/databake" "icu_properties?/datagen" "icu_provider/export" ]; + "default" = [ "compiled_data" "utf8_iter" "utf16_iter" ]; + "harfbuzz_traits" = [ "dep:harfbuzz-traits" ]; + "icu_properties" = [ "dep:icu_properties" ]; + "serde" = [ "dep:serde" "icu_collections/serde" "zerovec/serde" "icu_properties?/serde" "icu_provider/serde" ]; + "utf16_iter" = [ "dep:utf16_iter" "dep:write16" ]; + "utf8_iter" = [ "dep:utf8_iter" ]; + }; + resolvedDefaultFeatures = [ "compiled_data" ]; + }; + "icu_normalizer_data" = rec { + crateName = "icu_normalizer_data"; + version = "2.2.0"; + edition = "2021"; + sha256 = "0f5d5d5fhhr9937m2z6z38fzh6agf14z24kwlr6lyczafypf0fys"; + authors = [ + "The ICU4X Project Developers" + ]; + + }; + "icu_properties" = rec { + crateName = "icu_properties"; + version = "2.2.0"; + edition = "2021"; + sha256 = "1pkh3s837808cbwxvfagwc28cvwrz2d9h5rl02jwrhm51ryvdqxy"; + authors = [ + "The ICU4X Project Developers" + ]; + dependencies = [ { - name = "autocfg"; - packageId = "autocfg"; + name = "icu_collections"; + packageId = "icu_collections"; + usesDefaultFeatures = false; + } + { + name = "icu_locale_core"; + packageId = "icu_locale_core"; + usesDefaultFeatures = false; + features = [ "zerovec" ]; + } + { + name = "icu_properties_data"; + packageId = "icu_properties_data"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "icu_provider"; + packageId = "icu_provider"; + usesDefaultFeatures = false; + } + { + name = "zerotrie"; + packageId = "zerotrie"; + usesDefaultFeatures = false; + features = [ "yoke" "zerofrom" ]; + } + { + name = "zerovec"; + packageId = "zerovec"; + usesDefaultFeatures = false; + features = [ "derive" "yoke" ]; } ]; features = { - "arbitrary" = [ "dep:arbitrary" ]; - "quickcheck" = [ "dep:quickcheck" ]; + "alloc" = [ "zerovec/alloc" "icu_collections/alloc" "serde?/alloc" ]; + "compiled_data" = [ "dep:icu_properties_data" "icu_provider/baked" ]; + "datagen" = [ "serde" "dep:databake" "zerovec/databake" "icu_collections/databake" "icu_locale_core/databake" "zerotrie/databake" "icu_provider/export" ]; + "default" = [ "compiled_data" ]; + "harfbuzz_traits" = [ "dep:harfbuzz-traits" ]; + "serde" = [ "dep:serde" "icu_locale_core/serde" "zerovec/serde" "icu_collections/serde" "icu_provider/serde" "zerotrie/serde" ]; + "unicode_bidi" = [ "dep:unicode-bidi" ]; + }; + resolvedDefaultFeatures = [ "compiled_data" ]; + }; + "icu_properties_data" = rec { + crateName = "icu_properties_data"; + version = "2.2.0"; + edition = "2021"; + sha256 = "052awny0qwkbcbpd5jg2cd7vl5ry26pq4hz1nfsgf10c3qhbnawf"; + authors = [ + "The ICU4X Project Developers" + ]; + + }; + "icu_provider" = rec { + crateName = "icu_provider"; + version = "2.2.0"; + edition = "2021"; + sha256 = "08dl8pxbwr8zsz4c5vphqb7xw0hykkznwi4rw7bk6pwb3krlr70k"; + authors = [ + "The ICU4X Project Developers" + ]; + dependencies = [ + { + name = "displaydoc"; + packageId = "displaydoc"; + usesDefaultFeatures = false; + } + { + name = "icu_locale_core"; + packageId = "icu_locale_core"; + usesDefaultFeatures = false; + } + { + name = "writeable"; + packageId = "writeable"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "yoke"; + packageId = "yoke"; + usesDefaultFeatures = false; + features = [ "derive" ]; + } + { + name = "zerofrom"; + packageId = "zerofrom"; + usesDefaultFeatures = false; + features = [ "derive" ]; + } + { + name = "zerotrie"; + packageId = "zerotrie"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "zerovec"; + packageId = "zerovec"; + usesDefaultFeatures = false; + features = [ "derive" ]; + } + ]; + features = { + "alloc" = [ "icu_locale_core/alloc" "serde?/alloc" "yoke/alloc" "zerofrom/alloc" "zerovec/alloc" "zerotrie?/alloc" "dep:stable_deref_trait" "dep:writeable" ]; + "baked" = [ "dep:zerotrie" "dep:writeable" ]; + "deserialize_bincode_1" = [ "serde" "dep:bincode" "std" ]; + "deserialize_json" = [ "serde" "dep:serde_json" ]; + "deserialize_postcard_1" = [ "serde" "dep:postcard" ]; + "export" = [ "serde" "dep:erased-serde" "dep:databake" "std" "sync" "dep:postcard" "zerovec/databake" ]; + "logging" = [ "dep:log" ]; + "serde" = [ "dep:serde" "yoke/serde" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "baked" ]; + }; + "id-arena" = rec { + crateName = "id-arena"; + version = "2.3.0"; + edition = "2021"; + sha256 = "0m6rs0jcaj4mg33gkv98d71w3hridghp5c4yr928hplpkgbnfc1x"; + libName = "id_arena"; + authors = [ + "Nick Fitzgerald " + "Aleksey Kladov " + ]; + features = { + "default" = [ "std" ]; "rayon" = [ "dep:rayon" ]; - "rustc-rayon" = [ "dep:rustc-rayon" ]; - "serde" = [ "dep:serde" ]; - "serde-1" = [ "serde" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "ident_case" = rec { + crateName = "ident_case"; + version = "1.0.1"; + edition = "2015"; + sha256 = "0fac21q6pwns8gh1hz3nbq15j8fi441ncl6w4vlnd1cmc55kiq5r"; + authors = [ + "Ted Driggs " + ]; + + }; + "idna" = rec { + crateName = "idna"; + version = "1.1.0"; + edition = "2018"; + sha256 = "1pp4n7hppm480zcx411dsv9wfibai00wbpgnjj4qj0xa7kr7a21v"; + authors = [ + "The rust-url developers" + ]; + dependencies = [ + { + name = "idna_adapter"; + packageId = "idna_adapter"; + } + { + name = "smallvec"; + packageId = "smallvec"; + features = [ "const_generics" ]; + } + { + name = "utf8_iter"; + packageId = "utf8_iter"; + } + ]; + features = { + "compiled_data" = [ "idna_adapter/compiled_data" ]; + "default" = [ "std" "compiled_data" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" "compiled_data" "std" ]; + }; + "idna_adapter" = rec { + crateName = "idna_adapter"; + version = "1.2.1"; + edition = "2021"; + sha256 = "0i0339pxig6mv786nkqcxnwqa87v4m94b2653f6k3aj0jmhfkjis"; + authors = [ + "The rust-url developers" + ]; + dependencies = [ + { + name = "icu_normalizer"; + packageId = "icu_normalizer"; + usesDefaultFeatures = false; + } + { + name = "icu_properties"; + packageId = "icu_properties"; + usesDefaultFeatures = false; + } + ]; + features = { + "compiled_data" = [ "icu_normalizer/compiled_data" "icu_properties/compiled_data" ]; + }; + resolvedDefaultFeatures = [ "compiled_data" ]; + }; + "ignore" = rec { + crateName = "ignore"; + version = "0.4.25"; + edition = "2024"; + sha256 = "0jlv2s4fxqj9fsz6y015j5vbz6i475hj80j9q3sy05d0cniq5myk"; + authors = [ + "Andrew Gallant " + ]; + dependencies = [ + { + name = "crossbeam-deque"; + packageId = "crossbeam-deque"; + } + { + name = "globset"; + packageId = "globset"; + } + { + name = "log"; + packageId = "log"; + } + { + name = "memchr"; + packageId = "memchr"; + } + { + name = "regex-automata"; + packageId = "regex-automata"; + usesDefaultFeatures = false; + features = [ "std" "perf" "syntax" "meta" "nfa" "hybrid" "dfa-onepass" ]; + } + { + name = "same-file"; + packageId = "same-file"; + } + { + name = "walkdir"; + packageId = "walkdir"; + } + { + name = "winapi-util"; + packageId = "winapi-util"; + target = { target, features }: (target."windows" or false); + } + ]; + features = { }; }; - "indexmap 2.5.0" = rec { + "indexmap" = rec { crateName = "indexmap"; - version = "2.5.0"; + version = "2.13.1"; edition = "2021"; - sha256 = "1r87dlvyg04fa9m4m6pkvwsdx54rx471fas66qff40bk5ym01fb8"; + sha256 = "1zs2af09vgdaix8qzhi3bd12zpn5za7pbc6v0cc0q2ryrfws5a25"; dependencies = [ { name = "equivalent"; @@ -5250,15 +5479,29 @@ rec { } { name = "hashbrown"; - packageId = "hashbrown 0.14.5"; + packageId = "hashbrown 0.16.1"; usesDefaultFeatures = false; - features = [ "raw" ]; } { name = "serde"; packageId = "serde"; optional = true; usesDefaultFeatures = false; + target = { target, features }: false; + } + { + name = "serde_core"; + packageId = "serde_core"; + optional = true; + usesDefaultFeatures = false; + } + ]; + devDependencies = [ + { + name = "serde"; + packageId = "serde"; + usesDefaultFeatures = false; + features = [ "derive" ]; } ]; features = { @@ -5267,26 +5510,22 @@ rec { "default" = [ "std" ]; "quickcheck" = [ "dep:quickcheck" ]; "rayon" = [ "dep:rayon" ]; - "rustc-rayon" = [ "dep:rustc-rayon" ]; - "serde" = [ "dep:serde" ]; + "serde" = [ "dep:serde_core" "dep:serde" ]; + "sval" = [ "dep:sval" ]; }; resolvedDefaultFeatures = [ "default" "serde" "std" ]; }; "indicatif" = rec { crateName = "indicatif"; - version = "0.17.11"; + version = "0.18.4"; edition = "2021"; - sha256 = "0db2b2r79r9x8x4lysq1ci9xm13c0xg0sqn3z960yh2bk2430fqq"; + sha256 = "1sz9p1a7i0z666psqzjdpi8xa11icmnpfd4q4dyxm4ihh0ihyir5"; dependencies = [ { name = "console"; packageId = "console"; usesDefaultFeatures = false; - features = [ "ansi-parsing" ]; - } - { - name = "number_prefix"; - packageId = "number_prefix"; + features = [ "ansi-parsing" "std" ]; } { name = "portable-atomic"; @@ -5294,9 +5533,13 @@ rec { } { name = "unicode-width"; - packageId = "unicode-width 0.2.0"; + packageId = "unicode-width"; optional = true; } + { + name = "unit-prefix"; + packageId = "unit-prefix"; + } { name = "vt100"; packageId = "vt100"; @@ -5305,27 +5548,52 @@ rec { { name = "web-time"; packageId = "web-time"; + optional = true; target = { target, features }: ("wasm32" == target."arch" or null); } ]; features = { - "default" = [ "unicode-width" "console/unicode-width" ]; + "default" = [ "unicode-width" "wasmbind" ]; "futures" = [ "dep:futures-core" ]; - "improved_unicode" = [ "unicode-segmentation" "unicode-width" "console/unicode-width" ]; + "improved_unicode" = [ "unicode-segmentation" "unicode-width" ]; "in_memory" = [ "vt100" ]; "rayon" = [ "dep:rayon" ]; "tokio" = [ "dep:tokio" ]; "unicode-segmentation" = [ "dep:unicode-segmentation" ]; - "unicode-width" = [ "dep:unicode-width" ]; + "unicode-width" = [ "dep:unicode-width" "console/unicode-width" ]; "vt100" = [ "dep:vt100" ]; + "wasmbind" = [ "dep:web-time" ]; }; - resolvedDefaultFeatures = [ "default" "in_memory" "unicode-width" "vt100" ]; + resolvedDefaultFeatures = [ "default" "in_memory" "unicode-width" "vt100" "wasmbind" ]; + }; + "indoc" = rec { + crateName = "indoc"; + version = "2.0.7"; + edition = "2021"; + sha256 = "01np60qdq6lvgh8ww2caajn9j4dibx9n58rvzf7cya1jz69mrkvr"; + procMacro = true; + authors = [ + "David Tolnay " + ]; + buildDependencies = [ + { + name = "rustversion"; + packageId = "rustversion"; + } + ]; + devDependencies = [ + { + name = "rustversion"; + packageId = "rustversion"; + } + ]; + }; "inout" = rec { crateName = "inout"; - version = "0.1.3"; + version = "0.1.4"; edition = "2021"; - sha256 = "1xf9gf09nc7y1a261xlfqsf66yn6mb81ahlzzyyd1934sr9hbhd0"; + sha256 = "008xfl1jn9rxsq19phnhbimccf4p64880jmnpg59wqi07kk117w7"; authors = [ "RustCrypto Developers" ]; @@ -5342,33 +5610,68 @@ rec { }; "ipnet" = rec { crateName = "ipnet"; - version = "2.9.0"; + version = "2.12.0"; edition = "2018"; - sha256 = "1hzrcysgwf0knf83ahb3535hrkw63mil88iqc6kjaryfblrqylcg"; + sha256 = "1qpq2y0asyv0jppw7zww9y96fpnpinwap8a0phhqqgyy3znnz3yr"; authors = [ "Kris Price " ]; features = { "default" = [ "std" ]; - "heapless" = [ "dep:heapless" ]; - "json" = [ "serde" "schemars" ]; - "schemars" = [ "dep:schemars" ]; - "ser_as_str" = [ "heapless" ]; + "heapless" = [ "dep:heapless" "serde" ]; + "json" = [ "schemars08" "serde" ]; + "schemars" = [ "schemars08" ]; + "schemars08" = [ "dep:schemars08" ]; + "schemars1" = [ "dep:schemars1" ]; + "ser_as_str" = [ "dep:heapless" ]; "serde" = [ "dep:serde" ]; }; resolvedDefaultFeatures = [ "default" "std" ]; }; - "is_terminal_polyfill" = rec { - crateName = "is_terminal_polyfill"; - version = "1.70.1"; + "iri-string" = rec { + crateName = "iri-string"; + version = "0.7.12"; edition = "2021"; - sha256 = "1kwfgglh91z33kl0w5i338mfpa3zs0hidq5j4ny4rmjwrikchhvr"; - features = { - }; - resolvedDefaultFeatures = [ "default" ]; - }; - "itertools 0.13.0" = rec { - crateName = "itertools"; + sha256 = "082fpx6c5ghvmqpwxaf2b268m47z2ic3prajqbmi1s1qpfj5kri5"; + libName = "iri_string"; + authors = [ + "YOSHIOKA Takuma " + ]; + dependencies = [ + { + name = "memchr"; + packageId = "memchr"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "serde"; + packageId = "serde"; + optional = true; + usesDefaultFeatures = false; + features = [ "derive" ]; + } + ]; + features = { + "alloc" = [ "serde?/alloc" ]; + "default" = [ "std" ]; + "memchr" = [ "dep:memchr" ]; + "serde" = [ "dep:serde" ]; + "std" = [ "alloc" "memchr?/std" "serde?/std" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "std" ]; + }; + "is_terminal_polyfill" = rec { + crateName = "is_terminal_polyfill"; + version = "1.70.2"; + edition = "2021"; + sha256 = "15anlc47sbz0jfs9q8fhwf0h3vs2w4imc030shdnq54sny5i7jx6"; + features = { + }; + resolvedDefaultFeatures = [ "default" ]; + }; + "itertools 0.13.0" = rec { + crateName = "itertools"; version = "0.13.0"; edition = "2018"; sha256 = "11hiy3qzl643zcigknclh446qb9zlg4dpdzfkjaa9q9fqpgyfgj1"; @@ -5410,9 +5713,9 @@ rec { }; "itoa" = rec { crateName = "itoa"; - version = "1.0.11"; - edition = "2018"; - sha256 = "0nv9cqjwzr3q58qz84dcz63ggc54yhf1yqar1m858m1kfd4g3wa9"; + version = "1.0.18"; + edition = "2021"; + sha256 = "10jnd1vpfkb8kj38rlkn2a6k02afvj3qmw054dfpzagrpl6achlg"; authors = [ "David Tolnay " ]; @@ -5444,29 +5747,330 @@ rec { } ]; + }; + "jiff" = rec { + crateName = "jiff"; + version = "0.2.23"; + edition = "2021"; + sha256 = "0nc37n7jvgrzxdkcgc2hsfdf70lfagigjalh4igjrm5njvf4cd8s"; + authors = [ + "Andrew Gallant " + ]; + dependencies = [ + { + name = "jiff-static"; + packageId = "jiff-static"; + optional = true; + } + { + name = "jiff-static"; + packageId = "jiff-static"; + target = { target, features }: false; + } + { + name = "jiff-tzdb-platform"; + packageId = "jiff-tzdb-platform"; + optional = true; + target = { target, features }: ((target."windows" or false) || (builtins.elem "wasm" target."family")); + } + { + name = "log"; + packageId = "log"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "portable-atomic"; + packageId = "portable-atomic"; + usesDefaultFeatures = false; + target = { target, features }: (!("ptr" == target."has_atomic" or null)); + } + { + name = "portable-atomic-util"; + packageId = "portable-atomic-util"; + usesDefaultFeatures = false; + target = { target, features }: (!("ptr" == target."has_atomic" or null)); + } + { + name = "serde_core"; + packageId = "serde_core"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "windows-sys"; + packageId = "windows-sys 0.61.2"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (target."windows" or false); + features = [ "Win32_Foundation" "Win32_System_Time" ]; + } + ]; + devDependencies = [ + { + name = "log"; + packageId = "log"; + } + ]; + features = { + "alloc" = [ "serde_core?/alloc" "portable-atomic-util/alloc" ]; + "default" = [ "std" "tz-system" "tz-fat" "tzdb-bundle-platform" "tzdb-zoneinfo" "tzdb-concatenated" "perf-inline" ]; + "js" = [ "dep:wasm-bindgen" "dep:js-sys" ]; + "logging" = [ "dep:log" ]; + "serde" = [ "dep:serde_core" ]; + "static" = [ "static-tz" "jiff-static?/tzdb" ]; + "static-tz" = [ "dep:jiff-static" ]; + "std" = [ "alloc" "log?/std" "serde_core?/std" ]; + "tz-fat" = [ "jiff-static?/tz-fat" ]; + "tz-system" = [ "std" "dep:windows-sys" ]; + "tzdb-bundle-always" = [ "dep:jiff-tzdb" "alloc" ]; + "tzdb-bundle-platform" = [ "dep:jiff-tzdb-platform" "alloc" ]; + "tzdb-concatenated" = [ "std" ]; + "tzdb-zoneinfo" = [ "std" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "perf-inline" "serde" "std" "tz-fat" "tz-system" "tzdb-bundle-platform" "tzdb-concatenated" "tzdb-zoneinfo" ]; + }; + "jiff-static" = rec { + crateName = "jiff-static"; + version = "0.2.23"; + edition = "2021"; + sha256 = "192ss3cnixvg79cpa76clwkhn4mmz10vnwsbf7yjw8i484s8p31a"; + procMacro = true; + libName = "jiff_static"; + authors = [ + "Andrew Gallant " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.117"; + } + ]; + features = { + "tzdb" = [ "dep:jiff-tzdb" ]; + }; + resolvedDefaultFeatures = [ "default" "tz-fat" ]; + }; + "jiff-tzdb" = rec { + crateName = "jiff-tzdb"; + version = "0.1.6"; + edition = "2021"; + sha256 = "0xihzlnnyk0xnrzpq4xcyjdcmy8xc3ychzb9ayjkh4vgha2fy069"; + libName = "jiff_tzdb"; + libPath = "lib.rs"; + authors = [ + "Andrew Gallant " + ]; + + }; + "jiff-tzdb-platform" = rec { + crateName = "jiff-tzdb-platform"; + version = "0.1.3"; + edition = "2021"; + sha256 = "1s1ja692wyhbv7f60mc0x90h7kn1pv65xkqi2y4imarbmilmlnl7"; + libName = "jiff_tzdb_platform"; + libPath = "lib.rs"; + authors = [ + "Andrew Gallant " + ]; + dependencies = [ + { + name = "jiff-tzdb"; + packageId = "jiff-tzdb"; + } + ]; + + }; + "jni" = rec { + crateName = "jni"; + version = "0.21.1"; + edition = "2018"; + sha256 = "15wczfkr2r45slsljby12ymf2hij8wi5b104ghck9byjnwmsm1qs"; + authors = [ + "Josh Chase " + ]; + dependencies = [ + { + name = "cesu8"; + packageId = "cesu8"; + } + { + name = "cfg-if"; + packageId = "cfg-if"; + } + { + name = "combine"; + packageId = "combine"; + } + { + name = "jni-sys"; + packageId = "jni-sys 0.3.1"; + } + { + name = "log"; + packageId = "log"; + } + { + name = "thiserror"; + packageId = "thiserror 1.0.69"; + } + { + name = "windows-sys"; + packageId = "windows-sys 0.45.0"; + target = { target, features }: (target."windows" or false); + features = [ "Win32_Globalization" ]; + } + ]; + buildDependencies = [ + { + name = "walkdir"; + packageId = "walkdir"; + } + ]; + features = { + "invocation" = [ "java-locator" "libloading" ]; + "java-locator" = [ "dep:java-locator" ]; + "libloading" = [ "dep:libloading" ]; + }; + }; + "jni-sys 0.3.1" = rec { + crateName = "jni-sys"; + version = "0.3.1"; + edition = "2021"; + sha256 = "0n1j8fbz081w1igfrpc79n6vgm7h3ik34nziy5fjgq5nz7hm59j1"; + libName = "jni_sys"; + authors = [ + "Steven Fackler " + ]; + dependencies = [ + { + name = "jni-sys"; + packageId = "jni-sys 0.4.1"; + rename = "jni_sys_04"; + } + ]; + features = { + }; + resolvedDefaultFeatures = [ "default" ]; + }; + "jni-sys 0.4.1" = rec { + crateName = "jni-sys"; + version = "0.4.1"; + edition = "2021"; + sha256 = "1wlahx6f2zhczdjqyn8mk7kshb8x5vsd927sn3lvw41rrf47ldy6"; + libName = "jni_sys"; + authors = [ + "Steven Fackler " + "Robert Bragg " + ]; + dependencies = [ + { + name = "jni-sys-macros"; + packageId = "jni-sys-macros"; + } + ]; + + }; + "jni-sys-macros" = rec { + crateName = "jni-sys-macros"; + version = "0.4.1"; + edition = "2021"; + sha256 = "0r32gbabrak15a7p487765b5wc0jcna2yv88mk6m1zjqyi1bkh1q"; + procMacro = true; + libName = "jni_sys_macros"; + authors = [ + "Robert Bragg " + ]; + dependencies = [ + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.117"; + features = [ "full" ]; + } + ]; + + }; + "jobserver" = rec { + crateName = "jobserver"; + version = "0.1.34"; + edition = "2021"; + sha256 = "0cwx0fllqzdycqn4d6nb277qx5qwnmjdxdl0lxkkwssx77j3vyws"; + authors = [ + "Alex Crichton " + ]; + dependencies = [ + { + name = "getrandom"; + packageId = "getrandom 0.3.4"; + target = { target, features }: (target."windows" or false); + features = [ "std" ]; + } + { + name = "libc"; + packageId = "libc"; + target = { target, features }: (target."unix" or false); + } + ]; + }; "js-sys" = rec { crateName = "js-sys"; - version = "0.3.70"; + version = "0.3.94"; edition = "2021"; - sha256 = "0yp3rz7vrn9mmqdpkds426r1p9vs6i8mkxx8ryqdfadr0s2q0s0q"; + sha256 = "1nb4fr7c78mrrdhmg04nbac1zvd5z3panvqka8sy30nfh3py411f"; libName = "js_sys"; authors = [ "The wasm-bindgen Developers" ]; dependencies = [ + { + name = "cfg-if"; + packageId = "cfg-if"; + optional = true; + } + { + name = "futures-util"; + packageId = "futures-util"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "once_cell"; + packageId = "once_cell"; + usesDefaultFeatures = false; + } { name = "wasm-bindgen"; packageId = "wasm-bindgen"; + usesDefaultFeatures = false; } ]; - + features = { + "default" = [ "std" "unsafe-eval" ]; + "futures" = [ "dep:cfg-if" "dep:futures-util" ]; + "futures-core-03-stream" = [ "futures" "dep:futures-core" ]; + "std" = [ "wasm-bindgen/std" ]; + }; + resolvedDefaultFeatures = [ "default" "futures" "std" "unsafe-eval" ]; }; "json-patch" = rec { crateName = "json-patch"; - version = "4.0.0"; + version = "4.1.0"; edition = "2021"; - sha256 = "1x7sn0j8qxkdm5rrvzhz3kvsl9bb9s24szpa9ijgffd0c7b994hm"; + sha256 = "147yaxmv3i4s0bdna86rgwpmqh2507fn4ighfpplaiqkw8ay807k"; libName = "json_patch"; authors = [ "Ivan Dubrov " @@ -5487,7 +6091,7 @@ rec { } { name = "thiserror"; - packageId = "thiserror 1.0.63"; + packageId = "thiserror 1.0.69"; } ]; devDependencies = [ @@ -5499,15 +6103,16 @@ rec { ]; features = { "default" = [ "diff" ]; + "schemars" = [ "dep:schemars" ]; "utoipa" = [ "dep:utoipa" ]; }; resolvedDefaultFeatures = [ "default" "diff" ]; }; "jsonpath-rust" = rec { crateName = "jsonpath-rust"; - version = "0.7.5"; + version = "1.0.4"; edition = "2021"; - sha256 = "12qjqd6rnr1ywky7k38dhbhgj3f6h6iqrac2kz8d53wziwsaw00c"; + sha256 = "1ymdpqawc3nxrlr6izwpw22h5msa16wqjbkqldijhrxvqhh76fk3"; libName = "jsonpath_rust"; authors = [ "BorisZhguchev " @@ -5531,7 +6136,7 @@ rec { } { name = "thiserror"; - packageId = "thiserror 2.0.12"; + packageId = "thiserror 2.0.18"; } ]; @@ -5574,10 +6179,10 @@ rec { }; "k8s-openapi" = rec { crateName = "k8s-openapi"; - version = "0.24.0"; + version = "0.27.1"; edition = "2021"; - links = "k8s-openapi-0.24.0"; - sha256 = "1m8ahw59g44kp9p4yd4ar0px15m2nyvhc5krbvqvw2ag6a8bjx9c"; + links = "k8s-openapi-0.27.1"; + sha256 = "0pldsxbxd4ckq94p8rkck4s862w33gfns6rclxr5imcx47sjdcsi"; libName = "k8s_openapi"; authors = [ "Arnav Singh " @@ -5585,13 +6190,13 @@ rec { dependencies = [ { name = "base64"; - packageId = "base64 0.22.1"; + packageId = "base64"; usesDefaultFeatures = false; features = [ "alloc" ]; } { - name = "chrono"; - packageId = "chrono"; + name = "jiff"; + packageId = "jiff"; usesDefaultFeatures = false; features = [ "alloc" "serde" ]; } @@ -5606,11 +6211,6 @@ rec { packageId = "serde"; usesDefaultFeatures = false; } - { - name = "serde-value"; - packageId = "serde-value"; - usesDefaultFeatures = false; - } { name = "serde_json"; packageId = "serde_json"; @@ -5619,21 +6219,22 @@ rec { } ]; features = { - "earliest" = [ "v1_28" ]; - "latest" = [ "v1_32" ]; + "default" = [ "std" ]; + "earliest" = [ "v1_31" ]; + "latest" = [ "v1_35" ]; "schemars" = [ "dep:schemars" ]; }; - resolvedDefaultFeatures = [ "schemars" "v1_32" ]; + resolvedDefaultFeatures = [ "schemars" "v1_35" ]; }; "k8s-version" = rec { crateName = "k8s-version"; - version = "0.1.2"; + version = "0.1.3"; edition = "2024"; workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "5fdc47a10de685e4eea49fd0a3f6c3a15a4966c1"; - sha256 = "0li9smdrz7danqz17lfkl0j9zl2i84csgc7d01lxs5qi8jcs9fzw"; + rev = "a4a204b0696a696b9a49c930703037dd124e876d"; + sha256 = "1fgc7i8rhq1nl9m4s69sbfiywy2jx4narpynvm3g54vd5yd4c6m2"; }; libName = "k8s_version"; authors = [ @@ -5651,19 +6252,25 @@ rec { } { name = "snafu"; - packageId = "snafu 0.8.4"; + packageId = "snafu 0.9.0"; } ]; features = { "darling" = [ "dep:darling" ]; + "serde" = [ "dep:serde" ]; }; resolvedDefaultFeatures = [ "darling" ]; }; "kube" = rec { crateName = "kube"; - version = "0.99.0"; - edition = "2021"; - sha256 = "0vnaqmxk40i2jgwxqsk8x75rn1j37p93gv3zx6mlhssk200b4kls"; + version = "3.0.1"; + edition = "2024"; + workspace_member = null; + src = pkgs.fetchgit { + url = "https://github.com/kube-rs/kube-rs"; + rev = "fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5"; + sha256 = "1irm4g79crlxjm3iqrgvx0f6wxdcj394ky84q89pk9i36y2mlw3n"; + }; authors = [ "clux " "Natalie Klestrup Röijezon " @@ -5730,13 +6337,18 @@ rec { "webpki-roots" = [ "kube-client/webpki-roots" "client" ]; "ws" = [ "kube-client/ws" "kube-core/ws" ]; }; - resolvedDefaultFeatures = [ "client" "config" "derive" "http-proxy" "jsonpatch" "kube-client" "kube-derive" "kube-runtime" "ring" "runtime" "rustls-tls" "socks5" "ws" ]; + resolvedDefaultFeatures = [ "admission" "client" "config" "derive" "jsonpatch" "kube-client" "kube-derive" "kube-runtime" "ring" "runtime" "rustls-tls" "ws" ]; }; "kube-client" = rec { crateName = "kube-client"; - version = "0.99.0"; - edition = "2021"; - sha256 = "1wfciml6xcylhlwn72dbiq8vc57cs0a9dzn2bb8j1ps242ayvhkz"; + version = "3.0.1"; + edition = "2024"; + workspace_member = null; + src = pkgs.fetchgit { + url = "https://github.com/kube-rs/kube-rs"; + rev = "fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5"; + sha256 = "1irm4g79crlxjm3iqrgvx0f6wxdcj394ky84q89pk9i36y2mlw3n"; + }; libName = "kube_client"; authors = [ "clux " @@ -5746,7 +6358,7 @@ rec { dependencies = [ { name = "base64"; - packageId = "base64 0.22.1"; + packageId = "base64"; optional = true; } { @@ -5754,12 +6366,6 @@ rec { packageId = "bytes"; optional = true; } - { - name = "chrono"; - packageId = "chrono"; - optional = true; - usesDefaultFeatures = false; - } { name = "either"; packageId = "either"; @@ -5772,11 +6378,6 @@ rec { usesDefaultFeatures = false; features = [ "std" ]; } - { - name = "home"; - packageId = "home"; - optional = true; - } { name = "http"; packageId = "http"; @@ -5797,12 +6398,6 @@ rec { optional = true; features = [ "client" "http1" ]; } - { - name = "hyper-http-proxy"; - packageId = "hyper-http-proxy"; - optional = true; - usesDefaultFeatures = false; - } { name = "hyper-rustls"; packageId = "hyper-rustls"; @@ -5810,12 +6405,6 @@ rec { usesDefaultFeatures = false; features = [ "http1" "logging" "native-tokio" "tls12" ]; } - { - name = "hyper-socks2"; - packageId = "hyper-socks2"; - optional = true; - usesDefaultFeatures = false; - } { name = "hyper-timeout"; packageId = "hyper-timeout"; @@ -5825,7 +6414,14 @@ rec { name = "hyper-util"; packageId = "hyper-util"; optional = true; - features = [ "client" "client-legacy" "http1" "tokio" ]; + features = [ "client" "client-legacy" "http1" "tokio" "tracing" ]; + } + { + name = "jiff"; + packageId = "jiff"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" "serde" ]; } { name = "jsonpath-rust"; @@ -5872,7 +6468,7 @@ rec { } { name = "thiserror"; - packageId = "thiserror 2.0.12"; + packageId = "thiserror 2.0.18"; } { name = "tokio"; @@ -5893,15 +6489,15 @@ rec { } { name = "tower"; - packageId = "tower 0.5.2"; + packageId = "tower"; optional = true; - features = [ "buffer" "filter" "util" ]; + features = [ "buffer" "filter" "util" "retry" ]; } { name = "tower-http"; - packageId = "tower-http 0.6.2"; + packageId = "tower-http"; optional = true; - features = [ "auth" "map-response-body" "trace" ]; + features = [ "auth" "map-response-body" "trace" "util" ]; } { name = "tracing"; @@ -5940,25 +6536,22 @@ rec { "aws-lc-rs" = [ "hyper-rustls?/aws-lc-rs" ]; "base64" = [ "dep:base64" ]; "bytes" = [ "dep:bytes" ]; - "chrono" = [ "dep:chrono" ]; - "client" = [ "config" "__non_core" "hyper" "hyper-util" "http-body" "http-body-util" "tower" "tower-http" "hyper-timeout" "chrono" "jsonpath-rust" "bytes" "futures" "tokio" "tokio-util" "either" ]; - "config" = [ "__non_core" "pem" "home" ]; + "client" = [ "config" "__non_core" "hyper" "hyper-util" "http-body" "http-body-util" "tower" "tower-http" "hyper-timeout" "jiff" "jsonpath-rust" "bytes" "futures" "tokio" "tokio-util" "either" ]; + "config" = [ "__non_core" "pem" ]; "default" = [ "client" "ring" ]; "either" = [ "dep:either" ]; "form_urlencoded" = [ "dep:form_urlencoded" ]; "futures" = [ "dep:futures" ]; "gzip" = [ "client" "tower-http/decompression-gzip" ]; - "home" = [ "dep:home" ]; "http-body" = [ "dep:http-body" ]; "http-body-util" = [ "dep:http-body-util" ]; - "http-proxy" = [ "hyper-http-proxy" ]; + "http-proxy" = [ "hyper-util/client-proxy" ]; "hyper" = [ "dep:hyper" ]; - "hyper-http-proxy" = [ "dep:hyper-http-proxy" ]; "hyper-openssl" = [ "dep:hyper-openssl" ]; "hyper-rustls" = [ "dep:hyper-rustls" ]; - "hyper-socks2" = [ "dep:hyper-socks2" ]; "hyper-timeout" = [ "dep:hyper-timeout" ]; "hyper-util" = [ "dep:hyper-util" ]; + "jiff" = [ "dep:jiff" ]; "jsonpatch" = [ "kube-core/jsonpatch" ]; "jsonpath-rust" = [ "dep:jsonpath-rust" ]; "kubelet-debug" = [ "ws" "kube-core/kubelet-debug" ]; @@ -5969,9 +6562,9 @@ rec { "pem" = [ "dep:pem" ]; "ring" = [ "hyper-rustls?/ring" ]; "rustls" = [ "dep:rustls" ]; - "rustls-tls" = [ "rustls" "hyper-rustls" "hyper-http-proxy?/rustls-tls-native-roots" ]; + "rustls-tls" = [ "rustls" "hyper-rustls" ]; "serde_yaml" = [ "dep:serde_yaml" ]; - "socks5" = [ "hyper-socks2" ]; + "socks5" = [ "hyper-util/client-proxy" ]; "tame-oauth" = [ "dep:tame-oauth" ]; "tokio" = [ "dep:tokio" ]; "tokio-tungstenite" = [ "dep:tokio-tungstenite" ]; @@ -5982,13 +6575,18 @@ rec { "webpki-roots" = [ "hyper-rustls/webpki-roots" ]; "ws" = [ "client" "tokio-tungstenite" "kube-core/ws" "tokio/macros" ]; }; - resolvedDefaultFeatures = [ "__non_core" "base64" "bytes" "chrono" "client" "config" "either" "futures" "home" "http-body" "http-body-util" "http-proxy" "hyper" "hyper-http-proxy" "hyper-rustls" "hyper-socks2" "hyper-timeout" "hyper-util" "jsonpatch" "jsonpath-rust" "pem" "ring" "rustls" "rustls-tls" "serde_yaml" "socks5" "tokio" "tokio-tungstenite" "tokio-util" "tower" "tower-http" "tracing" "ws" ]; + resolvedDefaultFeatures = [ "__non_core" "base64" "bytes" "client" "config" "either" "futures" "http-body" "http-body-util" "hyper" "hyper-rustls" "hyper-timeout" "hyper-util" "jiff" "jsonpatch" "jsonpath-rust" "pem" "ring" "rustls" "rustls-tls" "serde_yaml" "tokio" "tokio-tungstenite" "tokio-util" "tower" "tower-http" "tracing" "ws" ]; }; "kube-core" = rec { crateName = "kube-core"; - version = "0.99.0"; - edition = "2021"; - sha256 = "0xf60y07xkqqqqyl7rvk2r4amcvch61r2j49ssk0rrsqvf9hf3gz"; + version = "3.0.1"; + edition = "2024"; + workspace_member = null; + src = pkgs.fetchgit { + url = "https://github.com/kube-rs/kube-rs"; + rev = "fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5"; + sha256 = "1irm4g79crlxjm3iqrgvx0f6wxdcj394ky84q89pk9i36y2mlw3n"; + }; libName = "kube_core"; authors = [ "clux " @@ -5997,10 +6595,9 @@ rec { ]; dependencies = [ { - name = "chrono"; - packageId = "chrono"; - usesDefaultFeatures = false; - features = [ "now" ]; + name = "derive_more"; + packageId = "derive_more"; + features = [ "from" ]; } { name = "form_urlencoded"; @@ -6010,6 +6607,12 @@ rec { name = "http"; packageId = "http"; } + { + name = "jiff"; + packageId = "jiff"; + usesDefaultFeatures = false; + features = [ "std" ]; + } { name = "json-patch"; packageId = "json-patch"; @@ -6040,7 +6643,7 @@ rec { } { name = "thiserror"; - packageId = "thiserror 2.0.12"; + packageId = "thiserror 2.0.18"; } ]; devDependencies = [ @@ -6059,13 +6662,18 @@ rec { "schema" = [ "schemars" ]; "schemars" = [ "dep:schemars" ]; }; - resolvedDefaultFeatures = [ "json-patch" "jsonpatch" "schema" "schemars" "ws" ]; + resolvedDefaultFeatures = [ "admission" "json-patch" "jsonpatch" "schema" "schemars" "ws" ]; }; "kube-derive" = rec { crateName = "kube-derive"; - version = "0.99.0"; - edition = "2021"; - sha256 = "1jclsj6ah0ijhzpd43ff0ipxs7i2r985ivm6r3m5zjppr66zaqn5"; + version = "3.0.1"; + edition = "2024"; + workspace_member = null; + src = pkgs.fetchgit { + url = "https://github.com/kube-rs/kube-rs"; + rev = "fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5"; + sha256 = "1irm4g79crlxjm3iqrgvx0f6wxdcj394ky84q89pk9i36y2mlw3n"; + }; procMacro = true; libName = "kube_derive"; authors = [ @@ -6097,7 +6705,7 @@ rec { } { name = "syn"; - packageId = "syn 2.0.87"; + packageId = "syn 2.0.117"; features = [ "extra-traits" ]; } ]; @@ -6112,9 +6720,14 @@ rec { }; "kube-runtime" = rec { crateName = "kube-runtime"; - version = "0.99.0"; - edition = "2021"; - sha256 = "1p7z4vl9l1hbqqqjx7qmkyq3rwhxp3nqa3if0qrqdgdlp7x4rww8"; + version = "3.0.1"; + edition = "2024"; + workspace_member = null; + src = pkgs.fetchgit { + url = "https://github.com/kube-rs/kube-rs"; + rev = "fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5"; + sha256 = "1irm4g79crlxjm3iqrgvx0f6wxdcj394ky84q89pk9i36y2mlw3n"; + }; libName = "kube_runtime"; authors = [ "clux " @@ -6134,10 +6747,6 @@ rec { name = "async-stream"; packageId = "async-stream"; } - { - name = "async-trait"; - packageId = "async-trait"; - } { name = "backon"; packageId = "backon"; @@ -6156,7 +6765,7 @@ rec { } { name = "hashbrown"; - packageId = "hashbrown 0.15.2"; + packageId = "hashbrown 0.16.1"; } { name = "hostname"; @@ -6195,7 +6804,7 @@ rec { } { name = "thiserror"; - packageId = "thiserror 2.0.12"; + packageId = "thiserror 2.0.18"; } { name = "tokio"; @@ -6246,11 +6855,23 @@ rec { "spin_no_std" = [ "spin" ]; }; }; + "leb128fmt" = rec { + crateName = "leb128fmt"; + version = "0.1.0"; + edition = "2021"; + sha256 = "1chxm1484a0bly6anh6bd7a99sn355ymlagnwj3yajafnpldkv89"; + authors = [ + "Bryant Luk " + ]; + features = { + "default" = [ "std" ]; + }; + }; "libc" = rec { crateName = "libc"; - version = "0.2.171"; + version = "0.2.184"; edition = "2021"; - sha256 = "1mipla3dy3l59pfa9xy4iw2vdgn8n30dzf4vdnasjflxdqhkg6f1"; + sha256 = "1bz4525m7lwzr63iidh7lp9ppz2c9va1pn6fyjh5wsp1ajjd5xa8"; authors = [ "The Rust Project Developers" ]; @@ -6260,13 +6881,13 @@ rec { "rustc-std-workspace-core" = [ "dep:rustc-std-workspace-core" ]; "use_std" = [ "std" ]; }; - resolvedDefaultFeatures = [ "default" "extra_traits" "std" ]; + resolvedDefaultFeatures = [ "default" "std" ]; }; "libloading" = rec { crateName = "libloading"; - version = "0.8.5"; + version = "0.8.9"; edition = "2015"; - sha256 = "194dvczq4sifwkzllfmw0qkgvilpha7m5xy90gd6i446vcpz4ya9"; + sha256 = "0mfwxwjwi2cf0plxcd685yxzavlslz7xirss3b9cbrzyk4hv1i6p"; authors = [ "Simonas Kazlauskas " ]; @@ -6277,8 +6898,8 @@ rec { target = { target, features }: (target."unix" or false); } { - name = "windows-targets"; - packageId = "windows-targets 0.52.6"; + name = "windows-link"; + packageId = "windows-link"; target = { target, features }: (target."windows" or false); } ]; @@ -6286,94 +6907,102 @@ rec { }; "libm" = rec { crateName = "libm"; - version = "0.2.8"; - edition = "2018"; - sha256 = "0n4hk1rs8pzw8hdfmwn96c4568s93kfxqgcqswr7sajd2diaihjf"; - authors = [ - "Jorge Aparicio " - ]; - features = { - "musl-reference-tests" = [ "rand" ]; - "rand" = [ "dep:rand" ]; - }; - resolvedDefaultFeatures = [ "default" ]; - }; - "libredox 0.0.2" = rec { - crateName = "libredox"; - version = "0.0.2"; + version = "0.2.16"; edition = "2021"; - sha256 = "01v6pb09j7dl2gnbvzz6zmy2k4zyxjjzvl7wacwjjffqsxajry9s"; + sha256 = "10brh0a3qjmbzkr5mf5xqi887nhs5y9layvnki89ykz9xb1wxlmn"; authors = [ - "4lDO2 <4lDO2@protonmail.com>" - ]; - dependencies = [ - { - name = "bitflags"; - packageId = "bitflags 2.6.0"; - } - { - name = "libc"; - packageId = "libc"; - } - { - name = "redox_syscall"; - packageId = "redox_syscall 0.4.1"; - } + "Alex Crichton " + "Amanieu d'Antras " + "Jorge Aparicio " + "Trevor Gross " ]; features = { - "default" = [ "call" ]; - "scheme" = [ "call" ]; + "default" = [ "arch" ]; + "unstable" = [ "unstable-intrinsics" "unstable-float" ]; }; - resolvedDefaultFeatures = [ "call" "default" ]; + resolvedDefaultFeatures = [ "arch" "default" ]; }; - "libredox 0.1.3" = rec { + "libredox" = rec { crateName = "libredox"; - version = "0.1.3"; + version = "0.1.15"; edition = "2021"; - sha256 = "139602gzgs0k91zb7dvgj1qh4ynb8g1lbxsswdim18hcb6ykgzy0"; + sha256 = "022g34brmdis15kji0w9kla6xk6098xvs416ihgnn92isj7z9nvx"; authors = [ "4lDO2 <4lDO2@protonmail.com>" ]; dependencies = [ - { - name = "bitflags"; - packageId = "bitflags 2.6.0"; - } { name = "libc"; packageId = "libc"; + optional = true; } ]; features = { - "default" = [ "call" "std" "redox_syscall" ]; + "base" = [ "libc" ]; + "bitflags" = [ "dep:bitflags" ]; + "call" = [ "base" ]; + "default" = [ "base" "call" "std" "redox_syscall" "protocol" ]; "ioslice" = [ "dep:ioslice" ]; + "libc" = [ "dep:libc" ]; "mkns" = [ "ioslice" ]; + "plain" = [ "dep:plain" ]; + "protocol" = [ "plain" "bitflags" "redox_syscall" ]; "redox_syscall" = [ "dep:redox_syscall" ]; + "std" = [ "base" ]; }; - resolvedDefaultFeatures = [ "call" "std" ]; + resolvedDefaultFeatures = [ "base" "call" "libc" "std" ]; }; "linux-raw-sys" = rec { crateName = "linux-raw-sys"; - version = "0.4.14"; + version = "0.12.1"; edition = "2021"; - sha256 = "12gsjgbhhjwywpqcrizv80vrp7p7grsz5laqq773i33wphjsxcvq"; + sha256 = "0lwasljrqxjjfk9l2j8lyib1babh2qjlnhylqzl01nihw14nk9ij"; libName = "linux_raw_sys"; authors = [ "Dan Gohman " ]; features = { - "compiler_builtins" = [ "dep:compiler_builtins" ]; "core" = [ "dep:core" ]; "default" = [ "std" "general" "errno" ]; - "rustc-dep-of-std" = [ "core" "compiler_builtins" "no_std" ]; + "rustc-dep-of-std" = [ "core" "no_std" ]; + }; + resolvedDefaultFeatures = [ "auxvec" "elf" "errno" "general" "ioctl" "no_std" ]; + }; + "litemap" = rec { + crateName = "litemap"; + version = "0.8.2"; + edition = "2021"; + sha256 = "1w7628bc7wwcxc4n4s5kw0610xk06710nh2hn5kwwk2wa91z9nlj"; + authors = [ + "The ICU4X Project Developers" + ]; + features = { + "databake" = [ "dep:databake" ]; + "default" = [ "alloc" ]; + "serde" = [ "dep:serde_core" "alloc" ]; + "testing" = [ "alloc" ]; + "yoke" = [ "dep:yoke" ]; + }; + }; + "litrs" = rec { + crateName = "litrs"; + version = "1.0.0"; + edition = "2021"; + sha256 = "14p0kzzkavnngvybl88nvfwv031cc2qx4vaxpfwsiifm8grdglqi"; + authors = [ + "Lukas Kalbertodt " + ]; + features = { + "check_suffix" = [ "unicode-xid" ]; + "proc-macro2" = [ "dep:proc-macro2" ]; + "unicode-xid" = [ "dep:unicode-xid" ]; }; - resolvedDefaultFeatures = [ "elf" "errno" "general" "ioctl" "no_std" ]; }; "lock_api" = rec { crateName = "lock_api"; - version = "0.4.12"; + version = "0.4.14"; edition = "2021"; - sha256 = "05qvxa6g27yyva25a5ghsg85apdxkvr77yhkyhapj6r8vnf8pbq7"; + sha256 = "0rg9mhx7vdpajfxvdjmgmlyrn20ligzqvn8ifmaz7dc79gkrjhr2"; authors = [ "Amanieu d'Antras " ]; @@ -6384,12 +7013,6 @@ rec { usesDefaultFeatures = false; } ]; - buildDependencies = [ - { - name = "autocfg"; - packageId = "autocfg"; - } - ]; features = { "default" = [ "atomic_usize" ]; "owning_ref" = [ "dep:owning_ref" ]; @@ -6399,9 +7022,9 @@ rec { }; "log" = rec { crateName = "log"; - version = "0.4.22"; + version = "0.4.29"; edition = "2021"; - sha256 = "093vs0wkm1rgyykk7fjbqp2lwizbixac1w52gv109p5r4jh0p9x7"; + sha256 = "15q8j9c8g5zpkcw0hnd6cf2z7fxqnvsjh3rw5mv5q10r83i34l2y"; authors = [ "The Rust Project Developers" ]; @@ -6413,42 +7036,46 @@ rec { "kv_unstable_serde" = [ "kv_serde" "kv_unstable_std" ]; "kv_unstable_std" = [ "kv_std" "kv_unstable" ]; "kv_unstable_sval" = [ "kv_sval" "kv_unstable" ]; - "serde" = [ "dep:serde" ]; + "serde" = [ "serde_core" ]; + "serde_core" = [ "dep:serde_core" ]; "sval" = [ "dep:sval" ]; "sval_ref" = [ "dep:sval_ref" ]; "value-bag" = [ "dep:value-bag" ]; }; resolvedDefaultFeatures = [ "std" ]; }; + "lru-slab" = rec { + crateName = "lru-slab"; + version = "0.1.2"; + edition = "2021"; + sha256 = "0m2139k466qj3bnpk66bwivgcx3z88qkxvlzk70vd65jq373jaqi"; + libName = "lru_slab"; + authors = [ + "Benjamin Saunders " + ]; + + }; "matchers" = rec { crateName = "matchers"; - version = "0.1.0"; + version = "0.2.0"; edition = "2018"; - sha256 = "0n2mbk7lg2vf962c8xwzdq96yrc9i0p8dbmm4wa1nnkcp1dhfqw2"; + sha256 = "1sasssspdj2vwcwmbq3ra18d3qniapkimfcbr47zmx6750m5llni"; authors = [ "Eliza Weisman " ]; dependencies = [ { name = "regex-automata"; - packageId = "regex-automata 0.1.10"; + packageId = "regex-automata"; + usesDefaultFeatures = false; + features = [ "syntax" "dfa-build" "dfa-search" ]; } ]; - - }; - "matchit 0.7.3" = rec { - crateName = "matchit"; - version = "0.7.3"; - edition = "2021"; - sha256 = "156bgdmmlv4crib31qhgg49nsjk88dxkdqp80ha2pk2rk6n6ax0f"; - authors = [ - "Ibraheem Ahmed " - ]; features = { + "unicode" = [ "regex-automata/unicode" ]; }; - resolvedDefaultFeatures = [ "default" ]; }; - "matchit 0.8.4" = rec { + "matchit" = rec { crateName = "matchit"; version = "0.8.4"; edition = "2021"; @@ -6462,19 +7089,18 @@ rec { }; "memchr" = rec { crateName = "memchr"; - version = "2.7.4"; + version = "2.8.0"; edition = "2021"; - sha256 = "18z32bhxrax0fnjikv475z7ii718hq457qwmaryixfxsl2qrmjkq"; + sha256 = "0y9zzxcqxvdqg6wyag7vc3h0blhdn7hkq164bxyx2vph8zs5ijpq"; authors = [ "Andrew Gallant " "bluss" ]; features = { - "compiler_builtins" = [ "dep:compiler_builtins" ]; "core" = [ "dep:core" ]; "default" = [ "std" ]; "logging" = [ "dep:log" ]; - "rustc-dep-of-std" = [ "core" "compiler_builtins" ]; + "rustc-dep-of-std" = [ "core" ]; "std" = [ "alloc" ]; "use_std" = [ "std" ]; }; @@ -6533,40 +7159,15 @@ rec { }; resolvedDefaultFeatures = [ "std" ]; }; - "miniz_oxide 0.7.4" = rec { - crateName = "miniz_oxide"; - version = "0.7.4"; - edition = "2018"; - sha256 = "024wv14aa75cvik7005s5y2nfc8zfidddbd7g55g7sjgnzfl18mq"; - authors = [ - "Frommi " - "oyvindln " - ]; - dependencies = [ - { - name = "adler"; - packageId = "adler"; - usesDefaultFeatures = false; - } - ]; - features = { - "alloc" = [ "dep:alloc" ]; - "compiler_builtins" = [ "dep:compiler_builtins" ]; - "core" = [ "dep:core" ]; - "default" = [ "with-alloc" ]; - "rustc-dep-of-std" = [ "core" "alloc" "compiler_builtins" "adler/rustc-dep-of-std" ]; - "simd" = [ "simd-adler32" ]; - "simd-adler32" = [ "dep:simd-adler32" ]; - }; - }; - "miniz_oxide 0.8.0" = rec { + "miniz_oxide" = rec { crateName = "miniz_oxide"; - version = "0.8.0"; + version = "0.8.9"; edition = "2021"; - sha256 = "1wadxkg6a6z4lr7kskapj5d8pxlx7cp1ifw4daqnkzqjxych5n72"; + sha256 = "05k3pdg8bjjzayq3rf0qhpirq9k37pxnasfn4arbs17phqn6m9qz"; authors = [ "Frommi " "oyvindln " + "Rich Geldreich richgel99@gmail.com" ]; dependencies = [ { @@ -6574,55 +7175,50 @@ rec { packageId = "adler2"; usesDefaultFeatures = false; } + { + name = "simd-adler32"; + packageId = "simd-adler32"; + optional = true; + usesDefaultFeatures = false; + } ]; features = { "alloc" = [ "dep:alloc" ]; - "compiler_builtins" = [ "dep:compiler_builtins" ]; "core" = [ "dep:core" ]; "default" = [ "with-alloc" ]; - "rustc-dep-of-std" = [ "core" "alloc" "compiler_builtins" "adler2/rustc-dep-of-std" ]; + "rustc-dep-of-std" = [ "core" "alloc" "adler2/rustc-dep-of-std" ]; + "serde" = [ "dep:serde" ]; "simd" = [ "simd-adler32" ]; "simd-adler32" = [ "dep:simd-adler32" ]; }; - resolvedDefaultFeatures = [ "with-alloc" ]; + resolvedDefaultFeatures = [ "simd" "simd-adler32" "with-alloc" ]; }; "mio" = rec { crateName = "mio"; - version = "1.0.2"; + version = "1.2.0"; edition = "2021"; - sha256 = "1v1cnnn44awxbcfm4zlavwgkvbyg7gp5zzjm8mqf1apkrwflvq40"; + sha256 = "1hanrh4fwsfkdqdaqfidz48zz1wdix23zwn3r2x78am0garfbdsh"; authors = [ "Carl Lerche " "Thomas de Zeeuw " "Tokio Contributors " ]; dependencies = [ - { - name = "hermit-abi"; - packageId = "hermit-abi"; - rename = "libc"; - target = { target, features }: ("hermit" == target."os" or null); - } - { - name = "libc"; - packageId = "libc"; - target = { target, features }: ("wasi" == target."os" or null); - } { name = "libc"; packageId = "libc"; - target = { target, features }: (target."unix" or false); + target = { target, features }: ((target."unix" or false) || ("hermit" == target."os" or null) || ("wasi" == target."os" or null)); } { name = "wasi"; - packageId = "wasi 0.11.0+wasi-snapshot-preview1"; + packageId = "wasi"; target = { target, features }: ("wasi" == target."os" or null); } { name = "windows-sys"; - packageId = "windows-sys 0.52.0"; + packageId = "windows-sys 0.61.2"; target = { target, features }: (target."windows" or false); - features = [ "Wdk_Foundation" "Wdk_Storage_FileSystem" "Wdk_System_IO" "Win32_Foundation" "Win32_Networking_WinSock" "Win32_Storage_FileSystem" "Win32_System_IO" "Win32_System_WindowsProgramming" ]; + features = [ "Wdk_Foundation" "Wdk_Storage_FileSystem" "Wdk_System_IO" "Win32_Foundation" "Win32_Networking_WinSock" "Win32_Storage_FileSystem" "Win32_Security" "Win32_System_IO" "Win32_System_WindowsProgramming" ]; } ]; features = { @@ -6660,9 +7256,9 @@ rec { }; "nu-ansi-term" = rec { crateName = "nu-ansi-term"; - version = "0.46.0"; - edition = "2018"; - sha256 = "115sywxh53p190lyw97alm14nc004qj5jm5lvdj608z84rbida3p"; + version = "0.50.3"; + edition = "2021"; + sha256 = "1ra088d885lbd21q1bxgpqdlk1zlndblmarn948jz2a40xsbjmvr"; libName = "nu_ansi_term"; authors = [ "ogham@bsago.me" @@ -6672,26 +7268,25 @@ rec { ]; dependencies = [ { - name = "overload"; - packageId = "overload"; - } - { - name = "winapi"; - packageId = "winapi"; - target = { target, features }: ("windows" == target."os" or null); - features = [ "consoleapi" "errhandlingapi" "fileapi" "handleapi" "processenv" ]; + name = "windows-sys"; + packageId = "windows-sys 0.61.2"; + rename = "windows"; + target = { target, features }: (target."windows" or false); + features = [ "Win32_Foundation" "Win32_System_Console" "Win32_Storage_FileSystem" "Win32_Security" ]; } ]; features = { + "default" = [ "std" ]; "derive_serde_style" = [ "serde" ]; "serde" = [ "dep:serde" ]; }; + resolvedDefaultFeatures = [ "default" "std" ]; }; "num-conv" = rec { crateName = "num-conv"; - version = "0.1.0"; + version = "0.2.1"; edition = "2021"; - sha256 = "1ndiyg82q73783jq18isi71a7mjh56wxrk52rlvyx0mi5z9ibmai"; + sha256 = "0rqrr29brafaa2za352pbmhkk556n7f8z9rrkgmjp1idvdl3fry6"; libName = "num_conv"; authors = [ "Jacob Pratt " @@ -6719,185 +7314,75 @@ rec { }; resolvedDefaultFeatures = [ "std" ]; }; - "num_enum" = rec { - crateName = "num_enum"; - version = "0.7.3"; - edition = "2021"; - sha256 = "0yai0vafhy85mvhknzfqd7lm04hzaln7i5c599rhy8mj831kyqaf"; + "numtoa" = rec { + crateName = "numtoa"; + version = "0.2.4"; + edition = "2015"; + sha256 = "03yhkhjb3d1zx22m3pgcbpk8baj0zzvaxqc25c584sdq77jw98ka"; authors = [ - "Daniel Wagner-Hall " - "Daniel Henry-Mantilla " - "Vincent Esche " + "Michael Aaron Murphy " ]; - dependencies = [ - { - name = "num_enum_derive"; - packageId = "num_enum_derive"; - usesDefaultFeatures = false; - } + + }; + "once_cell" = rec { + crateName = "once_cell"; + version = "1.21.4"; + edition = "2021"; + sha256 = "0l1v676wf71kjg2khch4dphwh1jp3291ffiymr2mvy1kxd5kwz4z"; + authors = [ + "Aleksey Kladov " ]; features = { - "complex-expressions" = [ "num_enum_derive/complex-expressions" ]; + "alloc" = [ "race" ]; + "atomic-polyfill" = [ "critical-section" ]; + "critical-section" = [ "dep:critical-section" "portable-atomic" ]; "default" = [ "std" ]; - "std" = [ "num_enum_derive/std" ]; + "parking_lot" = [ "dep:parking_lot_core" ]; + "portable-atomic" = [ "dep:portable-atomic" ]; + "std" = [ "alloc" ]; }; - resolvedDefaultFeatures = [ "default" "std" ]; + resolvedDefaultFeatures = [ "alloc" "default" "race" "std" ]; }; - "num_enum_derive" = rec { - crateName = "num_enum_derive"; - version = "0.7.3"; + "once_cell_polyfill" = rec { + crateName = "once_cell_polyfill"; + version = "1.70.2"; edition = "2021"; - sha256 = "0mksna1jj87ydh146gn6jcqkvvs920c3dgh0p4f3xk184kpl865g"; - procMacro = true; + sha256 = "1zmla628f0sk3fhjdjqzgxhalr2xrfna958s632z65bjsfv8ljrq"; + features = { + }; + resolvedDefaultFeatures = [ "default" ]; + }; + "openssl-probe" = rec { + crateName = "openssl-probe"; + version = "0.2.1"; + edition = "2021"; + sha256 = "1gpwpb7smfhkscwvbri8xzbab39wcnby1jgz1s49vf1aqgsdx1vw"; + libName = "openssl_probe"; authors = [ - "Daniel Wagner-Hall " - "Daniel Henry-Mantilla " - "Vincent Esche " + "Alex Crichton " ]; + + }; + "opentelemetry" = rec { + crateName = "opentelemetry"; + version = "0.31.0"; + edition = "2021"; + sha256 = "18629xsj4rsyiby9aj511q6wcw6s9m09gx3ymw1yjcvix1mcsjxq"; dependencies = [ { - name = "proc-macro-crate"; - packageId = "proc-macro-crate"; + name = "futures-core"; + packageId = "futures-core"; optional = true; } { - name = "proc-macro2"; - packageId = "proc-macro2"; + name = "futures-sink"; + packageId = "futures-sink"; + optional = true; } { - name = "quote"; - packageId = "quote"; - } - { - name = "syn"; - packageId = "syn 2.0.87"; - features = [ "parsing" ]; - } - ]; - devDependencies = [ - { - name = "syn"; - packageId = "syn 2.0.87"; - features = [ "extra-traits" "parsing" ]; - } - ]; - features = { - "complex-expressions" = [ "syn/full" ]; - "default" = [ "std" ]; - "proc-macro-crate" = [ "dep:proc-macro-crate" ]; - "std" = [ "proc-macro-crate" ]; - }; - resolvedDefaultFeatures = [ "proc-macro-crate" "std" ]; - }; - "number_prefix" = rec { - crateName = "number_prefix"; - version = "0.4.0"; - edition = "2015"; - sha256 = "1wvh13wvlajqxkb1filsfzbrnq0vrmrw298v2j3sy82z1rm282w3"; - authors = [ - "Benjamin Sago " - ]; - features = { - "default" = [ "std" ]; - }; - resolvedDefaultFeatures = [ "default" "std" ]; - }; - "numtoa" = rec { - crateName = "numtoa"; - version = "0.1.0"; - edition = "2015"; - sha256 = "1vs9rhggqbql1p26x8nkha1j06wawwgb2jp5fs88b5gi7prvvy5q"; - authors = [ - "Michael Aaron Murphy " - ]; - features = { - }; - resolvedDefaultFeatures = [ "std" ]; - }; - "object" = rec { - crateName = "object"; - version = "0.36.4"; - edition = "2018"; - sha256 = "02h7k38dwi8rndc3y81n6yjxijbss99p2jm9c0b6ak5c45c1lkq8"; - dependencies = [ - { - name = "memchr"; - packageId = "memchr"; - usesDefaultFeatures = false; - } - ]; - features = { - "all" = [ "read" "write" "build" "std" "compression" "wasm" ]; - "alloc" = [ "dep:alloc" ]; - "build" = [ "build_core" "write_std" "elf" ]; - "build_core" = [ "read_core" "write_core" ]; - "compiler_builtins" = [ "dep:compiler_builtins" ]; - "compression" = [ "dep:flate2" "dep:ruzstd" "std" ]; - "core" = [ "dep:core" ]; - "default" = [ "read" "compression" ]; - "doc" = [ "read_core" "write_std" "build_core" "std" "compression" "archive" "coff" "elf" "macho" "pe" "wasm" "xcoff" ]; - "pe" = [ "coff" ]; - "read" = [ "read_core" "archive" "coff" "elf" "macho" "pe" "xcoff" "unaligned" ]; - "rustc-dep-of-std" = [ "core" "compiler_builtins" "alloc" "memchr/rustc-dep-of-std" ]; - "std" = [ "memchr/std" ]; - "unstable-all" = [ "all" "unstable" ]; - "wasm" = [ "dep:wasmparser" ]; - "write" = [ "write_std" "coff" "elf" "macho" "pe" "xcoff" ]; - "write_core" = [ "dep:crc32fast" "dep:indexmap" "dep:hashbrown" ]; - "write_std" = [ "write_core" "std" "indexmap?/std" "crc32fast?/std" ]; - }; - resolvedDefaultFeatures = [ "archive" "coff" "elf" "macho" "pe" "read_core" "unaligned" "xcoff" ]; - }; - "once_cell" = rec { - crateName = "once_cell"; - version = "1.19.0"; - edition = "2021"; - sha256 = "14kvw7px5z96dk4dwdm1r9cqhhy2cyj1l5n5b29mynbb8yr15nrz"; - authors = [ - "Aleksey Kladov " - ]; - features = { - "alloc" = [ "race" ]; - "atomic-polyfill" = [ "critical-section" ]; - "critical-section" = [ "dep:critical-section" "portable-atomic" ]; - "default" = [ "std" ]; - "parking_lot" = [ "dep:parking_lot_core" ]; - "portable-atomic" = [ "dep:portable-atomic" ]; - "std" = [ "alloc" ]; - }; - resolvedDefaultFeatures = [ "alloc" "default" "race" "std" ]; - }; - "openssl-probe" = rec { - crateName = "openssl-probe"; - version = "0.1.5"; - edition = "2015"; - sha256 = "1kq18qm48rvkwgcggfkqq6pm948190czqc94d6bm2sir5hq1l0gz"; - libName = "openssl_probe"; - authors = [ - "Alex Crichton " - ]; - - }; - "opentelemetry" = rec { - crateName = "opentelemetry"; - version = "0.28.0"; - edition = "2021"; - sha256 = "09k43sgaarw3zx5j434ngq1canpcjibsbxaqqa8dyp0acxxncvi3"; - dependencies = [ - { - name = "futures-core"; - packageId = "futures-core"; - optional = true; - } - { - name = "futures-sink"; - packageId = "futures-sink"; - optional = true; - } - { - name = "js-sys"; - packageId = "js-sys"; - target = { target, features }: (("wasm32" == target."arch" or null) && (!("wasi" == target."os" or null))); + name = "js-sys"; + packageId = "js-sys"; + target = { target, features }: (("wasm32" == target."arch" or null) && (!("wasi" == target."os" or null))); } { name = "pin-project-lite"; @@ -6906,7 +7391,7 @@ rec { } { name = "thiserror"; - packageId = "thiserror 2.0.12"; + packageId = "thiserror 2.0.18"; optional = true; usesDefaultFeatures = false; } @@ -6918,7 +7403,8 @@ rec { } ]; features = { - "default" = [ "trace" "metrics" "logs" "internal-logs" ]; + "default" = [ "trace" "metrics" "logs" "internal-logs" "futures" ]; + "futures" = [ "futures-core" "futures-sink" "pin-project-lite" ]; "futures-core" = [ "dep:futures-core" ]; "futures-sink" = [ "dep:futures-sink" ]; "internal-logs" = [ "tracing" ]; @@ -6926,21 +7412,22 @@ rec { "spec_unstable_logs_enabled" = [ "logs" ]; "testing" = [ "trace" ]; "thiserror" = [ "dep:thiserror" ]; - "trace" = [ "pin-project-lite" "futures-sink" "futures-core" "thiserror" ]; + "trace" = [ "futures" "thiserror" ]; "tracing" = [ "dep:tracing" ]; }; - resolvedDefaultFeatures = [ "default" "futures-core" "futures-sink" "internal-logs" "logs" "metrics" "pin-project-lite" "spec_unstable_logs_enabled" "thiserror" "trace" "tracing" ]; + resolvedDefaultFeatures = [ "default" "futures" "futures-core" "futures-sink" "internal-logs" "logs" "metrics" "pin-project-lite" "spec_unstable_logs_enabled" "thiserror" "trace" "tracing" ]; }; "opentelemetry-appender-tracing" = rec { crateName = "opentelemetry-appender-tracing"; - version = "0.28.1"; + version = "0.31.1"; edition = "2021"; - sha256 = "1h6x4pwk225yi8mxl3sqkhg5ya93z57i68267lzi2c7c7fpwf4y5"; + sha256 = "1hnwizzgfhpjfnvml638yy846py8hf2gl1n3p1igbk1srb2ilspg"; libName = "opentelemetry_appender_tracing"; dependencies = [ { name = "opentelemetry"; packageId = "opentelemetry"; + usesDefaultFeatures = false; features = [ "logs" ]; } { @@ -6962,11 +7449,17 @@ rec { } ]; devDependencies = [ + { + name = "tracing"; + packageId = "tracing"; + usesDefaultFeatures = false; + features = [ "std" ]; + } { name = "tracing-subscriber"; packageId = "tracing-subscriber"; usesDefaultFeatures = false; - features = [ "registry" "std" "env-filter" ]; + features = [ "env-filter" "registry" "std" "fmt" ]; } ]; features = { @@ -6980,9 +7473,9 @@ rec { }; "opentelemetry-http" = rec { crateName = "opentelemetry-http"; - version = "0.28.0"; + version = "0.31.0"; edition = "2021"; - sha256 = "0lv2sbsdr7b8bxnly92zzhlm1wzjbynib1xlkw9hs0qh56pkz1m8"; + sha256 = "0pc5nw1ds8v8w0nvyall39m92v8m1xl1p3vwvxk6nkhrffdd19np"; libName = "opentelemetry_http"; dependencies = [ { @@ -7002,18 +7495,12 @@ rec { { name = "opentelemetry"; packageId = "opentelemetry"; + usesDefaultFeatures = false; features = [ "trace" ]; } { name = "reqwest"; - packageId = "reqwest"; - optional = true; - usesDefaultFeatures = false; - features = [ "blocking" ]; - } - { - name = "tracing"; - packageId = "tracing"; + packageId = "reqwest 0.12.28"; optional = true; usesDefaultFeatures = false; } @@ -7021,29 +7508,21 @@ rec { features = { "default" = [ "internal-logs" ]; "hyper" = [ "dep:http-body-util" "dep:hyper" "dep:hyper-util" "dep:tokio" ]; - "internal-logs" = [ "tracing" "opentelemetry/internal-logs" ]; + "internal-logs" = [ "opentelemetry/internal-logs" ]; "reqwest" = [ "dep:reqwest" ]; - "reqwest-rustls" = [ "reqwest" "reqwest/rustls-tls-native-roots" ]; - "reqwest-rustls-webpki-roots" = [ "reqwest" "reqwest/rustls-tls-webpki-roots" ]; - "tracing" = [ "dep:tracing" ]; + "reqwest-blocking" = [ "dep:reqwest" "reqwest/blocking" ]; + "reqwest-rustls" = [ "dep:reqwest" "reqwest/rustls-tls-native-roots" ]; + "reqwest-rustls-webpki-roots" = [ "dep:reqwest" "reqwest/rustls-tls-webpki-roots" ]; }; - resolvedDefaultFeatures = [ "default" "internal-logs" "reqwest" "tracing" ]; + resolvedDefaultFeatures = [ "internal-logs" "reqwest" "reqwest-blocking" ]; }; "opentelemetry-otlp" = rec { crateName = "opentelemetry-otlp"; - version = "0.28.0"; + version = "0.31.1"; edition = "2021"; - sha256 = "148xq13ar11bvmk7pxbslrhh5pgf40bv83n6dlysigj1dm613vsv"; + sha256 = "07zp0b62b9dajnvvcd6j2ppw5zg7wp4ixka9z6fr3bxrrdmcss8z"; libName = "opentelemetry_otlp"; dependencies = [ - { - name = "async-trait"; - packageId = "async-trait"; - } - { - name = "futures-core"; - packageId = "futures-core"; - } { name = "http"; packageId = "http"; @@ -7060,6 +7539,7 @@ rec { name = "opentelemetry-http"; packageId = "opentelemetry-http"; optional = true; + usesDefaultFeatures = false; } { name = "opentelemetry-proto"; @@ -7078,13 +7558,13 @@ rec { } { name = "reqwest"; - packageId = "reqwest"; + packageId = "reqwest 0.12.28"; optional = true; usesDefaultFeatures = false; } { name = "thiserror"; - packageId = "thiserror 2.0.12"; + packageId = "thiserror 2.0.18"; usesDefaultFeatures = false; } { @@ -7108,51 +7588,70 @@ rec { } ]; devDependencies = [ + { + name = "opentelemetry_sdk"; + packageId = "opentelemetry_sdk"; + usesDefaultFeatures = false; + features = [ "trace" "testing" ]; + } { name = "tokio"; packageId = "tokio"; usesDefaultFeatures = false; features = [ "macros" "rt-multi-thread" ]; } + { + name = "tonic"; + packageId = "tonic"; + usesDefaultFeatures = false; + features = [ "router" "server" ]; + } ]; features = { "default" = [ "http-proto" "reqwest-blocking-client" "trace" "metrics" "logs" "internal-logs" ]; + "flate2" = [ "dep:flate2" ]; "grpc-tonic" = [ "tonic" "prost" "http" "tokio" "opentelemetry-proto/gen-tonic" ]; + "gzip-http" = [ "flate2" ]; "gzip-tonic" = [ "tonic/gzip" ]; "http" = [ "dep:http" ]; "http-json" = [ "serde_json" "prost" "opentelemetry-http" "opentelemetry-proto/gen-tonic-messages" "opentelemetry-proto/with-serde" "http" "trace" "metrics" ]; "http-proto" = [ "prost" "opentelemetry-http" "opentelemetry-proto/gen-tonic-messages" "http" "trace" "metrics" ]; "hyper-client" = [ "opentelemetry-http/hyper" ]; "integration-testing" = [ "tonic" "prost" "tokio/full" "trace" "logs" ]; - "internal-logs" = [ "tracing" "opentelemetry/internal-logs" ]; + "internal-logs" = [ "tracing" "opentelemetry_sdk/internal-logs" "opentelemetry-http/internal-logs" ]; "logs" = [ "opentelemetry/logs" "opentelemetry_sdk/logs" "opentelemetry-proto/logs" ]; "metrics" = [ "opentelemetry/metrics" "opentelemetry_sdk/metrics" "opentelemetry-proto/metrics" ]; "opentelemetry-http" = [ "dep:opentelemetry-http" ]; "prost" = [ "dep:prost" ]; "reqwest" = [ "dep:reqwest" ]; - "reqwest-blocking-client" = [ "reqwest/blocking" "opentelemetry-http/reqwest" ]; + "reqwest-blocking-client" = [ "reqwest/blocking" "opentelemetry-http/reqwest-blocking" ]; "reqwest-client" = [ "reqwest" "opentelemetry-http/reqwest" ]; "reqwest-rustls" = [ "reqwest" "opentelemetry-http/reqwest-rustls" ]; "reqwest-rustls-webpki-roots" = [ "reqwest" "opentelemetry-http/reqwest-rustls-webpki-roots" ]; "serde" = [ "dep:serde" ]; "serde_json" = [ "dep:serde_json" ]; "serialize" = [ "serde" "serde_json" ]; - "tls" = [ "tonic/tls" ]; - "tls-roots" = [ "tls" "tonic/tls-roots" ]; + "tls" = [ "tonic/tls-ring" ]; + "tls-aws-lc" = [ "tonic/tls-aws-lc" ]; + "tls-provider-agnostic" = [ "tonic/_tls-any" ]; + "tls-ring" = [ "tonic/tls-ring" ]; + "tls-roots" = [ "tls" "tonic/tls-native-roots" ]; "tls-webpki-roots" = [ "tls" "tonic/tls-webpki-roots" ]; "tokio" = [ "dep:tokio" ]; "tonic" = [ "dep:tonic" ]; "trace" = [ "opentelemetry/trace" "opentelemetry_sdk/trace" "opentelemetry-proto/trace" ]; "tracing" = [ "dep:tracing" ]; + "zstd" = [ "dep:zstd" ]; + "zstd-http" = [ "zstd" ]; "zstd-tonic" = [ "tonic/zstd" ]; }; resolvedDefaultFeatures = [ "default" "grpc-tonic" "gzip-tonic" "http" "http-proto" "internal-logs" "logs" "metrics" "opentelemetry-http" "prost" "reqwest" "reqwest-blocking-client" "tokio" "tonic" "trace" "tracing" ]; }; "opentelemetry-proto" = rec { crateName = "opentelemetry-proto"; - version = "0.28.0"; + version = "0.31.0"; edition = "2021"; - sha256 = "0vbl4si1mny87pmqxxg6wday45pcc8bvpcrf46cpwwi4606qgy2n"; + sha256 = "03xkjsjrsm7zkkx5gascqd9bg2z20wymm06l16cyxsp5dpq5s5x7"; libName = "opentelemetry_proto"; dependencies = [ { @@ -7175,43 +7674,62 @@ rec { packageId = "tonic"; optional = true; usesDefaultFeatures = false; - features = [ "codegen" "prost" ]; + features = [ "codegen" ]; + } + { + name = "tonic-prost"; + packageId = "tonic-prost"; + optional = true; + } + ]; + devDependencies = [ + { + name = "opentelemetry"; + packageId = "opentelemetry"; + usesDefaultFeatures = false; + features = [ "testing" ]; } ]; features = { "base64" = [ "dep:base64" ]; + "const-hex" = [ "dep:const-hex" ]; "default" = [ "full" ]; "full" = [ "gen-tonic" "trace" "logs" "metrics" "zpages" "with-serde" "internal-logs" ]; - "gen-tonic" = [ "gen-tonic-messages" "tonic/transport" ]; - "gen-tonic-messages" = [ "tonic" "prost" ]; - "hex" = [ "dep:hex" ]; - "internal-logs" = [ "tracing" ]; + "gen-tonic" = [ "gen-tonic-messages" "tonic/channel" ]; + "gen-tonic-messages" = [ "tonic" "tonic-prost" "prost" ]; + "internal-logs" = [ "opentelemetry/internal-logs" ]; "logs" = [ "opentelemetry/logs" "opentelemetry_sdk/logs" ]; "metrics" = [ "opentelemetry/metrics" "opentelemetry_sdk/metrics" ]; "prost" = [ "dep:prost" ]; "schemars" = [ "dep:schemars" ]; "serde" = [ "dep:serde" ]; + "serde_json" = [ "dep:serde_json" ]; "testing" = [ "opentelemetry/testing" ]; "tonic" = [ "dep:tonic" ]; + "tonic-prost" = [ "dep:tonic-prost" ]; "trace" = [ "opentelemetry/trace" "opentelemetry_sdk/trace" ]; - "tracing" = [ "dep:tracing" ]; "with-schemars" = [ "schemars" ]; - "with-serde" = [ "serde" "hex" "base64" ]; + "with-serde" = [ "serde" "const-hex" "base64" "serde_json" ]; "zpages" = [ "trace" ]; }; - resolvedDefaultFeatures = [ "gen-tonic" "gen-tonic-messages" "logs" "metrics" "prost" "tonic" "trace" ]; + resolvedDefaultFeatures = [ "gen-tonic" "gen-tonic-messages" "logs" "metrics" "prost" "tonic" "tonic-prost" "trace" ]; + }; + "opentelemetry-semantic-conventions" = rec { + crateName = "opentelemetry-semantic-conventions"; + version = "0.31.0"; + edition = "2021"; + sha256 = "0in8plv2l2ar7anzi7lrbll0fjfvaymkg5vc5bnvibs1w3gjjbp6"; + libName = "opentelemetry_semantic_conventions"; + features = { + }; + resolvedDefaultFeatures = [ "default" ]; }; "opentelemetry_sdk" = rec { crateName = "opentelemetry_sdk"; - version = "0.28.0"; + version = "0.31.0"; edition = "2021"; - sha256 = "0w4mycm070f4knvi1x5v199apd1fvi0712qiyv0pz70889havpw4"; + sha256 = "1gbjsggdxfpjbanjvaxa3nq32vfa37i3v13dvx4gsxhrk7sy8jp1"; dependencies = [ - { - name = "async-trait"; - packageId = "async-trait"; - optional = true; - } { name = "futures-channel"; packageId = "futures-channel"; @@ -7226,14 +7744,10 @@ rec { usesDefaultFeatures = false; features = [ "std" "sink" "async-await-macro" ]; } - { - name = "glob"; - packageId = "glob"; - optional = true; - } { name = "opentelemetry"; packageId = "opentelemetry"; + usesDefaultFeatures = false; } { name = "percent-encoding"; @@ -7242,19 +7756,14 @@ rec { } { name = "rand"; - packageId = "rand 0.8.5"; + packageId = "rand 0.9.2"; optional = true; usesDefaultFeatures = false; - features = [ "std" "std_rng" "small_rng" ]; - } - { - name = "serde_json"; - packageId = "serde_json"; - optional = true; + features = [ "std" "std_rng" "small_rng" "os_rng" "thread_rng" ]; } { name = "thiserror"; - packageId = "thiserror 2.0.12"; + packageId = "thiserror 2.0.18"; usesDefaultFeatures = false; } { @@ -7262,52 +7771,42 @@ rec { packageId = "tokio"; optional = true; usesDefaultFeatures = false; - features = [ "rt" "time" ]; } { name = "tokio-stream"; packageId = "tokio-stream"; optional = true; } - { - name = "tracing"; - packageId = "tracing"; - optional = true; - usesDefaultFeatures = false; - } ]; features = { - "async-std" = [ "dep:async-std" ]; - "async-trait" = [ "dep:async-trait" ]; "default" = [ "trace" "metrics" "logs" "internal-logs" ]; - "experimental_logs_batch_log_processor_with_async_runtime" = [ "logs" ]; + "experimental_logs_batch_log_processor_with_async_runtime" = [ "logs" "experimental_async_runtime" ]; + "experimental_logs_concurrent_log_processor" = [ "logs" ]; + "experimental_metrics_custom_reader" = [ "metrics" ]; "experimental_metrics_disable_name_validation" = [ "metrics" ]; - "experimental_metrics_periodicreader_with_async_runtime" = [ "metrics" ]; - "experimental_trace_batch_span_processor_with_async_runtime" = [ "trace" ]; - "glob" = [ "dep:glob" ]; + "experimental_metrics_periodicreader_with_async_runtime" = [ "metrics" "experimental_async_runtime" ]; + "experimental_trace_batch_span_processor_with_async_runtime" = [ "tokio/sync" "trace" "experimental_async_runtime" ]; "http" = [ "dep:http" ]; - "internal-logs" = [ "tracing" ]; - "jaeger_remote_sampler" = [ "trace" "opentelemetry-http" "http" "serde" "serde_json" "url" ]; - "logs" = [ "opentelemetry/logs" "serde_json" ]; - "metrics" = [ "opentelemetry/metrics" "glob" "async-trait" ]; + "internal-logs" = [ "opentelemetry/internal-logs" ]; + "jaeger_remote_sampler" = [ "trace" "opentelemetry-http" "http" "serde" "serde_json" "url" "experimental_async_runtime" ]; + "logs" = [ "opentelemetry/logs" ]; + "metrics" = [ "opentelemetry/metrics" ]; "opentelemetry-http" = [ "dep:opentelemetry-http" ]; "percent-encoding" = [ "dep:percent-encoding" ]; "rand" = [ "dep:rand" ]; - "rt-async-std" = [ "async-std" "experimental_async_runtime" ]; - "rt-tokio" = [ "tokio" "tokio-stream" "experimental_async_runtime" ]; - "rt-tokio-current-thread" = [ "tokio" "tokio-stream" "experimental_async_runtime" ]; + "rt-tokio" = [ "tokio/rt" "tokio/time" "tokio-stream" "experimental_async_runtime" ]; + "rt-tokio-current-thread" = [ "tokio/rt" "tokio/time" "tokio-stream" "experimental_async_runtime" ]; "serde" = [ "dep:serde" ]; "serde_json" = [ "dep:serde_json" ]; "spec_unstable_logs_enabled" = [ "logs" "opentelemetry/spec_unstable_logs_enabled" ]; "spec_unstable_metrics_views" = [ "metrics" ]; - "testing" = [ "opentelemetry/testing" "trace" "metrics" "logs" "rt-async-std" "rt-tokio" "rt-tokio-current-thread" "tokio/macros" "tokio/rt-multi-thread" ]; + "testing" = [ "opentelemetry/testing" "trace" "metrics" "logs" "rt-tokio" "rt-tokio-current-thread" "tokio/macros" "tokio/rt-multi-thread" ]; "tokio" = [ "dep:tokio" ]; "tokio-stream" = [ "dep:tokio-stream" ]; "trace" = [ "opentelemetry/trace" "rand" "percent-encoding" ]; - "tracing" = [ "dep:tracing" ]; "url" = [ "dep:url" ]; }; - resolvedDefaultFeatures = [ "async-trait" "default" "experimental_async_runtime" "glob" "internal-logs" "logs" "metrics" "percent-encoding" "rand" "rt-tokio" "serde_json" "spec_unstable_logs_enabled" "tokio" "tokio-stream" "trace" "tracing" ]; + resolvedDefaultFeatures = [ "default" "experimental_async_runtime" "internal-logs" "logs" "metrics" "percent-encoding" "rand" "rt-tokio" "spec_unstable_logs_enabled" "tokio" "tokio-stream" "trace" ]; }; "option-ext" = rec { crateName = "option-ext"; @@ -7350,21 +7849,11 @@ rec { }; resolvedDefaultFeatures = [ "default" "std" ]; }; - "overload" = rec { - crateName = "overload"; - version = "0.1.1"; - edition = "2018"; - sha256 = "0fdgbaqwknillagy1xq7xfgv60qdbk010diwl7s1p0qx7hb16n5i"; - authors = [ - "Daniel Salvadori " - ]; - - }; "parking" = rec { crateName = "parking"; - version = "2.2.0"; + version = "2.2.1"; edition = "2018"; - sha256 = "1blwbkq6im1hfxp5wlbr475mw98rsyc0bbr2d5n16m38z253p0dv"; + sha256 = "1fnfgmzkfpjd69v4j9x737b1k8pnn054bvzcn5dm3pkgq595d3gk"; authors = [ "Stjepan Glavina " "The Rust Project Developers" @@ -7375,9 +7864,9 @@ rec { }; "parking_lot" = rec { crateName = "parking_lot"; - version = "0.12.3"; + version = "0.12.5"; edition = "2021"; - sha256 = "09ws9g6245iiq8z975h8ycf818a66q3c6zv4b5h8skpm7hc1igzi"; + sha256 = "06jsqh9aqmc94j2rlm8gpccilqm6bskbd67zf6ypfc0f4m9p91ck"; authors = [ "Amanieu d'Antras " ]; @@ -7402,9 +7891,9 @@ rec { }; "parking_lot_core" = rec { crateName = "parking_lot_core"; - version = "0.9.10"; + version = "0.9.12"; edition = "2021"; - sha256 = "1y3cf9ld9ijf7i4igwzffcn0xl16dxyn4c5bwgjck1dkgabiyh0y"; + sha256 = "1hb4rggy70fwa1w9nb0svbyflzdc69h047482v2z3sx2hmcnh896"; authors = [ "Amanieu d'Antras " ]; @@ -7420,7 +7909,7 @@ rec { } { name = "redox_syscall"; - packageId = "redox_syscall 0.5.3"; + packageId = "redox_syscall"; target = { target, features }: ("redox" == target."os" or null); } { @@ -7428,16 +7917,15 @@ rec { packageId = "smallvec"; } { - name = "windows-targets"; - packageId = "windows-targets 0.52.6"; + name = "windows-link"; + packageId = "windows-link"; target = { target, features }: (target."windows" or false); } ]; features = { "backtrace" = [ "dep:backtrace" ]; - "deadlock_detection" = [ "petgraph" "thread-id" "backtrace" ]; + "deadlock_detection" = [ "petgraph" "backtrace" ]; "petgraph" = [ "dep:petgraph" ]; - "thread-id" = [ "dep:thread-id" ]; }; }; "parse-zoneinfo" = rec { @@ -7458,38 +7946,38 @@ rec { }; "pem" = rec { crateName = "pem"; - version = "3.0.4"; + version = "3.0.6"; edition = "2021"; - sha256 = "1blgcn17wc41yxdzrxlsir5m6ds8r13ijmpsqda6lwwhwmjr6icf"; + sha256 = "1glia9vv51wx79cysqxgdha6g1bwbbr20bfhijlk2nxw4qycac0x"; authors = [ "Jonathan Creekmore " ]; dependencies = [ { name = "base64"; - packageId = "base64 0.22.1"; + packageId = "base64"; usesDefaultFeatures = false; features = [ "alloc" ]; } { - name = "serde"; - packageId = "serde"; + name = "serde_core"; + packageId = "serde_core"; optional = true; usesDefaultFeatures = false; } ]; features = { "default" = [ "std" ]; - "serde" = [ "dep:serde" ]; - "std" = [ "base64/std" "serde?/std" ]; + "serde" = [ "dep:serde_core" ]; + "std" = [ "base64/std" "serde_core?/std" ]; }; resolvedDefaultFeatures = [ "default" "std" ]; }; "percent-encoding" = rec { crateName = "percent-encoding"; - version = "2.3.1"; + version = "2.3.2"; edition = "2018"; - sha256 = "0gi8wgx0dcy8rnv1kywdv98lwcx67hz0a0zwpib5v2i08r88y573"; + sha256 = "083jv1ai930azvawz2khv7w73xh8mnylk7i578cifndjn5y64kwv"; libName = "percent_encoding"; authors = [ "The rust-url developers" @@ -7502,9 +7990,9 @@ rec { }; "pest" = rec { crateName = "pest"; - version = "2.7.11"; + version = "2.8.6"; edition = "2021"; - sha256 = "15cxh3nc7yibzjn6dbndjkbhadhkry60jdx83kf5ywr67zwdylyd"; + sha256 = "0qm6kpqsbn2p6vkd7v4j3g7wsjby2ip6di1h6kx7vlq921h8r170"; authors = [ "Dragoș Tiselice " ]; @@ -7514,11 +8002,6 @@ rec { packageId = "memchr"; optional = true; } - { - name = "thiserror"; - packageId = "thiserror 1.0.63"; - optional = true; - } { name = "ucd-trie"; packageId = "ucd-trie"; @@ -7528,16 +8011,17 @@ rec { features = { "default" = [ "std" "memchr" ]; "memchr" = [ "dep:memchr" ]; + "miette-error" = [ "std" "pretty-print" "dep:miette" ]; "pretty-print" = [ "dep:serde" "dep:serde_json" ]; - "std" = [ "ucd-trie/std" "dep:thiserror" ]; + "std" = [ "ucd-trie/std" ]; }; resolvedDefaultFeatures = [ "default" "memchr" "std" ]; }; "pest_derive" = rec { crateName = "pest_derive"; - version = "2.7.11"; + version = "2.8.6"; edition = "2021"; - sha256 = "16p49072arqm45l6j5blisjshj45rxpx6m254hf3nxx6xhmqsm1a"; + sha256 = "0xzysvcyfs0pkn2801rg811y83jx2rvpqnjxs47c3ri1xbqqdx0i"; procMacro = true; authors = [ "Dragoș Tiselice " @@ -7564,9 +8048,9 @@ rec { }; "pest_generator" = rec { crateName = "pest_generator"; - version = "2.7.11"; + version = "2.8.6"; edition = "2021"; - sha256 = "10vi0wbrxih85pghd1y2vkpnka68hyl5wkplpbf2amqlilpai4rw"; + sha256 = "0kzrcik2ww0qh84jlv8xqc0zmzgl3xy41vf1cfli1chkgdjc8h40"; authors = [ "Dragoș Tiselice " ]; @@ -7590,7 +8074,7 @@ rec { } { name = "syn"; - packageId = "syn 2.0.87"; + packageId = "syn 2.0.117"; } ]; features = { @@ -7603,17 +8087,13 @@ rec { }; "pest_meta" = rec { crateName = "pest_meta"; - version = "2.7.11"; + version = "2.8.6"; edition = "2021"; - sha256 = "0ksc295cyz9yxzsqvaaxfmmwrapzns2nfksyqbgbw23yxagl4hd9"; + sha256 = "08126skq2lxysinp6v917niszhnnh6d6a9kg2i0a28b0sdlmr0c9"; authors = [ "Dragoș Tiselice " ]; dependencies = [ - { - name = "once_cell"; - packageId = "once_cell"; - } { name = "pest"; packageId = "pest"; @@ -7633,9 +8113,9 @@ rec { }; "phf" = rec { crateName = "phf"; - version = "0.11.2"; + version = "0.11.3"; edition = "2021"; - sha256 = "1p03rsw66l7naqhpgr1a34r9yzi1gv9jh16g3fsk6wrwyfwdiqmd"; + sha256 = "0y6hxp1d48rx2434wgi5g8j1pr8s5jja29ha2b65435fh057imhz"; authors = [ "Steven Fackler " ]; @@ -7655,13 +8135,12 @@ rec { "uncased" = [ "phf_shared/uncased" ]; "unicase" = [ "phf_macros?/unicase" "phf_shared/unicase" ]; }; - resolvedDefaultFeatures = [ "default" "std" ]; }; "phf_codegen" = rec { crateName = "phf_codegen"; - version = "0.11.2"; + version = "0.11.3"; edition = "2021"; - sha256 = "0nia6h4qfwaypvfch3pnq1nd2qj64dif4a6kai3b7rjrsf49dlz8"; + sha256 = "0si1n6zr93kzjs3wah04ikw8z6npsr39jw4dam8yi9czg2609y5f"; authors = [ "Steven Fackler " ]; @@ -7679,10 +8158,10 @@ rec { }; "phf_generator" = rec { crateName = "phf_generator"; - version = "0.11.2"; + version = "0.11.3"; edition = "2021"; crateBin = []; - sha256 = "1c14pjyxbcpwkdgw109f7581cc5fa3fnkzdq1ikvx7mdq9jcrr28"; + sha256 = "0gc4np7s91ynrgw73s2i7iakhb4lzdv1gcyx7yhlc0n214a2701w"; authors = [ "Steven Fackler " ]; @@ -7705,9 +8184,9 @@ rec { }; "phf_shared" = rec { crateName = "phf_shared"; - version = "0.11.2"; + version = "0.11.3"; edition = "2021"; - sha256 = "0azphb0a330ypqx3qvyffal5saqnks0xvl8rj73jlk3qxxgbkz4h"; + sha256 = "1rallyvh28jqd9i916gk5gk2igdmzlgvv5q0l3xbf3m6y8pbrsk7"; authors = [ "Steven Fackler " ]; @@ -7726,9 +8205,9 @@ rec { }; "pin-project" = rec { crateName = "pin-project"; - version = "1.1.5"; + version = "1.1.11"; edition = "2021"; - sha256 = "1cxl146x0q7lawp0m1826wsgj8mmmfs6ja8q7m6f7ff5j6vl7gxn"; + sha256 = "05zm3y3bl83ypsr6favxvny2kys4i19jiz1y18ylrbxwsiz9qx7i"; libName = "pin_project"; dependencies = [ { @@ -7740,9 +8219,9 @@ rec { }; "pin-project-internal" = rec { crateName = "pin-project-internal"; - version = "1.1.5"; + version = "1.1.11"; edition = "2021"; - sha256 = "0r9r4ivwiyqf45sv6b30l1dx282lxaax2f6gl84jwa3q590s8f1g"; + sha256 = "1ik4mpb92da75inmjvxf2qm61vrnwml3x24wddvrjlqh1z9hxcnr"; procMacro = true; libName = "pin_project_internal"; dependencies = [ @@ -7756,43 +8235,78 @@ rec { } { name = "syn"; - packageId = "syn 2.0.87"; - features = [ "full" "visit-mut" ]; + packageId = "syn 2.0.117"; + usesDefaultFeatures = false; + features = [ "parsing" "printing" "clone-impls" "proc-macro" "full" "visit-mut" ]; } ]; }; "pin-project-lite" = rec { crateName = "pin-project-lite"; - version = "0.2.14"; + version = "0.2.17"; edition = "2018"; - sha256 = "00nx3f04agwjlsmd3mc5rx5haibj2v8q9b52b0kwn63wcv4nz9mx"; + sha256 = "1kfmwvs271si96zay4mm8887v5khw0c27jc9srw1a75ykvgj54x8"; libName = "pin_project_lite"; - }; - "pin-utils" = rec { - crateName = "pin-utils"; - version = "0.1.0"; - edition = "2018"; - sha256 = "117ir7vslsl2z1a7qzhws4pd01cg2d3338c47swjyvqv2n60v1wb"; - libName = "pin_utils"; - authors = [ - "Josef Brandl " - ]; - }; "portable-atomic" = rec { crateName = "portable-atomic"; - version = "1.11.0"; + version = "1.13.1"; edition = "2018"; - sha256 = "0glb2wngflvfmg789qbf6dbnwcf6ai212fs7n0lf1c66rd49n3im"; + sha256 = "0j8vlar3n5acyigq8q6f4wjx3k3s5yz0rlpqrv76j73gi5qr8fn3"; libName = "portable_atomic"; features = { "critical-section" = [ "dep:critical-section" ]; "default" = [ "fallback" ]; "serde" = [ "dep:serde" ]; }; - resolvedDefaultFeatures = [ "default" "fallback" ]; + resolvedDefaultFeatures = [ "default" "fallback" "require-cas" ]; + }; + "portable-atomic-util" = rec { + crateName = "portable-atomic-util"; + version = "0.2.6"; + edition = "2018"; + sha256 = "18wrsx7fjwc2kgbpfjfm3igv3vdzsidmjhbqivjln7d0c6z9f4q9"; + libName = "portable_atomic_util"; + dependencies = [ + { + name = "portable-atomic"; + packageId = "portable-atomic"; + usesDefaultFeatures = false; + features = [ "require-cas" ]; + } + ]; + features = { + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" ]; + }; + "potential_utf" = rec { + crateName = "potential_utf"; + version = "0.1.5"; + edition = "2021"; + sha256 = "0r0518fr32xbkgzqap509s3r60cr0iancsg9j1jgf37cyz7b20q1"; + authors = [ + "The ICU4X Project Developers" + ]; + dependencies = [ + { + name = "zerovec"; + packageId = "zerovec"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "alloc" = [ "serde_core?/alloc" "writeable/alloc" "zerovec?/alloc" ]; + "databake" = [ "dep:databake" ]; + "default" = [ "alloc" ]; + "serde" = [ "dep:serde_core" ]; + "writeable" = [ "dep:writeable" ]; + "zerovec" = [ "dep:zerovec" ]; + }; + resolvedDefaultFeatures = [ "zerovec" ]; }; "powerfmt" = rec { crateName = "powerfmt"; @@ -7810,9 +8324,9 @@ rec { }; "ppv-lite86" = rec { crateName = "ppv-lite86"; - version = "0.2.20"; + version = "0.2.21"; edition = "2021"; - sha256 = "017ax9ssdnpww7nrl1hvqh2lzncpv04nnsibmnw9nxjnaqlpp5bp"; + sha256 = "1abxx6qz5qnd43br1dd9b2savpihzjza8gb4fbzdql1gxp2f7sl5"; libName = "ppv_lite86"; authors = [ "The CryptoCorrosion Contributors" @@ -7820,8 +8334,8 @@ rec { dependencies = [ { name = "zerocopy"; - packageId = "zerocopy 0.7.35"; - features = [ "simd" "derive" ]; + packageId = "zerocopy"; + features = [ "simd" ]; } ]; features = { @@ -7831,10 +8345,10 @@ rec { }; "prettyplease" = rec { crateName = "prettyplease"; - version = "0.2.22"; + version = "0.2.37"; edition = "2021"; links = "prettyplease02"; - sha256 = "1fpsyn4x1scbp8ik8xw4pfh4jxfm5bv7clax5k1jcd5vzd0gk727"; + sha256 = "0azn11i1kh0byabhsgab6kqs74zyrg69xkirzgqyhz6xmjnsi727"; authors = [ "David Tolnay " ]; @@ -7846,7 +8360,7 @@ rec { } { name = "syn"; - packageId = "syn 2.0.87"; + packageId = "syn 2.0.117"; usesDefaultFeatures = false; features = [ "full" ]; } @@ -7859,9 +8373,9 @@ rec { } { name = "syn"; - packageId = "syn 2.0.87"; + packageId = "syn 2.0.117"; usesDefaultFeatures = false; - features = [ "parsing" ]; + features = [ "clone-impls" "extra-traits" "parsing" "printing" "visit-mut" ]; } ]; features = { @@ -7871,9 +8385,9 @@ rec { }; "proc-macro-crate" = rec { crateName = "proc-macro-crate"; - version = "3.2.0"; + version = "3.5.0"; edition = "2021"; - sha256 = "0yzsqnavb3lmrcsmbrdjfrky9vcbl46v59xi9avn0796rb3likwf"; + sha256 = "0kv1g1d1zjwxlgcaba2qlshzyy32j03xic8rskqlcr5mnblsfyz6"; libName = "proc_macro_crate"; authors = [ "Bastian Köcher " @@ -7882,94 +8396,26 @@ rec { { name = "toml_edit"; packageId = "toml_edit"; + usesDefaultFeatures = false; + features = [ "parse" ]; } ]; }; - "proc-macro-error" = rec { - crateName = "proc-macro-error"; - version = "1.0.4"; - edition = "2018"; - sha256 = "1373bhxaf0pagd8zkyd03kkx6bchzf6g0dkwrwzsnal9z47lj9fs"; - libName = "proc_macro_error"; + "proc-macro2" = rec { + crateName = "proc-macro2"; + version = "1.0.106"; + edition = "2021"; + sha256 = "0d09nczyaj67x4ihqr5p7gxbkz38gxhk4asc0k8q23g9n85hzl4g"; + libName = "proc_macro2"; authors = [ - "CreepySkeleton " + "David Tolnay " + "Alex Crichton " ]; dependencies = [ { - name = "proc-macro-error-attr"; - packageId = "proc-macro-error-attr"; - } - { - name = "proc-macro2"; - packageId = "proc-macro2"; - } - { - name = "quote"; - packageId = "quote"; - } - { - name = "syn"; - packageId = "syn 1.0.109"; - optional = true; - usesDefaultFeatures = false; - } - ]; - buildDependencies = [ - { - name = "version_check"; - packageId = "version_check"; - } - ]; - features = { - "default" = [ "syn-error" ]; - "syn" = [ "dep:syn" ]; - "syn-error" = [ "syn" ]; - }; - resolvedDefaultFeatures = [ "default" "syn" "syn-error" ]; - }; - "proc-macro-error-attr" = rec { - crateName = "proc-macro-error-attr"; - version = "1.0.4"; - edition = "2018"; - sha256 = "0sgq6m5jfmasmwwy8x4mjygx5l7kp8s4j60bv25ckv2j1qc41gm1"; - procMacro = true; - libName = "proc_macro_error_attr"; - authors = [ - "CreepySkeleton " - ]; - dependencies = [ - { - name = "proc-macro2"; - packageId = "proc-macro2"; - } - { - name = "quote"; - packageId = "quote"; - } - ]; - buildDependencies = [ - { - name = "version_check"; - packageId = "version_check"; - } - ]; - - }; - "proc-macro2" = rec { - crateName = "proc-macro2"; - version = "1.0.86"; - edition = "2021"; - sha256 = "0xrv22p8lqlfdf1w0pj4si8n2ws4aw0kilmziwf0vpv5ys6rwway"; - libName = "proc_macro2"; - authors = [ - "David Tolnay " - "Alex Crichton " - ]; - dependencies = [ - { - name = "unicode-ident"; - packageId = "unicode-ident"; + name = "unicode-ident"; + packageId = "unicode-ident"; } ]; features = { @@ -7979,13 +8425,13 @@ rec { }; "product-config" = rec { crateName = "product-config"; - version = "0.7.0"; + version = "0.8.0"; edition = "2021"; workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/product-config.git"; - rev = "d61d4c7542c942da2ba0e9af4e5e3c3113abb0cf"; - sha256 = "0gjsm80g6r75pm3824dcyiz4ysq1ka4c1if6k1mjm9cnd5ym0gny"; + rev = "678fb7cf30af7d7b516c9a46698a1b661120d54a"; + sha256 = "1dz70kapm2wdqcr7ndyjji0lhsl98bsq95gnb2lw487wf6yr7987"; }; libName = "product_config"; authors = [ @@ -8023,20 +8469,20 @@ rec { } { name = "snafu"; - packageId = "snafu 0.8.4"; + packageId = "snafu 0.8.9"; } { - name = "xml-rs"; - packageId = "xml-rs"; + name = "xml"; + packageId = "xml"; } ]; }; "prost" = rec { crateName = "prost"; - version = "0.13.5"; + version = "0.14.3"; edition = "2021"; - sha256 = "1r8yi6zxxwv9gq5ia9p55nspgwmchs94sqpp64x33v5k3njgm5i7"; + sha256 = "0s057z9nzggzy7x4bbsiar852hg7zb81f4z4phcdb0ig99971snj"; authors = [ "Dan Burkert " "Lucio Franco " @@ -8058,15 +8504,14 @@ rec { features = { "default" = [ "derive" "std" ]; "derive" = [ "dep:prost-derive" ]; - "prost-derive" = [ "derive" ]; }; resolvedDefaultFeatures = [ "default" "derive" "std" ]; }; "prost-derive" = rec { crateName = "prost-derive"; - version = "0.13.5"; + version = "0.14.3"; edition = "2021"; - sha256 = "0kgc9gbzsa998xixblfi3kfydka64zqf6rmpm53b761cjxbxfmla"; + sha256 = "02zvva6kb0pfvlyc4nac6gd37ncjrs8jq5scxcq4nbqkc8wh5ii7"; procMacro = true; libName = "prost_derive"; authors = [ @@ -8094,7 +8539,7 @@ rec { } { name = "syn"; - packageId = "syn 2.0.87"; + packageId = "syn 2.0.117"; features = [ "extra-traits" ]; } ]; @@ -8102,9 +8547,9 @@ rec { }; "quinn" = rec { crateName = "quinn"; - version = "0.11.5"; + version = "0.11.9"; edition = "2021"; - sha256 = "1146h9wkn5bb8l1mllnw7s1hkvg0iykg1i3x881p5bndwgfmyz4c"; + sha256 = "086gzj666dr3slmlynkvxlndy28hahgl361d6bf93hk3i6ahmqmr"; dependencies = [ { name = "bytes"; @@ -8129,22 +8574,23 @@ rec { } { name = "rustc-hash"; - packageId = "rustc-hash 2.0.0"; + packageId = "rustc-hash"; } { name = "rustls"; packageId = "rustls"; optional = true; usesDefaultFeatures = false; - features = [ "ring" "std" ]; + features = [ "std" ]; } { name = "socket2"; packageId = "socket2"; + target = { target, features }: (!((builtins.elem "wasm" target."family") && ("unknown" == target."os" or null))); } { name = "thiserror"; - packageId = "thiserror 1.0.63"; + packageId = "thiserror 2.0.18"; } { name = "tokio"; @@ -8157,6 +8603,17 @@ rec { usesDefaultFeatures = false; features = [ "std" ]; } + { + name = "web-time"; + packageId = "web-time"; + target = { target, features }: ((builtins.elem "wasm" target."family") && ("unknown" == target."os" or null)); + } + ]; + buildDependencies = [ + { + name = "cfg_aliases"; + packageId = "cfg_aliases"; + } ]; devDependencies = [ { @@ -8168,49 +8625,86 @@ rec { features = { "async-io" = [ "dep:async-io" ]; "async-std" = [ "dep:async-std" ]; - "default" = [ "log" "platform-verifier" "ring" "runtime-tokio" "rustls" ]; + "aws-lc-rs" = [ "proto/aws-lc-rs" ]; + "aws-lc-rs-fips" = [ "proto/aws-lc-rs-fips" ]; + "bloom" = [ "proto/bloom" ]; + "default" = [ "log" "platform-verifier" "runtime-tokio" "rustls-ring" "bloom" ]; "futures-io" = [ "dep:futures-io" ]; "log" = [ "tracing/log" "proto/log" "udp/log" ]; "platform-verifier" = [ "proto/platform-verifier" ]; + "qlog" = [ "proto/qlog" ]; "ring" = [ "proto/ring" ]; "runtime-async-std" = [ "async-io" "async-std" ]; "runtime-smol" = [ "async-io" "smol" ]; "runtime-tokio" = [ "tokio/time" "tokio/rt" "tokio/net" ]; - "rustls" = [ "dep:rustls" "proto/rustls" "proto/ring" ]; + "rustls" = [ "rustls-ring" ]; + "rustls-aws-lc-rs" = [ "dep:rustls" "aws-lc-rs" "proto/rustls-aws-lc-rs" "proto/aws-lc-rs" ]; + "rustls-aws-lc-rs-fips" = [ "dep:rustls" "aws-lc-rs-fips" "proto/rustls-aws-lc-rs-fips" "proto/aws-lc-rs-fips" ]; + "rustls-log" = [ "rustls?/logging" ]; + "rustls-ring" = [ "dep:rustls" "ring" "proto/rustls-ring" "proto/ring" ]; "smol" = [ "dep:smol" ]; }; - resolvedDefaultFeatures = [ "ring" "runtime-tokio" "rustls" ]; + resolvedDefaultFeatures = [ "aws-lc-rs" "runtime-tokio" "rustls-aws-lc-rs" ]; }; "quinn-proto" = rec { crateName = "quinn-proto"; - version = "0.11.8"; + version = "0.11.14"; edition = "2021"; - sha256 = "19m4219ybsma7kkz79j721lzhy3vgfqfwwxvc40rsf3zrp9axpzs"; + sha256 = "1660jkxhzi1pnywzs13ifczwrlv6ds9qds111vsnxjciqpz44js3"; libName = "quinn_proto"; dependencies = [ + { + name = "aws-lc-rs"; + packageId = "aws-lc-rs"; + optional = true; + usesDefaultFeatures = false; + } { name = "bytes"; packageId = "bytes"; } + { + name = "getrandom"; + packageId = "getrandom 0.3.4"; + usesDefaultFeatures = false; + target = { target, features }: ((builtins.elem "wasm" target."family") && ("unknown" == target."os" or null)); + features = [ "wasm_js" ]; + } + { + name = "lru-slab"; + packageId = "lru-slab"; + } { name = "rand"; - packageId = "rand 0.8.5"; + packageId = "rand 0.9.2"; } { name = "ring"; packageId = "ring"; optional = true; } + { + name = "ring"; + packageId = "ring"; + target = { target, features }: ((builtins.elem "wasm" target."family") && ("unknown" == target."os" or null)); + features = [ "wasm32_unknown_unknown_js" ]; + } { name = "rustc-hash"; - packageId = "rustc-hash 2.0.0"; + packageId = "rustc-hash"; } { name = "rustls"; packageId = "rustls"; optional = true; usesDefaultFeatures = false; - features = [ "ring" "std" ]; + features = [ "std" ]; + } + { + name = "rustls-pki-types"; + packageId = "rustls-pki-types"; + target = { target, features }: ((builtins.elem "wasm" target."family") && ("unknown" == target."os" or null)); + features = [ "web" ]; } { name = "slab"; @@ -8218,7 +8712,7 @@ rec { } { name = "thiserror"; - packageId = "thiserror 1.0.63"; + packageId = "thiserror 2.0.18"; } { name = "tinyvec"; @@ -8231,22 +8725,35 @@ rec { usesDefaultFeatures = false; features = [ "std" ]; } + { + name = "web-time"; + packageId = "web-time"; + target = { target, features }: ((builtins.elem "wasm" target."family") && ("unknown" == target."os" or null)); + } ]; features = { "arbitrary" = [ "dep:arbitrary" ]; - "default" = [ "rustls" "log" ]; + "aws-lc-rs" = [ "dep:aws-lc-rs" "aws-lc-rs?/aws-lc-sys" "aws-lc-rs?/prebuilt-nasm" ]; + "aws-lc-rs-fips" = [ "aws-lc-rs" "aws-lc-rs?/fips" ]; + "bloom" = [ "dep:fastbloom" ]; + "default" = [ "rustls-ring" "log" "bloom" ]; "log" = [ "tracing/log" ]; "platform-verifier" = [ "dep:rustls-platform-verifier" ]; + "qlog" = [ "dep:qlog" ]; "ring" = [ "dep:ring" ]; - "rustls" = [ "dep:rustls" "ring" ]; + "rustls" = [ "rustls-ring" ]; + "rustls-aws-lc-rs" = [ "dep:rustls" "rustls?/aws-lc-rs" "aws-lc-rs" ]; + "rustls-aws-lc-rs-fips" = [ "rustls-aws-lc-rs" "aws-lc-rs-fips" ]; + "rustls-log" = [ "rustls?/logging" ]; + "rustls-ring" = [ "dep:rustls" "rustls?/ring" "ring" ]; }; - resolvedDefaultFeatures = [ "ring" "rustls" ]; + resolvedDefaultFeatures = [ "aws-lc-rs" "rustls-aws-lc-rs" ]; }; "quinn-udp" = rec { crateName = "quinn-udp"; - version = "0.5.5"; + version = "0.5.14"; edition = "2021"; - sha256 = "02qlqjsbmfgwin9jpb652d0hkjyzz7wvsgb833i384hskqp8rrjg"; + sha256 = "1gacawr17a2zkyri0r3m0lc9spzmxbq1by3ilyb8v2mdvjhcdpmd"; libName = "quinn_udp"; dependencies = [ { @@ -8261,6 +8768,7 @@ rec { { name = "socket2"; packageId = "socket2"; + target = { target, features }: (!((builtins.elem "wasm" target."family") && ("unknown" == target."os" or null))); } { name = "tracing"; @@ -8271,11 +8779,17 @@ rec { } { name = "windows-sys"; - packageId = "windows-sys 0.59.0"; + packageId = "windows-sys 0.60.2"; target = { target, features }: (target."windows" or false); features = [ "Win32_Foundation" "Win32_System_IO" "Win32_Networking_WinSock" ]; } ]; + buildDependencies = [ + { + name = "cfg_aliases"; + packageId = "cfg_aliases"; + } + ]; features = { "default" = [ "tracing" "log" ]; "direct-log" = [ "dep:log" ]; @@ -8286,9 +8800,9 @@ rec { }; "quote" = rec { crateName = "quote"; - version = "1.0.37"; - edition = "2018"; - sha256 = "1brklraw2g34bxy9y4q1nbrccn7bv36ylihv12c9vlcii55x7fdm"; + version = "1.0.45"; + edition = "2021"; + sha256 = "095rb5rg7pbnwdp6v8w5jw93wndwyijgci1b5lw8j1h5cscn3wj1"; authors = [ "David Tolnay " ]; @@ -8305,18 +8819,68 @@ rec { }; resolvedDefaultFeatures = [ "default" "proc-macro" ]; }; - "r-efi" = rec { + "r-efi 5.3.0" = rec { crateName = "r-efi"; - version = "5.2.0"; + version = "5.3.0"; edition = "2018"; - sha256 = "1ig93jvpqyi87nc5kb6dri49p56q7r7qxrn8kfizmqkfj5nmyxkl"; + sha256 = "03sbfm3g7myvzyylff6qaxk4z6fy76yv860yy66jiswc2m6b7kb9"; libName = "r_efi"; features = { - "compiler_builtins" = [ "dep:compiler_builtins" ]; "core" = [ "dep:core" ]; "examples" = [ "native" ]; - "rustc-dep-of-std" = [ "compiler_builtins/rustc-dep-of-std" "core" ]; + "rustc-dep-of-std" = [ "core" ]; + }; + }; + "r-efi 6.0.0" = rec { + crateName = "r-efi"; + version = "6.0.0"; + edition = "2018"; + sha256 = "1gyrl2k5fyzj9k7kchg2n296z5881lg7070msabid09asp3wkp7q"; + libName = "r_efi"; + features = { + "core" = [ "dep:core" ]; + "rustc-dep-of-std" = [ "core" ]; + }; + }; + "rand 0.10.0" = rec { + crateName = "rand"; + version = "0.10.0"; + edition = "2024"; + sha256 = "1y7g1zddjzhzwg0k1nddsfyfaq89a7igpcf7q44mqv6z2frnw9mw"; + authors = [ + "The Rand Project Developers" + "The Rust Project Developers" + ]; + dependencies = [ + { + name = "chacha20"; + packageId = "chacha20"; + optional = true; + usesDefaultFeatures = false; + features = [ "rng" ]; + } + { + name = "getrandom"; + packageId = "getrandom 0.4.2"; + optional = true; + } + { + name = "rand_core"; + packageId = "rand_core 0.10.0"; + usesDefaultFeatures = false; + } + ]; + features = { + "chacha" = [ "dep:chacha20" ]; + "default" = [ "std" "std_rng" "sys_rng" "thread_rng" ]; + "log" = [ "dep:log" ]; + "serde" = [ "dep:serde" ]; + "std" = [ "alloc" "getrandom?/std" ]; + "std_rng" = [ "dep:chacha20" ]; + "sys_rng" = [ "dep:getrandom" "getrandom/sys_rng" ]; + "thread_rng" = [ "std" "std_rng" "sys_rng" ]; }; + resolvedDefaultFeatures = [ "alloc" "default" "std" "std_rng" "sys_rng" "thread_rng" ]; }; "rand 0.8.5" = rec { crateName = "rand"; @@ -8362,11 +8926,11 @@ rec { }; resolvedDefaultFeatures = [ "alloc" "default" "getrandom" "libc" "rand_chacha" "small_rng" "std" "std_rng" ]; }; - "rand 0.9.0" = rec { + "rand 0.9.2" = rec { crateName = "rand"; - version = "0.9.0"; + version = "0.9.2"; edition = "2021"; - sha256 = "156dyvsfa6fjnv6nx5vzczay1scy5183dvjchd7bvs47xd5bjy9p"; + sha256 = "1lah73ainvrgl7brcxx0pwhpnqa3sm3qaj672034jz8i0q7pgckd"; authors = [ "The Rand Project Developers" "The Rust Project Developers" @@ -8380,14 +8944,8 @@ rec { } { name = "rand_core"; - packageId = "rand_core 0.9.3"; - usesDefaultFeatures = false; - } - { - name = "zerocopy"; - packageId = "zerocopy 0.8.24"; + packageId = "rand_core 0.9.5"; usesDefaultFeatures = false; - features = [ "simd" ]; } ]; features = { @@ -8395,7 +8953,6 @@ rec { "log" = [ "dep:log" ]; "os_rng" = [ "rand_core/os_rng" ]; "serde" = [ "dep:serde" "rand_core/serde" ]; - "simd_support" = [ "zerocopy/simd-nightly" ]; "std" = [ "rand_core/std" "rand_chacha?/std" "alloc" ]; "std_rng" = [ "dep:rand_chacha" ]; "thread_rng" = [ "std" "std_rng" "os_rng" ]; @@ -8451,13 +9008,13 @@ rec { } { name = "rand_core"; - packageId = "rand_core 0.9.3"; + packageId = "rand_core 0.9.5"; } ]; devDependencies = [ { name = "rand_core"; - packageId = "rand_core 0.9.3"; + packageId = "rand_core 0.9.5"; features = [ "os_rng" ]; } ]; @@ -8469,6 +9026,16 @@ rec { }; resolvedDefaultFeatures = [ "std" ]; }; + "rand_core 0.10.0" = rec { + crateName = "rand_core"; + version = "0.10.0"; + edition = "2024"; + sha256 = "1flazfw1q1hbvadwzmaliplz0xnnjijdnbmzxnzdqplhfzb0z38c"; + authors = [ + "The Rand Project Developers" + ]; + + }; "rand_core 0.6.4" = rec { crateName = "rand_core"; version = "0.6.4"; @@ -8481,7 +9048,7 @@ rec { dependencies = [ { name = "getrandom"; - packageId = "getrandom 0.2.15"; + packageId = "getrandom 0.2.17"; optional = true; } ]; @@ -8493,11 +9060,11 @@ rec { }; resolvedDefaultFeatures = [ "alloc" "getrandom" "std" ]; }; - "rand_core 0.9.3" = rec { + "rand_core 0.9.5" = rec { crateName = "rand_core"; - version = "0.9.3"; + version = "0.9.5"; edition = "2021"; - sha256 = "0f3xhf16yks5ic6kmgxcpv1ngdhp48mmfy4ag82i1wnwh8ws3ncr"; + sha256 = "0g6qc5r3f0hdmz9b11nripyp9qqrzb0xqk9piip8w8qlvqkcibvn"; authors = [ "The Rand Project Developers" "The Rust Project Developers" @@ -8505,7 +9072,7 @@ rec { dependencies = [ { name = "getrandom"; - packageId = "getrandom 0.3.2"; + packageId = "getrandom 0.3.4"; optional = true; } ]; @@ -8516,31 +9083,11 @@ rec { }; resolvedDefaultFeatures = [ "os_rng" "std" ]; }; - "redox_syscall 0.4.1" = rec { - crateName = "redox_syscall"; - version = "0.4.1"; - edition = "2018"; - sha256 = "1aiifyz5dnybfvkk4cdab9p2kmphag1yad6iknc7aszlxxldf8j7"; - libName = "syscall"; - authors = [ - "Jeremy Soller " - ]; - dependencies = [ - { - name = "bitflags"; - packageId = "bitflags 1.3.2"; - } - ]; - features = { - "core" = [ "dep:core" ]; - "rustc-dep-of-std" = [ "core" "bitflags/rustc-dep-of-std" ]; - }; - }; - "redox_syscall 0.5.3" = rec { + "redox_syscall" = rec { crateName = "redox_syscall"; - version = "0.5.3"; - edition = "2018"; - sha256 = "1916m7abg9649gkif055pn5nsvqjhp70isy0v7gx1zgi01p8m41a"; + version = "0.5.18"; + edition = "2021"; + sha256 = "0b9n38zsxylql36vybw18if68yc9jczxmbyzdwyhb9sifmag4azd"; libName = "syscall"; authors = [ "Jeremy Soller " @@ -8548,29 +9095,21 @@ rec { dependencies = [ { name = "bitflags"; - packageId = "bitflags 2.6.0"; + packageId = "bitflags"; } ]; features = { "core" = [ "dep:core" ]; + "default" = [ "userspace" ]; "rustc-dep-of-std" = [ "core" "bitflags/rustc-dep-of-std" ]; }; - }; - "redox_termios" = rec { - crateName = "redox_termios"; - version = "0.1.3"; - edition = "2021"; - sha256 = "1jzifsj7fqyksz4325l3azfzpyv027kjabf93zcmass3p9q5c510"; - authors = [ - "Jeremy Soller " - ]; - + resolvedDefaultFeatures = [ "default" "userspace" ]; }; "redox_users" = rec { crateName = "redox_users"; - version = "0.4.6"; + version = "0.5.2"; edition = "2021"; - sha256 = "0hya2cxx6hxmjfxzv9n8rjl5igpychav7zfi1f81pz6i4krry05s"; + sha256 = "1b17q7gf7w8b1vvl53bxna24xl983yn7bd00gfbii74bcg30irm4"; authors = [ "Jose Narvaez " "Wesley Hershberger " @@ -8578,18 +9117,18 @@ rec { dependencies = [ { name = "getrandom"; - packageId = "getrandom 0.2.15"; + packageId = "getrandom 0.2.17"; features = [ "std" ]; } { name = "libredox"; - packageId = "libredox 0.1.3"; + packageId = "libredox"; usesDefaultFeatures = false; features = [ "std" "call" ]; } { name = "thiserror"; - packageId = "thiserror 1.0.63"; + packageId = "thiserror 2.0.18"; } ]; features = { @@ -8599,11 +9138,54 @@ rec { "zeroize" = [ "dep:zeroize" ]; }; }; + "ref-cast" = rec { + crateName = "ref-cast"; + version = "1.0.25"; + edition = "2021"; + sha256 = "0zdzc34qjva9xxgs889z5iz787g81hznk12zbk4g2xkgwq530m7k"; + libName = "ref_cast"; + authors = [ + "David Tolnay " + ]; + dependencies = [ + { + name = "ref-cast-impl"; + packageId = "ref-cast-impl"; + } + ]; + + }; + "ref-cast-impl" = rec { + crateName = "ref-cast-impl"; + version = "1.0.25"; + edition = "2021"; + sha256 = "1nkhn1fklmn342z5c4mzfzlxddv3x8yhxwwk02cj06djvh36065p"; + procMacro = true; + libName = "ref_cast_impl"; + authors = [ + "David Tolnay " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.117"; + } + ]; + + }; "regex" = rec { crateName = "regex"; - version = "1.10.6"; + version = "1.12.3"; edition = "2021"; - sha256 = "06cnlxwzyqfbw1za1i7ks89ns4i2kr0lpg5ykx56b8v7dd6df6a2"; + sha256 = "0xp2q0x7ybmpa5zlgaz00p8zswcirj9h8nry3rxxsdwi9fhm81z1"; authors = [ "The Rust Project Developers" "Andrew Gallant " @@ -8623,13 +9205,13 @@ rec { } { name = "regex-automata"; - packageId = "regex-automata 0.4.7"; + packageId = "regex-automata"; usesDefaultFeatures = false; features = [ "alloc" "syntax" "meta" "nfa-pikevm" ]; } { name = "regex-syntax"; - packageId = "regex-syntax 0.8.4"; + packageId = "regex-syntax"; usesDefaultFeatures = false; } ]; @@ -8657,36 +9239,11 @@ rec { }; resolvedDefaultFeatures = [ "default" "perf" "perf-backtrack" "perf-cache" "perf-dfa" "perf-inline" "perf-literal" "perf-onepass" "std" "unicode" "unicode-age" "unicode-bool" "unicode-case" "unicode-gencat" "unicode-perl" "unicode-script" "unicode-segment" ]; }; - "regex-automata 0.1.10" = rec { - crateName = "regex-automata"; - version = "0.1.10"; - edition = "2015"; - sha256 = "0ci1hvbzhrfby5fdpf4ganhf7kla58acad9i1ff1p34dzdrhs8vc"; - libName = "regex_automata"; - authors = [ - "Andrew Gallant " - ]; - dependencies = [ - { - name = "regex-syntax"; - packageId = "regex-syntax 0.6.29"; - optional = true; - } - ]; - features = { - "default" = [ "std" ]; - "fst" = [ "dep:fst" ]; - "regex-syntax" = [ "dep:regex-syntax" ]; - "std" = [ "regex-syntax" ]; - "transducer" = [ "std" "fst" ]; - }; - resolvedDefaultFeatures = [ "default" "regex-syntax" "std" ]; - }; - "regex-automata 0.4.7" = rec { + "regex-automata" = rec { crateName = "regex-automata"; - version = "0.4.7"; + version = "0.4.14"; edition = "2021"; - sha256 = "1pwjdi4jckpbaivpl6x4v5g4crb37zr2wac93wlfsbzgqn6gbjiq"; + sha256 = "13xf7hhn4qmgfh784llcp2kzrvljd13lb2b1ca0mwnf15w9d87bf"; libName = "regex_automata"; authors = [ "The Rust Project Developers" @@ -8707,7 +9264,7 @@ rec { } { name = "regex-syntax"; - packageId = "regex-syntax 0.8.4"; + packageId = "regex-syntax"; optional = true; usesDefaultFeatures = false; } @@ -8728,7 +9285,7 @@ rec { "nfa-thompson" = [ "alloc" ]; "perf" = [ "perf-inline" "perf-literal" ]; "perf-literal" = [ "perf-literal-substring" "perf-literal-multisubstring" ]; - "perf-literal-multisubstring" = [ "std" "dep:aho-corasick" ]; + "perf-literal-multisubstring" = [ "dep:aho-corasick" ]; "perf-literal-substring" = [ "aho-corasick?/perf-literal" "dep:memchr" ]; "std" = [ "regex-syntax?/std" "memchr?/std" "aho-corasick?/std" "alloc" ]; "syntax" = [ "dep:regex-syntax" "alloc" ]; @@ -8743,26 +9300,11 @@ rec { }; resolvedDefaultFeatures = [ "alloc" "dfa" "dfa-build" "dfa-onepass" "dfa-search" "hybrid" "meta" "nfa" "nfa-backtrack" "nfa-pikevm" "nfa-thompson" "perf" "perf-inline" "perf-literal" "perf-literal-multisubstring" "perf-literal-substring" "std" "syntax" "unicode" "unicode-age" "unicode-bool" "unicode-case" "unicode-gencat" "unicode-perl" "unicode-script" "unicode-segment" "unicode-word-boundary" ]; }; - "regex-syntax 0.6.29" = rec { - crateName = "regex-syntax"; - version = "0.6.29"; - edition = "2018"; - sha256 = "1qgj49vm6y3zn1hi09x91jvgkl2b1fiaq402skj83280ggfwcqpi"; - libName = "regex_syntax"; - authors = [ - "The Rust Project Developers" - ]; - features = { - "default" = [ "unicode" ]; - "unicode" = [ "unicode-age" "unicode-bool" "unicode-case" "unicode-gencat" "unicode-perl" "unicode-script" "unicode-segment" ]; - }; - resolvedDefaultFeatures = [ "default" "unicode" "unicode-age" "unicode-bool" "unicode-case" "unicode-gencat" "unicode-perl" "unicode-script" "unicode-segment" ]; - }; - "regex-syntax 0.8.4" = rec { + "regex-syntax" = rec { crateName = "regex-syntax"; - version = "0.8.4"; + version = "0.8.10"; edition = "2021"; - sha256 = "16r0kjy20vx33dr4mhasj5l1f87czas714x2fz6zl0f8wwxa0rks"; + sha256 = "02jx311ka0daxxc7v45ikzhcl3iydjbbb0mdrpc1xgg8v7c7v2fw"; libName = "regex_syntax"; authors = [ "The Rust Project Developers" @@ -8789,18 +9331,18 @@ rec { }; resolvedDefaultFeatures = [ "default" ]; }; - "reqwest" = rec { + "reqwest 0.12.28" = rec { crateName = "reqwest"; - version = "0.12.7"; + version = "0.12.28"; edition = "2021"; - sha256 = "0qsymmmgam6whjcymnlpf5kvk3ylc4bs92lygz63hp7g95b9bx7q"; + sha256 = "0iqidijghgqbzl3bjg5hb4zmigwa4r612bgi0yiq0c90b6jkrpgd"; authors = [ "Sean McArthur " ]; dependencies = [ { name = "base64"; - packageId = "base64 0.22.1"; + packageId = "base64"; } { name = "bytes"; @@ -8820,6 +9362,7 @@ rec { { name = "futures-util"; packageId = "futures-util"; + optional = true; usesDefaultFeatures = false; } { @@ -8842,24 +9385,11 @@ rec { target = { target, features }: (!("wasm32" == target."arch" or null)); features = [ "http1" "client" ]; } - { - name = "hyper-rustls"; - packageId = "hyper-rustls"; - optional = true; - usesDefaultFeatures = false; - target = { target, features }: (!("wasm32" == target."arch" or null)); - features = [ "http1" "tls12" ]; - } { name = "hyper-util"; packageId = "hyper-util"; target = { target, features }: (!("wasm32" == target."arch" or null)); - features = [ "http1" "client" "client-legacy" "tokio" ]; - } - { - name = "ipnet"; - packageId = "ipnet"; - target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "http1" "client" "client-legacy" "client-proxy" "tokio" ]; } { name = "js-sys"; @@ -8871,16 +9401,6 @@ rec { packageId = "log"; target = { target, features }: (!("wasm32" == target."arch" or null)); } - { - name = "mime"; - packageId = "mime"; - target = { target, features }: (!("wasm32" == target."arch" or null)); - } - { - name = "once_cell"; - packageId = "once_cell"; - target = { target, features }: (!("wasm32" == target."arch" or null)); - } { name = "percent-encoding"; packageId = "percent-encoding"; @@ -8891,41 +9411,6 @@ rec { packageId = "pin-project-lite"; target = { target, features }: (!("wasm32" == target."arch" or null)); } - { - name = "quinn"; - packageId = "quinn"; - optional = true; - usesDefaultFeatures = false; - target = { target, features }: (!("wasm32" == target."arch" or null)); - features = [ "rustls" "runtime-tokio" ]; - } - { - name = "rustls"; - packageId = "rustls"; - optional = true; - usesDefaultFeatures = false; - target = { target, features }: (!("wasm32" == target."arch" or null)); - features = [ "std" "tls12" ]; - } - { - name = "rustls-native-certs"; - packageId = "rustls-native-certs"; - optional = true; - target = { target, features }: (!("wasm32" == target."arch" or null)); - } - { - name = "rustls-pemfile"; - packageId = "rustls-pemfile"; - optional = true; - target = { target, features }: (!("wasm32" == target."arch" or null)); - } - { - name = "rustls-pki-types"; - packageId = "rustls-pki-types"; - optional = true; - target = { target, features }: (!("wasm32" == target."arch" or null)); - features = [ "alloc" ]; - } { name = "serde"; packageId = "serde"; @@ -8946,7 +9431,7 @@ rec { } { name = "sync_wrapper"; - packageId = "sync_wrapper 1.0.1"; + packageId = "sync_wrapper"; features = [ "futures" ]; } { @@ -8957,16 +9442,23 @@ rec { features = [ "net" "time" ]; } { - name = "tokio-rustls"; - packageId = "tokio-rustls"; - optional = true; + name = "tower"; + packageId = "tower"; usesDefaultFeatures = false; target = { target, features }: (!("wasm32" == target."arch" or null)); - features = [ "tls12" ]; + features = [ "retry" "timeout" "util" ]; + } + { + name = "tower-http"; + packageId = "tower-http"; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "follow-redirect" ]; } { name = "tower-service"; packageId = "tower-service"; + target = { target, features }: (!("wasm32" == target."arch" or null)); } { name = "url"; @@ -8986,18 +9478,7 @@ rec { name = "web-sys"; packageId = "web-sys"; target = { target, features }: ("wasm32" == target."arch" or null); - features = [ "AbortController" "AbortSignal" "Headers" "Request" "RequestInit" "RequestMode" "Response" "Window" "FormData" "Blob" "BlobPropertyBag" "ServiceWorkerGlobalScope" "RequestCredentials" "File" "ReadableStream" ]; - } - { - name = "webpki-roots"; - packageId = "webpki-roots"; - optional = true; - target = { target, features }: (!("wasm32" == target."arch" or null)); - } - { - name = "windows-registry"; - packageId = "windows-registry"; - target = { target, features }: (target."windows" or false); + features = [ "AbortController" "AbortSignal" "Headers" "Request" "RequestInit" "RequestMode" "Response" "Window" "FormData" "Blob" "BlobPropertyBag" "ServiceWorkerGlobalScope" "RequestCredentials" "File" "ReadableStream" "RequestCache" ]; } ]; devDependencies = [ @@ -9005,245 +9486,484 @@ rec { name = "futures-util"; packageId = "futures-util"; usesDefaultFeatures = false; - target = {target, features}: (!("wasm32" == target."arch" or null)); + target = { target, features }: (!("wasm32" == target."arch" or null)); features = [ "std" "alloc" ]; } { name = "hyper"; packageId = "hyper"; usesDefaultFeatures = false; - target = {target, features}: (!("wasm32" == target."arch" or null)); + target = { target, features }: (!("wasm32" == target."arch" or null)); features = [ "http1" "http2" "client" "server" ]; } { name = "hyper-util"; packageId = "hyper-util"; - target = {target, features}: (!("wasm32" == target."arch" or null)); - features = [ "http1" "http2" "client" "client-legacy" "server-auto" "tokio" ]; - } - { - name = "rustls"; - packageId = "rustls"; - usesDefaultFeatures = false; - target = {target, features}: (!("wasm32" == target."arch" or null)); - features = [ "ring" ]; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "http1" "http2" "client" "client-legacy" "server-auto" "server-graceful" "tokio" ]; } { name = "serde"; packageId = "serde"; - target = {target, features}: (!("wasm32" == target."arch" or null)); + target = { target, features }: (!("wasm32" == target."arch" or null)); features = [ "derive" ]; } { name = "tokio"; packageId = "tokio"; usesDefaultFeatures = false; - target = {target, features}: (!("wasm32" == target."arch" or null)); + target = { target, features }: (!("wasm32" == target."arch" or null)); features = [ "macros" "rt-multi-thread" ]; } + { + name = "tower"; + packageId = "tower"; + usesDefaultFeatures = false; + features = [ "limit" ]; + } { name = "wasm-bindgen"; packageId = "wasm-bindgen"; - target = {target, features}: ("wasm32" == target."arch" or null); + target = { target, features }: ("wasm32" == target."arch" or null); features = [ "serde-serialize" ]; } ]; features = { - "__rustls" = [ "dep:hyper-rustls" "dep:tokio-rustls" "dep:rustls" "__tls" "dep:rustls-pemfile" "dep:rustls-pki-types" ]; + "__rustls" = [ "dep:hyper-rustls" "dep:tokio-rustls" "dep:rustls" "__tls" ]; "__rustls-ring" = [ "hyper-rustls?/ring" "tokio-rustls?/ring" "rustls?/ring" "quinn?/ring" ]; - "__tls" = [ "dep:rustls-pemfile" "tokio/io-util" ]; - "blocking" = [ "dep:futures-channel" "futures-channel?/sink" "futures-util/io" "futures-util/sink" "tokio/sync" ]; - "brotli" = [ "dep:async-compression" "async-compression?/brotli" "dep:tokio-util" ]; - "charset" = [ "dep:encoding_rs" ]; + "__tls" = [ "dep:rustls-pki-types" "tokio/io-util" ]; + "blocking" = [ "dep:futures-channel" "futures-channel?/sink" "dep:futures-util" "futures-util?/io" "futures-util?/sink" "tokio/sync" ]; + "brotli" = [ "tower-http/decompression-br" ]; + "charset" = [ "dep:encoding_rs" "dep:mime" ]; "cookies" = [ "dep:cookie_crate" "dep:cookie_store" ]; - "default" = [ "default-tls" "charset" "http2" "macos-system-configuration" ]; + "default" = [ "default-tls" "charset" "http2" "system-proxy" ]; "default-tls" = [ "dep:hyper-tls" "dep:native-tls-crate" "__tls" "dep:tokio-native-tls" ]; - "deflate" = [ "dep:async-compression" "async-compression?/zlib" "dep:tokio-util" ]; - "gzip" = [ "dep:async-compression" "async-compression?/gzip" "dep:tokio-util" ]; + "deflate" = [ "tower-http/decompression-deflate" ]; + "gzip" = [ "tower-http/decompression-gzip" ]; "h2" = [ "dep:h2" ]; - "hickory-dns" = [ "dep:hickory-resolver" ]; + "hickory-dns" = [ "dep:hickory-resolver" "dep:once_cell" ]; "http2" = [ "h2" "hyper/http2" "hyper-util/http2" "hyper-rustls?/http2" ]; - "http3" = [ "rustls-tls-manual-roots" "dep:h3" "dep:h3-quinn" "dep:quinn" "dep:slab" "dep:futures-channel" ]; + "http3" = [ "rustls-tls-manual-roots" "dep:h3" "dep:h3-quinn" "dep:quinn" "tokio/macros" ]; "json" = [ "dep:serde_json" ]; - "macos-system-configuration" = [ "dep:system-configuration" ]; - "multipart" = [ "dep:mime_guess" ]; + "macos-system-configuration" = [ "system-proxy" ]; + "multipart" = [ "dep:mime_guess" "dep:futures-util" ]; "native-tls" = [ "default-tls" ]; "native-tls-alpn" = [ "native-tls" "native-tls-crate?/alpn" "hyper-tls?/alpn" ]; "native-tls-vendored" = [ "native-tls" "native-tls-crate?/vendored" ]; "rustls-tls" = [ "rustls-tls-webpki-roots" ]; - "rustls-tls-manual-roots" = [ "__rustls" "__rustls-ring" ]; + "rustls-tls-manual-roots" = [ "rustls-tls-manual-roots-no-provider" "__rustls-ring" ]; "rustls-tls-manual-roots-no-provider" = [ "__rustls" ]; - "rustls-tls-native-roots" = [ "dep:rustls-native-certs" "hyper-rustls?/native-tokio" "__rustls" "__rustls-ring" ]; + "rustls-tls-native-roots" = [ "rustls-tls-native-roots-no-provider" "__rustls-ring" ]; + "rustls-tls-native-roots-no-provider" = [ "dep:rustls-native-certs" "hyper-rustls?/native-tokio" "__rustls" ]; "rustls-tls-no-provider" = [ "rustls-tls-manual-roots-no-provider" ]; - "rustls-tls-webpki-roots" = [ "dep:webpki-roots" "hyper-rustls?/webpki-tokio" "__rustls" "__rustls-ring" ]; - "socks" = [ "dep:tokio-socks" ]; - "stream" = [ "tokio/fs" "dep:tokio-util" "dep:wasm-streams" ]; - "zstd" = [ "dep:async-compression" "async-compression?/zstd" "dep:tokio-util" ]; + "rustls-tls-webpki-roots" = [ "rustls-tls-webpki-roots-no-provider" "__rustls-ring" ]; + "rustls-tls-webpki-roots-no-provider" = [ "dep:webpki-roots" "hyper-rustls?/webpki-tokio" "__rustls" ]; + "stream" = [ "tokio/fs" "dep:futures-util" "dep:tokio-util" "dep:wasm-streams" ]; + "system-proxy" = [ "hyper-util/client-proxy-system" ]; + "zstd" = [ "tower-http/decompression-zstd" ]; }; - resolvedDefaultFeatures = [ "__rustls" "__rustls-ring" "__tls" "blocking" "json" "rustls-tls" "rustls-tls-native-roots" "rustls-tls-webpki-roots" ]; + resolvedDefaultFeatures = [ "blocking" ]; }; - "ring" = rec { - crateName = "ring"; - version = "0.17.8"; + "reqwest 0.13.2" = rec { + crateName = "reqwest"; + version = "0.13.2"; edition = "2021"; - links = "ring_core_0_17_8"; - sha256 = "03fwlb1ssrmfxdckvqv033pfmk01rhx9ynwi7r186dcfcp5s8zy1"; + sha256 = "00d8xyrbcp0519rr9rhl685ymb6hi3lv0i2bca5lic9s53il6gxb"; authors = [ - "Brian Smith " + "Sean McArthur " ]; dependencies = [ { - name = "cfg-if"; - packageId = "cfg-if"; - usesDefaultFeatures = false; + name = "base64"; + packageId = "base64"; } { - name = "getrandom"; - packageId = "getrandom 0.2.15"; + name = "bytes"; + packageId = "bytes"; } { - name = "libc"; - packageId = "libc"; + name = "futures-core"; + packageId = "futures-core"; usesDefaultFeatures = false; - target = { target, features }: ((("android" == target."os" or null) || ("linux" == target."os" or null)) && (("aarch64" == target."arch" or null) || ("arm" == target."arch" or null))); } { - name = "spin"; - packageId = "spin"; - usesDefaultFeatures = false; - target = { target, features }: (("aarch64" == target."arch" or null) || ("arm" == target."arch" or null) || ("x86" == target."arch" or null) || ("x86_64" == target."arch" or null)); - features = [ "once" ]; + name = "http"; + packageId = "http"; } { - name = "untrusted"; - packageId = "untrusted"; + name = "http-body"; + packageId = "http-body"; + target = { target, features }: (!("wasm32" == target."arch" or null)); } { - name = "windows-sys"; - packageId = "windows-sys 0.52.0"; - target = { target, features }: (("aarch64" == target."arch" or null) && ("windows" == target."os" or null)); - features = [ "Win32_Foundation" "Win32_System_Threading" ]; + name = "http-body-util"; + packageId = "http-body-util"; + target = { target, features }: (!("wasm32" == target."arch" or null)); } - ]; - buildDependencies = [ { - name = "cc"; - packageId = "cc"; - usesDefaultFeatures = false; + name = "hyper"; + packageId = "hyper"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "http1" "client" ]; } - ]; - devDependencies = [ { - name = "libc"; - packageId = "libc"; + name = "hyper-rustls"; + packageId = "hyper-rustls"; + optional = true; usesDefaultFeatures = false; - target = {target, features}: ((target."unix" or false) || (target."windows" or false) || ("wasi" == target."os" or null)); + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "http1" "tls12" ]; } - ]; - features = { - "default" = [ "alloc" "dev_urandom_fallback" ]; - "std" = [ "alloc" ]; - "wasm32_unknown_unknown_js" = [ "getrandom/js" ]; - }; - resolvedDefaultFeatures = [ "alloc" "default" "dev_urandom_fallback" ]; - }; - "roff" = rec { - crateName = "roff"; - version = "0.2.2"; - edition = "2021"; - sha256 = "1wyqz6m0pm4p6wzhwhahvcidfm7nwb38zl4q7ha940pn3w66dy48"; - - }; - "rstest" = rec { - crateName = "rstest"; - version = "0.22.0"; - edition = "2021"; - sha256 = "0dlrn6y4z5xgsvf6ky3lrjwsxpvi13sizlkwnqs1gmmxc873yhkv"; - authors = [ - "Michele d'Amico " - ]; - dependencies = [ { - name = "futures"; - packageId = "futures"; - optional = true; + name = "hyper-util"; + packageId = "hyper-util"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "http1" "client" "client-legacy" "client-proxy" "tokio" ]; } { - name = "futures-timer"; - packageId = "futures-timer"; + name = "js-sys"; + packageId = "js-sys"; + target = { target, features }: ("wasm32" == target."arch" or null); + } + { + name = "log"; + packageId = "log"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "percent-encoding"; + packageId = "percent-encoding"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "pin-project-lite"; + packageId = "pin-project-lite"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "quinn"; + packageId = "quinn"; optional = true; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "runtime-tokio" ]; } { - name = "rstest_macros"; - packageId = "rstest_macros"; + name = "rustls"; + packageId = "rustls"; + optional = true; usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "std" "tls12" ]; } - ]; - buildDependencies = [ { - name = "rustc_version"; - packageId = "rustc_version"; + name = "rustls-pki-types"; + packageId = "rustls-pki-types"; + optional = true; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "std" ]; } - ]; - features = { - "async-timeout" = [ "dep:futures" "dep:futures-timer" "rstest_macros/async-timeout" ]; - "crate-name" = [ "rstest_macros/crate-name" ]; - "default" = [ "async-timeout" "crate-name" ]; - }; - resolvedDefaultFeatures = [ "async-timeout" "crate-name" "default" ]; - }; - "rstest_macros" = rec { - crateName = "rstest_macros"; - version = "0.22.0"; - edition = "2021"; - sha256 = "0hiba8l3d20ajkifd3kz5rzzpxsy311ca4c4ll94pxqlglg73qf5"; - procMacro = true; - authors = [ - "Michele d'Amico " - ]; - dependencies = [ { - name = "cfg-if"; - packageId = "cfg-if"; + name = "rustls-platform-verifier"; + packageId = "rustls-platform-verifier"; + optional = true; + target = { target, features }: (!("wasm32" == target."arch" or null)); } { - name = "glob"; - packageId = "glob"; + name = "serde"; + packageId = "serde"; + optional = true; } { - name = "proc-macro-crate"; - packageId = "proc-macro-crate"; + name = "serde_json"; + packageId = "serde_json"; optional = true; } { - name = "proc-macro2"; - packageId = "proc-macro2"; + name = "sync_wrapper"; + packageId = "sync_wrapper"; + features = [ "futures" ]; } { - name = "quote"; - packageId = "quote"; + name = "tokio"; + packageId = "tokio"; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "net" "time" ]; } { - name = "regex"; - packageId = "regex"; + name = "tokio-rustls"; + packageId = "tokio-rustls"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "tls12" ]; } { - name = "relative-path"; - packageId = "relative-path"; + name = "tower"; + packageId = "tower"; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "retry" "timeout" "util" ]; } { - name = "syn"; - packageId = "syn 2.0.87"; - features = [ "full" "parsing" "extra-traits" "visit" "visit-mut" ]; + name = "tower-http"; + packageId = "tower-http"; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "follow-redirect" ]; } { - name = "unicode-ident"; - packageId = "unicode-ident"; + name = "tower-service"; + packageId = "tower-service"; + target = { target, features }: (!("wasm32" == target."arch" or null)); } - ]; - buildDependencies = [ { - name = "rustc_version"; + name = "url"; + packageId = "url"; + } + { + name = "wasm-bindgen"; + packageId = "wasm-bindgen"; + target = { target, features }: ("wasm32" == target."arch" or null); + } + { + name = "wasm-bindgen-futures"; + packageId = "wasm-bindgen-futures"; + target = { target, features }: ("wasm32" == target."arch" or null); + } + { + name = "web-sys"; + packageId = "web-sys"; + target = { target, features }: ("wasm32" == target."arch" or null); + features = [ "AbortController" "AbortSignal" "Headers" "Request" "RequestInit" "RequestMode" "Response" "Window" "FormData" "Blob" "BlobPropertyBag" "ServiceWorkerGlobalScope" "RequestCredentials" "File" "ReadableStream" "RequestCache" ]; + } + ]; + devDependencies = [ + { + name = "hyper"; + packageId = "hyper"; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "http1" "http2" "client" "server" ]; + } + { + name = "hyper-util"; + packageId = "hyper-util"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "http1" "http2" "client" "client-legacy" "server-auto" "server-graceful" "tokio" ]; + } + { + name = "serde"; + packageId = "serde"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "derive" ]; + } + { + name = "tokio"; + packageId = "tokio"; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "macros" "rt-multi-thread" ]; + } + { + name = "tower"; + packageId = "tower"; + usesDefaultFeatures = false; + features = [ "limit" ]; + } + { + name = "wasm-bindgen"; + packageId = "wasm-bindgen"; + target = { target, features }: ("wasm32" == target."arch" or null); + features = [ "serde-serialize" ]; + } + ]; + features = { + "__native-tls" = [ "dep:hyper-tls" "dep:native-tls-crate" "__tls" "dep:tokio-native-tls" ]; + "__native-tls-alpn" = [ "native-tls-crate?/alpn" "hyper-tls?/alpn" ]; + "__rustls" = [ "dep:hyper-rustls" "dep:tokio-rustls" "dep:rustls" "__tls" ]; + "__rustls-aws-lc-rs" = [ "hyper-rustls?/aws-lc-rs" "tokio-rustls?/aws-lc-rs" "rustls?/aws-lc-rs" "quinn?/rustls-aws-lc-rs" ]; + "__tls" = [ "dep:rustls-pki-types" "tokio/io-util" ]; + "blocking" = [ "dep:futures-channel" "futures-channel?/sink" "dep:futures-util" "futures-util?/io" "futures-util?/sink" "tokio/sync" ]; + "brotli" = [ "tower-http/decompression-br" ]; + "charset" = [ "dep:encoding_rs" "dep:mime" ]; + "cookies" = [ "dep:cookie_crate" "dep:cookie_store" ]; + "default" = [ "default-tls" "charset" "http2" "system-proxy" ]; + "default-tls" = [ "rustls" ]; + "deflate" = [ "tower-http/decompression-deflate" ]; + "form" = [ "dep:serde" "dep:serde_urlencoded" ]; + "gzip" = [ "tower-http/decompression-gzip" ]; + "hickory-dns" = [ "dep:hickory-resolver" "dep:once_cell" ]; + "http2" = [ "dep:h2" "hyper/http2" "hyper-util/http2" "hyper-rustls?/http2" ]; + "http3" = [ "rustls" "dep:h3" "dep:h3-quinn" "dep:quinn" "tokio/macros" ]; + "json" = [ "dep:serde" "dep:serde_json" ]; + "multipart" = [ "dep:mime_guess" "dep:futures-util" ]; + "native-tls" = [ "__native-tls" "__native-tls-alpn" ]; + "native-tls-no-alpn" = [ "__native-tls" ]; + "native-tls-vendored" = [ "__native-tls" "native-tls-crate?/vendored" "__native-tls-alpn" ]; + "native-tls-vendored-no-alpn" = [ "__native-tls" "native-tls-crate?/vendored" ]; + "query" = [ "dep:serde" "dep:serde_urlencoded" ]; + "rustls" = [ "__rustls-aws-lc-rs" "dep:rustls-platform-verifier" "__rustls" ]; + "rustls-no-provider" = [ "dep:rustls-platform-verifier" "__rustls" ]; + "stream" = [ "tokio/fs" "dep:futures-util" "dep:tokio-util" "dep:wasm-streams" ]; + "system-proxy" = [ "hyper-util/client-proxy-system" ]; + "zstd" = [ "tower-http/decompression-zstd" ]; + }; + resolvedDefaultFeatures = [ "__rustls" "__rustls-aws-lc-rs" "__tls" "json" "rustls" ]; + }; + "ring" = rec { + crateName = "ring"; + version = "0.17.14"; + edition = "2021"; + links = "ring_core_0_17_14_"; + sha256 = "1dw32gv19ccq4hsx3ribhpdzri1vnrlcfqb2vj41xn4l49n9ws54"; + dependencies = [ + { + name = "cfg-if"; + packageId = "cfg-if"; + usesDefaultFeatures = false; + } + { + name = "getrandom"; + packageId = "getrandom 0.2.17"; + } + { + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; + target = { target, features }: ((("aarch64" == target."arch" or null) && ("little" == target."endian" or null)) && ("apple" == target."vendor" or null) && (("ios" == target."os" or null) || ("macos" == target."os" or null) || ("tvos" == target."os" or null) || ("visionos" == target."os" or null) || ("watchos" == target."os" or null))); + } + { + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; + target = { target, features }: (((("aarch64" == target."arch" or null) && ("little" == target."endian" or null)) || (("arm" == target."arch" or null) && ("little" == target."endian" or null))) && (("android" == target."os" or null) || ("linux" == target."os" or null))); + } + { + name = "untrusted"; + packageId = "untrusted"; + } + { + name = "windows-sys"; + packageId = "windows-sys 0.52.0"; + target = { target, features }: ((("aarch64" == target."arch" or null) && ("little" == target."endian" or null)) && ("windows" == target."os" or null)); + features = [ "Win32_Foundation" "Win32_System_Threading" ]; + } + ]; + buildDependencies = [ + { + name = "cc"; + packageId = "cc"; + usesDefaultFeatures = false; + } + ]; + devDependencies = [ + { + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; + target = { target, features }: ((target."unix" or false) || (target."windows" or false) || ("wasi" == target."os" or null)); + } + ]; + features = { + "default" = [ "alloc" "dev_urandom_fallback" ]; + "std" = [ "alloc" ]; + "wasm32_unknown_unknown_js" = [ "getrandom/js" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "dev_urandom_fallback" "wasm32_unknown_unknown_js" ]; + }; + "roff" = rec { + crateName = "roff"; + version = "1.1.1"; + edition = "2024"; + sha256 = "12c1pibjxdjai80hpalxgqkzn30316x49iry4rdscrcn3mz42g1j"; + + }; + "rstest" = rec { + crateName = "rstest"; + version = "0.26.1"; + edition = "2021"; + sha256 = "0jcxhg9mxlr2p9an14algbcq6ax7r0sk1w1kbals5aiv0qy1k8zm"; + authors = [ + "Michele d'Amico " + ]; + dependencies = [ + { + name = "futures-timer"; + packageId = "futures-timer"; + optional = true; + } + { + name = "futures-util"; + packageId = "futures-util"; + optional = true; + } + { + name = "rstest_macros"; + packageId = "rstest_macros"; + usesDefaultFeatures = false; + } + ]; + features = { + "async-timeout" = [ "dep:futures-timer" "dep:futures-util" "rstest_macros/async-timeout" ]; + "crate-name" = [ "rstest_macros/crate-name" ]; + "default" = [ "async-timeout" "crate-name" ]; + }; + resolvedDefaultFeatures = [ "async-timeout" "crate-name" "default" ]; + }; + "rstest_macros" = rec { + crateName = "rstest_macros"; + version = "0.26.1"; + edition = "2021"; + sha256 = "185v185wn2x3llp3nn1i7h44vi5ffnnsj8b1a32m2ygzy08m714w"; + procMacro = true; + authors = [ + "Michele d'Amico " + ]; + dependencies = [ + { + name = "cfg-if"; + packageId = "cfg-if"; + } + { + name = "glob"; + packageId = "glob"; + } + { + name = "proc-macro-crate"; + packageId = "proc-macro-crate"; + optional = true; + } + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "regex"; + packageId = "regex"; + } + { + name = "relative-path"; + packageId = "relative-path"; + } + { + name = "syn"; + packageId = "syn 2.0.117"; + features = [ "full" "parsing" "extra-traits" "visit" "visit-mut" ]; + } + { + name = "unicode-ident"; + packageId = "unicode-ident"; + } + ]; + buildDependencies = [ + { + name = "rustc_version"; packageId = "rustc_version"; } ]; @@ -9255,12 +9975,12 @@ rec { }; "rust-embed" = rec { crateName = "rust-embed"; - version = "8.5.0"; + version = "8.11.0"; edition = "2018"; - sha256 = "1h2k15ajsq9x70l11h61m4wlg8qias4mw4bg4yy7wpnx9x5ayrps"; + sha256 = "09wdk33zavfn2w3id20jidywvf4abfjg1wbfy21psdss6nwkq484"; libName = "rust_embed"; authors = [ - "pyros2097 " + "pyrossh" ]; dependencies = [ { @@ -9283,6 +10003,7 @@ rec { "axum-ex" = [ "axum" "tokio" "mime_guess" ]; "compression" = [ "rust-embed-impl/compression" "include-flate" ]; "debug-embed" = [ "rust-embed-impl/debug-embed" "rust-embed-utils/debug-embed" ]; + "deterministic-timestamps" = [ "rust-embed-impl/deterministic-timestamps" ]; "hex" = [ "dep:hex" ]; "include-exclude" = [ "rust-embed-impl/include-exclude" "rust-embed-utils/include-exclude" ]; "include-flate" = [ "dep:include-flate" ]; @@ -9301,13 +10022,13 @@ rec { }; "rust-embed-impl" = rec { crateName = "rust-embed-impl"; - version = "8.5.0"; + version = "8.11.0"; edition = "2018"; - sha256 = "0y0lfrvpqnh98lngf6z6crjwkhp9yhvl2ac7xig14lbrhv4dn9b1"; + sha256 = "1ancyg87vx07w5m39538bwvj3hlizk8fd15kk8argsf8qzj042fs"; procMacro = true; libName = "rust_embed_impl"; authors = [ - "pyros2097 " + "pyrossh" ]; dependencies = [ { @@ -9324,7 +10045,7 @@ rec { } { name = "syn"; - packageId = "syn 2.0.87"; + packageId = "syn 2.0.117"; usesDefaultFeatures = false; features = [ "derive" "parsing" "proc-macro" "printing" ]; } @@ -9342,12 +10063,12 @@ rec { }; "rust-embed-utils" = rec { crateName = "rust-embed-utils"; - version = "8.5.0"; + version = "8.11.0"; edition = "2018"; - sha256 = "17aj29y2xis2fhp4i1wyf0xqm6ljhn3z5qdh75hbbb4sgrvlflrf"; + sha256 = "1cf3wmwdivxqzizav813y42ln9r9jya3q1xi6finyzzywq5yzkav"; libName = "rust_embed_utils"; authors = [ - "pyros2097 " + "pyrossh" ]; dependencies = [ { @@ -9366,40 +10087,11 @@ rec { "mime_guess" = [ "dep:mime_guess" ]; }; }; - "rustc-demangle" = rec { - crateName = "rustc-demangle"; - version = "0.1.24"; - edition = "2015"; - sha256 = "07zysaafgrkzy2rjgwqdj2a8qdpsm6zv6f5pgpk9x0lm40z9b6vi"; - libName = "rustc_demangle"; - authors = [ - "Alex Crichton " - ]; - features = { - "compiler_builtins" = [ "dep:compiler_builtins" ]; - "core" = [ "dep:core" ]; - "rustc-dep-of-std" = [ "core" "compiler_builtins" ]; - }; - }; - "rustc-hash 1.1.0" = rec { - crateName = "rustc-hash"; - version = "1.1.0"; - edition = "2015"; - sha256 = "1qkc5khrmv5pqi5l5ca9p5nl5hs742cagrndhbrlk3dhlrx3zm08"; - libName = "rustc_hash"; - authors = [ - "The Rust Project Developers" - ]; - features = { - "default" = [ "std" ]; - }; - resolvedDefaultFeatures = [ "default" "std" ]; - }; - "rustc-hash 2.0.0" = rec { + "rustc-hash" = rec { crateName = "rustc-hash"; - version = "2.0.0"; + version = "2.1.2"; edition = "2021"; - sha256 = "0lni0lf846bzrf3jvci6jaf4142n1mdqxvcpczk5ch9pfgyk8c2q"; + sha256 = "1gjdc5bw9982cj176jvgz9rrqf9xvr1q1ddpzywf5qhs7yzhlc4l"; libName = "rustc_hash"; authors = [ "The Rust Project Developers" @@ -9425,9 +10117,9 @@ rec { }; "rustix" = rec { crateName = "rustix"; - version = "0.38.35"; + version = "1.1.4"; edition = "2021"; - sha256 = "0vy38cpprg64i6kfwz0w5hj2lqgliyimnx6vmplninir499m0pd8"; + sha256 = "14511f9yjqh0ix07xjrjpllah3325774gfwi9zpq72sip5jlbzmn"; authors = [ "Dan Gohman " "Jakub Konka " @@ -9435,7 +10127,7 @@ rec { dependencies = [ { name = "bitflags"; - packageId = "bitflags 2.6.0"; + packageId = "bitflags"; usesDefaultFeatures = false; } { @@ -9444,14 +10136,14 @@ rec { rename = "libc_errno"; optional = true; usesDefaultFeatures = false; - target = { target, features }: ((!(target."rustix_use_libc" or false)) && (!(target."miri" or false)) && ("linux" == target."os" or null) && ("little" == target."endian" or null) && (("arm" == target."arch" or null) || (("aarch64" == target."arch" or null) && ("64" == target."pointer_width" or null)) || ("riscv64" == target."arch" or null) || ((target."rustix_use_experimental_asm" or false) && ("powerpc64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips32r6" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64r6" == target."arch" or null)) || ("x86" == target."arch" or null) || (("x86_64" == target."arch" or null) && ("64" == target."pointer_width" or null)))); + target = { target, features }: ((!(target."rustix_use_libc" or false)) && (!(target."miri" or false)) && ("linux" == target."os" or null) && (("little" == target."endian" or null) || (("s390x" == target."arch" or null) || ("powerpc" == target."arch" or null))) && (("arm" == target."arch" or null) || (("aarch64" == target."arch" or null) && ("64" == target."pointer_width" or null)) || ("riscv64" == target."arch" or null) || ((target."rustix_use_experimental_asm" or false) && ("powerpc" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("powerpc64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("s390x" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips32r6" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64r6" == target."arch" or null)) || ("x86" == target."arch" or null) || (("x86_64" == target."arch" or null) && ("64" == target."pointer_width" or null)))); } { name = "errno"; packageId = "errno"; rename = "libc_errno"; usesDefaultFeatures = false; - target = { target, features }: ((!(target."windows" or false)) && ((target."rustix_use_libc" or false) || (target."miri" or false) || (!(("linux" == target."os" or null) && ("little" == target."endian" or null) && (("arm" == target."arch" or null) || (("aarch64" == target."arch" or null) && ("64" == target."pointer_width" or null)) || ("riscv64" == target."arch" or null) || ((target."rustix_use_experimental_asm" or false) && ("powerpc64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips32r6" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64r6" == target."arch" or null)) || ("x86" == target."arch" or null) || (("x86_64" == target."arch" or null) && ("64" == target."pointer_width" or null))))))); + target = { target, features }: ((!(target."windows" or false)) && ((target."rustix_use_libc" or false) || (target."miri" or false) || (!(("linux" == target."os" or null) && (("little" == target."endian" or null) || (("s390x" == target."arch" or null) || ("powerpc" == target."arch" or null))) && (("arm" == target."arch" or null) || (("aarch64" == target."arch" or null) && ("64" == target."pointer_width" or null)) || ("riscv64" == target."arch" or null) || ((target."rustix_use_experimental_asm" or false) && ("powerpc" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("powerpc64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("s390x" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips32r6" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64r6" == target."arch" or null)) || ("x86" == target."arch" or null) || (("x86_64" == target."arch" or null) && ("64" == target."pointer_width" or null))))))); } { name = "errno"; @@ -9465,33 +10157,33 @@ rec { packageId = "libc"; optional = true; usesDefaultFeatures = false; - target = { target, features }: ((!(target."rustix_use_libc" or false)) && (!(target."miri" or false)) && ("linux" == target."os" or null) && ("little" == target."endian" or null) && (("arm" == target."arch" or null) || (("aarch64" == target."arch" or null) && ("64" == target."pointer_width" or null)) || ("riscv64" == target."arch" or null) || ((target."rustix_use_experimental_asm" or false) && ("powerpc64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips32r6" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64r6" == target."arch" or null)) || ("x86" == target."arch" or null) || (("x86_64" == target."arch" or null) && ("64" == target."pointer_width" or null)))); + target = { target, features }: ((!(target."rustix_use_libc" or false)) && (!(target."miri" or false)) && ("linux" == target."os" or null) && (("little" == target."endian" or null) || (("s390x" == target."arch" or null) || ("powerpc" == target."arch" or null))) && (("arm" == target."arch" or null) || (("aarch64" == target."arch" or null) && ("64" == target."pointer_width" or null)) || ("riscv64" == target."arch" or null) || ((target."rustix_use_experimental_asm" or false) && ("powerpc" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("powerpc64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("s390x" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips32r6" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64r6" == target."arch" or null)) || ("x86" == target."arch" or null) || (("x86_64" == target."arch" or null) && ("64" == target."pointer_width" or null)))); } { name = "libc"; packageId = "libc"; usesDefaultFeatures = false; - target = { target, features }: ((!(target."windows" or false)) && ((target."rustix_use_libc" or false) || (target."miri" or false) || (!(("linux" == target."os" or null) && ("little" == target."endian" or null) && (("arm" == target."arch" or null) || (("aarch64" == target."arch" or null) && ("64" == target."pointer_width" or null)) || ("riscv64" == target."arch" or null) || ((target."rustix_use_experimental_asm" or false) && ("powerpc64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips32r6" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64r6" == target."arch" or null)) || ("x86" == target."arch" or null) || (("x86_64" == target."arch" or null) && ("64" == target."pointer_width" or null))))))); + target = { target, features }: ((!(target."windows" or false)) && ((target."rustix_use_libc" or false) || (target."miri" or false) || (!(("linux" == target."os" or null) && (("little" == target."endian" or null) || (("s390x" == target."arch" or null) || ("powerpc" == target."arch" or null))) && (("arm" == target."arch" or null) || (("aarch64" == target."arch" or null) && ("64" == target."pointer_width" or null)) || ("riscv64" == target."arch" or null) || ((target."rustix_use_experimental_asm" or false) && ("powerpc" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("powerpc64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("s390x" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips32r6" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64r6" == target."arch" or null)) || ("x86" == target."arch" or null) || (("x86_64" == target."arch" or null) && ("64" == target."pointer_width" or null))))))); } { name = "linux-raw-sys"; packageId = "linux-raw-sys"; usesDefaultFeatures = false; - target = { target, features }: ((("android" == target."os" or null) || ("linux" == target."os" or null)) && ((target."rustix_use_libc" or false) || (target."miri" or false) || (!(("linux" == target."os" or null) && ("little" == target."endian" or null) && (("arm" == target."arch" or null) || (("aarch64" == target."arch" or null) && ("64" == target."pointer_width" or null)) || ("riscv64" == target."arch" or null) || ((target."rustix_use_experimental_asm" or false) && ("powerpc64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips32r6" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64r6" == target."arch" or null)) || ("x86" == target."arch" or null) || (("x86_64" == target."arch" or null) && ("64" == target."pointer_width" or null))))))); + target = { target, features }: ((("linux" == target."os" or null) || ("android" == target."os" or null)) && ((target."rustix_use_libc" or false) || (target."miri" or false) || (!(("linux" == target."os" or null) && (("little" == target."endian" or null) || (("s390x" == target."arch" or null) || ("powerpc" == target."arch" or null))) && (("arm" == target."arch" or null) || (("aarch64" == target."arch" or null) && ("64" == target."pointer_width" or null)) || ("riscv64" == target."arch" or null) || ((target."rustix_use_experimental_asm" or false) && ("powerpc" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("powerpc64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("s390x" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips32r6" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64r6" == target."arch" or null)) || ("x86" == target."arch" or null) || (("x86_64" == target."arch" or null) && ("64" == target."pointer_width" or null))))))); features = [ "general" "ioctl" "no_std" ]; } { name = "linux-raw-sys"; packageId = "linux-raw-sys"; usesDefaultFeatures = false; - target = { target, features }: ((!(target."rustix_use_libc" or false)) && (!(target."miri" or false)) && ("linux" == target."os" or null) && ("little" == target."endian" or null) && (("arm" == target."arch" or null) || (("aarch64" == target."arch" or null) && ("64" == target."pointer_width" or null)) || ("riscv64" == target."arch" or null) || ((target."rustix_use_experimental_asm" or false) && ("powerpc64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips32r6" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64r6" == target."arch" or null)) || ("x86" == target."arch" or null) || (("x86_64" == target."arch" or null) && ("64" == target."pointer_width" or null)))); - features = [ "general" "errno" "ioctl" "no_std" "elf" ]; + target = { target, features }: ((!(target."rustix_use_libc" or false)) && (!(target."miri" or false)) && ("linux" == target."os" or null) && (("little" == target."endian" or null) || (("s390x" == target."arch" or null) || ("powerpc" == target."arch" or null))) && (("arm" == target."arch" or null) || (("aarch64" == target."arch" or null) && ("64" == target."pointer_width" or null)) || ("riscv64" == target."arch" or null) || ((target."rustix_use_experimental_asm" or false) && ("powerpc" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("powerpc64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("s390x" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips32r6" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64r6" == target."arch" or null)) || ("x86" == target."arch" or null) || (("x86_64" == target."arch" or null) && ("64" == target."pointer_width" or null)))); + features = [ "auxvec" "general" "errno" "ioctl" "no_std" "elf" ]; } { name = "windows-sys"; - packageId = "windows-sys 0.52.0"; + packageId = "windows-sys 0.61.2"; target = { target, features }: (target."windows" or false); - features = [ "Win32_Foundation" "Win32_Networking_WinSock" "Win32_NetworkManagement_IpHelper" "Win32_System_Threading" ]; + features = [ "Win32_Foundation" "Win32_Networking_WinSock" ]; } ]; devDependencies = [ @@ -9507,39 +10199,41 @@ rec { } ]; features = { - "all-apis" = [ "event" "fs" "io_uring" "mm" "mount" "net" "param" "pipe" "process" "procfs" "pty" "rand" "runtime" "shm" "stdio" "system" "termios" "thread" "time" ]; - "compiler_builtins" = [ "dep:compiler_builtins" ]; + "all-apis" = [ "event" "fs" "io_uring" "mm" "mount" "net" "param" "pipe" "process" "pty" "rand" "runtime" "shm" "stdio" "system" "termios" "thread" "time" ]; "core" = [ "dep:core" ]; - "default" = [ "std" "use-libc-auxv" ]; - "io_uring" = [ "event" "fs" "net" "linux-raw-sys/io_uring" ]; - "itoa" = [ "dep:itoa" ]; + "default" = [ "std" ]; + "io_uring" = [ "event" "fs" "net" "thread" "linux-raw-sys/io_uring" ]; "libc" = [ "dep:libc" ]; - "libc-extra-traits" = [ "libc?/extra_traits" ]; "libc_errno" = [ "dep:libc_errno" ]; - "linux_latest" = [ "linux_4_11" ]; + "linux_5_1" = [ "linux_4_11" ]; + "linux_5_11" = [ "linux_5_1" ]; + "linux_latest" = [ "linux_5_11" ]; "net" = [ "linux-raw-sys/net" "linux-raw-sys/netlink" "linux-raw-sys/if_ether" "linux-raw-sys/xdp" ]; - "once_cell" = [ "dep:once_cell" ]; - "param" = [ "fs" ]; "process" = [ "linux-raw-sys/prctl" ]; - "procfs" = [ "once_cell" "itoa" "fs" ]; - "pty" = [ "itoa" "fs" ]; + "pty" = [ "fs" ]; "runtime" = [ "linux-raw-sys/prctl" ]; - "rustc-dep-of-std" = [ "core" "rustc-std-workspace-alloc" "compiler_builtins" "linux-raw-sys/rustc-dep-of-std" "bitflags/rustc-dep-of-std" "compiler_builtins?/rustc-dep-of-std" ]; + "rustc-dep-of-std" = [ "core" "rustc-std-workspace-alloc" "linux-raw-sys/rustc-dep-of-std" "bitflags/rustc-dep-of-std" ]; "rustc-std-workspace-alloc" = [ "dep:rustc-std-workspace-alloc" ]; "shm" = [ "fs" ]; - "std" = [ "bitflags/std" "alloc" "libc?/std" "libc_errno?/std" "libc-extra-traits" ]; + "std" = [ "bitflags/std" "alloc" "libc?/std" "libc_errno?/std" ]; "system" = [ "linux-raw-sys/system" ]; "thread" = [ "linux-raw-sys/prctl" ]; - "use-libc" = [ "libc_errno" "libc" "libc-extra-traits" ]; + "use-libc" = [ "libc_errno" "libc" ]; }; - resolvedDefaultFeatures = [ "alloc" "fs" "libc-extra-traits" "std" ]; + resolvedDefaultFeatures = [ "alloc" "default" "fs" "std" "stdio" "termios" ]; }; "rustls" = rec { crateName = "rustls"; - version = "0.23.25"; + version = "0.23.37"; edition = "2021"; - sha256 = "0g5idwxm04i71k3n66ml30zyfbgv6p85a7jky2i09v64i8cfjbl2"; + sha256 = "193k5h0wcih6ghvkrxyzwncivr1bd3a8yw3lzp13pzfcbz5jb03m"; dependencies = [ + { + name = "aws-lc-rs"; + packageId = "aws-lc-rs"; + optional = true; + usesDefaultFeatures = false; + } { name = "log"; packageId = "log"; @@ -9589,7 +10283,7 @@ rec { "aws-lc-rs" = [ "aws_lc_rs" ]; "aws_lc_rs" = [ "dep:aws-lc-rs" "webpki/aws-lc-rs" "aws-lc-rs/aws-lc-sys" "aws-lc-rs/prebuilt-nasm" ]; "brotli" = [ "dep:brotli" "dep:brotli-decompressor" "std" ]; - "default" = [ "aws_lc_rs" "logging" "std" "tls12" ]; + "default" = [ "aws_lc_rs" "logging" "prefer-post-quantum" "std" "tls12" ]; "fips" = [ "aws_lc_rs" "aws-lc-rs?/fips" "webpki/aws-lc-rs-fips" ]; "hashbrown" = [ "dep:hashbrown" ]; "log" = [ "dep:log" ]; @@ -9601,13 +10295,13 @@ rec { "std" = [ "webpki/std" "pki-types/std" "once_cell/std" ]; "zlib" = [ "dep:zlib-rs" ]; }; - resolvedDefaultFeatures = [ "log" "logging" "ring" "std" "tls12" ]; + resolvedDefaultFeatures = [ "aws-lc-rs" "aws_lc_rs" "default" "log" "logging" "prefer-post-quantum" "ring" "std" "tls12" ]; }; "rustls-native-certs" = rec { crateName = "rustls-native-certs"; - version = "0.7.3"; + version = "0.8.3"; edition = "2021"; - sha256 = "1r9ib5gwkfci2wbqnbh44nigvrfgxs4n1x89js82w97dxsab7gz5"; + sha256 = "0qrajg2n90bcr3bcq6j95gjm7a9lirfkkdmjj32419dyyzan0931"; libName = "rustls_native_certs"; dependencies = [ { @@ -9615,14 +10309,11 @@ rec { packageId = "openssl-probe"; target = { target, features }: ((target."unix" or false) && (!("macos" == target."os" or null))); } - { - name = "rustls-pemfile"; - packageId = "rustls-pemfile"; - } { name = "rustls-pki-types"; packageId = "rustls-pki-types"; rename = "pki-types"; + features = [ "std" ]; } { name = "schannel"; @@ -9637,52 +10328,180 @@ rec { ]; }; - "rustls-pemfile" = rec { - crateName = "rustls-pemfile"; - version = "2.1.3"; - edition = "2018"; - sha256 = "09bl873pkibmb2da49kkbm9jlagscjvzrv257q6k01p101my2vqr"; - libName = "rustls_pemfile"; + "rustls-pki-types" = rec { + crateName = "rustls-pki-types"; + version = "1.14.0"; + edition = "2021"; + sha256 = "1p9zsgslvwzzkzhm6bqicffqndr4jpx67992b0vl0pi21a5hy15y"; + libName = "rustls_pki_types"; dependencies = [ { - name = "base64"; - packageId = "base64 0.22.1"; - usesDefaultFeatures = false; - features = [ "alloc" ]; + name = "web-time"; + packageId = "web-time"; + optional = true; + target = { target, features }: ((builtins.elem "wasm" target."family") && ("unknown" == target."os" or null)); } { - name = "rustls-pki-types"; - packageId = "rustls-pki-types"; - rename = "pki-types"; + name = "zeroize"; + packageId = "zeroize"; + optional = true; } ]; features = { - "default" = [ "std" ]; - "std" = [ "base64/std" ]; + "alloc" = [ "dep:zeroize" ]; + "default" = [ "alloc" ]; + "std" = [ "alloc" ]; + "web" = [ "web-time" ]; + "web-time" = [ "dep:web-time" ]; }; - resolvedDefaultFeatures = [ "default" "std" ]; + resolvedDefaultFeatures = [ "alloc" "default" "std" "web" "web-time" ]; }; - "rustls-pki-types" = rec { - crateName = "rustls-pki-types"; - version = "1.11.0"; + "rustls-platform-verifier" = rec { + crateName = "rustls-platform-verifier"; + version = "0.6.2"; edition = "2021"; - sha256 = "0755isc0x5iymm3wsn59s0ad1pm9zidw7p34qfqlsjsac9jf4z4i"; - libName = "rustls_pki_types"; + sha256 = "110pqkn3px9115pb6h6a23cq738v29gbp559dfvpmbibqzmzx68x"; + libName = "rustls_platform_verifier"; + dependencies = [ + { + name = "core-foundation"; + packageId = "core-foundation"; + target = { target, features }: (("apple" == target."vendor" or null)); + } + { + name = "core-foundation-sys"; + packageId = "core-foundation-sys"; + target = { target, features }: (("apple" == target."vendor" or null)); + } + { + name = "jni"; + packageId = "jni"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "jni"; + packageId = "jni"; + usesDefaultFeatures = false; + target = { target, features }: ("android" == target."os" or null); + } + { + name = "log"; + packageId = "log"; + } + { + name = "once_cell"; + packageId = "once_cell"; + optional = true; + } + { + name = "once_cell"; + packageId = "once_cell"; + target = { target, features }: ("android" == target."os" or null); + } + { + name = "rustls"; + packageId = "rustls"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "rustls-native-certs"; + packageId = "rustls-native-certs"; + target = { target, features }: ((target."unix" or false) && (!("android" == target."os" or null)) && (!("apple" == target."vendor" or null)) && (!("wasm32" == target."arch" or null))); + } + { + name = "rustls-platform-verifier-android"; + packageId = "rustls-platform-verifier-android"; + target = { target, features }: ("android" == target."os" or null); + } + { + name = "rustls-webpki"; + packageId = "rustls-webpki"; + rename = "webpki"; + usesDefaultFeatures = false; + target = { target, features }: ((target."unix" or false) && (!("android" == target."os" or null)) && (!("apple" == target."vendor" or null)) && (!("wasm32" == target."arch" or null))); + } + { + name = "rustls-webpki"; + packageId = "rustls-webpki"; + rename = "webpki"; + usesDefaultFeatures = false; + target = { target, features }: ("wasm32" == target."arch" or null); + } + { + name = "rustls-webpki"; + packageId = "rustls-webpki"; + rename = "webpki"; + usesDefaultFeatures = false; + target = { target, features }: ("android" == target."os" or null); + } + { + name = "security-framework"; + packageId = "security-framework"; + target = { target, features }: (("apple" == target."vendor" or null)); + } + { + name = "security-framework-sys"; + packageId = "security-framework-sys"; + target = { target, features }: (("apple" == target."vendor" or null)); + } + { + name = "webpki-root-certs"; + packageId = "webpki-root-certs"; + target = { target, features }: ("wasm32" == target."arch" or null); + } + { + name = "windows-sys"; + packageId = "windows-sys 0.61.2"; + usesDefaultFeatures = false; + target = { target, features }: (target."windows" or false); + features = [ "Win32_Foundation" "Win32_Security_Cryptography" ]; + } + ]; + devDependencies = [ + { + name = "rustls"; + packageId = "rustls"; + usesDefaultFeatures = false; + features = [ "ring" ]; + } + { + name = "webpki-root-certs"; + packageId = "webpki-root-certs"; + } + ]; features = { - "default" = [ "alloc" ]; - "std" = [ "alloc" ]; - "web" = [ "web-time" ]; - "web-time" = [ "dep:web-time" ]; + "android_logger" = [ "dep:android_logger" ]; + "base64" = [ "dep:base64" ]; + "cert-logging" = [ "base64" ]; + "docsrs" = [ "jni" "once_cell" ]; + "ffi-testing" = [ "android_logger" "rustls/ring" ]; + "jni" = [ "dep:jni" ]; + "once_cell" = [ "dep:once_cell" ]; }; - resolvedDefaultFeatures = [ "alloc" "default" "std" ]; + }; + "rustls-platform-verifier-android" = rec { + crateName = "rustls-platform-verifier-android"; + version = "0.1.1"; + edition = "2021"; + sha256 = "13vq6sxsgz9547xm2zbdxiw8x7ad1g8n8ax6xvxsjqszk7q6awgq"; + libName = "rustls_platform_verifier_android"; + }; "rustls-webpki" = rec { crateName = "rustls-webpki"; - version = "0.103.1"; + version = "0.103.13"; edition = "2021"; - sha256 = "00rcdz0rb9ia2ivrq7412ry9qkvbh78pra2phl4p7kxck9vbiy7y"; + sha256 = "0vkm7z9pnxz5qz66p2kmyy2pwx0g4jnsbqk5xzfhs4czcjl2ki31"; libName = "webpki"; dependencies = [ + { + name = "aws-lc-rs"; + packageId = "aws-lc-rs"; + optional = true; + usesDefaultFeatures = false; + } { name = "ring"; packageId = "ring"; @@ -9704,17 +10523,18 @@ rec { "alloc" = [ "ring?/alloc" "pki-types/alloc" ]; "aws-lc-rs" = [ "dep:aws-lc-rs" "aws-lc-rs/aws-lc-sys" "aws-lc-rs/prebuilt-nasm" ]; "aws-lc-rs-fips" = [ "dep:aws-lc-rs" "aws-lc-rs/fips" ]; + "aws-lc-rs-unstable" = [ "aws-lc-rs" "aws-lc-rs/unstable" ]; "default" = [ "std" ]; "ring" = [ "dep:ring" ]; "std" = [ "alloc" "pki-types/std" ]; }; - resolvedDefaultFeatures = [ "alloc" "ring" "std" ]; + resolvedDefaultFeatures = [ "alloc" "aws-lc-rs" "ring" "std" ]; }; "rustversion" = rec { crateName = "rustversion"; - version = "1.0.17"; + version = "1.0.22"; edition = "2018"; - sha256 = "1mm3fckyvb0l2209in1n2k05sws5d9mpkszbnwhq3pkq8apjhpcm"; + sha256 = "0vfl70jhv72scd9rfqgr2n11m5i9l1acnk684m2w83w0zbqdx75k"; procMacro = true; build = "build/build.rs"; authors = [ @@ -9724,9 +10544,9 @@ rec { }; "ryu" = rec { crateName = "ryu"; - version = "1.0.18"; - edition = "2018"; - sha256 = "17xx2s8j1lln7iackzd9p0sv546vjq71i779gphjq923vjh5pjzk"; + version = "1.0.23"; + edition = "2021"; + sha256 = "0zs70sg00l2fb9jwrf6cbkdyscjs53anrvai2hf7npyyfi5blx4p"; authors = [ "David Tolnay " ]; @@ -9754,9 +10574,9 @@ rec { }; "schannel" = rec { crateName = "schannel"; - version = "0.1.23"; + version = "0.1.29"; edition = "2018"; - sha256 = "0d1m156bsjrws6xzzr1wyfyih9i22mb2csb5pc5kmkrvci2ibjgv"; + sha256 = "0ffrzz5vf2s3gnzvphgb5gg8fqifvryl07qcf7q3x1scj3jbghci"; authors = [ "Steven Fackler " "Steffen Butzer " @@ -9764,14 +10584,14 @@ rec { dependencies = [ { name = "windows-sys"; - packageId = "windows-sys 0.52.0"; - features = [ "Win32_Foundation" "Win32_Security_Cryptography" "Win32_Security_Authentication_Identity" "Win32_Security_Credentials" "Win32_System_Memory" ]; + packageId = "windows-sys 0.61.2"; + features = [ "Win32_Foundation" "Win32_Security_Cryptography" "Win32_Security_Authentication_Identity" "Win32_Security_Credentials" "Win32_System_LibraryLoader" "Win32_System_Memory" "Win32_System_SystemInformation" ]; } ]; devDependencies = [ { name = "windows-sys"; - packageId = "windows-sys 0.52.0"; + packageId = "windows-sys 0.61.2"; features = [ "Win32_System_SystemInformation" "Win32_System_Time" ]; } ]; @@ -9779,9 +10599,9 @@ rec { }; "schemars" = rec { crateName = "schemars"; - version = "0.8.22"; + version = "1.2.1"; edition = "2021"; - sha256 = "05an9nbi18ynyxv1rjmwbg6j08j0496hd64mjggh53mwp3hjmgrz"; + sha256 = "1k16qzpdpy6p9hrh18q2l6cwawxzyqi25f8masa13l0wm8v2zd52"; authors = [ "Graham Esau " ]; @@ -9790,6 +10610,10 @@ rec { name = "dyn-clone"; packageId = "dyn-clone"; } + { + name = "ref-cast"; + packageId = "ref-cast"; + } { name = "schemars_derive"; packageId = "schemars_derive"; @@ -9798,56 +10622,65 @@ rec { { name = "serde"; packageId = "serde"; - features = [ "derive" ]; + usesDefaultFeatures = false; + features = [ "alloc" ]; } { name = "serde_json"; packageId = "serde_json"; + usesDefaultFeatures = false; + features = [ "alloc" ]; } { name = "url"; packageId = "url"; + rename = "url2"; optional = true; usesDefaultFeatures = false; } ]; + devDependencies = [ + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "url"; + packageId = "url"; + rename = "url2"; + usesDefaultFeatures = false; + features = [ "serde" "std" ]; + } + ]; features = { - "arrayvec" = [ "arrayvec05" ]; - "arrayvec05" = [ "dep:arrayvec05" ]; "arrayvec07" = [ "dep:arrayvec07" ]; - "bigdecimal" = [ "bigdecimal03" ]; - "bigdecimal03" = [ "dep:bigdecimal03" ]; "bigdecimal04" = [ "dep:bigdecimal04" ]; - "bytes" = [ "dep:bytes" ]; - "chrono" = [ "dep:chrono" ]; - "default" = [ "derive" ]; + "bytes1" = [ "dep:bytes1" ]; + "chrono04" = [ "dep:chrono04" ]; + "default" = [ "derive" "std" ]; "derive" = [ "schemars_derive" ]; - "derive_json_schema" = [ "impl_json_schema" ]; - "either" = [ "dep:either" ]; - "enumset" = [ "dep:enumset" ]; - "impl_json_schema" = [ "derive" ]; - "indexmap" = [ "dep:indexmap" ]; - "indexmap1" = [ "indexmap" ]; + "either1" = [ "dep:either1" ]; "indexmap2" = [ "dep:indexmap2" ]; - "preserve_order" = [ "indexmap" ]; + "jiff02" = [ "dep:jiff02" ]; + "preserve_order" = [ "serde_json/preserve_order" ]; "raw_value" = [ "serde_json/raw_value" ]; - "rust_decimal" = [ "dep:rust_decimal" ]; + "rust_decimal1" = [ "dep:rust_decimal1" ]; "schemars_derive" = [ "dep:schemars_derive" ]; - "semver" = [ "dep:semver" ]; - "smallvec" = [ "dep:smallvec" ]; - "smol_str" = [ "dep:smol_str" ]; - "url" = [ "dep:url" ]; - "uuid" = [ "uuid08" ]; - "uuid08" = [ "dep:uuid08" ]; + "semver1" = [ "dep:semver1" ]; + "smallvec1" = [ "dep:smallvec1" ]; + "smol_str02" = [ "dep:smol_str02" ]; + "smol_str03" = [ "dep:smol_str03" ]; + "url2" = [ "dep:url2" ]; "uuid1" = [ "dep:uuid1" ]; }; - resolvedDefaultFeatures = [ "default" "derive" "schemars_derive" "url" ]; + resolvedDefaultFeatures = [ "default" "derive" "schemars_derive" "std" "url2" ]; }; "schemars_derive" = rec { crateName = "schemars_derive"; - version = "0.8.22"; + version = "1.2.1"; edition = "2021"; - sha256 = "0kakyzrp5801s4i043l4ilv96lzimnlh01pap958h66n99w6bqij"; + sha256 = "0zrh1ckcc63sqy5hyhnh2lbxh4vmbij2z4f1g5za1vmayi85n4bx"; procMacro = true; authors = [ "Graham Esau " @@ -9867,7 +10700,13 @@ rec { } { name = "syn"; - packageId = "syn 2.0.87"; + packageId = "syn 2.0.117"; + } + ]; + devDependencies = [ + { + name = "syn"; + packageId = "syn 2.0.117"; features = [ "extra-traits" ]; } ]; @@ -9907,9 +10746,9 @@ rec { }; "security-framework" = rec { crateName = "security-framework"; - version = "2.11.1"; - edition = "2021"; - sha256 = "00ldclwx78dm61v7wkach9lcx76awlrv0fdgjdwch4dmy12j4yw9"; + version = "3.7.0"; + edition = "2024"; + sha256 = "07fd0j29j8yczb3hd430vwz784lx9knb5xwbvqna1nbkbivvrx5p"; libName = "security_framework"; authors = [ "Steven Fackler " @@ -9918,7 +10757,7 @@ rec { dependencies = [ { name = "bitflags"; - packageId = "bitflags 2.6.0"; + packageId = "bitflags"; } { name = "core-foundation"; @@ -9939,24 +10778,19 @@ rec { } ]; features = { - "OSX_10_10" = [ "OSX_10_9" "security-framework-sys/OSX_10_10" ]; - "OSX_10_11" = [ "OSX_10_10" "security-framework-sys/OSX_10_11" ]; - "OSX_10_12" = [ "OSX_10_11" "security-framework-sys/OSX_10_12" ]; - "OSX_10_13" = [ "OSX_10_12" "security-framework-sys/OSX_10_13" "alpn" "session-tickets" "serial-number-bigint" ]; - "OSX_10_14" = [ "OSX_10_13" "security-framework-sys/OSX_10_14" ]; - "OSX_10_15" = [ "OSX_10_14" "security-framework-sys/OSX_10_15" ]; - "OSX_10_9" = [ "security-framework-sys/OSX_10_9" ]; - "default" = [ "OSX_10_12" ]; + "OSX_10_15" = [ "security-framework-sys/OSX_10_15" ]; + "default" = [ "OSX_10_14" "alpn" "session-tickets" ]; "log" = [ "dep:log" ]; - "serial-number-bigint" = [ "dep:num-bigint" ]; + "macos-12" = [ "security-framework-sys/macos-12" ]; + "sync-keychain" = [ "OSX_10_13" ]; }; - resolvedDefaultFeatures = [ "OSX_10_10" "OSX_10_11" "OSX_10_12" "OSX_10_9" "default" ]; + resolvedDefaultFeatures = [ "OSX_10_14" "alpn" "default" "session-tickets" ]; }; "security-framework-sys" = rec { crateName = "security-framework-sys"; - version = "2.11.1"; + version = "2.17.0"; edition = "2021"; - sha256 = "1byfpx39sbmndfjrlqqylcxdpn3mpjyb9d92dffzw24vkgz2knkm"; + sha256 = "1qr0w0y9iwvmv3hwg653q1igngnc5b74xcf0679cbv23z0fnkqkc"; libName = "security_framework_sys"; authors = [ "Steven Fackler " @@ -9973,21 +10807,15 @@ rec { } ]; features = { - "OSX_10_10" = [ "OSX_10_9" ]; - "OSX_10_11" = [ "OSX_10_10" ]; - "OSX_10_12" = [ "OSX_10_11" ]; - "OSX_10_13" = [ "OSX_10_12" ]; - "OSX_10_14" = [ "OSX_10_13" ]; - "OSX_10_15" = [ "OSX_10_14" ]; - "default" = [ "OSX_10_12" ]; + "default" = [ "OSX_10_13" ]; }; - resolvedDefaultFeatures = [ "OSX_10_10" "OSX_10_11" "OSX_10_12" "OSX_10_9" ]; + resolvedDefaultFeatures = [ "OSX_10_13" "default" ]; }; "semver" = rec { crateName = "semver"; - version = "1.0.23"; - edition = "2018"; - sha256 = "12wqpxfflclbq4dv8sa6gchdh92ahhwn4ci1ls22wlby3h57wsb1"; + version = "1.0.28"; + edition = "2021"; + sha256 = "1kaimrpy876bcgi8bfj0qqfxk77zm9iz2zhn1hp9hj685z854y4a"; authors = [ "David Tolnay " ]; @@ -9997,6 +10825,14 @@ rec { packageId = "serde"; optional = true; usesDefaultFeatures = false; + target = { target, features }: false; + } + { + name = "serde_core"; + packageId = "serde_core"; + rename = "serde"; + optional = true; + usesDefaultFeatures = false; } ]; features = { @@ -10007,37 +10843,36 @@ rec { }; "serde" = rec { crateName = "serde"; - version = "1.0.219"; - edition = "2018"; - sha256 = "1dl6nyxnsi82a197sd752128a4avm6mxnscywas1jq30srp2q3jz"; + version = "1.0.228"; + edition = "2021"; + sha256 = "17mf4hhjxv5m90g42wmlbc61hdhlm6j9hwfkpcnd72rpgzm993ls"; authors = [ "Erick Tryzelaar " "David Tolnay " ]; dependencies = [ { - name = "serde_derive"; - packageId = "serde_derive"; - optional = true; - } - { - name = "serde_derive"; - packageId = "serde_derive"; - target = { target, features }: false; + name = "serde_core"; + packageId = "serde_core"; + usesDefaultFeatures = false; + features = [ "result" ]; } - ]; - devDependencies = [ { name = "serde_derive"; packageId = "serde_derive"; + optional = true; } ]; features = { + "alloc" = [ "serde_core/alloc" ]; "default" = [ "std" ]; "derive" = [ "serde_derive" ]; + "rc" = [ "serde_core/rc" ]; "serde_derive" = [ "dep:serde_derive" ]; + "std" = [ "serde_core/std" ]; + "unstable" = [ "serde_core/unstable" ]; }; - resolvedDefaultFeatures = [ "alloc" "default" "derive" "serde_derive" "std" ]; + resolvedDefaultFeatures = [ "alloc" "default" "derive" "rc" "serde_derive" "std" ]; }; "serde-value" = rec { crateName = "serde-value"; @@ -10060,11 +10895,38 @@ rec { ]; }; + "serde_core" = rec { + crateName = "serde_core"; + version = "1.0.228"; + edition = "2021"; + sha256 = "1bb7id2xwx8izq50098s5j2sqrrvk31jbbrjqygyan6ask3qbls1"; + authors = [ + "Erick Tryzelaar " + "David Tolnay " + ]; + dependencies = [ + { + name = "serde_derive"; + packageId = "serde_derive"; + target = { target, features }: false; + } + ]; + devDependencies = [ + { + name = "serde_derive"; + packageId = "serde_derive"; + } + ]; + features = { + "default" = [ "std" "result" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "rc" "result" "std" ]; + }; "serde_derive" = rec { crateName = "serde_derive"; - version = "1.0.219"; - edition = "2015"; - sha256 = "001azhjmj7ya52pmfiw4ppxm16nd44y15j2pf5gkcwrcgz7pc0jv"; + version = "1.0.228"; + edition = "2021"; + sha256 = "0y8xm7fvmr2kjcd029g9fijpndh8csv5m20g4bd76w8qschg4h6m"; procMacro = true; authors = [ "Erick Tryzelaar " @@ -10085,7 +10947,7 @@ rec { } { name = "syn"; - packageId = "syn 2.0.87"; + packageId = "syn 2.0.117"; usesDefaultFeatures = false; features = [ "clone-impls" "derive" "parsing" "printing" "proc-macro" ]; } @@ -10117,7 +10979,7 @@ rec { } { name = "syn"; - packageId = "syn 2.0.87"; + packageId = "syn 2.0.117"; usesDefaultFeatures = false; features = [ "clone-impls" "derive" "parsing" "printing" ]; } @@ -10126,9 +10988,9 @@ rec { }; "serde_json" = rec { crateName = "serde_json"; - version = "1.0.140"; + version = "1.0.149"; edition = "2021"; - sha256 = "0wwkp4vc20r87081ihj3vpyz5qf7wqkqipq17v99nv6wjrp8n1i0"; + sha256 = "11jdx4vilzrjjd1dpgy67x5lgzr0laplz30dhv75lnf5ffa07z43"; authors = [ "Erick Tryzelaar " "David Tolnay " @@ -10143,14 +11005,20 @@ rec { packageId = "memchr"; usesDefaultFeatures = false; } - { - name = "ryu"; - packageId = "ryu"; - } { name = "serde"; packageId = "serde"; usesDefaultFeatures = false; + target = { target, features }: false; + } + { + name = "serde_core"; + packageId = "serde_core"; + usesDefaultFeatures = false; + } + { + name = "zmij"; + packageId = "zmij"; } ]; devDependencies = [ @@ -10161,19 +11029,19 @@ rec { } ]; features = { - "alloc" = [ "serde/alloc" ]; + "alloc" = [ "serde_core/alloc" ]; "default" = [ "std" ]; "indexmap" = [ "dep:indexmap" ]; "preserve_order" = [ "indexmap" "std" ]; - "std" = [ "memchr/std" "serde/std" ]; + "std" = [ "memchr/std" "serde_core/std" ]; }; resolvedDefaultFeatures = [ "alloc" "default" "raw_value" "std" ]; }; "serde_path_to_error" = rec { crateName = "serde_path_to_error"; - version = "0.1.16"; + version = "0.1.20"; edition = "2021"; - sha256 = "19hlz2359l37ifirskpcds7sxg0gzpqvfilibs7whdys0128i6dg"; + sha256 = "0mxls44p2ycmnxh03zpnlxxygq42w61ws7ir7r0ba6rp5s1gza8h"; authors = [ "David Tolnay " ]; @@ -10182,6 +11050,20 @@ rec { name = "itoa"; packageId = "itoa"; } + { + name = "serde"; + packageId = "serde"; + usesDefaultFeatures = false; + target = { target, features }: false; + } + { + name = "serde_core"; + packageId = "serde_core"; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + ]; + devDependencies = [ { name = "serde"; packageId = "serde"; @@ -10189,6 +11071,27 @@ rec { ]; }; + "serde_spanned" = rec { + crateName = "serde_spanned"; + version = "1.1.1"; + edition = "2024"; + sha256 = "09jzk7i6wihn3d8i3wi4j4n98ghi93c3b8m8k64nxq0ijn3vaqk6"; + dependencies = [ + { + name = "serde_core"; + packageId = "serde_core"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "alloc" = [ "serde_core?/alloc" ]; + "default" = [ "std" "serde" ]; + "serde" = [ "dep:serde_core" ]; + "std" = [ "alloc" "serde_core?/std" ]; + }; + resolvedDefaultFeatures = [ "alloc" "serde" "std" ]; + }; "serde_urlencoded" = rec { crateName = "serde_urlencoded"; version = "0.7.1"; @@ -10228,7 +11131,7 @@ rec { dependencies = [ { name = "indexmap"; - packageId = "indexmap 2.5.0"; + packageId = "indexmap"; } { name = "itoa"; @@ -10264,7 +11167,7 @@ rec { } { name = "cpufeatures"; - packageId = "cpufeatures"; + packageId = "cpufeatures 0.2.17"; target = { target, features }: (("aarch64" == target."arch" or null) || ("x86" == target."arch" or null) || ("x86_64" == target."arch" or null)); } { @@ -10290,9 +11193,9 @@ rec { }; "sha2" = rec { crateName = "sha2"; - version = "0.10.8"; + version = "0.10.9"; edition = "2018"; - sha256 = "1j1x78zk9il95w9iv46dh9wm73r6xrgj32y6lzzw7bxws9dbfgbr"; + sha256 = "10xjj843v31ghsksd9sl9y12qfc48157j1xpb8v1ml39jy0psl57"; authors = [ "RustCrypto Developers" ]; @@ -10303,7 +11206,7 @@ rec { } { name = "cpufeatures"; - packageId = "cpufeatures"; + packageId = "cpufeatures 0.2.17"; target = { target, features }: (("aarch64" == target."arch" or null) || ("x86_64" == target."arch" or null) || ("x86" == target."arch" or null)); } { @@ -10347,6 +11250,20 @@ rec { "loom" = [ "dep:loom" ]; }; }; + "shell-words" = rec { + crateName = "shell-words"; + version = "1.1.1"; + edition = "2015"; + sha256 = "0xzd5p53xl0ndnk63r0by52rhdrh6pd37szfxszkg73zb6ffcvyw"; + libName = "shell_words"; + authors = [ + "Tomasz Miąsko " + ]; + features = { + "default" = [ "std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; "shlex" = rec { crateName = "shlex"; version = "1.3.0"; @@ -10367,15 +11284,19 @@ rec { }; "signal-hook-registry" = rec { crateName = "signal-hook-registry"; - version = "1.4.2"; + version = "1.4.8"; edition = "2015"; - sha256 = "1cb5akgq8ajnd5spyn587srvs4n26ryq0p78nswffwhv46sf1sd9"; + sha256 = "06vc7pmnki6lmxar3z31gkyg9cw7py5x9g7px70gy2hil75nkny4"; libName = "signal_hook_registry"; authors = [ "Michal 'vorner' Vaner " "Masaki Hara " ]; dependencies = [ + { + name = "errno"; + packageId = "errno"; + } { name = "libc"; packageId = "libc"; @@ -10383,11 +11304,25 @@ rec { ]; }; + "simd-adler32" = rec { + crateName = "simd-adler32"; + version = "0.3.9"; + edition = "2018"; + sha256 = "0532ysdwcvzyp2bwpk8qz0hijplcdwpssr5gy5r7qwqqy5z5qgbh"; + libName = "simd_adler32"; + authors = [ + "Marvin Countryman " + ]; + features = { + "default" = [ "std" "const-generics" ]; + }; + resolvedDefaultFeatures = [ "std" ]; + }; "siphasher" = rec { crateName = "siphasher"; - version = "0.3.11"; + version = "1.0.2"; edition = "2018"; - sha256 = "03axamhmwsrmh0psdw3gf7c0zc4fyl5yjxfifz9qfka6yhkqid9q"; + sha256 = "13k7cfbpcm8qgj9p2n8dwg9skv9s0hxk5my30j5chy1p4l78bamj"; authors = [ "Frank Denis " ]; @@ -10402,18 +11337,12 @@ rec { }; "slab" = rec { crateName = "slab"; - version = "0.4.9"; + version = "0.4.12"; edition = "2018"; - sha256 = "0rxvsgir0qw5lkycrqgb1cxsvxzjv9bmx73bk5y42svnzfba94lg"; + sha256 = "1xcwik6s6zbd3lf51kkrcicdq2j4c1fw0yjdai2apy9467i0sy8c"; authors = [ "Carl Lerche " ]; - buildDependencies = [ - { - name = "autocfg"; - packageId = "autocfg"; - } - ]; features = { "default" = [ "std" ]; "serde" = [ "dep:serde" ]; @@ -10443,17 +11372,21 @@ rec { }; "smallvec" = rec { crateName = "smallvec"; - version = "1.13.2"; + version = "1.15.1"; edition = "2018"; - sha256 = "0rsw5samawl3wsw6glrsb127rx6sh89a8wyikicw6dkdcjd1lpiw"; + sha256 = "00xxdxxpgyq5vjnpljvkmy99xij5rxgh913ii1v16kzynnivgcb7"; authors = [ "The Servo Project Developers" ]; features = { "arbitrary" = [ "dep:arbitrary" ]; + "bincode" = [ "dep:bincode" ]; "const_new" = [ "const_generics" ]; "drain_keep_rest" = [ "drain_filter" ]; + "impl_bincode" = [ "bincode" "unty" ]; + "malloc_size_of" = [ "dep:malloc_size_of" ]; "serde" = [ "dep:serde" ]; + "unty" = [ "dep:unty" ]; }; resolvedDefaultFeatures = [ "const_generics" "const_new" ]; }; @@ -10492,11 +11425,42 @@ rec { }; resolvedDefaultFeatures = [ "default" "guide" "std" ]; }; - "snafu 0.8.4" = rec { + "snafu 0.8.9" = rec { crateName = "snafu"; - version = "0.8.4"; + version = "0.8.9"; + edition = "2018"; + sha256 = "18p1y5qxwjn5j902wqsdr75n17b29lxpdipa0p7a3wybxbsb713f"; + authors = [ + "Jake Goulding " + ]; + dependencies = [ + { + name = "snafu-derive"; + packageId = "snafu-derive 0.8.9"; + } + ]; + features = { + "backtrace" = [ "dep:backtrace" ]; + "backtraces-impl-backtrace-crate" = [ "backtrace" ]; + "default" = [ "std" "rust_1_65" ]; + "futures" = [ "futures-core-crate" "pin-project" ]; + "futures-core-crate" = [ "dep:futures-core-crate" ]; + "futures-crate" = [ "dep:futures-crate" ]; + "internal-dev-dependencies" = [ "futures-crate" ]; + "pin-project" = [ "dep:pin-project" ]; + "rust_1_61" = [ "snafu-derive/rust_1_61" ]; + "rust_1_65" = [ "rust_1_61" ]; + "rust_1_81" = [ "rust_1_65" ]; + "std" = [ "alloc" ]; + "unstable-provider-api" = [ "snafu-derive/unstable-provider-api" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "rust_1_61" "rust_1_65" "std" ]; + }; + "snafu 0.9.0" = rec { + crateName = "snafu"; + version = "0.9.0"; edition = "2018"; - sha256 = "17f7w6d3szwc2s4q2vkc616yb4g70llqcbb7b90v63b60awmr0rb"; + sha256 = "1ii9r99x5qcn754m624yzgb9hzvkqkrcygf0aqh0pyb9dbnvrm6i"; authors = [ "Jake Goulding " ]; @@ -10516,23 +11480,22 @@ rec { } { name = "snafu-derive"; - packageId = "snafu-derive 0.8.4"; + packageId = "snafu-derive 0.9.0"; } ]; features = { "backtrace" = [ "dep:backtrace" ]; "backtraces-impl-backtrace-crate" = [ "backtrace" ]; - "default" = [ "std" "rust_1_65" ]; + "default" = [ "std" "rust_1_81" ]; "futures" = [ "futures-core-crate" "pin-project" ]; "futures-core-crate" = [ "dep:futures-core-crate" ]; "futures-crate" = [ "dep:futures-crate" ]; "internal-dev-dependencies" = [ "futures-crate" ]; "pin-project" = [ "dep:pin-project" ]; - "rust_1_61" = [ "snafu-derive/rust_1_61" ]; - "rust_1_65" = [ "rust_1_61" ]; + "std" = [ "alloc" ]; "unstable-provider-api" = [ "snafu-derive/unstable-provider-api" ]; }; - resolvedDefaultFeatures = [ "default" "futures" "futures-core-crate" "pin-project" "rust_1_61" "rust_1_65" "std" ]; + resolvedDefaultFeatures = [ "alloc" "default" "futures" "futures-core-crate" "pin-project" "rust_1_81" "std" ]; }; "snafu-derive 0.6.10" = rec { crateName = "snafu-derive"; @@ -10562,11 +11525,11 @@ rec { features = { }; }; - "snafu-derive 0.8.4" = rec { + "snafu-derive 0.8.9" = rec { crateName = "snafu-derive"; - version = "0.8.4"; + version = "0.8.9"; edition = "2018"; - sha256 = "1r8s45plv1nxy60d9xyvyjxz0692jh6aax1icj064ps0r8py1l9q"; + sha256 = "0lg4s58jzx6w48ig4qp8jasrrs886pifqqd58k5b2jzlvd3pgjf1"; procMacro = true; libName = "snafu_derive"; authors = [ @@ -10588,7 +11551,7 @@ rec { } { name = "syn"; - packageId = "syn 2.0.87"; + packageId = "syn 2.0.117"; features = [ "full" ]; } ]; @@ -10596,11 +11559,47 @@ rec { }; resolvedDefaultFeatures = [ "rust_1_61" ]; }; + "snafu-derive 0.9.0" = rec { + crateName = "snafu-derive"; + version = "0.9.0"; + edition = "2018"; + sha256 = "0h0x61kyj4fvilcr2nj02l85shw1ika64vq9brf2gyna662ln9al"; + procMacro = true; + libName = "snafu_derive"; + authors = [ + "Jake Goulding " + ]; + dependencies = [ + { + name = "heck"; + packageId = "heck"; + usesDefaultFeatures = false; + } + { + name = "proc-macro2"; + packageId = "proc-macro2"; + usesDefaultFeatures = false; + } + { + name = "quote"; + packageId = "quote"; + usesDefaultFeatures = false; + } + { + name = "syn"; + packageId = "syn 2.0.117"; + usesDefaultFeatures = false; + features = [ "clone-impls" "derive" "full" "parsing" "printing" "proc-macro" ]; + } + ]; + features = { + }; + }; "socket2" = rec { crateName = "socket2"; - version = "0.5.9"; + version = "0.6.3"; edition = "2021"; - sha256 = "1vzds1wwwi0a51fn10r98j7cx3ir4shvhykpbk7md2h5h1ydapsg"; + sha256 = "0gkjjcyn69hqhhlh5kl8byk5m0d7hyrp2aqwzbs3d33q208nwxis"; authors = [ "Alex Crichton " "Thomas de Zeeuw " @@ -10609,11 +11608,11 @@ rec { { name = "libc"; packageId = "libc"; - target = { target, features }: (target."unix" or false); + target = { target, features }: ((target."unix" or false) || ("wasi" == target."os" or null)); } { name = "windows-sys"; - packageId = "windows-sys 0.52.0"; + packageId = "windows-sys 0.61.2"; target = { target, features }: (target."windows" or false); features = [ "Win32_Foundation" "Win32_Networking_WinSock" "Win32_System_IO" "Win32_System_Threading" "Win32_System_WindowsProgramming" ]; } @@ -10622,30 +11621,18 @@ rec { }; resolvedDefaultFeatures = [ "all" ]; }; - "spin" = rec { - crateName = "spin"; - version = "0.9.8"; + "stable_deref_trait" = rec { + crateName = "stable_deref_trait"; + version = "1.2.1"; edition = "2015"; - sha256 = "0rvam5r0p3a6qhc18scqpvpgb3ckzyqxpgdfyjnghh8ja7byi039"; + sha256 = "15h5h73ppqyhdhx6ywxfj88azmrpml9gl6zp3pwy2malqa6vxqkc"; authors = [ - "Mathijs van de Nes " - "John Ericson " - "Joshua Barretto " + "Robert Grosse " ]; features = { - "barrier" = [ "mutex" ]; - "default" = [ "lock_api" "mutex" "spin_mutex" "rwlock" "once" "lazy" "barrier" ]; - "fair_mutex" = [ "mutex" ]; - "lazy" = [ "once" ]; - "lock_api" = [ "lock_api_crate" ]; - "lock_api_crate" = [ "dep:lock_api_crate" ]; - "portable-atomic" = [ "dep:portable-atomic" ]; - "portable_atomic" = [ "portable-atomic" ]; - "spin_mutex" = [ "mutex" ]; - "ticket_mutex" = [ "mutex" ]; - "use_ticket_mutex" = [ "mutex" "ticket_mutex" ]; + "default" = [ "std" ]; + "std" = [ "alloc" ]; }; - resolvedDefaultFeatures = [ "once" ]; }; "stackable-cockpit" = rec { crateName = "stackable-cockpit"; @@ -10661,6 +11648,15 @@ rec { name = "bcrypt"; packageId = "bcrypt"; } + { + name = "clap"; + packageId = "clap"; + features = [ "derive" "env" ]; + } + { + name = "either"; + packageId = "either"; + } { name = "futures"; packageId = "futures"; @@ -10671,34 +11667,22 @@ rec { } { name = "indexmap"; - packageId = "indexmap 2.5.0"; + packageId = "indexmap"; features = [ "serde" ]; } { name = "indicatif"; packageId = "indicatif"; } - { - name = "k8s-openapi"; - packageId = "k8s-openapi"; - usesDefaultFeatures = false; - features = [ "v1_32" ]; - } - { - name = "kube"; - packageId = "kube"; - usesDefaultFeatures = false; - features = [ "client" "rustls-tls" "ws" "socks5" "http-proxy" ]; - } { name = "rand"; - packageId = "rand 0.8.5"; + packageId = "rand 0.10.0"; } { name = "reqwest"; - packageId = "reqwest"; + packageId = "reqwest 0.13.2"; usesDefaultFeatures = false; - features = [ "json" "rustls-tls-native-roots" ]; + features = [ "json" "rustls" ]; } { name = "semver"; @@ -10724,13 +11708,14 @@ rec { } { name = "snafu"; - packageId = "snafu 0.8.4"; + packageId = "snafu 0.9.0"; features = [ "futures" ]; } { name = "stackable-operator"; packageId = "stackable-operator"; usesDefaultFeatures = false; + features = [ "crds" "kube-ws" ]; } { name = "tera"; @@ -10780,26 +11765,6 @@ rec { }; resolvedDefaultFeatures = [ "full" "openapi" ]; }; - "stackable-cockpit-web" = rec { - crateName = "stackable-cockpit-web"; - version = "0.0.0-dev"; - edition = "2021"; - src = lib.cleanSourceWith { filter = sourceFilter; src = ./web; }; - libName = "stackable_cockpit_web"; - dependencies = [ - { - name = "phf"; - packageId = "phf"; - } - ]; - buildDependencies = [ - { - name = "phf_codegen"; - packageId = "phf_codegen"; - } - ]; - - }; "stackable-cockpitd" = rec { crateName = "stackable-cockpitd"; version = "0.0.0-dev"; @@ -10819,7 +11784,7 @@ rec { dependencies = [ { name = "axum"; - packageId = "axum 0.7.5"; + packageId = "axum"; features = [ "http2" ]; } { @@ -10840,12 +11805,6 @@ rec { name = "futures"; packageId = "futures"; } - { - name = "k8s-openapi"; - packageId = "k8s-openapi"; - usesDefaultFeatures = false; - features = [ "v1_32" ]; - } { name = "serde"; packageId = "serde"; @@ -10853,7 +11812,7 @@ rec { } { name = "snafu"; - packageId = "snafu 0.8.4"; + packageId = "snafu 0.9.0"; features = [ "futures" ]; } { @@ -10861,11 +11820,6 @@ rec { packageId = "stackable-cockpit"; features = [ "openapi" ]; } - { - name = "stackable-cockpit-web"; - packageId = "stackable-cockpit-web"; - optional = true; - } { name = "tokio"; packageId = "tokio"; @@ -10873,7 +11827,7 @@ rec { } { name = "tower-http"; - packageId = "tower-http 0.5.2"; + packageId = "tower-http"; features = [ "validate-request" ]; } { @@ -10900,20 +11854,17 @@ rec { features = [ "v4" ]; } ]; - features = { - "ui" = [ "dep:stackable-cockpit-web" ]; - }; - resolvedDefaultFeatures = [ "default" "ui" ]; + }; "stackable-operator" = rec { crateName = "stackable-operator"; - version = "0.92.0"; + version = "0.109.0"; edition = "2024"; workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "5fdc47a10de685e4eea49fd0a3f6c3a15a4966c1"; - sha256 = "0li9smdrz7danqz17lfkl0j9zl2i84csgc7d01lxs5qi8jcs9fzw"; + rev = "a4a204b0696a696b9a49c930703037dd124e876d"; + sha256 = "1fgc7i8rhq1nl9m4s69sbfiywy2jx4narpynvm3g54vd5yd4c6m2"; }; libName = "stackable_operator"; authors = [ @@ -10921,9 +11872,8 @@ rec { ]; dependencies = [ { - name = "chrono"; - packageId = "chrono"; - usesDefaultFeatures = false; + name = "base64"; + packageId = "base64"; } { name = "clap"; @@ -10956,9 +11906,17 @@ rec { name = "futures"; packageId = "futures"; } + { + name = "http"; + packageId = "http"; + } { name = "indexmap"; - packageId = "indexmap 2.5.0"; + packageId = "indexmap"; + } + { + name = "jiff"; + packageId = "jiff"; } { name = "json-patch"; @@ -10968,18 +11926,22 @@ rec { name = "k8s-openapi"; packageId = "k8s-openapi"; usesDefaultFeatures = false; - features = [ "schemars" "v1_32" ]; + features = [ "schemars" "v1_35" ]; } { name = "kube"; packageId = "kube"; usesDefaultFeatures = false; - features = [ "client" "jsonpatch" "runtime" "derive" "rustls-tls" "ring" ]; + features = [ "client" "jsonpatch" "runtime" "derive" "admission" "rustls-tls" "ring" ]; } { name = "product-config"; packageId = "product-config"; } + { + name = "rand"; + packageId = "rand 0.9.2"; + } { name = "regex"; packageId = "regex"; @@ -10987,7 +11949,7 @@ rec { { name = "schemars"; packageId = "schemars"; - features = [ "url" ]; + features = [ "url2" ]; } { name = "semver"; @@ -11008,7 +11970,7 @@ rec { } { name = "snafu"; - packageId = "snafu 0.8.4"; + packageId = "snafu 0.9.0"; } { name = "stackable-operator-derive"; @@ -11017,6 +11979,7 @@ rec { { name = "stackable-shared"; packageId = "stackable-shared"; + features = [ "jiff" ]; } { name = "stackable-telemetry"; @@ -11026,11 +11989,11 @@ rec { { name = "stackable-versioned"; packageId = "stackable-versioned"; - features = [ "k8s" ]; + optional = true; } { name = "strum"; - packageId = "strum 0.27.1"; + packageId = "strum"; features = [ "derive" ]; } { @@ -11058,10 +12021,15 @@ rec { } ]; features = { - "default" = [ "telemetry" "versioned" ]; - "full" = [ "time" "telemetry" "versioned" ]; - "time" = [ "dep:time" ]; + "certs" = [ "dep:stackable-certs" ]; + "crds" = [ "dep:stackable-versioned" ]; + "default" = [ "crds" ]; + "full" = [ "crds" "certs" "time" "webhook" "kube-ws" ]; + "kube-ws" = [ "kube/ws" ]; + "time" = [ "stackable-shared/time" ]; + "webhook" = [ "dep:stackable-webhook" ]; }; + resolvedDefaultFeatures = [ "crds" "kube-ws" ]; }; "stackable-operator-derive" = rec { crateName = "stackable-operator-derive"; @@ -11070,8 +12038,8 @@ rec { workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "5fdc47a10de685e4eea49fd0a3f6c3a15a4966c1"; - sha256 = "0li9smdrz7danqz17lfkl0j9zl2i84csgc7d01lxs5qi8jcs9fzw"; + rev = "a4a204b0696a696b9a49c930703037dd124e876d"; + sha256 = "1fgc7i8rhq1nl9m4s69sbfiywy2jx4narpynvm3g54vd5yd4c6m2"; }; procMacro = true; libName = "stackable_operator_derive"; @@ -11093,31 +12061,47 @@ rec { } { name = "syn"; - packageId = "syn 2.0.87"; + packageId = "syn 2.0.117"; } ]; }; "stackable-shared" = rec { crateName = "stackable-shared"; - version = "0.0.1"; + version = "0.1.0"; edition = "2024"; workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "5fdc47a10de685e4eea49fd0a3f6c3a15a4966c1"; - sha256 = "0li9smdrz7danqz17lfkl0j9zl2i84csgc7d01lxs5qi8jcs9fzw"; + rev = "a4a204b0696a696b9a49c930703037dd124e876d"; + sha256 = "1fgc7i8rhq1nl9m4s69sbfiywy2jx4narpynvm3g54vd5yd4c6m2"; }; libName = "stackable_shared"; authors = [ "Stackable GmbH " ]; dependencies = [ + { + name = "jiff"; + packageId = "jiff"; + optional = true; + } + { + name = "k8s-openapi"; + packageId = "k8s-openapi"; + usesDefaultFeatures = false; + features = [ "schemars" "v1_35" ]; + } { name = "kube"; packageId = "kube"; usesDefaultFeatures = false; - features = [ "client" "jsonpatch" "runtime" "derive" "rustls-tls" "ring" ]; + features = [ "client" "jsonpatch" "runtime" "derive" "admission" "rustls-tls" "ring" ]; + } + { + name = "schemars"; + packageId = "schemars"; + features = [ "url2" ]; } { name = "semver"; @@ -11134,20 +12118,44 @@ rec { } { name = "snafu"; - packageId = "snafu 0.8.4"; + packageId = "snafu 0.9.0"; + } + { + name = "strum"; + packageId = "strum"; + features = [ "derive" ]; + } + { + name = "time"; + packageId = "time"; + optional = true; } ]; - + devDependencies = [ + { + name = "k8s-openapi"; + packageId = "k8s-openapi"; + usesDefaultFeatures = false; + features = [ "schemars" "v1_35" ]; + } + ]; + features = { + "default" = [ "time" ]; + "full" = [ "jiff" "time" ]; + "jiff" = [ "dep:jiff" ]; + "time" = [ "dep:time" ]; + }; + resolvedDefaultFeatures = [ "default" "jiff" "time" ]; }; "stackable-telemetry" = rec { crateName = "stackable-telemetry"; - version = "0.6.0"; + version = "0.6.3"; edition = "2024"; workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "5fdc47a10de685e4eea49fd0a3f6c3a15a4966c1"; - sha256 = "0li9smdrz7danqz17lfkl0j9zl2i84csgc7d01lxs5qi8jcs9fzw"; + rev = "a4a204b0696a696b9a49c930703037dd124e876d"; + sha256 = "1fgc7i8rhq1nl9m4s69sbfiywy2jx4narpynvm3g54vd5yd4c6m2"; }; libName = "stackable_telemetry"; authors = [ @@ -11156,7 +12164,8 @@ rec { dependencies = [ { name = "axum"; - packageId = "axum 0.8.3"; + packageId = "axum"; + features = [ "http2" ]; } { name = "clap"; @@ -11182,6 +12191,10 @@ rec { packageId = "opentelemetry-otlp"; features = [ "grpc-tonic" "gzip-tonic" "logs" ]; } + { + name = "opentelemetry-semantic-conventions"; + packageId = "opentelemetry-semantic-conventions"; + } { name = "opentelemetry_sdk"; packageId = "opentelemetry_sdk"; @@ -11193,11 +12206,11 @@ rec { } { name = "snafu"; - packageId = "snafu 0.8.4"; + packageId = "snafu 0.9.0"; } { name = "strum"; - packageId = "strum 0.27.1"; + packageId = "strum"; features = [ "derive" ]; } { @@ -11207,7 +12220,7 @@ rec { } { name = "tower"; - packageId = "tower 0.5.2"; + packageId = "tower"; features = [ "util" ]; } { @@ -11246,39 +12259,57 @@ rec { }; "stackable-versioned" = rec { crateName = "stackable-versioned"; - version = "0.7.1"; + version = "0.9.0"; edition = "2024"; workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "5fdc47a10de685e4eea49fd0a3f6c3a15a4966c1"; - sha256 = "0li9smdrz7danqz17lfkl0j9zl2i84csgc7d01lxs5qi8jcs9fzw"; + rev = "a4a204b0696a696b9a49c930703037dd124e876d"; + sha256 = "1fgc7i8rhq1nl9m4s69sbfiywy2jx4narpynvm3g54vd5yd4c6m2"; }; libName = "stackable_versioned"; authors = [ "Stackable GmbH " ]; dependencies = [ + { + name = "schemars"; + packageId = "schemars"; + features = [ "url2" ]; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "serde_json"; + packageId = "serde_json"; + } + { + name = "serde_yaml"; + packageId = "serde_yaml"; + } + { + name = "snafu"; + packageId = "snafu 0.9.0"; + } { name = "stackable-versioned-macros"; packageId = "stackable-versioned-macros"; } ]; - features = { - "full" = [ "k8s" ]; - "k8s" = [ "stackable-versioned-macros/k8s" ]; - }; - resolvedDefaultFeatures = [ "k8s" ]; + }; "stackable-versioned-macros" = rec { crateName = "stackable-versioned-macros"; - version = "0.7.1"; + version = "0.9.0"; edition = "2024"; workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "5fdc47a10de685e4eea49fd0a3f6c3a15a4966c1"; - sha256 = "0li9smdrz7danqz17lfkl0j9zl2i84csgc7d01lxs5qi8jcs9fzw"; + rev = "a4a204b0696a696b9a49c930703037dd124e876d"; + sha256 = "1fgc7i8rhq1nl9m4s69sbfiywy2jx4narpynvm3g54vd5yd4c6m2"; }; procMacro = true; libName = "stackable_versioned_macros"; @@ -11290,10 +12321,18 @@ rec { name = "convert_case"; packageId = "convert_case"; } + { + name = "convert_case_extras"; + packageId = "convert_case_extras"; + } { name = "darling"; packageId = "darling"; } + { + name = "indoc"; + packageId = "indoc"; + } { name = "itertools"; packageId = "itertools 0.14.0"; @@ -11301,9 +12340,8 @@ rec { { name = "k8s-openapi"; packageId = "k8s-openapi"; - optional = true; usesDefaultFeatures = false; - features = [ "schemars" "v1_32" ]; + features = [ "schemars" "v1_35" ]; } { name = "k8s-version"; @@ -11313,9 +12351,8 @@ rec { { name = "kube"; packageId = "kube"; - optional = true; usesDefaultFeatures = false; - features = [ "client" "jsonpatch" "runtime" "derive" "rustls-tls" "ring" ]; + features = [ "client" "jsonpatch" "runtime" "derive" "admission" "rustls-tls" "ring" ]; } { name = "proc-macro2"; @@ -11327,26 +12364,14 @@ rec { } { name = "syn"; - packageId = "syn 2.0.87"; - } - ]; - devDependencies = [ - { - name = "k8s-openapi"; - packageId = "k8s-openapi"; - usesDefaultFeatures = false; - features = [ "schemars" "v1_32" ]; + packageId = "syn 2.0.117"; } ]; - features = { - "full" = [ "k8s" ]; - "k8s" = [ "dep:kube" "dep:k8s-openapi" ]; - }; - resolvedDefaultFeatures = [ "k8s" ]; + }; "stackablectl" = rec { crateName = "stackablectl"; - version = "1.0.0"; + version = "1.4.0"; edition = "2021"; crateBin = [ { @@ -11378,6 +12403,10 @@ rec { packageId = "comfy-table"; features = [ "custom_styling" ]; } + { + name = "dialoguer"; + packageId = "dialoguer"; + } { name = "directories"; packageId = "directories"; @@ -11392,7 +12421,7 @@ rec { } { name = "indexmap"; - packageId = "indexmap 2.5.0"; + packageId = "indexmap"; features = [ "serde" ]; } { @@ -11409,13 +12438,17 @@ rec { } { name = "rand"; - packageId = "rand 0.8.5"; + packageId = "rand 0.10.0"; } { name = "reqwest"; - packageId = "reqwest"; + packageId = "reqwest 0.13.2"; usesDefaultFeatures = false; - features = [ "json" "rustls-tls-native-roots" ]; + features = [ "json" "rustls" ]; + } + { + name = "rustls"; + packageId = "rustls"; } { name = "semver"; @@ -11437,7 +12470,7 @@ rec { } { name = "snafu"; - packageId = "snafu 0.8.4"; + packageId = "snafu 0.9.0"; features = [ "futures" ]; } { @@ -11449,6 +12482,7 @@ rec { name = "stackable-operator"; packageId = "stackable-operator"; usesDefaultFeatures = false; + features = [ "crds" "kube-ws" ]; } { name = "tera"; @@ -11463,6 +12497,11 @@ rec { packageId = "tokio"; features = [ "rt-multi-thread" "macros" "fs" "process" "io-std" ]; } + { + name = "toml"; + packageId = "toml"; + features = [ "serde" ]; + } { name = "tracing"; packageId = "tracing"; @@ -11480,6 +12519,12 @@ rec { packageId = "urlencoding"; } ]; + buildDependencies = [ + { + name = "built"; + packageId = "built"; + } + ]; }; "strsim" = rec { @@ -11493,34 +12538,18 @@ rec { ]; }; - "strum 0.26.3" = rec { - crateName = "strum"; - version = "0.26.3"; - edition = "2018"; - sha256 = "01lgl6jvrf4j28v5kmx9bp480ygf1nhvac8b4p7rcj9hxw50zv4g"; - authors = [ - "Peter Glotfelty " - ]; - features = { - "default" = [ "std" ]; - "derive" = [ "strum_macros" ]; - "phf" = [ "dep:phf" ]; - "strum_macros" = [ "dep:strum_macros" ]; - }; - resolvedDefaultFeatures = [ "default" "std" ]; - }; - "strum 0.27.1" = rec { + "strum" = rec { crateName = "strum"; - version = "0.27.1"; + version = "0.28.0"; edition = "2021"; - sha256 = "0cic9r2sc2h17nnpjm2yfp7rsd35gkbcbqvrhl553jaiih4fykgn"; + sha256 = "1ggr0if083c1mz9w33hkdjsp0iqk2fz9n49bvb73knwihydxwa4n"; authors = [ "Peter Glotfelty " ]; dependencies = [ { name = "strum_macros"; - packageId = "strum_macros 0.27.1"; + packageId = "strum_macros"; optional = true; } ]; @@ -11532,11 +12561,11 @@ rec { }; resolvedDefaultFeatures = [ "default" "derive" "std" "strum_macros" ]; }; - "strum_macros 0.26.4" = rec { + "strum_macros" = rec { crateName = "strum_macros"; - version = "0.26.4"; - edition = "2018"; - sha256 = "1gl1wmq24b8md527cpyd5bw9rkbqldd7k1h38kf5ajd2ln2ywssc"; + version = "0.28.0"; + edition = "2021"; + sha256 = "0r7n6v5b3x85m52isyc8wq78irmr22g0hmj1xn3pbq8f4yhfx1db"; procMacro = true; authors = [ "Peter Glotfelty " @@ -11554,47 +12583,9 @@ rec { name = "quote"; packageId = "quote"; } - { - name = "rustversion"; - packageId = "rustversion"; - } - { - name = "syn"; - packageId = "syn 2.0.87"; - features = [ "parsing" "extra-traits" ]; - } - ]; - - }; - "strum_macros 0.27.1" = rec { - crateName = "strum_macros"; - version = "0.27.1"; - edition = "2021"; - sha256 = "1s7x07nkrgjfvxrvcdjw6qanad4c55yjnd32bph9q3xgpid8qyn7"; - procMacro = true; - authors = [ - "Peter Glotfelty " - ]; - dependencies = [ - { - name = "heck"; - packageId = "heck"; - } - { - name = "proc-macro2"; - packageId = "proc-macro2"; - } - { - name = "quote"; - packageId = "quote"; - } - { - name = "rustversion"; - packageId = "rustversion"; - } { name = "syn"; - packageId = "syn 2.0.87"; + packageId = "syn 2.0.117"; features = [ "parsing" ]; } ]; @@ -11647,11 +12638,11 @@ rec { }; resolvedDefaultFeatures = [ "clone-impls" "default" "derive" "full" "parsing" "printing" "proc-macro" "quote" ]; }; - "syn 2.0.87" = rec { + "syn 2.0.117" = rec { crateName = "syn"; - version = "2.0.87"; + version = "2.0.117"; edition = "2021"; - sha256 = "0bd3mfcswvn4jkrp7ich5kk58kmpph8412yxd36nsfnh8vilrai5"; + sha256 = "16cv7c0wbn8amxc54n4w15kxlx5ypdmla8s0gxr2l7bv7s0bhrg6"; authors = [ "David Tolnay " ]; @@ -11678,48 +12669,115 @@ rec { "proc-macro" = [ "proc-macro2/proc-macro" "quote?/proc-macro" ]; "test" = [ "syn-test-suite/all-features" ]; }; - resolvedDefaultFeatures = [ "clone-impls" "default" "derive" "extra-traits" "full" "parsing" "printing" "proc-macro" "visit" "visit-mut" ]; + resolvedDefaultFeatures = [ "clone-impls" "default" "derive" "extra-traits" "fold" "full" "parsing" "printing" "proc-macro" "visit" "visit-mut" ]; }; - "sync_wrapper 0.1.2" = rec { + "sync_wrapper" = rec { crateName = "sync_wrapper"; - version = "0.1.2"; - edition = "2018"; - sha256 = "0q01lyj0gr9a93n10nxsn8lwbzq97jqd6b768x17c8f7v7gccir0"; + version = "1.0.2"; + edition = "2021"; + sha256 = "0qvjyasd6w18mjg5xlaq5jgy84jsjfsvmnn12c13gypxbv75dwhb"; authors = [ "Actyx AG " ]; + dependencies = [ + { + name = "futures-core"; + packageId = "futures-core"; + optional = true; + usesDefaultFeatures = false; + } + ]; features = { "futures" = [ "futures-core" ]; "futures-core" = [ "dep:futures-core" ]; }; + resolvedDefaultFeatures = [ "futures" "futures-core" ]; }; - "sync_wrapper 1.0.1" = rec { - crateName = "sync_wrapper"; - version = "1.0.1"; + "synstructure" = rec { + crateName = "synstructure"; + version = "0.13.2"; edition = "2018"; - sha256 = "150k6lwvr4nl237ngsz8fj5j78k712m4bggrfyjsidllraz5l1m7"; + sha256 = "1lh9lx3r3jb18f8sbj29am5hm9jymvbwh6jb1izsnnxgvgrp12kj"; authors = [ - "Actyx AG " + "Nika Layzell " ]; dependencies = [ { - name = "futures-core"; - packageId = "futures-core"; + name = "proc-macro2"; + packageId = "proc-macro2"; + usesDefaultFeatures = false; + } + { + name = "quote"; + packageId = "quote"; + usesDefaultFeatures = false; + } + { + name = "syn"; + packageId = "syn 2.0.117"; + usesDefaultFeatures = false; + features = [ "derive" "parsing" "printing" "clone-impls" "visit" "extra-traits" ]; + } + ]; + features = { + "default" = [ "proc-macro" ]; + "proc-macro" = [ "proc-macro2/proc-macro" "syn/proc-macro" "quote/proc-macro" ]; + }; + resolvedDefaultFeatures = [ "default" "proc-macro" ]; + }; + "tempfile" = rec { + crateName = "tempfile"; + version = "3.27.0"; + edition = "2021"; + sha256 = "1gblhnyfjsbg9wjg194n89wrzah7jy3yzgnyzhp56f3v9jd7wj9j"; + authors = [ + "Steven Allen " + "The Rust Project Developers" + "Ashley Mannix " + "Jason White " + ]; + dependencies = [ + { + name = "fastrand"; + packageId = "fastrand"; + } + { + name = "getrandom"; + packageId = "getrandom 0.4.2"; optional = true; usesDefaultFeatures = false; + target = { target, features }: ((target."unix" or false) || (target."windows" or false) || ("wasi" == target."os" or null)); + } + { + name = "once_cell"; + packageId = "once_cell"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "rustix"; + packageId = "rustix"; + target = { target, features }: ((target."unix" or false) || ("wasi" == target."os" or null)); + features = [ "fs" ]; + } + { + name = "windows-sys"; + packageId = "windows-sys 0.61.2"; + target = { target, features }: (target."windows" or false); + features = [ "Win32_Storage_FileSystem" "Win32_Foundation" ]; } ]; features = { - "futures" = [ "futures-core" ]; - "futures-core" = [ "dep:futures-core" ]; + "default" = [ "getrandom" ]; + "getrandom" = [ "dep:getrandom" ]; }; - resolvedDefaultFeatures = [ "futures" "futures-core" ]; + resolvedDefaultFeatures = [ "default" "getrandom" ]; }; "tera" = rec { crateName = "tera"; - version = "1.20.0"; + version = "1.20.1"; edition = "2018"; - sha256 = "1vnj9imw2h9szkd1izsrhwrc9jvazvdsp84x65wg2rg88ldqb7db"; + sha256 = "08k743nwb2mykpbwnipa1k3v8b1igg39pmdc7ggk4b8z5354n078"; authors = [ "Vincent Prouillet " ]; @@ -11785,8 +12843,8 @@ rec { optional = true; } { - name = "unic-segment"; - packageId = "unic-segment"; + name = "unicode-segmentation"; + packageId = "unicode-segmentation"; } ]; features = { @@ -11806,9 +12864,9 @@ rec { }; "termion" = rec { crateName = "termion"; - version = "4.0.2"; + version = "4.0.6"; edition = "2015"; - sha256 = "0j1ql1p1q43r992bdjnha0kpj2xnc13xbvbn13l764cda67fdk0w"; + sha256 = "1jsy8zakr7gjy4wddb1m1hrsfkgg2wjxh121y81gbw08mslkhhgl"; authors = [ "ticki " "gycos " @@ -11819,56 +12877,44 @@ rec { { name = "libc"; packageId = "libc"; - target = { target, features }: (!("redox" == target."os" or null)); - } - { - name = "libredox"; - packageId = "libredox 0.0.2"; - target = { target, features }: ("redox" == target."os" or null); } { name = "numtoa"; packageId = "numtoa"; - features = [ "std" ]; - } - { - name = "redox_termios"; - packageId = "redox_termios"; - target = { target, features }: ("redox" == target."os" or null); } ]; features = { "serde" = [ "dep:serde" ]; }; }; - "thiserror 1.0.63" = rec { + "thiserror 1.0.69" = rec { crateName = "thiserror"; - version = "1.0.63"; + version = "1.0.69"; edition = "2021"; - sha256 = "092p83mf4p1vkjb2j6h6z96dan4raq2simhirjv12slbndq26d60"; + sha256 = "0lizjay08agcr5hs9yfzzj6axs53a2rgx070a1dsi3jpkcrzbamn"; authors = [ "David Tolnay " ]; dependencies = [ { name = "thiserror-impl"; - packageId = "thiserror-impl 1.0.63"; + packageId = "thiserror-impl 1.0.69"; } ]; }; - "thiserror 2.0.12" = rec { + "thiserror 2.0.18" = rec { crateName = "thiserror"; - version = "2.0.12"; + version = "2.0.18"; edition = "2021"; - sha256 = "024791nsc0np63g2pq30cjf9acj38z3jwx9apvvi8qsqmqnqlysn"; + sha256 = "1i7vcmw9900bvsmay7mww04ahahab7wmr8s925xc083rpjybb222"; authors = [ "David Tolnay " ]; dependencies = [ { name = "thiserror-impl"; - packageId = "thiserror-impl 2.0.12"; + packageId = "thiserror-impl 2.0.18"; } ]; features = { @@ -11876,11 +12922,11 @@ rec { }; resolvedDefaultFeatures = [ "default" "std" ]; }; - "thiserror-impl 1.0.63" = rec { + "thiserror-impl 1.0.69" = rec { crateName = "thiserror-impl"; - version = "1.0.63"; + version = "1.0.69"; edition = "2021"; - sha256 = "0qd21l2jjrkvnpr5da3l3b58v4wmrkn6aa0h1z5dg6kb8rc8nmd4"; + sha256 = "1h84fmn2nai41cxbhk6pqf46bxqq1b344v8yz089w1chzi76rvjg"; procMacro = true; libName = "thiserror_impl"; authors = [ @@ -11897,16 +12943,16 @@ rec { } { name = "syn"; - packageId = "syn 2.0.87"; + packageId = "syn 2.0.117"; } ]; }; - "thiserror-impl 2.0.12" = rec { + "thiserror-impl 2.0.18" = rec { crateName = "thiserror-impl"; - version = "2.0.12"; + version = "2.0.18"; edition = "2021"; - sha256 = "07bsn7shydaidvyyrm7jz29vp78vrxr9cr9044rfmn078lmz8z3z"; + sha256 = "1mf1vrbbimj1g6dvhdgzjmn6q09yflz2b92zs1j9n3k7cxzyxi7b"; procMacro = true; libName = "thiserror_impl"; authors = [ @@ -11923,16 +12969,16 @@ rec { } { name = "syn"; - packageId = "syn 2.0.87"; + packageId = "syn 2.0.117"; } ]; }; "thread_local" = rec { crateName = "thread_local"; - version = "1.1.8"; + version = "1.1.9"; edition = "2021"; - sha256 = "173i5lyjh011gsimk21np9jn8al18rxsrkjli20a7b8ks2xgk7lb"; + sha256 = "1191jvl8d63agnq06pcnarivf63qzgpws5xa33hgc92gjjj4c0pn"; authors = [ "Amanieu d'Antras " ]; @@ -11941,19 +12987,15 @@ rec { name = "cfg-if"; packageId = "cfg-if"; } - { - name = "once_cell"; - packageId = "once_cell"; - } ]; features = { }; }; "time" = rec { crateName = "time"; - version = "0.3.36"; - edition = "2021"; - sha256 = "11g8hdpahgrf1wwl2rpsg5nxq3aj7ri6xr672v4qcij6cgjqizax"; + version = "0.3.47"; + edition = "2024"; + sha256 = "0b7g9ly2iabrlgizliz6v5x23yq5d6bpp0mqz6407z1s526d8fvl"; authors = [ "Jacob Pratt " "Time contributors" @@ -11962,7 +13004,6 @@ rec { { name = "deranged"; packageId = "deranged"; - usesDefaultFeatures = false; features = [ "powerfmt" ]; } { @@ -11980,8 +13021,8 @@ rec { usesDefaultFeatures = false; } { - name = "serde"; - packageId = "serde"; + name = "serde_core"; + packageId = "serde_core"; optional = true; usesDefaultFeatures = false; } @@ -12000,52 +13041,49 @@ rec { name = "num-conv"; packageId = "num-conv"; } - { - name = "serde"; - packageId = "serde"; - usesDefaultFeatures = false; - features = [ "derive" ]; - } { name = "time-macros"; packageId = "time-macros"; } ]; features = { - "alloc" = [ "serde?/alloc" ]; + "alloc" = [ "serde_core?/alloc" ]; "default" = [ "std" ]; "formatting" = [ "dep:itoa" "std" "time-macros?/formatting" ]; - "large-dates" = [ "time-macros?/large-dates" ]; + "large-dates" = [ "time-core/large-dates" "time-macros?/large-dates" ]; "local-offset" = [ "std" "dep:libc" "dep:num_threads" ]; "macros" = [ "dep:time-macros" ]; "parsing" = [ "time-macros?/parsing" ]; "quickcheck" = [ "dep:quickcheck" "alloc" "deranged/quickcheck" ]; - "rand" = [ "dep:rand" "deranged/rand" ]; - "serde" = [ "dep:serde" "time-macros?/serde" "deranged/serde" ]; + "rand" = [ "rand08" "rand09" ]; + "rand08" = [ "dep:rand08" "deranged/rand08" ]; + "rand09" = [ "dep:rand09" "deranged/rand09" ]; + "serde" = [ "dep:serde_core" "time-macros?/serde" "deranged/serde" ]; "serde-human-readable" = [ "serde" "formatting" "parsing" ]; "serde-well-known" = [ "serde" "formatting" "parsing" ]; - "std" = [ "alloc" "deranged/std" ]; + "std" = [ "alloc" ]; "wasm-bindgen" = [ "dep:js-sys" ]; }; - resolvedDefaultFeatures = [ "alloc" "formatting" "parsing" "std" ]; + resolvedDefaultFeatures = [ "alloc" "default" "formatting" "parsing" "std" ]; }; "time-core" = rec { crateName = "time-core"; - version = "0.1.2"; - edition = "2021"; - sha256 = "1wx3qizcihw6z151hywfzzyd1y5dl804ydyxci6qm07vbakpr4pg"; + version = "0.1.8"; + edition = "2024"; + sha256 = "1jidl426mw48i7hjj4hs9vxgd9lwqq4vyalm4q8d7y4iwz7y353n"; libName = "time_core"; authors = [ "Jacob Pratt " "Time contributors" ]; - + features = { + }; }; "time-macros" = rec { crateName = "time-macros"; - version = "0.2.18"; - edition = "2021"; - sha256 = "1kqwxvfh2jkpg38fy673d6danh1bhcmmbsmffww3mphgail2l99z"; + version = "0.2.27"; + edition = "2024"; + sha256 = "058ja265waq275wxvnfwavbz9r1hd4dgwpfn7a1a9a70l32y8w1f"; procMacro = true; libName = "time_macros"; authors = [ @@ -12066,11 +13104,41 @@ rec { }; resolvedDefaultFeatures = [ "formatting" "parsing" ]; }; + "tinystr" = rec { + crateName = "tinystr"; + version = "0.8.3"; + edition = "2021"; + sha256 = "0vfr8x285w6zsqhna0a9jyhylwiafb2kc8pj2qaqaahw48236cn8"; + authors = [ + "The ICU4X Project Developers" + ]; + dependencies = [ + { + name = "displaydoc"; + packageId = "displaydoc"; + usesDefaultFeatures = false; + } + { + name = "zerovec"; + packageId = "zerovec"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "alloc" = [ "serde_core?/alloc" "zerovec?/alloc" ]; + "databake" = [ "dep:databake" ]; + "default" = [ "alloc" ]; + "serde" = [ "dep:serde_core" ]; + "zerovec" = [ "dep:zerovec" ]; + }; + resolvedDefaultFeatures = [ "zerovec" ]; + }; "tinyvec" = rec { crateName = "tinyvec"; - version = "1.8.0"; + version = "1.11.0"; edition = "2018"; - sha256 = "0f5rf6a2wzyv6w4jmfga9iw7rp9fp5gf4d604xgjsf3d9wgqhpj4"; + sha256 = "1wvycrghzmaysnw34kzwnf0mfx6r75045s24r214wnnjadqfcq9y"; authors = [ "Lokathor " ]; @@ -12084,9 +13152,13 @@ rec { features = { "alloc" = [ "tinyvec_macros" ]; "arbitrary" = [ "dep:arbitrary" ]; + "borsh" = [ "dep:borsh" ]; + "defmt" = [ "dep:defmt" ]; + "generic-array" = [ "dep:generic-array" ]; + "latest_stable_rust" = [ "rustc_1_61" ]; "real_blackbox" = [ "criterion/real_blackbox" ]; - "rustc_1_57" = [ "rustc_1_55" ]; - "serde" = [ "dep:serde" ]; + "rustc_1_61" = [ "rustc_1_57" ]; + "serde" = [ "dep:serde_core" ]; "std" = [ "alloc" ]; "tinyvec_macros" = [ "dep:tinyvec_macros" ]; }; @@ -12104,23 +13176,30 @@ rec { }; "tokio" = rec { crateName = "tokio"; - version = "1.40.0"; + version = "1.51.0"; edition = "2021"; - sha256 = "166rllhfkyqp0fs7sxn6crv74iizi4wzd3cvxkcpmlk52qip1c72"; + sha256 = "1k90g0ij7vap4lwz45gr0kq97f637smdmxjyq47vjyjazk0c9l9b"; authors = [ "Tokio Contributors " ]; dependencies = [ - { - name = "backtrace"; - packageId = "backtrace"; - target = { target, features }: (target."tokio_taskdump" or false); - } { name = "bytes"; packageId = "bytes"; optional = true; } + { + name = "libc"; + packageId = "libc"; + optional = true; + target = { target, features }: ((target."tokio_unstable" or false) && ("linux" == target."os" or null)); + } + { + name = "libc"; + packageId = "libc"; + optional = true; + target = { target, features }: ("wasi" == target."os" or null); + } { name = "libc"; packageId = "libc"; @@ -12133,6 +13212,14 @@ rec { optional = true; usesDefaultFeatures = false; } + { + name = "mio"; + packageId = "mio"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: ((target."tokio_unstable" or false) && ("linux" == target."os" or null)); + features = [ "os-poll" "os-ext" ]; + } { name = "pin-project-lite"; packageId = "pin-project-lite"; @@ -12147,7 +13234,7 @@ rec { name = "socket2"; packageId = "socket2"; optional = true; - target = { target, features }: (!(builtins.elem "wasm" target."family")); + target = { target, features }: ((!(builtins.elem "wasm" target."family")) || (("wasi" == target."os" or null) && (!("p1" == target."env" or null)))); features = [ "all" ]; } { @@ -12157,7 +13244,7 @@ rec { } { name = "windows-sys"; - packageId = "windows-sys 0.52.0"; + packageId = "windows-sys 0.61.2"; optional = true; target = { target, features }: (target."windows" or false); } @@ -12166,23 +13253,24 @@ rec { { name = "libc"; packageId = "libc"; - target = {target, features}: (target."unix" or false); + target = { target, features }: (target."unix" or false); } { name = "socket2"; packageId = "socket2"; - target = {target, features}: (!(builtins.elem "wasm" target."family")); + target = { target, features }: (!(builtins.elem "wasm" target."family")); } { name = "windows-sys"; - packageId = "windows-sys 0.52.0"; - target = {target, features}: (target."windows" or false); + packageId = "windows-sys 0.61.2"; + target = { target, features }: (target."windows" or false); features = [ "Win32_Foundation" "Win32_Security_Authorization" ]; } ]; features = { "bytes" = [ "dep:bytes" ]; "full" = [ "fs" "io-util" "io-std" "macros" "net" "parking_lot" "process" "rt" "rt-multi-thread" "signal" "sync" "time" ]; + "io-uring" = [ "dep:io-uring" "libc" "mio/os-poll" "mio/os-ext" "dep:slab" ]; "io-util" = [ "bytes" ]; "libc" = [ "dep:libc" ]; "macros" = [ "tokio-macros" ]; @@ -12194,6 +13282,7 @@ rec { "signal" = [ "libc" "mio/os-poll" "mio/net" "mio/os-ext" "signal-hook-registry" "windows-sys/Win32_Foundation" "windows-sys/Win32_System_Console" ]; "signal-hook-registry" = [ "dep:signal-hook-registry" ]; "socket2" = [ "dep:socket2" ]; + "taskdump" = [ "dep:backtrace" ]; "test-util" = [ "rt" "sync" "time" ]; "tokio-macros" = [ "dep:tokio-macros" ]; "tracing" = [ "dep:tracing" ]; @@ -12203,9 +13292,9 @@ rec { }; "tokio-macros" = rec { crateName = "tokio-macros"; - version = "2.4.0"; + version = "2.7.0"; edition = "2021"; - sha256 = "0lnpg14h1v3fh2jvnc8cz7cjf0m7z1xgkwfpcyy632g829imjgb9"; + sha256 = "15m4f37mdafs0gg36sh0rskm1i768lb7zmp8bw67kaxr3avnqniq"; procMacro = true; libName = "tokio_macros"; authors = [ @@ -12222,7 +13311,7 @@ rec { } { name = "syn"; - packageId = "syn 2.0.87"; + packageId = "syn 2.0.117"; features = [ "full" ]; } ]; @@ -12230,9 +13319,9 @@ rec { }; "tokio-rustls" = rec { crateName = "tokio-rustls"; - version = "0.26.0"; + version = "0.26.4"; edition = "2021"; - sha256 = "1m00czrmk8x7pdjnz10a3da3i1d0sdf9j9vfp5dnk5ss1q6w8yqc"; + sha256 = "0qggwknz9w4bbsv1z158hlnpkm97j3w8v31586jipn99byaala8p"; libName = "tokio_rustls"; dependencies = [ { @@ -12241,11 +13330,6 @@ rec { usesDefaultFeatures = false; features = [ "std" ]; } - { - name = "rustls-pki-types"; - packageId = "rustls-pki-types"; - rename = "pki-types"; - } { name = "tokio"; packageId = "tokio"; @@ -12261,19 +13345,21 @@ rec { features = { "aws-lc-rs" = [ "aws_lc_rs" ]; "aws_lc_rs" = [ "rustls/aws_lc_rs" ]; + "brotli" = [ "rustls/brotli" ]; "default" = [ "logging" "tls12" "aws_lc_rs" ]; "fips" = [ "rustls/fips" ]; "logging" = [ "rustls/logging" ]; "ring" = [ "rustls/ring" ]; "tls12" = [ "rustls/tls12" ]; + "zlib" = [ "rustls/zlib" ]; }; - resolvedDefaultFeatures = [ "logging" "ring" "tls12" ]; + resolvedDefaultFeatures = [ "aws-lc-rs" "aws_lc_rs" "logging" "tls12" ]; }; "tokio-stream" = rec { crateName = "tokio-stream"; - version = "0.1.17"; + version = "0.1.18"; edition = "2021"; - sha256 = "0ix0770hfp4x5rh5bl7vsnr3d4iz4ms43i522xw70xaap9xqv9gc"; + sha256 = "0w3cj33605ab58wqd382gnla5pnd9hnr00xgg333np5bka04knij"; libName = "tokio_stream"; authors = [ "Tokio Contributors " @@ -12311,13 +13397,13 @@ rec { "time" = [ "tokio/time" ]; "tokio-util" = [ "dep:tokio-util" ]; }; - resolvedDefaultFeatures = [ "default" "net" "time" ]; + resolvedDefaultFeatures = [ "default" "time" ]; }; "tokio-tungstenite" = rec { crateName = "tokio-tungstenite"; - version = "0.26.2"; + version = "0.28.0"; edition = "2018"; - sha256 = "117hwxfwmpxazxks076w5i73xj7cgv5iqs7x2rnbzln60zvaz7bs"; + sha256 = "0mzqgc94csy5ai6kx5yxj548shppq2kwdbyrsdsilhycvmn40nnj"; libName = "tokio_tungstenite"; authors = [ "Daniel Abramov " @@ -12376,9 +13462,9 @@ rec { }; "tokio-util" = rec { crateName = "tokio-util"; - version = "0.7.11"; + version = "0.7.18"; edition = "2021"; - sha256 = "1qcz30db6m8lxkl61b3nic4bim1symi636nhbb3rmi3i6xxv9xlw"; + sha256 = "1600rd47pylwn7cap1k7s5nvdaa9j7w8kqigzp1qy7mh0p4cxscs"; libName = "tokio_util"; authors = [ "Tokio Contributors " @@ -12421,50 +13507,125 @@ rec { features = { "__docs_rs" = [ "futures-util" ]; "compat" = [ "futures-io" ]; - "full" = [ "codec" "compat" "io-util" "time" "net" "rt" ]; + "full" = [ "codec" "compat" "io-util" "time" "net" "rt" "join-map" ]; "futures-io" = [ "dep:futures-io" ]; "futures-util" = [ "dep:futures-util" ]; "hashbrown" = [ "dep:hashbrown" ]; "io-util" = [ "io" "tokio/rt" "tokio/io-util" ]; + "join-map" = [ "rt" "hashbrown" ]; "net" = [ "tokio/net" ]; - "rt" = [ "tokio/rt" "tokio/sync" "futures-util" "hashbrown" ]; + "rt" = [ "tokio/rt" "tokio/sync" "futures-util" ]; "slab" = [ "dep:slab" ]; "time" = [ "tokio/time" "slab" ]; "tracing" = [ "dep:tracing" ]; }; resolvedDefaultFeatures = [ "codec" "default" "io" "slab" "time" ]; }; + "toml" = rec { + crateName = "toml"; + version = "1.1.2+spec-1.1.0"; + edition = "2024"; + sha256 = "1vpggpamqhw4852kic7465zsidczsla06wz6friqkkfbhigd3ww1"; + dependencies = [ + { + name = "indexmap"; + packageId = "indexmap"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "serde_core"; + packageId = "serde_core"; + optional = true; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "serde_spanned"; + packageId = "serde_spanned"; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "toml_datetime"; + packageId = "toml_datetime"; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "toml_parser"; + packageId = "toml_parser"; + optional = true; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "toml_writer"; + packageId = "toml_writer"; + optional = true; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "winnow"; + packageId = "winnow"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "debug" = [ "std" "toml_parser?/debug" "dep:anstream" "dep:anstyle" ]; + "default" = [ "std" "serde" "parse" "display" ]; + "display" = [ "dep:toml_writer" ]; + "fast_hash" = [ "preserve_order" "dep:foldhash" ]; + "parse" = [ "dep:toml_parser" "dep:winnow" ]; + "preserve_order" = [ "dep:indexmap" "std" ]; + "serde" = [ "dep:serde_core" "toml_datetime/serde" "serde_spanned/serde" ]; + "std" = [ "indexmap?/std" "serde_core?/std" "toml_parser?/std" "toml_writer?/std" "toml_datetime/std" "serde_spanned/std" ]; + }; + resolvedDefaultFeatures = [ "default" "display" "parse" "serde" "std" ]; + }; "toml_datetime" = rec { crateName = "toml_datetime"; - version = "0.6.8"; - edition = "2021"; - sha256 = "0hgv7v9g35d7y9r2afic58jvlwnf73vgd1mz2k8gihlgrf73bmqd"; - authors = [ - "Alex Crichton " + version = "1.1.1+spec-1.1.0"; + edition = "2024"; + sha256 = "1mws2mkkf46l7inn77azhm0vdwxngv9vsbhbl0ah33p2c9gzcr9i"; + dependencies = [ + { + name = "serde_core"; + packageId = "serde_core"; + optional = true; + usesDefaultFeatures = false; + } ]; features = { - "serde" = [ "dep:serde" ]; + "alloc" = [ "serde_core?/alloc" ]; + "default" = [ "std" ]; + "serde" = [ "dep:serde_core" ]; + "std" = [ "alloc" "serde_core?/std" ]; }; + resolvedDefaultFeatures = [ "alloc" "default" "serde" "std" ]; }; "toml_edit" = rec { crateName = "toml_edit"; - version = "0.22.20"; - edition = "2021"; - sha256 = "07ffw4626k6abicjxb2idh12f1p5fn965zk660zhqsyj5b048g2q"; - authors = [ - "Andronik Ordian " - "Ed Page " - ]; + version = "0.25.10+spec-1.1.0"; + edition = "2024"; + sha256 = "06rdlg34g1ply2drbp0fr4xypsvdmfay714s75n5w8wy2v51h958"; dependencies = [ { name = "indexmap"; - packageId = "indexmap 2.5.0"; + packageId = "indexmap"; features = [ "std" ]; } { name = "toml_datetime"; packageId = "toml_datetime"; } + { + name = "toml_parser"; + packageId = "toml_parser"; + optional = true; + } { name = "winnow"; packageId = "winnow"; @@ -12472,41 +13633,62 @@ rec { } ]; features = { + "debug" = [ "toml_parser?/debug" "dep:anstream" "dep:anstyle" "display" ]; "default" = [ "parse" "display" ]; - "parse" = [ "dep:winnow" ]; - "perf" = [ "dep:kstring" ]; - "serde" = [ "dep:serde" "toml_datetime/serde" "dep:serde_spanned" ]; + "display" = [ "dep:toml_writer" ]; + "parse" = [ "dep:toml_parser" "dep:winnow" ]; + "serde" = [ "dep:serde_core" "toml_datetime/serde" "dep:serde_spanned" ]; }; - resolvedDefaultFeatures = [ "default" "display" "parse" ]; + resolvedDefaultFeatures = [ "parse" ]; }; - "tonic" = rec { - crateName = "tonic"; - version = "0.12.3"; - edition = "2021"; - sha256 = "0ljd1lfjpw0vrm5wbv15x6nq2i38llsanls5rkzmdn2n0wrmnz47"; - authors = [ - "Lucio Franco " - ]; + "toml_parser" = rec { + crateName = "toml_parser"; + version = "1.1.2+spec-1.1.0"; + edition = "2024"; + sha256 = "09kmzc55a0j21whm290wlf5a8b18a0qc87a1s8sncrckc6wfkax2"; dependencies = [ { - name = "async-stream"; - packageId = "async-stream"; - optional = true; + name = "winnow"; + packageId = "winnow"; + usesDefaultFeatures = false; } + ]; + features = { + "debug" = [ "std" "dep:anstream" "dep:anstyle" ]; + "default" = [ "std" ]; + "simd" = [ "winnow/simd" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "std" ]; + }; + "toml_writer" = rec { + crateName = "toml_writer"; + version = "1.1.1+spec-1.1.0"; + edition = "2024"; + sha256 = "1nwjhvvrxz8f4ck1qi4xcz2x9qhpci37nrknhxxf9sqk22dsyvbm"; + features = { + "default" = [ "std" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" "std" ]; + }; + "tonic" = rec { + crateName = "tonic"; + version = "0.14.5"; + edition = "2021"; + sha256 = "1v4k7aa28m7722gz9qak2jiy7lis1ycm4fdmq63iip4m0qdcdizy"; + authors = [ + "Lucio Franco " + ]; + dependencies = [ { name = "async-trait"; packageId = "async-trait"; optional = true; } - { - name = "axum"; - packageId = "axum 0.7.5"; - optional = true; - usesDefaultFeatures = false; - } { name = "base64"; - packageId = "base64 0.22.1"; + packageId = "base64"; } { name = "bytes"; @@ -12517,11 +13699,6 @@ rec { packageId = "flate2"; optional = true; } - { - name = "h2"; - packageId = "h2"; - optional = true; - } { name = "http"; packageId = "http"; @@ -12560,17 +13737,8 @@ rec { packageId = "pin-project"; } { - name = "prost"; - packageId = "prost"; - optional = true; - usesDefaultFeatures = false; - features = [ "std" ]; - } - { - name = "socket2"; - packageId = "socket2"; - optional = true; - features = [ "all" ]; + name = "sync_wrapper"; + packageId = "sync_wrapper"; } { name = "tokio"; @@ -12585,7 +13753,7 @@ rec { } { name = "tower"; - packageId = "tower 0.4.13"; + packageId = "tower"; optional = true; usesDefaultFeatures = false; } @@ -12606,157 +13774,64 @@ rec { { name = "tokio"; packageId = "tokio"; - features = [ "rt" "macros" ]; + features = [ "rt-multi-thread" "macros" "test-util" ]; } { name = "tower"; - packageId = "tower 0.4.13"; - features = [ "full" ]; + packageId = "tower"; + features = [ "load-shed" "timeout" ]; } ]; features = { - "channel" = [ "dep:hyper" "hyper?/client" "dep:hyper-util" "hyper-util?/client-legacy" "dep:tower" "tower?/balance" "tower?/buffer" "tower?/discover" "tower?/limit" "tower?/util" "dep:tokio" "tokio?/time" "dep:hyper-timeout" ]; + "_tls-any" = [ "dep:tokio" "tokio?/rt" "tokio?/macros" "tls-connect-info" ]; + "channel" = [ "dep:hyper" "hyper?/client" "dep:hyper-util" "hyper-util?/client-legacy" "dep:tower" "tower?/balance" "tower?/buffer" "tower?/discover" "tower?/limit" "tower?/load-shed" "tower?/util" "dep:tokio" "tokio?/time" "dep:hyper-timeout" ]; "codegen" = [ "dep:async-trait" ]; - "default" = [ "transport" "codegen" "prost" ]; + "default" = [ "router" "transport" "codegen" ]; + "deflate" = [ "dep:flate2" ]; "gzip" = [ "dep:flate2" ]; - "prost" = [ "dep:prost" ]; "router" = [ "dep:axum" "dep:tower" "tower?/util" ]; - "server" = [ "router" "dep:async-stream" "dep:h2" "dep:hyper" "hyper?/server" "dep:hyper-util" "hyper-util?/service" "hyper-util?/server-auto" "dep:socket2" "dep:tokio" "tokio?/macros" "tokio?/net" "tokio?/time" "tokio-stream/net" "dep:tower" "tower?/util" "tower?/limit" ]; - "tls" = [ "dep:rustls-pemfile" "dep:tokio-rustls" "dep:tokio" "tokio?/rt" "tokio?/macros" ]; - "tls-native-roots" = [ "tls" "channel" "dep:rustls-native-certs" ]; - "tls-roots" = [ "tls-native-roots" ]; - "tls-webpki-roots" = [ "tls" "channel" "dep:webpki-roots" ]; + "server" = [ "dep:h2" "dep:hyper" "hyper?/server" "dep:hyper-util" "hyper-util?/service" "hyper-util?/server-auto" "dep:socket2" "dep:tokio" "tokio?/macros" "tokio?/net" "tokio?/time" "tokio-stream/net" "dep:tower" "tower?/util" "tower?/limit" "tower?/load-shed" ]; + "tls-aws-lc" = [ "_tls-any" "tokio-rustls/aws-lc-rs" ]; + "tls-connect-info" = [ "dep:tokio-rustls" ]; + "tls-native-roots" = [ "_tls-any" "channel" "dep:rustls-native-certs" ]; + "tls-ring" = [ "_tls-any" "tokio-rustls/ring" ]; + "tls-webpki-roots" = [ "_tls-any" "channel" "dep:webpki-roots" ]; "transport" = [ "server" "channel" ]; "zstd" = [ "dep:zstd" ]; }; - resolvedDefaultFeatures = [ "channel" "codegen" "gzip" "prost" "router" "server" "transport" ]; + resolvedDefaultFeatures = [ "channel" "codegen" "gzip" ]; }; - "tower 0.4.13" = rec { - crateName = "tower"; - version = "0.4.13"; - edition = "2018"; - sha256 = "073wncyqav4sak1p755hf6vl66njgfc1z1g1di9rxx3cvvh9pymq"; + "tonic-prost" = rec { + crateName = "tonic-prost"; + version = "0.14.5"; + edition = "2021"; + sha256 = "02fkg2bv87q0yds2wz3w0s7i1x6qcgbrl00dy6ipajdapfh7clx5"; + libName = "tonic_prost"; authors = [ - "Tower Maintainers " + "Lucio Franco " ]; dependencies = [ { - name = "futures-core"; - packageId = "futures-core"; - optional = true; - } - { - name = "futures-util"; - packageId = "futures-util"; - optional = true; - usesDefaultFeatures = false; - features = [ "alloc" ]; - } - { - name = "indexmap"; - packageId = "indexmap 1.9.3"; - optional = true; - } - { - name = "pin-project"; - packageId = "pin-project"; - optional = true; - } - { - name = "pin-project-lite"; - packageId = "pin-project-lite"; - optional = true; - } - { - name = "rand"; - packageId = "rand 0.8.5"; - optional = true; - features = [ "small_rng" ]; - } - { - name = "slab"; - packageId = "slab"; - optional = true; - } - { - name = "tokio"; - packageId = "tokio"; - optional = true; - features = [ "sync" ]; - } - { - name = "tokio-util"; - packageId = "tokio-util"; - optional = true; - usesDefaultFeatures = false; - } - { - name = "tower-layer"; - packageId = "tower-layer"; + name = "bytes"; + packageId = "bytes"; } { - name = "tower-service"; - packageId = "tower-service"; + name = "prost"; + packageId = "prost"; } { - name = "tracing"; - packageId = "tracing"; - optional = true; + name = "tonic"; + packageId = "tonic"; usesDefaultFeatures = false; - features = [ "std" ]; - } - ]; - devDependencies = [ - { - name = "pin-project-lite"; - packageId = "pin-project-lite"; - } - { - name = "tokio"; - packageId = "tokio"; - features = [ "macros" "sync" "test-util" "rt-multi-thread" ]; } ]; - features = { - "__common" = [ "futures-core" "pin-project-lite" ]; - "balance" = [ "discover" "load" "ready-cache" "make" "rand" "slab" ]; - "buffer" = [ "__common" "tokio/sync" "tokio/rt" "tokio-util" "tracing" ]; - "default" = [ "log" ]; - "discover" = [ "__common" ]; - "filter" = [ "__common" "futures-util" ]; - "full" = [ "balance" "buffer" "discover" "filter" "hedge" "limit" "load" "load-shed" "make" "ready-cache" "reconnect" "retry" "spawn-ready" "steer" "timeout" "util" ]; - "futures-core" = [ "dep:futures-core" ]; - "futures-util" = [ "dep:futures-util" ]; - "hdrhistogram" = [ "dep:hdrhistogram" ]; - "hedge" = [ "util" "filter" "futures-util" "hdrhistogram" "tokio/time" "tracing" ]; - "indexmap" = [ "dep:indexmap" ]; - "limit" = [ "__common" "tokio/time" "tokio/sync" "tokio-util" "tracing" ]; - "load" = [ "__common" "tokio/time" "tracing" ]; - "load-shed" = [ "__common" ]; - "log" = [ "tracing/log" ]; - "make" = [ "futures-util" "pin-project-lite" "tokio/io-std" ]; - "pin-project" = [ "dep:pin-project" ]; - "pin-project-lite" = [ "dep:pin-project-lite" ]; - "rand" = [ "dep:rand" ]; - "ready-cache" = [ "futures-core" "futures-util" "indexmap" "tokio/sync" "tracing" "pin-project-lite" ]; - "reconnect" = [ "make" "tokio/io-std" "tracing" ]; - "retry" = [ "__common" "tokio/time" ]; - "slab" = [ "dep:slab" ]; - "spawn-ready" = [ "__common" "futures-util" "tokio/sync" "tokio/rt" "util" "tracing" ]; - "timeout" = [ "pin-project-lite" "tokio/time" ]; - "tokio" = [ "dep:tokio" ]; - "tokio-stream" = [ "dep:tokio-stream" ]; - "tokio-util" = [ "dep:tokio-util" ]; - "tracing" = [ "dep:tracing" ]; - "util" = [ "__common" "futures-util" "pin-project" ]; - }; - resolvedDefaultFeatures = [ "__common" "balance" "buffer" "discover" "futures-core" "futures-util" "indexmap" "limit" "load" "log" "make" "pin-project" "pin-project-lite" "rand" "ready-cache" "slab" "tokio" "tokio-util" "tracing" "util" ]; + }; - "tower 0.5.2" = rec { + "tower" = rec { crateName = "tower"; - version = "0.5.2"; + version = "0.5.3"; edition = "2018"; - sha256 = "1ybmd59nm4abl9bsvy6rx31m4zvzp5rja2slzpn712y9b68ssffh"; + sha256 = "1m5i3a2z1sgs8nnz1hgfq2nr4clpdmizlp1d9qsg358ma5iyzrgb"; authors = [ "Tower Maintainers " ]; @@ -12773,21 +13848,30 @@ rec { usesDefaultFeatures = false; features = [ "alloc" ]; } + { + name = "indexmap"; + packageId = "indexmap"; + optional = true; + } { name = "pin-project-lite"; packageId = "pin-project-lite"; optional = true; } + { + name = "slab"; + packageId = "slab"; + optional = true; + } { name = "sync_wrapper"; - packageId = "sync_wrapper 1.0.1"; + packageId = "sync_wrapper"; optional = true; } { name = "tokio"; packageId = "tokio"; optional = true; - features = [ "sync" ]; } { name = "tokio-util"; @@ -12813,8 +13897,10 @@ rec { ]; devDependencies = [ { - name = "pin-project-lite"; - packageId = "pin-project-lite"; + name = "futures-util"; + packageId = "futures-util"; + usesDefaultFeatures = false; + features = [ "async-await-macro" ]; } { name = "tokio"; @@ -12829,56 +13915,65 @@ rec { } ]; features = { - "__common" = [ "futures-core" "pin-project-lite" ]; "balance" = [ "discover" "load" "ready-cache" "make" "slab" "util" ]; - "buffer" = [ "__common" "tokio/sync" "tokio/rt" "tokio-util" "tracing" ]; - "discover" = [ "__common" ]; - "filter" = [ "__common" "futures-util" ]; + "buffer" = [ "tokio/sync" "tokio/rt" "tokio-util" "tracing" "pin-project-lite" ]; + "discover" = [ "futures-core" "pin-project-lite" ]; + "filter" = [ "futures-util" "pin-project-lite" ]; "full" = [ "balance" "buffer" "discover" "filter" "hedge" "limit" "load" "load-shed" "make" "ready-cache" "reconnect" "retry" "spawn-ready" "steer" "timeout" "util" ]; "futures-core" = [ "dep:futures-core" ]; "futures-util" = [ "dep:futures-util" ]; "hdrhistogram" = [ "dep:hdrhistogram" ]; "hedge" = [ "util" "filter" "futures-util" "hdrhistogram" "tokio/time" "tracing" ]; "indexmap" = [ "dep:indexmap" ]; - "limit" = [ "__common" "tokio/time" "tokio/sync" "tokio-util" "tracing" ]; - "load" = [ "__common" "tokio/time" "tracing" ]; - "load-shed" = [ "__common" ]; + "limit" = [ "tokio/time" "tokio/sync" "tokio-util" "tracing" "pin-project-lite" ]; + "load" = [ "tokio/time" "tracing" "pin-project-lite" ]; + "load-shed" = [ "pin-project-lite" ]; "log" = [ "tracing/log" ]; - "make" = [ "futures-util" "pin-project-lite" "tokio/io-std" ]; + "make" = [ "pin-project-lite" "tokio" ]; "pin-project-lite" = [ "dep:pin-project-lite" ]; "ready-cache" = [ "futures-core" "futures-util" "indexmap" "tokio/sync" "tracing" "pin-project-lite" ]; - "reconnect" = [ "make" "tokio/io-std" "tracing" ]; - "retry" = [ "__common" "tokio/time" "util" ]; + "reconnect" = [ "make" "tracing" ]; + "retry" = [ "tokio/time" "util" ]; "slab" = [ "dep:slab" ]; - "spawn-ready" = [ "__common" "futures-util" "tokio/sync" "tokio/rt" "util" "tracing" ]; + "spawn-ready" = [ "futures-util" "tokio/sync" "tokio/rt" "util" "tracing" ]; "sync_wrapper" = [ "dep:sync_wrapper" ]; "timeout" = [ "pin-project-lite" "tokio/time" ]; "tokio" = [ "dep:tokio" ]; - "tokio-stream" = [ "dep:tokio-stream" ]; "tokio-util" = [ "dep:tokio-util" ]; "tracing" = [ "dep:tracing" ]; - "util" = [ "__common" "futures-util" "pin-project-lite" "sync_wrapper" ]; + "util" = [ "futures-core" "futures-util" "pin-project-lite" "sync_wrapper" ]; }; - resolvedDefaultFeatures = [ "__common" "buffer" "filter" "futures-core" "futures-util" "log" "make" "pin-project-lite" "sync_wrapper" "tokio" "tokio-util" "tracing" "util" ]; + resolvedDefaultFeatures = [ "balance" "buffer" "discover" "filter" "futures-core" "futures-util" "indexmap" "limit" "load" "load-shed" "log" "make" "pin-project-lite" "ready-cache" "retry" "slab" "sync_wrapper" "timeout" "tokio" "tokio-util" "tracing" "util" ]; }; - "tower-http 0.5.2" = rec { + "tower-http" = rec { crateName = "tower-http"; - version = "0.5.2"; + version = "0.6.8"; edition = "2018"; - sha256 = "1xakj3x0anp55gjqibiwvzma5iz0w9pcjsr7qk97sx4qm4sd970y"; + sha256 = "1y514jwzbyrmrkbaajpwmss4rg0mak82k16d6588w9ncaffmbrnl"; libName = "tower_http"; authors = [ "Tower Maintainers " ]; dependencies = [ + { + name = "base64"; + packageId = "base64"; + optional = true; + } { name = "bitflags"; - packageId = "bitflags 2.6.0"; + packageId = "bitflags"; } { name = "bytes"; packageId = "bytes"; } + { + name = "futures-util"; + packageId = "futures-util"; + optional = true; + usesDefaultFeatures = false; + } { name = "http"; packageId = "http"; @@ -12886,10 +13981,12 @@ rec { { name = "http-body"; packageId = "http-body"; + optional = true; } { - name = "http-body-util"; - packageId = "http-body-util"; + name = "iri-string"; + packageId = "iri-string"; + optional = true; } { name = "mime"; @@ -12901,6 +13998,11 @@ rec { name = "pin-project-lite"; packageId = "pin-project-lite"; } + { + name = "tower"; + packageId = "tower"; + optional = true; + } { name = "tower-layer"; packageId = "tower-layer"; @@ -12909,189 +14011,102 @@ rec { name = "tower-service"; packageId = "tower-service"; } + { + name = "tracing"; + packageId = "tracing"; + optional = true; + usesDefaultFeatures = false; + } ]; devDependencies = [ { name = "bytes"; packageId = "bytes"; } + { + name = "futures-util"; + packageId = "futures-util"; + } + { + name = "http-body"; + packageId = "http-body"; + } + { + name = "tower"; + packageId = "tower"; + features = [ "buffer" "util" "retry" "make" "timeout" ]; + } ]; features = { "async-compression" = [ "dep:async-compression" ]; "auth" = [ "base64" "validate-request" ]; "base64" = [ "dep:base64" ]; - "catch-panic" = [ "tracing" "futures-util/std" ]; - "compression-br" = [ "async-compression/brotli" "futures-core" "tokio-util" "tokio" ]; - "compression-deflate" = [ "async-compression/zlib" "futures-core" "tokio-util" "tokio" ]; + "catch-panic" = [ "tracing" "futures-util/std" "dep:http-body" "dep:http-body-util" ]; + "compression-br" = [ "async-compression/brotli" "futures-core" "dep:http-body" "tokio-util" "tokio" ]; + "compression-deflate" = [ "async-compression/zlib" "futures-core" "dep:http-body" "tokio-util" "tokio" ]; "compression-full" = [ "compression-br" "compression-deflate" "compression-gzip" "compression-zstd" ]; - "compression-gzip" = [ "async-compression/gzip" "futures-core" "tokio-util" "tokio" ]; - "compression-zstd" = [ "async-compression/zstd" "futures-core" "tokio-util" "tokio" ]; - "decompression-br" = [ "async-compression/brotli" "futures-core" "tokio-util" "tokio" ]; - "decompression-deflate" = [ "async-compression/zlib" "futures-core" "tokio-util" "tokio" ]; + "compression-gzip" = [ "async-compression/gzip" "futures-core" "dep:http-body" "tokio-util" "tokio" ]; + "compression-zstd" = [ "async-compression/zstd" "futures-core" "dep:http-body" "tokio-util" "tokio" ]; + "decompression-br" = [ "async-compression/brotli" "futures-core" "dep:http-body" "dep:http-body-util" "tokio-util" "tokio" ]; + "decompression-deflate" = [ "async-compression/zlib" "futures-core" "dep:http-body" "dep:http-body-util" "tokio-util" "tokio" ]; "decompression-full" = [ "decompression-br" "decompression-deflate" "decompression-gzip" "decompression-zstd" ]; - "decompression-gzip" = [ "async-compression/gzip" "futures-core" "tokio-util" "tokio" ]; - "decompression-zstd" = [ "async-compression/zstd" "futures-core" "tokio-util" "tokio" ]; - "follow-redirect" = [ "futures-util" "iri-string" "tower/util" ]; - "fs" = [ "futures-util" "tokio/fs" "tokio-util/io" "tokio/io-util" "dep:http-range-header" "mime_guess" "mime" "percent-encoding" "httpdate" "set-status" "futures-util/alloc" "tracing" ]; + "decompression-gzip" = [ "async-compression/gzip" "futures-core" "dep:http-body" "dep:http-body-util" "tokio-util" "tokio" ]; + "decompression-zstd" = [ "async-compression/zstd" "futures-core" "dep:http-body" "dep:http-body-util" "tokio-util" "tokio" ]; + "follow-redirect" = [ "futures-util" "dep:http-body" "iri-string" "tower/util" ]; + "fs" = [ "futures-core" "futures-util" "dep:http-body" "dep:http-body-util" "tokio/fs" "tokio-util/io" "tokio/io-util" "dep:http-range-header" "mime_guess" "mime" "percent-encoding" "httpdate" "set-status" "futures-util/alloc" "tracing" ]; "full" = [ "add-extension" "auth" "catch-panic" "compression-full" "cors" "decompression-full" "follow-redirect" "fs" "limit" "map-request-body" "map-response-body" "metrics" "normalize-path" "propagate-header" "redirect" "request-id" "sensitive-headers" "set-header" "set-status" "timeout" "trace" "util" "validate-request" ]; "futures-core" = [ "dep:futures-core" ]; "futures-util" = [ "dep:futures-util" ]; "httpdate" = [ "dep:httpdate" ]; "iri-string" = [ "dep:iri-string" ]; - "metrics" = [ "tokio/time" ]; + "limit" = [ "dep:http-body" "dep:http-body-util" ]; + "metrics" = [ "dep:http-body" "tokio/time" ]; "mime" = [ "dep:mime" ]; "mime_guess" = [ "dep:mime_guess" ]; "percent-encoding" = [ "dep:percent-encoding" ]; "request-id" = [ "uuid" ]; - "timeout" = [ "tokio/time" ]; + "timeout" = [ "dep:http-body" "tokio/time" ]; "tokio" = [ "dep:tokio" ]; "tokio-util" = [ "dep:tokio-util" ]; "tower" = [ "dep:tower" ]; - "trace" = [ "tracing" ]; + "trace" = [ "dep:http-body" "tracing" ]; "tracing" = [ "dep:tracing" ]; "util" = [ "tower" ]; "uuid" = [ "dep:uuid" ]; "validate-request" = [ "mime" ]; }; - resolvedDefaultFeatures = [ "default" "mime" "validate-request" ]; + resolvedDefaultFeatures = [ "auth" "base64" "default" "follow-redirect" "futures-util" "iri-string" "map-response-body" "mime" "tower" "trace" "tracing" "util" "validate-request" ]; }; - "tower-http 0.6.2" = rec { - crateName = "tower-http"; - version = "0.6.2"; + "tower-layer" = rec { + crateName = "tower-layer"; + version = "0.3.3"; edition = "2018"; - sha256 = "15wnvhl6cpir9125s73bqjzjsvfb0fmndmsimnl2ddnlhfvs6gs0"; - libName = "tower_http"; + sha256 = "03kq92fdzxin51w8iqix06dcfgydyvx7yr6izjq0p626v9n2l70j"; + libName = "tower_layer"; + authors = [ + "Tower Maintainers " + ]; + + }; + "tower-service" = rec { + crateName = "tower-service"; + version = "0.3.3"; + edition = "2018"; + sha256 = "1hzfkvkci33ra94xjx64vv3pp0sq346w06fpkcdwjcid7zhvdycd"; + libName = "tower_service"; authors = [ "Tower Maintainers " - ]; - dependencies = [ - { - name = "base64"; - packageId = "base64 0.22.1"; - optional = true; - } - { - name = "bitflags"; - packageId = "bitflags 2.6.0"; - } - { - name = "bytes"; - packageId = "bytes"; - } - { - name = "http"; - packageId = "http"; - } - { - name = "http-body"; - packageId = "http-body"; - optional = true; - } - { - name = "mime"; - packageId = "mime"; - optional = true; - usesDefaultFeatures = false; - } - { - name = "pin-project-lite"; - packageId = "pin-project-lite"; - } - { - name = "tower-layer"; - packageId = "tower-layer"; - } - { - name = "tower-service"; - packageId = "tower-service"; - } - { - name = "tracing"; - packageId = "tracing"; - optional = true; - usesDefaultFeatures = false; - } - ]; - devDependencies = [ - { - name = "bytes"; - packageId = "bytes"; - } - { - name = "http-body"; - packageId = "http-body"; - } - ]; - features = { - "async-compression" = [ "dep:async-compression" ]; - "auth" = [ "base64" "validate-request" ]; - "base64" = [ "dep:base64" ]; - "catch-panic" = [ "tracing" "futures-util/std" "dep:http-body" "dep:http-body-util" ]; - "compression-br" = [ "async-compression/brotli" "futures-core" "dep:http-body" "tokio-util" "tokio" ]; - "compression-deflate" = [ "async-compression/zlib" "futures-core" "dep:http-body" "tokio-util" "tokio" ]; - "compression-full" = [ "compression-br" "compression-deflate" "compression-gzip" "compression-zstd" ]; - "compression-gzip" = [ "async-compression/gzip" "futures-core" "dep:http-body" "tokio-util" "tokio" ]; - "compression-zstd" = [ "async-compression/zstd" "futures-core" "dep:http-body" "tokio-util" "tokio" ]; - "decompression-br" = [ "async-compression/brotli" "futures-core" "dep:http-body" "dep:http-body-util" "tokio-util" "tokio" ]; - "decompression-deflate" = [ "async-compression/zlib" "futures-core" "dep:http-body" "dep:http-body-util" "tokio-util" "tokio" ]; - "decompression-full" = [ "decompression-br" "decompression-deflate" "decompression-gzip" "decompression-zstd" ]; - "decompression-gzip" = [ "async-compression/gzip" "futures-core" "dep:http-body" "dep:http-body-util" "tokio-util" "tokio" ]; - "decompression-zstd" = [ "async-compression/zstd" "futures-core" "dep:http-body" "dep:http-body-util" "tokio-util" "tokio" ]; - "follow-redirect" = [ "futures-util" "dep:http-body" "iri-string" "tower/util" ]; - "fs" = [ "futures-util" "dep:http-body" "dep:http-body-util" "tokio/fs" "tokio-util/io" "tokio/io-util" "dep:http-range-header" "mime_guess" "mime" "percent-encoding" "httpdate" "set-status" "futures-util/alloc" "tracing" ]; - "full" = [ "add-extension" "auth" "catch-panic" "compression-full" "cors" "decompression-full" "follow-redirect" "fs" "limit" "map-request-body" "map-response-body" "metrics" "normalize-path" "propagate-header" "redirect" "request-id" "sensitive-headers" "set-header" "set-status" "timeout" "trace" "util" "validate-request" ]; - "futures-core" = [ "dep:futures-core" ]; - "futures-util" = [ "dep:futures-util" ]; - "httpdate" = [ "dep:httpdate" ]; - "iri-string" = [ "dep:iri-string" ]; - "limit" = [ "dep:http-body" "dep:http-body-util" ]; - "metrics" = [ "dep:http-body" "tokio/time" ]; - "mime" = [ "dep:mime" ]; - "mime_guess" = [ "dep:mime_guess" ]; - "percent-encoding" = [ "dep:percent-encoding" ]; - "request-id" = [ "uuid" ]; - "timeout" = [ "dep:http-body" "tokio/time" ]; - "tokio" = [ "dep:tokio" ]; - "tokio-util" = [ "dep:tokio-util" ]; - "tower" = [ "dep:tower" ]; - "trace" = [ "dep:http-body" "tracing" ]; - "tracing" = [ "dep:tracing" ]; - "util" = [ "tower" ]; - "uuid" = [ "dep:uuid" ]; - "validate-request" = [ "mime" ]; - }; - resolvedDefaultFeatures = [ "auth" "base64" "default" "map-response-body" "mime" "trace" "tracing" "validate-request" ]; - }; - "tower-layer" = rec { - crateName = "tower-layer"; - version = "0.3.3"; - edition = "2018"; - sha256 = "03kq92fdzxin51w8iqix06dcfgydyvx7yr6izjq0p626v9n2l70j"; - libName = "tower_layer"; - authors = [ - "Tower Maintainers " - ]; - - }; - "tower-service" = rec { - crateName = "tower-service"; - version = "0.3.3"; - edition = "2018"; - sha256 = "1hzfkvkci33ra94xjx64vv3pp0sq346w06fpkcdwjcid7zhvdycd"; - libName = "tower_service"; - authors = [ - "Tower Maintainers " - ]; - - }; - "tracing" = rec { - crateName = "tracing"; - version = "0.1.40"; - edition = "2018"; - sha256 = "1vv48dac9zgj9650pg2b4d0j3w6f3x9gbggf43scq5hrlysklln3"; - authors = [ - "Eliza Weisman " - "Tokio Contributors " + ]; + + }; + "tracing" = rec { + crateName = "tracing"; + version = "0.1.44"; + edition = "2018"; + sha256 = "006ilqkg1lmfdh3xhg3z762izfwmxcvz0w7m4qx2qajbz9i1drv3"; + authors = [ + "Eliza Weisman " + "Tokio Contributors " ]; dependencies = [ { @@ -13133,9 +14148,9 @@ rec { }; "tracing-appender" = rec { crateName = "tracing-appender"; - version = "0.2.3"; + version = "0.2.4"; edition = "2018"; - sha256 = "1kq69qyjvb4dxch5c9zgii6cqhy9nkk81z0r4pj3y2nc537fhrim"; + sha256 = "1bxf7xvsr89glbq174cx0b9pinaacbhlmc85y1ssniv2rq5lhvbq"; libName = "tracing_appender"; authors = [ "Zeki Sherif " @@ -13148,7 +14163,7 @@ rec { } { name = "thiserror"; - packageId = "thiserror 1.0.63"; + packageId = "thiserror 2.0.18"; } { name = "time"; @@ -13169,9 +14184,9 @@ rec { }; "tracing-attributes" = rec { crateName = "tracing-attributes"; - version = "0.1.27"; + version = "0.1.31"; edition = "2018"; - sha256 = "1rvb5dn9z6d0xdj14r403z0af0bbaqhg02hq4jc97g5wds6lqw1l"; + sha256 = "1np8d77shfvz0n7camx2bsf1qw0zg331lra0hxb4cdwnxjjwz43l"; procMacro = true; libName = "tracing_attributes"; authors = [ @@ -13190,7 +14205,7 @@ rec { } { name = "syn"; - packageId = "syn 2.0.87"; + packageId = "syn 2.0.117"; usesDefaultFeatures = false; features = [ "full" "parsing" "printing" "visit-mut" "clone-impls" "extra-traits" "proc-macro" ]; } @@ -13200,9 +14215,9 @@ rec { }; "tracing-core" = rec { crateName = "tracing-core"; - version = "0.1.33"; + version = "0.1.36"; edition = "2018"; - sha256 = "170gc7cxyjx824r9kr17zc9gvzx89ypqfdzq259pr56gg5bwjwp6"; + sha256 = "16mpbz6p8vd6j7sf925k9k8wzvm9vdfsjbynbmaxxyq6v7wwm5yv"; libName = "tracing_core"; authors = [ "Tokio Contributors " @@ -13231,9 +14246,9 @@ rec { }; "tracing-indicatif" = rec { crateName = "tracing-indicatif"; - version = "0.3.9"; - edition = "2021"; - sha256 = "188anka0xqrjbd7bzj41854rqvf02qszs9l2jzpr7n0c1r1wl0c2"; + version = "0.3.14"; + edition = "2024"; + sha256 = "0zn4m71shnxa37hxvzfxnnh724b3js728wq513q4k1s3w286kvz1"; libName = "tracing_indicatif"; dependencies = [ { @@ -13290,9 +14305,9 @@ rec { }; "tracing-opentelemetry" = rec { crateName = "tracing-opentelemetry"; - version = "0.29.0"; + version = "0.32.1"; edition = "2021"; - sha256 = "0dnca0b7bxbp6gd64skkvzy3p58yjh35kvnxpggz7sfwd4jjs7vj"; + sha256 = "1z2jjmxbkm1qawlb3bm99x8xwf4g8wjkbcknm9z4fv1w14nqzhhs"; libName = "tracing_opentelemetry"; dependencies = [ { @@ -13300,22 +14315,12 @@ rec { packageId = "js-sys"; target = { target, features }: (("wasm32" == target."arch" or null) && (!("wasi" == target."os" or null))); } - { - name = "once_cell"; - packageId = "once_cell"; - } { name = "opentelemetry"; packageId = "opentelemetry"; usesDefaultFeatures = false; features = [ "trace" ]; } - { - name = "opentelemetry_sdk"; - packageId = "opentelemetry_sdk"; - usesDefaultFeatures = false; - features = [ "trace" ]; - } { name = "smallvec"; packageId = "smallvec"; @@ -13355,12 +14360,6 @@ rec { packageId = "opentelemetry"; features = [ "trace" "metrics" ]; } - { - name = "opentelemetry_sdk"; - packageId = "opentelemetry_sdk"; - usesDefaultFeatures = false; - features = [ "trace" "rt-tokio" ]; - } { name = "tracing"; packageId = "tracing"; @@ -13375,23 +14374,19 @@ rec { } ]; features = { - "async-trait" = [ "dep:async-trait" ]; "default" = [ "tracing-log" "metrics" ]; - "futures-util" = [ "dep:futures-util" ]; "lazy_static" = [ "dep:lazy_static" ]; - "metrics" = [ "opentelemetry/metrics" "opentelemetry_sdk/metrics" "smallvec" ]; + "metrics" = [ "opentelemetry/metrics" "smallvec" ]; "smallvec" = [ "dep:smallvec" ]; - "thiserror" = [ "dep:thiserror" ]; - "thiserror-1" = [ "dep:thiserror-1" ]; "tracing-log" = [ "dep:tracing-log" ]; }; resolvedDefaultFeatures = [ "default" "metrics" "smallvec" "tracing-log" ]; }; "tracing-serde" = rec { crateName = "tracing-serde"; - version = "0.1.3"; + version = "0.2.0"; edition = "2018"; - sha256 = "1qfr0va69djvxqvjrx4vqq7p6myy414lx4w1f6amcn0hfwqj2sxw"; + sha256 = "1wbgzi364vzfswfkvy48a3p0z5xmv98sx342r57sil70ggmiljvh"; libName = "tracing_serde"; authors = [ "Tokio Contributors " @@ -13414,9 +14409,9 @@ rec { }; "tracing-subscriber" = rec { crateName = "tracing-subscriber"; - version = "0.3.18"; + version = "0.3.23"; edition = "2018"; - sha256 = "12vs1bwk4kig1l2qqjbbn2nm5amwiqmkcmnznylzmnfvjy6083xd"; + sha256 = "06fkr0qhggvrs861d7f74pn3i3a10h5jsp4n70jj9ys5b675fzyb"; libName = "tracing_subscriber"; authors = [ "Eliza Weisman " @@ -13440,11 +14435,11 @@ rec { optional = true; } { - name = "regex"; - packageId = "regex"; + name = "regex-automata"; + packageId = "regex-automata"; optional = true; usesDefaultFeatures = false; - features = [ "std" "unicode-case" "unicode-perl" ]; + features = [ "std" ]; } { name = "serde"; @@ -13496,12 +14491,6 @@ rec { } ]; devDependencies = [ - { - name = "regex"; - packageId = "regex"; - usesDefaultFeatures = false; - features = [ "std" ]; - } { name = "tracing"; packageId = "tracing"; @@ -13515,7 +14504,7 @@ rec { "ansi" = [ "fmt" "nu-ansi-term" ]; "chrono" = [ "dep:chrono" ]; "default" = [ "smallvec" "fmt" "ansi" "tracing-log" "std" ]; - "env-filter" = [ "matchers" "regex" "once_cell" "tracing" "std" "thread_local" ]; + "env-filter" = [ "matchers" "once_cell" "tracing" "std" "thread_local" "dep:regex-automata" ]; "fmt" = [ "registry" "std" ]; "json" = [ "tracing-serde" "serde" "serde_json" ]; "local-time" = [ "time/local-offset" ]; @@ -13523,7 +14512,6 @@ rec { "nu-ansi-term" = [ "dep:nu-ansi-term" ]; "once_cell" = [ "dep:once_cell" ]; "parking_lot" = [ "dep:parking_lot" ]; - "regex" = [ "dep:regex" ]; "registry" = [ "sharded-slab" "thread_local" "std" ]; "serde" = [ "dep:serde" ]; "serde_json" = [ "dep:serde_json" ]; @@ -13539,7 +14527,7 @@ rec { "valuable-serde" = [ "dep:valuable-serde" ]; "valuable_crate" = [ "dep:valuable_crate" ]; }; - resolvedDefaultFeatures = [ "alloc" "ansi" "default" "env-filter" "fmt" "json" "matchers" "nu-ansi-term" "once_cell" "regex" "registry" "serde" "serde_json" "sharded-slab" "smallvec" "std" "thread_local" "tracing" "tracing-log" "tracing-serde" ]; + resolvedDefaultFeatures = [ "alloc" "ansi" "default" "env-filter" "fmt" "json" "matchers" "nu-ansi-term" "once_cell" "registry" "serde" "serde_json" "sharded-slab" "smallvec" "std" "thread_local" "tracing" "tracing-log" "tracing-serde" ]; }; "try-lock" = rec { crateName = "try-lock"; @@ -13554,9 +14542,9 @@ rec { }; "tungstenite" = rec { crateName = "tungstenite"; - version = "0.26.2"; + version = "0.28.0"; edition = "2021"; - sha256 = "04rwwcxx95m3avi46rmn0kmpb6nynqimnla3v2qwn3k8argcp4s7"; + sha256 = "0hll4l62lk77zqzgps04689skpk555lcpmi3hhyyn2as9v4dqa46"; authors = [ "Alexey Galakhov" "Daniel Abramov" @@ -13587,7 +14575,7 @@ rec { } { name = "rand"; - packageId = "rand 0.9.0"; + packageId = "rand 0.9.2"; } { name = "sha1"; @@ -13596,7 +14584,7 @@ rec { } { name = "thiserror"; - packageId = "thiserror 2.0.12"; + packageId = "thiserror 2.0.18"; } { name = "utf-8"; @@ -13606,7 +14594,7 @@ rec { devDependencies = [ { name = "rand"; - packageId = "rand 0.9.0"; + packageId = "rand 0.9.2"; } ]; features = { @@ -13632,10 +14620,9 @@ rec { }; "typenum" = rec { crateName = "typenum"; - version = "1.17.0"; + version = "1.19.0"; edition = "2018"; - sha256 = "09dqxv69m9lj9zvv6xw5vxaqx15ps0vxyy5myg33i0kbqvq0pzs2"; - build = "build/main.rs"; + sha256 = "1fw2mpbn2vmqan56j1b3fbpcdg80mz26fm53fs16bq5xcq84hban"; authors = [ "Paho Lurie-Gregg " "Andre Bogus " @@ -13647,9 +14634,9 @@ rec { }; "ucd-trie" = rec { crateName = "ucd-trie"; - version = "0.1.6"; + version = "0.1.7"; edition = "2021"; - sha256 = "1ff4yfksirqs37ybin9aw71aa5gva00hw7jdxbw8w668zy964r7d"; + sha256 = "0wc9p07sqwz320848i52nvyjvpsxkx3kv5bfbmm6s35809fdk5i8"; libName = "ucd_trie"; authors = [ "Andrew Gallant " @@ -13659,305 +14646,167 @@ rec { }; resolvedDefaultFeatures = [ "std" ]; }; - "unic-char-property" = rec { - crateName = "unic-char-property"; - version = "0.9.0"; + "unicase" = rec { + crateName = "unicase"; + version = "2.9.0"; edition = "2018"; - sha256 = "08g21dn3wwix3ycfl0vrbahn0835nv2q3swm8wms0vwvgm07mid8"; - libName = "unic_char_property"; + sha256 = "0hh1wrfd7807mfph2q67jsxqgw8hm82xg2fb8ln8cvblkwxbri6v"; authors = [ - "The UNIC Project Developers" + "Sean McArthur " ]; - dependencies = [ - { - name = "unic-char-range"; - packageId = "unic-char-range"; - } + features = { + }; + }; + "unicode-ident" = rec { + crateName = "unicode-ident"; + version = "1.0.24"; + edition = "2021"; + sha256 = "0xfs8y1g7syl2iykji8zk5hgfi5jw819f5zsrbaxmlzwsly33r76"; + libName = "unicode_ident"; + authors = [ + "David Tolnay " ]; }; - "unic-char-range" = rec { - crateName = "unic-char-range"; - version = "0.9.0"; + "unicode-segmentation" = rec { + crateName = "unicode-segmentation"; + version = "1.13.2"; edition = "2018"; - sha256 = "1g0z7iwvjhqspi6194zsff8vy6i3921hpqcrp3v1813hbwnh5603"; - libName = "unic_char_range"; + sha256 = "135a26m4a0wj319gcw28j6a5aqvz00jmgwgmcs6szgxjf942facn"; + libName = "unicode_segmentation"; authors = [ - "The UNIC Project Developers" + "kwantam " + "Manish Goregaokar " ]; features = { - "rayon" = [ "dep:rayon" ]; - "unstable" = [ "exact-size-is-empty" "fused" "trusted-len" ]; }; - resolvedDefaultFeatures = [ "default" ]; }; - "unic-common" = rec { - crateName = "unic-common"; - version = "0.9.0"; - edition = "2018"; - sha256 = "1g1mm954m0zr497dl4kx3vr09yaly290zs33bbl4wrbaba1gzmw0"; - libName = "unic_common"; + "unicode-width" = rec { + crateName = "unicode-width"; + version = "0.2.2"; + edition = "2021"; + sha256 = "0m7jjzlcccw716dy9423xxh0clys8pfpllc5smvfxrzdf66h9b5l"; + libName = "unicode_width"; + authors = [ + "kwantam " + "Manish Goregaokar " + ]; + features = { + "core" = [ "dep:core" ]; + "default" = [ "cjk" ]; + "rustc-dep-of-std" = [ "std" "core" ]; + "std" = [ "dep:std" ]; + }; + resolvedDefaultFeatures = [ "cjk" "default" ]; + }; + "unicode-xid" = rec { + crateName = "unicode-xid"; + version = "0.2.6"; + edition = "2015"; + sha256 = "0lzqaky89fq0bcrh6jj6bhlz37scfd8c7dsj5dq7y32if56c1hgb"; + libName = "unicode_xid"; authors = [ - "The UNIC Project Developers" + "erick.tryzelaar " + "kwantam " + "Manish Goregaokar " ]; features = { }; resolvedDefaultFeatures = [ "default" ]; }; - "unic-segment" = rec { - crateName = "unic-segment"; - version = "0.9.0"; + "unit-prefix" = rec { + crateName = "unit-prefix"; + version = "0.5.2"; edition = "2018"; - sha256 = "08wgz2q6vrdvmbd23kf9pbg8cyzm5q8hq9spc4blzy2ppqk5vvg4"; - libName = "unic_segment"; + sha256 = "18xr6yhdvlxrv51y6js9npa3qhkzc5b1z4skr5kfzn7kkd449rc1"; + libName = "unit_prefix"; authors = [ - "The UNIC Project Developers" + "Fabio Valentini " + "Benjamin Sago " ]; - dependencies = [ - { - name = "unic-ucd-segment"; - packageId = "unic-ucd-segment"; - } + features = { + "default" = [ "std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "unsafe-libyaml" = rec { + crateName = "unsafe-libyaml"; + version = "0.2.11"; + edition = "2021"; + crateBin = []; + sha256 = "0qdq69ffl3v5pzx9kzxbghzn0fzn266i1xn70y88maybz9csqfk7"; + libName = "unsafe_libyaml"; + authors = [ + "David Tolnay " ]; }; - "unic-ucd-segment" = rec { - crateName = "unic-ucd-segment"; + "untrusted" = rec { + crateName = "untrusted"; version = "0.9.0"; edition = "2018"; - sha256 = "0027lczcg0r401g6fnzm2bq9fxhgxvri1nlryhhv8192lqic2y90"; - libName = "unic_ucd_segment"; + sha256 = "1ha7ib98vkc538x0z60gfn0fc5whqdd85mb87dvisdcaifi6vjwf"; authors = [ - "The UNIC Project Developers" - ]; - dependencies = [ - { - name = "unic-char-property"; - packageId = "unic-char-property"; - } - { - name = "unic-char-range"; - packageId = "unic-char-range"; - } - { - name = "unic-ucd-version"; - packageId = "unic-ucd-version"; - } + "Brian Smith " ]; }; - "unic-ucd-version" = rec { - crateName = "unic-ucd-version"; - version = "0.9.0"; + "url" = rec { + crateName = "url"; + version = "2.5.8"; edition = "2018"; - sha256 = "1i5hnzpfnxkp4ijfk8kvhpvj84bij575ybqx1b6hyigy6wi2zgcn"; - libName = "unic_ucd_version"; + sha256 = "1v8f7nx3hpr1qh76if0a04sj08k86amsq4h8cvpw6wvk76jahrzz"; authors = [ - "The UNIC Project Developers" + "The rust-url developers" ]; dependencies = [ { - name = "unic-common"; - packageId = "unic-common"; - } - ]; - - }; - "unicase" = rec { - crateName = "unicase"; - version = "2.7.0"; - edition = "2015"; - sha256 = "12gd74j79f94k4clxpf06l99wiv4p30wjr0qm04ihqk9zgdd9lpp"; - authors = [ - "Sean McArthur " - ]; - buildDependencies = [ - { - name = "version_check"; - packageId = "version_check"; - } - ]; - features = { - }; - }; - "unicode-bidi" = rec { - crateName = "unicode-bidi"; - version = "0.3.15"; - edition = "2018"; - sha256 = "0xcdxm7h0ydyprwpcbh436rbs6s6lph7f3gr527lzgv6lw053y88"; - libName = "unicode_bidi"; - authors = [ - "The Servo Project Developers" - ]; - features = { - "default" = [ "std" "hardcoded-data" ]; - "flame" = [ "dep:flame" ]; - "flame_it" = [ "flame" "flamer" ]; - "flamer" = [ "dep:flamer" ]; - "serde" = [ "dep:serde" ]; - "with_serde" = [ "serde" ]; - }; - resolvedDefaultFeatures = [ "hardcoded-data" "std" ]; - }; - "unicode-ident" = rec { - crateName = "unicode-ident"; - version = "1.0.12"; - edition = "2018"; - sha256 = "0jzf1znfpb2gx8nr8mvmyqs1crnv79l57nxnbiszc7xf7ynbjm1k"; - libName = "unicode_ident"; - authors = [ - "David Tolnay " - ]; - - }; - "unicode-normalization" = rec { - crateName = "unicode-normalization"; - version = "0.1.23"; - edition = "2018"; - sha256 = "1x81a50h2zxigj74b9bqjsirxxbyhmis54kg600xj213vf31cvd5"; - libName = "unicode_normalization"; - authors = [ - "kwantam " - "Manish Goregaokar " - ]; - dependencies = [ - { - name = "tinyvec"; - packageId = "tinyvec"; - features = [ "alloc" ]; - } - ]; - features = { - "default" = [ "std" ]; - }; - resolvedDefaultFeatures = [ "std" ]; - }; - "unicode-segmentation" = rec { - crateName = "unicode-segmentation"; - version = "1.12.0"; - edition = "2018"; - sha256 = "14qla2jfx74yyb9ds3d2mpwpa4l4lzb9z57c6d2ba511458z5k7n"; - libName = "unicode_segmentation"; - authors = [ - "kwantam " - "Manish Goregaokar " - ]; - features = { - }; - }; - "unicode-width 0.1.13" = rec { - crateName = "unicode-width"; - version = "0.1.13"; - edition = "2021"; - sha256 = "0p92vl8n7qc8mxz45xn6qbgi0259z96n32a158l6vj5bywwdadh3"; - libName = "unicode_width"; - authors = [ - "kwantam " - "Manish Goregaokar " - ]; - features = { - "compiler_builtins" = [ "dep:compiler_builtins" ]; - "core" = [ "dep:core" ]; - "rustc-dep-of-std" = [ "std" "core" "compiler_builtins" ]; - "std" = [ "dep:std" ]; - }; - resolvedDefaultFeatures = [ "default" ]; - }; - "unicode-width 0.2.0" = rec { - crateName = "unicode-width"; - version = "0.2.0"; - edition = "2021"; - sha256 = "1zd0r5vs52ifxn25rs06gxrgz8cmh4xpra922k0xlmrchib1kj0z"; - libName = "unicode_width"; - authors = [ - "kwantam " - "Manish Goregaokar " - ]; - features = { - "compiler_builtins" = [ "dep:compiler_builtins" ]; - "core" = [ "dep:core" ]; - "default" = [ "cjk" ]; - "rustc-dep-of-std" = [ "std" "core" "compiler_builtins" ]; - "std" = [ "dep:std" ]; - }; - resolvedDefaultFeatures = [ "cjk" "default" ]; - }; - "unicode-xid" = rec { - crateName = "unicode-xid"; - version = "0.2.5"; - edition = "2015"; - sha256 = "02n96yhcjwx7vphbwf9p7xfqbwvqgzdw2qz4h0x3wd5wgxj315r2"; - libName = "unicode_xid"; - authors = [ - "erick.tryzelaar " - "kwantam " - "Manish Goregaokar " - ]; - features = { - }; - resolvedDefaultFeatures = [ "default" ]; - }; - "unsafe-libyaml" = rec { - crateName = "unsafe-libyaml"; - version = "0.2.11"; - edition = "2021"; - crateBin = []; - sha256 = "0qdq69ffl3v5pzx9kzxbghzn0fzn266i1xn70y88maybz9csqfk7"; - libName = "unsafe_libyaml"; - authors = [ - "David Tolnay " - ]; - - }; - "untrusted" = rec { - crateName = "untrusted"; - version = "0.9.0"; - edition = "2018"; - sha256 = "1ha7ib98vkc538x0z60gfn0fc5whqdd85mb87dvisdcaifi6vjwf"; - authors = [ - "Brian Smith " - ]; - - }; - "url" = rec { - crateName = "url"; - version = "2.5.2"; - edition = "2018"; - sha256 = "0v2dx50mx7xzl9454cl5qmpjnhkbahmn59gd3apyipbgyyylsy12"; - authors = [ - "The rust-url developers" - ]; - dependencies = [ - { - name = "form_urlencoded"; - packageId = "form_urlencoded"; + name = "form_urlencoded"; + packageId = "form_urlencoded"; + usesDefaultFeatures = false; + features = [ "alloc" ]; } { name = "idna"; packageId = "idna"; + usesDefaultFeatures = false; + features = [ "alloc" "compiled_data" ]; } { name = "percent-encoding"; packageId = "percent-encoding"; + usesDefaultFeatures = false; + features = [ "alloc" ]; } { name = "serde"; packageId = "serde"; optional = true; - features = [ "derive" ]; + usesDefaultFeatures = false; + } + { + name = "serde_derive"; + packageId = "serde_derive"; + optional = true; + usesDefaultFeatures = false; } ]; devDependencies = [ { name = "serde"; packageId = "serde"; - features = [ "derive" ]; + } + { + name = "serde_derive"; + packageId = "serde_derive"; } ]; features = { - "serde" = [ "dep:serde" ]; + "default" = [ "std" ]; + "serde" = [ "dep:serde" "dep:serde_derive" ]; + "std" = [ "idna/std" "percent-encoding/std" "form_urlencoded/std" "serde?/std" ]; }; - resolvedDefaultFeatures = [ "default" "serde" ]; + resolvedDefaultFeatures = [ "default" "serde" "std" ]; }; "urlencoding" = rec { crateName = "urlencoding"; @@ -13980,6 +14829,16 @@ rec { "Simon Sapin " ]; + }; + "utf8_iter" = rec { + crateName = "utf8_iter"; + version = "1.0.4"; + edition = "2021"; + sha256 = "1gmna9flnj8dbyd8ba17zigrp9c4c3zclngf5lnb5yvz1ri41hdn"; + authors = [ + "Henri Sivonen " + ]; + }; "utf8parse" = rec { crateName = "utf8parse"; @@ -13996,16 +14855,16 @@ rec { }; "utoipa" = rec { crateName = "utoipa"; - version = "4.2.3"; + version = "5.4.0"; edition = "2021"; - sha256 = "08xbxz3an28g0rv9agmqs1qix4nrrzppylw24r8clz901skb3by5"; + sha256 = "14z9ciwyxa3vca86hq3bsxxabnzxsyr142by4841dhr11k42kk1g"; authors = [ "Juha Kukkonen " ]; dependencies = [ { name = "indexmap"; - packageId = "indexmap 2.5.0"; + packageId = "indexmap"; features = [ "serde" ]; } { @@ -14020,46 +14879,47 @@ rec { { name = "utoipa-gen"; packageId = "utoipa-gen"; + optional = true; } ]; features = { - "actix_extras" = [ "utoipa-gen/actix_extras" ]; - "auto_into_responses" = [ "utoipa-gen/auto_into_responses" ]; - "axum_extras" = [ "utoipa-gen/axum_extras" ]; - "chrono" = [ "utoipa-gen/chrono" ]; - "debug" = [ "utoipa-gen/debug" ]; - "decimal" = [ "utoipa-gen/decimal" ]; - "decimal_float" = [ "utoipa-gen/decimal_float" ]; - "indexmap" = [ "utoipa-gen/indexmap" ]; - "non_strict_integers" = [ "utoipa-gen/non_strict_integers" ]; - "rc_schema" = [ "utoipa-gen/rc_schema" ]; - "repr" = [ "utoipa-gen/repr" ]; - "rocket_extras" = [ "utoipa-gen/rocket_extras" ]; - "serde_yaml" = [ "dep:serde_yaml" ]; - "smallvec" = [ "utoipa-gen/smallvec" ]; - "time" = [ "utoipa-gen/time" ]; - "ulid" = [ "utoipa-gen/ulid" ]; - "url" = [ "utoipa-gen/url" ]; - "uuid" = [ "utoipa-gen/uuid" ]; - "yaml" = [ "serde_yaml" "utoipa-gen/yaml" ]; - }; - resolvedDefaultFeatures = [ "default" "indexmap" ]; + "actix_extras" = [ "utoipa-gen?/actix_extras" ]; + "auto_into_responses" = [ "utoipa-gen?/auto_into_responses" ]; + "axum_extras" = [ "utoipa-gen?/axum_extras" ]; + "chrono" = [ "utoipa-gen?/chrono" ]; + "config" = [ "utoipa-gen?/config" ]; + "debug" = [ "utoipa-gen?/debug" ]; + "decimal" = [ "utoipa-gen?/decimal" ]; + "decimal_float" = [ "utoipa-gen?/decimal_float" ]; + "default" = [ "macros" ]; + "indexmap" = [ "utoipa-gen?/indexmap" ]; + "jiff_0_2" = [ "utoipa-gen?/jiff_0_2" ]; + "macros" = [ "dep:utoipa-gen" ]; + "non_strict_integers" = [ "utoipa-gen?/non_strict_integers" ]; + "rc_schema" = [ "utoipa-gen?/rc_schema" ]; + "repr" = [ "utoipa-gen?/repr" ]; + "rocket_extras" = [ "utoipa-gen?/rocket_extras" ]; + "serde_norway" = [ "dep:serde_norway" ]; + "smallvec" = [ "utoipa-gen?/smallvec" ]; + "time" = [ "utoipa-gen?/time" ]; + "ulid" = [ "utoipa-gen?/ulid" ]; + "url" = [ "utoipa-gen?/url" ]; + "uuid" = [ "utoipa-gen?/uuid" ]; + "yaml" = [ "serde_norway" "utoipa-gen?/yaml" ]; + }; + resolvedDefaultFeatures = [ "default" "indexmap" "macros" ]; }; "utoipa-gen" = rec { crateName = "utoipa-gen"; - version = "4.3.0"; + version = "5.4.0"; edition = "2021"; - sha256 = "1glhh4zhldspf3f6dficg2mbrga926mi0pxn58rgajxw09nf3w3v"; + sha256 = "12x0gisjn21dvxy9khdb3l7imxp3gb221nm6x32z92mbja6x0ybd"; procMacro = true; libName = "utoipa_gen"; authors = [ "Juha Kukkonen " ]; dependencies = [ - { - name = "proc-macro-error"; - packageId = "proc-macro-error"; - } { name = "proc-macro2"; packageId = "proc-macro2"; @@ -14070,13 +14930,14 @@ rec { } { name = "syn"; - packageId = "syn 2.0.87"; + packageId = "syn 2.0.117"; features = [ "full" "extra-traits" ]; } ]; features = { "actix_extras" = [ "regex" "syn/extra-traits" ]; "axum_extras" = [ "regex" "syn/extra-traits" ]; + "config" = [ "dep:utoipa-config" "dep:once_cell" ]; "debug" = [ "syn/extra-traits" ]; "regex" = [ "dep:regex" ]; "rocket_extras" = [ "regex" "syn/extra-traits" ]; @@ -14088,9 +14949,9 @@ rec { }; "utoipa-swagger-ui" = rec { crateName = "utoipa-swagger-ui"; - version = "7.1.0"; + version = "9.0.2"; edition = "2021"; - sha256 = "17hql6gyara5a6wh7faay72v4jh7gi6klrnm1x0pvmf60vv0ygll"; + sha256 = "0m9ssjii758b96rjg1k6lx07yrj5d49xpikd5xy26rav3f7laiyh"; libName = "utoipa_swagger_ui"; authors = [ "Juha Kukkonen " @@ -14098,11 +14959,15 @@ rec { dependencies = [ { name = "axum"; - packageId = "axum 0.7.5"; + packageId = "axum"; optional = true; usesDefaultFeatures = false; features = [ "json" ]; } + { + name = "base64"; + packageId = "base64"; + } { name = "mime_guess"; packageId = "mime_guess"; @@ -14114,7 +14979,7 @@ rec { { name = "serde"; packageId = "serde"; - features = [ "derive" ]; + features = [ "derive" "rc" ]; } { name = "serde_json"; @@ -14123,6 +14988,8 @@ rec { { name = "utoipa"; packageId = "utoipa"; + usesDefaultFeatures = false; + features = [ "macros" ]; } ]; buildDependencies = [ @@ -14130,20 +14997,6 @@ rec { name = "regex"; packageId = "regex"; } - { - name = "reqwest"; - packageId = "reqwest"; - optional = true; - usesDefaultFeatures = false; - features = [ "blocking" "rustls-tls" ]; - } - { - name = "reqwest"; - packageId = "reqwest"; - usesDefaultFeatures = false; - target = {target, features}: (target."windows" or false); - features = [ "blocking" "rustls-tls" ]; - } { name = "url"; packageId = "url"; @@ -14159,6 +15012,7 @@ rec { features = { "actix-web" = [ "dep:actix-web" ]; "axum" = [ "dep:axum" ]; + "cache" = [ "dep:dirs" "dep:sha2" ]; "debug-embed" = [ "rust-embed/debug-embed" ]; "default" = [ "url" ]; "reqwest" = [ "dep:reqwest" ]; @@ -14170,9 +15024,9 @@ rec { }; "uuid" = rec { crateName = "uuid"; - version = "1.10.0"; - edition = "2018"; - sha256 = "0503gvp08dh5mnm3f0ffqgisj6x3mbs53dmnn1lm19pga43a1pw1"; + version = "1.23.0"; + edition = "2021"; + sha256 = "1nbrzkdhwr4clshsks7flc2jq6lavjrsx65hyn63c9dd5vsbdj2s"; authors = [ "Ashley Mannix" "Dylan DPC" @@ -14181,8 +15035,31 @@ rec { dependencies = [ { name = "getrandom"; - packageId = "getrandom 0.2.15"; + packageId = "getrandom 0.4.2"; + optional = true; + target = { target, features }: (!(("wasm32" == target."arch" or null) && (("unknown" == target."os" or null) || ("none" == target."os" or null)))); + } + { + name = "js-sys"; + packageId = "js-sys"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (("wasm32" == target."arch" or null) && (("unknown" == target."os" or null) || ("none" == target."os" or null)) && (builtins.elem "atomics" targetFeatures)); + } + { + name = "wasm-bindgen"; + packageId = "wasm-bindgen"; optional = true; + usesDefaultFeatures = false; + target = { target, features }: (("wasm32" == target."arch" or null) && (("unknown" == target."os" or null) || ("none" == target."os" or null))); + features = [ "msrv" ]; + } + ]; + devDependencies = [ + { + name = "wasm-bindgen"; + packageId = "wasm-bindgen"; + target = { target, features }: (("wasm32" == target."arch" or null) && (("unknown" == target."os" or null) || ("none" == target."os" or null))); } ]; features = { @@ -14192,13 +15069,16 @@ rec { "bytemuck" = [ "dep:bytemuck" ]; "default" = [ "std" ]; "fast-rng" = [ "rng" "dep:rand" ]; - "js" = [ "dep:wasm-bindgen" "getrandom?/js" ]; - "macro-diagnostics" = [ "dep:uuid-macro-internal" ]; + "js" = [ "dep:wasm-bindgen" "dep:js-sys" ]; "md5" = [ "dep:md-5" ]; "rng" = [ "dep:getrandom" ]; - "serde" = [ "dep:serde" ]; + "rng-getrandom" = [ "rng" "dep:getrandom" "uuid-rng-internal-lib" "uuid-rng-internal-lib/getrandom" ]; + "rng-rand" = [ "rng" "dep:rand" "uuid-rng-internal-lib" "uuid-rng-internal-lib/rand" ]; + "serde" = [ "dep:serde_core" ]; "sha1" = [ "dep:sha1_smol" ]; "slog" = [ "dep:slog" ]; + "std" = [ "wasm-bindgen?/std" "js-sys?/std" ]; + "uuid-rng-internal-lib" = [ "dep:uuid-rng-internal-lib" ]; "v1" = [ "atomic" ]; "v3" = [ "md5" ]; "v4" = [ "rng" ]; @@ -14211,9 +15091,9 @@ rec { }; "valuable" = rec { crateName = "valuable"; - version = "0.1.0"; - edition = "2018"; - sha256 = "0v9gp3nkjbl30z0fd56d8mx7w1csk86wwjhfjhr400wh9mfpw2w3"; + version = "0.1.1"; + edition = "2021"; + sha256 = "0r9srp55v7g27s5bg7a2m095fzckrcdca5maih6dy9bay6fflwxs"; features = { "default" = [ "std" ]; "derive" = [ "valuable-derive" ]; @@ -14234,9 +15114,9 @@ rec { }; "vt100" = rec { crateName = "vt100"; - version = "0.15.2"; + version = "0.16.2"; edition = "2021"; - sha256 = "1pklc8y984axmxr0cd363srr2d27wd5rj15xlcmkjznvy0xqdkc4"; + sha256 = "1nbgsgamgibyx6y4xiyk6nkz7zggzbs6s445wq4yd0zsp1gzfkq5"; authors = [ "Jesse Luehrs " ]; @@ -14245,32 +15125,22 @@ rec { name = "itoa"; packageId = "itoa"; } - { - name = "log"; - packageId = "log"; - } { name = "unicode-width"; - packageId = "unicode-width 0.1.13"; - } - { - name = "vte"; - packageId = "vte 0.11.1"; + packageId = "unicode-width"; } - ]; - devDependencies = [ { name = "vte"; - packageId = "vte 0.11.1"; + packageId = "vte 0.15.0"; } ]; }; - "vte 0.10.1" = rec { + "vte 0.14.1" = rec { crateName = "vte"; - version = "0.10.1"; - edition = "2018"; - sha256 = "10srmy9ssircrwsb5lpx3fbhx71460j77kvz0krz38jcmf9fdg3c"; + version = "0.14.1"; + edition = "2021"; + sha256 = "0xy01fgkzb2080prh2ncd8949hm2248fc5wf1lryhdrhxzbxq7r3"; authors = [ "Joe Wilm " "Christian Duerr " @@ -14278,32 +15148,32 @@ rec { dependencies = [ { name = "arrayvec"; - packageId = "arrayvec 0.5.2"; + packageId = "arrayvec"; optional = true; usesDefaultFeatures = false; } { - name = "utf8parse"; - packageId = "utf8parse"; - } - { - name = "vte_generate_state_changes"; - packageId = "vte_generate_state_changes"; + name = "memchr"; + packageId = "memchr"; } ]; features = { + "ansi" = [ "log" "cursor-icon" "bitflags" ]; "arrayvec" = [ "dep:arrayvec" ]; + "bitflags" = [ "dep:bitflags" ]; + "cursor-icon" = [ "dep:cursor-icon" ]; "default" = [ "no_std" ]; - "nightly" = [ "utf8parse/nightly" ]; + "log" = [ "dep:log" ]; "no_std" = [ "arrayvec" ]; + "serde" = [ "dep:serde" ]; }; resolvedDefaultFeatures = [ "arrayvec" "default" "no_std" ]; }; - "vte 0.11.1" = rec { + "vte 0.15.0" = rec { crateName = "vte"; - version = "0.11.1"; + version = "0.15.0"; edition = "2021"; - sha256 = "15r1ff4j8ndqj9vsyil3wqwxhhl7jsz5g58f31n0h1wlpxgjn0pm"; + sha256 = "1g9xgnw7q7zdwgfqa6zfcfsp92wn0j0h13kzsqy0dq3c80c414m5"; authors = [ "Joe Wilm " "Christian Duerr " @@ -14311,63 +15181,38 @@ rec { dependencies = [ { name = "arrayvec"; - packageId = "arrayvec 0.7.6"; - optional = true; + packageId = "arrayvec"; usesDefaultFeatures = false; } { - name = "utf8parse"; - packageId = "utf8parse"; - } - { - name = "vte_generate_state_changes"; - packageId = "vte_generate_state_changes"; + name = "memchr"; + packageId = "memchr"; + usesDefaultFeatures = false; } ]; features = { - "ansi" = [ "log" ]; - "arrayvec" = [ "dep:arrayvec" ]; - "default" = [ "no_std" ]; + "ansi" = [ "log" "cursor-icon" "bitflags" ]; + "bitflags" = [ "dep:bitflags" ]; + "cursor-icon" = [ "dep:cursor-icon" ]; + "default" = [ "std" ]; "log" = [ "dep:log" ]; - "nightly" = [ "utf8parse/nightly" ]; - "no_std" = [ "arrayvec" ]; "serde" = [ "dep:serde" ]; + "std" = [ "memchr/std" ]; }; - resolvedDefaultFeatures = [ "arrayvec" "default" "no_std" ]; + resolvedDefaultFeatures = [ "default" "std" ]; }; - "vte_generate_state_changes" = rec { - crateName = "vte_generate_state_changes"; - version = "0.1.2"; + "walkdir" = rec { + crateName = "walkdir"; + version = "2.5.0"; edition = "2018"; - sha256 = "0biwgpcji3w4llz7h4bi8c2rwqchm9gmyr7dnjki1m853gp9ndif"; - procMacro = true; + sha256 = "0jsy7a710qv8gld5957ybrnc07gavppp963gs32xk4ag8130jy99"; authors = [ - "Christian Duerr " + "Andrew Gallant " ]; dependencies = [ { - name = "proc-macro2"; - packageId = "proc-macro2"; - } - { - name = "quote"; - packageId = "quote"; - } - ]; - - }; - "walkdir" = rec { - crateName = "walkdir"; - version = "2.5.0"; - edition = "2018"; - sha256 = "0jsy7a710qv8gld5957ybrnc07gavppp963gs32xk4ag8130jy99"; - authors = [ - "Andrew Gallant " - ]; - dependencies = [ - { - name = "same-file"; - packageId = "same-file"; + name = "same-file"; + packageId = "same-file"; } { name = "winapi-util"; @@ -14393,165 +15238,152 @@ rec { ]; }; - "wasi 0.11.0+wasi-snapshot-preview1" = rec { + "wasi" = rec { crateName = "wasi"; - version = "0.11.0+wasi-snapshot-preview1"; + version = "0.11.1+wasi-snapshot-preview1"; edition = "2018"; - sha256 = "08z4hxwkpdpalxjps1ai9y7ihin26y9f476i53dv98v45gkqg3cw"; + sha256 = "0jx49r7nbkbhyfrfyhz0bm4817yrnxgd3jiwwwfv0zl439jyrwyc"; authors = [ "The Cranelift Project Developers" ]; features = { - "compiler_builtins" = [ "dep:compiler_builtins" ]; "core" = [ "dep:core" ]; "default" = [ "std" ]; - "rustc-dep-of-std" = [ "compiler_builtins" "core" "rustc-std-workspace-alloc" ]; + "rustc-dep-of-std" = [ "core" "rustc-std-workspace-alloc" ]; "rustc-std-workspace-alloc" = [ "dep:rustc-std-workspace-alloc" ]; }; resolvedDefaultFeatures = [ "default" "std" ]; }; - "wasi 0.14.2+wasi-0.2.4" = rec { - crateName = "wasi"; - version = "0.14.2+wasi-0.2.4"; + "wasip2" = rec { + crateName = "wasip2"; + version = "1.0.2+wasi-0.2.9"; edition = "2021"; - sha256 = "1cwcqjr3dgdq8j325awgk8a715h0hg0f7jqzsb077n4qm6jzk0wn"; - authors = [ - "The Cranelift Project Developers" - ]; + sha256 = "1xdw7v08jpfjdg94sp4lbdgzwa587m5ifpz6fpdnkh02kwizj5wm"; dependencies = [ { - name = "wit-bindgen-rt"; - packageId = "wit-bindgen-rt"; - features = [ "bitflags" ]; + name = "wit-bindgen"; + packageId = "wit-bindgen"; + usesDefaultFeatures = false; } ]; features = { - "compiler_builtins" = [ "dep:compiler_builtins" ]; + "alloc" = [ "dep:alloc" ]; + "bitflags" = [ "wit-bindgen/bitflags" ]; "core" = [ "dep:core" ]; - "default" = [ "std" ]; - "rustc-dep-of-std" = [ "compiler_builtins" "core" "rustc-std-workspace-alloc" ]; - "rustc-std-workspace-alloc" = [ "dep:rustc-std-workspace-alloc" ]; + "default" = [ "std" "bitflags" ]; + "rustc-dep-of-std" = [ "core" "alloc" "wit-bindgen/rustc-dep-of-std" ]; }; }; - "wasm-bindgen" = rec { - crateName = "wasm-bindgen"; - version = "0.2.93"; + "wasip3" = rec { + crateName = "wasip3"; + version = "0.4.0+wasi-0.3.0-rc-2026-01-06"; edition = "2021"; - sha256 = "1dfr7pka5kwvky2fx82m9d060p842hc5fyyw8igryikcdb0xybm8"; - libName = "wasm_bindgen"; - authors = [ - "The wasm-bindgen Developers" - ]; + sha256 = "19dc8p0y2mfrvgk3qw3c3240nfbylv22mvyxz84dqpgai2zzha2l"; dependencies = [ { - name = "cfg-if"; - packageId = "cfg-if"; - } - { - name = "once_cell"; - packageId = "once_cell"; + name = "wit-bindgen"; + packageId = "wit-bindgen"; + usesDefaultFeatures = false; + features = [ "async" ]; } + ]; + devDependencies = [ { - name = "wasm-bindgen-macro"; - packageId = "wasm-bindgen-macro"; + name = "wit-bindgen"; + packageId = "wit-bindgen"; + usesDefaultFeatures = false; + features = [ "async-spawn" ]; } ]; features = { - "default" = [ "spans" "std" ]; - "enable-interning" = [ "std" ]; - "serde" = [ "dep:serde" ]; - "serde-serialize" = [ "serde" "serde_json" "std" ]; - "serde_json" = [ "dep:serde_json" ]; - "spans" = [ "wasm-bindgen-macro/spans" ]; - "strict-macro" = [ "wasm-bindgen-macro/strict-macro" ]; - "xxx_debug_only_print_generated_code" = [ "wasm-bindgen-macro/xxx_debug_only_print_generated_code" ]; + "http-compat" = [ "dep:bytes" "dep:http-body" "dep:http" "dep:thiserror" "wit-bindgen/async-spawn" ]; }; - resolvedDefaultFeatures = [ "default" "spans" "std" ]; }; - "wasm-bindgen-backend" = rec { - crateName = "wasm-bindgen-backend"; - version = "0.2.93"; + "wasm-bindgen" = rec { + crateName = "wasm-bindgen"; + version = "0.2.117"; edition = "2021"; - sha256 = "0yypblaf94rdgqs5xw97499xfwgs1096yx026d6h88v563d9dqwx"; - libName = "wasm_bindgen_backend"; + sha256 = "1c6hi55mq70546hrvrx7wa27sn3yvf04gg6hf8riwn8mnhdzql85"; + libName = "wasm_bindgen"; authors = [ "The wasm-bindgen Developers" ]; dependencies = [ { - name = "bumpalo"; - packageId = "bumpalo"; - } - { - name = "log"; - packageId = "log"; + name = "cfg-if"; + packageId = "cfg-if"; } { name = "once_cell"; packageId = "once_cell"; + usesDefaultFeatures = false; } { - name = "proc-macro2"; - packageId = "proc-macro2"; + name = "wasm-bindgen-macro"; + packageId = "wasm-bindgen-macro"; } { - name = "quote"; - packageId = "quote"; + name = "wasm-bindgen-shared"; + packageId = "wasm-bindgen-shared"; } + ]; + buildDependencies = [ { - name = "syn"; - packageId = "syn 2.0.87"; - features = [ "full" ]; + name = "rustversion"; + packageId = "rustversion"; + rename = "rustversion-compat"; } + ]; + devDependencies = [ { - name = "wasm-bindgen-shared"; - packageId = "wasm-bindgen-shared"; + name = "once_cell"; + packageId = "once_cell"; } ]; features = { - "extra-traits" = [ "syn/extra-traits" ]; + "default" = [ "std" ]; + "enable-interning" = [ "std" ]; + "serde" = [ "dep:serde" ]; + "serde-serialize" = [ "serde" "serde_json" "std" ]; + "serde_json" = [ "dep:serde_json" ]; + "strict-macro" = [ "wasm-bindgen-macro/strict-macro" ]; }; - resolvedDefaultFeatures = [ "spans" ]; + resolvedDefaultFeatures = [ "default" "msrv" "std" ]; }; "wasm-bindgen-futures" = rec { crateName = "wasm-bindgen-futures"; - version = "0.4.43"; + version = "0.4.67"; edition = "2021"; - sha256 = "1vf8kmaj95xn5893y1bdlav47y5niq85q5bms9pfj8d6cc7k1sb1"; + sha256 = "0znqqp9z52s4ckb94crjlbqbfd7i8zvnjpx7s3nhcwjvj3k3sqh3"; libName = "wasm_bindgen_futures"; authors = [ "The wasm-bindgen Developers" ]; dependencies = [ - { - name = "cfg-if"; - packageId = "cfg-if"; - } { name = "js-sys"; packageId = "js-sys"; + usesDefaultFeatures = false; + features = [ "futures" ]; } { name = "wasm-bindgen"; packageId = "wasm-bindgen"; - } - { - name = "web-sys"; - packageId = "web-sys"; - target = { target, features }: (builtins.elem "atomics" targetFeatures); - features = [ "MessageEvent" "Worker" ]; + usesDefaultFeatures = false; } ]; features = { - "futures-core" = [ "dep:futures-core" ]; - "futures-core-03-stream" = [ "futures-core" ]; + "default" = [ "std" ]; + "futures-core-03-stream" = [ "js-sys/futures-core-03-stream" ]; + "std" = [ "wasm-bindgen/std" "js-sys/std" ]; }; + resolvedDefaultFeatures = [ "default" "std" ]; }; "wasm-bindgen-macro" = rec { crateName = "wasm-bindgen-macro"; - version = "0.2.93"; + version = "0.2.117"; edition = "2021"; - sha256 = "1kycd1xfx4d9xzqknvzbiqhwb5fzvjqrrn88x692q1vblj8lqp2q"; + sha256 = "1gl6gqy60khhyqv354m0kmgk541sass8kzymxim7hi6zbaizkgbz"; procMacro = true; libName = "wasm_bindgen_macro"; authors = [ @@ -14568,21 +15400,23 @@ rec { } ]; features = { - "spans" = [ "wasm-bindgen-macro-support/spans" ]; "strict-macro" = [ "wasm-bindgen-macro-support/strict-macro" ]; }; - resolvedDefaultFeatures = [ "spans" ]; }; "wasm-bindgen-macro-support" = rec { crateName = "wasm-bindgen-macro-support"; - version = "0.2.93"; + version = "0.2.117"; edition = "2021"; - sha256 = "0dp8w6jmw44srym6l752nkr3hkplyw38a2fxz5f3j1ch9p3l1hxg"; + sha256 = "1wlza8xdr18cac2wm3ahxdwx1nnqa01m0d3jf3kd9dmsy8z6kafw"; libName = "wasm_bindgen_macro_support"; authors = [ "The wasm-bindgen Developers" ]; dependencies = [ + { + name = "bumpalo"; + packageId = "bumpalo"; + } { name = "proc-macro2"; packageId = "proc-macro2"; @@ -14593,12 +15427,8 @@ rec { } { name = "syn"; - packageId = "syn 2.0.87"; - features = [ "visit" "full" ]; - } - { - name = "wasm-bindgen-backend"; - packageId = "wasm-bindgen-backend"; + packageId = "syn 2.0.117"; + features = [ "visit" "visit-mut" "full" "extra-traits" ]; } { name = "wasm-bindgen-shared"; @@ -14607,27 +15437,141 @@ rec { ]; features = { "extra-traits" = [ "syn/extra-traits" ]; - "spans" = [ "wasm-bindgen-backend/spans" ]; }; - resolvedDefaultFeatures = [ "spans" ]; }; "wasm-bindgen-shared" = rec { crateName = "wasm-bindgen-shared"; - version = "0.2.93"; + version = "0.2.117"; edition = "2021"; links = "wasm_bindgen"; - sha256 = "1104bny0hv40jfap3hp8jhs0q4ya244qcrvql39i38xlghq0lan6"; + sha256 = "0frxrdi1w0cswv8v7n1972hd23nbwm8hr7a2dhdq8bbd59l9l4ir"; libName = "wasm_bindgen_shared"; authors = [ "The wasm-bindgen Developers" ]; + dependencies = [ + { + name = "unicode-ident"; + packageId = "unicode-ident"; + } + ]; }; + "wasm-encoder" = rec { + crateName = "wasm-encoder"; + version = "0.244.0"; + edition = "2021"; + sha256 = "06c35kv4h42vk3k51xjz1x6hn3mqwfswycmr6ziky033zvr6a04r"; + libName = "wasm_encoder"; + authors = [ + "Nick Fitzgerald " + ]; + dependencies = [ + { + name = "leb128fmt"; + packageId = "leb128fmt"; + usesDefaultFeatures = false; + } + { + name = "wasmparser"; + packageId = "wasmparser"; + optional = true; + usesDefaultFeatures = false; + features = [ "simd" "simd" ]; + } + ]; + features = { + "component-model" = [ "wasmparser?/component-model" ]; + "default" = [ "std" "component-model" ]; + "std" = [ "wasmparser?/std" ]; + "wasmparser" = [ "dep:wasmparser" ]; + }; + resolvedDefaultFeatures = [ "component-model" "std" "wasmparser" ]; + }; + "wasm-metadata" = rec { + crateName = "wasm-metadata"; + version = "0.244.0"; + edition = "2021"; + sha256 = "02f9dhlnryd2l7zf03whlxai5sv26x4spfibjdvc3g9gd8z3a3mv"; + libName = "wasm_metadata"; + dependencies = [ + { + name = "anyhow"; + packageId = "anyhow"; + } + { + name = "indexmap"; + packageId = "indexmap"; + usesDefaultFeatures = false; + features = [ "serde" ]; + } + { + name = "wasm-encoder"; + packageId = "wasm-encoder"; + usesDefaultFeatures = false; + features = [ "std" "component-model" ]; + } + { + name = "wasmparser"; + packageId = "wasmparser"; + usesDefaultFeatures = false; + features = [ "simd" "std" "component-model" "hash-collections" ]; + } + ]; + features = { + "clap" = [ "dep:clap" ]; + "default" = [ "oci" "serde" ]; + "oci" = [ "dep:auditable-serde" "dep:flate2" "dep:url" "dep:spdx" "dep:serde_json" "serde" ]; + "serde" = [ "dep:serde_derive" "dep:serde" ]; + }; + }; + "wasmparser" = rec { + crateName = "wasmparser"; + version = "0.244.0"; + edition = "2021"; + sha256 = "1zi821hrlsxfhn39nqpmgzc0wk7ax3dv6vrs5cw6kb0v5v3hgf27"; + authors = [ + "Yury Delendik " + ]; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags"; + } + { + name = "hashbrown"; + packageId = "hashbrown 0.15.5"; + optional = true; + usesDefaultFeatures = false; + features = [ "default-hasher" ]; + } + { + name = "indexmap"; + packageId = "indexmap"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "semver"; + packageId = "semver"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "component-model" = [ "dep:semver" ]; + "default" = [ "std" "validate" "serde" "features" "component-model" "hash-collections" "simd" ]; + "hash-collections" = [ "dep:hashbrown" "dep:indexmap" ]; + "serde" = [ "dep:serde" "indexmap?/serde" "hashbrown?/serde" ]; + "std" = [ "indexmap?/std" ]; + }; + resolvedDefaultFeatures = [ "component-model" "features" "hash-collections" "simd" "std" "validate" ]; + }; "web-sys" = rec { crateName = "web-sys"; - version = "0.3.70"; + version = "0.3.94"; edition = "2021"; - sha256 = "1h1jspkqnrx1iybwhwhc3qq8c8fn4hy5jcf0wxjry4mxv6pymz96"; + sha256 = "02nxnhv349r2gcy8w71cjj6nimww1g2zy20y8r4hhbxi75z04w6d"; libName = "web_sys"; authors = [ "The wasm-bindgen Developers" @@ -14636,10 +15580,12 @@ rec { { name = "js-sys"; packageId = "js-sys"; + usesDefaultFeatures = false; } { name = "wasm-bindgen"; packageId = "wasm-bindgen"; + usesDefaultFeatures = false; } ]; features = { @@ -14651,7 +15597,9 @@ rec { "Attr" = [ "EventTarget" "Node" ]; "AudioBufferSourceNode" = [ "AudioNode" "AudioScheduledSourceNode" "EventTarget" ]; "AudioContext" = [ "BaseAudioContext" "EventTarget" ]; + "AudioDecoder" = [ "EventTarget" ]; "AudioDestinationNode" = [ "AudioNode" "EventTarget" ]; + "AudioEncoder" = [ "EventTarget" ]; "AudioNode" = [ "EventTarget" ]; "AudioProcessingEvent" = [ "Event" ]; "AudioScheduledSourceNode" = [ "AudioNode" "EventTarget" ]; @@ -14684,10 +15632,13 @@ rec { "Clipboard" = [ "EventTarget" ]; "ClipboardEvent" = [ "Event" ]; "CloseEvent" = [ "Event" ]; + "CommandEvent" = [ "Event" ]; "Comment" = [ "CharacterData" "EventTarget" "Node" ]; "CompositionEvent" = [ "Event" "UiEvent" ]; "ConstantSourceNode" = [ "AudioNode" "AudioScheduledSourceNode" "EventTarget" ]; "ConvolverNode" = [ "AudioNode" "EventTarget" ]; + "CookieChangeEvent" = [ "Event" ]; + "CookieStore" = [ "EventTarget" ]; "CssAnimation" = [ "Animation" "EventTarget" ]; "CssConditionRule" = [ "CssGroupingRule" "CssRule" ]; "CssCounterStyleRule" = [ "CssRule" ]; @@ -14724,6 +15675,7 @@ rec { "Element" = [ "EventTarget" "Node" ]; "ErrorEvent" = [ "Event" ]; "EventSource" = [ "EventTarget" ]; + "ExtendableCookieChangeEvent" = [ "Event" "ExtendableEvent" ]; "ExtendableEvent" = [ "Event" ]; "ExtendableMessageEvent" = [ "Event" "ExtendableEvent" ]; "FetchEvent" = [ "Event" "ExtendableEvent" ]; @@ -14739,9 +15691,8 @@ rec { "FontFaceSet" = [ "EventTarget" ]; "FontFaceSetLoadEvent" = [ "Event" ]; "GainNode" = [ "AudioNode" "EventTarget" ]; - "GamepadAxisMoveEvent" = [ "Event" "GamepadEvent" ]; - "GamepadButtonEvent" = [ "Event" "GamepadEvent" ]; "GamepadEvent" = [ "Event" ]; + "GestureEvent" = [ "Event" "UiEvent" ]; "GpuDevice" = [ "EventTarget" ]; "GpuInternalError" = [ "GpuError" ]; "GpuOutOfMemoryError" = [ "GpuError" ]; @@ -14839,12 +15790,13 @@ rec { "IdbVersionChangeEvent" = [ "Event" ]; "IirFilterNode" = [ "AudioNode" "EventTarget" ]; "ImageCaptureErrorEvent" = [ "Event" ]; - "ImageTrack" = [ "EventTarget" ]; "InputDeviceInfo" = [ "MediaDeviceInfo" ]; "InputEvent" = [ "Event" "UiEvent" ]; + "KeyFrameRequestEvent" = [ "Event" ]; "KeyboardEvent" = [ "Event" "UiEvent" ]; "KeyframeEffect" = [ "AnimationEffect" ]; "LocalMediaStream" = [ "EventTarget" "MediaStream" ]; + "MathMlElement" = [ "Element" "EventTarget" "Node" ]; "MediaDevices" = [ "EventTarget" ]; "MediaElementAudioSourceNode" = [ "AudioNode" "EventTarget" ]; "MediaEncryptedEvent" = [ "Event" ]; @@ -14894,6 +15846,8 @@ rec { "PerformanceNavigationTiming" = [ "PerformanceEntry" "PerformanceResourceTiming" ]; "PerformanceResourceTiming" = [ "PerformanceEntry" ]; "PermissionStatus" = [ "EventTarget" ]; + "PictureInPictureEvent" = [ "Event" ]; + "PictureInPictureWindow" = [ "EventTarget" ]; "PointerEvent" = [ "Event" "MouseEvent" "UiEvent" ]; "PopStateEvent" = [ "Event" ]; "PopupBlockedEvent" = [ "Event" ]; @@ -14909,15 +15863,22 @@ rec { "PublicKeyCredential" = [ "Credential" ]; "PushEvent" = [ "Event" "ExtendableEvent" ]; "RadioNodeList" = [ "NodeList" ]; + "Range" = [ "AbstractRange" ]; "RtcDataChannel" = [ "EventTarget" ]; "RtcDataChannelEvent" = [ "Event" ]; "RtcPeerConnection" = [ "EventTarget" ]; "RtcPeerConnectionIceErrorEvent" = [ "Event" ]; "RtcPeerConnectionIceEvent" = [ "Event" ]; + "RtcRtpScriptTransformer" = [ "EventTarget" ]; "RtcTrackEvent" = [ "Event" ]; + "RtcTransformEvent" = [ "Event" ]; "RtcdtmfSender" = [ "EventTarget" ]; "RtcdtmfToneChangeEvent" = [ "Event" ]; + "SFrameTransform" = [ "EventTarget" ]; + "SFrameTransformErrorEvent" = [ "Event" ]; "Screen" = [ "EventTarget" ]; + "ScreenDetailed" = [ "EventTarget" "Screen" ]; + "ScreenDetails" = [ "EventTarget" ]; "ScreenOrientation" = [ "EventTarget" ]; "ScriptProcessorNode" = [ "AudioNode" "EventTarget" ]; "ScrollAreaEvent" = [ "Event" "UiEvent" ]; @@ -14940,6 +15901,7 @@ rec { "SpeechSynthesisErrorEvent" = [ "Event" "SpeechSynthesisEvent" ]; "SpeechSynthesisEvent" = [ "Event" ]; "SpeechSynthesisUtterance" = [ "EventTarget" ]; + "StaticRange" = [ "AbstractRange" ]; "StereoPannerNode" = [ "AudioNode" "EventTarget" ]; "StorageEvent" = [ "Event" ]; "SubmitEvent" = [ "Event" ]; @@ -15056,6 +16018,8 @@ rec { "UsbPermissionResult" = [ "EventTarget" "PermissionStatus" ]; "UserProximityEvent" = [ "Event" ]; "ValueEvent" = [ "Event" ]; + "VideoDecoder" = [ "EventTarget" ]; + "VideoEncoder" = [ "EventTarget" ]; "VideoStreamTrack" = [ "EventTarget" "MediaStreamTrack" ]; "VideoTrackList" = [ "EventTarget" ]; "VisualViewport" = [ "EventTarget" ]; @@ -15094,8 +16058,10 @@ rec { "XrSystem" = [ "EventTarget" ]; "XrViewerPose" = [ "XrPose" ]; "XrWebGlLayer" = [ "EventTarget" "XrLayer" ]; + "default" = [ "std" ]; + "std" = [ "wasm-bindgen/std" "js-sys/std" ]; }; - resolvedDefaultFeatures = [ "AbortController" "AbortSignal" "Blob" "BlobPropertyBag" "Event" "EventTarget" "File" "FormData" "Headers" "MessageEvent" "ReadableStream" "Request" "RequestCredentials" "RequestInit" "RequestMode" "Response" "ServiceWorkerGlobalScope" "Window" "Worker" "WorkerGlobalScope" ]; + resolvedDefaultFeatures = [ "AbortController" "AbortSignal" "Blob" "BlobPropertyBag" "EventTarget" "File" "FormData" "Headers" "ReadableStream" "Request" "RequestCache" "RequestCredentials" "RequestInit" "RequestMode" "Response" "ServiceWorkerGlobalScope" "Window" "WorkerGlobalScope" "default" "std" ]; }; "web-time" = rec { crateName = "web-time"; @@ -15120,12 +16086,12 @@ rec { "serde" = [ "dep:serde" ]; }; }; - "webpki-roots" = rec { - crateName = "webpki-roots"; - version = "0.26.5"; - edition = "2018"; - sha256 = "0smyrp82rd2qxi3aikgwaxi1by5x8i4aqrhvxk2cd0mgwll4glhb"; - libName = "webpki_roots"; + "webpki-root-certs" = rec { + crateName = "webpki-root-certs"; + version = "1.0.6"; + edition = "2021"; + sha256 = "1jm844z3caldlsb4ycb2h7q6vw4awfdgmddmx2sgyxi6mjj1hkw0"; + libName = "webpki_root_certs"; dependencies = [ { name = "rustls-pki-types"; @@ -15138,40 +16104,27 @@ rec { }; "which" = rec { crateName = "which"; - version = "6.0.3"; + version = "8.0.2"; edition = "2021"; - sha256 = "07yg74dsq644hq5a35546c9mja6rsjdsg92rykr9hkflxf7r5vml"; + sha256 = "0nf4c067qvw5zzk0lr9iadzfnaprr9kkrj0cgmxf8smgmapmz6c1"; authors = [ - "Harry Fei " + "Harry Fei , Jacob Kiesel " ]; dependencies = [ { - name = "either"; - packageId = "either"; - } - { - name = "home"; - packageId = "home"; - target = { target, features }: ((target."windows" or false) || (target."unix" or false) || ("redox" == target."os" or null)); - } - { - name = "rustix"; - packageId = "rustix"; - usesDefaultFeatures = false; + name = "libc"; + packageId = "libc"; + optional = true; target = { target, features }: ((target."unix" or false) || ("wasi" == target."os" or null) || ("redox" == target."os" or null)); - features = [ "fs" "std" ]; - } - { - name = "winsafe"; - packageId = "winsafe"; - target = { target, features }: (target."windows" or false); - features = [ "kernel" ]; } ]; features = { + "default" = [ "real-sys" ]; + "real-sys" = [ "dep:libc" ]; "regex" = [ "dep:regex" ]; "tracing" = [ "dep:tracing" ]; }; + resolvedDefaultFeatures = [ "default" "real-sys" ]; }; "winapi" = rec { crateName = "winapi"; @@ -15185,165 +16138,489 @@ rec { { name = "winapi-i686-pc-windows-gnu"; packageId = "winapi-i686-pc-windows-gnu"; - target = { target, features }: (stdenv.hostPlatform.rust.rustcTarget == "i686-pc-windows-gnu"); + target = { target, features }: (target.name == "i686-pc-windows-gnu"); } { name = "winapi-x86_64-pc-windows-gnu"; packageId = "winapi-x86_64-pc-windows-gnu"; - target = { target, features }: (stdenv.hostPlatform.rust.rustcTarget == "x86_64-pc-windows-gnu"); + target = { target, features }: (target.name == "x86_64-pc-windows-gnu"); } ]; features = { "debug" = [ "impl-debug" ]; }; - resolvedDefaultFeatures = [ "consoleapi" "errhandlingapi" "fileapi" "handleapi" "impl-default" "processenv" "synchapi" "winbase" "winerror" "winuser" ]; - }; - "winapi-i686-pc-windows-gnu" = rec { - crateName = "winapi-i686-pc-windows-gnu"; - version = "0.4.0"; - edition = "2015"; - sha256 = "1dmpa6mvcvzz16zg6d5vrfy4bxgg541wxrcip7cnshi06v38ffxc"; - libName = "winapi_i686_pc_windows_gnu"; - authors = [ - "Peter Atashian " - ]; - - }; - "winapi-util" = rec { - crateName = "winapi-util"; - version = "0.1.9"; - edition = "2021"; - sha256 = "1fqhkcl9scd230cnfj8apfficpf5c9vhwnk4yy9xfc1sw69iq8ng"; - libName = "winapi_util"; - authors = [ - "Andrew Gallant " - ]; - dependencies = [ - { - name = "windows-sys"; - packageId = "windows-sys 0.59.0"; - target = { target, features }: (target."windows" or false); - features = [ "Win32_Foundation" "Win32_Storage_FileSystem" "Win32_System_Console" "Win32_System_SystemInformation" ]; - } - ]; - - }; - "winapi-x86_64-pc-windows-gnu" = rec { - crateName = "winapi-x86_64-pc-windows-gnu"; - version = "0.4.0"; - edition = "2015"; - sha256 = "0gqq64czqb64kskjryj8isp62m2sgvx25yyj3kpc2myh85w24bki"; - libName = "winapi_x86_64_pc_windows_gnu"; - authors = [ - "Peter Atashian " - ]; - + resolvedDefaultFeatures = [ "consoleapi" "handleapi" "impl-default" "processenv" "synchapi" "winbase" "winerror" "winuser" ]; + }; + "winapi-i686-pc-windows-gnu" = rec { + crateName = "winapi-i686-pc-windows-gnu"; + version = "0.4.0"; + edition = "2015"; + sha256 = "1dmpa6mvcvzz16zg6d5vrfy4bxgg541wxrcip7cnshi06v38ffxc"; + libName = "winapi_i686_pc_windows_gnu"; + authors = [ + "Peter Atashian " + ]; + + }; + "winapi-util" = rec { + crateName = "winapi-util"; + version = "0.1.11"; + edition = "2021"; + sha256 = "08hdl7mkll7pz8whg869h58c1r9y7in0w0pk8fm24qc77k0b39y2"; + libName = "winapi_util"; + authors = [ + "Andrew Gallant " + ]; + dependencies = [ + { + name = "windows-sys"; + packageId = "windows-sys 0.61.2"; + target = { target, features }: (target."windows" or false); + features = [ "Win32_Foundation" "Win32_Storage_FileSystem" "Win32_System_Console" "Win32_System_SystemInformation" ]; + } + ]; + + }; + "winapi-x86_64-pc-windows-gnu" = rec { + crateName = "winapi-x86_64-pc-windows-gnu"; + version = "0.4.0"; + edition = "2015"; + sha256 = "0gqq64czqb64kskjryj8isp62m2sgvx25yyj3kpc2myh85w24bki"; + libName = "winapi_x86_64_pc_windows_gnu"; + authors = [ + "Peter Atashian " + ]; + + }; + "windows-core" = rec { + crateName = "windows-core"; + version = "0.62.2"; + edition = "2021"; + sha256 = "1swxpv1a8qvn3bkxv8cn663238h2jccq35ff3nsj61jdsca3ms5q"; + libName = "windows_core"; + dependencies = [ + { + name = "windows-implement"; + packageId = "windows-implement"; + usesDefaultFeatures = false; + } + { + name = "windows-interface"; + packageId = "windows-interface"; + usesDefaultFeatures = false; + } + { + name = "windows-link"; + packageId = "windows-link"; + usesDefaultFeatures = false; + } + { + name = "windows-result"; + packageId = "windows-result"; + usesDefaultFeatures = false; + } + { + name = "windows-strings"; + packageId = "windows-strings"; + usesDefaultFeatures = false; + } + ]; + features = { + "default" = [ "std" ]; + "std" = [ "windows-result/std" "windows-strings/std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "windows-implement" = rec { + crateName = "windows-implement"; + version = "0.60.2"; + edition = "2021"; + sha256 = "1psxhmklzcf3wjs4b8qb42qb6znvc142cb5pa74rsyxm1822wgh5"; + procMacro = true; + libName = "windows_implement"; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + usesDefaultFeatures = false; + } + { + name = "quote"; + packageId = "quote"; + usesDefaultFeatures = false; + } + { + name = "syn"; + packageId = "syn 2.0.117"; + usesDefaultFeatures = false; + features = [ "parsing" "proc-macro" "printing" "full" "clone-impls" ]; + } + ]; + + }; + "windows-interface" = rec { + crateName = "windows-interface"; + version = "0.59.3"; + edition = "2021"; + sha256 = "0n73cwrn4247d0axrk7gjp08p34x1723483jxjxjdfkh4m56qc9z"; + procMacro = true; + libName = "windows_interface"; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + usesDefaultFeatures = false; + } + { + name = "quote"; + packageId = "quote"; + usesDefaultFeatures = false; + } + { + name = "syn"; + packageId = "syn 2.0.117"; + usesDefaultFeatures = false; + features = [ "parsing" "proc-macro" "printing" "full" "clone-impls" ]; + } + ]; + + }; + "windows-link" = rec { + crateName = "windows-link"; + version = "0.2.1"; + edition = "2021"; + sha256 = "1rag186yfr3xx7piv5rg8b6im2dwcf8zldiflvb22xbzwli5507h"; + libName = "windows_link"; + + }; + "windows-result" = rec { + crateName = "windows-result"; + version = "0.4.1"; + edition = "2021"; + sha256 = "1d9yhmrmmfqh56zlj751s5wfm9a2aa7az9rd7nn5027nxa4zm0bp"; + libName = "windows_result"; + dependencies = [ + { + name = "windows-link"; + packageId = "windows-link"; + usesDefaultFeatures = false; + } + ]; + features = { + "default" = [ "std" ]; + }; + resolvedDefaultFeatures = [ "std" ]; + }; + "windows-strings" = rec { + crateName = "windows-strings"; + version = "0.5.1"; + edition = "2021"; + sha256 = "14bhng9jqv4fyl7lqjz3az7vzh8pw0w4am49fsqgcz67d67x0dvq"; + libName = "windows_strings"; + dependencies = [ + { + name = "windows-link"; + packageId = "windows-link"; + usesDefaultFeatures = false; + } + ]; + features = { + "default" = [ "std" ]; + }; + resolvedDefaultFeatures = [ "std" ]; + }; + "windows-sys 0.45.0" = rec { + crateName = "windows-sys"; + version = "0.45.0"; + edition = "2018"; + sha256 = "1l36bcqm4g89pknfp8r9rl1w4bn017q6a8qlx8viv0xjxzjkna3m"; + libName = "windows_sys"; + authors = [ + "Microsoft" + ]; + dependencies = [ + { + name = "windows-targets"; + packageId = "windows-targets 0.42.2"; + target = { target, features }: (!(target."windows_raw_dylib" or false)); + } + ]; + features = { + "Win32_Data" = [ "Win32" ]; + "Win32_Data_HtmlHelp" = [ "Win32_Data" ]; + "Win32_Data_RightsManagement" = [ "Win32_Data" ]; + "Win32_Data_Xml" = [ "Win32_Data" ]; + "Win32_Data_Xml_MsXml" = [ "Win32_Data_Xml" ]; + "Win32_Data_Xml_XmlLite" = [ "Win32_Data_Xml" ]; + "Win32_Devices" = [ "Win32" ]; + "Win32_Devices_AllJoyn" = [ "Win32_Devices" ]; + "Win32_Devices_BiometricFramework" = [ "Win32_Devices" ]; + "Win32_Devices_Bluetooth" = [ "Win32_Devices" ]; + "Win32_Devices_Communication" = [ "Win32_Devices" ]; + "Win32_Devices_DeviceAccess" = [ "Win32_Devices" ]; + "Win32_Devices_DeviceAndDriverInstallation" = [ "Win32_Devices" ]; + "Win32_Devices_DeviceQuery" = [ "Win32_Devices" ]; + "Win32_Devices_Display" = [ "Win32_Devices" ]; + "Win32_Devices_Enumeration" = [ "Win32_Devices" ]; + "Win32_Devices_Enumeration_Pnp" = [ "Win32_Devices_Enumeration" ]; + "Win32_Devices_Fax" = [ "Win32_Devices" ]; + "Win32_Devices_FunctionDiscovery" = [ "Win32_Devices" ]; + "Win32_Devices_Geolocation" = [ "Win32_Devices" ]; + "Win32_Devices_HumanInterfaceDevice" = [ "Win32_Devices" ]; + "Win32_Devices_ImageAcquisition" = [ "Win32_Devices" ]; + "Win32_Devices_PortableDevices" = [ "Win32_Devices" ]; + "Win32_Devices_Properties" = [ "Win32_Devices" ]; + "Win32_Devices_Pwm" = [ "Win32_Devices" ]; + "Win32_Devices_Sensors" = [ "Win32_Devices" ]; + "Win32_Devices_SerialCommunication" = [ "Win32_Devices" ]; + "Win32_Devices_Tapi" = [ "Win32_Devices" ]; + "Win32_Devices_Usb" = [ "Win32_Devices" ]; + "Win32_Devices_WebServicesOnDevices" = [ "Win32_Devices" ]; + "Win32_Foundation" = [ "Win32" ]; + "Win32_Gaming" = [ "Win32" ]; + "Win32_Globalization" = [ "Win32" ]; + "Win32_Graphics" = [ "Win32" ]; + "Win32_Graphics_Dwm" = [ "Win32_Graphics" ]; + "Win32_Graphics_Gdi" = [ "Win32_Graphics" ]; + "Win32_Graphics_Hlsl" = [ "Win32_Graphics" ]; + "Win32_Graphics_OpenGL" = [ "Win32_Graphics" ]; + "Win32_Graphics_Printing" = [ "Win32_Graphics" ]; + "Win32_Graphics_Printing_PrintTicket" = [ "Win32_Graphics_Printing" ]; + "Win32_Management" = [ "Win32" ]; + "Win32_Management_MobileDeviceManagementRegistration" = [ "Win32_Management" ]; + "Win32_Media" = [ "Win32" ]; + "Win32_Media_Audio" = [ "Win32_Media" ]; + "Win32_Media_Audio_Apo" = [ "Win32_Media_Audio" ]; + "Win32_Media_Audio_DirectMusic" = [ "Win32_Media_Audio" ]; + "Win32_Media_Audio_Endpoints" = [ "Win32_Media_Audio" ]; + "Win32_Media_Audio_XAudio2" = [ "Win32_Media_Audio" ]; + "Win32_Media_DeviceManager" = [ "Win32_Media" ]; + "Win32_Media_DxMediaObjects" = [ "Win32_Media" ]; + "Win32_Media_KernelStreaming" = [ "Win32_Media" ]; + "Win32_Media_LibrarySharingServices" = [ "Win32_Media" ]; + "Win32_Media_MediaPlayer" = [ "Win32_Media" ]; + "Win32_Media_Multimedia" = [ "Win32_Media" ]; + "Win32_Media_Speech" = [ "Win32_Media" ]; + "Win32_Media_Streaming" = [ "Win32_Media" ]; + "Win32_Media_WindowsMediaFormat" = [ "Win32_Media" ]; + "Win32_NetworkManagement" = [ "Win32" ]; + "Win32_NetworkManagement_Dhcp" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Dns" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_InternetConnectionWizard" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_IpHelper" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_MobileBroadband" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Multicast" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Ndis" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetBios" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetManagement" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetShell" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetworkDiagnosticsFramework" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetworkPolicyServer" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_P2P" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_QoS" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Rras" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Snmp" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WNet" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WebDav" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WiFi" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsConnectNow" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsConnectionManager" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsFilteringPlatform" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsFirewall" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsNetworkVirtualization" = [ "Win32_NetworkManagement" ]; + "Win32_Networking" = [ "Win32" ]; + "Win32_Networking_ActiveDirectory" = [ "Win32_Networking" ]; + "Win32_Networking_BackgroundIntelligentTransferService" = [ "Win32_Networking" ]; + "Win32_Networking_Clustering" = [ "Win32_Networking" ]; + "Win32_Networking_HttpServer" = [ "Win32_Networking" ]; + "Win32_Networking_Ldap" = [ "Win32_Networking" ]; + "Win32_Networking_NetworkListManager" = [ "Win32_Networking" ]; + "Win32_Networking_RemoteDifferentialCompression" = [ "Win32_Networking" ]; + "Win32_Networking_WebSocket" = [ "Win32_Networking" ]; + "Win32_Networking_WinHttp" = [ "Win32_Networking" ]; + "Win32_Networking_WinInet" = [ "Win32_Networking" ]; + "Win32_Networking_WinSock" = [ "Win32_Networking" ]; + "Win32_Networking_WindowsWebServices" = [ "Win32_Networking" ]; + "Win32_Security" = [ "Win32" ]; + "Win32_Security_AppLocker" = [ "Win32_Security" ]; + "Win32_Security_Authentication" = [ "Win32_Security" ]; + "Win32_Security_Authentication_Identity" = [ "Win32_Security_Authentication" ]; + "Win32_Security_Authentication_Identity_Provider" = [ "Win32_Security_Authentication_Identity" ]; + "Win32_Security_Authorization" = [ "Win32_Security" ]; + "Win32_Security_Authorization_UI" = [ "Win32_Security_Authorization" ]; + "Win32_Security_ConfigurationSnapin" = [ "Win32_Security" ]; + "Win32_Security_Credentials" = [ "Win32_Security" ]; + "Win32_Security_Cryptography" = [ "Win32_Security" ]; + "Win32_Security_Cryptography_Catalog" = [ "Win32_Security_Cryptography" ]; + "Win32_Security_Cryptography_Certificates" = [ "Win32_Security_Cryptography" ]; + "Win32_Security_Cryptography_Sip" = [ "Win32_Security_Cryptography" ]; + "Win32_Security_Cryptography_UI" = [ "Win32_Security_Cryptography" ]; + "Win32_Security_DiagnosticDataQuery" = [ "Win32_Security" ]; + "Win32_Security_DirectoryServices" = [ "Win32_Security" ]; + "Win32_Security_EnterpriseData" = [ "Win32_Security" ]; + "Win32_Security_ExtensibleAuthenticationProtocol" = [ "Win32_Security" ]; + "Win32_Security_Isolation" = [ "Win32_Security" ]; + "Win32_Security_LicenseProtection" = [ "Win32_Security" ]; + "Win32_Security_NetworkAccessProtection" = [ "Win32_Security" ]; + "Win32_Security_Tpm" = [ "Win32_Security" ]; + "Win32_Security_WinTrust" = [ "Win32_Security" ]; + "Win32_Security_WinWlx" = [ "Win32_Security" ]; + "Win32_Storage" = [ "Win32" ]; + "Win32_Storage_Cabinets" = [ "Win32_Storage" ]; + "Win32_Storage_CloudFilters" = [ "Win32_Storage" ]; + "Win32_Storage_Compression" = [ "Win32_Storage" ]; + "Win32_Storage_DataDeduplication" = [ "Win32_Storage" ]; + "Win32_Storage_DistributedFileSystem" = [ "Win32_Storage" ]; + "Win32_Storage_EnhancedStorage" = [ "Win32_Storage" ]; + "Win32_Storage_FileHistory" = [ "Win32_Storage" ]; + "Win32_Storage_FileServerResourceManager" = [ "Win32_Storage" ]; + "Win32_Storage_FileSystem" = [ "Win32_Storage" ]; + "Win32_Storage_Imapi" = [ "Win32_Storage" ]; + "Win32_Storage_IndexServer" = [ "Win32_Storage" ]; + "Win32_Storage_InstallableFileSystems" = [ "Win32_Storage" ]; + "Win32_Storage_IscsiDisc" = [ "Win32_Storage" ]; + "Win32_Storage_Jet" = [ "Win32_Storage" ]; + "Win32_Storage_OfflineFiles" = [ "Win32_Storage" ]; + "Win32_Storage_OperationRecorder" = [ "Win32_Storage" ]; + "Win32_Storage_Packaging" = [ "Win32_Storage" ]; + "Win32_Storage_Packaging_Appx" = [ "Win32_Storage_Packaging" ]; + "Win32_Storage_Packaging_Opc" = [ "Win32_Storage_Packaging" ]; + "Win32_Storage_ProjectedFileSystem" = [ "Win32_Storage" ]; + "Win32_Storage_StructuredStorage" = [ "Win32_Storage" ]; + "Win32_Storage_Vhd" = [ "Win32_Storage" ]; + "Win32_Storage_VirtualDiskService" = [ "Win32_Storage" ]; + "Win32_Storage_Vss" = [ "Win32_Storage" ]; + "Win32_Storage_Xps" = [ "Win32_Storage" ]; + "Win32_Storage_Xps_Printing" = [ "Win32_Storage_Xps" ]; + "Win32_System" = [ "Win32" ]; + "Win32_System_AddressBook" = [ "Win32_System" ]; + "Win32_System_Antimalware" = [ "Win32_System" ]; + "Win32_System_ApplicationInstallationAndServicing" = [ "Win32_System" ]; + "Win32_System_ApplicationVerifier" = [ "Win32_System" ]; + "Win32_System_AssessmentTool" = [ "Win32_System" ]; + "Win32_System_Com" = [ "Win32_System" ]; + "Win32_System_Com_CallObj" = [ "Win32_System_Com" ]; + "Win32_System_Com_ChannelCredentials" = [ "Win32_System_Com" ]; + "Win32_System_Com_Events" = [ "Win32_System_Com" ]; + "Win32_System_Com_Marshal" = [ "Win32_System_Com" ]; + "Win32_System_Com_StructuredStorage" = [ "Win32_System_Com" ]; + "Win32_System_Com_UI" = [ "Win32_System_Com" ]; + "Win32_System_Com_Urlmon" = [ "Win32_System_Com" ]; + "Win32_System_ComponentServices" = [ "Win32_System" ]; + "Win32_System_Console" = [ "Win32_System" ]; + "Win32_System_Contacts" = [ "Win32_System" ]; + "Win32_System_CorrelationVector" = [ "Win32_System" ]; + "Win32_System_DataExchange" = [ "Win32_System" ]; + "Win32_System_DeploymentServices" = [ "Win32_System" ]; + "Win32_System_DesktopSharing" = [ "Win32_System" ]; + "Win32_System_DeveloperLicensing" = [ "Win32_System" ]; + "Win32_System_Diagnostics" = [ "Win32_System" ]; + "Win32_System_Diagnostics_Ceip" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_Debug" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_Etw" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_ProcessSnapshotting" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_ToolHelp" = [ "Win32_System_Diagnostics" ]; + "Win32_System_DistributedTransactionCoordinator" = [ "Win32_System" ]; + "Win32_System_Environment" = [ "Win32_System" ]; + "Win32_System_ErrorReporting" = [ "Win32_System" ]; + "Win32_System_EventCollector" = [ "Win32_System" ]; + "Win32_System_EventLog" = [ "Win32_System" ]; + "Win32_System_EventNotificationService" = [ "Win32_System" ]; + "Win32_System_GroupPolicy" = [ "Win32_System" ]; + "Win32_System_HostCompute" = [ "Win32_System" ]; + "Win32_System_HostComputeNetwork" = [ "Win32_System" ]; + "Win32_System_HostComputeSystem" = [ "Win32_System" ]; + "Win32_System_Hypervisor" = [ "Win32_System" ]; + "Win32_System_IO" = [ "Win32_System" ]; + "Win32_System_Iis" = [ "Win32_System" ]; + "Win32_System_Ioctl" = [ "Win32_System" ]; + "Win32_System_JobObjects" = [ "Win32_System" ]; + "Win32_System_Js" = [ "Win32_System" ]; + "Win32_System_Kernel" = [ "Win32_System" ]; + "Win32_System_LibraryLoader" = [ "Win32_System" ]; + "Win32_System_Mailslots" = [ "Win32_System" ]; + "Win32_System_Mapi" = [ "Win32_System" ]; + "Win32_System_Memory" = [ "Win32_System" ]; + "Win32_System_Memory_NonVolatile" = [ "Win32_System_Memory" ]; + "Win32_System_MessageQueuing" = [ "Win32_System" ]; + "Win32_System_MixedReality" = [ "Win32_System" ]; + "Win32_System_Mmc" = [ "Win32_System" ]; + "Win32_System_Ole" = [ "Win32_System" ]; + "Win32_System_ParentalControls" = [ "Win32_System" ]; + "Win32_System_PasswordManagement" = [ "Win32_System" ]; + "Win32_System_Performance" = [ "Win32_System" ]; + "Win32_System_Performance_HardwareCounterProfiling" = [ "Win32_System_Performance" ]; + "Win32_System_Pipes" = [ "Win32_System" ]; + "Win32_System_Power" = [ "Win32_System" ]; + "Win32_System_ProcessStatus" = [ "Win32_System" ]; + "Win32_System_RealTimeCommunications" = [ "Win32_System" ]; + "Win32_System_Recovery" = [ "Win32_System" ]; + "Win32_System_Registry" = [ "Win32_System" ]; + "Win32_System_RemoteAssistance" = [ "Win32_System" ]; + "Win32_System_RemoteDesktop" = [ "Win32_System" ]; + "Win32_System_RemoteManagement" = [ "Win32_System" ]; + "Win32_System_RestartManager" = [ "Win32_System" ]; + "Win32_System_Restore" = [ "Win32_System" ]; + "Win32_System_Rpc" = [ "Win32_System" ]; + "Win32_System_Search" = [ "Win32_System" ]; + "Win32_System_Search_Common" = [ "Win32_System_Search" ]; + "Win32_System_SecurityCenter" = [ "Win32_System" ]; + "Win32_System_ServerBackup" = [ "Win32_System" ]; + "Win32_System_Services" = [ "Win32_System" ]; + "Win32_System_SettingsManagementInfrastructure" = [ "Win32_System" ]; + "Win32_System_SetupAndMigration" = [ "Win32_System" ]; + "Win32_System_Shutdown" = [ "Win32_System" ]; + "Win32_System_StationsAndDesktops" = [ "Win32_System" ]; + "Win32_System_SubsystemForLinux" = [ "Win32_System" ]; + "Win32_System_SystemInformation" = [ "Win32_System" ]; + "Win32_System_SystemServices" = [ "Win32_System" ]; + "Win32_System_TaskScheduler" = [ "Win32_System" ]; + "Win32_System_Threading" = [ "Win32_System" ]; + "Win32_System_Time" = [ "Win32_System" ]; + "Win32_System_TpmBaseServices" = [ "Win32_System" ]; + "Win32_System_UpdateAgent" = [ "Win32_System" ]; + "Win32_System_UpdateAssessment" = [ "Win32_System" ]; + "Win32_System_UserAccessLogging" = [ "Win32_System" ]; + "Win32_System_VirtualDosMachines" = [ "Win32_System" ]; + "Win32_System_WindowsProgramming" = [ "Win32_System" ]; + "Win32_System_WindowsSync" = [ "Win32_System" ]; + "Win32_System_Wmi" = [ "Win32_System" ]; + "Win32_UI" = [ "Win32" ]; + "Win32_UI_Accessibility" = [ "Win32_UI" ]; + "Win32_UI_Animation" = [ "Win32_UI" ]; + "Win32_UI_ColorSystem" = [ "Win32_UI" ]; + "Win32_UI_Controls" = [ "Win32_UI" ]; + "Win32_UI_Controls_Dialogs" = [ "Win32_UI_Controls" ]; + "Win32_UI_Controls_RichEdit" = [ "Win32_UI_Controls" ]; + "Win32_UI_HiDpi" = [ "Win32_UI" ]; + "Win32_UI_Input" = [ "Win32_UI" ]; + "Win32_UI_Input_Ime" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_Ink" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_KeyboardAndMouse" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_Pointer" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_Radial" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_Touch" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_XboxController" = [ "Win32_UI_Input" ]; + "Win32_UI_InteractionContext" = [ "Win32_UI" ]; + "Win32_UI_LegacyWindowsEnvironmentFeatures" = [ "Win32_UI" ]; + "Win32_UI_Magnification" = [ "Win32_UI" ]; + "Win32_UI_Notifications" = [ "Win32_UI" ]; + "Win32_UI_Ribbon" = [ "Win32_UI" ]; + "Win32_UI_Shell" = [ "Win32_UI" ]; + "Win32_UI_Shell_Common" = [ "Win32_UI_Shell" ]; + "Win32_UI_Shell_PropertiesSystem" = [ "Win32_UI_Shell" ]; + "Win32_UI_TabletPC" = [ "Win32_UI" ]; + "Win32_UI_TextServices" = [ "Win32_UI" ]; + "Win32_UI_WindowsAndMessaging" = [ "Win32_UI" ]; + "Win32_UI_Wpf" = [ "Win32_UI" ]; + }; + resolvedDefaultFeatures = [ "Win32" "Win32_Globalization" "default" ]; }; - "windows-core" = rec { - crateName = "windows-core"; + "windows-sys 0.52.0" = rec { + crateName = "windows-sys"; version = "0.52.0"; edition = "2021"; - sha256 = "1nc3qv7sy24x0nlnb32f7alzpd6f72l4p24vl65vydbyil669ark"; - libName = "windows_core"; - authors = [ - "Microsoft" - ]; - dependencies = [ - { - name = "windows-targets"; - packageId = "windows-targets 0.52.6"; - } - ]; - features = { - }; - resolvedDefaultFeatures = [ "default" ]; - }; - "windows-link" = rec { - crateName = "windows-link"; - version = "0.1.1"; - edition = "2021"; - sha256 = "0f2cq7imbrppsmmnz8899hfhg07cp5gq6rh0bjhb1qb6nwshk13n"; - libName = "windows_link"; - authors = [ - "Microsoft" - ]; - - }; - "windows-registry" = rec { - crateName = "windows-registry"; - version = "0.2.0"; - edition = "2021"; - sha256 = "1c04923fq0rbvl3z0h67xr6rh2fgwkizhclhqv0j79i0nwdh0074"; - libName = "windows_registry"; - authors = [ - "Microsoft" - ]; - dependencies = [ - { - name = "windows-result"; - packageId = "windows-result"; - } - { - name = "windows-strings"; - packageId = "windows-strings"; - } - { - name = "windows-targets"; - packageId = "windows-targets 0.52.6"; - } - ]; - - }; - "windows-result" = rec { - crateName = "windows-result"; - version = "0.2.0"; - edition = "2021"; - sha256 = "03mf2z1xcy2slhhsm15z24p76qxgm2m74xdjp8bihyag47c4640x"; - libName = "windows_result"; - authors = [ - "Microsoft" - ]; - dependencies = [ - { - name = "windows-targets"; - packageId = "windows-targets 0.52.6"; - } - ]; - features = { - "default" = [ "std" ]; - }; - resolvedDefaultFeatures = [ "default" "std" ]; - }; - "windows-strings" = rec { - crateName = "windows-strings"; - version = "0.1.0"; - edition = "2021"; - sha256 = "042dxvi3133f7dyi2pgcvknwkikk47k8bddwxbq5s0l6qhjv3nac"; - libName = "windows_strings"; - authors = [ - "Microsoft" - ]; - dependencies = [ - { - name = "windows-result"; - packageId = "windows-result"; - usesDefaultFeatures = false; - } - { - name = "windows-targets"; - packageId = "windows-targets 0.52.6"; - } - ]; - features = { - "default" = [ "std" ]; - }; - resolvedDefaultFeatures = [ "default" "std" ]; - }; - "windows-sys 0.48.0" = rec { - crateName = "windows-sys"; - version = "0.48.0"; - edition = "2018"; - sha256 = "1aan23v5gs7gya1lc46hqn9mdh8yph3fhxmhxlw36pn6pqc28zb7"; + sha256 = "0gd3v4ji88490zgb6b5mq5zgbvwv7zx1ibn8v3x83rwcdbryaar8"; libName = "windows_sys"; authors = [ "Microsoft" @@ -15351,34 +16628,38 @@ rec { dependencies = [ { name = "windows-targets"; - packageId = "windows-targets 0.48.5"; + packageId = "windows-targets 0.52.6"; } ]; features = { + "Wdk_Foundation" = [ "Wdk" ]; + "Wdk_Graphics" = [ "Wdk" ]; + "Wdk_Graphics_Direct3D" = [ "Wdk_Graphics" ]; + "Wdk_Storage" = [ "Wdk" ]; + "Wdk_Storage_FileSystem" = [ "Wdk_Storage" ]; + "Wdk_Storage_FileSystem_Minifilters" = [ "Wdk_Storage_FileSystem" ]; "Wdk_System" = [ "Wdk" ]; + "Wdk_System_IO" = [ "Wdk_System" ]; "Wdk_System_OfflineRegistry" = [ "Wdk_System" ]; + "Wdk_System_Registry" = [ "Wdk_System" ]; + "Wdk_System_SystemInformation" = [ "Wdk_System" ]; + "Wdk_System_SystemServices" = [ "Wdk_System" ]; + "Wdk_System_Threading" = [ "Wdk_System" ]; "Win32_Data" = [ "Win32" ]; "Win32_Data_HtmlHelp" = [ "Win32_Data" ]; "Win32_Data_RightsManagement" = [ "Win32_Data" ]; - "Win32_Data_Xml" = [ "Win32_Data" ]; - "Win32_Data_Xml_MsXml" = [ "Win32_Data_Xml" ]; - "Win32_Data_Xml_XmlLite" = [ "Win32_Data_Xml" ]; "Win32_Devices" = [ "Win32" ]; "Win32_Devices_AllJoyn" = [ "Win32_Devices" ]; "Win32_Devices_BiometricFramework" = [ "Win32_Devices" ]; "Win32_Devices_Bluetooth" = [ "Win32_Devices" ]; "Win32_Devices_Communication" = [ "Win32_Devices" ]; - "Win32_Devices_DeviceAccess" = [ "Win32_Devices" ]; "Win32_Devices_DeviceAndDriverInstallation" = [ "Win32_Devices" ]; "Win32_Devices_DeviceQuery" = [ "Win32_Devices" ]; "Win32_Devices_Display" = [ "Win32_Devices" ]; "Win32_Devices_Enumeration" = [ "Win32_Devices" ]; "Win32_Devices_Enumeration_Pnp" = [ "Win32_Devices_Enumeration" ]; "Win32_Devices_Fax" = [ "Win32_Devices" ]; - "Win32_Devices_FunctionDiscovery" = [ "Win32_Devices" ]; - "Win32_Devices_Geolocation" = [ "Win32_Devices" ]; "Win32_Devices_HumanInterfaceDevice" = [ "Win32_Devices" ]; - "Win32_Devices_ImageAcquisition" = [ "Win32_Devices" ]; "Win32_Devices_PortableDevices" = [ "Win32_Devices" ]; "Win32_Devices_Properties" = [ "Win32_Devices" ]; "Win32_Devices_Pwm" = [ "Win32_Devices" ]; @@ -15393,6 +16674,7 @@ rec { "Win32_Graphics" = [ "Win32" ]; "Win32_Graphics_Dwm" = [ "Win32_Graphics" ]; "Win32_Graphics_Gdi" = [ "Win32_Graphics" ]; + "Win32_Graphics_GdiPlus" = [ "Win32_Graphics" ]; "Win32_Graphics_Hlsl" = [ "Win32_Graphics" ]; "Win32_Graphics_OpenGL" = [ "Win32_Graphics" ]; "Win32_Graphics_Printing" = [ "Win32_Graphics" ]; @@ -15401,17 +16683,9 @@ rec { "Win32_Management_MobileDeviceManagementRegistration" = [ "Win32_Management" ]; "Win32_Media" = [ "Win32" ]; "Win32_Media_Audio" = [ "Win32_Media" ]; - "Win32_Media_Audio_Apo" = [ "Win32_Media_Audio" ]; - "Win32_Media_Audio_DirectMusic" = [ "Win32_Media_Audio" ]; - "Win32_Media_Audio_Endpoints" = [ "Win32_Media_Audio" ]; - "Win32_Media_Audio_XAudio2" = [ "Win32_Media_Audio" ]; - "Win32_Media_DeviceManager" = [ "Win32_Media" ]; "Win32_Media_DxMediaObjects" = [ "Win32_Media" ]; "Win32_Media_KernelStreaming" = [ "Win32_Media" ]; - "Win32_Media_LibrarySharingServices" = [ "Win32_Media" ]; - "Win32_Media_MediaPlayer" = [ "Win32_Media" ]; "Win32_Media_Multimedia" = [ "Win32_Media" ]; - "Win32_Media_Speech" = [ "Win32_Media" ]; "Win32_Media_Streaming" = [ "Win32_Media" ]; "Win32_Media_WindowsMediaFormat" = [ "Win32_Media" ]; "Win32_NetworkManagement" = [ "Win32" ]; @@ -15419,14 +16693,12 @@ rec { "Win32_NetworkManagement_Dns" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_InternetConnectionWizard" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_IpHelper" = [ "Win32_NetworkManagement" ]; - "Win32_NetworkManagement_MobileBroadband" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_Multicast" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_Ndis" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_NetBios" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_NetManagement" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_NetShell" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_NetworkDiagnosticsFramework" = [ "Win32_NetworkManagement" ]; - "Win32_NetworkManagement_NetworkPolicyServer" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_P2P" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_QoS" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_Rras" = [ "Win32_NetworkManagement" ]; @@ -15434,19 +16706,15 @@ rec { "Win32_NetworkManagement_WNet" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_WebDav" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_WiFi" = [ "Win32_NetworkManagement" ]; - "Win32_NetworkManagement_WindowsConnectNow" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_WindowsConnectionManager" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_WindowsFilteringPlatform" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_WindowsFirewall" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_WindowsNetworkVirtualization" = [ "Win32_NetworkManagement" ]; "Win32_Networking" = [ "Win32" ]; "Win32_Networking_ActiveDirectory" = [ "Win32_Networking" ]; - "Win32_Networking_BackgroundIntelligentTransferService" = [ "Win32_Networking" ]; "Win32_Networking_Clustering" = [ "Win32_Networking" ]; "Win32_Networking_HttpServer" = [ "Win32_Networking" ]; "Win32_Networking_Ldap" = [ "Win32_Networking" ]; - "Win32_Networking_NetworkListManager" = [ "Win32_Networking" ]; - "Win32_Networking_RemoteDifferentialCompression" = [ "Win32_Networking" ]; "Win32_Networking_WebSocket" = [ "Win32_Networking" ]; "Win32_Networking_WinHttp" = [ "Win32_Networking" ]; "Win32_Networking_WinInet" = [ "Win32_Networking" ]; @@ -15456,10 +16724,7 @@ rec { "Win32_Security_AppLocker" = [ "Win32_Security" ]; "Win32_Security_Authentication" = [ "Win32_Security" ]; "Win32_Security_Authentication_Identity" = [ "Win32_Security_Authentication" ]; - "Win32_Security_Authentication_Identity_Provider" = [ "Win32_Security_Authentication_Identity" ]; "Win32_Security_Authorization" = [ "Win32_Security" ]; - "Win32_Security_Authorization_UI" = [ "Win32_Security_Authorization" ]; - "Win32_Security_ConfigurationSnapin" = [ "Win32_Security" ]; "Win32_Security_Credentials" = [ "Win32_Security" ]; "Win32_Security_Cryptography" = [ "Win32_Security" ]; "Win32_Security_Cryptography_Catalog" = [ "Win32_Security_Cryptography" ]; @@ -15473,64 +16738,48 @@ rec { "Win32_Security_Isolation" = [ "Win32_Security" ]; "Win32_Security_LicenseProtection" = [ "Win32_Security" ]; "Win32_Security_NetworkAccessProtection" = [ "Win32_Security" ]; - "Win32_Security_Tpm" = [ "Win32_Security" ]; "Win32_Security_WinTrust" = [ "Win32_Security" ]; "Win32_Security_WinWlx" = [ "Win32_Security" ]; "Win32_Storage" = [ "Win32" ]; "Win32_Storage_Cabinets" = [ "Win32_Storage" ]; "Win32_Storage_CloudFilters" = [ "Win32_Storage" ]; "Win32_Storage_Compression" = [ "Win32_Storage" ]; - "Win32_Storage_DataDeduplication" = [ "Win32_Storage" ]; "Win32_Storage_DistributedFileSystem" = [ "Win32_Storage" ]; - "Win32_Storage_EnhancedStorage" = [ "Win32_Storage" ]; "Win32_Storage_FileHistory" = [ "Win32_Storage" ]; - "Win32_Storage_FileServerResourceManager" = [ "Win32_Storage" ]; "Win32_Storage_FileSystem" = [ "Win32_Storage" ]; "Win32_Storage_Imapi" = [ "Win32_Storage" ]; "Win32_Storage_IndexServer" = [ "Win32_Storage" ]; "Win32_Storage_InstallableFileSystems" = [ "Win32_Storage" ]; "Win32_Storage_IscsiDisc" = [ "Win32_Storage" ]; "Win32_Storage_Jet" = [ "Win32_Storage" ]; + "Win32_Storage_Nvme" = [ "Win32_Storage" ]; "Win32_Storage_OfflineFiles" = [ "Win32_Storage" ]; "Win32_Storage_OperationRecorder" = [ "Win32_Storage" ]; "Win32_Storage_Packaging" = [ "Win32_Storage" ]; "Win32_Storage_Packaging_Appx" = [ "Win32_Storage_Packaging" ]; - "Win32_Storage_Packaging_Opc" = [ "Win32_Storage_Packaging" ]; "Win32_Storage_ProjectedFileSystem" = [ "Win32_Storage" ]; "Win32_Storage_StructuredStorage" = [ "Win32_Storage" ]; "Win32_Storage_Vhd" = [ "Win32_Storage" ]; - "Win32_Storage_VirtualDiskService" = [ "Win32_Storage" ]; - "Win32_Storage_Vss" = [ "Win32_Storage" ]; "Win32_Storage_Xps" = [ "Win32_Storage" ]; - "Win32_Storage_Xps_Printing" = [ "Win32_Storage_Xps" ]; "Win32_System" = [ "Win32" ]; "Win32_System_AddressBook" = [ "Win32_System" ]; "Win32_System_Antimalware" = [ "Win32_System" ]; "Win32_System_ApplicationInstallationAndServicing" = [ "Win32_System" ]; "Win32_System_ApplicationVerifier" = [ "Win32_System" ]; - "Win32_System_AssessmentTool" = [ "Win32_System" ]; "Win32_System_ClrHosting" = [ "Win32_System" ]; "Win32_System_Com" = [ "Win32_System" ]; - "Win32_System_Com_CallObj" = [ "Win32_System_Com" ]; - "Win32_System_Com_ChannelCredentials" = [ "Win32_System_Com" ]; - "Win32_System_Com_Events" = [ "Win32_System_Com" ]; "Win32_System_Com_Marshal" = [ "Win32_System_Com" ]; "Win32_System_Com_StructuredStorage" = [ "Win32_System_Com" ]; - "Win32_System_Com_UI" = [ "Win32_System_Com" ]; "Win32_System_Com_Urlmon" = [ "Win32_System_Com" ]; "Win32_System_ComponentServices" = [ "Win32_System" ]; "Win32_System_Console" = [ "Win32_System" ]; - "Win32_System_Contacts" = [ "Win32_System" ]; "Win32_System_CorrelationVector" = [ "Win32_System" ]; "Win32_System_DataExchange" = [ "Win32_System" ]; "Win32_System_DeploymentServices" = [ "Win32_System" ]; - "Win32_System_DesktopSharing" = [ "Win32_System" ]; "Win32_System_DeveloperLicensing" = [ "Win32_System" ]; "Win32_System_Diagnostics" = [ "Win32_System" ]; "Win32_System_Diagnostics_Ceip" = [ "Win32_System_Diagnostics" ]; - "Win32_System_Diagnostics_ClrProfiling" = [ "Win32_System_Diagnostics" ]; "Win32_System_Diagnostics_Debug" = [ "Win32_System_Diagnostics" ]; - "Win32_System_Diagnostics_Debug_ActiveScript" = [ "Win32_System_Diagnostics_Debug" ]; "Win32_System_Diagnostics_Debug_Extensions" = [ "Win32_System_Diagnostics_Debug" ]; "Win32_System_Diagnostics_Etw" = [ "Win32_System_Diagnostics" ]; "Win32_System_Diagnostics_ProcessSnapshotting" = [ "Win32_System_Diagnostics" ]; @@ -15559,19 +16808,15 @@ rec { "Win32_System_Memory_NonVolatile" = [ "Win32_System_Memory" ]; "Win32_System_MessageQueuing" = [ "Win32_System" ]; "Win32_System_MixedReality" = [ "Win32_System" ]; - "Win32_System_Mmc" = [ "Win32_System" ]; "Win32_System_Ole" = [ "Win32_System" ]; - "Win32_System_ParentalControls" = [ "Win32_System" ]; "Win32_System_PasswordManagement" = [ "Win32_System" ]; "Win32_System_Performance" = [ "Win32_System" ]; "Win32_System_Performance_HardwareCounterProfiling" = [ "Win32_System_Performance" ]; "Win32_System_Pipes" = [ "Win32_System" ]; "Win32_System_Power" = [ "Win32_System" ]; "Win32_System_ProcessStatus" = [ "Win32_System" ]; - "Win32_System_RealTimeCommunications" = [ "Win32_System" ]; "Win32_System_Recovery" = [ "Win32_System" ]; "Win32_System_Registry" = [ "Win32_System" ]; - "Win32_System_RemoteAssistance" = [ "Win32_System" ]; "Win32_System_RemoteDesktop" = [ "Win32_System" ]; "Win32_System_RemoteManagement" = [ "Win32_System" ]; "Win32_System_RestartManager" = [ "Win32_System" ]; @@ -15580,64 +16825,50 @@ rec { "Win32_System_Search" = [ "Win32_System" ]; "Win32_System_Search_Common" = [ "Win32_System_Search" ]; "Win32_System_SecurityCenter" = [ "Win32_System" ]; - "Win32_System_ServerBackup" = [ "Win32_System" ]; "Win32_System_Services" = [ "Win32_System" ]; - "Win32_System_SettingsManagementInfrastructure" = [ "Win32_System" ]; "Win32_System_SetupAndMigration" = [ "Win32_System" ]; "Win32_System_Shutdown" = [ "Win32_System" ]; "Win32_System_StationsAndDesktops" = [ "Win32_System" ]; "Win32_System_SubsystemForLinux" = [ "Win32_System" ]; "Win32_System_SystemInformation" = [ "Win32_System" ]; "Win32_System_SystemServices" = [ "Win32_System" ]; - "Win32_System_TaskScheduler" = [ "Win32_System" ]; "Win32_System_Threading" = [ "Win32_System" ]; "Win32_System_Time" = [ "Win32_System" ]; "Win32_System_TpmBaseServices" = [ "Win32_System" ]; - "Win32_System_UpdateAgent" = [ "Win32_System" ]; - "Win32_System_UpdateAssessment" = [ "Win32_System" ]; "Win32_System_UserAccessLogging" = [ "Win32_System" ]; + "Win32_System_Variant" = [ "Win32_System" ]; "Win32_System_VirtualDosMachines" = [ "Win32_System" ]; "Win32_System_WindowsProgramming" = [ "Win32_System" ]; - "Win32_System_WindowsSync" = [ "Win32_System" ]; "Win32_System_Wmi" = [ "Win32_System" ]; "Win32_UI" = [ "Win32" ]; "Win32_UI_Accessibility" = [ "Win32_UI" ]; - "Win32_UI_Animation" = [ "Win32_UI" ]; "Win32_UI_ColorSystem" = [ "Win32_UI" ]; "Win32_UI_Controls" = [ "Win32_UI" ]; "Win32_UI_Controls_Dialogs" = [ "Win32_UI_Controls" ]; - "Win32_UI_Controls_RichEdit" = [ "Win32_UI_Controls" ]; "Win32_UI_HiDpi" = [ "Win32_UI" ]; "Win32_UI_Input" = [ "Win32_UI" ]; "Win32_UI_Input_Ime" = [ "Win32_UI_Input" ]; - "Win32_UI_Input_Ink" = [ "Win32_UI_Input" ]; "Win32_UI_Input_KeyboardAndMouse" = [ "Win32_UI_Input" ]; "Win32_UI_Input_Pointer" = [ "Win32_UI_Input" ]; - "Win32_UI_Input_Radial" = [ "Win32_UI_Input" ]; "Win32_UI_Input_Touch" = [ "Win32_UI_Input" ]; "Win32_UI_Input_XboxController" = [ "Win32_UI_Input" ]; "Win32_UI_InteractionContext" = [ "Win32_UI" ]; - "Win32_UI_LegacyWindowsEnvironmentFeatures" = [ "Win32_UI" ]; "Win32_UI_Magnification" = [ "Win32_UI" ]; - "Win32_UI_Notifications" = [ "Win32_UI" ]; - "Win32_UI_Ribbon" = [ "Win32_UI" ]; "Win32_UI_Shell" = [ "Win32_UI" ]; - "Win32_UI_Shell_Common" = [ "Win32_UI_Shell" ]; "Win32_UI_Shell_PropertiesSystem" = [ "Win32_UI_Shell" ]; "Win32_UI_TabletPC" = [ "Win32_UI" ]; "Win32_UI_TextServices" = [ "Win32_UI" ]; "Win32_UI_WindowsAndMessaging" = [ "Win32_UI" ]; - "Win32_UI_Wpf" = [ "Win32_UI" ]; "Win32_Web" = [ "Win32" ]; "Win32_Web_InternetExplorer" = [ "Win32_Web" ]; }; - resolvedDefaultFeatures = [ "Win32" "Win32_Foundation" "Win32_Globalization" "Win32_System" "Win32_System_Com" "Win32_UI" "Win32_UI_Shell" "default" ]; + resolvedDefaultFeatures = [ "Win32" "Win32_Foundation" "Win32_System" "Win32_System_Threading" "default" ]; }; - "windows-sys 0.52.0" = rec { + "windows-sys 0.60.2" = rec { crateName = "windows-sys"; - version = "0.52.0"; + version = "0.60.2"; edition = "2021"; - sha256 = "0gd3v4ji88490zgb6b5mq5zgbvwv7zx1ibn8v3x83rwcdbryaar8"; + sha256 = "1jrbc615ihqnhjhxplr2kw7rasrskv9wj3lr80hgfd42sbj01xgj"; libName = "windows_sys"; authors = [ "Microsoft" @@ -15645,38 +16876,53 @@ rec { dependencies = [ { name = "windows-targets"; - packageId = "windows-targets 0.52.6"; + packageId = "windows-targets 0.53.5"; + usesDefaultFeatures = false; } ]; features = { + "Wdk" = [ "Win32_Foundation" ]; + "Wdk_Devices" = [ "Wdk" ]; + "Wdk_Devices_Bluetooth" = [ "Wdk_Devices" ]; + "Wdk_Devices_HumanInterfaceDevice" = [ "Wdk_Devices" ]; "Wdk_Foundation" = [ "Wdk" ]; "Wdk_Graphics" = [ "Wdk" ]; "Wdk_Graphics_Direct3D" = [ "Wdk_Graphics" ]; + "Wdk_NetworkManagement" = [ "Wdk" ]; + "Wdk_NetworkManagement_Ndis" = [ "Wdk_NetworkManagement" ]; + "Wdk_NetworkManagement_WindowsFilteringPlatform" = [ "Wdk_NetworkManagement" ]; "Wdk_Storage" = [ "Wdk" ]; "Wdk_Storage_FileSystem" = [ "Wdk_Storage" ]; "Wdk_Storage_FileSystem_Minifilters" = [ "Wdk_Storage_FileSystem" ]; "Wdk_System" = [ "Wdk" ]; "Wdk_System_IO" = [ "Wdk_System" ]; + "Wdk_System_Memory" = [ "Wdk_System" ]; "Wdk_System_OfflineRegistry" = [ "Wdk_System" ]; "Wdk_System_Registry" = [ "Wdk_System" ]; "Wdk_System_SystemInformation" = [ "Wdk_System" ]; "Wdk_System_SystemServices" = [ "Wdk_System" ]; "Wdk_System_Threading" = [ "Wdk_System" ]; + "Win32" = [ "Win32_Foundation" ]; "Win32_Data" = [ "Win32" ]; "Win32_Data_HtmlHelp" = [ "Win32_Data" ]; "Win32_Data_RightsManagement" = [ "Win32_Data" ]; "Win32_Devices" = [ "Win32" ]; "Win32_Devices_AllJoyn" = [ "Win32_Devices" ]; + "Win32_Devices_Beep" = [ "Win32_Devices" ]; "Win32_Devices_BiometricFramework" = [ "Win32_Devices" ]; "Win32_Devices_Bluetooth" = [ "Win32_Devices" ]; + "Win32_Devices_Cdrom" = [ "Win32_Devices" ]; "Win32_Devices_Communication" = [ "Win32_Devices" ]; "Win32_Devices_DeviceAndDriverInstallation" = [ "Win32_Devices" ]; "Win32_Devices_DeviceQuery" = [ "Win32_Devices" ]; "Win32_Devices_Display" = [ "Win32_Devices" ]; + "Win32_Devices_Dvd" = [ "Win32_Devices" ]; "Win32_Devices_Enumeration" = [ "Win32_Devices" ]; "Win32_Devices_Enumeration_Pnp" = [ "Win32_Devices_Enumeration" ]; "Win32_Devices_Fax" = [ "Win32_Devices" ]; "Win32_Devices_HumanInterfaceDevice" = [ "Win32_Devices" ]; + "Win32_Devices_Nfc" = [ "Win32_Devices" ]; + "Win32_Devices_Nfp" = [ "Win32_Devices" ]; "Win32_Devices_PortableDevices" = [ "Win32_Devices" ]; "Win32_Devices_Properties" = [ "Win32_Devices" ]; "Win32_Devices_Pwm" = [ "Win32_Devices" ]; @@ -15801,6 +17047,7 @@ rec { "Win32_System_Diagnostics_Etw" = [ "Win32_System_Diagnostics" ]; "Win32_System_Diagnostics_ProcessSnapshotting" = [ "Win32_System_Diagnostics" ]; "Win32_System_Diagnostics_ToolHelp" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_TraceLogging" = [ "Win32_System_Diagnostics" ]; "Win32_System_DistributedTransactionCoordinator" = [ "Win32_System" ]; "Win32_System_Environment" = [ "Win32_System" ]; "Win32_System_ErrorReporting" = [ "Win32_System" ]; @@ -15872,6 +17119,7 @@ rec { "Win32_UI_InteractionContext" = [ "Win32_UI" ]; "Win32_UI_Magnification" = [ "Win32_UI" ]; "Win32_UI_Shell" = [ "Win32_UI" ]; + "Win32_UI_Shell_Common" = [ "Win32_UI_Shell" ]; "Win32_UI_Shell_PropertiesSystem" = [ "Win32_UI_Shell" ]; "Win32_UI_TabletPC" = [ "Win32_UI" ]; "Win32_UI_TextServices" = [ "Win32_UI" ]; @@ -15879,21 +17127,19 @@ rec { "Win32_Web" = [ "Win32" ]; "Win32_Web_InternetExplorer" = [ "Win32_Web" ]; }; - resolvedDefaultFeatures = [ "Wdk" "Wdk_Foundation" "Wdk_Storage" "Wdk_Storage_FileSystem" "Wdk_System" "Wdk_System_IO" "Win32" "Win32_Foundation" "Win32_NetworkManagement" "Win32_NetworkManagement_IpHelper" "Win32_Networking" "Win32_Networking_WinSock" "Win32_Security" "Win32_Security_Authentication" "Win32_Security_Authentication_Identity" "Win32_Security_Credentials" "Win32_Security_Cryptography" "Win32_Storage" "Win32_Storage_FileSystem" "Win32_System" "Win32_System_Com" "Win32_System_Console" "Win32_System_Diagnostics" "Win32_System_Diagnostics_Debug" "Win32_System_IO" "Win32_System_Memory" "Win32_System_Pipes" "Win32_System_SystemServices" "Win32_System_Threading" "Win32_System_WindowsProgramming" "Win32_UI" "Win32_UI_Input" "Win32_UI_Input_KeyboardAndMouse" "Win32_UI_Shell" "default" ]; + resolvedDefaultFeatures = [ "Win32" "Win32_Foundation" "Win32_Networking" "Win32_Networking_WinSock" "Win32_System" "Win32_System_IO" "default" ]; }; - "windows-sys 0.59.0" = rec { + "windows-sys 0.61.2" = rec { crateName = "windows-sys"; - version = "0.59.0"; + version = "0.61.2"; edition = "2021"; - sha256 = "0fw5672ziw8b3zpmnbp9pdv1famk74f1l9fcbc3zsrzdg56vqf0y"; + sha256 = "1z7k3y9b6b5h52kid57lvmvm05362zv1v8w0gc7xyv5xphlp44xf"; libName = "windows_sys"; - authors = [ - "Microsoft" - ]; dependencies = [ { - name = "windows-targets"; - packageId = "windows-targets 0.52.6"; + name = "windows-link"; + packageId = "windows-link"; + usesDefaultFeatures = false; } ]; features = { @@ -15924,16 +17170,21 @@ rec { "Win32_Data_RightsManagement" = [ "Win32_Data" ]; "Win32_Devices" = [ "Win32" ]; "Win32_Devices_AllJoyn" = [ "Win32_Devices" ]; + "Win32_Devices_Beep" = [ "Win32_Devices" ]; "Win32_Devices_BiometricFramework" = [ "Win32_Devices" ]; "Win32_Devices_Bluetooth" = [ "Win32_Devices" ]; + "Win32_Devices_Cdrom" = [ "Win32_Devices" ]; "Win32_Devices_Communication" = [ "Win32_Devices" ]; "Win32_Devices_DeviceAndDriverInstallation" = [ "Win32_Devices" ]; "Win32_Devices_DeviceQuery" = [ "Win32_Devices" ]; "Win32_Devices_Display" = [ "Win32_Devices" ]; + "Win32_Devices_Dvd" = [ "Win32_Devices" ]; "Win32_Devices_Enumeration" = [ "Win32_Devices" ]; "Win32_Devices_Enumeration_Pnp" = [ "Win32_Devices_Enumeration" ]; "Win32_Devices_Fax" = [ "Win32_Devices" ]; "Win32_Devices_HumanInterfaceDevice" = [ "Win32_Devices" ]; + "Win32_Devices_Nfc" = [ "Win32_Devices" ]; + "Win32_Devices_Nfp" = [ "Win32_Devices" ]; "Win32_Devices_PortableDevices" = [ "Win32_Devices" ]; "Win32_Devices_Properties" = [ "Win32_Devices" ]; "Win32_Devices_Pwm" = [ "Win32_Devices" ]; @@ -16138,13 +17389,13 @@ rec { "Win32_Web" = [ "Win32" ]; "Win32_Web_InternetExplorer" = [ "Win32_Web" ]; }; - resolvedDefaultFeatures = [ "Win32" "Win32_Foundation" "Win32_Networking" "Win32_Networking_WinSock" "Win32_Storage" "Win32_Storage_FileSystem" "Win32_System" "Win32_System_Console" "Win32_System_IO" "Win32_System_SystemInformation" "default" ]; + resolvedDefaultFeatures = [ "Wdk" "Wdk_Foundation" "Wdk_Storage" "Wdk_Storage_FileSystem" "Wdk_System" "Wdk_System_IO" "Win32" "Win32_Foundation" "Win32_Globalization" "Win32_Networking" "Win32_Networking_WinSock" "Win32_Security" "Win32_Security_Authentication" "Win32_Security_Authentication_Identity" "Win32_Security_Credentials" "Win32_Security_Cryptography" "Win32_Storage" "Win32_Storage_FileSystem" "Win32_System" "Win32_System_Com" "Win32_System_Console" "Win32_System_Diagnostics" "Win32_System_Diagnostics_Debug" "Win32_System_IO" "Win32_System_LibraryLoader" "Win32_System_Memory" "Win32_System_Pipes" "Win32_System_SystemInformation" "Win32_System_SystemServices" "Win32_System_Threading" "Win32_System_Time" "Win32_System_WindowsProgramming" "Win32_UI" "Win32_UI_Input" "Win32_UI_Input_KeyboardAndMouse" "Win32_UI_Shell" "default" ]; }; - "windows-targets 0.48.5" = rec { + "windows-targets 0.42.2" = rec { crateName = "windows-targets"; - version = "0.48.5"; + version = "0.42.2"; edition = "2018"; - sha256 = "034ljxqshifs1lan89xwpcy1hp0lhdh4b5n0d2z4fwjx2piacbws"; + sha256 = "0wfhnib2fisxlx8c507dbmh97kgij4r6kcxdi0f9nk6l1k080lcf"; libName = "windows_targets"; authors = [ "Microsoft" @@ -16152,38 +17403,63 @@ rec { dependencies = [ { name = "windows_aarch64_gnullvm"; - packageId = "windows_aarch64_gnullvm 0.48.5"; - target = { target, features }: (stdenv.hostPlatform.rust.rustcTarget == "aarch64-pc-windows-gnullvm"); + packageId = "windows_aarch64_gnullvm 0.42.2"; + target = { target, features }: (target.name == "aarch64-pc-windows-gnullvm"); + } + { + name = "windows_aarch64_msvc"; + packageId = "windows_aarch64_msvc 0.42.2"; + target = { target, features }: (target.name == "aarch64-pc-windows-msvc"); + } + { + name = "windows_aarch64_msvc"; + packageId = "windows_aarch64_msvc 0.42.2"; + target = { target, features }: (target.name == "aarch64-uwp-windows-msvc"); } { - name = "windows_aarch64_msvc"; - packageId = "windows_aarch64_msvc 0.48.5"; - target = { target, features }: (("aarch64" == target."arch" or null) && ("msvc" == target."env" or null) && (!(target."windows_raw_dylib" or false))); + name = "windows_i686_gnu"; + packageId = "windows_i686_gnu 0.42.2"; + target = { target, features }: (target.name == "i686-pc-windows-gnu"); } { name = "windows_i686_gnu"; - packageId = "windows_i686_gnu 0.48.5"; - target = { target, features }: (("x86" == target."arch" or null) && ("gnu" == target."env" or null) && (!(target."windows_raw_dylib" or false))); + packageId = "windows_i686_gnu 0.42.2"; + target = { target, features }: (target.name == "i686-uwp-windows-gnu"); } { name = "windows_i686_msvc"; - packageId = "windows_i686_msvc 0.48.5"; - target = { target, features }: (("x86" == target."arch" or null) && ("msvc" == target."env" or null) && (!(target."windows_raw_dylib" or false))); + packageId = "windows_i686_msvc 0.42.2"; + target = { target, features }: (target.name == "i686-pc-windows-msvc"); + } + { + name = "windows_i686_msvc"; + packageId = "windows_i686_msvc 0.42.2"; + target = { target, features }: (target.name == "i686-uwp-windows-msvc"); } { name = "windows_x86_64_gnu"; - packageId = "windows_x86_64_gnu 0.48.5"; - target = { target, features }: (("x86_64" == target."arch" or null) && ("gnu" == target."env" or null) && (!("llvm" == target."abi" or null)) && (!(target."windows_raw_dylib" or false))); + packageId = "windows_x86_64_gnu 0.42.2"; + target = { target, features }: (target.name == "x86_64-pc-windows-gnu"); + } + { + name = "windows_x86_64_gnu"; + packageId = "windows_x86_64_gnu 0.42.2"; + target = { target, features }: (target.name == "x86_64-uwp-windows-gnu"); } { name = "windows_x86_64_gnullvm"; - packageId = "windows_x86_64_gnullvm 0.48.5"; - target = { target, features }: (stdenv.hostPlatform.rust.rustcTarget == "x86_64-pc-windows-gnullvm"); + packageId = "windows_x86_64_gnullvm 0.42.2"; + target = { target, features }: (target.name == "x86_64-pc-windows-gnullvm"); + } + { + name = "windows_x86_64_msvc"; + packageId = "windows_x86_64_msvc 0.42.2"; + target = { target, features }: (target.name == "x86_64-pc-windows-msvc"); } { name = "windows_x86_64_msvc"; - packageId = "windows_x86_64_msvc 0.48.5"; - target = { target, features }: (("x86_64" == target."arch" or null) && ("msvc" == target."env" or null) && (!(target."windows_raw_dylib" or false))); + packageId = "windows_x86_64_msvc 0.42.2"; + target = { target, features }: (target.name == "x86_64-uwp-windows-msvc"); } ]; @@ -16201,7 +17477,7 @@ rec { { name = "windows_aarch64_gnullvm"; packageId = "windows_aarch64_gnullvm 0.52.6"; - target = { target, features }: (stdenv.hostPlatform.rust.rustcTarget == "aarch64-pc-windows-gnullvm"); + target = { target, features }: (target.name == "aarch64-pc-windows-gnullvm"); } { name = "windows_aarch64_msvc"; @@ -16215,8 +17491,8 @@ rec { } { name = "windows_i686_gnullvm"; - packageId = "windows_i686_gnullvm"; - target = { target, features }: (stdenv.hostPlatform.rust.rustcTarget == "i686-pc-windows-gnullvm"); + packageId = "windows_i686_gnullvm 0.52.6"; + target = { target, features }: (target.name == "i686-pc-windows-gnullvm"); } { name = "windows_i686_msvc"; @@ -16231,7 +17507,7 @@ rec { { name = "windows_x86_64_gnullvm"; packageId = "windows_x86_64_gnullvm 0.52.6"; - target = { target, features }: (stdenv.hostPlatform.rust.rustcTarget == "x86_64-pc-windows-gnullvm"); + target = { target, features }: (target.name == "x86_64-pc-windows-gnullvm"); } { name = "windows_x86_64_msvc"; @@ -16241,11 +17517,67 @@ rec { ]; }; - "windows_aarch64_gnullvm 0.48.5" = rec { + "windows-targets 0.53.5" = rec { + crateName = "windows-targets"; + version = "0.53.5"; + edition = "2021"; + sha256 = "1wv9j2gv3l6wj3gkw5j1kr6ymb5q6dfc42yvydjhv3mqa7szjia9"; + libName = "windows_targets"; + dependencies = [ + { + name = "windows-link"; + packageId = "windows-link"; + usesDefaultFeatures = false; + target = { target, features }: (target."windows_raw_dylib" or false); + } + { + name = "windows_aarch64_gnullvm"; + packageId = "windows_aarch64_gnullvm 0.53.1"; + target = { target, features }: (target.name == "aarch64-pc-windows-gnullvm"); + } + { + name = "windows_aarch64_msvc"; + packageId = "windows_aarch64_msvc 0.53.1"; + target = { target, features }: (("aarch64" == target."arch" or null) && ("msvc" == target."env" or null) && (!(target."windows_raw_dylib" or false))); + } + { + name = "windows_i686_gnu"; + packageId = "windows_i686_gnu 0.53.1"; + target = { target, features }: (("x86" == target."arch" or null) && ("gnu" == target."env" or null) && (!("llvm" == target."abi" or null)) && (!(target."windows_raw_dylib" or false))); + } + { + name = "windows_i686_gnullvm"; + packageId = "windows_i686_gnullvm 0.53.1"; + target = { target, features }: (target.name == "i686-pc-windows-gnullvm"); + } + { + name = "windows_i686_msvc"; + packageId = "windows_i686_msvc 0.53.1"; + target = { target, features }: (("x86" == target."arch" or null) && ("msvc" == target."env" or null) && (!(target."windows_raw_dylib" or false))); + } + { + name = "windows_x86_64_gnu"; + packageId = "windows_x86_64_gnu 0.53.1"; + target = { target, features }: (("x86_64" == target."arch" or null) && ("gnu" == target."env" or null) && (!("llvm" == target."abi" or null)) && (!(target."windows_raw_dylib" or false))); + } + { + name = "windows_x86_64_gnullvm"; + packageId = "windows_x86_64_gnullvm 0.53.1"; + target = { target, features }: (target.name == "x86_64-pc-windows-gnullvm"); + } + { + name = "windows_x86_64_msvc"; + packageId = "windows_x86_64_msvc 0.53.1"; + target = { target, features }: ((("x86_64" == target."arch" or null) || ("arm64ec" == target."arch" or null)) && ("msvc" == target."env" or null) && (!(target."windows_raw_dylib" or false))); + } + ]; + + }; + "windows_aarch64_gnullvm 0.42.2" = rec { crateName = "windows_aarch64_gnullvm"; - version = "0.48.5"; + version = "0.42.2"; edition = "2018"; - sha256 = "1n05v7qblg1ci3i567inc7xrkmywczxrs1z3lj3rkkxw18py6f1b"; + sha256 = "1y4q0qmvl0lvp7syxvfykafvmwal5hrjb4fmv04bqs0bawc52yjr"; authors = [ "Microsoft" ]; @@ -16261,11 +17593,18 @@ rec { ]; }; - "windows_aarch64_msvc 0.48.5" = rec { + "windows_aarch64_gnullvm 0.53.1" = rec { + crateName = "windows_aarch64_gnullvm"; + version = "0.53.1"; + edition = "2021"; + sha256 = "0lqvdm510mka9w26vmga7hbkmrw9glzc90l4gya5qbxlm1pl3n59"; + + }; + "windows_aarch64_msvc 0.42.2" = rec { crateName = "windows_aarch64_msvc"; - version = "0.48.5"; + version = "0.42.2"; edition = "2018"; - sha256 = "1g5l4ry968p73g6bg6jgyvy9lb8fyhcs54067yzxpcpkf44k2dfw"; + sha256 = "0hsdikjl5sa1fva5qskpwlxzpc5q9l909fpl1w6yy1hglrj8i3p0"; authors = [ "Microsoft" ]; @@ -16281,11 +17620,18 @@ rec { ]; }; - "windows_i686_gnu 0.48.5" = rec { + "windows_aarch64_msvc 0.53.1" = rec { + crateName = "windows_aarch64_msvc"; + version = "0.53.1"; + edition = "2021"; + sha256 = "01jh2adlwx043rji888b22whx4bm8alrk3khjpik5xn20kl85mxr"; + + }; + "windows_i686_gnu 0.42.2" = rec { crateName = "windows_i686_gnu"; - version = "0.48.5"; + version = "0.42.2"; edition = "2018"; - sha256 = "0gklnglwd9ilqx7ac3cn8hbhkraqisd0n83jxzf9837nvvkiand7"; + sha256 = "0kx866dfrby88lqs9v1vgmrkk1z6af9lhaghh5maj7d4imyr47f6"; authors = [ "Microsoft" ]; @@ -16301,7 +17647,14 @@ rec { ]; }; - "windows_i686_gnullvm" = rec { + "windows_i686_gnu 0.53.1" = rec { + crateName = "windows_i686_gnu"; + version = "0.53.1"; + edition = "2021"; + sha256 = "18wkcm82ldyg4figcsidzwbg1pqd49jpm98crfz0j7nqd6h6s3ln"; + + }; + "windows_i686_gnullvm 0.52.6" = rec { crateName = "windows_i686_gnullvm"; version = "0.52.6"; edition = "2021"; @@ -16311,11 +17664,18 @@ rec { ]; }; - "windows_i686_msvc 0.48.5" = rec { + "windows_i686_gnullvm 0.53.1" = rec { + crateName = "windows_i686_gnullvm"; + version = "0.53.1"; + edition = "2021"; + sha256 = "030qaxqc4salz6l4immfb6sykc6gmhyir9wzn2w8mxj8038mjwzs"; + + }; + "windows_i686_msvc 0.42.2" = rec { crateName = "windows_i686_msvc"; - version = "0.48.5"; + version = "0.42.2"; edition = "2018"; - sha256 = "01m4rik437dl9rdf0ndnm2syh10hizvq0dajdkv2fjqcywrw4mcg"; + sha256 = "0q0h9m2aq1pygc199pa5jgc952qhcnf0zn688454i7v4xjv41n24"; authors = [ "Microsoft" ]; @@ -16331,11 +17691,18 @@ rec { ]; }; - "windows_x86_64_gnu 0.48.5" = rec { + "windows_i686_msvc 0.53.1" = rec { + crateName = "windows_i686_msvc"; + version = "0.53.1"; + edition = "2021"; + sha256 = "1hi6scw3mn2pbdl30ji5i4y8vvspb9b66l98kkz350pig58wfyhy"; + + }; + "windows_x86_64_gnu 0.42.2" = rec { crateName = "windows_x86_64_gnu"; - version = "0.48.5"; + version = "0.42.2"; edition = "2018"; - sha256 = "13kiqqcvz2vnyxzydjh73hwgigsdr2z1xpzx313kxll34nyhmm2k"; + sha256 = "0dnbf2xnp3xrvy8v9mgs3var4zq9v9yh9kv79035rdgyp2w15scd"; authors = [ "Microsoft" ]; @@ -16351,11 +17718,18 @@ rec { ]; }; - "windows_x86_64_gnullvm 0.48.5" = rec { + "windows_x86_64_gnu 0.53.1" = rec { + crateName = "windows_x86_64_gnu"; + version = "0.53.1"; + edition = "2021"; + sha256 = "16d4yiysmfdlsrghndr97y57gh3kljkwhfdbcs05m1jasz6l4f4w"; + + }; + "windows_x86_64_gnullvm 0.42.2" = rec { crateName = "windows_x86_64_gnullvm"; - version = "0.48.5"; + version = "0.42.2"; edition = "2018"; - sha256 = "1k24810wfbgz8k48c2yknqjmiigmql6kk3knmddkv8k8g1v54yqb"; + sha256 = "18wl9r8qbsl475j39zvawlidp1bsbinliwfymr43fibdld31pm16"; authors = [ "Microsoft" ]; @@ -16369,104 +17743,399 @@ rec { authors = [ "Microsoft" ]; - - }; - "windows_x86_64_msvc 0.48.5" = rec { - crateName = "windows_x86_64_msvc"; - version = "0.48.5"; - edition = "2018"; - sha256 = "0f4mdp895kkjh9zv8dxvn4pc10xr7839lf5pa9l0193i2pkgr57d"; - authors = [ - "Microsoft" + + }; + "windows_x86_64_gnullvm 0.53.1" = rec { + crateName = "windows_x86_64_gnullvm"; + version = "0.53.1"; + edition = "2021"; + sha256 = "1qbspgv4g3q0vygkg8rnql5c6z3caqv38japiynyivh75ng1gyhg"; + + }; + "windows_x86_64_msvc 0.42.2" = rec { + crateName = "windows_x86_64_msvc"; + version = "0.42.2"; + edition = "2018"; + sha256 = "1w5r0q0yzx827d10dpjza2ww0j8iajqhmb54s735hhaj66imvv4s"; + authors = [ + "Microsoft" + ]; + + }; + "windows_x86_64_msvc 0.52.6" = rec { + crateName = "windows_x86_64_msvc"; + version = "0.52.6"; + edition = "2021"; + sha256 = "1v7rb5cibyzx8vak29pdrk8nx9hycsjs4w0jgms08qk49jl6v7sq"; + authors = [ + "Microsoft" + ]; + + }; + "windows_x86_64_msvc 0.53.1" = rec { + crateName = "windows_x86_64_msvc"; + version = "0.53.1"; + edition = "2021"; + sha256 = "0l6npq76vlq4ksn4bwsncpr8508mk0gmznm6wnhjg95d19gzzfyn"; + + }; + "winnow" = rec { + crateName = "winnow"; + version = "1.0.1"; + edition = "2021"; + sha256 = "1dbji1bwviy08pl74f2qw2m4w9hc4p3vyl3lfj05jdydy59w1nh9"; + dependencies = [ + { + name = "memchr"; + packageId = "memchr"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "ascii" = [ "parser" ]; + "binary" = [ "parser" ]; + "debug" = [ "std" "dep:anstream" "dep:anstyle" "dep:is_terminal_polyfill" "dep:terminal_size" ]; + "default" = [ "std" "ascii" "binary" ]; + "simd" = [ "dep:memchr" ]; + "std" = [ "alloc" "memchr?/std" ]; + "unstable-doc" = [ "alloc" "std" "ascii" "binary" "simd" "unstable-recover" ]; + "unstable-recover" = [ "parser" ]; + }; + resolvedDefaultFeatures = [ "alloc" "ascii" "binary" "default" "parser" "std" ]; + }; + "wit-bindgen" = rec { + crateName = "wit-bindgen"; + version = "0.51.0"; + edition = "2024"; + sha256 = "19fazgch8sq5cvjv3ynhhfh5d5x08jq2pkw8jfb05vbcyqcr496p"; + libName = "wit_bindgen"; + authors = [ + "Alex Crichton " + ]; + dependencies = [ + { + name = "wit-bindgen-rust-macro"; + packageId = "wit-bindgen-rust-macro"; + optional = true; + } + ]; + features = { + "async" = [ "std" "wit-bindgen-rust-macro?/async" ]; + "async-spawn" = [ "async" "dep:futures" ]; + "bitflags" = [ "dep:bitflags" ]; + "default" = [ "macros" "realloc" "async" "std" "bitflags" ]; + "inter-task-wakeup" = [ "async" ]; + "macros" = [ "dep:wit-bindgen-rust-macro" ]; + "rustc-dep-of-std" = [ "dep:core" "dep:alloc" ]; + }; + resolvedDefaultFeatures = [ "async" "std" ]; + }; + "wit-bindgen-core" = rec { + crateName = "wit-bindgen-core"; + version = "0.51.0"; + edition = "2024"; + sha256 = "1p2jszqsqbx8k7y8nwvxg65wqzxjm048ba5phaq8r9iy9ildwqga"; + libName = "wit_bindgen_core"; + authors = [ + "Alex Crichton " + ]; + dependencies = [ + { + name = "anyhow"; + packageId = "anyhow"; + } + { + name = "heck"; + packageId = "heck"; + } + { + name = "wit-parser"; + packageId = "wit-parser"; + } + ]; + features = { + "clap" = [ "dep:clap" ]; + "serde" = [ "dep:serde" ]; + }; + }; + "wit-bindgen-rust" = rec { + crateName = "wit-bindgen-rust"; + version = "0.51.0"; + edition = "2024"; + sha256 = "08bzn5fsvkb9x9wyvyx98qglknj2075xk1n7c5jxv15jykh6didp"; + libName = "wit_bindgen_rust"; + authors = [ + "Alex Crichton " + ]; + dependencies = [ + { + name = "anyhow"; + packageId = "anyhow"; + } + { + name = "heck"; + packageId = "heck"; + } + { + name = "indexmap"; + packageId = "indexmap"; + } + { + name = "prettyplease"; + packageId = "prettyplease"; + } + { + name = "syn"; + packageId = "syn 2.0.117"; + features = [ "printing" ]; + } + { + name = "wasm-metadata"; + packageId = "wasm-metadata"; + usesDefaultFeatures = false; + } + { + name = "wit-bindgen-core"; + packageId = "wit-bindgen-core"; + } + { + name = "wit-component"; + packageId = "wit-component"; + } + ]; + features = { + "clap" = [ "dep:clap" "wit-bindgen-core/clap" ]; + "serde" = [ "dep:serde" "wit-bindgen-core/serde" ]; + }; + }; + "wit-bindgen-rust-macro" = rec { + crateName = "wit-bindgen-rust-macro"; + version = "0.51.0"; + edition = "2024"; + sha256 = "0ymizapzv2id89igxsz2n587y2hlfypf6n8kyp68x976fzyrn3qc"; + procMacro = true; + libName = "wit_bindgen_rust_macro"; + authors = [ + "Alex Crichton " + ]; + dependencies = [ + { + name = "anyhow"; + packageId = "anyhow"; + } + { + name = "prettyplease"; + packageId = "prettyplease"; + } + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.117"; + features = [ "printing" ]; + } + { + name = "wit-bindgen-core"; + packageId = "wit-bindgen-core"; + } + { + name = "wit-bindgen-rust"; + packageId = "wit-bindgen-rust"; + } + ]; + features = { + }; + resolvedDefaultFeatures = [ "async" ]; + }; + "wit-component" = rec { + crateName = "wit-component"; + version = "0.244.0"; + edition = "2021"; + sha256 = "1clwxgsgdns3zj2fqnrjcp8y5gazwfa1k0sy5cbk0fsmx4hflrlx"; + libName = "wit_component"; + authors = [ + "Peter Huene " + ]; + dependencies = [ + { + name = "anyhow"; + packageId = "anyhow"; + } + { + name = "bitflags"; + packageId = "bitflags"; + } + { + name = "indexmap"; + packageId = "indexmap"; + usesDefaultFeatures = false; + } + { + name = "log"; + packageId = "log"; + } + { + name = "serde"; + packageId = "serde"; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "serde_derive"; + packageId = "serde_derive"; + } + { + name = "serde_json"; + packageId = "serde_json"; + } + { + name = "wasm-encoder"; + packageId = "wasm-encoder"; + usesDefaultFeatures = false; + features = [ "std" "wasmparser" ]; + } + { + name = "wasm-metadata"; + packageId = "wasm-metadata"; + usesDefaultFeatures = false; + } + { + name = "wasmparser"; + packageId = "wasmparser"; + usesDefaultFeatures = false; + features = [ "simd" "std" "component-model" "simd" ]; + } + { + name = "wit-parser"; + packageId = "wit-parser"; + features = [ "decoding" "serde" ]; + } + ]; + devDependencies = [ + { + name = "wasm-metadata"; + packageId = "wasm-metadata"; + usesDefaultFeatures = false; + features = [ "oci" ]; + } + { + name = "wasmparser"; + packageId = "wasmparser"; + usesDefaultFeatures = false; + features = [ "simd" "std" "component-model" "features" ]; + } ]; - + features = { + "dummy-module" = [ "dep:wat" ]; + "semver-check" = [ "dummy-module" ]; + "wat" = [ "dep:wast" "dep:wat" ]; + }; }; - "windows_x86_64_msvc 0.52.6" = rec { - crateName = "windows_x86_64_msvc"; - version = "0.52.6"; + "wit-parser" = rec { + crateName = "wit-parser"; + version = "0.244.0"; edition = "2021"; - sha256 = "1v7rb5cibyzx8vak29pdrk8nx9hycsjs4w0jgms08qk49jl6v7sq"; + sha256 = "0dm7avvdxryxd5b02l0g5h6933z1cw5z0d4wynvq2cywq55srj7c"; + libName = "wit_parser"; authors = [ - "Microsoft" + "Alex Crichton " ]; - - }; - "winnow" = rec { - crateName = "winnow"; - version = "0.6.18"; - edition = "2021"; - sha256 = "0vrsrnf2nm9jsk1161x1vacmi3ns4h3h10fib91rs28zd6jbvab8"; dependencies = [ { - name = "memchr"; - packageId = "memchr"; + name = "anyhow"; + packageId = "anyhow"; + } + { + name = "id-arena"; + packageId = "id-arena"; + } + { + name = "indexmap"; + packageId = "indexmap"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "log"; + packageId = "log"; + } + { + name = "semver"; + packageId = "semver"; + usesDefaultFeatures = false; + } + { + name = "serde"; + packageId = "serde"; optional = true; usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "serde_derive"; + packageId = "serde_derive"; + optional = true; + } + { + name = "serde_json"; + packageId = "serde_json"; + optional = true; + } + { + name = "unicode-xid"; + packageId = "unicode-xid"; + } + { + name = "wasmparser"; + packageId = "wasmparser"; + optional = true; + usesDefaultFeatures = false; + features = [ "simd" "std" "validate" "component-model" "features" ]; } ]; - features = { - "debug" = [ "std" "dep:anstream" "dep:anstyle" "dep:is-terminal" "dep:terminal_size" ]; - "default" = [ "std" ]; - "simd" = [ "dep:memchr" ]; - "std" = [ "alloc" "memchr?/std" ]; - "unstable-doc" = [ "alloc" "std" "simd" "unstable-recover" ]; - }; - resolvedDefaultFeatures = [ "alloc" "default" "std" ]; - }; - "winsafe" = rec { - crateName = "winsafe"; - version = "0.0.19"; - edition = "2021"; - sha256 = "0169xy9mjma8dys4m8v4x0xhw2gkbhv2v1wsbvcjl9bhnxxd2dfi"; - authors = [ - "Rodrigo Cesar de Freitas Dias " + devDependencies = [ + { + name = "serde_json"; + packageId = "serde_json"; + } ]; features = { - "comctl" = [ "ole" ]; - "dshow" = [ "oleaut" ]; - "dwm" = [ "uxtheme" ]; - "dxgi" = [ "ole" ]; - "gdi" = [ "user" ]; - "gui" = [ "comctl" "shell" "uxtheme" ]; - "mf" = [ "oleaut" ]; - "ole" = [ "user" ]; - "oleaut" = [ "ole" ]; - "shell" = [ "oleaut" ]; - "taskschd" = [ "oleaut" ]; - "user" = [ "kernel" ]; - "uxtheme" = [ "gdi" "ole" ]; - "version" = [ "kernel" ]; + "decoding" = [ "dep:wasmparser" ]; + "default" = [ "serde" "decoding" ]; + "serde" = [ "dep:serde" "dep:serde_derive" "indexmap/serde" "serde_json" ]; + "serde_json" = [ "dep:serde_json" ]; + "wat" = [ "decoding" "dep:wat" ]; }; - resolvedDefaultFeatures = [ "kernel" ]; + resolvedDefaultFeatures = [ "decoding" "default" "serde" "serde_json" ]; }; - "wit-bindgen-rt" = rec { - crateName = "wit-bindgen-rt"; - version = "0.39.0"; + "writeable" = rec { + crateName = "writeable"; + version = "0.6.3"; edition = "2021"; - sha256 = "1hd65pa5hp0nl664m94bg554h4zlhrzmkjsf6lsgsb7yc4734hkg"; - libName = "wit_bindgen_rt"; - dependencies = [ - { - name = "bitflags"; - packageId = "bitflags 2.6.0"; - optional = true; - } + sha256 = "1i54d13h9bpap2hf13xcry1s4lxh7ap3923g8f3c0grd7c9fbyhz"; + authors = [ + "The ICU4X Project Developers" ]; features = { - "async" = [ "dep:futures" "dep:once_cell" ]; - "bitflags" = [ "dep:bitflags" ]; + "default" = [ "alloc" ]; + "either" = [ "dep:either" ]; }; - resolvedDefaultFeatures = [ "bitflags" ]; }; - "xml-rs" = rec { - crateName = "xml-rs"; - version = "0.8.21"; + "xml" = rec { + crateName = "xml"; + version = "1.2.1"; edition = "2021"; - crateBin = []; - sha256 = "00g63s3kcnj69hsgg96gvbh822qa71vv2sfsqvf37qqdgkp7g6jk"; - libName = "xml"; + sha256 = "0ak4k990faralbli5a0rb8kvwihccb2rp0r94d4azfy94a6lkamq"; authors = [ "Vladimir Matveev " + "Kornel (https://github.com/kornelski)" ]; }; @@ -16514,13 +18183,9 @@ rec { } { name = "snafu"; - packageId = "snafu 0.8.4"; + packageId = "snafu 0.9.0"; features = [ "futures" ]; } - { - name = "stackable-cockpitd"; - packageId = "stackable-cockpitd"; - } { name = "stackablectl"; packageId = "stackablectl"; @@ -16532,120 +18197,308 @@ rec { ]; }; - "zerocopy 0.7.35" = rec { - crateName = "zerocopy"; - version = "0.7.35"; - edition = "2018"; - sha256 = "1w36q7b9il2flg0qskapgi9ymgg7p985vniqd09vi0mwib8lz6qv"; + "yoke" = rec { + crateName = "yoke"; + version = "0.8.2"; + edition = "2021"; + sha256 = "1jprcs7a98a5whvfs6r3jvfh1nnfp6zyijl7y4ywmn88lzywbs5b"; authors = [ - "Joshua Liebow-Feeser " + "Manish Goregaokar " ]; dependencies = [ { - name = "byteorder"; - packageId = "byteorder"; + name = "stable_deref_trait"; + packageId = "stable_deref_trait"; + usesDefaultFeatures = false; + } + { + name = "yoke-derive"; + packageId = "yoke-derive"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "zerofrom"; + packageId = "zerofrom"; optional = true; usesDefaultFeatures = false; } + ]; + features = { + "alloc" = [ "stable_deref_trait/alloc" "zerofrom/alloc" ]; + "default" = [ "alloc" "zerofrom" ]; + "derive" = [ "dep:yoke-derive" "zerofrom/derive" ]; + "zerofrom" = [ "dep:zerofrom" ]; + }; + resolvedDefaultFeatures = [ "derive" "zerofrom" ]; + }; + "yoke-derive" = rec { + crateName = "yoke-derive"; + version = "0.8.2"; + edition = "2021"; + sha256 = "13l5y5sz4lqm7rmyakjbh6vwgikxiql51xfff9hq2j485hk4r16y"; + procMacro = true; + libName = "yoke_derive"; + authors = [ + "Manish Goregaokar " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.117"; + features = [ "fold" ]; + } + { + name = "synstructure"; + packageId = "synstructure"; + } + ]; + + }; + "zerocopy" = rec { + crateName = "zerocopy"; + version = "0.8.48"; + edition = "2021"; + sha256 = "1sb8plax8jbrsng1jdval7bdhk7hhrx40dz3hwh074k6knzkgm7f"; + authors = [ + "Joshua Liebow-Feeser " + "Jack Wrenn " + ]; + dependencies = [ { name = "zerocopy-derive"; - packageId = "zerocopy-derive 0.7.35"; + packageId = "zerocopy-derive"; optional = true; } { name = "zerocopy-derive"; - packageId = "zerocopy-derive 0.7.35"; + packageId = "zerocopy-derive"; target = { target, features }: false; } ]; devDependencies = [ { name = "zerocopy-derive"; - packageId = "zerocopy-derive 0.7.35"; + packageId = "zerocopy-derive"; } ]; features = { - "__internal_use_only_features_that_work_on_stable" = [ "alloc" "derive" "simd" ]; - "byteorder" = [ "dep:byteorder" ]; - "default" = [ "byteorder" ]; + "__internal_use_only_features_that_work_on_stable" = [ "alloc" "derive" "simd" "std" ]; "derive" = [ "zerocopy-derive" ]; "simd-nightly" = [ "simd" ]; + "std" = [ "alloc" ]; "zerocopy-derive" = [ "dep:zerocopy-derive" ]; }; - resolvedDefaultFeatures = [ "byteorder" "default" "derive" "simd" "zerocopy-derive" ]; + resolvedDefaultFeatures = [ "simd" ]; }; - "zerocopy 0.8.24" = rec { - crateName = "zerocopy"; - version = "0.8.24"; + "zerocopy-derive" = rec { + crateName = "zerocopy-derive"; + version = "0.8.48"; edition = "2021"; - sha256 = "0yb8hyzfnwzr2wg4p7cnqmjps8fsw8xqnprafgpmfs8qisigx1i5"; + sha256 = "1m5s0g92cxggqc74j83k1priz24k3z93sj5gadppd20p9c4cvqvh"; + procMacro = true; + libName = "zerocopy_derive"; authors = [ "Joshua Liebow-Feeser " "Jack Wrenn " ]; dependencies = [ { - name = "zerocopy-derive"; - packageId = "zerocopy-derive 0.8.24"; - optional = true; + name = "proc-macro2"; + packageId = "proc-macro2"; } { - name = "zerocopy-derive"; - packageId = "zerocopy-derive 0.8.24"; - target = { target, features }: false; + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.117"; + features = [ "full" ]; } ]; devDependencies = [ { - name = "zerocopy-derive"; - packageId = "zerocopy-derive 0.8.24"; + name = "syn"; + packageId = "syn 2.0.117"; + features = [ "visit" ]; + } + ]; + + }; + "zerofrom" = rec { + crateName = "zerofrom"; + version = "0.1.7"; + edition = "2021"; + sha256 = "1py40in4rirc9q8w36q67pld0zk8ssg024xhh0cncxgal7ra3yk9"; + authors = [ + "Manish Goregaokar " + ]; + dependencies = [ + { + name = "zerofrom-derive"; + packageId = "zerofrom-derive"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "default" = [ "alloc" ]; + "derive" = [ "dep:zerofrom-derive" ]; + }; + resolvedDefaultFeatures = [ "derive" ]; + }; + "zerofrom-derive" = rec { + crateName = "zerofrom-derive"; + version = "0.1.7"; + edition = "2021"; + sha256 = "18c4wsnznhdxx6m80piil1lbyszdiwsshgjrybqcm4b6qic22lqi"; + procMacro = true; + libName = "zerofrom_derive"; + authors = [ + "Manish Goregaokar " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.117"; + features = [ "fold" ]; + } + { + name = "synstructure"; + packageId = "synstructure"; + } + ]; + + }; + "zeroize" = rec { + crateName = "zeroize"; + version = "1.8.2"; + edition = "2021"; + sha256 = "1l48zxgcv34d7kjskr610zqsm6j2b4fcr2vfh9jm9j1jgvk58wdr"; + authors = [ + "The RustCrypto Project Developers" + ]; + features = { + "default" = [ "alloc" ]; + "derive" = [ "zeroize_derive" ]; + "serde" = [ "dep:serde" ]; + "std" = [ "alloc" ]; + "zeroize_derive" = [ "dep:zeroize_derive" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" ]; + }; + "zerotrie" = rec { + crateName = "zerotrie"; + version = "0.2.4"; + edition = "2021"; + sha256 = "1gr0pkcn3qsr6in6iixqyp0vbzwf2j1jzyvh7yl2yydh3p9m548g"; + authors = [ + "The ICU4X Project Developers" + ]; + dependencies = [ + { + name = "displaydoc"; + packageId = "displaydoc"; + usesDefaultFeatures = false; + } + { + name = "yoke"; + packageId = "yoke"; + optional = true; + usesDefaultFeatures = false; + features = [ "derive" ]; + } + { + name = "zerofrom"; + packageId = "zerofrom"; + optional = true; + usesDefaultFeatures = false; } ]; features = { - "__internal_use_only_features_that_work_on_stable" = [ "alloc" "derive" "simd" "std" ]; - "derive" = [ "zerocopy-derive" ]; - "simd-nightly" = [ "simd" ]; - "std" = [ "alloc" ]; - "zerocopy-derive" = [ "dep:zerocopy-derive" ]; + "alloc" = [ "zerovec?/alloc" ]; + "databake" = [ "dep:databake" "zerovec?/databake" ]; + "dense" = [ "dep:zerovec" ]; + "litemap" = [ "dep:litemap" "alloc" ]; + "serde" = [ "dep:serde_core" "dep:litemap" "alloc" "litemap/serde" "zerovec?/serde" ]; + "yoke" = [ "dep:yoke" ]; + "zerofrom" = [ "dep:zerofrom" ]; + "zerovec" = [ "dep:zerovec" ]; }; - resolvedDefaultFeatures = [ "simd" ]; + resolvedDefaultFeatures = [ "yoke" "zerofrom" ]; }; - "zerocopy-derive 0.7.35" = rec { - crateName = "zerocopy-derive"; - version = "0.7.35"; - edition = "2018"; - sha256 = "0gnf2ap2y92nwdalzz3x7142f2b83sni66l39vxp2ijd6j080kzs"; - procMacro = true; - libName = "zerocopy_derive"; + "zerovec" = rec { + crateName = "zerovec"; + version = "0.11.6"; + edition = "2021"; + sha256 = "0fdjsy6b31q9i0d73sl7xjd12xadbwi45lkpfgqnmasrqg5i3ych"; authors = [ - "Joshua Liebow-Feeser " + "The ICU4X Project Developers" ]; dependencies = [ { - name = "proc-macro2"; - packageId = "proc-macro2"; + name = "yoke"; + packageId = "yoke"; + optional = true; + usesDefaultFeatures = false; } { - name = "quote"; - packageId = "quote"; + name = "zerofrom"; + packageId = "zerofrom"; + usesDefaultFeatures = false; } { - name = "syn"; - packageId = "syn 2.0.87"; + name = "zerovec-derive"; + packageId = "zerovec-derive"; + optional = true; + usesDefaultFeatures = false; } ]; - + devDependencies = [ + { + name = "yoke"; + packageId = "yoke"; + usesDefaultFeatures = false; + features = [ "derive" ]; + } + ]; + features = { + "alloc" = [ "serde?/alloc" ]; + "databake" = [ "dep:databake" ]; + "derive" = [ "dep:zerovec-derive" ]; + "hashmap" = [ "dep:twox-hash" "alloc" ]; + "schemars" = [ "dep:schemars" "alloc" ]; + "serde" = [ "dep:serde" ]; + "yoke" = [ "dep:yoke" ]; + }; + resolvedDefaultFeatures = [ "derive" "yoke" ]; }; - "zerocopy-derive 0.8.24" = rec { - crateName = "zerocopy-derive"; - version = "0.8.24"; + "zerovec-derive" = rec { + crateName = "zerovec-derive"; + version = "0.11.3"; edition = "2021"; - sha256 = "1gk9047pbq1yjj2jyiv0s37nqc53maqbmhcsjp6lhi2w7kvai5m9"; + sha256 = "0m85qj92mmfvhjra6ziqky5b1p4kcmp5069k7kfadp5hr8jw8pb2"; procMacro = true; - libName = "zerocopy_derive"; + libName = "zerovec_derive"; authors = [ - "Joshua Liebow-Feeser " - "Jack Wrenn " + "Manish Goregaokar " ]; dependencies = [ { @@ -16658,35 +18511,17 @@ rec { } { name = "syn"; - packageId = "syn 2.0.87"; - features = [ "full" ]; + packageId = "syn 2.0.117"; + features = [ "extra-traits" ]; } ]; }; - "zeroize" = rec { - crateName = "zeroize"; - version = "1.8.1"; - edition = "2021"; - sha256 = "1pjdrmjwmszpxfd7r860jx54cyk94qk59x13sc307cvr5256glyf"; - authors = [ - "The RustCrypto Project Developers" - ]; - features = { - "default" = [ "alloc" ]; - "derive" = [ "zeroize_derive" ]; - "serde" = [ "dep:serde" ]; - "std" = [ "alloc" ]; - "zeroize_derive" = [ "dep:zeroize_derive" ]; - }; - resolvedDefaultFeatures = [ "alloc" "default" ]; - }; "zip" = rec { crateName = "zip"; - version = "1.1.4"; + version = "3.0.0"; edition = "2021"; - sha256 = "0r3i97b6lrqkxzgp1l0ibhfhkfwc438kllz49cvs0kbz7023rhlw"; - build = "src/build.rs"; + sha256 = "024kvq5znpyaqggfkz2807h43m23dww1r53zc1gi1l1fa098hn8j"; authors = [ "Mathijs van de Nes " "Marli Frost " @@ -16704,16 +18539,6 @@ rec { name = "crc32fast"; packageId = "crc32fast"; } - { - name = "crossbeam-utils"; - packageId = "crossbeam-utils"; - target = { target, features }: ((("arm" == target."arch" or null) && ("32" == target."pointer_width" or null)) || ("mips" == target."arch" or null) || ("powerpc" == target."arch" or null)); - } - { - name = "displaydoc"; - packageId = "displaydoc"; - usesDefaultFeatures = false; - } { name = "flate2"; packageId = "flate2"; @@ -16722,41 +18547,113 @@ rec { } { name = "indexmap"; - packageId = "indexmap 2.5.0"; + packageId = "indexmap"; } { - name = "num_enum"; - packageId = "num_enum"; + name = "memchr"; + packageId = "memchr"; } { - name = "thiserror"; - packageId = "thiserror 1.0.63"; + name = "zopfli"; + packageId = "zopfli"; + optional = true; } ]; features = { "aes" = [ "dep:aes" ]; - "aes-crypto" = [ "aes" "constant_time_eq" "hmac" "pbkdf2" "sha1" ]; + "aes-crypto" = [ "aes" "constant_time_eq" "hmac" "pbkdf2" "sha1" "getrandom" "zeroize" ]; "bzip2" = [ "dep:bzip2" ]; "chrono" = [ "chrono/default" ]; "constant_time_eq" = [ "dep:constant_time_eq" ]; - "default" = [ "aes-crypto" "bzip2" "deflate" "deflate64" "deflate-zlib-ng" "deflate-zopfli" "lzma" "time" "zstd" ]; - "deflate" = [ "flate2/rust_backend" "_deflate-any" ]; - "deflate-miniz" = [ "deflate" "_deflate-any" ]; - "deflate-zlib" = [ "flate2/zlib" "_deflate-any" ]; - "deflate-zlib-ng" = [ "flate2/zlib-ng" "_deflate-any" ]; + "default" = [ "aes-crypto" "bzip2" "deflate64" "deflate" "lzma" "time" "zstd" "xz" ]; + "deflate" = [ "deflate-zopfli" "deflate-flate2-zlib-rs" ]; + "deflate-flate2" = [ "_deflate-any" "dep:flate2" ]; + "deflate-flate2-zlib" = [ "deflate-flate2" "flate2/zlib" ]; + "deflate-flate2-zlib-rs" = [ "deflate-flate2" "flate2/zlib-rs" ]; "deflate-zopfli" = [ "zopfli" "_deflate-any" ]; "deflate64" = [ "dep:deflate64" ]; - "flate2" = [ "dep:flate2" ]; + "getrandom" = [ "dep:getrandom" ]; "hmac" = [ "dep:hmac" ]; + "jiff-02" = [ "dep:jiff" ]; "lzma" = [ "lzma-rs/stream" ]; "lzma-rs" = [ "dep:lzma-rs" ]; + "nt-time" = [ "dep:nt-time" ]; "pbkdf2" = [ "dep:pbkdf2" ]; "sha1" = [ "dep:sha1" ]; "time" = [ "dep:time" ]; + "xz" = [ "dep:xz2" ]; + "zeroize" = [ "dep:zeroize" ]; "zopfli" = [ "dep:zopfli" ]; "zstd" = [ "dep:zstd" ]; }; - resolvedDefaultFeatures = [ "_deflate-any" "deflate" "flate2" ]; + resolvedDefaultFeatures = [ "_deflate-any" "deflate" "deflate-flate2" "deflate-flate2-zlib-rs" "deflate-zopfli" "zopfli" ]; + }; + "zlib-rs" = rec { + crateName = "zlib-rs"; + version = "0.6.3"; + edition = "2021"; + sha256 = "04qmv85amq6sv73bzqgvnlsk9mnrl97rygzf2v4zjcx1807d9qrv"; + libName = "zlib_rs"; + features = { + "__internal-fuzz" = [ "arbitrary" ]; + "__internal-test" = [ "quickcheck" ]; + "arbitrary" = [ "dep:arbitrary" ]; + "avx512" = [ "vpclmulqdq" ]; + "default" = [ "std" "c-allocator" ]; + "quickcheck" = [ "dep:quickcheck" ]; + "std" = [ "rust-allocator" ]; + }; + resolvedDefaultFeatures = [ "rust-allocator" "std" ]; + }; + "zmij" = rec { + crateName = "zmij"; + version = "1.0.21"; + edition = "2021"; + sha256 = "1amb5i6gz7yjb0dnmz5y669674pqmwbj44p4yfxfv2ncgvk8x15q"; + authors = [ + "David Tolnay " + ]; + features = { + "no-panic" = [ "dep:no-panic" ]; + }; + }; + "zopfli" = rec { + crateName = "zopfli"; + version = "0.8.3"; + edition = "2021"; + crateBin = []; + sha256 = "0jaj5dyh3mks0805h4ldrsh5pwq4i2jc9dc9zwjm91k3gmwxhp7h"; + dependencies = [ + { + name = "bumpalo"; + packageId = "bumpalo"; + } + { + name = "crc32fast"; + packageId = "crc32fast"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "log"; + packageId = "log"; + optional = true; + } + { + name = "simd-adler32"; + packageId = "simd-adler32"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "default" = [ "gzip" "std" "zlib" ]; + "gzip" = [ "dep:crc32fast" ]; + "nightly" = [ "crc32fast?/nightly" ]; + "std" = [ "crc32fast?/std" "dep:log" "simd-adler32?/std" ]; + "zlib" = [ "dep:simd-adler32" ]; + }; + resolvedDefaultFeatures = [ "default" "gzip" "std" "zlib" ]; }; }; @@ -16764,10 +18661,13 @@ rec { # crate2nix/default.nix (excerpt start) # - /* Target (platform) data for conditional dependencies. + /* + Target (platform) data for conditional dependencies. This corresponds roughly to what buildRustCrate is setting. */ makeDefaultTarget = platform: { + name = platform.rust.rustcTarget; + unix = platform.isUnix; windows = platform.isWindows; fuchsia = true; @@ -16776,30 +18676,70 @@ rec { inherit (platform.rust.platform) arch os - vendor; + vendor + ; family = platform.rust.platform.target-family; env = "gnu"; - endian = - if platform.parsed.cpu.significantByte.name == "littleEndian" - then "little" else "big"; + endian = if platform.parsed.cpu.significantByte.name == "littleEndian" then "little" else "big"; pointer_width = toString platform.parsed.cpu.bits; debug_assertions = false; - }; + } // extraTargetFlags; + + registryUrl = + { registries + , url + , crate + , version + , sha256 + , + }: + let + dl = registries.${url}.dl; + tmpl = [ + "{crate}" + "{version}" + "{prefix}" + "{lowerprefix}" + "{sha256-checksum}" + ]; + in + with lib.strings; + if lib.lists.any (i: hasInfix "{}" dl) tmpl then + let + prefix = + if builtins.stringLength crate == 1 then + "1" + else if builtins.stringLength crate == 2 then + "2" + else + "${builtins.substring 0 2 crate}/${builtins.substring 2 (builtins.stringLength crate - 2) crate}"; + in + builtins.replaceStrings tmpl [ + crate + version + prefix + (lib.strings.toLower prefix) + sha256 + ] + else + "${dl}/${crate}/${version}/download"; - /* Filters common temp files and build files. */ + # Filters common temp files and build files. # TODO(pkolloch): Substitute with gitignore filter - sourceFilter = name: type: + sourceFilter = + name: type: let baseName = builtins.baseNameOf (builtins.toString name); in - ! ( + !( # Filter out git baseName == ".gitignore" || (type == "directory" && baseName == ".git") # Filter out build results || ( - type == "directory" && ( + type == "directory" + && ( baseName == "target" || baseName == "_site" || baseName == ".sass-cache" @@ -16809,16 +18749,11 @@ rec { ) # Filter out nix-build result symlinks - || ( - type == "symlink" && lib.hasPrefix "result" baseName - ) + || (type == "symlink" && lib.hasPrefix "result" baseName) # Filter out IDE config - || ( - type == "directory" && ( - baseName == ".idea" || baseName == ".vscode" - ) - ) || lib.hasSuffix ".iml" baseName + || (type == "directory" && (baseName == ".idea" || baseName == ".vscode")) + || lib.hasSuffix ".iml" baseName # Filter out nix build files || baseName == "Cargo.nix" @@ -16832,90 +18767,100 @@ rec { || baseName == "tests.nix" ); - /* Returns a crate which depends on successful test execution + /* + Returns a crate which depends on successful test execution of crate given as the second argument. testCrateFlags: list of flags to pass to the test exectuable testInputs: list of packages that should be available during test execution */ - crateWithTest = { crate, testCrate, testCrateFlags, testInputs, testPreRun, testPostRun }: - assert builtins.typeOf testCrateFlags == "list"; - assert builtins.typeOf testInputs == "list"; - assert builtins.typeOf testPreRun == "string"; - assert builtins.typeOf testPostRun == "string"; - let - # override the `crate` so that it will build and execute tests instead of - # building the actual lib and bin targets We just have to pass `--test` - # to rustc and it will do the right thing. We execute the tests and copy - # their log and the test executables to $out for later inspection. - test = - let - drv = testCrate.override - ( - _: { - buildTests = true; - } + crateWithTest = + { crate + , testCrate + , testCrateFlags + , testInputs + , testPreRun + , testPostRun + , + }: + assert builtins.typeOf testCrateFlags == "list"; + assert builtins.typeOf testInputs == "list"; + assert builtins.typeOf testPreRun == "string"; + assert builtins.typeOf testPostRun == "string"; + let + # override the `crate` so that it will build and execute tests instead of + # building the actual lib and bin targets We just have to pass `--test` + # to rustc and it will do the right thing. We execute the tests and copy + # their log and the test executables to $out for later inspection. + test = + let + drv = testCrate.override (_: { + buildTests = true; + }); + # If the user hasn't set any pre/post commands, we don't want to + # insert empty lines. This means that any existing users of crate2nix + # don't get a spurious rebuild unless they set these explicitly. + testCommand = pkgs.lib.concatStringsSep "\n" ( + pkgs.lib.filter (s: s != "") [ + testPreRun + "$f $testCrateFlags 2>&1 | tee -a $out" + testPostRun + ] ); - # If the user hasn't set any pre/post commands, we don't want to - # insert empty lines. This means that any existing users of crate2nix - # don't get a spurious rebuild unless they set these explicitly. - testCommand = pkgs.lib.concatStringsSep "\n" - (pkgs.lib.filter (s: s != "") [ - testPreRun - "$f $testCrateFlags 2>&1 | tee -a $out" - testPostRun - ]); - in - pkgs.stdenvNoCC.mkDerivation { - name = "run-tests-${testCrate.name}"; + in + pkgs.stdenvNoCC.mkDerivation { + name = "run-tests-${testCrate.name}"; - inherit (crate) src; + inherit (crate) src; - inherit testCrateFlags; + inherit testCrateFlags; - buildInputs = testInputs; + buildInputs = testInputs; - buildPhase = '' - set -e - export RUST_BACKTRACE=1 + buildPhase = '' + set -e + export RUST_BACKTRACE=1 - # build outputs - testRoot=target/debug - mkdir -p $testRoot + # build outputs + testRoot=target/debug + mkdir -p $testRoot - # executables of the crate - # we copy to prevent std::env::current_exe() to resolve to a store location - for i in ${crate}/bin/*; do - cp "$i" "$testRoot" - done - chmod +w -R . + # executables of the crate + # we copy to prevent std::env::current_exe() to resolve to a store location + for i in ${crate}/bin/*; do + cp "$i" "$testRoot" + done + chmod +w -R . - # test harness executables are suffixed with a hash, like cargo does - # this allows to prevent name collision with the main - # executables of the crate - hash=$(basename $out) - for file in ${drv}/tests/*; do - f=$testRoot/$(basename $file)-$hash - cp $file $f - ${testCommand} - done - ''; - }; - in - pkgs.runCommand "${crate.name}-linked" - { - inherit (crate) outputs crateName; - passthru = (crate.passthru or { }) // { - inherit test; - }; - } - (lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) '' - echo tested by ${test} - '' + '' - ${lib.concatMapStringsSep "\n" (output: "ln -s ${crate.${output}} ${"$"}${output}") crate.outputs} - ''); + # test harness executables are suffixed with a hash, like cargo does + # this allows to prevent name collision with the main + # executables of the crate + hash=$(basename $out) + for file in ${drv}/tests/*; do + f=$testRoot/$(basename $file)-$hash + cp $file $f + ${testCommand} + done + ''; + }; + in + pkgs.runCommand "${crate.name}-linked" + { + inherit (crate) outputs crateName meta; + passthru = (crate.passthru or { }) // { + inherit test; + }; + } + ( + lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) '' + echo tested by ${test} + '' + + '' + ${lib.concatMapStringsSep "\n" (output: "ln -s ${crate.${output}} ${"$"}${output}") crate.outputs} + '' + ); - /* A restricted overridable version of builtRustCratesWithFeatures. */ + # A restricted overridable version of builtRustCratesWithFeatures. buildRustCrateWithFeatures = { packageId , features ? rootFeatures @@ -16924,10 +18869,11 @@ rec { , runTests ? false , testCrateFlags ? [ ] , testInputs ? [ ] - # Any command to run immediatelly before a test is executed. - , testPreRun ? "" - # Any command run immediatelly after a test is executed. - , testPostRun ? "" + , # Any command to run immediatelly before a test is executed. + testPreRun ? "" + , # Any command run immediatelly after a test is executed. + testPostRun ? "" + , }: lib.makeOverridable ( @@ -16938,17 +18884,19 @@ rec { , testInputs , testPreRun , testPostRun + , }: let buildRustCrateForPkgsFuncOverriden = - if buildRustCrateForPkgsFunc != null - then buildRustCrateForPkgsFunc + if buildRustCrateForPkgsFunc != null then + buildRustCrateForPkgsFunc else ( - if crateOverrides == pkgs.defaultCrateOverrides - then buildRustCrateForPkgs + if crateOverrides == pkgs.defaultCrateOverrides then + buildRustCrateForPkgs else - pkgs: (buildRustCrateForPkgs pkgs).override { + pkgs: + (buildRustCrateForPkgs pkgs).override { defaultCrateOverrides = crateOverrides; } ); @@ -16970,15 +18918,32 @@ rec { { crate = drv; testCrate = testDrv; - inherit testCrateFlags testInputs testPreRun testPostRun; + inherit + testCrateFlags + testInputs + testPreRun + testPostRun + ; } - else drv; + else + drv; in derivation ) - { inherit features crateOverrides runTests testCrateFlags testInputs testPreRun testPostRun; }; + { + inherit + features + crateOverrides + runTests + testCrateFlags + testInputs + testPreRun + testPostRun + ; + }; - /* Returns an attr set with packageId mapped to the result of buildRustCrateForPkgsFunc + /* + Returns an attr set with packageId mapped to the result of buildRustCrateForPkgsFunc for the corresponding crate. */ builtRustCratesWithFeatures = @@ -16988,7 +18953,8 @@ rec { , buildRustCrateForPkgsFunc , runTests , makeTarget ? makeDefaultTarget - } @ args: + , + }@args: assert (builtins.isAttrs crateConfigs); assert (builtins.isString packageId); assert (builtins.isList features); @@ -16996,55 +18962,61 @@ rec { assert (builtins.isBool runTests); let rootPackageId = packageId; - mergedFeatures = mergePackageFeatures - ( - args // { - inherit rootPackageId; - target = makeTarget stdenv.hostPlatform // { test = runTests; }; - } - ); + mergedFeatures = mergePackageFeatures ( + args + // { + inherit rootPackageId; + target = makeTarget stdenv.hostPlatform // { + test = runTests; + }; + } + ); # Memoize built packages so that reappearing packages are only built once. builtByPackageIdByPkgs = mkBuiltByPackageIdByPkgs pkgs; - mkBuiltByPackageIdByPkgs = pkgs: + mkBuiltByPackageIdByPkgs = + pkgs: let self = { - crates = lib.mapAttrs (packageId: value: buildByPackageIdForPkgsImpl self pkgs packageId) crateConfigs; - target = makeTarget stdenv.hostPlatform; + crates = lib.mapAttrs + ( + packageId: value: buildByPackageIdForPkgsImpl self pkgs packageId + ) + crateConfigs; + target = makeTarget pkgs.stdenv.hostPlatform; build = mkBuiltByPackageIdByPkgs pkgs.buildPackages; }; in self; - buildByPackageIdForPkgsImpl = self: pkgs: packageId: + buildByPackageIdForPkgsImpl = + self: pkgs: packageId: let features = mergedFeatures."${packageId}" or [ ]; crateConfig' = crateConfigs."${packageId}"; - crateConfig = - builtins.removeAttrs crateConfig' [ "resolvedDefaultFeatures" "devDependencies" ]; - devDependencies = - lib.optionals - (runTests && packageId == rootPackageId) - (crateConfig'.devDependencies or [ ]); - dependencies = - dependencyDerivations { - inherit features; - inherit (self) target; - buildByPackageId = depPackageId: - # proc_macro crates must be compiled for the build architecture - if crateConfigs.${depPackageId}.procMacro or false - then self.build.crates.${depPackageId} - else self.crates.${depPackageId}; - dependencies = - (crateConfig.dependencies or [ ]) - ++ devDependencies; - }; - buildDependencies = - dependencyDerivations { - inherit features; - inherit (self.build) target; - buildByPackageId = depPackageId: - self.build.crates.${depPackageId}; - dependencies = crateConfig.buildDependencies or [ ]; - }; + crateConfig = builtins.removeAttrs crateConfig' [ + "resolvedDefaultFeatures" + "devDependencies" + ]; + devDependencies = lib.optionals (runTests && packageId == rootPackageId) ( + crateConfig'.devDependencies or [ ] + ); + dependencies = dependencyDerivations { + inherit features; + inherit (self) target; + buildByPackageId = + depPackageId: + # proc_macro crates must be compiled for the build architecture + if crateConfigs.${depPackageId}.procMacro or false then + self.build.crates.${depPackageId} + else + self.crates.${depPackageId}; + dependencies = (crateConfig.dependencies or [ ]) ++ devDependencies; + }; + buildDependencies = dependencyDerivations { + inherit features; + inherit (self.build) target; + buildByPackageId = depPackageId: self.build.crates.${depPackageId}; + dependencies = crateConfig.buildDependencies or [ ]; + }; dependenciesWithRenames = let buildDeps = filterEnabledDependencies { @@ -17069,45 +19041,54 @@ rec { # } crateRenames = let - grouped = - lib.groupBy - (dependency: dependency.name) - dependenciesWithRenames; - versionAndRename = dep: + grouped = lib.groupBy (dependency: dependency.name) dependenciesWithRenames; + versionAndRename = + dep: let package = crateConfigs."${dep.packageId}"; in - { inherit (dep) rename; inherit (package) version; }; + { + inherit (dep) rename; + inherit (package) version; + }; in lib.mapAttrs (name: builtins.map versionAndRename) grouped; in - buildRustCrateForPkgsFunc pkgs - ( - crateConfig // { - src = crateConfig.src or ( - pkgs.fetchurl rec { - name = "${crateConfig.crateName}-${crateConfig.version}.tar.gz"; - # https://www.pietroalbini.org/blog/downloading-crates-io/ - # Not rate-limited, CDN URL. - url = "https://static.crates.io/crates/${crateConfig.crateName}/${crateConfig.crateName}-${crateConfig.version}.crate"; - sha256 = - assert (lib.assertMsg (crateConfig ? sha256) "Missing sha256 for ${name}"); - crateConfig.sha256; - } - ); - extraRustcOpts = lib.lists.optional (targetFeatures != [ ]) "-C target-feature=${lib.concatMapStringsSep "," (x: "+${x}") targetFeatures}"; - inherit features dependencies buildDependencies crateRenames release; - } - ); + buildRustCrateForPkgsFunc pkgs ( + crateConfig + // { + src = + crateConfig.src or (fetchurl rec { + name = "${crateConfig.crateName}-${crateConfig.version}.tar.gz"; + # https://www.pietroalbini.org/blog/downloading-crates-io/ + # Not rate-limited, CDN URL. + url = "https://static.crates.io/crates/${crateConfig.crateName}/${crateConfig.crateName}-${crateConfig.version}.crate"; + sha256 = + assert (lib.assertMsg (crateConfig ? sha256) "Missing sha256 for ${name}"); + crateConfig.sha256; + }); + extraRustcOpts = + lib.lists.optional (targetFeatures != [ ]) + "-C target-feature=${lib.concatMapStringsSep "," (x: "+${x}") targetFeatures}"; + inherit + features + dependencies + buildDependencies + crateRenames + release + ; + } + ); in builtByPackageIdByPkgs; - /* Returns the actual derivations for the given dependencies. */ + # Returns the actual derivations for the given dependencies. dependencyDerivations = { buildByPackageId , features , dependencies , target + , }: assert (builtins.isList features); assert (builtins.isList dependencies); @@ -17120,52 +19101,59 @@ rec { in map depDerivation enabledDependencies; - /* Returns a sanitized version of val with all values substituted that cannot + /* + Returns a sanitized version of val with all values substituted that cannot be serialized as JSON. */ - sanitizeForJson = val: - if builtins.isAttrs val - then lib.mapAttrs (n: sanitizeForJson) val - else if builtins.isList val - then builtins.map sanitizeForJson val - else if builtins.isFunction val - then "function" - else val; + sanitizeForJson = + val: + if builtins.isAttrs val then + lib.mapAttrs (n: sanitizeForJson) val + else if builtins.isList val then + builtins.map sanitizeForJson val + else if builtins.isFunction val then + "function" + else + val; - /* Returns various tools to debug a crate. */ - debugCrate = { packageId, target ? makeDefaultTarget stdenv.hostPlatform }: - assert (builtins.isString packageId); - let - debug = rec { - # The built tree as passed to buildRustCrate. - buildTree = buildRustCrateWithFeatures { - buildRustCrateForPkgsFunc = _: lib.id; - inherit packageId; - }; - sanitizedBuildTree = sanitizeForJson buildTree; - dependencyTree = sanitizeForJson - ( - buildRustCrateWithFeatures { - buildRustCrateForPkgsFunc = _: crate: { - "01_crateName" = crate.crateName or false; - "02_features" = crate.features or [ ]; - "03_dependencies" = crate.dependencies or [ ]; - }; - inherit packageId; - } - ); - mergedPackageFeatures = mergePackageFeatures { - features = rootFeatures; - inherit packageId target; - }; - diffedDefaultPackageFeatures = diffDefaultPackageFeatures { - inherit packageId target; + # Returns various tools to debug a crate. + debugCrate = + { packageId + , target ? makeDefaultTarget stdenv.hostPlatform + , + }: + assert (builtins.isString packageId); + let + debug = rec { + # The built tree as passed to buildRustCrate. + buildTree = buildRustCrateWithFeatures { + buildRustCrateForPkgsFunc = _: lib.id; + inherit packageId; + }; + sanitizedBuildTree = sanitizeForJson buildTree; + dependencyTree = sanitizeForJson (buildRustCrateWithFeatures { + buildRustCrateForPkgsFunc = _: crate: { + "01_crateName" = crate.crateName or false; + "02_features" = crate.features or [ ]; + "03_dependencies" = crate.dependencies or [ ]; + }; + inherit packageId; + }); + mergedPackageFeatures = mergePackageFeatures { + features = rootFeatures; + inherit packageId target; + }; + diffedDefaultPackageFeatures = diffDefaultPackageFeatures { + inherit packageId target; + }; }; + in + { + internal = debug; }; - in - { internal = debug; }; - /* Returns differences between cargo default features and crate2nix default + /* + Returns differences between cargo default features and crate2nix default features. This is useful for verifying the feature resolution in crate2nix. @@ -17174,22 +19162,26 @@ rec { { crateConfigs ? crates , packageId , target + , }: assert (builtins.isAttrs crateConfigs); let prefixValues = prefix: lib.mapAttrs (n: v: { "${prefix}" = v; }); - mergedFeatures = - prefixValues - "crate2nix" - (mergePackageFeatures { inherit crateConfigs packageId target; features = [ "default" ]; }); + mergedFeatures = prefixValues "crate2nix" (mergePackageFeatures { + inherit crateConfigs packageId target; + features = [ "default" ]; + }); configs = prefixValues "cargo" crateConfigs; - combined = lib.foldAttrs (a: b: a // b) { } [ mergedFeatures configs ]; - onlyInCargo = - builtins.attrNames - (lib.filterAttrs (n: v: !(v ? "crate2nix") && (v ? "cargo")) combined); - onlyInCrate2Nix = - builtins.attrNames - (lib.filterAttrs (n: v: (v ? "crate2nix") && !(v ? "cargo")) combined); + combined = lib.foldAttrs (a: b: a // b) { } [ + mergedFeatures + configs + ]; + onlyInCargo = builtins.attrNames ( + lib.filterAttrs (n: v: !(v ? "crate2nix") && (v ? "cargo")) combined + ); + onlyInCrate2Nix = builtins.attrNames ( + lib.filterAttrs (n: v: (v ? "crate2nix") && !(v ? "cargo")) combined + ); differentFeatures = lib.filterAttrs ( n: v: @@ -17203,7 +19195,8 @@ rec { inherit onlyInCargo onlyInCrate2Nix differentFeatures; }; - /* Returns an attrset mapping packageId to the list of enabled features. + /* + Returns an attrset mapping packageId to the list of enabled features. If multiple paths to a dependency enable different features, the corresponding feature sets are merged. Features in rust are additive. @@ -17216,10 +19209,10 @@ rec { , dependencyPath ? [ crates.${packageId}.crateName ] , featuresByPackageId ? { } , target - # Adds devDependencies to the crate with rootPackageId. - , runTests ? false + , # Adds devDependencies to the crate with rootPackageId. + runTests ? false , ... - } @ args: + }@args: assert (builtins.isAttrs crateConfigs); assert (builtins.isString packageId); assert (builtins.isString rootPackageId); @@ -17232,84 +19225,93 @@ rec { crateConfig = crateConfigs."${packageId}" or (builtins.throw "Package not found: ${packageId}"); expandedFeatures = expandFeatures (crateConfig.features or { }) features; enabledFeatures = enableFeatures (crateConfig.dependencies or [ ]) expandedFeatures; - depWithResolvedFeatures = dependency: + depWithResolvedFeatures = + dependency: let inherit (dependency) packageId; features = dependencyFeatures enabledFeatures dependency; in - { inherit packageId features; }; - resolveDependencies = cache: path: dependencies: - assert (builtins.isAttrs cache); - assert (builtins.isList dependencies); - let - enabledDependencies = filterEnabledDependencies { - inherit dependencies target; - features = enabledFeatures; - }; - directDependencies = map depWithResolvedFeatures enabledDependencies; - foldOverCache = op: lib.foldl op cache directDependencies; - in - foldOverCache - ( - cache: { packageId, features }: - let - cacheFeatures = cache.${packageId} or [ ]; - combinedFeatures = sortedUnique (cacheFeatures ++ features); - in - if cache ? ${packageId} && cache.${packageId} == combinedFeatures - then cache - else - mergePackageFeatures { - features = combinedFeatures; - featuresByPackageId = cache; - inherit crateConfigs packageId target runTests rootPackageId; - } + { + inherit packageId features; + }; + resolveDependencies = + cache: path: dependencies: + assert (builtins.isAttrs cache); + assert (builtins.isList dependencies); + let + enabledDependencies = filterEnabledDependencies { + inherit dependencies target; + features = enabledFeatures; + }; + directDependencies = map depWithResolvedFeatures enabledDependencies; + foldOverCache = op: lib.foldl op cache directDependencies; + in + foldOverCache ( + cache: + { packageId, features }: + let + cacheFeatures = cache.${packageId} or [ ]; + combinedFeatures = sortedUnique (cacheFeatures ++ features); + in + if cache ? ${packageId} && cache.${packageId} == combinedFeatures then + cache + else + mergePackageFeatures { + features = combinedFeatures; + featuresByPackageId = cache; + inherit + crateConfigs + packageId + target + runTests + rootPackageId + ; + } ); cacheWithSelf = let cacheFeatures = featuresByPackageId.${packageId} or [ ]; combinedFeatures = sortedUnique (cacheFeatures ++ enabledFeatures); in - featuresByPackageId // { + featuresByPackageId + // { "${packageId}" = combinedFeatures; }; - cacheWithDependencies = - resolveDependencies cacheWithSelf "dep" - ( - crateConfig.dependencies or [ ] - ++ lib.optionals - (runTests && packageId == rootPackageId) - (crateConfig.devDependencies or [ ]) - ); - cacheWithAll = - resolveDependencies - cacheWithDependencies "build" - (crateConfig.buildDependencies or [ ]); + cacheWithDependencies = resolveDependencies cacheWithSelf "dep" ( + crateConfig.dependencies or [ ] + ++ lib.optionals (runTests && packageId == rootPackageId) (crateConfig.devDependencies or [ ]) + ); + cacheWithAll = resolveDependencies cacheWithDependencies "build" ( + crateConfig.buildDependencies or [ ] + ); in cacheWithAll; - /* Returns the enabled dependencies given the enabled features. */ - filterEnabledDependencies = { dependencies, features, target }: - assert (builtins.isList dependencies); - assert (builtins.isList features); - assert (builtins.isAttrs target); + # Returns the enabled dependencies given the enabled features. + filterEnabledDependencies = + { dependencies + , features + , target + , + }: + assert (builtins.isList dependencies); + assert (builtins.isList features); + assert (builtins.isAttrs target); - lib.filter - ( - dep: - let - targetFunc = dep.target or (features: true); - in - targetFunc { inherit features target; } - && ( - !(dep.optional or false) - || builtins.any (doesFeatureEnableDependency dep) features + lib.filter + ( + dep: + let + targetFunc = dep.target or (features: true); + in + targetFunc { inherit features target; } + && (!(dep.optional or false) || builtins.any (doesFeatureEnableDependency dep) features) ) - ) - dependencies; + dependencies; - /* Returns whether the given feature should enable the given dependency. */ - doesFeatureEnableDependency = dependency: feature: + # Returns whether the given feature should enable the given dependency. + doesFeatureEnableDependency = + dependency: feature: let name = dependency.rename or dependency.name; prefix = "${name}/"; @@ -17318,109 +19320,116 @@ rec { in feature == name || feature == "dep:" + name || startsWithPrefix; - /* Returns the expanded features for the given inputFeatures by applying the + /* + Returns the expanded features for the given inputFeatures by applying the rules in featureMap. featureMap is an attribute set which maps feature names to lists of further feature names to enable in case this feature is selected. */ - expandFeatures = featureMap: inputFeatures: - assert (builtins.isAttrs featureMap); - assert (builtins.isList inputFeatures); - let - expandFeaturesNoCycle = oldSeen: inputFeatures: - if inputFeatures != [ ] - then - let - # The feature we're currently expanding. - feature = builtins.head inputFeatures; - # All the features we've seen/expanded so far, including the one - # we're currently processing. - seen = oldSeen // { ${feature} = 1; }; - # Expand the feature but be careful to not re-introduce a feature - # that we've already seen: this can easily cause a cycle, see issue - # #209. - enables = builtins.filter (f: !(seen ? "${f}")) (featureMap."${feature}" or [ ]); - in - [ feature ] ++ (expandFeaturesNoCycle seen (builtins.tail inputFeatures ++ enables)) - # No more features left, nothing to expand to. - else [ ]; - outFeatures = expandFeaturesNoCycle { } inputFeatures; - in - sortedUnique outFeatures; + expandFeatures = + featureMap: inputFeatures: + assert (builtins.isAttrs featureMap); + assert (builtins.isList inputFeatures); + let + expandFeaturesNoCycle = + oldSeen: inputFeatures: + if inputFeatures != [ ] then + let + # The feature we're currently expanding. + feature = builtins.head inputFeatures; + # All the features we've seen/expanded so far, including the one + # we're currently processing. + seen = oldSeen // { + ${feature} = 1; + }; + # Expand the feature but be careful to not re-introduce a feature + # that we've already seen: this can easily cause a cycle, see issue + # #209. + enables = builtins.filter (f: !(seen ? "${f}")) (featureMap."${feature}" or [ ]); + in + [ feature ] ++ (expandFeaturesNoCycle seen (builtins.tail inputFeatures ++ enables)) + # No more features left, nothing to expand to. + else + [ ]; + outFeatures = expandFeaturesNoCycle { } inputFeatures; + in + sortedUnique outFeatures; - /* This function adds optional dependencies as features if they are enabled + /* + This function adds optional dependencies as features if they are enabled indirectly by dependency features. This function mimics Cargo's behavior described in a note at: https://doc.rust-lang.org/nightly/cargo/reference/features.html#dependency-features */ - enableFeatures = dependencies: features: - assert (builtins.isList features); - assert (builtins.isList dependencies); - let - additionalFeatures = lib.concatMap - ( - dependency: - assert (builtins.isAttrs dependency); - let - enabled = builtins.any (doesFeatureEnableDependency dependency) features; - in - if (dependency.optional or false) && enabled - then [ (dependency.rename or dependency.name) ] - else [ ] - ) - dependencies; - in - sortedUnique (features ++ additionalFeatures); + enableFeatures = + dependencies: features: + assert (builtins.isList features); + assert (builtins.isList dependencies); + let + additionalFeatures = lib.concatMap + ( + dependency: + assert (builtins.isAttrs dependency); + let + enabled = builtins.any (doesFeatureEnableDependency dependency) features; + in + if (dependency.optional or false) && enabled then + [ (dependency.rename or dependency.name) ] + else + [ ] + ) + dependencies; + in + sortedUnique (features ++ additionalFeatures); /* Returns the actual features for the given dependency. features: The features of the crate that refers this dependency. */ - dependencyFeatures = features: dependency: - assert (builtins.isList features); - assert (builtins.isAttrs dependency); - let - defaultOrNil = - if dependency.usesDefaultFeatures or true - then [ "default" ] - else [ ]; - explicitFeatures = dependency.features or [ ]; - additionalDependencyFeatures = - let - name = dependency.rename or dependency.name; - stripPrefixMatch = prefix: s: - if lib.hasPrefix prefix s - then lib.removePrefix prefix s - else null; - extractFeature = feature: lib.findFirst - (f: f != null) - null - (map (prefix: stripPrefixMatch prefix feature) [ - (name + "/") - (name + "?/") - ]); - dependencyFeatures = lib.filter (f: f != null) (map extractFeature features); - in - dependencyFeatures; - in - defaultOrNil ++ explicitFeatures ++ additionalDependencyFeatures; + dependencyFeatures = + features: dependency: + assert (builtins.isList features); + assert (builtins.isAttrs dependency); + let + defaultOrNil = if dependency.usesDefaultFeatures or true then [ "default" ] else [ ]; + explicitFeatures = dependency.features or [ ]; + additionalDependencyFeatures = + let + name = dependency.rename or dependency.name; + stripPrefixMatch = prefix: s: if lib.hasPrefix prefix s then lib.removePrefix prefix s else null; + extractFeature = + feature: + lib.findFirst (f: f != null) null ( + map (prefix: stripPrefixMatch prefix feature) [ + (name + "/") + (name + "?/") + ] + ); + dependencyFeatures = lib.filter (f: f != null) (map extractFeature features); + in + dependencyFeatures; + in + defaultOrNil ++ explicitFeatures ++ additionalDependencyFeatures; - /* Sorts and removes duplicates from a list of strings. */ - sortedUnique = features: - assert (builtins.isList features); - assert (builtins.all builtins.isString features); - let - outFeaturesSet = lib.foldl (set: feature: set // { "${feature}" = 1; }) { } features; - outFeaturesUnique = builtins.attrNames outFeaturesSet; - in - builtins.sort (a: b: a < b) outFeaturesUnique; + # Sorts and removes duplicates from a list of strings. + sortedUnique = + features: + assert (builtins.isList features); + assert (builtins.all builtins.isString features); + let + outFeaturesSet = lib.foldl (set: feature: set // { "${feature}" = 1; }) { } features; + outFeaturesUnique = builtins.attrNames outFeaturesSet; + in + builtins.sort (a: b: a < b) outFeaturesUnique; - deprecationWarning = message: value: - if strictDeprecation - then builtins.throw "strictDeprecation enabled, aborting: ${message}" - else builtins.trace message value; + deprecationWarning = + message: value: + if strictDeprecation then + builtins.throw "strictDeprecation enabled, aborting: ${message}" + else + builtins.trace message value; # # crate2nix/default.nix (excerpt end) diff --git a/Cargo.toml b/Cargo.toml index 800e4df1..148bc31b 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,5 +1,5 @@ [workspace] -members = ["rust/*", "web", "."] +members = ["rust/*", "."] resolver = "2" [workspace.package] @@ -18,53 +18,56 @@ repository = "https://github.com/stackabletech/stackable-cockpit/" [workspace.dependencies] async-trait = "0.1" -axum = { version = "0.7", features = ["http2"] } -axum-extra = { version = "0.9", features = ["typed-header"] } -bcrypt = "0.15" -bindgen = "0.70.1" -cc = "1.0.106" +axum = { version = "0.8", features = ["http2"] } +axum-extra = { version = "0.12", features = ["typed-header"] } +bcrypt = "0.19" +bindgen = "0.72" +built = "0.8" +cc = "1.0" clap = { version = "4.5", features = ["derive", "env"] } clap_complete = "4.5" clap_complete_nushell = "4.5" comfy-table = { version = "7.1", features = ["custom_styling"] } -directories = "5.0" +dialoguer = "0.12.0" +directories = "6.0" dotenvy = "0.15" +either = "1.15.0" futures = "0.3" indexmap = { version = "2.2", features = ["serde"] } -indicatif = "0.17.11" -k8s-openapi = { version = "0.24", default-features = false, features = ["v1_32"] } -kube = { version = "0.99", default-features = false, features = ["client", "rustls-tls", "ws", "socks5", "http-proxy"] } +indicatif = "0.18" lazy_static = "1.5" libc = "0.2" once_cell = "1.19" -phf = "0.11" -phf_codegen = "0.11" -rand = "0.8" +phf = "0.13" +phf_codegen = "0.13" +rand = "0.10" regex = "1.10" -reqwest = { version = "0.12", default-features = false, features = ["json", "rustls-tls-native-roots"] } -rstest = "0.22" +reqwest = { version = "0.13", default-features = false, features = ["json", "rustls"] } +rustls = "0.23" +rstest = "0.26" semver = { version = "1.0", features = ["serde"] } serde = { version = "1.0", features = ["derive"] } serde_json = "1.0" serde_yaml = "0.9" sha2 = "0.10" -snafu = { version = "0.8", features = ["futures"] } -stackable-operator = { git = "https://github.com/stackabletech/operator-rs.git", tag = "stackable-operator-0.92.0", default-features = false } +snafu = { version = "0.9", features = ["futures"] } +stackable-operator = { git = "https://github.com/stackabletech/operator-rs.git", tag = "stackable-operator-0.109.0", default-features = false, features = ["crds", "kube-ws"] } tera = "1.20" termion = "4.0" tokio = { version = "1.38", features = ["rt-multi-thread", "macros", "fs", "process", "io-std"] } -tower-http = { version = "0.5", features = ["validate-request"] } +toml = { version = "1.0", features = ["serde"] } +tower-http = { version = "0.6", features = ["validate-request"] } tracing = "0.1" tracing-indicatif = "0.3.9" tracing-subscriber = "0.3" url = "2.5" urlencoding = "2.1.3" -utoipa = { version = "4.2", features = ["indexmap"] } -utoipa-swagger-ui = { version = "7.1", features = ["axum"] } +utoipa = { version = "5.4", features = ["indexmap"] } +utoipa-swagger-ui = { version = "9.0", features = ["axum"] } uuid = { version = "1.10", features = ["v4"] } -which = "6.0" +which = "8.0" -# [patch."https://github.com/stackabletech/operator-rs.git"] +[patch."https://github.com/stackabletech/operator-rs.git"] # stackable-operator = { git = "https://github.com/stackabletech//operator-rs.git", branch = "main" } [profile.release.package.stackablectl] diff --git a/README.md b/README.md index 688e4083..a40572df 100644 --- a/README.md +++ b/README.md @@ -11,21 +11,19 @@ [Stackable Data Platform](https://stackable.tech/) | [Platform Docs](https://docs.stackable.tech/) | [Discussions](https://github.com/orgs/stackabletech/discussions) | [Discord](https://discord.gg/7kZ3BNnCAF) -This repository contains the Stackable library `stackable-cockpit`, the Stackable CLI tool `stackablectl`, the Stackable -Cockpit server `stackable-cockpitd`, and the web-based admin user interface. +This repository contains the Stackable library `stackable-cockpit`, the Stackable CLI tool `stackablectl`, and the +Stackable Cockpit server `stackable-cockpitd`. ## Components - [`stackable-cockpit`][lib-readme]: The underlying library for all actions related to the Stackable Data Platform - [`stackablectl`][ctl-readme]: CLI tool to interact with local and remote deployments of the data platform - [`stackable-cockpitd`][server-readme]: API server used by frontends to interact with the data platform -- [`stackable-cockpit-web`][web-readme]: The web-based admin UI powered by SolidJS, TypeScript and Vite ## Developer Setup ### Prerequisites -- A working (and up2date) NodeJS installation, with Yarn as the preferred package manager - A working (and up2date) Rust installation including rustc, clippy, and cargo - Optional, but strongly advised: a working [pre-commit][pre-commit] installation @@ -36,19 +34,11 @@ git clone git@github.com:stackabletech/stackable-cockpit.git cd stackable-cockpit ``` -The admin UI is registered as a crate and is part of the build process, as the HTML/CSS/JS bundle is included in the -final `stackable-cockpitd` binary. To get the build process running, first execute `yarn install` to install all required NodeJS -dependencies in the `node_modules` folder. - ---- - Each component can be build separately like this: ```shell -cargo build --release -p stackablectl # Builds stackablectl -cargo build --release -p stackable-cockpitd # Builds the Stackable Cockpit API server -cargo build --release -p stackable-cockpitd --features ui # Builds the Stackable Cockpit API server bundled with the admin UI -cd web && yarn run build && cd - # Builds the admin UI +cargo build --release -p stackablectl # Builds stackablectl +cargo build --release -p stackable-cockpitd # Builds the Stackable Cockpit API server ``` ### Pre-commit hooks and xtasks @@ -64,16 +54,21 @@ hooks are: - [`detect-private-key`](https://github.com/pre-commit/pre-commit-hooks#detect-private-key): Detect private keys - [`yamllint`](https://github.com/adrienverge/yamllint): Runs linting on all YAML files - [`markdownlint`](https://github.com/igorshubovych/markdownlint-cli): Runs linting on all Markdown files -- [`prettier`](https://github.com/pre-commit/mirrors-prettier): Runs prettier on files located in `web` - `cargo clippy --all-targets --all-features -- -D warnings`: Runs Clippy on all files and errors on warnings - `cargo fmt -- --check`: Checks if Rust code needs formatting - `cargo xtask gen-comp`: Runs shell completions generation for `stackablectl` - `cargo xtask gen-man`: Runs man page generation for `stackablectl` -- `cargo xtask gen-openapi`: Runs OpenAPI spec generation to connect backend with frontend - `cargo xtask gen-ctl-readme`: Generates and inserts `stackablectl` help text into README [server-readme]: ./rust/stackable-cockpitd/README.md [ctl-readme]: ./rust/stackablectl/README.md [pre-commit]: https://pre-commit.com/ -[web-readme]: ./web/README.md [lib-readme]: ./rust/stackable-cockpit/README.md + +### Templating variables + +| Variable | Availability | Content | +| ----------- | --------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | +| `NAMESPACE` | Always | The namespace where the stack and demo (not the operators!) are deployed into | +| `STACK` | Always (both in stack and demo manifests) | The name of the stack | +| `DEMO` | In demos manifests: Always
In stack manifests: Only when deployed as part of a demo! | The name of the demo | diff --git a/Tiltfile b/Tiltfile index de8ddd65..9b9cdb38 100644 --- a/Tiltfile +++ b/Tiltfile @@ -14,8 +14,6 @@ custom_build( deps=[ # Rust 'rust', 'Cargo.toml', 'Cargo.lock', 'vendor', - # Web UI - 'web', 'yarn.lock', # Nix 'nix', 'default.nix', ], diff --git a/crate-hashes.json b/crate-hashes.json index 1499527d..5ad3e870 100644 --- a/crate-hashes.json +++ b/crate-hashes.json @@ -1,10 +1,15 @@ { - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.92.0#k8s-version@0.1.2": "0li9smdrz7danqz17lfkl0j9zl2i84csgc7d01lxs5qi8jcs9fzw", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.92.0#stackable-operator-derive@0.3.1": "0li9smdrz7danqz17lfkl0j9zl2i84csgc7d01lxs5qi8jcs9fzw", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.92.0#stackable-operator@0.92.0": "0li9smdrz7danqz17lfkl0j9zl2i84csgc7d01lxs5qi8jcs9fzw", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.92.0#stackable-shared@0.0.1": "0li9smdrz7danqz17lfkl0j9zl2i84csgc7d01lxs5qi8jcs9fzw", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.92.0#stackable-telemetry@0.6.0": "0li9smdrz7danqz17lfkl0j9zl2i84csgc7d01lxs5qi8jcs9fzw", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.92.0#stackable-versioned-macros@0.7.1": "0li9smdrz7danqz17lfkl0j9zl2i84csgc7d01lxs5qi8jcs9fzw", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.92.0#stackable-versioned@0.7.1": "0li9smdrz7danqz17lfkl0j9zl2i84csgc7d01lxs5qi8jcs9fzw", - "git+https://github.com/stackabletech/product-config.git?tag=0.7.0#product-config@0.7.0": "0gjsm80g6r75pm3824dcyiz4ysq1ka4c1if6k1mjm9cnd5ym0gny" -} + "git+https://github.com/kube-rs/kube-rs?rev=fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5#kube-client@3.0.1": "1irm4g79crlxjm3iqrgvx0f6wxdcj394ky84q89pk9i36y2mlw3n", + "git+https://github.com/kube-rs/kube-rs?rev=fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5#kube-core@3.0.1": "1irm4g79crlxjm3iqrgvx0f6wxdcj394ky84q89pk9i36y2mlw3n", + "git+https://github.com/kube-rs/kube-rs?rev=fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5#kube-derive@3.0.1": "1irm4g79crlxjm3iqrgvx0f6wxdcj394ky84q89pk9i36y2mlw3n", + "git+https://github.com/kube-rs/kube-rs?rev=fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5#kube-runtime@3.0.1": "1irm4g79crlxjm3iqrgvx0f6wxdcj394ky84q89pk9i36y2mlw3n", + "git+https://github.com/kube-rs/kube-rs?rev=fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5#kube@3.0.1": "1irm4g79crlxjm3iqrgvx0f6wxdcj394ky84q89pk9i36y2mlw3n", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.109.0#k8s-version@0.1.3": "1fgc7i8rhq1nl9m4s69sbfiywy2jx4narpynvm3g54vd5yd4c6m2", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.109.0#stackable-operator-derive@0.3.1": "1fgc7i8rhq1nl9m4s69sbfiywy2jx4narpynvm3g54vd5yd4c6m2", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.109.0#stackable-operator@0.109.0": "1fgc7i8rhq1nl9m4s69sbfiywy2jx4narpynvm3g54vd5yd4c6m2", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.109.0#stackable-shared@0.1.0": "1fgc7i8rhq1nl9m4s69sbfiywy2jx4narpynvm3g54vd5yd4c6m2", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.109.0#stackable-telemetry@0.6.3": "1fgc7i8rhq1nl9m4s69sbfiywy2jx4narpynvm3g54vd5yd4c6m2", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.109.0#stackable-versioned-macros@0.9.0": "1fgc7i8rhq1nl9m4s69sbfiywy2jx4narpynvm3g54vd5yd4c6m2", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.109.0#stackable-versioned@0.9.0": "1fgc7i8rhq1nl9m4s69sbfiywy2jx4narpynvm3g54vd5yd4c6m2", + "git+https://github.com/stackabletech/product-config.git?tag=0.8.0#product-config@0.8.0": "1dz70kapm2wdqcr7ndyjji0lhsl98bsq95gnb2lw487wf6yr7987" +} \ No newline at end of file diff --git a/default.nix b/default.nix index cac82bf0..05fd9820 100644 --- a/default.nix +++ b/default.nix @@ -1,22 +1,16 @@ -{ sources ? import ./nix/sources.nix # managed by https://github.com/nmattia/niv -, nixpkgs ? sources.nixpkgs -, pkgs ? import nixpkgs { +{ + sources ? import ./nix/sources.nix, # managed by https://github.com/nmattia/niv + nixpkgs ? sources.nixpkgs, + pkgs ? import nixpkgs { overlays = [ # gomod2nix must be imported as a nixpkgs overlay - (import (sources.gomod2nix+"/overlay.nix")) + (import (sources.gomod2nix + "/overlay.nix")) ]; -} -, cargo ? import ./Cargo.nix { - inherit nixpkgs pkgs; release = false; + }, + release ? true, + cargo ? import ./Cargo.nix { + inherit nixpkgs pkgs release; defaultCrateOverrides = pkgs.defaultCrateOverrides // { - stackable-cockpit-web = attrs: { - nativeBuildInputs = [ pkgs.nodePackages.yarn pkgs.nodejs ]; - preConfigure = - '' - [[ ! -e node_modules ]] || rm -r node_modules - ln -s ${web.nodeModules} node_modules - ''; - }; helm-sys = attrs: { GO_HELM_WRAPPER = goHelmWrapper + "/bin"; LIBCLANG_PATH = "${pkgs.libclang.lib}/lib"; @@ -25,59 +19,49 @@ utoipa-swagger-ui = attrs: rec { # utoipa-swagger-ui tries to redownload swagger-ui, which is blocked by Nix's sandboxing # so we download it instead, and tell it to use that - SWAGGER_UI_DOWNLOAD_URL = "file://${pkgs.fetchurl { - url = "https://github.com/swagger-api/swagger-ui/archive/refs/tags/v5.17.3.zip"; - hash = "sha256-zrb8feuuDzt/g6y7Tucfh+Y2BWZov0soyNPR5LBqKx4="; - }}"; + SWAGGER_UI_DOWNLOAD_URL = "file://${ + pkgs.fetchurl { + url = "https://github.com/swagger-api/swagger-ui/archive/refs/tags/v5.17.3.zip"; + hash = "sha256-zrb8feuuDzt/g6y7Tucfh+Y2BWZov0soyNPR5LBqKx4="; + } + }"; }; }; - } -, meta ? pkgs.lib.importJSON ./nix/meta.json -, dockerName ? "oci.stackable.tech/sandbox/${meta.operator.name}" -, dockerTag ? null -, web ? js2nix.buildEnv { - # js2nix doesn't import peer dependencies, so we use overlays to patch them in explicitly - # https://github.com/canva-public/js2nix/blob/d37912f6cc824e7f41bea7a481af1739ca195c8f/docs/usage.md#overriding - package-json = ./web/package.json; - yarn-lock = ./yarn.lock; - overlays = [ - (self: super: { - # TODO: remove once this https://github.com/canva-public/js2nix/issues/20 is resolved - buildNodeModule = pkgs.lib.makeOverridable - (args: (super.buildNodeModule args).override { doCheck = false; }); - }) - ]; - } -, goHelmWrapper ? pkgs.buildGoApplication { + }, + meta ? pkgs.lib.importJSON ./nix/meta.json, + dockerName ? "oci.stackable.tech/sandbox/${meta.operator.name}", + dockerTag ? null, + goHelmWrapper ? pkgs.buildGoApplication { + go = pkgs.go_1_26; pname = "go-helm-wrapper"; version = "0.0"; - src = pkgs.runCommand "go-helm-wrapper-src" {} - '' - mkdir $out - cp ${./go.mod} $out/go.mod - cp ${./go.sum} $out/go.sum - cp -r ${./rust/helm-sys/go-helm-wrapper} $out/go-helm-wrapper - ''; + src = pkgs.runCommand "go-helm-wrapper-src" { } '' + mkdir $out + cp ${./go.mod} $out/go.mod + cp ${./go.sum} $out/go.sum + cp -r ${./rust/helm-sys/go-helm-wrapper} $out/go-helm-wrapper + ''; pwd = ./rust/helm-sys/go-helm-wrapper; modules = ./gomod2nix.toml; ldflags = "-buildmode c-archive"; allowGoReference = true; - postBuild = - '' - for pkg in $(getGoDirs ""); do - buildFlags="-buildmode c-archive -o $GOPATH/bin/libgo-helm-wrapper.a" buildGoDir build "$pkg" - done - ''; - } -, js2nix ? pkgs.callPackage sources.js2nix { nodejs = pkgs.nodejs-18_x; } -, gomod2nix ? pkgs.callPackage sources.gomod2nix {} + postBuild = '' + for pkg in $(getGoDirs ""); do + buildFlags="-buildmode c-archive -o $GOPATH/bin/libgo-helm-wrapper.a" buildGoDir build "$pkg" + done + ''; + }, + gomod2nix ? pkgs.callPackage sources.gomod2nix { }, }: rec { - inherit cargo sources pkgs meta; - build = cargo.workspaceMembers.stackable-cockpitd.build.override { - features = [ "ui" ]; - }; - entrypoint = build+"/bin/stackable-cockpitd"; + inherit + cargo + sources + pkgs + meta + ; + build = cargo.workspaceMembers.stackable-cockpitd.build; + entrypoint = build + "/bin/stackable-cockpitd"; # crds = pkgs.runCommand "${meta.operator.name}-crds.yaml" {} # '' # ${entrypoint} crd > $out @@ -88,7 +72,9 @@ rec { tag = dockerTag; contents = [ # Common debugging tools - pkgs.bashInteractive pkgs.coreutils pkgs.util-linuxMinimal + pkgs.bashInteractive + pkgs.coreutils + pkgs.util-linuxMinimal # Kerberos 5 must be installed globally to load plugins correctly pkgs.krb5 # Make the whole cargo workspace available on $PATH @@ -100,9 +86,14 @@ rec { fileRefVars = { PRODUCT_CONFIG = deploy/config-spec/properties.yaml; }; - in pkgs.lib.concatLists (pkgs.lib.mapAttrsToList (env: path: pkgs.lib.optional (pkgs.lib.pathExists path) "${env}=${path}") fileRefVars); + in + pkgs.lib.concatLists ( + pkgs.lib.mapAttrsToList ( + env: path: pkgs.lib.optional (pkgs.lib.pathExists path) "${env}=${path}" + ) fileRefVars + ); Entrypoint = [ entrypoint ]; - Cmd = []; + Cmd = [ ]; }; }; docker = pkgs.linkFarm "stackable-cockpit-docker" [ @@ -129,18 +120,15 @@ rec { ]; # need to use vendored crate2nix because of https://github.com/kolloch/crate2nix/issues/264 - crate2nix = import sources.crate2nix {}; + crate2nix = import sources.crate2nix { }; tilt = pkgs.tilt; - - - regenerateNixLockfiles = pkgs.writeScriptBin "regenerate-nix-lockfiles" - '' - #!/usr/bin/env bash - set -euo pipefail - echo Running crate2nix - ${crate2nix}/bin/crate2nix generate - echo Running gomod2nix - ${gomod2nix}/bin/gomod2nix - ''; + regenerateNixLockfiles = pkgs.writeScriptBin "regenerate-nix-lockfiles" '' + #!/usr/bin/env bash + set -euo pipefail + echo Running crate2nix + ${crate2nix}/bin/crate2nix generate + echo Running gomod2nix + ${gomod2nix}/bin/gomod2nix + ''; } diff --git a/deny.toml b/deny.toml index 238ae1cc..8ec7e452 100644 --- a/deny.toml +++ b/deny.toml @@ -1,3 +1,9 @@ +# This file is the source of truth for all our repos! +# This includes repos not templated by operator-templating, please copy/paste the file for this repos. + +# TIP: Use "cargo deny check" to check if everything is fine + +[graph] targets = [ { triple = "x86_64-unknown-linux-gnu" }, { triple = "aarch64-unknown-linux-gnu" }, @@ -7,20 +13,38 @@ targets = [ ] [advisories] -vulnerability = "warn" -unmaintained = "allow" -unsound = "warn" -yanked = "warn" -notice = "warn" +yanked = "deny" +ignore = [ + # https://rustsec.org/advisories/RUSTSEC-2023-0071 + # "rsa" crate: Marvin Attack: potential key recovery through timing sidechannel + # + # No patch is yet available, however work is underway to migrate to a fully constant-time implementation + # So we need to accept this, as of SDP 25.3 we are not using the rsa crate to create certificates used in production + # setups. + # + # https://github.com/RustCrypto/RSA/issues/19 is the tracking issue + "RUSTSEC-2023-0071", + + # https://rustsec.org/advisories/RUSTSEC-2024-0436 + # The "paste" crate is no longer maintained because the owner states that the implementation is + # finished. There are at least two (forked) alternatives which state to be maintained. They'd + # need to be vetted before a potential switch. Additionally, they'd need to be in a maintained + # state for a couple of years to provide any benefit over using "paste". + # + # This crate is only used in a single place in the xtask package inside the declarative + # "write_crd" macro. The impact of vulnerabilities, if any, should be fairly minimal. + # + # See thread: https://users.rust-lang.org/t/paste-alternatives/126787/4 + # + # This can only be removed again if we decide to use a different crate. + "RUSTSEC-2024-0436", +] [bans] multiple-versions = "allow" [licenses] -unlicensed = "deny" -copyleft = "deny" -allow-osi-fsf-free = "neither" -default = "deny" +unused-allowed-license = "allow" confidence-threshold = 1.0 allow = [ "Apache-2.0", @@ -32,6 +56,8 @@ allow = [ "LicenseRef-webpki", "MIT", "MPL-2.0", + "OpenSSL", # Needed for the ring and/or aws-lc-sys crate. See https://github.com/stackabletech/operator-templating/pull/464 for details + "Unicode-3.0", "Unicode-DFS-2016", "Zlib", "Unlicense", @@ -41,16 +67,23 @@ private = { ignore = true } [[licenses.clarify]] name = "ring" expression = "LicenseRef-ring" -license-files = [{ path = "LICENSE", hash = 0xbd0eed23 }] +license-files = [ + { path = "LICENSE", hash = 0xbd0eed23 }, +] [[licenses.clarify]] name = "webpki" expression = "LicenseRef-webpki" -license-files = [{ path = "LICENSE", hash = 0x001c7e6c }] +license-files = [ + { path = "LICENSE", hash = 0x001c7e6c }, +] [sources] unknown-registry = "deny" unknown-git = "deny" +allow-git = [ + "https://github.com/kube-rs/kube-rs", +] [sources.allow-org] github = ["stackabletech"] diff --git a/deploy/helm/stackable-cockpit/templates/roles.yaml b/deploy/helm/stackable-cockpit/templates/roles.yaml index 6899e605..0c45049f 100644 --- a/deploy/helm/stackable-cockpit/templates/roles.yaml +++ b/deploy/helm/stackable-cockpit/templates/roles.yaml @@ -21,6 +21,7 @@ rules: - kafka.stackable.tech - nifi.stackable.tech - opa.stackable.tech + - opensearch.stackable.tech - spark.stackable.tech - superset.stackable.tech - trino.stackable.tech diff --git a/docker/Dockerfile b/docker/Dockerfile index 197e2007..be70ac91 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -25,21 +25,12 @@ WORKDIR / ##PATCH: Install go (for Helm wrapper) WORKDIR /opt/go -RUN GO_VERSION=1.22.5 \ +RUN GO_VERSION=1.26.0 \ ARCH=$(arch | sed 's/^x86_64$/amd64/' | sed 's/^aarch64$/arm64/') \ && curl --location "https://repo.stackable.tech/repository/packages/go/go${GO_VERSION}.linux-${ARCH}.tar.gz" | tar xvz --strip-components=1 \ && ln -s /opt/go/bin/go /usr/local/bin WORKDIR / -##PATCH: Install node (for UI build) -WORKDIR /opt/node -RUN NODE_VERSION=18.16.0 \ - ARCH=$(arch | sed 's/^x86_64$/x64/' | sed 's/^aarch64$/arm64/') \ - && curl --location "https://repo.stackable.tech/repository/packages/node/node-v${NODE_VERSION}-linux-${ARCH}.tar.xz" | tar xvJ --strip-components=1 \ - && ln -s /opt/node/bin/{node,corepack} /usr/local/bin \ - && corepack enable yarn -WORKDIR / - # IMPORTANT # If you change the toolchain version here, make sure to also change the "rust_version" # property in operator-templating/repositories.yaml @@ -47,7 +38,7 @@ WORKDIR / RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --default-toolchain 1.68.2 ## PATCH: cargo-cyclonedx@0.3.7 uses libcargo 0.64 (Cargo 1.63), while our build uses features from Cargo 1.64 ## See https://github.com/CycloneDX/cyclonedx-rust-cargo/discussions/416 -# && . "$HOME/.cargo/env" && cargo install cargo-cyclonedx@0.3.7 cargo-auditable@0.6.1 +# && . "$HOME/.cargo/env" && cargo install --locked cargo-cyclonedx@0.3.7 cargo-auditable@0.6.1 # Build artifacts will be available in /app. RUN mkdir /app @@ -58,9 +49,9 @@ COPY docker/ubi8-rust-builder/copy_artifacts.sh / WORKDIR /src COPY . /src -## PATCH: disabled cyclonedx, run yarn install, build stackable-cockpitd with ui feature enabled +## PATCH: disabled cyclonedx # hadolint ignore=SC1091 -RUN . "$HOME/.cargo/env" && yarn && cargo build --release --workspace --features stackable-cockpitd/ui +RUN . "$HOME/.cargo/env" && cargo build --release --workspace # ONBUILD RUN . "$HOME/.cargo/env" && cargo auditable build --release --workspace && cargo cyclonedx --output-pattern package --all --output-cdx # Copy the "interesting" files into /app. diff --git a/docs/antora.yml b/docs/antora.yml index 45968107..3578e46a 100644 --- a/docs/antora.yml +++ b/docs/antora.yml @@ -3,5 +3,4 @@ name: management title: SDP Management version: "nightly" nav: - - modules/cockpit/nav.adoc - modules/stackablectl/nav.adoc diff --git a/docs/modules/ROOT/pages/index.adoc b/docs/modules/ROOT/pages/index.adoc index 6dd74e8c..6c54f67f 100644 --- a/docs/modules/ROOT/pages/index.adoc +++ b/docs/modules/ROOT/pages/index.adoc @@ -1,4 +1,3 @@ = Management Tools for the Stackable Data Platform -* xref:cockpit:index.adoc[] * xref:stackablectl:index.adoc[] diff --git a/docs/modules/cockpit/images/login-view.png b/docs/modules/cockpit/images/login-view.png deleted file mode 100644 index c9cc996c..00000000 Binary files a/docs/modules/cockpit/images/login-view.png and /dev/null differ diff --git a/docs/modules/cockpit/images/stacklets-view.png b/docs/modules/cockpit/images/stacklets-view.png deleted file mode 100644 index 9c76e034..00000000 Binary files a/docs/modules/cockpit/images/stacklets-view.png and /dev/null differ diff --git a/docs/modules/cockpit/nav.adoc b/docs/modules/cockpit/nav.adoc deleted file mode 100644 index fd44482e..00000000 --- a/docs/modules/cockpit/nav.adoc +++ /dev/null @@ -1,2 +0,0 @@ -* xref:index.adoc[Cockpit] -** xref:installation.adoc[Installation] diff --git a/docs/modules/cockpit/pages/index.adoc b/docs/modules/cockpit/pages/index.adoc deleted file mode 100644 index 41139372..00000000 --- a/docs/modules/cockpit/pages/index.adoc +++ /dev/null @@ -1,16 +0,0 @@ -= Stackable Cockpit - -IMPORTANT: The Stackable Cockpit is currently an early preview, and is not yet a fully supported component of the -Stackable Data Platform. - -The `Cockpit` application is a browser-based management tool which interacts with the Stackable data platform. Currently -it can display deployed stacklets and their status. The display can be compared with the -xref:management:stackablectl:commands/stacklet.adoc#list-stacklets[`stackablectl stacklet list`] command output. - -The installation is described in the xref:installation.adoc[installation guide]. - -.Stackable Cockpit login page -image::login-view.png[Image of the Stackable Cockpit login page] - -.Stackable Cockpit Stacklet list page -image::stacklets-view.png[Image of the Stackable Cockpit Stacklet list page] diff --git a/docs/modules/cockpit/pages/installation.adoc b/docs/modules/cockpit/pages/installation.adoc deleted file mode 100644 index 09d2115a..00000000 --- a/docs/modules/cockpit/pages/installation.adoc +++ /dev/null @@ -1,51 +0,0 @@ -= Installation - -The Stackable Cockpit is normally installed using Helm. - -== Prerequisites - -You will need: - -* a Kubernetes cluster -* kubectl -* Helm -* htpasswd (from Apache HTTPD) - -Resource sizing depends on cluster type(s), usage and scope, but as a starting point we recommend a minimum of the -following resources for this service: - -* 0.2 cores (e.g. i5 or similar) -* 256MB RAM - -== Authentication - -The Stackable Cockpit authenticates users using a htpasswd database. This file can be -created and maintained using the `htpasswd` tool: - -[source,console] ----- -$ htpasswd -Bc my-htpasswd first-user -$ htpasswd -B my-htpasswd second-user ----- - -NOTE: Stackable Cockpit _only_ supports bcrypt passwords (controlled by the - `-B` flag). - -== Installing - -First ensure that you have installed the Stackable Operators Helm repository: - -[source,console] ----- -$ helm repo add stackable-dev https://repo.stackable.tech/repository/helm-dev/ ----- - -Then install the Stackable Cockpit: - -[source,console] ----- -$ helm upgrade stackable-cockpit stackable-dev/stackable-cockpit --install \ - --version 0.0.0-dev --set-file htpasswd=my-htpasswd ----- - -Helm will deploy the service in Kubernetes containers. You're now ready to access the cockpit! diff --git a/docs/modules/stackablectl/nav.adoc b/docs/modules/stackablectl/nav.adoc index b57cb95c..4be5b9e1 100644 --- a/docs/modules/stackablectl/nav.adoc +++ b/docs/modules/stackablectl/nav.adoc @@ -1,6 +1,7 @@ * xref:index.adoc[stackablectl] ** xref:installation.adoc[Installation] ** xref:quickstart.adoc[Quickstart] +** xref:release-notes.adoc[Release notes] ** xref:commands/index.adoc[Commands] *** xref:commands/cache.adoc[cache] *** xref:commands/completions.adoc[completions] diff --git a/docs/modules/stackablectl/pages/commands/demo.adoc b/docs/modules/stackablectl/pages/commands/demo.adoc index 074cd0cd..e5b66450 100644 --- a/docs/modules/stackablectl/pages/commands/demo.adoc +++ b/docs/modules/stackablectl/pages/commands/demo.adoc @@ -159,4 +159,31 @@ $ stackablectl stacklets list == Uninstalling a Demo -Currently, there is no support for uninstalling a demo again. However, this functionality will come soon. +To uninstall a demo, you can run the following command, specifying the namespace the demo was installed in. + +[source,console] +---- +$ stackablectl demo uninstall trino-taxi-data -n + +---- + +[NOTE] +==== +The uninstall command deletes the namespace the demo was installed in. Therefore it is not possible to uninstall demos in the `default` namespace. +==== + +[WARNING] +==== +Currently, some resources deployed by the demo are either still lingering after the deletion process or need to be deleted before running the uninstall command. + +* All demos + ** MutatingWebhookConfiguration `restarter-sts-enricher.stackable.tech` is not deleted +* end-to-end-security, argo-cd-git-ops, hbase-hdfs-load-cycling-data, jupyterhub-pyspark-hdfs-anomaly-detection-taxi-data + ** ClusterroleBinding `hdfs-clusterrolebinding-nodes` is not deleted +* argo-cd-git-ops + ** Delete the ArgoCD Applications `airflow`, `airflow-postgres`, `minio`, and `sealed-secrets` + ** Then you can delete the namespaces `stackable-airflow`, `minio`, and `sealed-secrets` + ** Delete the ArgoCD ApplicationSet `stackable-operators` and wait for ArgoCD to delete the Applications of that ApplicationSet + ** Only after deleting the above, run the `stackablectl demo uninstall` command, otherwise the deletion might get stuck + ** `*.argoproj.io` CRDs and `sealedsecrets.bitnami.com` CRD are not deleted +==== diff --git a/docs/modules/stackablectl/pages/commands/stack.adoc b/docs/modules/stackablectl/pages/commands/stack.adoc index 27c9049b..ccbface6 100644 --- a/docs/modules/stackablectl/pages/commands/stack.adoc +++ b/docs/modules/stackablectl/pages/commands/stack.adoc @@ -89,3 +89,39 @@ Installed stack logging Use "stackablectl operator installed" to display the installed operators Use "stackablectl stacklet list" to display the installed stacklets ---- + +== Uninstalling a Stack + +To uninstall a stack, you can run the following command, specifying the namespace the stack was installed in. + +[source,console] +---- +$ stackablectl stack uninstall logging -n + +---- + +[NOTE] +==== +The uninstall command deletes the namespace the stack was installed in. Therefore it is not possible to uninstall stacks in the `default` namespace. +==== + +[WARNING] +==== +Currently, some resources deployed by the stack are either still lingering after the deletion process or need to be deleted before running the uninstall command. + +* All stacks + ** MutatingWebhookConfiguration `restarter-sts-enricher.stackable.tech` is not deleted +* argo-cd-git-ops, hdfs-hbase, jupyterhub-pyspark-hdfs + ** ClusterroleBinding `hdfs-clusterrolebinding-nodes` is not deleted +* argo-cd-git-ops + ** Delete the ArgoCD Applications `airflow`, `airflow-postgres`, `minio`, and `sealed-secrets` + ** Then you can delete the namespaces `stackable-airflow`, `minio`, and `sealed-secrets` + ** Delete the ArgoCD ApplicationSet `stackable-operators` and wait for ArgoCD to delete the Applications of that ApplicationSet + ** Only after deleting the above, run the `stackablectl stack uninstall` command, otherwise the deletion might get stuck + ** `*.argoproj.io` CRDs and `sealedsecrets.bitnami.com` CRD are not deleted +* monitoring + ** `*.monitoring.coreos.com` CRDs are not deleted +* observability + ** Delete OpenTelemetryCollector `otel-collector-grpc-external` and `otel-collector-grpc` + ** Only after deleting the above, run the `stackablectl stack uninstall` command, otherwise the deletion might get stuck +==== diff --git a/docs/modules/stackablectl/pages/customization/add-stack.adoc b/docs/modules/stackablectl/pages/customization/add-stack.adoc index 898662b8..3e0583ba 100644 --- a/docs/modules/stackablectl/pages/customization/add-stack.adoc +++ b/docs/modules/stackablectl/pages/customization/add-stack.adoc @@ -21,31 +21,54 @@ As of writing a `stacks.yaml` file could look as follows: [source,yaml] ---- stacks: - mycorp-warehouse: + mycorp-warehouse: description: Internal stack we use to build our warehouses - stackableRelease: 22.09 # or use your custom release mycorp-release1 + stackableRelease: 25.7 # or use your custom release mycorp-release1 + stackableOperators: + - commons + - listener + - secret + - trino + - superset labels: - mycorp - warehouse manifests: - # We have Superset in out Stack, which needs a postgressql instance + # We have Superset in our Stack, which needs a postgresql instance # So let's install that first - - helmChart: &template-postgresql-superset - releaseName: postgresql-superset - name: postgresql - repo: - name: bitnami - url: https://charts.bitnami.com/bitnami/ - version: 11.0.0 - options: - auth: - username: superset - password: superset - database: superset + - helmChart: https://my.corp/stacks/mycorp-warehouse/postgresql.yaml - plainYaml: https://my.corp/stacks/mycorp-warehouse/trino.yaml - plainYaml: https://my.corp/stacks/mycorp-warehouse/superset.yaml ---- +The referenced `helmChart` file above could look like the following: + +[source,yaml] +---- +releaseName: postgresql-superset +name: postgresql +repo: + name: bitnami + url: https://charts.bitnami.com/bitnami/ +version: 16.7.21 +options: + global: + security: + allowInsecureImages: true + image: + repository: bitnamilegacy/postgresql + volumePermissions: + image: + repository: bitnamilegacy/os-shell + metrics: + image: + repository: bitnamilegacy/postgres-exporter + auth: + username: superset + password: superset + database: superset +---- + == 2. Using the Custom `stacks.yaml` File After creating the `mycorp-stacks.yaml` file, it can be added to the available stacks in `stackablectl` via the CLI diff --git a/docs/modules/stackablectl/pages/installation.adoc b/docs/modules/stackablectl/pages/installation.adoc index 9c153893..199a0599 100644 --- a/docs/modules/stackablectl/pages/installation.adoc +++ b/docs/modules/stackablectl/pages/installation.adoc @@ -1,7 +1,7 @@ = Installation :page-aliases: stable@stackablectl::installation.adoc -:latest-release: https://github.com/stackabletech/stackable-cockpit/releases/tag/stackablectl-25.3.0 +:latest-release: https://github.com/stackabletech/stackable-cockpit/releases/tag/stackablectl-1.4.0 :fish-comp-loations: https://fishshell.com/docs/current/completions.html#where-to-put-completions :nushell-comp-locations: https://www.nushell.sh/book/custom_commands.html#persisting @@ -23,14 +23,14 @@ You can also use the following command: [source,console] ---- -$ curl -L -o stackablectl https://github.com/stackabletech/stackable-cockpit/releases/download/stackablectl-25.3.0/stackablectl-x86_64-unknown-linux-gnu +$ curl -L -o stackablectl https://github.com/stackabletech/stackable-cockpit/releases/download/stackablectl-1.4.0/stackablectl-x86_64-unknown-linux-gnu ---- **aarch64** (arm64): [source,console] ---- -$ curl -L -o stackablectl https://github.com/stackabletech/stackable-cockpit/releases/download/stackablectl-25.3.0/stackablectl-aarch64-unknown-linux-gnu +$ curl -L -o stackablectl https://github.com/stackabletech/stackable-cockpit/releases/download/stackablectl-1.4.0/stackablectl-aarch64-unknown-linux-gnu ---- Install the binary into a directory in the `$PATH`, and make it executable: @@ -60,14 +60,14 @@ You can also use the following command: [source,console] ---- -$ curl -L -o stackablectl https://github.com/stackabletech/stackable-cockpit/releases/download/stackablectl-25.3.0/stackablectl-x86_64-apple-darwin +$ curl -L -o stackablectl https://github.com/stackabletech/stackable-cockpit/releases/download/stackablectl-1.4.0/stackablectl-x86_64-apple-darwin ---- **aarch64** (arm64): [source,console] ---- -$ curl -L -o stackablectl https://github.com/stackabletech/stackable-cockpit/releases/download/stackablectl-25.3.0/stackablectl-aarch64-apple-darwin +$ curl -L -o stackablectl https://github.com/stackabletech/stackable-cockpit/releases/download/stackablectl-1.4.0/stackablectl-aarch64-apple-darwin ---- Install the binary into a directory in the `$PATH`, and make it executable: diff --git a/docs/modules/stackablectl/pages/release-notes.adoc b/docs/modules/stackablectl/pages/release-notes.adoc new file mode 100644 index 00000000..032d3b36 --- /dev/null +++ b/docs/modules/stackablectl/pages/release-notes.adoc @@ -0,0 +1,23 @@ += Release notes for stackablectl +:page-toclevels: 3 +:description: Learn about the latest features and changes in the release notes for stackablectl. + +A full list of changes is available directly in https://github.com/stackabletech/stackable-cockpit/blob/main/rust/stackablectl/CHANGELOG.md[stackablectl's changelog]. + +// WARNING: Please keep the empty newlines, otherwise headings are broken. + +include::partial$release-notes/release-1.4.0.adoc[] + +include::partial$release-notes/release-1.3.0.adoc[] + +include::partial$release-notes/release-1.2.2.adoc[] + +include::partial$release-notes/release-1.2.1.adoc[] + +include::partial$release-notes/release-1.2.0.adoc[] + +include::partial$release-notes/release-1.1.0.adoc[] + +include::partial$release-notes/release-1.0.0.adoc[] + +include::partial$release-notes/releases-old.adoc[] diff --git a/docs/modules/stackablectl/partials/commands/cache.adoc b/docs/modules/stackablectl/partials/commands/cache.adoc index 4158759b..bc581303 100644 --- a/docs/modules/stackablectl/partials/commands/cache.adoc +++ b/docs/modules/stackablectl/partials/commands/cache.adoc @@ -61,28 +61,63 @@ File options: Use "stackablectl [OPTIONS] -r path/to/releases1.yaml -r path/to/releases2.yaml" to provide multiple additional release files. + -f, --operator-values + Path to a Helm values file that will be used for the installation of operators + + The file is a YAML file containing Helm values used to deploy operators. + Operator-specific keys (e.g. 'airflow-operator', 'zookeeper-operator') map + to the Helm values for that operator. Use YAML anchors and aliases to share + values across operators. + + Example values file: + + airflow-operator: + tolerations: &default-tolerations + - key: "example" + operator: "Exists" + effect: "NoSchedule" + podAnnotations: + example.com/team: "data-engineering" + zookeeper-operator: + tolerations: *default-tolerations + podAnnotations: + example.com/team: "platform" + + Use "stackablectl [OPTIONS] -f path/to/values.yaml" to provide a + values file. + Helm repository options: - --helm-repo-stable + --helm-repo-stable Provide a custom Helm stable repository URL [default: https://repo.stackable.tech/repository/helm-stable/] - --helm-repo-test + --helm-repo-test Provide a custom Helm test repository URL [default: https://repo.stackable.tech/repository/helm-test/] - --helm-repo-dev + --helm-repo-dev Provide a custom Helm dev repository URL [default: https://repo.stackable.tech/repository/helm-dev/] - --chart-source + --chart-source Source the charts from either a OCI registry or from index.yaml-based repositories. - [default: oci] - Possible values: - oci: OCI registry - repo: index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific + + [default: oci] + +Operator specific configurations: + --listener-class-preset + Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`). + + This takes precedence over values provided via the '-f/--operator-values' flag. + + This maps to the listener-operator Helm Chart preset value, see [the listener-operator documentation](https://docs.stackable.tech/home/nightly/listener-operator/listenerclass/#presets) for details. + + [possible values: none, stable-nodes, ephemeral-nodes] ---- diff --git a/docs/modules/stackablectl/partials/commands/completions.adoc b/docs/modules/stackablectl/partials/commands/completions.adoc index f1ae0f57..695b42e4 100644 --- a/docs/modules/stackablectl/partials/commands/completions.adoc +++ b/docs/modules/stackablectl/partials/commands/completions.adoc @@ -64,28 +64,63 @@ File options: Use "stackablectl [OPTIONS] -r path/to/releases1.yaml -r path/to/releases2.yaml" to provide multiple additional release files. + -f, --operator-values + Path to a Helm values file that will be used for the installation of operators + + The file is a YAML file containing Helm values used to deploy operators. + Operator-specific keys (e.g. 'airflow-operator', 'zookeeper-operator') map + to the Helm values for that operator. Use YAML anchors and aliases to share + values across operators. + + Example values file: + + airflow-operator: + tolerations: &default-tolerations + - key: "example" + operator: "Exists" + effect: "NoSchedule" + podAnnotations: + example.com/team: "data-engineering" + zookeeper-operator: + tolerations: *default-tolerations + podAnnotations: + example.com/team: "platform" + + Use "stackablectl [OPTIONS] -f path/to/values.yaml" to provide a + values file. + Helm repository options: - --helm-repo-stable + --helm-repo-stable Provide a custom Helm stable repository URL [default: https://repo.stackable.tech/repository/helm-stable/] - --helm-repo-test + --helm-repo-test Provide a custom Helm test repository URL [default: https://repo.stackable.tech/repository/helm-test/] - --helm-repo-dev + --helm-repo-dev Provide a custom Helm dev repository URL [default: https://repo.stackable.tech/repository/helm-dev/] - --chart-source + --chart-source Source the charts from either a OCI registry or from index.yaml-based repositories. - [default: oci] - Possible values: - oci: OCI registry - repo: index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific + + [default: oci] + +Operator specific configurations: + --listener-class-preset + Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`). + + This takes precedence over values provided via the '-f/--operator-values' flag. + + This maps to the listener-operator Helm Chart preset value, see [the listener-operator documentation](https://docs.stackable.tech/home/nightly/listener-operator/listenerclass/#presets) for details. + + [possible values: none, stable-nodes, ephemeral-nodes] ---- diff --git a/docs/modules/stackablectl/partials/commands/demo.adoc b/docs/modules/stackablectl/partials/commands/demo.adoc index d9f2e91b..21f5b844 100644 --- a/docs/modules/stackablectl/partials/commands/demo.adoc +++ b/docs/modules/stackablectl/partials/commands/demo.adoc @@ -6,10 +6,11 @@ Interact with demos, which are end-to-end usage demonstrations of the Stackable Usage: stackablectl demo [OPTIONS] Commands: - list List available demos - describe Print out detailed demo information - install Install a specific demo - help Print this message or the help of the given subcommand(s) + list List available demos + describe Print out detailed demo information + install Install a specific demo + uninstall Uninstall a specific stack. Caution: This will delete the provided stack namespace, the operators and provided operator namespace, and all Stackable CRDs + help Print this message or the help of the given subcommand(s) Options: -l, --log-level @@ -65,28 +66,63 @@ File options: Use "stackablectl [OPTIONS] -r path/to/releases1.yaml -r path/to/releases2.yaml" to provide multiple additional release files. + -f, --operator-values + Path to a Helm values file that will be used for the installation of operators + + The file is a YAML file containing Helm values used to deploy operators. + Operator-specific keys (e.g. 'airflow-operator', 'zookeeper-operator') map + to the Helm values for that operator. Use YAML anchors and aliases to share + values across operators. + + Example values file: + + airflow-operator: + tolerations: &default-tolerations + - key: "example" + operator: "Exists" + effect: "NoSchedule" + podAnnotations: + example.com/team: "data-engineering" + zookeeper-operator: + tolerations: *default-tolerations + podAnnotations: + example.com/team: "platform" + + Use "stackablectl [OPTIONS] -f path/to/values.yaml" to provide a + values file. + Helm repository options: - --helm-repo-stable + --helm-repo-stable Provide a custom Helm stable repository URL [default: https://repo.stackable.tech/repository/helm-stable/] - --helm-repo-test + --helm-repo-test Provide a custom Helm test repository URL [default: https://repo.stackable.tech/repository/helm-test/] - --helm-repo-dev + --helm-repo-dev Provide a custom Helm dev repository URL [default: https://repo.stackable.tech/repository/helm-dev/] - --chart-source + --chart-source Source the charts from either a OCI registry or from index.yaml-based repositories. - [default: oci] - Possible values: - oci: OCI registry - repo: index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific + + [default: oci] + +Operator specific configurations: + --listener-class-preset + Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`). + + This takes precedence over values provided via the '-f/--operator-values' flag. + + This maps to the listener-operator Helm Chart preset value, see [the listener-operator documentation](https://docs.stackable.tech/home/nightly/listener-operator/listenerclass/#presets) for details. + + [possible values: none, stable-nodes, ephemeral-nodes] ---- diff --git a/docs/modules/stackablectl/partials/commands/experimental-debug.adoc b/docs/modules/stackablectl/partials/commands/experimental-debug.adoc index 42ebfae9..22b4bf7d 100644 --- a/docs/modules/stackablectl/partials/commands/experimental-debug.adoc +++ b/docs/modules/stackablectl/partials/commands/experimental-debug.adoc @@ -78,28 +78,63 @@ File options: Use "stackablectl [OPTIONS] -r path/to/releases1.yaml -r path/to/releases2.yaml" to provide multiple additional release files. + -f, --operator-values + Path to a Helm values file that will be used for the installation of operators + + The file is a YAML file containing Helm values used to deploy operators. + Operator-specific keys (e.g. 'airflow-operator', 'zookeeper-operator') map + to the Helm values for that operator. Use YAML anchors and aliases to share + values across operators. + + Example values file: + + airflow-operator: + tolerations: &default-tolerations + - key: "example" + operator: "Exists" + effect: "NoSchedule" + podAnnotations: + example.com/team: "data-engineering" + zookeeper-operator: + tolerations: *default-tolerations + podAnnotations: + example.com/team: "platform" + + Use "stackablectl [OPTIONS] -f path/to/values.yaml" to provide a + values file. + Helm repository options: - --helm-repo-stable + --helm-repo-stable Provide a custom Helm stable repository URL [default: https://repo.stackable.tech/repository/helm-stable/] - --helm-repo-test + --helm-repo-test Provide a custom Helm test repository URL [default: https://repo.stackable.tech/repository/helm-test/] - --helm-repo-dev + --helm-repo-dev Provide a custom Helm dev repository URL [default: https://repo.stackable.tech/repository/helm-dev/] - --chart-source + --chart-source Source the charts from either a OCI registry or from index.yaml-based repositories. - [default: oci] - Possible values: - oci: OCI registry - repo: index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific + + [default: oci] + +Operator specific configurations: + --listener-class-preset + Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`). + + This takes precedence over values provided via the '-f/--operator-values' flag. + + This maps to the listener-operator Helm Chart preset value, see [the listener-operator documentation](https://docs.stackable.tech/home/nightly/listener-operator/listenerclass/#presets) for details. + + [possible values: none, stable-nodes, ephemeral-nodes] ---- diff --git a/docs/modules/stackablectl/partials/commands/help.adoc b/docs/modules/stackablectl/partials/commands/help.adoc index 6a390f6f..c3441a55 100644 --- a/docs/modules/stackablectl/partials/commands/help.adoc +++ b/docs/modules/stackablectl/partials/commands/help.adoc @@ -14,5 +14,6 @@ Commands: completions Generate shell completions for this tool cache Interact with locally cached files experimental-debug EXPERIMENTAL: Launch a debug container for a Pod + version Retrieve version data of the stackablectl installation help Print this message or the help of the given subcommand(s) ---- diff --git a/docs/modules/stackablectl/partials/commands/index.adoc b/docs/modules/stackablectl/partials/commands/index.adoc index 93bbdad8..f9b5ac16 100644 --- a/docs/modules/stackablectl/partials/commands/index.adoc +++ b/docs/modules/stackablectl/partials/commands/index.adoc @@ -14,6 +14,7 @@ Commands: completions Generate shell completions for this tool cache Interact with locally cached files experimental-debug EXPERIMENTAL: Launch a debug container for a Pod + version Retrieve version data of the stackablectl installation help Print this message or the help of the given subcommand(s) Options: @@ -67,28 +68,63 @@ File options: Use "stackablectl [OPTIONS] -r path/to/releases1.yaml -r path/to/releases2.yaml" to provide multiple additional release files. + -f, --operator-values + Path to a Helm values file that will be used for the installation of operators + + The file is a YAML file containing Helm values used to deploy operators. + Operator-specific keys (e.g. 'airflow-operator', 'zookeeper-operator') map + to the Helm values for that operator. Use YAML anchors and aliases to share + values across operators. + + Example values file: + + airflow-operator: + tolerations: &default-tolerations + - key: "example" + operator: "Exists" + effect: "NoSchedule" + podAnnotations: + example.com/team: "data-engineering" + zookeeper-operator: + tolerations: *default-tolerations + podAnnotations: + example.com/team: "platform" + + Use "stackablectl [OPTIONS] -f path/to/values.yaml" to provide a + values file. + Helm repository options: - --helm-repo-stable + --helm-repo-stable Provide a custom Helm stable repository URL [default: https://repo.stackable.tech/repository/helm-stable/] - --helm-repo-test + --helm-repo-test Provide a custom Helm test repository URL [default: https://repo.stackable.tech/repository/helm-test/] - --helm-repo-dev + --helm-repo-dev Provide a custom Helm dev repository URL [default: https://repo.stackable.tech/repository/helm-dev/] - --chart-source + --chart-source Source the charts from either a OCI registry or from index.yaml-based repositories. - [default: oci] - Possible values: - oci: OCI registry - repo: index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific + + [default: oci] + +Operator specific configurations: + --listener-class-preset + Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`). + + This takes precedence over values provided via the '-f/--operator-values' flag. + + This maps to the listener-operator Helm Chart preset value, see [the listener-operator documentation](https://docs.stackable.tech/home/nightly/listener-operator/listenerclass/#presets) for details. + + [possible values: none, stable-nodes, ephemeral-nodes] ---- diff --git a/docs/modules/stackablectl/partials/commands/operator.adoc b/docs/modules/stackablectl/partials/commands/operator.adoc index b032e1a1..d7c3fb6b 100644 --- a/docs/modules/stackablectl/partials/commands/operator.adoc +++ b/docs/modules/stackablectl/partials/commands/operator.adoc @@ -64,28 +64,63 @@ File options: Use "stackablectl [OPTIONS] -r path/to/releases1.yaml -r path/to/releases2.yaml" to provide multiple additional release files. + -f, --operator-values + Path to a Helm values file that will be used for the installation of operators + + The file is a YAML file containing Helm values used to deploy operators. + Operator-specific keys (e.g. 'airflow-operator', 'zookeeper-operator') map + to the Helm values for that operator. Use YAML anchors and aliases to share + values across operators. + + Example values file: + + airflow-operator: + tolerations: &default-tolerations + - key: "example" + operator: "Exists" + effect: "NoSchedule" + podAnnotations: + example.com/team: "data-engineering" + zookeeper-operator: + tolerations: *default-tolerations + podAnnotations: + example.com/team: "platform" + + Use "stackablectl [OPTIONS] -f path/to/values.yaml" to provide a + values file. + Helm repository options: - --helm-repo-stable + --helm-repo-stable Provide a custom Helm stable repository URL [default: https://repo.stackable.tech/repository/helm-stable/] - --helm-repo-test + --helm-repo-test Provide a custom Helm test repository URL [default: https://repo.stackable.tech/repository/helm-test/] - --helm-repo-dev + --helm-repo-dev Provide a custom Helm dev repository URL [default: https://repo.stackable.tech/repository/helm-dev/] - --chart-source + --chart-source Source the charts from either a OCI registry or from index.yaml-based repositories. - [default: oci] - Possible values: - oci: OCI registry - repo: index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific + + [default: oci] + +Operator specific configurations: + --listener-class-preset + Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`). + + This takes precedence over values provided via the '-f/--operator-values' flag. + + This maps to the listener-operator Helm Chart preset value, see [the listener-operator documentation](https://docs.stackable.tech/home/nightly/listener-operator/listenerclass/#presets) for details. + + [possible values: none, stable-nodes, ephemeral-nodes] ---- diff --git a/docs/modules/stackablectl/partials/commands/release.adoc b/docs/modules/stackablectl/partials/commands/release.adoc index eac12e67..ce797851 100644 --- a/docs/modules/stackablectl/partials/commands/release.adoc +++ b/docs/modules/stackablectl/partials/commands/release.adoc @@ -64,28 +64,63 @@ File options: Use "stackablectl [OPTIONS] -r path/to/releases1.yaml -r path/to/releases2.yaml" to provide multiple additional release files. + -f, --operator-values + Path to a Helm values file that will be used for the installation of operators + + The file is a YAML file containing Helm values used to deploy operators. + Operator-specific keys (e.g. 'airflow-operator', 'zookeeper-operator') map + to the Helm values for that operator. Use YAML anchors and aliases to share + values across operators. + + Example values file: + + airflow-operator: + tolerations: &default-tolerations + - key: "example" + operator: "Exists" + effect: "NoSchedule" + podAnnotations: + example.com/team: "data-engineering" + zookeeper-operator: + tolerations: *default-tolerations + podAnnotations: + example.com/team: "platform" + + Use "stackablectl [OPTIONS] -f path/to/values.yaml" to provide a + values file. + Helm repository options: - --helm-repo-stable + --helm-repo-stable Provide a custom Helm stable repository URL [default: https://repo.stackable.tech/repository/helm-stable/] - --helm-repo-test + --helm-repo-test Provide a custom Helm test repository URL [default: https://repo.stackable.tech/repository/helm-test/] - --helm-repo-dev + --helm-repo-dev Provide a custom Helm dev repository URL [default: https://repo.stackable.tech/repository/helm-dev/] - --chart-source + --chart-source Source the charts from either a OCI registry or from index.yaml-based repositories. - [default: oci] - Possible values: - oci: OCI registry - repo: index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific + + [default: oci] + +Operator specific configurations: + --listener-class-preset + Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`). + + This takes precedence over values provided via the '-f/--operator-values' flag. + + This maps to the listener-operator Helm Chart preset value, see [the listener-operator documentation](https://docs.stackable.tech/home/nightly/listener-operator/listenerclass/#presets) for details. + + [possible values: none, stable-nodes, ephemeral-nodes] ---- diff --git a/docs/modules/stackablectl/partials/commands/stack.adoc b/docs/modules/stackablectl/partials/commands/stack.adoc index e03586ee..9bc0a561 100644 --- a/docs/modules/stackablectl/partials/commands/stack.adoc +++ b/docs/modules/stackablectl/partials/commands/stack.adoc @@ -6,10 +6,11 @@ Interact with stacks, which are ready-to-use product combinations Usage: stackablectl stack [OPTIONS] Commands: - list List available stacks - describe Describe a specific stack - install Install a specific stack - help Print this message or the help of the given subcommand(s) + list List available stacks + describe Describe a specific stack + install Install a specific stack + uninstall Uninstall a specific stack. Caution: This will delete the provided stack namespace, the operators and provided operator namespace, and all Stackable CRDs + help Print this message or the help of the given subcommand(s) Options: -l, --log-level @@ -65,28 +66,63 @@ File options: Use "stackablectl [OPTIONS] -r path/to/releases1.yaml -r path/to/releases2.yaml" to provide multiple additional release files. + -f, --operator-values + Path to a Helm values file that will be used for the installation of operators + + The file is a YAML file containing Helm values used to deploy operators. + Operator-specific keys (e.g. 'airflow-operator', 'zookeeper-operator') map + to the Helm values for that operator. Use YAML anchors and aliases to share + values across operators. + + Example values file: + + airflow-operator: + tolerations: &default-tolerations + - key: "example" + operator: "Exists" + effect: "NoSchedule" + podAnnotations: + example.com/team: "data-engineering" + zookeeper-operator: + tolerations: *default-tolerations + podAnnotations: + example.com/team: "platform" + + Use "stackablectl [OPTIONS] -f path/to/values.yaml" to provide a + values file. + Helm repository options: - --helm-repo-stable + --helm-repo-stable Provide a custom Helm stable repository URL [default: https://repo.stackable.tech/repository/helm-stable/] - --helm-repo-test + --helm-repo-test Provide a custom Helm test repository URL [default: https://repo.stackable.tech/repository/helm-test/] - --helm-repo-dev + --helm-repo-dev Provide a custom Helm dev repository URL [default: https://repo.stackable.tech/repository/helm-dev/] - --chart-source + --chart-source Source the charts from either a OCI registry or from index.yaml-based repositories. - [default: oci] - Possible values: - oci: OCI registry - repo: index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific + + [default: oci] + +Operator specific configurations: + --listener-class-preset + Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`). + + This takes precedence over values provided via the '-f/--operator-values' flag. + + This maps to the listener-operator Helm Chart preset value, see [the listener-operator documentation](https://docs.stackable.tech/home/nightly/listener-operator/listenerclass/#presets) for details. + + [possible values: none, stable-nodes, ephemeral-nodes] ---- diff --git a/docs/modules/stackablectl/partials/commands/stacklet.adoc b/docs/modules/stackablectl/partials/commands/stacklet.adoc index 282b41bb..86bd9ab5 100644 --- a/docs/modules/stackablectl/partials/commands/stacklet.adoc +++ b/docs/modules/stackablectl/partials/commands/stacklet.adoc @@ -66,28 +66,63 @@ File options: Use "stackablectl [OPTIONS] -r path/to/releases1.yaml -r path/to/releases2.yaml" to provide multiple additional release files. + -f, --operator-values + Path to a Helm values file that will be used for the installation of operators + + The file is a YAML file containing Helm values used to deploy operators. + Operator-specific keys (e.g. 'airflow-operator', 'zookeeper-operator') map + to the Helm values for that operator. Use YAML anchors and aliases to share + values across operators. + + Example values file: + + airflow-operator: + tolerations: &default-tolerations + - key: "example" + operator: "Exists" + effect: "NoSchedule" + podAnnotations: + example.com/team: "data-engineering" + zookeeper-operator: + tolerations: *default-tolerations + podAnnotations: + example.com/team: "platform" + + Use "stackablectl [OPTIONS] -f path/to/values.yaml" to provide a + values file. + Helm repository options: - --helm-repo-stable + --helm-repo-stable Provide a custom Helm stable repository URL [default: https://repo.stackable.tech/repository/helm-stable/] - --helm-repo-test + --helm-repo-test Provide a custom Helm test repository URL [default: https://repo.stackable.tech/repository/helm-test/] - --helm-repo-dev + --helm-repo-dev Provide a custom Helm dev repository URL [default: https://repo.stackable.tech/repository/helm-dev/] - --chart-source + --chart-source Source the charts from either a OCI registry or from index.yaml-based repositories. - [default: oci] - Possible values: - oci: OCI registry - repo: index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific + + [default: oci] + +Operator specific configurations: + --listener-class-preset + Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`). + + This takes precedence over values provided via the '-f/--operator-values' flag. + + This maps to the listener-operator Helm Chart preset value, see [the listener-operator documentation](https://docs.stackable.tech/home/nightly/listener-operator/listenerclass/#presets) for details. + + [possible values: none, stable-nodes, ephemeral-nodes] ---- diff --git a/docs/modules/stackablectl/partials/commands/version.adoc b/docs/modules/stackablectl/partials/commands/version.adoc new file mode 100644 index 00000000..0176deb1 --- /dev/null +++ b/docs/modules/stackablectl/partials/commands/version.adoc @@ -0,0 +1,122 @@ +// Autogenerated by cargo xtask gen-docs. DO NOT CHANGE MANUALLY! +[source,console] +---- +Retrieve version data of the stackablectl installation + +Usage: stackablectl version [OPTIONS] + +Commands: + check Check if there is a new version available + help Print this message or the help of the given subcommand(s) + +Options: + -l, --log-level + Log level this application uses + + --no-cache + Do not cache the remote (default) demo, stack and release files + + Cached files are saved at '$XDG_CACHE_HOME/stackablectl', which is usually + '$HOME/.cache/stackablectl' when not explicitly set. + + -h, --help + Print help (see a summary with '-h') + + -V, --version + Print version + +File options: + -d, --demo-file + Provide one or more additional (custom) demo file(s) + + Demos are loaded in the following order: Remote (default) demo file, custom + demo files provided via the 'STACKABLE_DEMO_FILES' environment variable, and + lastly demo files provided via the '-d/--demo-file' argument(s). If there are + demos with the same name, the last demo definition will be used. + + Use "stackablectl [OPTIONS] -d path/to/demos1.yaml -d path/to/demos2.yaml" + to provide multiple additional demo files. + + -s, --stack-file + Provide one or more additional (custom) stack file(s) + + Stacks are loaded in the following order: Remote (default) stack file, custom + stack files provided via the 'STACKABLE_STACK_FILES' environment variable, and + lastly demo files provided via the '-s/--stack-file' argument(s). If there are + stacks with the same name, the last stack definition will be used. + + Use "stackablectl [OPTIONS] -s path/to/stacks1.yaml -s path/to/stacks2.yaml" + to provide multiple additional stack files. + + -r, --release-file + Provide one or more additional (custom) release file(s) + + Releases are loaded in the following order: Remote (default) release file, + custom release files provided via the 'STACKABLE_RELEASE_FILES' environment + variable, and lastly release files provided via the '-r/--release-file' + argument(s). If there are releases with the same name, the last release + definition will be used. + + Use "stackablectl [OPTIONS] -r path/to/releases1.yaml -r path/to/releases2.yaml" + to provide multiple additional release files. + + -f, --operator-values + Path to a Helm values file that will be used for the installation of operators + + The file is a YAML file containing Helm values used to deploy operators. + Operator-specific keys (e.g. 'airflow-operator', 'zookeeper-operator') map + to the Helm values for that operator. Use YAML anchors and aliases to share + values across operators. + + Example values file: + + airflow-operator: + tolerations: &default-tolerations + - key: "example" + operator: "Exists" + effect: "NoSchedule" + podAnnotations: + example.com/team: "data-engineering" + zookeeper-operator: + tolerations: *default-tolerations + podAnnotations: + example.com/team: "platform" + + Use "stackablectl [OPTIONS] -f path/to/values.yaml" to provide a + values file. + +Helm repository options: + --helm-repo-stable + Provide a custom Helm stable repository URL + + [default: https://repo.stackable.tech/repository/helm-stable/] + + --helm-repo-test + Provide a custom Helm test repository URL + + [default: https://repo.stackable.tech/repository/helm-test/] + + --helm-repo-dev + Provide a custom Helm dev repository URL + + [default: https://repo.stackable.tech/repository/helm-dev/] + + --chart-source + Source the charts from either a OCI registry or from index.yaml-based repositories. + + Possible values: + - oci: OCI registry + - repo: index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific + + [default: oci] + +Operator specific configurations: + --listener-class-preset + Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`). + + This takes precedence over values provided via the '-f/--operator-values' flag. + + This maps to the listener-operator Helm Chart preset value, see [the listener-operator documentation](https://docs.stackable.tech/home/nightly/listener-operator/listenerclass/#presets) for details. + + [possible values: none, stable-nodes, ephemeral-nodes] +---- diff --git a/docs/modules/stackablectl/partials/release-notes/release-1.0.0.adoc b/docs/modules/stackablectl/partials/release-notes/release-1.0.0.adoc new file mode 100644 index 00000000..66126596 --- /dev/null +++ b/docs/modules/stackablectl/partials/release-notes/release-1.0.0.adoc @@ -0,0 +1,15 @@ +== 1.0.0 + +[NOTE] +==== +Previously, `stackablectl` was release alongside each Stackable Data Platform (SDP) release. +However, the patch releases from thereon were not related to SDP. +We have since decided to version `stackablectl` independently of SDP, starting at 1.0.0. +==== + +* We have added visual progress reporting to more easily see what the tool is doing at any given moment in time. + Previously, it looked like the tool was hanging as nothing was printed out to the terminal during the installation, but only after. + See https://github.com/stackabletech/stackable-cockpit/pull/376[stackable-cockpit#376]. +* Releases can now be upgraded with the new `release upgrade` command. + This makes it easier to upgrade installed operators to a newer SDP release. + See https://github.com/stackabletech/stackable-cockpit/pull/379[stackable-cockpit#379]. diff --git a/docs/modules/stackablectl/partials/release-notes/release-1.1.0.adoc b/docs/modules/stackablectl/partials/release-notes/release-1.1.0.adoc new file mode 100644 index 00000000..354280d2 --- /dev/null +++ b/docs/modules/stackablectl/partials/release-notes/release-1.1.0.adoc @@ -0,0 +1,9 @@ +== 1.1.0 + +* We now support idempotent Helm installations for demos and stacks. + See https://github.com/stackabletech/stackable-cockpit/pull/386[stackable-cockpit#386]. +* Ignore failed re-application of Jobs due to immutability in demo and stack installations. + The user is now asked if these be deleted or recreated. + See https://github.com/stackabletech/stackable-cockpit/pull/386[stackable-cockpit#386]. +* Default to release build for nix users. + See https://github.com/stackabletech/stackable-cockpit/pull/388[stackable-cockpit#388]. diff --git a/docs/modules/stackablectl/partials/release-notes/release-1.2.0.adoc b/docs/modules/stackablectl/partials/release-notes/release-1.2.0.adoc new file mode 100644 index 00000000..2a2e04e8 --- /dev/null +++ b/docs/modules/stackablectl/partials/release-notes/release-1.2.0.adoc @@ -0,0 +1,6 @@ +== 1.2.0 + +* Automatically detect Kubernetes environment (e.g. kind, k3s or IONOS) and choose a sensible https://docs.stackable.tech/home/nightly/listener-operator/listenerclass/#presets[ListenerClass preset] by default. + See https://github.com/stackabletech/stackable-cockpit/pull/414[stackable-cockpit#414]. +* Support configuring the https://docs.stackable.tech/home/nightly/listener-operator/listenerclass/#presets[ListenerClass preset] using `--listener-class-preset`. + See https://github.com/stackabletech/stackable-cockpit/pull/414[stackable-cockpit#414]. diff --git a/docs/modules/stackablectl/partials/release-notes/release-1.2.1.adoc b/docs/modules/stackablectl/partials/release-notes/release-1.2.1.adoc new file mode 100644 index 00000000..5deb31dc --- /dev/null +++ b/docs/modules/stackablectl/partials/release-notes/release-1.2.1.adoc @@ -0,0 +1,5 @@ +== 1.2.1 + +* Don't crash during `release upgrade` for SDP 25.11. + Previously it errored with `HTTP status client error (404 Not Found) for url (https://raw.githubusercontent.com/stackabletech/secret-operator/main/deploy/helm/secret-operator/crds/crds.yaml)`, as the secret-operator now maintains the CRD itself ([#418]). + See https://github.com/stackabletech/stackable-cockpit/pull/418[stackable-cockpit#418]. diff --git a/docs/modules/stackablectl/partials/release-notes/release-1.2.2.adoc b/docs/modules/stackablectl/partials/release-notes/release-1.2.2.adoc new file mode 100644 index 00000000..2804f9b5 --- /dev/null +++ b/docs/modules/stackablectl/partials/release-notes/release-1.2.2.adoc @@ -0,0 +1,11 @@ +== 1.2.2 + +* Add the option for users to customize the behaviour of `stackablectl` through a user config located at `$HOME/.config/stackablectl/config.toml`. + The first supported option is `version.check_enabled` which can be set to `true` or `false`. + See https://github.com/stackabletech/stackable-cockpit/pull/422[stackable-cockpit#422]. +* Add a new release check which is used in two different ways: +** A new `stackablectl version check` command can be used to check if the current installation is up-to-date +** A check automatically runs for all other commands (in parallel to not block the commands) and the status is reported as part of the final command output. + ++ +See https://github.com/stackabletech/stackable-cockpit/pull/421[stackable-cockpit#421]. diff --git a/docs/modules/stackablectl/partials/release-notes/release-1.3.0.adoc b/docs/modules/stackablectl/partials/release-notes/release-1.3.0.adoc new file mode 100644 index 00000000..b90e52d3 --- /dev/null +++ b/docs/modules/stackablectl/partials/release-notes/release-1.3.0.adoc @@ -0,0 +1,8 @@ +== 1.3.0 + +* Allow specifying Helm values for operator installations. + See https://github.com/stackabletech/stackable-cockpit/pull/425[stackable-cockpit#425]. +* Bump Rust to `1.93.0` as well as dependencies. + See https://github.com/stackabletech/stackable-cockpit/pull/426[stackable-cockpit#426]. +* Bump Go to `1.26.0` as well as dependencies. + See https://github.com/stackabletech/stackable-cockpit/pull/426[stackable-cockpit#426]. diff --git a/docs/modules/stackablectl/partials/release-notes/release-1.4.0.adoc b/docs/modules/stackablectl/partials/release-notes/release-1.4.0.adoc new file mode 100644 index 00000000..bcbc4fb7 --- /dev/null +++ b/docs/modules/stackablectl/partials/release-notes/release-1.4.0.adoc @@ -0,0 +1,4 @@ +== 1.4.0 + +* Add `STACK` and `DEMO` templating parameters. Have a look at the `README.md` for details. + See https://github.com/stackabletech/stackable-cockpit/pull/432[stackable-cockpit#432]. diff --git a/docs/modules/stackablectl/partials/release-notes/releases-old.adoc b/docs/modules/stackablectl/partials/release-notes/releases-old.adoc new file mode 100644 index 00000000..d912827e --- /dev/null +++ b/docs/modules/stackablectl/partials/release-notes/releases-old.adoc @@ -0,0 +1,31 @@ +== 25.3.0 + +* A new demo called `jupyterhub-keycloak` was added and is available via `stackablectl`. + The JupyterHub-Keycloak integration demo offers a comprehensive and secure multi-user data science environment on Kubernetes, integrating Single Sign-on Jupyter notebooks with Stackable Spark and S3 storage. + The demo can be installed by running `stackablectl demo install jupyterhub-keycloak`. + See https://github.com/stackabletech/demos/pull/155[demos#155] and https://github.com/stackabletech/documentation/pull/715[documentation#715]. +* Demos and stacks are now versioned and the main branch is considered unstable. + `stackablectl` by default installs the latest stable demo and/or stack. + A specific release can be targeted by providing the `--release` argument. + See https://github.com/stackabletech/stackable-cockpit/pull/340[stackable-cockpit#340]. +* Add new argument --chart-source so that operator charts can be pulled either from an OCI registry (the default) or from a index.yaml-based repository. + See https://github.com/stackabletech/stackable-cockpit/pull/344[stackable-cockpit#344]. +* Use `rustls-native-certs` so that `stackablectl` can be used in environments with internal PKI. + See https://github.com/stackabletech/stackable-cockpit/pull/351[stackable-cockpit#351]. +* Use `heritage` label when looking up the `minio-console` stacklet. + See https://github.com/stackabletech/stackable-cockpit/pull/364[stackable-cockpit#364]. +* Improve tracing and log output. + See https://github.com/stackabletech/stackable-cockpit/pull/365[stackable-cockpit#365]. + +== 24.11.0 + +* Bump Rust dependencies to fix critical vulnerability in quinn-proto. + See https://github.com/advisories/GHSA-vr26-jcq5-fjj8[CVE-2024-45311] and https://github.com/stackabletech/stackable-cockpit/pull/318[stackable-cockpit#318]. +* We now provide additional completions for Nushell and Elvish, support using SOCK5 and HTTP proxies, and have improved the sorting of release versions. + +== 24.7.0 + +* a new experimental debug command +* a pre-built binary for aarch64-unknown-linux-gnu is now available +* complete error messages are now shown (remedying the truncation of some details in previous releases) +* use of the latest Go and Rust versions and respective dependencies diff --git a/extra/completions/_stackablectl b/extra/completions/_stackablectl index 768a339a..e3512fea 100644 --- a/extra/completions/_stackablectl +++ b/extra/completions/_stackablectl @@ -15,19 +15,22 @@ _stackablectl() { local context curcontext="$curcontext" state line _arguments "${_arguments_options[@]}" : \ -'-l+[Log level this application uses]:LOG_LEVEL: ' \ -'--log-level=[Log level this application uses]:LOG_LEVEL: ' \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ '*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ '*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ '--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ '--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ '--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ '--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ '--no-cache[Do not cache the remote (default) demo, stack and release files]' \ '-h[Print help (see more with '\''--help'\'')]' \ '--help[Print help (see more with '\''--help'\'')]' \ @@ -44,19 +47,22 @@ repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based o case $line[1] in (operator) _arguments "${_arguments_options[@]}" : \ -'-l+[Log level this application uses]:LOG_LEVEL: ' \ -'--log-level=[Log level this application uses]:LOG_LEVEL: ' \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ '*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ '*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ '--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ '--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ '--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ '--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ '--no-cache[Do not cache the remote (default) demo, stack and release files]' \ '-h[Print help (see more with '\''--help'\'')]' \ '--help[Print help (see more with '\''--help'\'')]' \ @@ -82,19 +88,22 @@ yaml\:"Print output formatted as YAML"))' \ table\:"Print output formatted as a table" json\:"Print output formatted as JSON" yaml\:"Print output formatted as YAML"))' \ -'-l+[Log level this application uses]:LOG_LEVEL: ' \ -'--log-level=[Log level this application uses]:LOG_LEVEL: ' \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ '*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ '*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ '--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ '--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ '--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ '--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ '--no-cache[Do not cache the remote (default) demo, stack and release files]' \ '-h[Print help (see more with '\''--help'\'')]' \ '--help[Print help (see more with '\''--help'\'')]' \ @@ -112,82 +121,91 @@ yaml\:"Print output formatted as YAML"))' \ table\:"Print output formatted as a table" json\:"Print output formatted as JSON" yaml\:"Print output formatted as YAML"))' \ -'-l+[Log level this application uses]:LOG_LEVEL: ' \ -'--log-level=[Log level this application uses]:LOG_LEVEL: ' \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ '*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ '*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ '--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ '--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ '--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ '--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ '--no-cache[Do not cache the remote (default) demo, stack and release files]' \ '-h[Print help (see more with '\''--help'\'')]' \ '--help[Print help (see more with '\''--help'\'')]' \ '-V[Print version]' \ '--version[Print version]' \ -':OPERATOR -- Operator to describe:' \ +':OPERATOR -- Operator to describe:_default' \ && ret=0 ;; (install) _arguments "${_arguments_options[@]}" : \ -'--operator-namespace=[Namespace in the cluster used to deploy the operators]:OPERATOR_NAMESPACE: ' \ -'--operator-ns=[Namespace in the cluster used to deploy the operators]:OPERATOR_NAMESPACE: ' \ +'--operator-namespace=[Namespace in the cluster used to deploy the operators]:OPERATOR_NAMESPACE:_default' \ +'--operator-ns=[Namespace in the cluster used to deploy the operators]:OPERATOR_NAMESPACE:_default' \ '-c+[Type of local cluster to use for testing]:CLUSTER_TYPE:((kind\:"Use a kind cluster, see " minikube\:"Use a minikube cluster"))' \ '--cluster=[Type of local cluster to use for testing]:CLUSTER_TYPE:((kind\:"Use a kind cluster, see " minikube\:"Use a minikube cluster"))' \ -'--cluster-name=[Name of the local cluster]:CLUSTER_NAME: ' \ -'--cluster-nodes=[Number of total nodes in the local cluster]:CLUSTER_NODES: ' \ -'--cluster-cp-nodes=[Number of control plane nodes in the local cluster]:CLUSTER_CP_NODES: ' \ -'-l+[Log level this application uses]:LOG_LEVEL: ' \ -'--log-level=[Log level this application uses]:LOG_LEVEL: ' \ +'--cluster-name=[Name of the local cluster]:CLUSTER_NAME:_default' \ +'--cluster-nodes=[Number of total nodes in the local cluster]:CLUSTER_NODES:_default' \ +'--cluster-cp-nodes=[Number of control plane nodes in the local cluster]:CLUSTER_CP_NODES:_default' \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ '*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ '*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ '--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ '--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ '--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ '--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ '--no-cache[Do not cache the remote (default) demo, stack and release files]' \ '-h[Print help (see more with '\''--help'\'')]' \ '--help[Print help (see more with '\''--help'\'')]' \ '-V[Print version]' \ '--version[Print version]' \ -'*::OPERATORS -- Operator(s) to install:' \ +'*::OPERATORS -- Operator(s) to install:_default' \ && ret=0 ;; (uninstall) _arguments "${_arguments_options[@]}" : \ -'--operator-namespace=[Namespace in the cluster used to deploy the operators]:OPERATOR_NAMESPACE: ' \ -'--operator-ns=[Namespace in the cluster used to deploy the operators]:OPERATOR_NAMESPACE: ' \ -'-l+[Log level this application uses]:LOG_LEVEL: ' \ -'--log-level=[Log level this application uses]:LOG_LEVEL: ' \ +'--operator-namespace=[Namespace in the cluster used to deploy the operators]:OPERATOR_NAMESPACE:_default' \ +'--operator-ns=[Namespace in the cluster used to deploy the operators]:OPERATOR_NAMESPACE:_default' \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ '*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ '*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ '--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ '--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ '--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ '--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ '--no-cache[Do not cache the remote (default) demo, stack and release files]' \ '-h[Print help (see more with '\''--help'\'')]' \ '--help[Print help (see more with '\''--help'\'')]' \ '-V[Print version]' \ '--version[Print version]' \ -'*::operators -- One or more operators to uninstall:' \ +'*::operators -- One or more operators to uninstall:_default' \ && ret=0 ;; (installed) @@ -200,21 +218,24 @@ yaml\:"Print output formatted as YAML"))' \ table\:"Print output formatted as a table" json\:"Print output formatted as JSON" yaml\:"Print output formatted as YAML"))' \ -'--operator-namespace=[Namespace in the cluster used to deploy the operators]:OPERATOR_NAMESPACE: ' \ -'--operator-ns=[Namespace in the cluster used to deploy the operators]:OPERATOR_NAMESPACE: ' \ -'-l+[Log level this application uses]:LOG_LEVEL: ' \ -'--log-level=[Log level this application uses]:LOG_LEVEL: ' \ +'--operator-namespace=[Namespace in the cluster used to deploy the operators]:OPERATOR_NAMESPACE:_default' \ +'--operator-ns=[Namespace in the cluster used to deploy the operators]:OPERATOR_NAMESPACE:_default' \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ '*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ '*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ '--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ '--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ '--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ '--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ '--no-cache[Do not cache the remote (default) demo, stack and release files]' \ '-h[Print help (see more with '\''--help'\'')]' \ '--help[Print help (see more with '\''--help'\'')]' \ @@ -268,19 +289,22 @@ esac ;; (release) _arguments "${_arguments_options[@]}" : \ -'-l+[Log level this application uses]:LOG_LEVEL: ' \ -'--log-level=[Log level this application uses]:LOG_LEVEL: ' \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ '*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ '*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ '--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ '--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ '--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ '--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ '--no-cache[Do not cache the remote (default) demo, stack and release files]' \ '-h[Print help (see more with '\''--help'\'')]' \ '--help[Print help (see more with '\''--help'\'')]' \ @@ -306,19 +330,22 @@ yaml\:"Print output formatted as YAML"))' \ table\:"Print output formatted as a table" json\:"Print output formatted as JSON" yaml\:"Print output formatted as YAML"))' \ -'-l+[Log level this application uses]:LOG_LEVEL: ' \ -'--log-level=[Log level this application uses]:LOG_LEVEL: ' \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ '*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ '*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ '--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ '--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ '--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ '--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ '--no-cache[Do not cache the remote (default) demo, stack and release files]' \ '-h[Print help (see more with '\''--help'\'')]' \ '--help[Print help (see more with '\''--help'\'')]' \ @@ -336,115 +363,127 @@ yaml\:"Print output formatted as YAML"))' \ table\:"Print output formatted as a table" json\:"Print output formatted as JSON" yaml\:"Print output formatted as YAML"))' \ -'-l+[Log level this application uses]:LOG_LEVEL: ' \ -'--log-level=[Log level this application uses]:LOG_LEVEL: ' \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ '*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ '*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ '--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ '--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ '--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ '--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ '--no-cache[Do not cache the remote (default) demo, stack and release files]' \ '-h[Print help (see more with '\''--help'\'')]' \ '--help[Print help (see more with '\''--help'\'')]' \ '-V[Print version]' \ '--version[Print version]' \ -':RELEASE:' \ +':RELEASE:_default' \ && ret=0 ;; (install) _arguments "${_arguments_options[@]}" : \ -'*-i+[Whitelist of product operators to install]:INCLUDED_PRODUCTS: ' \ -'*--include=[Whitelist of product operators to install]:INCLUDED_PRODUCTS: ' \ -'*-e+[Blacklist of product operators to install]:EXCLUDED_PRODUCTS: ' \ -'*--exclude=[Blacklist of product operators to install]:EXCLUDED_PRODUCTS: ' \ -'--operator-namespace=[Namespace in the cluster used to deploy the operators]:OPERATOR_NAMESPACE: ' \ -'--operator-ns=[Namespace in the cluster used to deploy the operators]:OPERATOR_NAMESPACE: ' \ +'*-i+[Whitelist of product operators to install]:INCLUDED_PRODUCTS:_default' \ +'*--include=[Whitelist of product operators to install]:INCLUDED_PRODUCTS:_default' \ +'*-e+[Blacklist of product operators to install]:EXCLUDED_PRODUCTS:_default' \ +'*--exclude=[Blacklist of product operators to install]:EXCLUDED_PRODUCTS:_default' \ +'--operator-namespace=[Namespace in the cluster used to deploy the operators]:OPERATOR_NAMESPACE:_default' \ +'--operator-ns=[Namespace in the cluster used to deploy the operators]:OPERATOR_NAMESPACE:_default' \ '-c+[Type of local cluster to use for testing]:CLUSTER_TYPE:((kind\:"Use a kind cluster, see " minikube\:"Use a minikube cluster"))' \ '--cluster=[Type of local cluster to use for testing]:CLUSTER_TYPE:((kind\:"Use a kind cluster, see " minikube\:"Use a minikube cluster"))' \ -'--cluster-name=[Name of the local cluster]:CLUSTER_NAME: ' \ -'--cluster-nodes=[Number of total nodes in the local cluster]:CLUSTER_NODES: ' \ -'--cluster-cp-nodes=[Number of control plane nodes in the local cluster]:CLUSTER_CP_NODES: ' \ -'-l+[Log level this application uses]:LOG_LEVEL: ' \ -'--log-level=[Log level this application uses]:LOG_LEVEL: ' \ +'--cluster-name=[Name of the local cluster]:CLUSTER_NAME:_default' \ +'--cluster-nodes=[Number of total nodes in the local cluster]:CLUSTER_NODES:_default' \ +'--cluster-cp-nodes=[Number of control plane nodes in the local cluster]:CLUSTER_CP_NODES:_default' \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ '*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ '*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ '--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ '--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ '--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ '--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ '--no-cache[Do not cache the remote (default) demo, stack and release files]' \ '-h[Print help (see more with '\''--help'\'')]' \ '--help[Print help (see more with '\''--help'\'')]' \ '-V[Print version]' \ '--version[Print version]' \ -':RELEASE -- Release to install:' \ +':RELEASE -- Release to install:_default' \ && ret=0 ;; (uninstall) _arguments "${_arguments_options[@]}" : \ -'--operator-namespace=[Namespace in the cluster used to deploy the operators]:OPERATOR_NAMESPACE: ' \ -'--operator-ns=[Namespace in the cluster used to deploy the operators]:OPERATOR_NAMESPACE: ' \ -'-l+[Log level this application uses]:LOG_LEVEL: ' \ -'--log-level=[Log level this application uses]:LOG_LEVEL: ' \ +'--operator-namespace=[Namespace in the cluster used to deploy the operators]:OPERATOR_NAMESPACE:_default' \ +'--operator-ns=[Namespace in the cluster used to deploy the operators]:OPERATOR_NAMESPACE:_default' \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ '*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ '*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ '--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ '--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ '--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ '--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ '--no-cache[Do not cache the remote (default) demo, stack and release files]' \ '-h[Print help (see more with '\''--help'\'')]' \ '--help[Print help (see more with '\''--help'\'')]' \ '-V[Print version]' \ '--version[Print version]' \ -':RELEASE -- Name of the release to uninstall:' \ +':RELEASE -- Name of the release to uninstall:_default' \ && ret=0 ;; (upgrade) _arguments "${_arguments_options[@]}" : \ -'*-i+[List of product operators to upgrade]:INCLUDED_PRODUCTS: ' \ -'*--include=[List of product operators to upgrade]:INCLUDED_PRODUCTS: ' \ -'*-e+[Blacklist of product operators to install]:EXCLUDED_PRODUCTS: ' \ -'*--exclude=[Blacklist of product operators to install]:EXCLUDED_PRODUCTS: ' \ -'--operator-namespace=[Namespace in the cluster used to deploy the operators]:OPERATOR_NAMESPACE: ' \ -'--operator-ns=[Namespace in the cluster used to deploy the operators]:OPERATOR_NAMESPACE: ' \ -'-l+[Log level this application uses]:LOG_LEVEL: ' \ -'--log-level=[Log level this application uses]:LOG_LEVEL: ' \ +'*-i+[List of product operators to upgrade]:INCLUDED_PRODUCTS:_default' \ +'*--include=[List of product operators to upgrade]:INCLUDED_PRODUCTS:_default' \ +'*-e+[Blacklist of product operators to install]:EXCLUDED_PRODUCTS:_default' \ +'*--exclude=[Blacklist of product operators to install]:EXCLUDED_PRODUCTS:_default' \ +'--operator-namespace=[Namespace in the cluster used to deploy the operators]:OPERATOR_NAMESPACE:_default' \ +'--operator-ns=[Namespace in the cluster used to deploy the operators]:OPERATOR_NAMESPACE:_default' \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ '*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ '*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ '--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ '--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ '--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ '--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ '--no-cache[Do not cache the remote (default) demo, stack and release files]' \ '-h[Print help (see more with '\''--help'\'')]' \ '--help[Print help (see more with '\''--help'\'')]' \ '-V[Print version]' \ '--version[Print version]' \ -':RELEASE -- Upgrade to the specified release:' \ +':RELEASE -- Upgrade to the specified release:_default' \ && ret=0 ;; (help) @@ -493,20 +532,23 @@ esac ;; (stack) _arguments "${_arguments_options[@]}" : \ -'--release=[Target a specific Stackable release]:RELEASE: ' \ -'-l+[Log level this application uses]:LOG_LEVEL: ' \ -'--log-level=[Log level this application uses]:LOG_LEVEL: ' \ +'--release=[Target a specific Stackable release]:RELEASE:_default' \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ '*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ '*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ '--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ '--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ '--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ '--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ '--no-cache[Do not cache the remote (default) demo, stack and release files]' \ '-h[Print help (see more with '\''--help'\'')]' \ '--help[Print help (see more with '\''--help'\'')]' \ @@ -532,20 +574,23 @@ yaml\:"Print output formatted as YAML"))' \ table\:"Print output formatted as a table" json\:"Print output formatted as JSON" yaml\:"Print output formatted as YAML"))' \ -'--release=[Target a specific Stackable release]:RELEASE: ' \ -'-l+[Log level this application uses]:LOG_LEVEL: ' \ -'--log-level=[Log level this application uses]:LOG_LEVEL: ' \ +'--release=[Target a specific Stackable release]:RELEASE:_default' \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ '*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ '*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ '--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ '--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ '--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ '--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ '--no-cache[Do not cache the remote (default) demo, stack and release files]' \ '-h[Print help (see more with '\''--help'\'')]' \ '--help[Print help (see more with '\''--help'\'')]' \ @@ -563,65 +608,110 @@ yaml\:"Print output formatted as YAML"))' \ table\:"Print output formatted as a table" json\:"Print output formatted as JSON" yaml\:"Print output formatted as YAML"))' \ -'--release=[Target a specific Stackable release]:RELEASE: ' \ -'-l+[Log level this application uses]:LOG_LEVEL: ' \ -'--log-level=[Log level this application uses]:LOG_LEVEL: ' \ +'--release=[Target a specific Stackable release]:RELEASE:_default' \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ '*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ '*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ '--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ '--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ '--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ '--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ '--no-cache[Do not cache the remote (default) demo, stack and release files]' \ '-h[Print help (see more with '\''--help'\'')]' \ '--help[Print help (see more with '\''--help'\'')]' \ '-V[Print version]' \ '--version[Print version]' \ -':stack_name -- Name of the stack to describe:' \ +':stack_name -- Name of the stack to describe:_default' \ && ret=0 ;; (install) _arguments "${_arguments_options[@]}" : \ -'*--stack-parameters=[List of parameters to use when installing the stack]:STACK_PARAMETERS: ' \ -'*--parameters=[List of parameters to use when installing the stack]:PARAMETERS: ' \ +'*--stack-parameters=[List of parameters to use when installing the stack]:STACK_PARAMETERS:_default' \ +'*--parameters=[List of parameters to use when installing the stack]:PARAMETERS:_default' \ '-c+[Type of local cluster to use for testing]:CLUSTER_TYPE:((kind\:"Use a kind cluster, see " minikube\:"Use a minikube cluster"))' \ '--cluster=[Type of local cluster to use for testing]:CLUSTER_TYPE:((kind\:"Use a kind cluster, see " minikube\:"Use a minikube cluster"))' \ -'--cluster-name=[Name of the local cluster]:CLUSTER_NAME: ' \ -'--cluster-nodes=[Number of total nodes in the local cluster]:CLUSTER_NODES: ' \ -'--cluster-cp-nodes=[Number of control plane nodes in the local cluster]:CLUSTER_CP_NODES: ' \ -'--operator-namespace=[Namespace where the operators are deployed]:OPERATOR_NAMESPACE: ' \ -'--operator-ns=[Namespace where the operators are deployed]:OPERATOR_NAMESPACE: ' \ -'-n+[Namespace where the stacks or demos are deployed]:NAMESPACE: ' \ -'--namespace=[Namespace where the stacks or demos are deployed]:NAMESPACE: ' \ -'--product-ns=[Namespace where the stacks or demos are deployed]:NAMESPACE: ' \ -'--release=[Target a specific Stackable release]:RELEASE: ' \ -'-l+[Log level this application uses]:LOG_LEVEL: ' \ -'--log-level=[Log level this application uses]:LOG_LEVEL: ' \ +'--cluster-name=[Name of the local cluster]:CLUSTER_NAME:_default' \ +'--cluster-nodes=[Number of total nodes in the local cluster]:CLUSTER_NODES:_default' \ +'--cluster-cp-nodes=[Number of control plane nodes in the local cluster]:CLUSTER_CP_NODES:_default' \ +'--operator-namespace=[Namespace where the operators are deployed]:OPERATOR_NAMESPACE:_default' \ +'--operator-ns=[Namespace where the operators are deployed]:OPERATOR_NAMESPACE:_default' \ +'-n+[Namespace where the stacks or demos are deployed]:NAMESPACE:_default' \ +'--namespace=[Namespace where the stacks or demos are deployed]:NAMESPACE:_default' \ +'--product-ns=[Namespace where the stacks or demos are deployed]:NAMESPACE:_default' \ +'--release=[Target a specific Stackable release]:RELEASE:_default' \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ '*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ '*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ '--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ '--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ '--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ '--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ '--skip-release[Skip the installation of the release during the stack install process]' \ +'-y[Assume "yes" as answer to all prompts and run non-interactively]' \ +'--assume-yes[Assume "yes" as answer to all prompts and run non-interactively]' \ +'--yes[Assume "yes" as answer to all prompts and run non-interactively]' \ '--no-cache[Do not cache the remote (default) demo, stack and release files]' \ '-h[Print help (see more with '\''--help'\'')]' \ '--help[Print help (see more with '\''--help'\'')]' \ '-V[Print version]' \ '--version[Print version]' \ -':stack_name -- Name of the stack to describe:' \ +':stack_name -- Name of the stack to install:_default' \ +&& ret=0 +;; +(uninstall) +_arguments "${_arguments_options[@]}" : \ +'--operator-namespace=[Namespace where the operators are deployed]:OPERATOR_NAMESPACE:_default' \ +'--operator-ns=[Namespace where the operators are deployed]:OPERATOR_NAMESPACE:_default' \ +'-n+[Namespace where the stacks or demos are deployed]:NAMESPACE:_default' \ +'--namespace=[Namespace where the stacks or demos are deployed]:NAMESPACE:_default' \ +'--product-ns=[Namespace where the stacks or demos are deployed]:NAMESPACE:_default' \ +'--release=[Target a specific Stackable release]:RELEASE:_default' \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ +'*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ +'*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ +'*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ +'*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ +'*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ +'--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ +'--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ +'--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" +repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ +'--skip-operators-and-crds[Skip uninstalling Stackable operators and CRDs]' \ +'-y[Assume "yes" as answer to all prompts and run non-interactively]' \ +'--assume-yes[Assume "yes" as answer to all prompts and run non-interactively]' \ +'--yes[Assume "yes" as answer to all prompts and run non-interactively]' \ +'--no-cache[Do not cache the remote (default) demo, stack and release files]' \ +'-h[Print help (see more with '\''--help'\'')]' \ +'--help[Print help (see more with '\''--help'\'')]' \ +'-V[Print version]' \ +'--version[Print version]' \ +':stack_name -- Name of the stack to uninstall:_default' \ && ret=0 ;; (help) @@ -648,6 +738,10 @@ _arguments "${_arguments_options[@]}" : \ _arguments "${_arguments_options[@]}" : \ && ret=0 ;; +(uninstall) +_arguments "${_arguments_options[@]}" : \ +&& ret=0 +;; (help) _arguments "${_arguments_options[@]}" : \ && ret=0 @@ -662,19 +756,22 @@ esac ;; (stacklet) _arguments "${_arguments_options[@]}" : \ -'-l+[Log level this application uses]:LOG_LEVEL: ' \ -'--log-level=[Log level this application uses]:LOG_LEVEL: ' \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ '*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ '*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ '--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ '--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ '--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ '--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ '--no-cache[Do not cache the remote (default) demo, stack and release files]' \ '-h[Print help (see more with '\''--help'\'')]' \ '--help[Print help (see more with '\''--help'\'')]' \ @@ -692,28 +789,31 @@ repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based o case $line[1] in (credentials) _arguments "${_arguments_options[@]}" : \ -'-n+[Namespace in the cluster used to deploy the products]:NAMESPACE: ' \ -'--namespace=[Namespace in the cluster used to deploy the products]:NAMESPACE: ' \ -'-l+[Log level this application uses]:LOG_LEVEL: ' \ -'--log-level=[Log level this application uses]:LOG_LEVEL: ' \ +'-n+[Namespace in the cluster used to deploy the products]:NAMESPACE:_default' \ +'--namespace=[Namespace in the cluster used to deploy the products]:NAMESPACE:_default' \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ '*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ '*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ '--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ '--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ '--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ '--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ '--no-cache[Do not cache the remote (default) demo, stack and release files]' \ '-h[Print help (see more with '\''--help'\'')]' \ '--help[Print help (see more with '\''--help'\'')]' \ '-V[Print version]' \ '--version[Print version]' \ -':product_name -- The name of the product, for example '\''superset'\'':' \ -':stacklet_name -- The name of the stacklet, for example '\''superset'\'':' \ +':product_name -- The name of the product, for example '\''superset'\'':_default' \ +':stacklet_name -- The name of the stacklet, for example '\''superset'\'':_default' \ && ret=0 ;; (list) @@ -726,24 +826,27 @@ yaml\:"Print output formatted as YAML"))' \ table\:"Print output formatted as a table" json\:"Print output formatted as JSON" yaml\:"Print output formatted as YAML"))' \ -'--operator-namespace=[Namespace where the operators are deployed]:OPERATOR_NAMESPACE: ' \ -'--operator-ns=[Namespace where the operators are deployed]:OPERATOR_NAMESPACE: ' \ -'-n+[Namespace where the stacks or demos are deployed]:NAMESPACE: ' \ -'--namespace=[Namespace where the stacks or demos are deployed]:NAMESPACE: ' \ -'--product-ns=[Namespace where the stacks or demos are deployed]:NAMESPACE: ' \ -'-l+[Log level this application uses]:LOG_LEVEL: ' \ -'--log-level=[Log level this application uses]:LOG_LEVEL: ' \ +'--operator-namespace=[Namespace where the operators are deployed]:OPERATOR_NAMESPACE:_default' \ +'--operator-ns=[Namespace where the operators are deployed]:OPERATOR_NAMESPACE:_default' \ +'-n+[Namespace where the stacks or demos are deployed]:NAMESPACE:_default' \ +'--namespace=[Namespace where the stacks or demos are deployed]:NAMESPACE:_default' \ +'--product-ns=[Namespace where the stacks or demos are deployed]:NAMESPACE:_default' \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ '*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ '*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ '--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ '--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ '--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ '--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ '--no-cache[Do not cache the remote (default) demo, stack and release files]' \ '-h[Print help (see more with '\''--help'\'')]' \ '--help[Print help (see more with '\''--help'\'')]' \ @@ -785,20 +888,23 @@ esac ;; (demo) _arguments "${_arguments_options[@]}" : \ -'--release=[Target a specific Stackable release]:RELEASE: ' \ -'-l+[Log level this application uses]:LOG_LEVEL: ' \ -'--log-level=[Log level this application uses]:LOG_LEVEL: ' \ +'--release=[Target a specific Stackable release]:RELEASE:_default' \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ '*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ '*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ '--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ '--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ '--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ '--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ '--no-cache[Do not cache the remote (default) demo, stack and release files]' \ '-h[Print help (see more with '\''--help'\'')]' \ '--help[Print help (see more with '\''--help'\'')]' \ @@ -824,20 +930,23 @@ yaml\:"Print output formatted as YAML"))' \ table\:"Print output formatted as a table" json\:"Print output formatted as JSON" yaml\:"Print output formatted as YAML"))' \ -'--release=[Target a specific Stackable release]:RELEASE: ' \ -'-l+[Log level this application uses]:LOG_LEVEL: ' \ -'--log-level=[Log level this application uses]:LOG_LEVEL: ' \ +'--release=[Target a specific Stackable release]:RELEASE:_default' \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ '*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ '*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ '--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ '--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ '--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ '--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ '--no-cache[Do not cache the remote (default) demo, stack and release files]' \ '-h[Print help (see more with '\''--help'\'')]' \ '--help[Print help (see more with '\''--help'\'')]' \ @@ -855,65 +964,110 @@ yaml\:"Print output formatted as YAML"))' \ table\:"Print output formatted as a table" json\:"Print output formatted as JSON" yaml\:"Print output formatted as YAML"))' \ -'--release=[Target a specific Stackable release]:RELEASE: ' \ -'-l+[Log level this application uses]:LOG_LEVEL: ' \ -'--log-level=[Log level this application uses]:LOG_LEVEL: ' \ +'--release=[Target a specific Stackable release]:RELEASE:_default' \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ '*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ '*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ '--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ '--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ '--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ '--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ '--no-cache[Do not cache the remote (default) demo, stack and release files]' \ '-h[Print help (see more with '\''--help'\'')]' \ '--help[Print help (see more with '\''--help'\'')]' \ '-V[Print version]' \ '--version[Print version]' \ -':DEMO -- Demo to describe:' \ +':DEMO -- Demo to describe:_default' \ && ret=0 ;; (install) _arguments "${_arguments_options[@]}" : \ -'*--stack-parameters=[List of parameters to use when installing the stack]:STACK_PARAMETERS: ' \ -'*--parameters=[List of parameters to use when installing the demo]:PARAMETERS: ' \ +'*--stack-parameters=[List of parameters to use when installing the stack]:STACK_PARAMETERS:_default' \ +'*--parameters=[List of parameters to use when installing the demo]:PARAMETERS:_default' \ '-c+[Type of local cluster to use for testing]:CLUSTER_TYPE:((kind\:"Use a kind cluster, see " minikube\:"Use a minikube cluster"))' \ '--cluster=[Type of local cluster to use for testing]:CLUSTER_TYPE:((kind\:"Use a kind cluster, see " minikube\:"Use a minikube cluster"))' \ -'--cluster-name=[Name of the local cluster]:CLUSTER_NAME: ' \ -'--cluster-nodes=[Number of total nodes in the local cluster]:CLUSTER_NODES: ' \ -'--cluster-cp-nodes=[Number of control plane nodes in the local cluster]:CLUSTER_CP_NODES: ' \ -'--operator-namespace=[Namespace where the operators are deployed]:OPERATOR_NAMESPACE: ' \ -'--operator-ns=[Namespace where the operators are deployed]:OPERATOR_NAMESPACE: ' \ -'-n+[Namespace where the stacks or demos are deployed]:NAMESPACE: ' \ -'--namespace=[Namespace where the stacks or demos are deployed]:NAMESPACE: ' \ -'--product-ns=[Namespace where the stacks or demos are deployed]:NAMESPACE: ' \ -'--release=[Target a specific Stackable release]:RELEASE: ' \ -'-l+[Log level this application uses]:LOG_LEVEL: ' \ -'--log-level=[Log level this application uses]:LOG_LEVEL: ' \ +'--cluster-name=[Name of the local cluster]:CLUSTER_NAME:_default' \ +'--cluster-nodes=[Number of total nodes in the local cluster]:CLUSTER_NODES:_default' \ +'--cluster-cp-nodes=[Number of control plane nodes in the local cluster]:CLUSTER_CP_NODES:_default' \ +'--operator-namespace=[Namespace where the operators are deployed]:OPERATOR_NAMESPACE:_default' \ +'--operator-ns=[Namespace where the operators are deployed]:OPERATOR_NAMESPACE:_default' \ +'-n+[Namespace where the stacks or demos are deployed]:NAMESPACE:_default' \ +'--namespace=[Namespace where the stacks or demos are deployed]:NAMESPACE:_default' \ +'--product-ns=[Namespace where the stacks or demos are deployed]:NAMESPACE:_default' \ +'--release=[Target a specific Stackable release]:RELEASE:_default' \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ '*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ '*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ '--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ '--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ '--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ '--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ '--skip-release[Skip the installation of the release during the stack install process]' \ +'-y[Assume "yes" as answer to all prompts and run non-interactively]' \ +'--assume-yes[Assume "yes" as answer to all prompts and run non-interactively]' \ +'--yes[Assume "yes" as answer to all prompts and run non-interactively]' \ +'--no-cache[Do not cache the remote (default) demo, stack and release files]' \ +'-h[Print help (see more with '\''--help'\'')]' \ +'--help[Print help (see more with '\''--help'\'')]' \ +'-V[Print version]' \ +'--version[Print version]' \ +':DEMO -- Demo to install:_default' \ +&& ret=0 +;; +(uninstall) +_arguments "${_arguments_options[@]}" : \ +'--operator-namespace=[Namespace where the operators are deployed]:OPERATOR_NAMESPACE:_default' \ +'--operator-ns=[Namespace where the operators are deployed]:OPERATOR_NAMESPACE:_default' \ +'-n+[Namespace where the stacks or demos are deployed]:NAMESPACE:_default' \ +'--namespace=[Namespace where the stacks or demos are deployed]:NAMESPACE:_default' \ +'--product-ns=[Namespace where the stacks or demos are deployed]:NAMESPACE:_default' \ +'--release=[Target a specific Stackable release]:RELEASE:_default' \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ +'*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ +'*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ +'*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ +'*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ +'*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ +'--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ +'--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ +'--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" +repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ +'--skip-operators-and-crds[Skip uninstalling Stackable operators and CRDs]' \ +'-y[Assume "yes" as answer to all prompts and run non-interactively]' \ +'--assume-yes[Assume "yes" as answer to all prompts and run non-interactively]' \ +'--yes[Assume "yes" as answer to all prompts and run non-interactively]' \ '--no-cache[Do not cache the remote (default) demo, stack and release files]' \ '-h[Print help (see more with '\''--help'\'')]' \ '--help[Print help (see more with '\''--help'\'')]' \ '-V[Print version]' \ '--version[Print version]' \ -':DEMO -- Demo to install:' \ +':demo_name -- Demo to uninstall:_default' \ && ret=0 ;; (help) @@ -940,6 +1094,10 @@ _arguments "${_arguments_options[@]}" : \ _arguments "${_arguments_options[@]}" : \ && ret=0 ;; +(uninstall) +_arguments "${_arguments_options[@]}" : \ +&& ret=0 +;; (help) _arguments "${_arguments_options[@]}" : \ && ret=0 @@ -954,19 +1112,22 @@ esac ;; (completions) _arguments "${_arguments_options[@]}" : \ -'-l+[Log level this application uses]:LOG_LEVEL: ' \ -'--log-level=[Log level this application uses]:LOG_LEVEL: ' \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ '*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ '*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ '--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ '--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ '--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ '--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ '--no-cache[Do not cache the remote (default) demo, stack and release files]' \ '-h[Print help (see more with '\''--help'\'')]' \ '--help[Print help (see more with '\''--help'\'')]' \ @@ -984,19 +1145,22 @@ repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based o case $line[1] in (bash) _arguments "${_arguments_options[@]}" : \ -'-l+[Log level this application uses]:LOG_LEVEL: ' \ -'--log-level=[Log level this application uses]:LOG_LEVEL: ' \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ '*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ '*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ '--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ '--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ '--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ '--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ '--no-cache[Do not cache the remote (default) demo, stack and release files]' \ '-h[Print help (see more with '\''--help'\'')]' \ '--help[Print help (see more with '\''--help'\'')]' \ @@ -1006,19 +1170,22 @@ repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based o ;; (elvish) _arguments "${_arguments_options[@]}" : \ -'-l+[Log level this application uses]:LOG_LEVEL: ' \ -'--log-level=[Log level this application uses]:LOG_LEVEL: ' \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ '*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ '*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ '--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ '--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ '--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ '--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ '--no-cache[Do not cache the remote (default) demo, stack and release files]' \ '-h[Print help (see more with '\''--help'\'')]' \ '--help[Print help (see more with '\''--help'\'')]' \ @@ -1028,19 +1195,22 @@ repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based o ;; (fish) _arguments "${_arguments_options[@]}" : \ -'-l+[Log level this application uses]:LOG_LEVEL: ' \ -'--log-level=[Log level this application uses]:LOG_LEVEL: ' \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ '*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ '*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ '--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ '--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ '--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ '--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ '--no-cache[Do not cache the remote (default) demo, stack and release files]' \ '-h[Print help (see more with '\''--help'\'')]' \ '--help[Print help (see more with '\''--help'\'')]' \ @@ -1050,19 +1220,22 @@ repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based o ;; (nushell) _arguments "${_arguments_options[@]}" : \ -'-l+[Log level this application uses]:LOG_LEVEL: ' \ -'--log-level=[Log level this application uses]:LOG_LEVEL: ' \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ '*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ '*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ '--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ '--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ '--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ '--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ '--no-cache[Do not cache the remote (default) demo, stack and release files]' \ '-h[Print help (see more with '\''--help'\'')]' \ '--help[Print help (see more with '\''--help'\'')]' \ @@ -1072,19 +1245,22 @@ repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based o ;; (zsh) _arguments "${_arguments_options[@]}" : \ -'-l+[Log level this application uses]:LOG_LEVEL: ' \ -'--log-level=[Log level this application uses]:LOG_LEVEL: ' \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ '*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ '*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ '--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ '--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ '--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ '--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ '--no-cache[Do not cache the remote (default) demo, stack and release files]' \ '-h[Print help (see more with '\''--help'\'')]' \ '--help[Print help (see more with '\''--help'\'')]' \ @@ -1138,19 +1314,22 @@ esac ;; (cache) _arguments "${_arguments_options[@]}" : \ -'-l+[Log level this application uses]:LOG_LEVEL: ' \ -'--log-level=[Log level this application uses]:LOG_LEVEL: ' \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ '*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ '*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ '--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ '--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ '--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ '--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ '--no-cache[Do not cache the remote (default) demo, stack and release files]' \ '-h[Print help (see more with '\''--help'\'')]' \ '--help[Print help (see more with '\''--help'\'')]' \ @@ -1168,19 +1347,22 @@ repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based o case $line[1] in (list) _arguments "${_arguments_options[@]}" : \ -'-l+[Log level this application uses]:LOG_LEVEL: ' \ -'--log-level=[Log level this application uses]:LOG_LEVEL: ' \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ '*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ '*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ '--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ '--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ '--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ '--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ '--no-cache[Do not cache the remote (default) demo, stack and release files]' \ '-h[Print help (see more with '\''--help'\'')]' \ '--help[Print help (see more with '\''--help'\'')]' \ @@ -1190,19 +1372,22 @@ repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based o ;; (clean) _arguments "${_arguments_options[@]}" : \ -'-l+[Log level this application uses]:LOG_LEVEL: ' \ -'--log-level=[Log level this application uses]:LOG_LEVEL: ' \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ '*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ '*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ '--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ '--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ '--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ '--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ '--old[Only remove outdated files in the cache]' \ '--outdated[Only remove outdated files in the cache]' \ '--no-cache[Do not cache the remote (default) demo, stack and release files]' \ @@ -1246,35 +1431,124 @@ esac ;; (experimental-debug) _arguments "${_arguments_options[@]}" : \ -'-n+[The namespace of the Pod being debugged]:NAMESPACE: ' \ -'--namespace=[The namespace of the Pod being debugged]:NAMESPACE: ' \ -'-c+[The target container to debug]:CONTAINER: ' \ -'--container=[The target container to debug]:CONTAINER: ' \ -'--image=[The debug container image]:IMAGE: ' \ -'-l+[Log level this application uses]:LOG_LEVEL: ' \ -'--log-level=[Log level this application uses]:LOG_LEVEL: ' \ +'-n+[The namespace of the Pod being debugged]:NAMESPACE:_default' \ +'--namespace=[The namespace of the Pod being debugged]:NAMESPACE:_default' \ +'-c+[The target container to debug]:CONTAINER:_default' \ +'--container=[The target container to debug]:CONTAINER:_default' \ +'--image=[The debug container image]:IMAGE:_default' \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ +'*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ +'*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ +'*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ +'*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ +'*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ +'--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ +'--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ +'--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" +repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ +'--no-cache[Do not cache the remote (default) demo, stack and release files]' \ +'-h[Print help (see more with '\''--help'\'')]' \ +'--help[Print help (see more with '\''--help'\'')]' \ +'-V[Print version]' \ +'--version[Print version]' \ +':pod -- The Pod to debug:_default' \ +'*::cmd -- The command to run in the debug container:_default' \ +&& ret=0 +;; +(version) +_arguments "${_arguments_options[@]}" : \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ +'*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ +'*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ +'*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ +'*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ +'*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ +'--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ +'--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ +'--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" +repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ +'--no-cache[Do not cache the remote (default) demo, stack and release files]' \ +'-h[Print help (see more with '\''--help'\'')]' \ +'--help[Print help (see more with '\''--help'\'')]' \ +'-V[Print version]' \ +'--version[Print version]' \ +":: :_stackablectl__version_commands" \ +"*::: :->version" \ +&& ret=0 + + case $state in + (version) + words=($line[1] "${words[@]}") + (( CURRENT += 1 )) + curcontext="${curcontext%:*:*}:stackablectl-version-command-$line[1]:" + case $line[1] in + (check) +_arguments "${_arguments_options[@]}" : \ +'-l+[Log level this application uses]:LOG_LEVEL:_default' \ +'--log-level=[Log level this application uses]:LOG_LEVEL:_default' \ '*-d+[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*--demo-file=[Provide one or more additional (custom) demo file(s)]:DEMO_FILE:_files' \ '*-s+[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*--stack-file=[Provide one or more additional (custom) stack file(s)]:STACK_FILE:_files' \ '*-r+[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ '*--release-file=[Provide one or more additional (custom) release file(s)]:RELEASE_FILE:_files' \ +'-f+[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ +'--operator-values=[Path to a Helm values file that will be used for the installation of operators]:VALUES_FILE:_files' \ '--helm-repo-stable=[Provide a custom Helm stable repository URL]:URL:_urls' \ '--helm-repo-test=[Provide a custom Helm test repository URL]:URL:_urls' \ '--helm-repo-dev=[Provide a custom Helm dev repository URL]:URL:_urls' \ '--chart-source=[Source the charts from either a OCI registry or from index.yaml-based repositories]:CHART_SOURCE:((oci\:"OCI registry" repo\:"index.yaml-based repositories\: resolution (dev, test, stable) is based on the version and thus will be operator-specific"))' \ +'--listener-class-preset=[Choose the ListenerClass preset (\`none\`, \`ephemeral-nodes\` or \`stable-nodes\`)]:LISTENER_CLASS_PRESET:(none stable-nodes ephemeral-nodes)' \ '--no-cache[Do not cache the remote (default) demo, stack and release files]' \ '-h[Print help (see more with '\''--help'\'')]' \ '--help[Print help (see more with '\''--help'\'')]' \ '-V[Print version]' \ '--version[Print version]' \ -':pod -- The Pod to debug:' \ -'*::cmd -- The command to run in the debug container:' \ && ret=0 ;; (help) _arguments "${_arguments_options[@]}" : \ +":: :_stackablectl__version__help_commands" \ +"*::: :->help" \ +&& ret=0 + + case $state in + (help) + words=($line[1] "${words[@]}") + (( CURRENT += 1 )) + curcontext="${curcontext%:*:*}:stackablectl-version-help-command-$line[1]:" + case $line[1] in + (check) +_arguments "${_arguments_options[@]}" : \ +&& ret=0 +;; +(help) +_arguments "${_arguments_options[@]}" : \ +&& ret=0 +;; + esac + ;; +esac +;; + esac + ;; +esac +;; +(help) +_arguments "${_arguments_options[@]}" : \ ":: :_stackablectl__help_commands" \ "*::: :->help" \ && ret=0 @@ -1380,6 +1654,10 @@ _arguments "${_arguments_options[@]}" : \ (install) _arguments "${_arguments_options[@]}" : \ && ret=0 +;; +(uninstall) +_arguments "${_arguments_options[@]}" : \ +&& ret=0 ;; esac ;; @@ -1432,6 +1710,10 @@ _arguments "${_arguments_options[@]}" : \ (install) _arguments "${_arguments_options[@]}" : \ && ret=0 +;; +(uninstall) +_arguments "${_arguments_options[@]}" : \ +&& ret=0 ;; esac ;; @@ -1501,6 +1783,26 @@ esac _arguments "${_arguments_options[@]}" : \ && ret=0 ;; +(version) +_arguments "${_arguments_options[@]}" : \ +":: :_stackablectl__help__version_commands" \ +"*::: :->version" \ +&& ret=0 + + case $state in + (version) + words=($line[1] "${words[@]}") + (( CURRENT += 1 )) + curcontext="${curcontext%:*:*}:stackablectl-help-version-command-$line[1]:" + case $line[1] in + (check) +_arguments "${_arguments_options[@]}" : \ +&& ret=0 +;; + esac + ;; +esac +;; (help) _arguments "${_arguments_options[@]}" : \ && ret=0 @@ -1525,6 +1827,7 @@ _stackablectl_commands() { 'completions:Generate shell completions for this tool' \ 'cache:Interact with locally cached files' \ 'experimental-debug:EXPERIMENTAL\: Launch a debug container for a Pod' \ +'version:Retrieve version data of the stackablectl installation' \ 'help:Print this message or the help of the given subcommand(s)' \ ) _describe -t commands 'stackablectl commands' commands "$@" @@ -1657,6 +1960,7 @@ _stackablectl__demo_commands() { 'list:List available demos' \ 'describe:Print out detailed demo information' \ 'install:Install a specific demo' \ +'uninstall:Uninstall a specific stack. Caution\: This will delete the provided stack namespace, the operators and provided operator namespace, and all Stackable CRDs' \ 'help:Print this message or the help of the given subcommand(s)' \ ) _describe -t commands 'stackablectl demo commands' commands "$@" @@ -1672,6 +1976,7 @@ _stackablectl__demo__help_commands() { 'list:List available demos' \ 'describe:Print out detailed demo information' \ 'install:Install a specific demo' \ +'uninstall:Uninstall a specific stack. Caution\: This will delete the provided stack namespace, the operators and provided operator namespace, and all Stackable CRDs' \ 'help:Print this message or the help of the given subcommand(s)' \ ) _describe -t commands 'stackablectl demo help commands' commands "$@" @@ -1696,6 +2001,11 @@ _stackablectl__demo__help__list_commands() { local commands; commands=() _describe -t commands 'stackablectl demo help list commands' commands "$@" } +(( $+functions[_stackablectl__demo__help__uninstall_commands] )) || +_stackablectl__demo__help__uninstall_commands() { + local commands; commands=() + _describe -t commands 'stackablectl demo help uninstall commands' commands "$@" +} (( $+functions[_stackablectl__demo__install_commands] )) || _stackablectl__demo__install_commands() { local commands; commands=() @@ -1706,6 +2016,11 @@ _stackablectl__demo__list_commands() { local commands; commands=() _describe -t commands 'stackablectl demo list commands' commands "$@" } +(( $+functions[_stackablectl__demo__uninstall_commands] )) || +_stackablectl__demo__uninstall_commands() { + local commands; commands=() + _describe -t commands 'stackablectl demo uninstall commands' commands "$@" +} (( $+functions[_stackablectl__experimental-debug_commands] )) || _stackablectl__experimental-debug_commands() { local commands; commands=() @@ -1722,6 +2037,7 @@ _stackablectl__help_commands() { 'completions:Generate shell completions for this tool' \ 'cache:Interact with locally cached files' \ 'experimental-debug:EXPERIMENTAL\: Launch a debug container for a Pod' \ +'version:Retrieve version data of the stackablectl installation' \ 'help:Print this message or the help of the given subcommand(s)' \ ) _describe -t commands 'stackablectl help commands' commands "$@" @@ -1786,6 +2102,7 @@ _stackablectl__help__demo_commands() { 'list:List available demos' \ 'describe:Print out detailed demo information' \ 'install:Install a specific demo' \ +'uninstall:Uninstall a specific stack. Caution\: This will delete the provided stack namespace, the operators and provided operator namespace, and all Stackable CRDs' \ ) _describe -t commands 'stackablectl help demo commands' commands "$@" } @@ -1804,6 +2121,11 @@ _stackablectl__help__demo__list_commands() { local commands; commands=() _describe -t commands 'stackablectl help demo list commands' commands "$@" } +(( $+functions[_stackablectl__help__demo__uninstall_commands] )) || +_stackablectl__help__demo__uninstall_commands() { + local commands; commands=() + _describe -t commands 'stackablectl help demo uninstall commands' commands "$@" +} (( $+functions[_stackablectl__help__experimental-debug_commands] )) || _stackablectl__help__experimental-debug_commands() { local commands; commands=() @@ -1892,6 +2214,7 @@ _stackablectl__help__stack_commands() { 'list:List available stacks' \ 'describe:Describe a specific stack' \ 'install:Install a specific stack' \ +'uninstall:Uninstall a specific stack. Caution\: This will delete the provided stack namespace, the operators and provided operator namespace, and all Stackable CRDs' \ ) _describe -t commands 'stackablectl help stack commands' commands "$@" } @@ -1910,6 +2233,11 @@ _stackablectl__help__stack__list_commands() { local commands; commands=() _describe -t commands 'stackablectl help stack list commands' commands "$@" } +(( $+functions[_stackablectl__help__stack__uninstall_commands] )) || +_stackablectl__help__stack__uninstall_commands() { + local commands; commands=() + _describe -t commands 'stackablectl help stack uninstall commands' commands "$@" +} (( $+functions[_stackablectl__help__stacklet_commands] )) || _stackablectl__help__stacklet_commands() { local commands; commands=( @@ -1928,6 +2256,18 @@ _stackablectl__help__stacklet__list_commands() { local commands; commands=() _describe -t commands 'stackablectl help stacklet list commands' commands "$@" } +(( $+functions[_stackablectl__help__version_commands] )) || +_stackablectl__help__version_commands() { + local commands; commands=( +'check:Check if there is a new version available' \ + ) + _describe -t commands 'stackablectl help version commands' commands "$@" +} +(( $+functions[_stackablectl__help__version__check_commands] )) || +_stackablectl__help__version__check_commands() { + local commands; commands=() + _describe -t commands 'stackablectl help version check commands' commands "$@" +} (( $+functions[_stackablectl__operator_commands] )) || _stackablectl__operator_commands() { local commands; commands=( @@ -2092,6 +2432,7 @@ _stackablectl__stack_commands() { 'list:List available stacks' \ 'describe:Describe a specific stack' \ 'install:Install a specific stack' \ +'uninstall:Uninstall a specific stack. Caution\: This will delete the provided stack namespace, the operators and provided operator namespace, and all Stackable CRDs' \ 'help:Print this message or the help of the given subcommand(s)' \ ) _describe -t commands 'stackablectl stack commands' commands "$@" @@ -2107,6 +2448,7 @@ _stackablectl__stack__help_commands() { 'list:List available stacks' \ 'describe:Describe a specific stack' \ 'install:Install a specific stack' \ +'uninstall:Uninstall a specific stack. Caution\: This will delete the provided stack namespace, the operators and provided operator namespace, and all Stackable CRDs' \ 'help:Print this message or the help of the given subcommand(s)' \ ) _describe -t commands 'stackablectl stack help commands' commands "$@" @@ -2131,6 +2473,11 @@ _stackablectl__stack__help__list_commands() { local commands; commands=() _describe -t commands 'stackablectl stack help list commands' commands "$@" } +(( $+functions[_stackablectl__stack__help__uninstall_commands] )) || +_stackablectl__stack__help__uninstall_commands() { + local commands; commands=() + _describe -t commands 'stackablectl stack help uninstall commands' commands "$@" +} (( $+functions[_stackablectl__stack__install_commands] )) || _stackablectl__stack__install_commands() { local commands; commands=() @@ -2141,6 +2488,11 @@ _stackablectl__stack__list_commands() { local commands; commands=() _describe -t commands 'stackablectl stack list commands' commands "$@" } +(( $+functions[_stackablectl__stack__uninstall_commands] )) || +_stackablectl__stack__uninstall_commands() { + local commands; commands=() + _describe -t commands 'stackablectl stack uninstall commands' commands "$@" +} (( $+functions[_stackablectl__stacklet_commands] )) || _stackablectl__stacklet_commands() { local commands; commands=( @@ -2184,6 +2536,37 @@ _stackablectl__stacklet__list_commands() { local commands; commands=() _describe -t commands 'stackablectl stacklet list commands' commands "$@" } +(( $+functions[_stackablectl__version_commands] )) || +_stackablectl__version_commands() { + local commands; commands=( +'check:Check if there is a new version available' \ +'help:Print this message or the help of the given subcommand(s)' \ + ) + _describe -t commands 'stackablectl version commands' commands "$@" +} +(( $+functions[_stackablectl__version__check_commands] )) || +_stackablectl__version__check_commands() { + local commands; commands=() + _describe -t commands 'stackablectl version check commands' commands "$@" +} +(( $+functions[_stackablectl__version__help_commands] )) || +_stackablectl__version__help_commands() { + local commands; commands=( +'check:Check if there is a new version available' \ +'help:Print this message or the help of the given subcommand(s)' \ + ) + _describe -t commands 'stackablectl version help commands' commands "$@" +} +(( $+functions[_stackablectl__version__help__check_commands] )) || +_stackablectl__version__help__check_commands() { + local commands; commands=() + _describe -t commands 'stackablectl version help check commands' commands "$@" +} +(( $+functions[_stackablectl__version__help__help_commands] )) || +_stackablectl__version__help__help_commands() { + local commands; commands=() + _describe -t commands 'stackablectl version help help commands' commands "$@" +} if [ "$funcstack[1]" = "_stackablectl" ]; then _stackablectl "$@" diff --git a/extra/completions/stackablectl.bash b/extra/completions/stackablectl.bash index bd247a0c..fef7c698 100644 --- a/extra/completions/stackablectl.bash +++ b/extra/completions/stackablectl.bash @@ -1,12 +1,16 @@ _stackablectl() { local i cur prev opts cmd COMPREPLY=() - cur="${COMP_WORDS[COMP_CWORD]}" - prev="${COMP_WORDS[COMP_CWORD-1]}" + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + cur="$2" + else + cur="${COMP_WORDS[COMP_CWORD]}" + fi + prev="$3" cmd="" opts="" - for i in ${COMP_WORDS[@]} + for i in "${COMP_WORDS[@]:0:COMP_CWORD}" do case "${cmd},${i}" in ",$1") @@ -39,6 +43,9 @@ _stackablectl() { stackablectl,stacklet) cmd="stackablectl__stacklet" ;; + stackablectl,version) + cmd="stackablectl__version" + ;; stackablectl__cache,clean) cmd="stackablectl__cache__clean" ;; @@ -105,6 +112,9 @@ _stackablectl() { stackablectl__demo,list) cmd="stackablectl__demo__list" ;; + stackablectl__demo,uninstall) + cmd="stackablectl__demo__uninstall" + ;; stackablectl__demo__help,describe) cmd="stackablectl__demo__help__describe" ;; @@ -117,6 +127,9 @@ _stackablectl() { stackablectl__demo__help,list) cmd="stackablectl__demo__help__list" ;; + stackablectl__demo__help,uninstall) + cmd="stackablectl__demo__help__uninstall" + ;; stackablectl__help,cache) cmd="stackablectl__help__cache" ;; @@ -144,6 +157,9 @@ _stackablectl() { stackablectl__help,stacklet) cmd="stackablectl__help__stacklet" ;; + stackablectl__help,version) + cmd="stackablectl__help__version" + ;; stackablectl__help__cache,clean) cmd="stackablectl__help__cache__clean" ;; @@ -174,6 +190,9 @@ _stackablectl() { stackablectl__help__demo,list) cmd="stackablectl__help__demo__list" ;; + stackablectl__help__demo,uninstall) + cmd="stackablectl__help__demo__uninstall" + ;; stackablectl__help__operator,describe) cmd="stackablectl__help__operator__describe" ;; @@ -213,12 +232,18 @@ _stackablectl() { stackablectl__help__stack,list) cmd="stackablectl__help__stack__list" ;; + stackablectl__help__stack,uninstall) + cmd="stackablectl__help__stack__uninstall" + ;; stackablectl__help__stacklet,credentials) cmd="stackablectl__help__stacklet__credentials" ;; stackablectl__help__stacklet,list) cmd="stackablectl__help__stacklet__list" ;; + stackablectl__help__version,check) + cmd="stackablectl__help__version__check" + ;; stackablectl__operator,describe) cmd="stackablectl__operator__describe" ;; @@ -303,6 +328,9 @@ _stackablectl() { stackablectl__stack,list) cmd="stackablectl__stack__list" ;; + stackablectl__stack,uninstall) + cmd="stackablectl__stack__uninstall" + ;; stackablectl__stack__help,describe) cmd="stackablectl__stack__help__describe" ;; @@ -315,6 +343,9 @@ _stackablectl() { stackablectl__stack__help,list) cmd="stackablectl__stack__help__list" ;; + stackablectl__stack__help,uninstall) + cmd="stackablectl__stack__help__uninstall" + ;; stackablectl__stacklet,credentials) cmd="stackablectl__stacklet__credentials" ;; @@ -333,6 +364,18 @@ _stackablectl() { stackablectl__stacklet__help,list) cmd="stackablectl__stacklet__help__list" ;; + stackablectl__version,check) + cmd="stackablectl__version__check" + ;; + stackablectl__version,help) + cmd="stackablectl__version__help" + ;; + stackablectl__version__help,check) + cmd="stackablectl__version__help__check" + ;; + stackablectl__version__help,help) + cmd="stackablectl__version__help__help" + ;; *) ;; esac @@ -340,7 +383,7 @@ _stackablectl() { case "${cmd}" in stackablectl) - opts="-l -d -s -r -h -V --log-level --no-cache --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --help --version operator release stack stacklet demo completions cache experimental-debug help" + opts="-l -d -s -r -f -h -V --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version operator release stack stacklet demo completions cache experimental-debug version help" if [[ ${cur} == -* || ${COMP_CWORD} -eq 1 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -444,6 +487,36 @@ _stackablectl() { fi return 0 ;; + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; --helm-repo-stable) COMPREPLY=($(compgen -f "${cur}")) return 0 @@ -460,6 +533,10 @@ _stackablectl() { COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) return 0 ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; *) COMPREPLY=() ;; @@ -468,7 +545,7 @@ _stackablectl() { return 0 ;; stackablectl__cache) - opts="-l -d -s -r -h -V --log-level --no-cache --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --help --version list clean help" + opts="-l -d -s -r -f -h -V --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version list clean help" if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -572,6 +649,36 @@ _stackablectl() { fi return 0 ;; + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; --helm-repo-stable) COMPREPLY=($(compgen -f "${cur}")) return 0 @@ -588,6 +695,10 @@ _stackablectl() { COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) return 0 ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; *) COMPREPLY=() ;; @@ -596,7 +707,7 @@ _stackablectl() { return 0 ;; stackablectl__cache__clean) - opts="-l -d -s -r -h -V --outdated --old --log-level --no-cache --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --help --version" + opts="-l -d -s -r -f -h -V --outdated --old --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version" if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -700,6 +811,36 @@ _stackablectl() { fi return 0 ;; + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; --helm-repo-stable) COMPREPLY=($(compgen -f "${cur}")) return 0 @@ -716,6 +857,10 @@ _stackablectl() { COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) return 0 ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; *) COMPREPLY=() ;; @@ -780,7 +925,7 @@ _stackablectl() { return 0 ;; stackablectl__cache__list) - opts="-l -d -s -r -h -V --log-level --no-cache --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --help --version" + opts="-l -d -s -r -f -h -V --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version" if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -884,6 +1029,36 @@ _stackablectl() { fi return 0 ;; + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; --helm-repo-stable) COMPREPLY=($(compgen -f "${cur}")) return 0 @@ -900,6 +1075,10 @@ _stackablectl() { COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) return 0 ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; *) COMPREPLY=() ;; @@ -908,7 +1087,7 @@ _stackablectl() { return 0 ;; stackablectl__completions) - opts="-l -d -s -r -h -V --log-level --no-cache --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --help --version bash elvish fish nushell zsh help" + opts="-l -d -s -r -f -h -V --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version bash elvish fish nushell zsh help" if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -1012,6 +1191,36 @@ _stackablectl() { fi return 0 ;; + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; --helm-repo-stable) COMPREPLY=($(compgen -f "${cur}")) return 0 @@ -1028,6 +1237,10 @@ _stackablectl() { COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) return 0 ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; *) COMPREPLY=() ;; @@ -1036,7 +1249,7 @@ _stackablectl() { return 0 ;; stackablectl__completions__bash) - opts="-l -d -s -r -h -V --log-level --no-cache --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --help --version" + opts="-l -d -s -r -f -h -V --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version" if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -1140,6 +1353,36 @@ _stackablectl() { fi return 0 ;; + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; --helm-repo-stable) COMPREPLY=($(compgen -f "${cur}")) return 0 @@ -1156,6 +1399,10 @@ _stackablectl() { COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) return 0 ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; *) COMPREPLY=() ;; @@ -1164,7 +1411,7 @@ _stackablectl() { return 0 ;; stackablectl__completions__elvish) - opts="-l -d -s -r -h -V --log-level --no-cache --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --help --version" + opts="-l -d -s -r -f -h -V --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version" if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -1268,6 +1515,36 @@ _stackablectl() { fi return 0 ;; + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; --helm-repo-stable) COMPREPLY=($(compgen -f "${cur}")) return 0 @@ -1284,6 +1561,10 @@ _stackablectl() { COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) return 0 ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; *) COMPREPLY=() ;; @@ -1292,7 +1573,7 @@ _stackablectl() { return 0 ;; stackablectl__completions__fish) - opts="-l -d -s -r -h -V --log-level --no-cache --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --help --version" + opts="-l -d -s -r -f -h -V --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version" if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -1396,6 +1677,36 @@ _stackablectl() { fi return 0 ;; + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; --helm-repo-stable) COMPREPLY=($(compgen -f "${cur}")) return 0 @@ -1412,6 +1723,10 @@ _stackablectl() { COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) return 0 ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; *) COMPREPLY=() ;; @@ -1518,7 +1833,7 @@ _stackablectl() { return 0 ;; stackablectl__completions__nushell) - opts="-l -d -s -r -h -V --log-level --no-cache --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --help --version" + opts="-l -d -s -r -f -h -V --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version" if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -1622,9 +1937,39 @@ _stackablectl() { fi return 0 ;; - --helm-repo-stable) - COMPREPLY=($(compgen -f "${cur}")) - return 0 + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + --helm-repo-stable) + COMPREPLY=($(compgen -f "${cur}")) + return 0 ;; --helm-repo-test) COMPREPLY=($(compgen -f "${cur}")) @@ -1638,6 +1983,10 @@ _stackablectl() { COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) return 0 ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; *) COMPREPLY=() ;; @@ -1646,7 +1995,7 @@ _stackablectl() { return 0 ;; stackablectl__completions__zsh) - opts="-l -d -s -r -h -V --log-level --no-cache --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --help --version" + opts="-l -d -s -r -f -h -V --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version" if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -1750,6 +2099,36 @@ _stackablectl() { fi return 0 ;; + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; --helm-repo-stable) COMPREPLY=($(compgen -f "${cur}")) return 0 @@ -1766,6 +2145,10 @@ _stackablectl() { COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) return 0 ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; *) COMPREPLY=() ;; @@ -1774,7 +2157,7 @@ _stackablectl() { return 0 ;; stackablectl__demo) - opts="-l -d -s -r -h -V --release --log-level --no-cache --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --help --version list describe install help" + opts="-l -d -s -r -f -h -V --release --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version list describe install uninstall help" if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -1882,6 +2265,36 @@ _stackablectl() { fi return 0 ;; + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; --helm-repo-stable) COMPREPLY=($(compgen -f "${cur}")) return 0 @@ -1898,6 +2311,10 @@ _stackablectl() { COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) return 0 ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; *) COMPREPLY=() ;; @@ -1906,7 +2323,7 @@ _stackablectl() { return 0 ;; stackablectl__demo__describe) - opts="-o -l -d -s -r -h -V --output --release --log-level --no-cache --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --help --version " + opts="-o -l -d -s -r -f -h -V --output --release --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version " if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -2022,6 +2439,36 @@ _stackablectl() { fi return 0 ;; + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; --helm-repo-stable) COMPREPLY=($(compgen -f "${cur}")) return 0 @@ -2038,6 +2485,10 @@ _stackablectl() { COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) return 0 ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; *) COMPREPLY=() ;; @@ -2046,7 +2497,7 @@ _stackablectl() { return 0 ;; stackablectl__demo__help) - opts="list describe install help" + opts="list describe install uninstall help" if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -2115,8 +2566,22 @@ _stackablectl() { COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; + stackablectl__demo__help__uninstall) + opts="" + if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then + COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) + return 0 + fi + case "${prev}" in + *) + COMPREPLY=() + ;; + esac + COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) + return 0 + ;; stackablectl__demo__install) - opts="-c -n -l -d -s -r -h -V --skip-release --stack-parameters --parameters --cluster --cluster-name --cluster-nodes --cluster-cp-nodes --operator-ns --operator-namespace --product-ns --namespace --release --log-level --no-cache --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --help --version " + opts="-c -n -y -l -d -s -r -f -h -V --skip-release --stack-parameters --parameters --cluster --cluster-name --cluster-nodes --cluster-cp-nodes --operator-ns --operator-namespace --product-ns --namespace --yes --assume-yes --release --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version " if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -2272,6 +2737,36 @@ _stackablectl() { fi return 0 ;; + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; --helm-repo-stable) COMPREPLY=($(compgen -f "${cur}")) return 0 @@ -2288,6 +2783,10 @@ _stackablectl() { COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) return 0 ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; *) COMPREPLY=() ;; @@ -2296,7 +2795,7 @@ _stackablectl() { return 0 ;; stackablectl__demo__list) - opts="-o -l -d -s -r -h -V --output --release --log-level --no-cache --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --help --version" + opts="-o -l -d -s -r -f -h -V --output --release --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version" if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -2412,6 +2911,36 @@ _stackablectl() { fi return 0 ;; + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; --helm-repo-stable) COMPREPLY=($(compgen -f "${cur}")) return 0 @@ -2428,6 +2957,10 @@ _stackablectl() { COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) return 0 ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; *) COMPREPLY=() ;; @@ -2435,30 +2968,34 @@ _stackablectl() { COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; - stackablectl__experimental__debug) - opts="-n -c -l -d -s -r -h -V --namespace --container --image --log-level --no-cache --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --help --version [CMD]..." - if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then + stackablectl__demo__uninstall) + opts="-n -y -l -d -s -r -f -h -V --operator-ns --operator-namespace --product-ns --namespace --skip-operators-and-crds --yes --assume-yes --release --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version " + if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 fi case "${prev}" in - --namespace) + --operator-namespace) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; - -n) + --operator-ns) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; - --container) + --namespace) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; - -c) + --product-ns) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; - --image) + -n) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + --release) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; @@ -2560,6 +3097,36 @@ _stackablectl() { fi return 0 ;; + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; --helm-repo-stable) COMPREPLY=($(compgen -f "${cur}")) return 0 @@ -2576,6 +3143,10 @@ _stackablectl() { COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) return 0 ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; *) COMPREPLY=() ;; @@ -2583,22 +3154,204 @@ _stackablectl() { COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; - stackablectl__help) - opts="operator release stack stacklet demo completions cache experimental-debug help" + stackablectl__experimental__debug) + opts="-n -c -l -d -s -r -f -h -V --namespace --container --image --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version [CMD]..." if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 fi case "${prev}" in - *) - COMPREPLY=() + --namespace) + COMPREPLY=($(compgen -f "${cur}")) + return 0 ;; - esac - COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) - return 0 - ;; - stackablectl__help__cache) - opts="list clean" + -n) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + --container) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + -c) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + --image) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + --log-level) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + -l) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + --demo-file) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -d) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + --stack-file) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -s) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + --release-file) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -r) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + --helm-repo-stable) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + --helm-repo-test) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + --helm-repo-dev) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + --chart-source) + COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) + return 0 + ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; + *) + COMPREPLY=() + ;; + esac + COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) + return 0 + ;; + stackablectl__help) + opts="operator release stack stacklet demo completions cache experimental-debug version help" + if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then + COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) + return 0 + fi + case "${prev}" in + *) + COMPREPLY=() + ;; + esac + COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) + return 0 + ;; + stackablectl__help__cache) + opts="list clean" if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -2724,7 +3477,7 @@ _stackablectl() { return 0 ;; stackablectl__help__demo) - opts="list describe install" + opts="list describe install uninstall" if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -2779,6 +3532,20 @@ _stackablectl() { COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; + stackablectl__help__demo__uninstall) + opts="" + if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then + COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) + return 0 + fi + case "${prev}" in + *) + COMPREPLY=() + ;; + esac + COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) + return 0 + ;; stackablectl__help__experimental__debug) opts="" if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then @@ -2976,7 +3743,7 @@ _stackablectl() { return 0 ;; stackablectl__help__stack) - opts="list describe install" + opts="list describe install uninstall" if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -3031,6 +3798,20 @@ _stackablectl() { COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; + stackablectl__help__stack__uninstall) + opts="" + if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then + COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) + return 0 + fi + case "${prev}" in + *) + COMPREPLY=() + ;; + esac + COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) + return 0 + ;; stackablectl__help__stacklet) opts="credentials list" if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then @@ -3073,8 +3854,36 @@ _stackablectl() { COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; + stackablectl__help__version) + opts="check" + if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then + COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) + return 0 + fi + case "${prev}" in + *) + COMPREPLY=() + ;; + esac + COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) + return 0 + ;; + stackablectl__help__version__check) + opts="" + if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then + COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) + return 0 + fi + case "${prev}" in + *) + COMPREPLY=() + ;; + esac + COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) + return 0 + ;; stackablectl__operator) - opts="-l -d -s -r -h -V --log-level --no-cache --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --help --version list describe install uninstall installed help" + opts="-l -d -s -r -f -h -V --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version list describe install uninstall installed help" if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -3178,22 +3987,56 @@ _stackablectl() { fi return 0 ;; - --helm-repo-stable) - COMPREPLY=($(compgen -f "${cur}")) - return 0 - ;; - --helm-repo-test) + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi return 0 ;; - --helm-repo-dev) + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' COMPREPLY=($(compgen -f "${cur}")) - return 0 + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + --helm-repo-stable) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + --helm-repo-test) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + --helm-repo-dev) + COMPREPLY=($(compgen -f "${cur}")) + return 0 ;; --chart-source) COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) return 0 ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; *) COMPREPLY=() ;; @@ -3202,7 +4045,7 @@ _stackablectl() { return 0 ;; stackablectl__operator__describe) - opts="-o -l -d -s -r -h -V --output --log-level --no-cache --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --help --version " + opts="-o -l -d -s -r -f -h -V --output --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version " if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -3314,6 +4157,36 @@ _stackablectl() { fi return 0 ;; + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; --helm-repo-stable) COMPREPLY=($(compgen -f "${cur}")) return 0 @@ -3330,6 +4203,10 @@ _stackablectl() { COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) return 0 ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; *) COMPREPLY=() ;; @@ -3436,7 +4313,7 @@ _stackablectl() { return 0 ;; stackablectl__operator__install) - opts="-c -l -d -s -r -h -V --operator-ns --operator-namespace --cluster --cluster-name --cluster-nodes --cluster-cp-nodes --log-level --no-cache --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --help --version ..." + opts="-c -l -d -s -r -f -h -V --operator-ns --operator-namespace --cluster --cluster-name --cluster-nodes --cluster-cp-nodes --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version ..." if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -3568,6 +4445,36 @@ _stackablectl() { fi return 0 ;; + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; --helm-repo-stable) COMPREPLY=($(compgen -f "${cur}")) return 0 @@ -3584,6 +4491,10 @@ _stackablectl() { COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) return 0 ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; *) COMPREPLY=() ;; @@ -3592,7 +4503,7 @@ _stackablectl() { return 0 ;; stackablectl__operator__installed) - opts="-o -l -d -s -r -h -V --output --operator-ns --operator-namespace --log-level --no-cache --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --help --version" + opts="-o -l -d -s -r -f -h -V --output --operator-ns --operator-namespace --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version" if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -3712,6 +4623,36 @@ _stackablectl() { fi return 0 ;; + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; --helm-repo-stable) COMPREPLY=($(compgen -f "${cur}")) return 0 @@ -3728,6 +4669,10 @@ _stackablectl() { COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) return 0 ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; *) COMPREPLY=() ;; @@ -3736,7 +4681,7 @@ _stackablectl() { return 0 ;; stackablectl__operator__list) - opts="-o -l -d -s -r -h -V --output --log-level --no-cache --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --help --version" + opts="-o -l -d -s -r -f -h -V --output --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version" if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -3848,6 +4793,36 @@ _stackablectl() { fi return 0 ;; + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; --helm-repo-stable) COMPREPLY=($(compgen -f "${cur}")) return 0 @@ -3864,6 +4839,10 @@ _stackablectl() { COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) return 0 ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; *) COMPREPLY=() ;; @@ -3872,7 +4851,7 @@ _stackablectl() { return 0 ;; stackablectl__operator__uninstall) - opts="-l -d -s -r -h -V --operator-ns --operator-namespace --log-level --no-cache --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --help --version ..." + opts="-l -d -s -r -f -h -V --operator-ns --operator-namespace --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version ..." if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -3984,6 +4963,36 @@ _stackablectl() { fi return 0 ;; + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; --helm-repo-stable) COMPREPLY=($(compgen -f "${cur}")) return 0 @@ -4000,6 +5009,10 @@ _stackablectl() { COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) return 0 ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; *) COMPREPLY=() ;; @@ -4008,7 +5021,7 @@ _stackablectl() { return 0 ;; stackablectl__release) - opts="-l -d -s -r -h -V --log-level --no-cache --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --help --version list describe install uninstall upgrade help" + opts="-l -d -s -r -f -h -V --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version list describe install uninstall upgrade help" if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -4112,6 +5125,36 @@ _stackablectl() { fi return 0 ;; + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; --helm-repo-stable) COMPREPLY=($(compgen -f "${cur}")) return 0 @@ -4128,6 +5171,10 @@ _stackablectl() { COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) return 0 ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; *) COMPREPLY=() ;; @@ -4136,7 +5183,7 @@ _stackablectl() { return 0 ;; stackablectl__release__describe) - opts="-o -l -d -s -r -h -V --output --log-level --no-cache --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --help --version " + opts="-o -l -d -s -r -f -h -V --output --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version " if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -4248,6 +5295,36 @@ _stackablectl() { fi return 0 ;; + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; --helm-repo-stable) COMPREPLY=($(compgen -f "${cur}")) return 0 @@ -4264,6 +5341,10 @@ _stackablectl() { COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) return 0 ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; *) COMPREPLY=() ;; @@ -4370,7 +5451,7 @@ _stackablectl() { return 0 ;; stackablectl__release__install) - opts="-i -e -c -l -d -s -r -h -V --include --exclude --operator-ns --operator-namespace --cluster --cluster-name --cluster-nodes --cluster-cp-nodes --log-level --no-cache --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --help --version " + opts="-i -e -c -l -d -s -r -f -h -V --include --exclude --operator-ns --operator-namespace --cluster --cluster-name --cluster-nodes --cluster-cp-nodes --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version " if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -4518,15 +5599,45 @@ _stackablectl() { fi return 0 ;; - --helm-repo-stable) + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi return 0 ;; - --helm-repo-test) + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi return 0 ;; - --helm-repo-dev) + --helm-repo-stable) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + --helm-repo-test) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + --helm-repo-dev) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; @@ -4534,6 +5645,10 @@ _stackablectl() { COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) return 0 ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; *) COMPREPLY=() ;; @@ -4542,7 +5657,7 @@ _stackablectl() { return 0 ;; stackablectl__release__list) - opts="-o -l -d -s -r -h -V --output --log-level --no-cache --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --help --version" + opts="-o -l -d -s -r -f -h -V --output --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version" if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -4654,6 +5769,36 @@ _stackablectl() { fi return 0 ;; + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; --helm-repo-stable) COMPREPLY=($(compgen -f "${cur}")) return 0 @@ -4670,6 +5815,10 @@ _stackablectl() { COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) return 0 ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; *) COMPREPLY=() ;; @@ -4678,7 +5827,7 @@ _stackablectl() { return 0 ;; stackablectl__release__uninstall) - opts="-l -d -s -r -h -V --operator-ns --operator-namespace --log-level --no-cache --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --help --version " + opts="-l -d -s -r -f -h -V --operator-ns --operator-namespace --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version " if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -4790,6 +5939,36 @@ _stackablectl() { fi return 0 ;; + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; --helm-repo-stable) COMPREPLY=($(compgen -f "${cur}")) return 0 @@ -4806,6 +5985,10 @@ _stackablectl() { COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) return 0 ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; *) COMPREPLY=() ;; @@ -4814,7 +5997,7 @@ _stackablectl() { return 0 ;; stackablectl__release__upgrade) - opts="-i -e -l -d -s -r -h -V --include --exclude --operator-ns --operator-namespace --log-level --no-cache --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --help --version " + opts="-i -e -l -d -s -r -f -h -V --include --exclude --operator-ns --operator-namespace --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version " if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -4942,6 +6125,36 @@ _stackablectl() { fi return 0 ;; + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; --helm-repo-stable) COMPREPLY=($(compgen -f "${cur}")) return 0 @@ -4958,6 +6171,10 @@ _stackablectl() { COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) return 0 ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; *) COMPREPLY=() ;; @@ -4966,7 +6183,7 @@ _stackablectl() { return 0 ;; stackablectl__stack) - opts="-l -d -s -r -h -V --release --log-level --no-cache --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --help --version list describe install help" + opts="-l -d -s -r -f -h -V --release --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version list describe install uninstall help" if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -5074,6 +6291,36 @@ _stackablectl() { fi return 0 ;; + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; --helm-repo-stable) COMPREPLY=($(compgen -f "${cur}")) return 0 @@ -5090,6 +6337,10 @@ _stackablectl() { COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) return 0 ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; *) COMPREPLY=() ;; @@ -5098,7 +6349,7 @@ _stackablectl() { return 0 ;; stackablectl__stack__describe) - opts="-o -l -d -s -r -h -V --output --release --log-level --no-cache --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --help --version " + opts="-o -l -d -s -r -f -h -V --output --release --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version " if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -5214,6 +6465,36 @@ _stackablectl() { fi return 0 ;; + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; --helm-repo-stable) COMPREPLY=($(compgen -f "${cur}")) return 0 @@ -5230,6 +6511,10 @@ _stackablectl() { COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) return 0 ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; *) COMPREPLY=() ;; @@ -5238,7 +6523,7 @@ _stackablectl() { return 0 ;; stackablectl__stack__help) - opts="list describe install help" + opts="list describe install uninstall help" if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -5307,8 +6592,22 @@ _stackablectl() { COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; + stackablectl__stack__help__uninstall) + opts="" + if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then + COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) + return 0 + fi + case "${prev}" in + *) + COMPREPLY=() + ;; + esac + COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) + return 0 + ;; stackablectl__stack__install) - opts="-c -n -l -d -s -r -h -V --skip-release --stack-parameters --parameters --cluster --cluster-name --cluster-nodes --cluster-cp-nodes --operator-ns --operator-namespace --product-ns --namespace --release --log-level --no-cache --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --help --version " + opts="-c -n -y -l -d -s -r -f -h -V --skip-release --stack-parameters --parameters --cluster --cluster-name --cluster-nodes --cluster-cp-nodes --operator-ns --operator-namespace --product-ns --namespace --yes --assume-yes --release --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version " if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -5464,6 +6763,36 @@ _stackablectl() { fi return 0 ;; + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; --helm-repo-stable) COMPREPLY=($(compgen -f "${cur}")) return 0 @@ -5480,6 +6809,10 @@ _stackablectl() { COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) return 0 ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; *) COMPREPLY=() ;; @@ -5488,7 +6821,7 @@ _stackablectl() { return 0 ;; stackablectl__stack__list) - opts="-o -l -d -s -r -h -V --output --release --log-level --no-cache --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --help --version" + opts="-o -l -d -s -r -f -h -V --output --release --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version" if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -5604,6 +6937,36 @@ _stackablectl() { fi return 0 ;; + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; --helm-repo-stable) COMPREPLY=($(compgen -f "${cur}")) return 0 @@ -5620,6 +6983,10 @@ _stackablectl() { COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) return 0 ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; *) COMPREPLY=() ;; @@ -5627,38 +6994,224 @@ _stackablectl() { COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 ;; - stackablectl__stacklet) - opts="-l -d -s -r -h -V --log-level --no-cache --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --help --version credentials list help" - if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then + stackablectl__stack__uninstall) + opts="-n -y -l -d -s -r -f -h -V --operator-ns --operator-namespace --product-ns --namespace --skip-operators-and-crds --yes --assume-yes --release --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version " + if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 fi case "${prev}" in - --log-level) + --operator-namespace) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; - -l) + --operator-ns) COMPREPLY=($(compgen -f "${cur}")) return 0 ;; - --demo-file) - local oldifs - if [ -n "${IFS+x}" ]; then - oldifs="$IFS" - fi - IFS=$'\n' + --namespace) COMPREPLY=($(compgen -f "${cur}")) - if [ -n "${oldifs+x}" ]; then - IFS="$oldifs" - fi - if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then - compopt -o filenames - fi return 0 ;; - -d) - local oldifs + --product-ns) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + -n) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + --release) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + --log-level) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + -l) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + --demo-file) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -d) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + --stack-file) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -s) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + --release-file) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -r) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + --helm-repo-stable) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + --helm-repo-test) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + --helm-repo-dev) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + --chart-source) + COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) + return 0 + ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; + *) + COMPREPLY=() + ;; + esac + COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) + return 0 + ;; + stackablectl__stacklet) + opts="-l -d -s -r -f -h -V --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version credentials list help" + if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then + COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) + return 0 + fi + case "${prev}" in + --log-level) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + -l) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + --demo-file) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -d) + local oldifs if [ -n "${IFS+x}" ]; then oldifs="$IFS" fi @@ -5732,6 +7285,36 @@ _stackablectl() { fi return 0 ;; + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; --helm-repo-stable) COMPREPLY=($(compgen -f "${cur}")) return 0 @@ -5748,6 +7331,10 @@ _stackablectl() { COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) return 0 ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; *) COMPREPLY=() ;; @@ -5756,7 +7343,7 @@ _stackablectl() { return 0 ;; stackablectl__stacklet__credentials) - opts="-n -l -d -s -r -h -V --namespace --log-level --no-cache --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --help --version " + opts="-n -l -d -s -r -f -h -V --namespace --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version " if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -5868,6 +7455,36 @@ _stackablectl() { fi return 0 ;; + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; --helm-repo-stable) COMPREPLY=($(compgen -f "${cur}")) return 0 @@ -5884,6 +7501,10 @@ _stackablectl() { COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) return 0 ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; *) COMPREPLY=() ;; @@ -5948,7 +7569,7 @@ _stackablectl() { return 0 ;; stackablectl__stacklet__list) - opts="-o -n -l -d -s -r -h -V --output --operator-ns --operator-namespace --product-ns --namespace --log-level --no-cache --demo-file --stack-file --release-file --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --help --version" + opts="-o -n -l -d -s -r -f -h -V --output --operator-ns --operator-namespace --product-ns --namespace --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version" if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 @@ -6080,8 +7701,362 @@ _stackablectl() { fi return 0 ;; - --helm-repo-stable) - COMPREPLY=($(compgen -f "${cur}")) + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + --helm-repo-stable) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + --helm-repo-test) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + --helm-repo-dev) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + --chart-source) + COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) + return 0 + ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; + *) + COMPREPLY=() + ;; + esac + COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) + return 0 + ;; + stackablectl__version) + opts="-l -d -s -r -f -h -V --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version check help" + if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then + COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) + return 0 + fi + case "${prev}" in + --log-level) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + -l) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + --demo-file) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -d) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + --stack-file) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -s) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + --release-file) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -r) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + --helm-repo-stable) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + --helm-repo-test) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + --helm-repo-dev) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + --chart-source) + COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) + return 0 + ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; + *) + COMPREPLY=() + ;; + esac + COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) + return 0 + ;; + stackablectl__version__check) + opts="-l -d -s -r -f -h -V --log-level --no-cache --demo-file --stack-file --release-file --operator-values --helm-repo-stable --helm-repo-test --helm-repo-dev --chart-source --listener-class-preset --help --version" + if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then + COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) + return 0 + fi + case "${prev}" in + --log-level) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + -l) + COMPREPLY=($(compgen -f "${cur}")) + return 0 + ;; + --demo-file) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -d) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + --stack-file) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -s) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + --release-file) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -r) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + --operator-values) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + -f) + local oldifs + if [ -n "${IFS+x}" ]; then + oldifs="$IFS" + fi + IFS=$'\n' + COMPREPLY=($(compgen -f "${cur}")) + if [ -n "${oldifs+x}" ]; then + IFS="$oldifs" + fi + if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then + compopt -o filenames + fi + return 0 + ;; + --helm-repo-stable) + COMPREPLY=($(compgen -f "${cur}")) return 0 ;; --helm-repo-test) @@ -6096,6 +8071,52 @@ _stackablectl() { COMPREPLY=($(compgen -W "oci repo" -- "${cur}")) return 0 ;; + --listener-class-preset) + COMPREPLY=($(compgen -W "none stable-nodes ephemeral-nodes" -- "${cur}")) + return 0 + ;; + *) + COMPREPLY=() + ;; + esac + COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) + return 0 + ;; + stackablectl__version__help) + opts="check help" + if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then + COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) + return 0 + fi + case "${prev}" in + *) + COMPREPLY=() + ;; + esac + COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) + return 0 + ;; + stackablectl__version__help__check) + opts="" + if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then + COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) + return 0 + fi + case "${prev}" in + *) + COMPREPLY=() + ;; + esac + COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) + return 0 + ;; + stackablectl__version__help__help) + opts="" + if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then + COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) + return 0 + fi + case "${prev}" in *) COMPREPLY=() ;; diff --git a/extra/completions/stackablectl.elv b/extra/completions/stackablectl.elv index 2e55ca7d..7ff8743c 100644 --- a/extra/completions/stackablectl.elv +++ b/extra/completions/stackablectl.elv @@ -26,10 +26,13 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand --stack-file 'Provide one or more additional (custom) stack file(s)' cand -r 'Provide one or more additional (custom) release file(s)' cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' cand --helm-repo-stable 'Provide a custom Helm stable repository URL' cand --helm-repo-test 'Provide a custom Helm test repository URL' cand --helm-repo-dev 'Provide a custom Helm dev repository URL' cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' cand --no-cache 'Do not cache the remote (default) demo, stack and release files' cand -h 'Print help (see more with ''--help'')' cand --help 'Print help (see more with ''--help'')' @@ -43,6 +46,7 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand completions 'Generate shell completions for this tool' cand cache 'Interact with locally cached files' cand experimental-debug 'EXPERIMENTAL: Launch a debug container for a Pod' + cand version 'Retrieve version data of the stackablectl installation' cand help 'Print this message or the help of the given subcommand(s)' } &'stackablectl;operator'= { @@ -54,10 +58,13 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand --stack-file 'Provide one or more additional (custom) stack file(s)' cand -r 'Provide one or more additional (custom) release file(s)' cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' cand --helm-repo-stable 'Provide a custom Helm stable repository URL' cand --helm-repo-test 'Provide a custom Helm test repository URL' cand --helm-repo-dev 'Provide a custom Helm dev repository URL' cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' cand --no-cache 'Do not cache the remote (default) demo, stack and release files' cand -h 'Print help (see more with ''--help'')' cand --help 'Print help (see more with ''--help'')' @@ -81,10 +88,13 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand --stack-file 'Provide one or more additional (custom) stack file(s)' cand -r 'Provide one or more additional (custom) release file(s)' cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' cand --helm-repo-stable 'Provide a custom Helm stable repository URL' cand --helm-repo-test 'Provide a custom Helm test repository URL' cand --helm-repo-dev 'Provide a custom Helm dev repository URL' cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' cand --no-cache 'Do not cache the remote (default) demo, stack and release files' cand -h 'Print help (see more with ''--help'')' cand --help 'Print help (see more with ''--help'')' @@ -102,10 +112,13 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand --stack-file 'Provide one or more additional (custom) stack file(s)' cand -r 'Provide one or more additional (custom) release file(s)' cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' cand --helm-repo-stable 'Provide a custom Helm stable repository URL' cand --helm-repo-test 'Provide a custom Helm test repository URL' cand --helm-repo-dev 'Provide a custom Helm dev repository URL' cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' cand --no-cache 'Do not cache the remote (default) demo, stack and release files' cand -h 'Print help (see more with ''--help'')' cand --help 'Print help (see more with ''--help'')' @@ -128,10 +141,13 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand --stack-file 'Provide one or more additional (custom) stack file(s)' cand -r 'Provide one or more additional (custom) release file(s)' cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' cand --helm-repo-stable 'Provide a custom Helm stable repository URL' cand --helm-repo-test 'Provide a custom Helm test repository URL' cand --helm-repo-dev 'Provide a custom Helm dev repository URL' cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' cand --no-cache 'Do not cache the remote (default) demo, stack and release files' cand -h 'Print help (see more with ''--help'')' cand --help 'Print help (see more with ''--help'')' @@ -149,10 +165,13 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand --stack-file 'Provide one or more additional (custom) stack file(s)' cand -r 'Provide one or more additional (custom) release file(s)' cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' cand --helm-repo-stable 'Provide a custom Helm stable repository URL' cand --helm-repo-test 'Provide a custom Helm test repository URL' cand --helm-repo-dev 'Provide a custom Helm dev repository URL' cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' cand --no-cache 'Do not cache the remote (default) demo, stack and release files' cand -h 'Print help (see more with ''--help'')' cand --help 'Print help (see more with ''--help'')' @@ -172,10 +191,13 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand --stack-file 'Provide one or more additional (custom) stack file(s)' cand -r 'Provide one or more additional (custom) release file(s)' cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' cand --helm-repo-stable 'Provide a custom Helm stable repository URL' cand --helm-repo-test 'Provide a custom Helm test repository URL' cand --helm-repo-dev 'Provide a custom Helm dev repository URL' cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' cand --no-cache 'Do not cache the remote (default) demo, stack and release files' cand -h 'Print help (see more with ''--help'')' cand --help 'Print help (see more with ''--help'')' @@ -211,10 +233,13 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand --stack-file 'Provide one or more additional (custom) stack file(s)' cand -r 'Provide one or more additional (custom) release file(s)' cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' cand --helm-repo-stable 'Provide a custom Helm stable repository URL' cand --helm-repo-test 'Provide a custom Helm test repository URL' cand --helm-repo-dev 'Provide a custom Helm dev repository URL' cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' cand --no-cache 'Do not cache the remote (default) demo, stack and release files' cand -h 'Print help (see more with ''--help'')' cand --help 'Print help (see more with ''--help'')' @@ -238,10 +263,13 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand --stack-file 'Provide one or more additional (custom) stack file(s)' cand -r 'Provide one or more additional (custom) release file(s)' cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' cand --helm-repo-stable 'Provide a custom Helm stable repository URL' cand --helm-repo-test 'Provide a custom Helm test repository URL' cand --helm-repo-dev 'Provide a custom Helm dev repository URL' cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' cand --no-cache 'Do not cache the remote (default) demo, stack and release files' cand -h 'Print help (see more with ''--help'')' cand --help 'Print help (see more with ''--help'')' @@ -259,10 +287,13 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand --stack-file 'Provide one or more additional (custom) stack file(s)' cand -r 'Provide one or more additional (custom) release file(s)' cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' cand --helm-repo-stable 'Provide a custom Helm stable repository URL' cand --helm-repo-test 'Provide a custom Helm test repository URL' cand --helm-repo-dev 'Provide a custom Helm dev repository URL' cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' cand --no-cache 'Do not cache the remote (default) demo, stack and release files' cand -h 'Print help (see more with ''--help'')' cand --help 'Print help (see more with ''--help'')' @@ -289,10 +320,13 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand --stack-file 'Provide one or more additional (custom) stack file(s)' cand -r 'Provide one or more additional (custom) release file(s)' cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' cand --helm-repo-stable 'Provide a custom Helm stable repository URL' cand --helm-repo-test 'Provide a custom Helm test repository URL' cand --helm-repo-dev 'Provide a custom Helm dev repository URL' cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' cand --no-cache 'Do not cache the remote (default) demo, stack and release files' cand -h 'Print help (see more with ''--help'')' cand --help 'Print help (see more with ''--help'')' @@ -310,10 +344,13 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand --stack-file 'Provide one or more additional (custom) stack file(s)' cand -r 'Provide one or more additional (custom) release file(s)' cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' cand --helm-repo-stable 'Provide a custom Helm stable repository URL' cand --helm-repo-test 'Provide a custom Helm test repository URL' cand --helm-repo-dev 'Provide a custom Helm dev repository URL' cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' cand --no-cache 'Do not cache the remote (default) demo, stack and release files' cand -h 'Print help (see more with ''--help'')' cand --help 'Print help (see more with ''--help'')' @@ -335,10 +372,13 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand --stack-file 'Provide one or more additional (custom) stack file(s)' cand -r 'Provide one or more additional (custom) release file(s)' cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' cand --helm-repo-stable 'Provide a custom Helm stable repository URL' cand --helm-repo-test 'Provide a custom Helm test repository URL' cand --helm-repo-dev 'Provide a custom Helm dev repository URL' cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' cand --no-cache 'Do not cache the remote (default) demo, stack and release files' cand -h 'Print help (see more with ''--help'')' cand --help 'Print help (see more with ''--help'')' @@ -375,10 +415,13 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand --stack-file 'Provide one or more additional (custom) stack file(s)' cand -r 'Provide one or more additional (custom) release file(s)' cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' cand --helm-repo-stable 'Provide a custom Helm stable repository URL' cand --helm-repo-test 'Provide a custom Helm test repository URL' cand --helm-repo-dev 'Provide a custom Helm dev repository URL' cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' cand --no-cache 'Do not cache the remote (default) demo, stack and release files' cand -h 'Print help (see more with ''--help'')' cand --help 'Print help (see more with ''--help'')' @@ -387,6 +430,7 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand list 'List available stacks' cand describe 'Describe a specific stack' cand install 'Install a specific stack' + cand uninstall 'Uninstall a specific stack. Caution: This will delete the provided stack namespace, the operators and provided operator namespace, and all Stackable CRDs' cand help 'Print this message or the help of the given subcommand(s)' } &'stackablectl;stack;list'= { @@ -401,10 +445,13 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand --stack-file 'Provide one or more additional (custom) stack file(s)' cand -r 'Provide one or more additional (custom) release file(s)' cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' cand --helm-repo-stable 'Provide a custom Helm stable repository URL' cand --helm-repo-test 'Provide a custom Helm test repository URL' cand --helm-repo-dev 'Provide a custom Helm dev repository URL' cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' cand --no-cache 'Do not cache the remote (default) demo, stack and release files' cand -h 'Print help (see more with ''--help'')' cand --help 'Print help (see more with ''--help'')' @@ -423,10 +470,13 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand --stack-file 'Provide one or more additional (custom) stack file(s)' cand -r 'Provide one or more additional (custom) release file(s)' cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' cand --helm-repo-stable 'Provide a custom Helm stable repository URL' cand --helm-repo-test 'Provide a custom Helm test repository URL' cand --helm-repo-dev 'Provide a custom Helm dev repository URL' cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' cand --no-cache 'Do not cache the remote (default) demo, stack and release files' cand -h 'Print help (see more with ''--help'')' cand --help 'Print help (see more with ''--help'')' @@ -455,11 +505,49 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand --stack-file 'Provide one or more additional (custom) stack file(s)' cand -r 'Provide one or more additional (custom) release file(s)' cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' cand --helm-repo-stable 'Provide a custom Helm stable repository URL' cand --helm-repo-test 'Provide a custom Helm test repository URL' cand --helm-repo-dev 'Provide a custom Helm dev repository URL' cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' cand --skip-release 'Skip the installation of the release during the stack install process' + cand -y 'Assume "yes" as answer to all prompts and run non-interactively' + cand --assume-yes 'Assume "yes" as answer to all prompts and run non-interactively' + cand --yes 'Assume "yes" as answer to all prompts and run non-interactively' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + } + &'stackablectl;stack;uninstall'= { + cand --operator-namespace 'Namespace where the operators are deployed' + cand --operator-ns 'Namespace where the operators are deployed' + cand -n 'Namespace where the stacks or demos are deployed' + cand --namespace 'Namespace where the stacks or demos are deployed' + cand --product-ns 'Namespace where the stacks or demos are deployed' + cand --release 'Target a specific Stackable release' + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' + cand --skip-operators-and-crds 'Skip uninstalling Stackable operators and CRDs' + cand -y 'Assume "yes" as answer to all prompts and run non-interactively' + cand --assume-yes 'Assume "yes" as answer to all prompts and run non-interactively' + cand --yes 'Assume "yes" as answer to all prompts and run non-interactively' cand --no-cache 'Do not cache the remote (default) demo, stack and release files' cand -h 'Print help (see more with ''--help'')' cand --help 'Print help (see more with ''--help'')' @@ -470,6 +558,7 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand list 'List available stacks' cand describe 'Describe a specific stack' cand install 'Install a specific stack' + cand uninstall 'Uninstall a specific stack. Caution: This will delete the provided stack namespace, the operators and provided operator namespace, and all Stackable CRDs' cand help 'Print this message or the help of the given subcommand(s)' } &'stackablectl;stack;help;list'= { @@ -478,6 +567,8 @@ set edit:completion:arg-completer[stackablectl] = {|@words| } &'stackablectl;stack;help;install'= { } + &'stackablectl;stack;help;uninstall'= { + } &'stackablectl;stack;help;help'= { } &'stackablectl;stacklet'= { @@ -489,10 +580,13 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand --stack-file 'Provide one or more additional (custom) stack file(s)' cand -r 'Provide one or more additional (custom) release file(s)' cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' cand --helm-repo-stable 'Provide a custom Helm stable repository URL' cand --helm-repo-test 'Provide a custom Helm test repository URL' cand --helm-repo-dev 'Provide a custom Helm dev repository URL' cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' cand --no-cache 'Do not cache the remote (default) demo, stack and release files' cand -h 'Print help (see more with ''--help'')' cand --help 'Print help (see more with ''--help'')' @@ -513,10 +607,13 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand --stack-file 'Provide one or more additional (custom) stack file(s)' cand -r 'Provide one or more additional (custom) release file(s)' cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' cand --helm-repo-stable 'Provide a custom Helm stable repository URL' cand --helm-repo-test 'Provide a custom Helm test repository URL' cand --helm-repo-dev 'Provide a custom Helm dev repository URL' cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' cand --no-cache 'Do not cache the remote (default) demo, stack and release files' cand -h 'Print help (see more with ''--help'')' cand --help 'Print help (see more with ''--help'')' @@ -539,10 +636,13 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand --stack-file 'Provide one or more additional (custom) stack file(s)' cand -r 'Provide one or more additional (custom) release file(s)' cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' cand --helm-repo-stable 'Provide a custom Helm stable repository URL' cand --helm-repo-test 'Provide a custom Helm test repository URL' cand --helm-repo-dev 'Provide a custom Helm dev repository URL' cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' cand --no-cache 'Do not cache the remote (default) demo, stack and release files' cand -h 'Print help (see more with ''--help'')' cand --help 'Print help (see more with ''--help'')' @@ -570,10 +670,13 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand --stack-file 'Provide one or more additional (custom) stack file(s)' cand -r 'Provide one or more additional (custom) release file(s)' cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' cand --helm-repo-stable 'Provide a custom Helm stable repository URL' cand --helm-repo-test 'Provide a custom Helm test repository URL' cand --helm-repo-dev 'Provide a custom Helm dev repository URL' cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' cand --no-cache 'Do not cache the remote (default) demo, stack and release files' cand -h 'Print help (see more with ''--help'')' cand --help 'Print help (see more with ''--help'')' @@ -582,6 +685,7 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand list 'List available demos' cand describe 'Print out detailed demo information' cand install 'Install a specific demo' + cand uninstall 'Uninstall a specific stack. Caution: This will delete the provided stack namespace, the operators and provided operator namespace, and all Stackable CRDs' cand help 'Print this message or the help of the given subcommand(s)' } &'stackablectl;demo;list'= { @@ -596,10 +700,13 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand --stack-file 'Provide one or more additional (custom) stack file(s)' cand -r 'Provide one or more additional (custom) release file(s)' cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' cand --helm-repo-stable 'Provide a custom Helm stable repository URL' cand --helm-repo-test 'Provide a custom Helm test repository URL' cand --helm-repo-dev 'Provide a custom Helm dev repository URL' cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' cand --no-cache 'Do not cache the remote (default) demo, stack and release files' cand -h 'Print help (see more with ''--help'')' cand --help 'Print help (see more with ''--help'')' @@ -618,10 +725,13 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand --stack-file 'Provide one or more additional (custom) stack file(s)' cand -r 'Provide one or more additional (custom) release file(s)' cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' cand --helm-repo-stable 'Provide a custom Helm stable repository URL' cand --helm-repo-test 'Provide a custom Helm test repository URL' cand --helm-repo-dev 'Provide a custom Helm dev repository URL' cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' cand --no-cache 'Do not cache the remote (default) demo, stack and release files' cand -h 'Print help (see more with ''--help'')' cand --help 'Print help (see more with ''--help'')' @@ -650,11 +760,49 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand --stack-file 'Provide one or more additional (custom) stack file(s)' cand -r 'Provide one or more additional (custom) release file(s)' cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' cand --helm-repo-stable 'Provide a custom Helm stable repository URL' cand --helm-repo-test 'Provide a custom Helm test repository URL' cand --helm-repo-dev 'Provide a custom Helm dev repository URL' cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' cand --skip-release 'Skip the installation of the release during the stack install process' + cand -y 'Assume "yes" as answer to all prompts and run non-interactively' + cand --assume-yes 'Assume "yes" as answer to all prompts and run non-interactively' + cand --yes 'Assume "yes" as answer to all prompts and run non-interactively' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + } + &'stackablectl;demo;uninstall'= { + cand --operator-namespace 'Namespace where the operators are deployed' + cand --operator-ns 'Namespace where the operators are deployed' + cand -n 'Namespace where the stacks or demos are deployed' + cand --namespace 'Namespace where the stacks or demos are deployed' + cand --product-ns 'Namespace where the stacks or demos are deployed' + cand --release 'Target a specific Stackable release' + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' + cand --skip-operators-and-crds 'Skip uninstalling Stackable operators and CRDs' + cand -y 'Assume "yes" as answer to all prompts and run non-interactively' + cand --assume-yes 'Assume "yes" as answer to all prompts and run non-interactively' + cand --yes 'Assume "yes" as answer to all prompts and run non-interactively' cand --no-cache 'Do not cache the remote (default) demo, stack and release files' cand -h 'Print help (see more with ''--help'')' cand --help 'Print help (see more with ''--help'')' @@ -665,6 +813,7 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand list 'List available demos' cand describe 'Print out detailed demo information' cand install 'Install a specific demo' + cand uninstall 'Uninstall a specific stack. Caution: This will delete the provided stack namespace, the operators and provided operator namespace, and all Stackable CRDs' cand help 'Print this message or the help of the given subcommand(s)' } &'stackablectl;demo;help;list'= { @@ -673,6 +822,8 @@ set edit:completion:arg-completer[stackablectl] = {|@words| } &'stackablectl;demo;help;install'= { } + &'stackablectl;demo;help;uninstall'= { + } &'stackablectl;demo;help;help'= { } &'stackablectl;completions'= { @@ -684,10 +835,13 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand --stack-file 'Provide one or more additional (custom) stack file(s)' cand -r 'Provide one or more additional (custom) release file(s)' cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' cand --helm-repo-stable 'Provide a custom Helm stable repository URL' cand --helm-repo-test 'Provide a custom Helm test repository URL' cand --helm-repo-dev 'Provide a custom Helm dev repository URL' cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' cand --no-cache 'Do not cache the remote (default) demo, stack and release files' cand -h 'Print help (see more with ''--help'')' cand --help 'Print help (see more with ''--help'')' @@ -709,10 +863,13 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand --stack-file 'Provide one or more additional (custom) stack file(s)' cand -r 'Provide one or more additional (custom) release file(s)' cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' cand --helm-repo-stable 'Provide a custom Helm stable repository URL' cand --helm-repo-test 'Provide a custom Helm test repository URL' cand --helm-repo-dev 'Provide a custom Helm dev repository URL' cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' cand --no-cache 'Do not cache the remote (default) demo, stack and release files' cand -h 'Print help (see more with ''--help'')' cand --help 'Print help (see more with ''--help'')' @@ -728,10 +885,13 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand --stack-file 'Provide one or more additional (custom) stack file(s)' cand -r 'Provide one or more additional (custom) release file(s)' cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' cand --helm-repo-stable 'Provide a custom Helm stable repository URL' cand --helm-repo-test 'Provide a custom Helm test repository URL' cand --helm-repo-dev 'Provide a custom Helm dev repository URL' cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' cand --no-cache 'Do not cache the remote (default) demo, stack and release files' cand -h 'Print help (see more with ''--help'')' cand --help 'Print help (see more with ''--help'')' @@ -747,10 +907,13 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand --stack-file 'Provide one or more additional (custom) stack file(s)' cand -r 'Provide one or more additional (custom) release file(s)' cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' cand --helm-repo-stable 'Provide a custom Helm stable repository URL' cand --helm-repo-test 'Provide a custom Helm test repository URL' cand --helm-repo-dev 'Provide a custom Helm dev repository URL' cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' cand --no-cache 'Do not cache the remote (default) demo, stack and release files' cand -h 'Print help (see more with ''--help'')' cand --help 'Print help (see more with ''--help'')' @@ -766,10 +929,13 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand --stack-file 'Provide one or more additional (custom) stack file(s)' cand -r 'Provide one or more additional (custom) release file(s)' cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' cand --helm-repo-stable 'Provide a custom Helm stable repository URL' cand --helm-repo-test 'Provide a custom Helm test repository URL' cand --helm-repo-dev 'Provide a custom Helm dev repository URL' cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' cand --no-cache 'Do not cache the remote (default) demo, stack and release files' cand -h 'Print help (see more with ''--help'')' cand --help 'Print help (see more with ''--help'')' @@ -785,10 +951,13 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand --stack-file 'Provide one or more additional (custom) stack file(s)' cand -r 'Provide one or more additional (custom) release file(s)' cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' cand --helm-repo-stable 'Provide a custom Helm stable repository URL' cand --helm-repo-test 'Provide a custom Helm test repository URL' cand --helm-repo-dev 'Provide a custom Helm dev repository URL' cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' cand --no-cache 'Do not cache the remote (default) demo, stack and release files' cand -h 'Print help (see more with ''--help'')' cand --help 'Print help (see more with ''--help'')' @@ -824,10 +993,13 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand --stack-file 'Provide one or more additional (custom) stack file(s)' cand -r 'Provide one or more additional (custom) release file(s)' cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' cand --helm-repo-stable 'Provide a custom Helm stable repository URL' cand --helm-repo-test 'Provide a custom Helm test repository URL' cand --helm-repo-dev 'Provide a custom Helm dev repository URL' cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' cand --no-cache 'Do not cache the remote (default) demo, stack and release files' cand -h 'Print help (see more with ''--help'')' cand --help 'Print help (see more with ''--help'')' @@ -846,10 +1018,13 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand --stack-file 'Provide one or more additional (custom) stack file(s)' cand -r 'Provide one or more additional (custom) release file(s)' cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' cand --helm-repo-stable 'Provide a custom Helm stable repository URL' cand --helm-repo-test 'Provide a custom Helm test repository URL' cand --helm-repo-dev 'Provide a custom Helm dev repository URL' cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' cand --no-cache 'Do not cache the remote (default) demo, stack and release files' cand -h 'Print help (see more with ''--help'')' cand --help 'Print help (see more with ''--help'')' @@ -865,10 +1040,13 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand --stack-file 'Provide one or more additional (custom) stack file(s)' cand -r 'Provide one or more additional (custom) release file(s)' cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' cand --helm-repo-stable 'Provide a custom Helm stable repository URL' cand --helm-repo-test 'Provide a custom Helm test repository URL' cand --helm-repo-dev 'Provide a custom Helm dev repository URL' cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' cand --old 'Only remove outdated files in the cache' cand --outdated 'Only remove outdated files in the cache' cand --no-cache 'Do not cache the remote (default) demo, stack and release files' @@ -902,15 +1080,72 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand --stack-file 'Provide one or more additional (custom) stack file(s)' cand -r 'Provide one or more additional (custom) release file(s)' cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + } + &'stackablectl;version'= { + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' cand --helm-repo-stable 'Provide a custom Helm stable repository URL' cand --helm-repo-test 'Provide a custom Helm test repository URL' cand --helm-repo-dev 'Provide a custom Helm dev repository URL' cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' cand --no-cache 'Do not cache the remote (default) demo, stack and release files' cand -h 'Print help (see more with ''--help'')' cand --help 'Print help (see more with ''--help'')' cand -V 'Print version' cand --version 'Print version' + cand check 'Check if there is a new version available' + cand help 'Print this message or the help of the given subcommand(s)' + } + &'stackablectl;version;check'= { + cand -l 'Log level this application uses' + cand --log-level 'Log level this application uses' + cand -d 'Provide one or more additional (custom) demo file(s)' + cand --demo-file 'Provide one or more additional (custom) demo file(s)' + cand -s 'Provide one or more additional (custom) stack file(s)' + cand --stack-file 'Provide one or more additional (custom) stack file(s)' + cand -r 'Provide one or more additional (custom) release file(s)' + cand --release-file 'Provide one or more additional (custom) release file(s)' + cand -f 'Path to a Helm values file that will be used for the installation of operators' + cand --operator-values 'Path to a Helm values file that will be used for the installation of operators' + cand --helm-repo-stable 'Provide a custom Helm stable repository URL' + cand --helm-repo-test 'Provide a custom Helm test repository URL' + cand --helm-repo-dev 'Provide a custom Helm dev repository URL' + cand --chart-source 'Source the charts from either a OCI registry or from index.yaml-based repositories' + cand --listener-class-preset 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' + cand --no-cache 'Do not cache the remote (default) demo, stack and release files' + cand -h 'Print help (see more with ''--help'')' + cand --help 'Print help (see more with ''--help'')' + cand -V 'Print version' + cand --version 'Print version' + } + &'stackablectl;version;help'= { + cand check 'Check if there is a new version available' + cand help 'Print this message or the help of the given subcommand(s)' + } + &'stackablectl;version;help;check'= { + } + &'stackablectl;version;help;help'= { } &'stackablectl;help'= { cand operator 'Interact with single operator instead of the full platform' @@ -921,6 +1156,7 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand completions 'Generate shell completions for this tool' cand cache 'Interact with locally cached files' cand experimental-debug 'EXPERIMENTAL: Launch a debug container for a Pod' + cand version 'Retrieve version data of the stackablectl installation' cand help 'Print this message or the help of the given subcommand(s)' } &'stackablectl;help;operator'= { @@ -961,6 +1197,7 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand list 'List available stacks' cand describe 'Describe a specific stack' cand install 'Install a specific stack' + cand uninstall 'Uninstall a specific stack. Caution: This will delete the provided stack namespace, the operators and provided operator namespace, and all Stackable CRDs' } &'stackablectl;help;stack;list'= { } @@ -968,6 +1205,8 @@ set edit:completion:arg-completer[stackablectl] = {|@words| } &'stackablectl;help;stack;install'= { } + &'stackablectl;help;stack;uninstall'= { + } &'stackablectl;help;stacklet'= { cand credentials 'Display credentials for a stacklet' cand list 'List deployed stacklets' @@ -980,6 +1219,7 @@ set edit:completion:arg-completer[stackablectl] = {|@words| cand list 'List available demos' cand describe 'Print out detailed demo information' cand install 'Install a specific demo' + cand uninstall 'Uninstall a specific stack. Caution: This will delete the provided stack namespace, the operators and provided operator namespace, and all Stackable CRDs' } &'stackablectl;help;demo;list'= { } @@ -987,6 +1227,8 @@ set edit:completion:arg-completer[stackablectl] = {|@words| } &'stackablectl;help;demo;install'= { } + &'stackablectl;help;demo;uninstall'= { + } &'stackablectl;help;completions'= { cand bash 'Generate shell completions for Bash' cand elvish 'Generate shell completions for Elvish' @@ -1014,6 +1256,11 @@ set edit:completion:arg-completer[stackablectl] = {|@words| } &'stackablectl;help;experimental-debug'= { } + &'stackablectl;help;version'= { + cand check 'Check if there is a new version available' + } + &'stackablectl;help;version;check'= { + } &'stackablectl;help;help'= { } ] diff --git a/extra/completions/stackablectl.fish b/extra/completions/stackablectl.fish index 28cb3fa0..d213a694 100644 --- a/extra/completions/stackablectl.fish +++ b/extra/completions/stackablectl.fish @@ -1,6 +1,6 @@ # Print an optspec for argparse to handle cmd's options that are independent of any subcommand. function __fish_stackablectl_global_optspecs - string join \n l/log-level= no-cache d/demo-file= s/stack-file= r/release-file= helm-repo-stable= helm-repo-test= helm-repo-dev= chart-source= h/help V/version + string join \n l/log-level= no-cache d/demo-file= s/stack-file= r/release-file= f/operator-values= helm-repo-stable= helm-repo-test= helm-repo-dev= chart-source= listener-class-preset= h/help V/version end function __fish_stackablectl_needs_command @@ -28,10 +28,15 @@ complete -c stackablectl -n "__fish_stackablectl_needs_command" -s l -l log-leve complete -c stackablectl -n "__fish_stackablectl_needs_command" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_needs_command" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_needs_command" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_needs_command" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F complete -c stackablectl -n "__fish_stackablectl_needs_command" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_needs_command" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_needs_command" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_needs_command" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "{oci\t'OCI registry',repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'}" +complete -c stackablectl -n "__fish_stackablectl_needs_command" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_needs_command" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" complete -c stackablectl -n "__fish_stackablectl_needs_command" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' complete -c stackablectl -n "__fish_stackablectl_needs_command" -s h -l help -d 'Print help (see more with \'--help\')' complete -c stackablectl -n "__fish_stackablectl_needs_command" -s V -l version -d 'Print version' @@ -43,15 +48,21 @@ complete -c stackablectl -n "__fish_stackablectl_needs_command" -f -a "demo" -d complete -c stackablectl -n "__fish_stackablectl_needs_command" -f -a "completions" -d 'Generate shell completions for this tool' complete -c stackablectl -n "__fish_stackablectl_needs_command" -f -a "cache" -d 'Interact with locally cached files' complete -c stackablectl -n "__fish_stackablectl_needs_command" -f -a "experimental-debug" -d 'EXPERIMENTAL: Launch a debug container for a Pod' +complete -c stackablectl -n "__fish_stackablectl_needs_command" -f -a "version" -d 'Retrieve version data of the stackablectl installation' complete -c stackablectl -n "__fish_stackablectl_needs_command" -f -a "help" -d 'Print this message or the help of the given subcommand(s)' complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and not __fish_seen_subcommand_from list describe install uninstall installed help" -s l -l log-level -d 'Log level this application uses' -r complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and not __fish_seen_subcommand_from list describe install uninstall installed help" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and not __fish_seen_subcommand_from list describe install uninstall installed help" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and not __fish_seen_subcommand_from list describe install uninstall installed help" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and not __fish_seen_subcommand_from list describe install uninstall installed help" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and not __fish_seen_subcommand_from list describe install uninstall installed help" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and not __fish_seen_subcommand_from list describe install uninstall installed help" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and not __fish_seen_subcommand_from list describe install uninstall installed help" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and not __fish_seen_subcommand_from list describe install uninstall installed help" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "{oci\t'OCI registry',repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and not __fish_seen_subcommand_from list describe install uninstall installed help" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and not __fish_seen_subcommand_from list describe install uninstall installed help" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and not __fish_seen_subcommand_from list describe install uninstall installed help" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and not __fish_seen_subcommand_from list describe install uninstall installed help" -s h -l help -d 'Print help (see more with \'--help\')' complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and not __fish_seen_subcommand_from list describe install uninstall installed help" -s V -l version -d 'Print version' @@ -61,32 +72,49 @@ complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and not __fish_seen_subcommand_from list describe install uninstall installed help" -f -a "uninstall" -d 'Uninstall one or more operators' complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and not __fish_seen_subcommand_from list describe install uninstall installed help" -f -a "installed" -d 'List installed operators' complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and not __fish_seen_subcommand_from list describe install uninstall installed help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from list" -s o -l output -r -f -a "{plain\t'Print output formatted as plain text',table\t'Print output formatted as a table',json\t'Print output formatted as JSON',yaml\t'Print output formatted as YAML'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from list" -s o -l output -r -f -a "plain\t'Print output formatted as plain text' +table\t'Print output formatted as a table' +json\t'Print output formatted as JSON' +yaml\t'Print output formatted as YAML'" complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from list" -s l -l log-level -d 'Log level this application uses' -r complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from list" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from list" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from list" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from list" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from list" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from list" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from list" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from list" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "{oci\t'OCI registry',repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from list" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from list" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from list" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from list" -s h -l help -d 'Print help (see more with \'--help\')' complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from list" -s V -l version -d 'Print version' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from describe" -s o -l output -r -f -a "{plain\t'Print output formatted as plain text',table\t'Print output formatted as a table',json\t'Print output formatted as JSON',yaml\t'Print output formatted as YAML'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from describe" -s o -l output -r -f -a "plain\t'Print output formatted as plain text' +table\t'Print output formatted as a table' +json\t'Print output formatted as JSON' +yaml\t'Print output formatted as YAML'" complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from describe" -s l -l log-level -d 'Log level this application uses' -r complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from describe" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from describe" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from describe" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from describe" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from describe" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from describe" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from describe" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from describe" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "{oci\t'OCI registry',repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from describe" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from describe" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from describe" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from describe" -s h -l help -d 'Print help (see more with \'--help\')' complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from describe" -s V -l version -d 'Print version' complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from install" -l operator-namespace -l operator-ns -d 'Namespace in the cluster used to deploy the operators' -r -complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from install" -s c -l cluster -d 'Type of local cluster to use for testing' -r -f -a "{kind\t'Use a kind cluster, see ',minikube\t'Use a minikube cluster'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from install" -s c -l cluster -d 'Type of local cluster to use for testing' -r -f -a "kind\t'Use a kind cluster, see ' +minikube\t'Use a minikube cluster'" complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from install" -l cluster-name -d 'Name of the local cluster' -r complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from install" -l cluster-nodes -d 'Number of total nodes in the local cluster' -r complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from install" -l cluster-cp-nodes -d 'Number of control plane nodes in the local cluster' -r @@ -94,10 +122,15 @@ complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from install" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from install" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from install" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from install" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from install" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from install" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from install" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from install" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "{oci\t'OCI registry',repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from install" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from install" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from install" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from install" -s h -l help -d 'Print help (see more with \'--help\')' complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from install" -s V -l version -d 'Print version' @@ -106,23 +139,36 @@ complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from uninstall" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from uninstall" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from uninstall" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from uninstall" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from uninstall" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from uninstall" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from uninstall" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from uninstall" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "{oci\t'OCI registry',repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from uninstall" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from uninstall" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from uninstall" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from uninstall" -s h -l help -d 'Print help (see more with \'--help\')' complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from uninstall" -s V -l version -d 'Print version' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from installed" -s o -l output -r -f -a "{plain\t'Print output formatted as plain text',table\t'Print output formatted as a table',json\t'Print output formatted as JSON',yaml\t'Print output formatted as YAML'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from installed" -s o -l output -r -f -a "plain\t'Print output formatted as plain text' +table\t'Print output formatted as a table' +json\t'Print output formatted as JSON' +yaml\t'Print output formatted as YAML'" complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from installed" -l operator-namespace -l operator-ns -d 'Namespace in the cluster used to deploy the operators' -r complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from installed" -s l -l log-level -d 'Log level this application uses' -r complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from installed" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from installed" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from installed" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from installed" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from installed" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from installed" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from installed" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from installed" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "{oci\t'OCI registry',repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from installed" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from installed" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from installed" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from installed" -s h -l help -d 'Print help (see more with \'--help\')' complete -c stackablectl -n "__fish_stackablectl_using_subcommand operator; and __fish_seen_subcommand_from installed" -s V -l version -d 'Print version' @@ -136,10 +182,15 @@ complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and n complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and not __fish_seen_subcommand_from list describe install uninstall upgrade help" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and not __fish_seen_subcommand_from list describe install uninstall upgrade help" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and not __fish_seen_subcommand_from list describe install uninstall upgrade help" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and not __fish_seen_subcommand_from list describe install uninstall upgrade help" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and not __fish_seen_subcommand_from list describe install uninstall upgrade help" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and not __fish_seen_subcommand_from list describe install uninstall upgrade help" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and not __fish_seen_subcommand_from list describe install uninstall upgrade help" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and not __fish_seen_subcommand_from list describe install uninstall upgrade help" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "{oci\t'OCI registry',repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and not __fish_seen_subcommand_from list describe install uninstall upgrade help" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and not __fish_seen_subcommand_from list describe install uninstall upgrade help" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and not __fish_seen_subcommand_from list describe install uninstall upgrade help" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and not __fish_seen_subcommand_from list describe install uninstall upgrade help" -s h -l help -d 'Print help (see more with \'--help\')' complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and not __fish_seen_subcommand_from list describe install uninstall upgrade help" -s V -l version -d 'Print version' @@ -149,34 +200,51 @@ complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and n complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and not __fish_seen_subcommand_from list describe install uninstall upgrade help" -f -a "uninstall" -d 'Uninstall a release' complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and not __fish_seen_subcommand_from list describe install uninstall upgrade help" -f -a "upgrade" -d 'Upgrade a release' complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and not __fish_seen_subcommand_from list describe install uninstall upgrade help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from list" -s o -l output -r -f -a "{plain\t'Print output formatted as plain text',table\t'Print output formatted as a table',json\t'Print output formatted as JSON',yaml\t'Print output formatted as YAML'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from list" -s o -l output -r -f -a "plain\t'Print output formatted as plain text' +table\t'Print output formatted as a table' +json\t'Print output formatted as JSON' +yaml\t'Print output formatted as YAML'" complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from list" -s l -l log-level -d 'Log level this application uses' -r complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from list" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from list" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from list" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from list" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from list" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from list" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from list" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from list" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "{oci\t'OCI registry',repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from list" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from list" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from list" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from list" -s h -l help -d 'Print help (see more with \'--help\')' complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from list" -s V -l version -d 'Print version' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from describe" -s o -l output -r -f -a "{plain\t'Print output formatted as plain text',table\t'Print output formatted as a table',json\t'Print output formatted as JSON',yaml\t'Print output formatted as YAML'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from describe" -s o -l output -r -f -a "plain\t'Print output formatted as plain text' +table\t'Print output formatted as a table' +json\t'Print output formatted as JSON' +yaml\t'Print output formatted as YAML'" complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from describe" -s l -l log-level -d 'Log level this application uses' -r complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from describe" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from describe" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from describe" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from describe" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from describe" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from describe" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from describe" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from describe" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "{oci\t'OCI registry',repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from describe" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from describe" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from describe" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from describe" -s h -l help -d 'Print help (see more with \'--help\')' complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from describe" -s V -l version -d 'Print version' complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from install" -s i -l include -d 'Whitelist of product operators to install' -r complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from install" -s e -l exclude -d 'Blacklist of product operators to install' -r complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from install" -l operator-namespace -l operator-ns -d 'Namespace in the cluster used to deploy the operators' -r -complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from install" -s c -l cluster -d 'Type of local cluster to use for testing' -r -f -a "{kind\t'Use a kind cluster, see ',minikube\t'Use a minikube cluster'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from install" -s c -l cluster -d 'Type of local cluster to use for testing' -r -f -a "kind\t'Use a kind cluster, see ' +minikube\t'Use a minikube cluster'" complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from install" -l cluster-name -d 'Name of the local cluster' -r complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from install" -l cluster-nodes -d 'Number of total nodes in the local cluster' -r complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from install" -l cluster-cp-nodes -d 'Number of control plane nodes in the local cluster' -r @@ -184,10 +252,15 @@ complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and _ complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from install" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from install" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from install" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from install" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from install" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from install" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from install" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from install" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "{oci\t'OCI registry',repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from install" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from install" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from install" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from install" -s h -l help -d 'Print help (see more with \'--help\')' complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from install" -s V -l version -d 'Print version' @@ -196,10 +269,15 @@ complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and _ complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from uninstall" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from uninstall" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from uninstall" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from uninstall" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from uninstall" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from uninstall" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from uninstall" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from uninstall" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "{oci\t'OCI registry',repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from uninstall" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from uninstall" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from uninstall" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from uninstall" -s h -l help -d 'Print help (see more with \'--help\')' complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from uninstall" -s V -l version -d 'Print version' @@ -210,10 +288,15 @@ complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and _ complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from upgrade" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from upgrade" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from upgrade" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from upgrade" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from upgrade" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from upgrade" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from upgrade" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from upgrade" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "{oci\t'OCI registry',repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from upgrade" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from upgrade" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from upgrade" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from upgrade" -s h -l help -d 'Print help (see more with \'--help\')' complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from upgrade" -s V -l version -d 'Print version' @@ -223,51 +306,74 @@ complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and _ complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from help" -f -a "uninstall" -d 'Uninstall a release' complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from help" -f -a "upgrade" -d 'Upgrade a release' complete -c stackablectl -n "__fish_stackablectl_using_subcommand release; and __fish_seen_subcommand_from help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and not __fish_seen_subcommand_from list describe install help" -l release -d 'Target a specific Stackable release' -r -complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and not __fish_seen_subcommand_from list describe install help" -s l -l log-level -d 'Log level this application uses' -r -complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and not __fish_seen_subcommand_from list describe install help" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F -complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and not __fish_seen_subcommand_from list describe install help" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F -complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and not __fish_seen_subcommand_from list describe install help" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F -complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and not __fish_seen_subcommand_from list describe install help" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and not __fish_seen_subcommand_from list describe install help" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and not __fish_seen_subcommand_from list describe install help" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and not __fish_seen_subcommand_from list describe install help" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "{oci\t'OCI registry',repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'}" -complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and not __fish_seen_subcommand_from list describe install help" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and not __fish_seen_subcommand_from list describe install help" -s h -l help -d 'Print help (see more with \'--help\')' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and not __fish_seen_subcommand_from list describe install help" -s V -l version -d 'Print version' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and not __fish_seen_subcommand_from list describe install help" -f -a "list" -d 'List available stacks' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and not __fish_seen_subcommand_from list describe install help" -f -a "describe" -d 'Describe a specific stack' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and not __fish_seen_subcommand_from list describe install help" -f -a "install" -d 'Install a specific stack' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and not __fish_seen_subcommand_from list describe install help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from list" -s o -l output -r -f -a "{plain\t'Print output formatted as plain text',table\t'Print output formatted as a table',json\t'Print output formatted as JSON',yaml\t'Print output formatted as YAML'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and not __fish_seen_subcommand_from list describe install uninstall help" -l release -d 'Target a specific Stackable release' -r +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and not __fish_seen_subcommand_from list describe install uninstall help" -s l -l log-level -d 'Log level this application uses' -r +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and not __fish_seen_subcommand_from list describe install uninstall help" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and not __fish_seen_subcommand_from list describe install uninstall help" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and not __fish_seen_subcommand_from list describe install uninstall help" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and not __fish_seen_subcommand_from list describe install uninstall help" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and not __fish_seen_subcommand_from list describe install uninstall help" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and not __fish_seen_subcommand_from list describe install uninstall help" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and not __fish_seen_subcommand_from list describe install uninstall help" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and not __fish_seen_subcommand_from list describe install uninstall help" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and not __fish_seen_subcommand_from list describe install uninstall help" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and not __fish_seen_subcommand_from list describe install uninstall help" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and not __fish_seen_subcommand_from list describe install uninstall help" -s h -l help -d 'Print help (see more with \'--help\')' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and not __fish_seen_subcommand_from list describe install uninstall help" -s V -l version -d 'Print version' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and not __fish_seen_subcommand_from list describe install uninstall help" -f -a "list" -d 'List available stacks' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and not __fish_seen_subcommand_from list describe install uninstall help" -f -a "describe" -d 'Describe a specific stack' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and not __fish_seen_subcommand_from list describe install uninstall help" -f -a "install" -d 'Install a specific stack' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and not __fish_seen_subcommand_from list describe install uninstall help" -f -a "uninstall" -d 'Uninstall a specific stack. Caution: This will delete the provided stack namespace, the operators and provided operator namespace, and all Stackable CRDs' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and not __fish_seen_subcommand_from list describe install uninstall help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from list" -s o -l output -r -f -a "plain\t'Print output formatted as plain text' +table\t'Print output formatted as a table' +json\t'Print output formatted as JSON' +yaml\t'Print output formatted as YAML'" complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from list" -l release -d 'Target a specific Stackable release' -r complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from list" -s l -l log-level -d 'Log level this application uses' -r complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from list" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from list" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from list" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from list" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from list" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from list" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from list" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from list" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "{oci\t'OCI registry',repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from list" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from list" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from list" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from list" -s h -l help -d 'Print help (see more with \'--help\')' complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from list" -s V -l version -d 'Print version' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from describe" -s o -l output -r -f -a "{plain\t'Print output formatted as plain text',table\t'Print output formatted as a table',json\t'Print output formatted as JSON',yaml\t'Print output formatted as YAML'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from describe" -s o -l output -r -f -a "plain\t'Print output formatted as plain text' +table\t'Print output formatted as a table' +json\t'Print output formatted as JSON' +yaml\t'Print output formatted as YAML'" complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from describe" -l release -d 'Target a specific Stackable release' -r complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from describe" -s l -l log-level -d 'Log level this application uses' -r complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from describe" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from describe" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from describe" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from describe" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from describe" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from describe" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from describe" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from describe" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "{oci\t'OCI registry',repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from describe" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from describe" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from describe" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from describe" -s h -l help -d 'Print help (see more with \'--help\')' complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from describe" -s V -l version -d 'Print version' complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from install" -l stack-parameters -d 'List of parameters to use when installing the stack' -r complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from install" -l parameters -d 'List of parameters to use when installing the stack' -r -complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from install" -s c -l cluster -d 'Type of local cluster to use for testing' -r -f -a "{kind\t'Use a kind cluster, see ',minikube\t'Use a minikube cluster'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from install" -s c -l cluster -d 'Type of local cluster to use for testing' -r -f -a "kind\t'Use a kind cluster, see ' +minikube\t'Use a minikube cluster'" complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from install" -l cluster-name -d 'Name of the local cluster' -r complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from install" -l cluster-nodes -d 'Number of total nodes in the local cluster' -r complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from install" -l cluster-cp-nodes -d 'Number of control plane nodes in the local cluster' -r @@ -278,26 +384,59 @@ complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __f complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from install" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from install" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from install" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from install" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from install" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from install" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from install" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from install" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "{oci\t'OCI registry',repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from install" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from install" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from install" -l skip-release -d 'Skip the installation of the release during the stack install process' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from install" -s y -l assume-yes -l yes -d 'Assume "yes" as answer to all prompts and run non-interactively' complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from install" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from install" -s h -l help -d 'Print help (see more with \'--help\')' complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from install" -s V -l version -d 'Print version' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from uninstall" -l operator-namespace -l operator-ns -d 'Namespace where the operators are deployed' -r +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from uninstall" -s n -l namespace -l product-ns -d 'Namespace where the stacks or demos are deployed' -r +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from uninstall" -l release -d 'Target a specific Stackable release' -r +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from uninstall" -s l -l log-level -d 'Log level this application uses' -r +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from uninstall" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from uninstall" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from uninstall" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from uninstall" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from uninstall" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from uninstall" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from uninstall" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from uninstall" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from uninstall" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from uninstall" -l skip-operators-and-crds -d 'Skip uninstalling Stackable operators and CRDs' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from uninstall" -s y -l assume-yes -l yes -d 'Assume "yes" as answer to all prompts and run non-interactively' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from uninstall" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from uninstall" -s h -l help -d 'Print help (see more with \'--help\')' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from uninstall" -s V -l version -d 'Print version' complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from help" -f -a "list" -d 'List available stacks' complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from help" -f -a "describe" -d 'Describe a specific stack' complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from help" -f -a "install" -d 'Install a specific stack' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from help" -f -a "uninstall" -d 'Uninstall a specific stack. Caution: This will delete the provided stack namespace, the operators and provided operator namespace, and all Stackable CRDs' complete -c stackablectl -n "__fish_stackablectl_using_subcommand stack; and __fish_seen_subcommand_from help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)' complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and not __fish_seen_subcommand_from credentials list help" -s l -l log-level -d 'Log level this application uses' -r complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and not __fish_seen_subcommand_from credentials list help" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and not __fish_seen_subcommand_from credentials list help" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and not __fish_seen_subcommand_from credentials list help" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and not __fish_seen_subcommand_from credentials list help" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and not __fish_seen_subcommand_from credentials list help" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and not __fish_seen_subcommand_from credentials list help" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and not __fish_seen_subcommand_from credentials list help" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and not __fish_seen_subcommand_from credentials list help" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "{oci\t'OCI registry',repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and not __fish_seen_subcommand_from credentials list help" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and not __fish_seen_subcommand_from credentials list help" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and not __fish_seen_subcommand_from credentials list help" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and not __fish_seen_subcommand_from credentials list help" -s h -l help -d 'Print help (see more with \'--help\')' complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and not __fish_seen_subcommand_from credentials list help" -s V -l version -d 'Print version' @@ -309,75 +448,111 @@ complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and __fish_seen_subcommand_from credentials" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and __fish_seen_subcommand_from credentials" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and __fish_seen_subcommand_from credentials" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and __fish_seen_subcommand_from credentials" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and __fish_seen_subcommand_from credentials" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and __fish_seen_subcommand_from credentials" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and __fish_seen_subcommand_from credentials" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and __fish_seen_subcommand_from credentials" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "{oci\t'OCI registry',repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and __fish_seen_subcommand_from credentials" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and __fish_seen_subcommand_from credentials" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and __fish_seen_subcommand_from credentials" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and __fish_seen_subcommand_from credentials" -s h -l help -d 'Print help (see more with \'--help\')' complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and __fish_seen_subcommand_from credentials" -s V -l version -d 'Print version' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and __fish_seen_subcommand_from list" -s o -l output -r -f -a "{plain\t'Print output formatted as plain text',table\t'Print output formatted as a table',json\t'Print output formatted as JSON',yaml\t'Print output formatted as YAML'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and __fish_seen_subcommand_from list" -s o -l output -r -f -a "plain\t'Print output formatted as plain text' +table\t'Print output formatted as a table' +json\t'Print output formatted as JSON' +yaml\t'Print output formatted as YAML'" complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and __fish_seen_subcommand_from list" -l operator-namespace -l operator-ns -d 'Namespace where the operators are deployed' -r complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and __fish_seen_subcommand_from list" -s n -l namespace -l product-ns -d 'Namespace where the stacks or demos are deployed' -r complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and __fish_seen_subcommand_from list" -s l -l log-level -d 'Log level this application uses' -r complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and __fish_seen_subcommand_from list" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and __fish_seen_subcommand_from list" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and __fish_seen_subcommand_from list" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and __fish_seen_subcommand_from list" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and __fish_seen_subcommand_from list" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and __fish_seen_subcommand_from list" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and __fish_seen_subcommand_from list" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and __fish_seen_subcommand_from list" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "{oci\t'OCI registry',repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and __fish_seen_subcommand_from list" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and __fish_seen_subcommand_from list" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and __fish_seen_subcommand_from list" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and __fish_seen_subcommand_from list" -s h -l help -d 'Print help (see more with \'--help\')' complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and __fish_seen_subcommand_from list" -s V -l version -d 'Print version' complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and __fish_seen_subcommand_from help" -f -a "credentials" -d 'Display credentials for a stacklet' complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and __fish_seen_subcommand_from help" -f -a "list" -d 'List deployed stacklets' complete -c stackablectl -n "__fish_stackablectl_using_subcommand stacklet; and __fish_seen_subcommand_from help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and not __fish_seen_subcommand_from list describe install help" -l release -d 'Target a specific Stackable release' -r -complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and not __fish_seen_subcommand_from list describe install help" -s l -l log-level -d 'Log level this application uses' -r -complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and not __fish_seen_subcommand_from list describe install help" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F -complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and not __fish_seen_subcommand_from list describe install help" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F -complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and not __fish_seen_subcommand_from list describe install help" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F -complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and not __fish_seen_subcommand_from list describe install help" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and not __fish_seen_subcommand_from list describe install help" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and not __fish_seen_subcommand_from list describe install help" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and not __fish_seen_subcommand_from list describe install help" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "{oci\t'OCI registry',repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'}" -complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and not __fish_seen_subcommand_from list describe install help" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and not __fish_seen_subcommand_from list describe install help" -s h -l help -d 'Print help (see more with \'--help\')' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and not __fish_seen_subcommand_from list describe install help" -s V -l version -d 'Print version' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and not __fish_seen_subcommand_from list describe install help" -f -a "list" -d 'List available demos' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and not __fish_seen_subcommand_from list describe install help" -f -a "describe" -d 'Print out detailed demo information' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and not __fish_seen_subcommand_from list describe install help" -f -a "install" -d 'Install a specific demo' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and not __fish_seen_subcommand_from list describe install help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from list" -s o -l output -r -f -a "{plain\t'Print output formatted as plain text',table\t'Print output formatted as a table',json\t'Print output formatted as JSON',yaml\t'Print output formatted as YAML'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and not __fish_seen_subcommand_from list describe install uninstall help" -l release -d 'Target a specific Stackable release' -r +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and not __fish_seen_subcommand_from list describe install uninstall help" -s l -l log-level -d 'Log level this application uses' -r +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and not __fish_seen_subcommand_from list describe install uninstall help" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and not __fish_seen_subcommand_from list describe install uninstall help" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and not __fish_seen_subcommand_from list describe install uninstall help" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and not __fish_seen_subcommand_from list describe install uninstall help" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and not __fish_seen_subcommand_from list describe install uninstall help" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and not __fish_seen_subcommand_from list describe install uninstall help" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and not __fish_seen_subcommand_from list describe install uninstall help" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and not __fish_seen_subcommand_from list describe install uninstall help" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and not __fish_seen_subcommand_from list describe install uninstall help" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and not __fish_seen_subcommand_from list describe install uninstall help" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and not __fish_seen_subcommand_from list describe install uninstall help" -s h -l help -d 'Print help (see more with \'--help\')' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and not __fish_seen_subcommand_from list describe install uninstall help" -s V -l version -d 'Print version' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and not __fish_seen_subcommand_from list describe install uninstall help" -f -a "list" -d 'List available demos' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and not __fish_seen_subcommand_from list describe install uninstall help" -f -a "describe" -d 'Print out detailed demo information' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and not __fish_seen_subcommand_from list describe install uninstall help" -f -a "install" -d 'Install a specific demo' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and not __fish_seen_subcommand_from list describe install uninstall help" -f -a "uninstall" -d 'Uninstall a specific stack. Caution: This will delete the provided stack namespace, the operators and provided operator namespace, and all Stackable CRDs' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and not __fish_seen_subcommand_from list describe install uninstall help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from list" -s o -l output -r -f -a "plain\t'Print output formatted as plain text' +table\t'Print output formatted as a table' +json\t'Print output formatted as JSON' +yaml\t'Print output formatted as YAML'" complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from list" -l release -d 'Target a specific Stackable release' -r complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from list" -s l -l log-level -d 'Log level this application uses' -r complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from list" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from list" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from list" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from list" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from list" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from list" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from list" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from list" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "{oci\t'OCI registry',repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from list" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from list" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from list" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from list" -s h -l help -d 'Print help (see more with \'--help\')' complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from list" -s V -l version -d 'Print version' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from describe" -s o -l output -r -f -a "{plain\t'Print output formatted as plain text',table\t'Print output formatted as a table',json\t'Print output formatted as JSON',yaml\t'Print output formatted as YAML'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from describe" -s o -l output -r -f -a "plain\t'Print output formatted as plain text' +table\t'Print output formatted as a table' +json\t'Print output formatted as JSON' +yaml\t'Print output formatted as YAML'" complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from describe" -l release -d 'Target a specific Stackable release' -r complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from describe" -s l -l log-level -d 'Log level this application uses' -r complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from describe" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from describe" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from describe" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from describe" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from describe" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from describe" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from describe" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from describe" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "{oci\t'OCI registry',repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from describe" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from describe" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from describe" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from describe" -s h -l help -d 'Print help (see more with \'--help\')' complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from describe" -s V -l version -d 'Print version' complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from install" -l stack-parameters -d 'List of parameters to use when installing the stack' -r complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from install" -l parameters -d 'List of parameters to use when installing the demo' -r -complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from install" -s c -l cluster -d 'Type of local cluster to use for testing' -r -f -a "{kind\t'Use a kind cluster, see ',minikube\t'Use a minikube cluster'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from install" -s c -l cluster -d 'Type of local cluster to use for testing' -r -f -a "kind\t'Use a kind cluster, see ' +minikube\t'Use a minikube cluster'" complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from install" -l cluster-name -d 'Name of the local cluster' -r complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from install" -l cluster-nodes -d 'Number of total nodes in the local cluster' -r complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from install" -l cluster-cp-nodes -d 'Number of control plane nodes in the local cluster' -r @@ -388,26 +563,59 @@ complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fi complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from install" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from install" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from install" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from install" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from install" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from install" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from install" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from install" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "{oci\t'OCI registry',repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from install" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from install" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from install" -l skip-release -d 'Skip the installation of the release during the stack install process' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from install" -s y -l assume-yes -l yes -d 'Assume "yes" as answer to all prompts and run non-interactively' complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from install" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from install" -s h -l help -d 'Print help (see more with \'--help\')' complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from install" -s V -l version -d 'Print version' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from uninstall" -l operator-namespace -l operator-ns -d 'Namespace where the operators are deployed' -r +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from uninstall" -s n -l namespace -l product-ns -d 'Namespace where the stacks or demos are deployed' -r +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from uninstall" -l release -d 'Target a specific Stackable release' -r +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from uninstall" -s l -l log-level -d 'Log level this application uses' -r +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from uninstall" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from uninstall" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from uninstall" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from uninstall" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from uninstall" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from uninstall" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from uninstall" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from uninstall" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from uninstall" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from uninstall" -l skip-operators-and-crds -d 'Skip uninstalling Stackable operators and CRDs' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from uninstall" -s y -l assume-yes -l yes -d 'Assume "yes" as answer to all prompts and run non-interactively' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from uninstall" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from uninstall" -s h -l help -d 'Print help (see more with \'--help\')' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from uninstall" -s V -l version -d 'Print version' complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from help" -f -a "list" -d 'List available demos' complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from help" -f -a "describe" -d 'Print out detailed demo information' complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from help" -f -a "install" -d 'Install a specific demo' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from help" -f -a "uninstall" -d 'Uninstall a specific stack. Caution: This will delete the provided stack namespace, the operators and provided operator namespace, and all Stackable CRDs' complete -c stackablectl -n "__fish_stackablectl_using_subcommand demo; and __fish_seen_subcommand_from help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)' complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash elvish fish nushell zsh help" -s l -l log-level -d 'Log level this application uses' -r complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash elvish fish nushell zsh help" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash elvish fish nushell zsh help" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash elvish fish nushell zsh help" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash elvish fish nushell zsh help" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash elvish fish nushell zsh help" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash elvish fish nushell zsh help" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash elvish fish nushell zsh help" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash elvish fish nushell zsh help" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "{oci\t'OCI registry',repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash elvish fish nushell zsh help" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash elvish fish nushell zsh help" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash elvish fish nushell zsh help" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash elvish fish nushell zsh help" -s h -l help -d 'Print help (see more with \'--help\')' complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and not __fish_seen_subcommand_from bash elvish fish nushell zsh help" -s V -l version -d 'Print version' @@ -421,10 +629,15 @@ complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; a complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from bash" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from bash" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from bash" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from bash" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from bash" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from bash" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from bash" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from bash" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "{oci\t'OCI registry',repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from bash" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from bash" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from bash" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from bash" -s h -l help -d 'Print help (see more with \'--help\')' complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from bash" -s V -l version -d 'Print version' @@ -432,10 +645,15 @@ complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; a complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from elvish" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from elvish" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from elvish" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from elvish" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from elvish" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from elvish" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from elvish" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from elvish" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "{oci\t'OCI registry',repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from elvish" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from elvish" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from elvish" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from elvish" -s h -l help -d 'Print help (see more with \'--help\')' complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from elvish" -s V -l version -d 'Print version' @@ -443,10 +661,15 @@ complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; a complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from fish" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from fish" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from fish" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from fish" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from fish" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from fish" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from fish" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from fish" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "{oci\t'OCI registry',repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from fish" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from fish" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from fish" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from fish" -s h -l help -d 'Print help (see more with \'--help\')' complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from fish" -s V -l version -d 'Print version' @@ -454,10 +677,15 @@ complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; a complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from nushell" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from nushell" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from nushell" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from nushell" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from nushell" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from nushell" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from nushell" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from nushell" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "{oci\t'OCI registry',repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from nushell" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from nushell" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from nushell" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from nushell" -s h -l help -d 'Print help (see more with \'--help\')' complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from nushell" -s V -l version -d 'Print version' @@ -465,10 +693,15 @@ complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; a complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from zsh" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from zsh" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from zsh" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from zsh" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from zsh" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from zsh" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from zsh" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from zsh" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "{oci\t'OCI registry',repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from zsh" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from zsh" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from zsh" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from zsh" -s h -l help -d 'Print help (see more with \'--help\')' complete -c stackablectl -n "__fish_stackablectl_using_subcommand completions; and __fish_seen_subcommand_from zsh" -s V -l version -d 'Print version' @@ -482,10 +715,15 @@ complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and not complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and not __fish_seen_subcommand_from list clean help" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and not __fish_seen_subcommand_from list clean help" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and not __fish_seen_subcommand_from list clean help" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and not __fish_seen_subcommand_from list clean help" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and not __fish_seen_subcommand_from list clean help" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and not __fish_seen_subcommand_from list clean help" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and not __fish_seen_subcommand_from list clean help" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and not __fish_seen_subcommand_from list clean help" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "{oci\t'OCI registry',repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and not __fish_seen_subcommand_from list clean help" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and not __fish_seen_subcommand_from list clean help" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and not __fish_seen_subcommand_from list clean help" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and not __fish_seen_subcommand_from list clean help" -s h -l help -d 'Print help (see more with \'--help\')' complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and not __fish_seen_subcommand_from list clean help" -s V -l version -d 'Print version' @@ -496,10 +734,15 @@ complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and __f complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and __fish_seen_subcommand_from list" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and __fish_seen_subcommand_from list" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and __fish_seen_subcommand_from list" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and __fish_seen_subcommand_from list" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and __fish_seen_subcommand_from list" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and __fish_seen_subcommand_from list" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and __fish_seen_subcommand_from list" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and __fish_seen_subcommand_from list" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "{oci\t'OCI registry',repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and __fish_seen_subcommand_from list" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and __fish_seen_subcommand_from list" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and __fish_seen_subcommand_from list" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and __fish_seen_subcommand_from list" -s h -l help -d 'Print help (see more with \'--help\')' complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and __fish_seen_subcommand_from list" -s V -l version -d 'Print version' @@ -507,10 +750,15 @@ complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and __f complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and __fish_seen_subcommand_from clean" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and __fish_seen_subcommand_from clean" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and __fish_seen_subcommand_from clean" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and __fish_seen_subcommand_from clean" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and __fish_seen_subcommand_from clean" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and __fish_seen_subcommand_from clean" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and __fish_seen_subcommand_from clean" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and __fish_seen_subcommand_from clean" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "{oci\t'OCI registry',repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and __fish_seen_subcommand_from clean" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and __fish_seen_subcommand_from clean" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and __fish_seen_subcommand_from clean" -l old -l outdated -d 'Only remove outdated files in the cache' complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and __fish_seen_subcommand_from clean" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' complete -c stackablectl -n "__fish_stackablectl_using_subcommand cache; and __fish_seen_subcommand_from clean" -s h -l help -d 'Print help (see more with \'--help\')' @@ -525,22 +773,64 @@ complete -c stackablectl -n "__fish_stackablectl_using_subcommand experimental-d complete -c stackablectl -n "__fish_stackablectl_using_subcommand experimental-debug" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand experimental-debug" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand experimental-debug" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand experimental-debug" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F complete -c stackablectl -n "__fish_stackablectl_using_subcommand experimental-debug" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand experimental-debug" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f complete -c stackablectl -n "__fish_stackablectl_using_subcommand experimental-debug" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f -complete -c stackablectl -n "__fish_stackablectl_using_subcommand experimental-debug" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "{oci\t'OCI registry',repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'}" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand experimental-debug" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand experimental-debug" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" complete -c stackablectl -n "__fish_stackablectl_using_subcommand experimental-debug" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' complete -c stackablectl -n "__fish_stackablectl_using_subcommand experimental-debug" -s h -l help -d 'Print help (see more with \'--help\')' complete -c stackablectl -n "__fish_stackablectl_using_subcommand experimental-debug" -s V -l version -d 'Print version' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and not __fish_seen_subcommand_from operator release stack stacklet demo completions cache experimental-debug help" -f -a "operator" -d 'Interact with single operator instead of the full platform' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and not __fish_seen_subcommand_from operator release stack stacklet demo completions cache experimental-debug help" -f -a "release" -d 'Interact with all operators of the platform which are released together' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and not __fish_seen_subcommand_from operator release stack stacklet demo completions cache experimental-debug help" -f -a "stack" -d 'Interact with stacks, which are ready-to-use product combinations' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and not __fish_seen_subcommand_from operator release stack stacklet demo completions cache experimental-debug help" -f -a "stacklet" -d 'Interact with deployed stacklets, which are bundles of resources and containers required to run the product' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and not __fish_seen_subcommand_from operator release stack stacklet demo completions cache experimental-debug help" -f -a "demo" -d 'Interact with demos, which are end-to-end usage demonstrations of the Stackable data platform' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and not __fish_seen_subcommand_from operator release stack stacklet demo completions cache experimental-debug help" -f -a "completions" -d 'Generate shell completions for this tool' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and not __fish_seen_subcommand_from operator release stack stacklet demo completions cache experimental-debug help" -f -a "cache" -d 'Interact with locally cached files' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and not __fish_seen_subcommand_from operator release stack stacklet demo completions cache experimental-debug help" -f -a "experimental-debug" -d 'EXPERIMENTAL: Launch a debug container for a Pod' -complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and not __fish_seen_subcommand_from operator release stack stacklet demo completions cache experimental-debug help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand version; and not __fish_seen_subcommand_from check help" -s l -l log-level -d 'Log level this application uses' -r +complete -c stackablectl -n "__fish_stackablectl_using_subcommand version; and not __fish_seen_subcommand_from check help" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand version; and not __fish_seen_subcommand_from check help" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand version; and not __fish_seen_subcommand_from check help" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand version; and not __fish_seen_subcommand_from check help" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand version; and not __fish_seen_subcommand_from check help" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f +complete -c stackablectl -n "__fish_stackablectl_using_subcommand version; and not __fish_seen_subcommand_from check help" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f +complete -c stackablectl -n "__fish_stackablectl_using_subcommand version; and not __fish_seen_subcommand_from check help" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f +complete -c stackablectl -n "__fish_stackablectl_using_subcommand version; and not __fish_seen_subcommand_from check help" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand version; and not __fish_seen_subcommand_from check help" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand version; and not __fish_seen_subcommand_from check help" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand version; and not __fish_seen_subcommand_from check help" -s h -l help -d 'Print help (see more with \'--help\')' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand version; and not __fish_seen_subcommand_from check help" -s V -l version -d 'Print version' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand version; and not __fish_seen_subcommand_from check help" -f -a "check" -d 'Check if there is a new version available' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand version; and not __fish_seen_subcommand_from check help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand version; and __fish_seen_subcommand_from check" -s l -l log-level -d 'Log level this application uses' -r +complete -c stackablectl -n "__fish_stackablectl_using_subcommand version; and __fish_seen_subcommand_from check" -s d -l demo-file -d 'Provide one or more additional (custom) demo file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand version; and __fish_seen_subcommand_from check" -s s -l stack-file -d 'Provide one or more additional (custom) stack file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand version; and __fish_seen_subcommand_from check" -s r -l release-file -d 'Provide one or more additional (custom) release file(s)' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand version; and __fish_seen_subcommand_from check" -s f -l operator-values -d 'Path to a Helm values file that will be used for the installation of operators' -r -F +complete -c stackablectl -n "__fish_stackablectl_using_subcommand version; and __fish_seen_subcommand_from check" -l helm-repo-stable -d 'Provide a custom Helm stable repository URL' -r -f +complete -c stackablectl -n "__fish_stackablectl_using_subcommand version; and __fish_seen_subcommand_from check" -l helm-repo-test -d 'Provide a custom Helm test repository URL' -r -f +complete -c stackablectl -n "__fish_stackablectl_using_subcommand version; and __fish_seen_subcommand_from check" -l helm-repo-dev -d 'Provide a custom Helm dev repository URL' -r -f +complete -c stackablectl -n "__fish_stackablectl_using_subcommand version; and __fish_seen_subcommand_from check" -l chart-source -d 'Source the charts from either a OCI registry or from index.yaml-based repositories' -r -f -a "oci\t'OCI registry' +repo\t'index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific'" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand version; and __fish_seen_subcommand_from check" -l listener-class-preset -d 'Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`)' -r -f -a "none\t'' +stable-nodes\t'' +ephemeral-nodes\t''" +complete -c stackablectl -n "__fish_stackablectl_using_subcommand version; and __fish_seen_subcommand_from check" -l no-cache -d 'Do not cache the remote (default) demo, stack and release files' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand version; and __fish_seen_subcommand_from check" -s h -l help -d 'Print help (see more with \'--help\')' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand version; and __fish_seen_subcommand_from check" -s V -l version -d 'Print version' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand version; and __fish_seen_subcommand_from help" -f -a "check" -d 'Check if there is a new version available' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand version; and __fish_seen_subcommand_from help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and not __fish_seen_subcommand_from operator release stack stacklet demo completions cache experimental-debug version help" -f -a "operator" -d 'Interact with single operator instead of the full platform' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and not __fish_seen_subcommand_from operator release stack stacklet demo completions cache experimental-debug version help" -f -a "release" -d 'Interact with all operators of the platform which are released together' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and not __fish_seen_subcommand_from operator release stack stacklet demo completions cache experimental-debug version help" -f -a "stack" -d 'Interact with stacks, which are ready-to-use product combinations' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and not __fish_seen_subcommand_from operator release stack stacklet demo completions cache experimental-debug version help" -f -a "stacklet" -d 'Interact with deployed stacklets, which are bundles of resources and containers required to run the product' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and not __fish_seen_subcommand_from operator release stack stacklet demo completions cache experimental-debug version help" -f -a "demo" -d 'Interact with demos, which are end-to-end usage demonstrations of the Stackable data platform' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and not __fish_seen_subcommand_from operator release stack stacklet demo completions cache experimental-debug version help" -f -a "completions" -d 'Generate shell completions for this tool' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and not __fish_seen_subcommand_from operator release stack stacklet demo completions cache experimental-debug version help" -f -a "cache" -d 'Interact with locally cached files' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and not __fish_seen_subcommand_from operator release stack stacklet demo completions cache experimental-debug version help" -f -a "experimental-debug" -d 'EXPERIMENTAL: Launch a debug container for a Pod' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and not __fish_seen_subcommand_from operator release stack stacklet demo completions cache experimental-debug version help" -f -a "version" -d 'Retrieve version data of the stackablectl installation' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and not __fish_seen_subcommand_from operator release stack stacklet demo completions cache experimental-debug version help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)' complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and __fish_seen_subcommand_from operator" -f -a "list" -d 'List available operators' complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and __fish_seen_subcommand_from operator" -f -a "describe" -d 'Print out detailed operator information' complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and __fish_seen_subcommand_from operator" -f -a "install" -d 'Install one or more operators' @@ -554,11 +844,13 @@ complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and __fi complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and __fish_seen_subcommand_from stack" -f -a "list" -d 'List available stacks' complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and __fish_seen_subcommand_from stack" -f -a "describe" -d 'Describe a specific stack' complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and __fish_seen_subcommand_from stack" -f -a "install" -d 'Install a specific stack' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and __fish_seen_subcommand_from stack" -f -a "uninstall" -d 'Uninstall a specific stack. Caution: This will delete the provided stack namespace, the operators and provided operator namespace, and all Stackable CRDs' complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and __fish_seen_subcommand_from stacklet" -f -a "credentials" -d 'Display credentials for a stacklet' complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and __fish_seen_subcommand_from stacklet" -f -a "list" -d 'List deployed stacklets' complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and __fish_seen_subcommand_from demo" -f -a "list" -d 'List available demos' complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and __fish_seen_subcommand_from demo" -f -a "describe" -d 'Print out detailed demo information' complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and __fish_seen_subcommand_from demo" -f -a "install" -d 'Install a specific demo' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and __fish_seen_subcommand_from demo" -f -a "uninstall" -d 'Uninstall a specific stack. Caution: This will delete the provided stack namespace, the operators and provided operator namespace, and all Stackable CRDs' complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and __fish_seen_subcommand_from completions" -f -a "bash" -d 'Generate shell completions for Bash' complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and __fish_seen_subcommand_from completions" -f -a "elvish" -d 'Generate shell completions for Elvish' complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and __fish_seen_subcommand_from completions" -f -a "fish" -d 'Generate shell completions for Fish' @@ -566,3 +858,4 @@ complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and __fi complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and __fish_seen_subcommand_from completions" -f -a "zsh" -d 'Generate shell completions for ZSH' complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and __fish_seen_subcommand_from cache" -f -a "list" -d 'List cached files' complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and __fish_seen_subcommand_from cache" -f -a "clean" -d 'Clean cached files' +complete -c stackablectl -n "__fish_stackablectl_using_subcommand help; and __fish_seen_subcommand_from version" -f -a "check" -d 'Check if there is a new version available' diff --git a/extra/completions/stackablectl.nu b/extra/completions/stackablectl.nu index 6d899b1b..901342f9 100644 --- a/extra/completions/stackablectl.nu +++ b/extra/completions/stackablectl.nu @@ -4,17 +4,23 @@ module completions { [ "oci" "repo" ] } + def "nu-complete stackablectl listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + # Command line tool to interact with the Stackable Data Platform export extern stackablectl [ --log-level(-l): string # Log level this application uses --no-cache # Do not cache the remote (default) demo, stack and release files - --demo-file(-d): string # Provide one or more additional (custom) demo file(s) - --stack-file(-s): string # Provide one or more additional (custom) stack file(s) - --release-file(-r): string # Provide one or more additional (custom) release file(s) + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators --helm-repo-stable: string # Provide a custom Helm stable repository URL --helm-repo-test: string # Provide a custom Helm test repository URL --helm-repo-dev: string # Provide a custom Helm dev repository URL --chart-source: string@"nu-complete stackablectl chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) --help(-h) # Print help (see more with '--help') --version(-V) # Print version ] @@ -23,17 +29,23 @@ module completions { [ "oci" "repo" ] } + def "nu-complete stackablectl operator listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + # Interact with single operator instead of the full platform export extern "stackablectl operator" [ --log-level(-l): string # Log level this application uses --no-cache # Do not cache the remote (default) demo, stack and release files - --demo-file(-d): string # Provide one or more additional (custom) demo file(s) - --stack-file(-s): string # Provide one or more additional (custom) stack file(s) - --release-file(-r): string # Provide one or more additional (custom) release file(s) + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators --helm-repo-stable: string # Provide a custom Helm stable repository URL --helm-repo-test: string # Provide a custom Helm test repository URL --helm-repo-dev: string # Provide a custom Helm dev repository URL --chart-source: string@"nu-complete stackablectl operator chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl operator listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) --help(-h) # Print help (see more with '--help') --version(-V) # Print version ] @@ -46,18 +58,24 @@ module completions { [ "oci" "repo" ] } + def "nu-complete stackablectl operator list listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + # List available operators export extern "stackablectl operator list" [ --output(-o): string@"nu-complete stackablectl operator list output_type" --log-level(-l): string # Log level this application uses --no-cache # Do not cache the remote (default) demo, stack and release files - --demo-file(-d): string # Provide one or more additional (custom) demo file(s) - --stack-file(-s): string # Provide one or more additional (custom) stack file(s) - --release-file(-r): string # Provide one or more additional (custom) release file(s) + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators --helm-repo-stable: string # Provide a custom Helm stable repository URL --helm-repo-test: string # Provide a custom Helm test repository URL --helm-repo-dev: string # Provide a custom Helm dev repository URL --chart-source: string@"nu-complete stackablectl operator list chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl operator list listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) --help(-h) # Print help (see more with '--help') --version(-V) # Print version ] @@ -70,21 +88,27 @@ module completions { [ "oci" "repo" ] } + def "nu-complete stackablectl operator describe listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + # Print out detailed operator information export extern "stackablectl operator describe" [ - OPERATOR: string # Operator to describe --output(-o): string@"nu-complete stackablectl operator describe output_type" --log-level(-l): string # Log level this application uses --no-cache # Do not cache the remote (default) demo, stack and release files - --demo-file(-d): string # Provide one or more additional (custom) demo file(s) - --stack-file(-s): string # Provide one or more additional (custom) stack file(s) - --release-file(-r): string # Provide one or more additional (custom) release file(s) + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators --helm-repo-stable: string # Provide a custom Helm stable repository URL --helm-repo-test: string # Provide a custom Helm test repository URL --helm-repo-dev: string # Provide a custom Helm dev repository URL --chart-source: string@"nu-complete stackablectl operator describe chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl operator describe listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) --help(-h) # Print help (see more with '--help') --version(-V) # Print version + OPERATOR: string # Operator to describe ] def "nu-complete stackablectl operator install cluster_type" [] { @@ -95,9 +119,12 @@ module completions { [ "oci" "repo" ] } + def "nu-complete stackablectl operator install listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + # Install one or more operators export extern "stackablectl operator install" [ - ...OPERATORS: string # Operator(s) to install --operator-namespace: string # Namespace in the cluster used to deploy the operators --operator-ns: string # Namespace in the cluster used to deploy the operators --cluster(-c): string@"nu-complete stackablectl operator install cluster_type" # Type of local cluster to use for testing @@ -106,37 +133,46 @@ module completions { --cluster-cp-nodes: string # Number of control plane nodes in the local cluster --log-level(-l): string # Log level this application uses --no-cache # Do not cache the remote (default) demo, stack and release files - --demo-file(-d): string # Provide one or more additional (custom) demo file(s) - --stack-file(-s): string # Provide one or more additional (custom) stack file(s) - --release-file(-r): string # Provide one or more additional (custom) release file(s) + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators --helm-repo-stable: string # Provide a custom Helm stable repository URL --helm-repo-test: string # Provide a custom Helm test repository URL --helm-repo-dev: string # Provide a custom Helm dev repository URL --chart-source: string@"nu-complete stackablectl operator install chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl operator install listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) --help(-h) # Print help (see more with '--help') --version(-V) # Print version + ...OPERATORS: string # Operator(s) to install ] def "nu-complete stackablectl operator uninstall chart_source" [] { [ "oci" "repo" ] } + def "nu-complete stackablectl operator uninstall listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + # Uninstall one or more operators export extern "stackablectl operator uninstall" [ - ...operators: string # One or more operators to uninstall --operator-namespace: string # Namespace in the cluster used to deploy the operators --operator-ns: string # Namespace in the cluster used to deploy the operators --log-level(-l): string # Log level this application uses --no-cache # Do not cache the remote (default) demo, stack and release files - --demo-file(-d): string # Provide one or more additional (custom) demo file(s) - --stack-file(-s): string # Provide one or more additional (custom) stack file(s) - --release-file(-r): string # Provide one or more additional (custom) release file(s) + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators --helm-repo-stable: string # Provide a custom Helm stable repository URL --helm-repo-test: string # Provide a custom Helm test repository URL --helm-repo-dev: string # Provide a custom Helm dev repository URL --chart-source: string@"nu-complete stackablectl operator uninstall chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl operator uninstall listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) --help(-h) # Print help (see more with '--help') --version(-V) # Print version + ...operators: string # One or more operators to uninstall ] def "nu-complete stackablectl operator installed output_type" [] { @@ -147,6 +183,10 @@ module completions { [ "oci" "repo" ] } + def "nu-complete stackablectl operator installed listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + # List installed operators export extern "stackablectl operator installed" [ --output(-o): string@"nu-complete stackablectl operator installed output_type" @@ -154,13 +194,15 @@ module completions { --operator-ns: string # Namespace in the cluster used to deploy the operators --log-level(-l): string # Log level this application uses --no-cache # Do not cache the remote (default) demo, stack and release files - --demo-file(-d): string # Provide one or more additional (custom) demo file(s) - --stack-file(-s): string # Provide one or more additional (custom) stack file(s) - --release-file(-r): string # Provide one or more additional (custom) release file(s) + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators --helm-repo-stable: string # Provide a custom Helm stable repository URL --helm-repo-test: string # Provide a custom Helm test repository URL --helm-repo-dev: string # Provide a custom Helm dev repository URL --chart-source: string@"nu-complete stackablectl operator installed chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl operator installed listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) --help(-h) # Print help (see more with '--help') --version(-V) # Print version ] @@ -197,17 +239,23 @@ module completions { [ "oci" "repo" ] } + def "nu-complete stackablectl release listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + # Interact with all operators of the platform which are released together export extern "stackablectl release" [ --log-level(-l): string # Log level this application uses --no-cache # Do not cache the remote (default) demo, stack and release files - --demo-file(-d): string # Provide one or more additional (custom) demo file(s) - --stack-file(-s): string # Provide one or more additional (custom) stack file(s) - --release-file(-r): string # Provide one or more additional (custom) release file(s) + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators --helm-repo-stable: string # Provide a custom Helm stable repository URL --helm-repo-test: string # Provide a custom Helm test repository URL --helm-repo-dev: string # Provide a custom Helm dev repository URL --chart-source: string@"nu-complete stackablectl release chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl release listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) --help(-h) # Print help (see more with '--help') --version(-V) # Print version ] @@ -220,18 +268,24 @@ module completions { [ "oci" "repo" ] } + def "nu-complete stackablectl release list listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + # List available releases export extern "stackablectl release list" [ --output(-o): string@"nu-complete stackablectl release list output_type" --log-level(-l): string # Log level this application uses --no-cache # Do not cache the remote (default) demo, stack and release files - --demo-file(-d): string # Provide one or more additional (custom) demo file(s) - --stack-file(-s): string # Provide one or more additional (custom) stack file(s) - --release-file(-r): string # Provide one or more additional (custom) release file(s) + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators --helm-repo-stable: string # Provide a custom Helm stable repository URL --helm-repo-test: string # Provide a custom Helm test repository URL --helm-repo-dev: string # Provide a custom Helm dev repository URL --chart-source: string@"nu-complete stackablectl release list chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl release list listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) --help(-h) # Print help (see more with '--help') --version(-V) # Print version ] @@ -244,21 +298,27 @@ module completions { [ "oci" "repo" ] } + def "nu-complete stackablectl release describe listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + # Print out detailed release information export extern "stackablectl release describe" [ - RELEASE: string --output(-o): string@"nu-complete stackablectl release describe output_type" --log-level(-l): string # Log level this application uses --no-cache # Do not cache the remote (default) demo, stack and release files - --demo-file(-d): string # Provide one or more additional (custom) demo file(s) - --stack-file(-s): string # Provide one or more additional (custom) stack file(s) - --release-file(-r): string # Provide one or more additional (custom) release file(s) + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators --helm-repo-stable: string # Provide a custom Helm stable repository URL --helm-repo-test: string # Provide a custom Helm test repository URL --helm-repo-dev: string # Provide a custom Helm dev repository URL --chart-source: string@"nu-complete stackablectl release describe chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl release describe listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) --help(-h) # Print help (see more with '--help') --version(-V) # Print version + RELEASE: string ] def "nu-complete stackablectl release install cluster_type" [] { @@ -269,9 +329,12 @@ module completions { [ "oci" "repo" ] } + def "nu-complete stackablectl release install listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + # Install a specific release export extern "stackablectl release install" [ - RELEASE: string # Release to install --include(-i): string # Whitelist of product operators to install --exclude(-e): string # Blacklist of product operators to install --operator-namespace: string # Namespace in the cluster used to deploy the operators @@ -282,61 +345,76 @@ module completions { --cluster-cp-nodes: string # Number of control plane nodes in the local cluster --log-level(-l): string # Log level this application uses --no-cache # Do not cache the remote (default) demo, stack and release files - --demo-file(-d): string # Provide one or more additional (custom) demo file(s) - --stack-file(-s): string # Provide one or more additional (custom) stack file(s) - --release-file(-r): string # Provide one or more additional (custom) release file(s) + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators --helm-repo-stable: string # Provide a custom Helm stable repository URL --helm-repo-test: string # Provide a custom Helm test repository URL --helm-repo-dev: string # Provide a custom Helm dev repository URL --chart-source: string@"nu-complete stackablectl release install chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl release install listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) --help(-h) # Print help (see more with '--help') --version(-V) # Print version + RELEASE: string # Release to install ] def "nu-complete stackablectl release uninstall chart_source" [] { [ "oci" "repo" ] } + def "nu-complete stackablectl release uninstall listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + # Uninstall a release export extern "stackablectl release uninstall" [ - RELEASE: string # Name of the release to uninstall --operator-namespace: string # Namespace in the cluster used to deploy the operators --operator-ns: string # Namespace in the cluster used to deploy the operators --log-level(-l): string # Log level this application uses --no-cache # Do not cache the remote (default) demo, stack and release files - --demo-file(-d): string # Provide one or more additional (custom) demo file(s) - --stack-file(-s): string # Provide one or more additional (custom) stack file(s) - --release-file(-r): string # Provide one or more additional (custom) release file(s) + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators --helm-repo-stable: string # Provide a custom Helm stable repository URL --helm-repo-test: string # Provide a custom Helm test repository URL --helm-repo-dev: string # Provide a custom Helm dev repository URL --chart-source: string@"nu-complete stackablectl release uninstall chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl release uninstall listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) --help(-h) # Print help (see more with '--help') --version(-V) # Print version + RELEASE: string # Name of the release to uninstall ] def "nu-complete stackablectl release upgrade chart_source" [] { [ "oci" "repo" ] } + def "nu-complete stackablectl release upgrade listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + # Upgrade a release export extern "stackablectl release upgrade" [ - RELEASE: string # Upgrade to the specified release --include(-i): string # List of product operators to upgrade --exclude(-e): string # Blacklist of product operators to install --operator-namespace: string # Namespace in the cluster used to deploy the operators --operator-ns: string # Namespace in the cluster used to deploy the operators --log-level(-l): string # Log level this application uses --no-cache # Do not cache the remote (default) demo, stack and release files - --demo-file(-d): string # Provide one or more additional (custom) demo file(s) - --stack-file(-s): string # Provide one or more additional (custom) stack file(s) - --release-file(-r): string # Provide one or more additional (custom) release file(s) + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators --helm-repo-stable: string # Provide a custom Helm stable repository URL --helm-repo-test: string # Provide a custom Helm test repository URL --helm-repo-dev: string # Provide a custom Helm dev repository URL --chart-source: string@"nu-complete stackablectl release upgrade chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl release upgrade listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) --help(-h) # Print help (see more with '--help') --version(-V) # Print version + RELEASE: string # Upgrade to the specified release ] # Print this message or the help of the given subcommand(s) @@ -371,18 +449,24 @@ module completions { [ "oci" "repo" ] } + def "nu-complete stackablectl stack listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + # Interact with stacks, which are ready-to-use product combinations export extern "stackablectl stack" [ --release: string # Target a specific Stackable release --log-level(-l): string # Log level this application uses --no-cache # Do not cache the remote (default) demo, stack and release files - --demo-file(-d): string # Provide one or more additional (custom) demo file(s) - --stack-file(-s): string # Provide one or more additional (custom) stack file(s) - --release-file(-r): string # Provide one or more additional (custom) release file(s) + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators --helm-repo-stable: string # Provide a custom Helm stable repository URL --helm-repo-test: string # Provide a custom Helm test repository URL --helm-repo-dev: string # Provide a custom Helm dev repository URL --chart-source: string@"nu-complete stackablectl stack chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl stack listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) --help(-h) # Print help (see more with '--help') --version(-V) # Print version ] @@ -395,19 +479,25 @@ module completions { [ "oci" "repo" ] } + def "nu-complete stackablectl stack list listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + # List available stacks export extern "stackablectl stack list" [ --output(-o): string@"nu-complete stackablectl stack list output_type" --release: string # Target a specific Stackable release --log-level(-l): string # Log level this application uses --no-cache # Do not cache the remote (default) demo, stack and release files - --demo-file(-d): string # Provide one or more additional (custom) demo file(s) - --stack-file(-s): string # Provide one or more additional (custom) stack file(s) - --release-file(-r): string # Provide one or more additional (custom) release file(s) + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators --helm-repo-stable: string # Provide a custom Helm stable repository URL --helm-repo-test: string # Provide a custom Helm test repository URL --helm-repo-dev: string # Provide a custom Helm dev repository URL --chart-source: string@"nu-complete stackablectl stack list chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl stack list listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) --help(-h) # Print help (see more with '--help') --version(-V) # Print version ] @@ -420,22 +510,28 @@ module completions { [ "oci" "repo" ] } + def "nu-complete stackablectl stack describe listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + # Describe a specific stack export extern "stackablectl stack describe" [ - stack_name: string # Name of the stack to describe --output(-o): string@"nu-complete stackablectl stack describe output_type" --release: string # Target a specific Stackable release --log-level(-l): string # Log level this application uses --no-cache # Do not cache the remote (default) demo, stack and release files - --demo-file(-d): string # Provide one or more additional (custom) demo file(s) - --stack-file(-s): string # Provide one or more additional (custom) stack file(s) - --release-file(-r): string # Provide one or more additional (custom) release file(s) + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators --helm-repo-stable: string # Provide a custom Helm stable repository URL --helm-repo-test: string # Provide a custom Helm test repository URL --helm-repo-dev: string # Provide a custom Helm dev repository URL --chart-source: string@"nu-complete stackablectl stack describe chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl stack describe listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) --help(-h) # Print help (see more with '--help') --version(-V) # Print version + stack_name: string # Name of the stack to describe ] def "nu-complete stackablectl stack install cluster_type" [] { @@ -446,9 +542,12 @@ module completions { [ "oci" "repo" ] } + def "nu-complete stackablectl stack install listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + # Install a specific stack export extern "stackablectl stack install" [ - stack_name: string # Name of the stack to describe --skip-release # Skip the installation of the release during the stack install process --stack-parameters: string # List of parameters to use when installing the stack --parameters: string # List of parameters to use when installing the stack @@ -460,18 +559,57 @@ module completions { --operator-ns: string # Namespace where the operators are deployed --namespace(-n): string # Namespace where the stacks or demos are deployed --product-ns: string # Namespace where the stacks or demos are deployed + --assume-yes(-y) # Assume "yes" as answer to all prompts and run non-interactively + --yes # Assume "yes" as answer to all prompts and run non-interactively --release: string # Target a specific Stackable release --log-level(-l): string # Log level this application uses --no-cache # Do not cache the remote (default) demo, stack and release files - --demo-file(-d): string # Provide one or more additional (custom) demo file(s) - --stack-file(-s): string # Provide one or more additional (custom) stack file(s) - --release-file(-r): string # Provide one or more additional (custom) release file(s) + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators --helm-repo-stable: string # Provide a custom Helm stable repository URL --helm-repo-test: string # Provide a custom Helm test repository URL --helm-repo-dev: string # Provide a custom Helm dev repository URL --chart-source: string@"nu-complete stackablectl stack install chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl stack install listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) + --help(-h) # Print help (see more with '--help') + --version(-V) # Print version + stack_name: string # Name of the stack to install + ] + + def "nu-complete stackablectl stack uninstall chart_source" [] { + [ "oci" "repo" ] + } + + def "nu-complete stackablectl stack uninstall listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + + # Uninstall a specific stack. Caution: This will delete the provided stack namespace, the operators and provided operator namespace, and all Stackable CRDs + export extern "stackablectl stack uninstall" [ + --operator-namespace: string # Namespace where the operators are deployed + --operator-ns: string # Namespace where the operators are deployed + --namespace(-n): string # Namespace where the stacks or demos are deployed + --product-ns: string # Namespace where the stacks or demos are deployed + --skip-operators-and-crds # Skip uninstalling Stackable operators and CRDs + --assume-yes(-y) # Assume "yes" as answer to all prompts and run non-interactively + --yes # Assume "yes" as answer to all prompts and run non-interactively + --release: string # Target a specific Stackable release + --log-level(-l): string # Log level this application uses + --no-cache # Do not cache the remote (default) demo, stack and release files + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators + --helm-repo-stable: string # Provide a custom Helm stable repository URL + --helm-repo-test: string # Provide a custom Helm test repository URL + --helm-repo-dev: string # Provide a custom Helm dev repository URL + --chart-source: string@"nu-complete stackablectl stack uninstall chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl stack uninstall listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) --help(-h) # Print help (see more with '--help') --version(-V) # Print version + stack_name: string # Name of the stack to uninstall ] # Print this message or the help of the given subcommand(s) @@ -490,6 +628,10 @@ module completions { export extern "stackablectl stack help install" [ ] + # Uninstall a specific stack. Caution: This will delete the provided stack namespace, the operators and provided operator namespace, and all Stackable CRDs + export extern "stackablectl stack help uninstall" [ + ] + # Print this message or the help of the given subcommand(s) export extern "stackablectl stack help help" [ ] @@ -498,17 +640,23 @@ module completions { [ "oci" "repo" ] } + def "nu-complete stackablectl stacklet listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + # Interact with deployed stacklets, which are bundles of resources and containers required to run the product export extern "stackablectl stacklet" [ --log-level(-l): string # Log level this application uses --no-cache # Do not cache the remote (default) demo, stack and release files - --demo-file(-d): string # Provide one or more additional (custom) demo file(s) - --stack-file(-s): string # Provide one or more additional (custom) stack file(s) - --release-file(-r): string # Provide one or more additional (custom) release file(s) + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators --helm-repo-stable: string # Provide a custom Helm stable repository URL --helm-repo-test: string # Provide a custom Helm test repository URL --helm-repo-dev: string # Provide a custom Helm dev repository URL --chart-source: string@"nu-complete stackablectl stacklet chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl stacklet listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) --help(-h) # Print help (see more with '--help') --version(-V) # Print version ] @@ -517,22 +665,28 @@ module completions { [ "oci" "repo" ] } + def "nu-complete stackablectl stacklet credentials listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + # Display credentials for a stacklet export extern "stackablectl stacklet credentials" [ - product_name: string # The name of the product, for example 'superset' - stacklet_name: string # The name of the stacklet, for example 'superset' --namespace(-n): string # Namespace in the cluster used to deploy the products --log-level(-l): string # Log level this application uses --no-cache # Do not cache the remote (default) demo, stack and release files - --demo-file(-d): string # Provide one or more additional (custom) demo file(s) - --stack-file(-s): string # Provide one or more additional (custom) stack file(s) - --release-file(-r): string # Provide one or more additional (custom) release file(s) + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators --helm-repo-stable: string # Provide a custom Helm stable repository URL --helm-repo-test: string # Provide a custom Helm test repository URL --helm-repo-dev: string # Provide a custom Helm dev repository URL --chart-source: string@"nu-complete stackablectl stacklet credentials chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl stacklet credentials listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) --help(-h) # Print help (see more with '--help') --version(-V) # Print version + product_name: string # The name of the product, for example 'superset' + stacklet_name: string # The name of the stacklet, for example 'superset' ] def "nu-complete stackablectl stacklet list output_type" [] { @@ -543,6 +697,10 @@ module completions { [ "oci" "repo" ] } + def "nu-complete stackablectl stacklet list listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + # List deployed stacklets export extern "stackablectl stacklet list" [ --output(-o): string@"nu-complete stackablectl stacklet list output_type" @@ -552,13 +710,15 @@ module completions { --product-ns: string # Namespace where the stacks or demos are deployed --log-level(-l): string # Log level this application uses --no-cache # Do not cache the remote (default) demo, stack and release files - --demo-file(-d): string # Provide one or more additional (custom) demo file(s) - --stack-file(-s): string # Provide one or more additional (custom) stack file(s) - --release-file(-r): string # Provide one or more additional (custom) release file(s) + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators --helm-repo-stable: string # Provide a custom Helm stable repository URL --helm-repo-test: string # Provide a custom Helm test repository URL --helm-repo-dev: string # Provide a custom Helm dev repository URL --chart-source: string@"nu-complete stackablectl stacklet list chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl stacklet list listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) --help(-h) # Print help (see more with '--help') --version(-V) # Print version ] @@ -583,18 +743,24 @@ module completions { [ "oci" "repo" ] } + def "nu-complete stackablectl demo listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + # Interact with demos, which are end-to-end usage demonstrations of the Stackable data platform export extern "stackablectl demo" [ --release: string # Target a specific Stackable release --log-level(-l): string # Log level this application uses --no-cache # Do not cache the remote (default) demo, stack and release files - --demo-file(-d): string # Provide one or more additional (custom) demo file(s) - --stack-file(-s): string # Provide one or more additional (custom) stack file(s) - --release-file(-r): string # Provide one or more additional (custom) release file(s) + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators --helm-repo-stable: string # Provide a custom Helm stable repository URL --helm-repo-test: string # Provide a custom Helm test repository URL --helm-repo-dev: string # Provide a custom Helm dev repository URL --chart-source: string@"nu-complete stackablectl demo chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl demo listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) --help(-h) # Print help (see more with '--help') --version(-V) # Print version ] @@ -607,19 +773,25 @@ module completions { [ "oci" "repo" ] } + def "nu-complete stackablectl demo list listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + # List available demos export extern "stackablectl demo list" [ --output(-o): string@"nu-complete stackablectl demo list output_type" --release: string # Target a specific Stackable release --log-level(-l): string # Log level this application uses --no-cache # Do not cache the remote (default) demo, stack and release files - --demo-file(-d): string # Provide one or more additional (custom) demo file(s) - --stack-file(-s): string # Provide one or more additional (custom) stack file(s) - --release-file(-r): string # Provide one or more additional (custom) release file(s) + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators --helm-repo-stable: string # Provide a custom Helm stable repository URL --helm-repo-test: string # Provide a custom Helm test repository URL --helm-repo-dev: string # Provide a custom Helm dev repository URL --chart-source: string@"nu-complete stackablectl demo list chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl demo list listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) --help(-h) # Print help (see more with '--help') --version(-V) # Print version ] @@ -632,22 +804,28 @@ module completions { [ "oci" "repo" ] } + def "nu-complete stackablectl demo describe listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + # Print out detailed demo information export extern "stackablectl demo describe" [ - DEMO: string # Demo to describe --output(-o): string@"nu-complete stackablectl demo describe output_type" --release: string # Target a specific Stackable release --log-level(-l): string # Log level this application uses --no-cache # Do not cache the remote (default) demo, stack and release files - --demo-file(-d): string # Provide one or more additional (custom) demo file(s) - --stack-file(-s): string # Provide one or more additional (custom) stack file(s) - --release-file(-r): string # Provide one or more additional (custom) release file(s) + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators --helm-repo-stable: string # Provide a custom Helm stable repository URL --helm-repo-test: string # Provide a custom Helm test repository URL --helm-repo-dev: string # Provide a custom Helm dev repository URL --chart-source: string@"nu-complete stackablectl demo describe chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl demo describe listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) --help(-h) # Print help (see more with '--help') --version(-V) # Print version + DEMO: string # Demo to describe ] def "nu-complete stackablectl demo install cluster_type" [] { @@ -658,9 +836,12 @@ module completions { [ "oci" "repo" ] } + def "nu-complete stackablectl demo install listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + # Install a specific demo export extern "stackablectl demo install" [ - DEMO: string # Demo to install --skip-release # Skip the installation of the release during the stack install process --stack-parameters: string # List of parameters to use when installing the stack --parameters: string # List of parameters to use when installing the demo @@ -672,18 +853,57 @@ module completions { --operator-ns: string # Namespace where the operators are deployed --namespace(-n): string # Namespace where the stacks or demos are deployed --product-ns: string # Namespace where the stacks or demos are deployed + --assume-yes(-y) # Assume "yes" as answer to all prompts and run non-interactively + --yes # Assume "yes" as answer to all prompts and run non-interactively --release: string # Target a specific Stackable release --log-level(-l): string # Log level this application uses --no-cache # Do not cache the remote (default) demo, stack and release files - --demo-file(-d): string # Provide one or more additional (custom) demo file(s) - --stack-file(-s): string # Provide one or more additional (custom) stack file(s) - --release-file(-r): string # Provide one or more additional (custom) release file(s) + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators --helm-repo-stable: string # Provide a custom Helm stable repository URL --helm-repo-test: string # Provide a custom Helm test repository URL --helm-repo-dev: string # Provide a custom Helm dev repository URL --chart-source: string@"nu-complete stackablectl demo install chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl demo install listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) --help(-h) # Print help (see more with '--help') --version(-V) # Print version + DEMO: string # Demo to install + ] + + def "nu-complete stackablectl demo uninstall chart_source" [] { + [ "oci" "repo" ] + } + + def "nu-complete stackablectl demo uninstall listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + + # Uninstall a specific stack. Caution: This will delete the provided stack namespace, the operators and provided operator namespace, and all Stackable CRDs + export extern "stackablectl demo uninstall" [ + --operator-namespace: string # Namespace where the operators are deployed + --operator-ns: string # Namespace where the operators are deployed + --namespace(-n): string # Namespace where the stacks or demos are deployed + --product-ns: string # Namespace where the stacks or demos are deployed + --skip-operators-and-crds # Skip uninstalling Stackable operators and CRDs + --assume-yes(-y) # Assume "yes" as answer to all prompts and run non-interactively + --yes # Assume "yes" as answer to all prompts and run non-interactively + --release: string # Target a specific Stackable release + --log-level(-l): string # Log level this application uses + --no-cache # Do not cache the remote (default) demo, stack and release files + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators + --helm-repo-stable: string # Provide a custom Helm stable repository URL + --helm-repo-test: string # Provide a custom Helm test repository URL + --helm-repo-dev: string # Provide a custom Helm dev repository URL + --chart-source: string@"nu-complete stackablectl demo uninstall chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl demo uninstall listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) + --help(-h) # Print help (see more with '--help') + --version(-V) # Print version + demo_name: string # Demo to uninstall ] # Print this message or the help of the given subcommand(s) @@ -702,6 +922,10 @@ module completions { export extern "stackablectl demo help install" [ ] + # Uninstall a specific stack. Caution: This will delete the provided stack namespace, the operators and provided operator namespace, and all Stackable CRDs + export extern "stackablectl demo help uninstall" [ + ] + # Print this message or the help of the given subcommand(s) export extern "stackablectl demo help help" [ ] @@ -710,17 +934,23 @@ module completions { [ "oci" "repo" ] } + def "nu-complete stackablectl completions listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + # Generate shell completions for this tool export extern "stackablectl completions" [ --log-level(-l): string # Log level this application uses --no-cache # Do not cache the remote (default) demo, stack and release files - --demo-file(-d): string # Provide one or more additional (custom) demo file(s) - --stack-file(-s): string # Provide one or more additional (custom) stack file(s) - --release-file(-r): string # Provide one or more additional (custom) release file(s) + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators --helm-repo-stable: string # Provide a custom Helm stable repository URL --helm-repo-test: string # Provide a custom Helm test repository URL --helm-repo-dev: string # Provide a custom Helm dev repository URL --chart-source: string@"nu-complete stackablectl completions chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl completions listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) --help(-h) # Print help (see more with '--help') --version(-V) # Print version ] @@ -729,17 +959,23 @@ module completions { [ "oci" "repo" ] } + def "nu-complete stackablectl completions bash listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + # Generate shell completions for Bash export extern "stackablectl completions bash" [ --log-level(-l): string # Log level this application uses --no-cache # Do not cache the remote (default) demo, stack and release files - --demo-file(-d): string # Provide one or more additional (custom) demo file(s) - --stack-file(-s): string # Provide one or more additional (custom) stack file(s) - --release-file(-r): string # Provide one or more additional (custom) release file(s) + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators --helm-repo-stable: string # Provide a custom Helm stable repository URL --helm-repo-test: string # Provide a custom Helm test repository URL --helm-repo-dev: string # Provide a custom Helm dev repository URL --chart-source: string@"nu-complete stackablectl completions bash chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl completions bash listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) --help(-h) # Print help (see more with '--help') --version(-V) # Print version ] @@ -748,17 +984,23 @@ module completions { [ "oci" "repo" ] } + def "nu-complete stackablectl completions elvish listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + # Generate shell completions for Elvish export extern "stackablectl completions elvish" [ --log-level(-l): string # Log level this application uses --no-cache # Do not cache the remote (default) demo, stack and release files - --demo-file(-d): string # Provide one or more additional (custom) demo file(s) - --stack-file(-s): string # Provide one or more additional (custom) stack file(s) - --release-file(-r): string # Provide one or more additional (custom) release file(s) + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators --helm-repo-stable: string # Provide a custom Helm stable repository URL --helm-repo-test: string # Provide a custom Helm test repository URL --helm-repo-dev: string # Provide a custom Helm dev repository URL --chart-source: string@"nu-complete stackablectl completions elvish chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl completions elvish listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) --help(-h) # Print help (see more with '--help') --version(-V) # Print version ] @@ -767,17 +1009,23 @@ module completions { [ "oci" "repo" ] } + def "nu-complete stackablectl completions fish listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + # Generate shell completions for Fish export extern "stackablectl completions fish" [ --log-level(-l): string # Log level this application uses --no-cache # Do not cache the remote (default) demo, stack and release files - --demo-file(-d): string # Provide one or more additional (custom) demo file(s) - --stack-file(-s): string # Provide one or more additional (custom) stack file(s) - --release-file(-r): string # Provide one or more additional (custom) release file(s) + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators --helm-repo-stable: string # Provide a custom Helm stable repository URL --helm-repo-test: string # Provide a custom Helm test repository URL --helm-repo-dev: string # Provide a custom Helm dev repository URL --chart-source: string@"nu-complete stackablectl completions fish chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl completions fish listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) --help(-h) # Print help (see more with '--help') --version(-V) # Print version ] @@ -786,17 +1034,23 @@ module completions { [ "oci" "repo" ] } + def "nu-complete stackablectl completions nushell listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + # Generate shell completions for Nushell export extern "stackablectl completions nushell" [ --log-level(-l): string # Log level this application uses --no-cache # Do not cache the remote (default) demo, stack and release files - --demo-file(-d): string # Provide one or more additional (custom) demo file(s) - --stack-file(-s): string # Provide one or more additional (custom) stack file(s) - --release-file(-r): string # Provide one or more additional (custom) release file(s) + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators --helm-repo-stable: string # Provide a custom Helm stable repository URL --helm-repo-test: string # Provide a custom Helm test repository URL --helm-repo-dev: string # Provide a custom Helm dev repository URL --chart-source: string@"nu-complete stackablectl completions nushell chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl completions nushell listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) --help(-h) # Print help (see more with '--help') --version(-V) # Print version ] @@ -805,17 +1059,23 @@ module completions { [ "oci" "repo" ] } + def "nu-complete stackablectl completions zsh listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + # Generate shell completions for ZSH export extern "stackablectl completions zsh" [ --log-level(-l): string # Log level this application uses --no-cache # Do not cache the remote (default) demo, stack and release files - --demo-file(-d): string # Provide one or more additional (custom) demo file(s) - --stack-file(-s): string # Provide one or more additional (custom) stack file(s) - --release-file(-r): string # Provide one or more additional (custom) release file(s) + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators --helm-repo-stable: string # Provide a custom Helm stable repository URL --helm-repo-test: string # Provide a custom Helm test repository URL --helm-repo-dev: string # Provide a custom Helm dev repository URL --chart-source: string@"nu-complete stackablectl completions zsh chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl completions zsh listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) --help(-h) # Print help (see more with '--help') --version(-V) # Print version ] @@ -852,17 +1112,23 @@ module completions { [ "oci" "repo" ] } + def "nu-complete stackablectl cache listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + # Interact with locally cached files export extern "stackablectl cache" [ --log-level(-l): string # Log level this application uses --no-cache # Do not cache the remote (default) demo, stack and release files - --demo-file(-d): string # Provide one or more additional (custom) demo file(s) - --stack-file(-s): string # Provide one or more additional (custom) stack file(s) - --release-file(-r): string # Provide one or more additional (custom) release file(s) + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators --helm-repo-stable: string # Provide a custom Helm stable repository URL --helm-repo-test: string # Provide a custom Helm test repository URL --helm-repo-dev: string # Provide a custom Helm dev repository URL --chart-source: string@"nu-complete stackablectl cache chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl cache listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) --help(-h) # Print help (see more with '--help') --version(-V) # Print version ] @@ -871,17 +1137,23 @@ module completions { [ "oci" "repo" ] } + def "nu-complete stackablectl cache list listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + # List cached files export extern "stackablectl cache list" [ --log-level(-l): string # Log level this application uses --no-cache # Do not cache the remote (default) demo, stack and release files - --demo-file(-d): string # Provide one or more additional (custom) demo file(s) - --stack-file(-s): string # Provide one or more additional (custom) stack file(s) - --release-file(-r): string # Provide one or more additional (custom) release file(s) + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators --helm-repo-stable: string # Provide a custom Helm stable repository URL --helm-repo-test: string # Provide a custom Helm test repository URL --helm-repo-dev: string # Provide a custom Helm dev repository URL --chart-source: string@"nu-complete stackablectl cache list chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl cache list listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) --help(-h) # Print help (see more with '--help') --version(-V) # Print version ] @@ -890,19 +1162,25 @@ module completions { [ "oci" "repo" ] } + def "nu-complete stackablectl cache clean listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + # Clean cached files export extern "stackablectl cache clean" [ --old # Only remove outdated files in the cache --outdated # Only remove outdated files in the cache --log-level(-l): string # Log level this application uses --no-cache # Do not cache the remote (default) demo, stack and release files - --demo-file(-d): string # Provide one or more additional (custom) demo file(s) - --stack-file(-s): string # Provide one or more additional (custom) stack file(s) - --release-file(-r): string # Provide one or more additional (custom) release file(s) + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators --helm-repo-stable: string # Provide a custom Helm stable repository URL --helm-repo-test: string # Provide a custom Helm test repository URL --helm-repo-dev: string # Provide a custom Helm dev repository URL --chart-source: string@"nu-complete stackablectl cache clean chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl cache clean listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) --help(-h) # Print help (see more with '--help') --version(-V) # Print version ] @@ -927,24 +1205,92 @@ module completions { [ "oci" "repo" ] } + def "nu-complete stackablectl experimental-debug listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + # EXPERIMENTAL: Launch a debug container for a Pod export extern "stackablectl experimental-debug" [ --namespace(-n): string # The namespace of the Pod being debugged - pod: string # The Pod to debug --container(-c): string # The target container to debug --image: string # The debug container image - ...cmd: string # The command to run in the debug container --log-level(-l): string # Log level this application uses --no-cache # Do not cache the remote (default) demo, stack and release files - --demo-file(-d): string # Provide one or more additional (custom) demo file(s) - --stack-file(-s): string # Provide one or more additional (custom) stack file(s) - --release-file(-r): string # Provide one or more additional (custom) release file(s) + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators --helm-repo-stable: string # Provide a custom Helm stable repository URL --helm-repo-test: string # Provide a custom Helm test repository URL --helm-repo-dev: string # Provide a custom Helm dev repository URL --chart-source: string@"nu-complete stackablectl experimental-debug chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl experimental-debug listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) --help(-h) # Print help (see more with '--help') --version(-V) # Print version + pod: string # The Pod to debug + ...cmd: string # The command to run in the debug container + ] + + def "nu-complete stackablectl version chart_source" [] { + [ "oci" "repo" ] + } + + def "nu-complete stackablectl version listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + + # Retrieve version data of the stackablectl installation + export extern "stackablectl version" [ + --log-level(-l): string # Log level this application uses + --no-cache # Do not cache the remote (default) demo, stack and release files + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators + --helm-repo-stable: string # Provide a custom Helm stable repository URL + --helm-repo-test: string # Provide a custom Helm test repository URL + --helm-repo-dev: string # Provide a custom Helm dev repository URL + --chart-source: string@"nu-complete stackablectl version chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl version listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) + --help(-h) # Print help (see more with '--help') + --version(-V) # Print version + ] + + def "nu-complete stackablectl version check chart_source" [] { + [ "oci" "repo" ] + } + + def "nu-complete stackablectl version check listener_class_preset" [] { + [ "none" "stable-nodes" "ephemeral-nodes" ] + } + + # Check if there is a new version available + export extern "stackablectl version check" [ + --log-level(-l): string # Log level this application uses + --no-cache # Do not cache the remote (default) demo, stack and release files + --demo-file(-d): path # Provide one or more additional (custom) demo file(s) + --stack-file(-s): path # Provide one or more additional (custom) stack file(s) + --release-file(-r): path # Provide one or more additional (custom) release file(s) + --operator-values(-f): path # Path to a Helm values file that will be used for the installation of operators + --helm-repo-stable: string # Provide a custom Helm stable repository URL + --helm-repo-test: string # Provide a custom Helm test repository URL + --helm-repo-dev: string # Provide a custom Helm dev repository URL + --chart-source: string@"nu-complete stackablectl version check chart_source" # Source the charts from either a OCI registry or from index.yaml-based repositories + --listener-class-preset: string@"nu-complete stackablectl version check listener_class_preset" # Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`) + --help(-h) # Print help (see more with '--help') + --version(-V) # Print version + ] + + # Print this message or the help of the given subcommand(s) + export extern "stackablectl version help" [ + ] + + # Check if there is a new version available + export extern "stackablectl version help check" [ + ] + + # Print this message or the help of the given subcommand(s) + export extern "stackablectl version help help" [ ] # Print this message or the help of the given subcommand(s) @@ -1015,6 +1361,10 @@ module completions { export extern "stackablectl help stack install" [ ] + # Uninstall a specific stack. Caution: This will delete the provided stack namespace, the operators and provided operator namespace, and all Stackable CRDs + export extern "stackablectl help stack uninstall" [ + ] + # Interact with deployed stacklets, which are bundles of resources and containers required to run the product export extern "stackablectl help stacklet" [ ] @@ -1043,6 +1393,10 @@ module completions { export extern "stackablectl help demo install" [ ] + # Uninstall a specific stack. Caution: This will delete the provided stack namespace, the operators and provided operator namespace, and all Stackable CRDs + export extern "stackablectl help demo uninstall" [ + ] + # Generate shell completions for this tool export extern "stackablectl help completions" [ ] @@ -1083,6 +1437,14 @@ module completions { export extern "stackablectl help experimental-debug" [ ] + # Retrieve version data of the stackablectl installation + export extern "stackablectl help version" [ + ] + + # Check if there is a new version available + export extern "stackablectl help version check" [ + ] + # Print this message or the help of the given subcommand(s) export extern "stackablectl help help" [ ] diff --git a/extra/man/stackablectl.1 b/extra/man/stackablectl.1 index 8eb5168a..06961fd3 100644 --- a/extra/man/stackablectl.1 +++ b/extra/man/stackablectl.1 @@ -1,15 +1,15 @@ .ie \n(.g .ds Aq \(aq .el .ds Aq ' -.TH stackablectl 1 "stackablectl 1.0.0" +.TH stackablectl 1 "stackablectl 1.4.0" .SH NAME stackablectl \- Command line tool to interact with the Stackable Data Platform .SH SYNOPSIS -\fBstackablectl\fR [\fB\-l\fR|\fB\-\-log\-level\fR] [\fB\-\-no\-cache\fR] [\fB\-d\fR|\fB\-\-demo\-file\fR] [\fB\-s\fR|\fB\-\-stack\-file\fR] [\fB\-r\fR|\fB\-\-release\-file\fR] [\fB\-\-helm\-repo\-stable\fR] [\fB\-\-helm\-repo\-test\fR] [\fB\-\-helm\-repo\-dev\fR] [\fB\-\-chart\-source\fR] [\fB\-h\fR|\fB\-\-help\fR] [\fB\-V\fR|\fB\-\-version\fR] <\fIsubcommands\fR> +\fBstackablectl\fR [\fB\-l\fR|\fB\-\-log\-level\fR] [\fB\-\-no\-cache\fR] [\fB\-d\fR|\fB\-\-demo\-file\fR] [\fB\-s\fR|\fB\-\-stack\-file\fR] [\fB\-r\fR|\fB\-\-release\-file\fR] [\fB\-f\fR|\fB\-\-operator\-values\fR] [\fB\-\-helm\-repo\-stable\fR] [\fB\-\-helm\-repo\-test\fR] [\fB\-\-helm\-repo\-dev\fR] [\fB\-\-chart\-source\fR] [\fB\-\-listener\-class\-preset\fR] [\fB\-h\fR|\fB\-\-help\fR] [\fB\-V\fR|\fB\-\-version\fR] <\fIsubcommands\fR> .SH DESCRIPTION Command line tool to interact with the Stackable Data Platform .SH OPTIONS .TP -\fB\-l\fR, \fB\-\-log\-level\fR=\fILOG_LEVEL\fR +\fB\-l\fR, \fB\-\-log\-level\fR \fI\fR Log level this application uses .TP \fB\-\-no\-cache\fR @@ -18,7 +18,14 @@ Do not cache the remote (default) demo, stack and release files Cached files are saved at \*(Aq$XDG_CACHE_HOME/stackablectl\*(Aq, which is usually \*(Aq$HOME/.cache/stackablectl\*(Aq when not explicitly set. .TP -\fB\-d\fR, \fB\-\-demo\-file\fR=\fIDEMO_FILE\fR +\fB\-h\fR, \fB\-\-help\fR +Print help (see a summary with \*(Aq\-h\*(Aq) +.TP +\fB\-V\fR, \fB\-\-version\fR +Print version +.SH "FILE OPTIONS" +.TP +\fB\-d\fR, \fB\-\-demo\-file\fR \fI\fR Provide one or more additional (custom) demo file(s) Demos are loaded in the following order: Remote (default) demo file, custom @@ -29,7 +36,7 @@ demos with the same name, the last demo definition will be used. Use "stackablectl [OPTIONS] \-d path/to/demos1.yaml \-d path/to/demos2.yaml" to provide multiple additional demo files. .TP -\fB\-s\fR, \fB\-\-stack\-file\fR=\fISTACK_FILE\fR +\fB\-s\fR, \fB\-\-stack\-file\fR \fI\fR Provide one or more additional (custom) stack file(s) Stacks are loaded in the following order: Remote (default) stack file, custom @@ -40,7 +47,7 @@ stacks with the same name, the last stack definition will be used. Use "stackablectl [OPTIONS] \-s path/to/stacks1.yaml \-s path/to/stacks2.yaml" to provide multiple additional stack files. .TP -\fB\-r\fR, \fB\-\-release\-file\fR=\fIRELEASE_FILE\fR +\fB\-r\fR, \fB\-\-release\-file\fR \fI\fR Provide one or more additional (custom) release file(s) Releases are loaded in the following order: Remote (default) release file, @@ -52,16 +59,42 @@ definition will be used. Use "stackablectl [OPTIONS] \-r path/to/releases1.yaml \-r path/to/releases2.yaml" to provide multiple additional release files. .TP -\fB\-\-helm\-repo\-stable\fR=\fIURL\fR [default: https://repo.stackable.tech/repository/helm\-stable/] +\fB\-f\fR, \fB\-\-operator\-values\fR \fI\fR +Path to a Helm values file that will be used for the installation of operators + +The file is a YAML file containing Helm values used to deploy operators. +Operator\-specific keys (e.g. \*(Aqairflow\-operator\*(Aq, \*(Aqzookeeper\-operator\*(Aq) map +to the Helm values for that operator. Use YAML anchors and aliases to share +values across operators. + +Example values file: + + airflow\-operator: + tolerations: &default\-tolerations + \- key: "example" + operator: "Exists" + effect: "NoSchedule" + podAnnotations: + example.com/team: "data\-engineering" + zookeeper\-operator: + tolerations: *default\-tolerations + podAnnotations: + example.com/team: "platform" + +Use "stackablectl [OPTIONS] \-f path/to/values.yaml" to provide a +values file. +.SH "HELM REPOSITORY OPTIONS" +.TP +\fB\-\-helm\-repo\-stable\fR \fI\fR [default: https://repo.stackable.tech/repository/helm\-stable/] Provide a custom Helm stable repository URL .TP -\fB\-\-helm\-repo\-test\fR=\fIURL\fR [default: https://repo.stackable.tech/repository/helm\-test/] +\fB\-\-helm\-repo\-test\fR \fI\fR [default: https://repo.stackable.tech/repository/helm\-test/] Provide a custom Helm test repository URL .TP -\fB\-\-helm\-repo\-dev\fR=\fIURL\fR [default: https://repo.stackable.tech/repository/helm\-dev/] +\fB\-\-helm\-repo\-dev\fR \fI\fR [default: https://repo.stackable.tech/repository/helm\-dev/] Provide a custom Helm dev repository URL .TP -\fB\-\-chart\-source\fR=\fICHART_SOURCE\fR [default: oci] +\fB\-\-chart\-source\fR \fI\fR [default: oci] Source the charts from either a OCI registry or from index.yaml\-based repositories. .br @@ -73,12 +106,26 @@ oci: OCI registry .IP \(bu 2 repo: index.yaml\-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator\-specific .RE +.SH "OPERATOR SPECIFIC CONFIGURATIONS" .TP -\fB\-h\fR, \fB\-\-help\fR -Print help (see a summary with \*(Aq\-h\*(Aq) -.TP -\fB\-V\fR, \fB\-\-version\fR -Print version +\fB\-\-listener\-class\-preset\fR \fI\fR +Choose the ListenerClass preset (`none`, `ephemeral\-nodes` or `stable\-nodes`). + +This takes precedence over values provided via the \*(Aq\-f/\-\-operator\-values\*(Aq flag. + +This maps to the listener\-operator Helm Chart preset value, see [the listener\-operator documentation](https://docs.stackable.tech/home/nightly/listener\-operator/listenerclass/#presets) for details. +.br + +.br +\fIPossible values:\fR +.RS 14 +.IP \(bu 2 +none +.IP \(bu 2 +stable\-nodes +.IP \(bu 2 +ephemeral\-nodes +.RE .SH SUBCOMMANDS .TP stackablectl\-operator(1) @@ -105,9 +152,12 @@ Interact with locally cached files stackablectl\-experimental\-debug(1) EXPERIMENTAL: Launch a debug container for a Pod .TP +stackablectl\-version(1) +Retrieve version data of the stackablectl installation +.TP stackablectl\-help(1) Print this message or the help of the given subcommand(s) .SH VERSION -v1.0.0 +v1.4.0 .SH AUTHORS Stackable GmbH diff --git a/go.mod b/go.mod index 3f57ad35..c304c778 100644 --- a/go.mod +++ b/go.mod @@ -1,77 +1,61 @@ module rust/stackable/go-helm-wrapper -go 1.22.4 - -toolchain go1.22.5 +go 1.26.0 +// We can not bump to helm 4 yet: +// > go.mod:8:2: require helm.sh/helm/v3: version "v4.1.1" invalid: should be v3, not v4 +// Related helm 4 issue: https://github.com/stackabletech/issues/issues/814 require ( - github.com/mittwald/go-helm-client v0.12.10 - helm.sh/helm/v3 v3.15.3 - k8s.io/client-go v0.30.3 + github.com/mittwald/go-helm-client v0.12.19 + helm.sh/helm/v3 v3.20.0 + k8s.io/client-go v0.35.2 ) require ( + dario.cat/mergo v1.0.1 // indirect github.com/AdaLogics/go-fuzz-headers v0.0.0-20240716105424-66b64c4bb379 // indirect - github.com/Azure/go-ansiterm v0.0.0-20230124172434-306776ec8161 // indirect - github.com/BurntSushi/toml v1.4.0 // indirect + github.com/Azure/go-ansiterm v0.0.0-20250102033503-faa5f7b0171c // indirect + github.com/BurntSushi/toml v1.6.0 // indirect github.com/MakeNowJust/heredoc v1.0.0 // indirect github.com/Masterminds/goutils v1.1.1 // indirect - github.com/Masterminds/semver/v3 v3.2.1 // indirect - github.com/Masterminds/sprig/v3 v3.2.3 // indirect + github.com/Masterminds/semver/v3 v3.4.0 // indirect + github.com/Masterminds/sprig/v3 v3.3.0 // indirect github.com/Masterminds/squirrel v1.5.4 // indirect - github.com/Microsoft/hcsshim v0.12.5 // indirect github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2 // indirect - github.com/beorn7/perks v1.0.1 // indirect github.com/blang/semver/v4 v4.0.0 // indirect - github.com/cespare/xxhash/v2 v2.3.0 // indirect github.com/chai2010/gettext-go v1.0.3 // indirect - github.com/containerd/containerd v1.7.20 // indirect - github.com/containerd/errdefs v0.1.0 // indirect + github.com/containerd/containerd v1.7.30 // indirect + github.com/containerd/errdefs v0.3.0 // indirect github.com/containerd/log v0.1.0 // indirect github.com/containerd/platforms v0.2.1 // indirect - github.com/cyphar/filepath-securejoin v0.3.1 // indirect + github.com/cyphar/filepath-securejoin v0.6.1 // indirect github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect - github.com/distribution/reference v0.6.0 // indirect - github.com/docker/cli v27.1.1+incompatible // indirect - github.com/docker/distribution v2.8.3+incompatible // indirect - github.com/docker/docker v27.1.1+incompatible // indirect - github.com/docker/docker-credential-helpers v0.8.2 // indirect - github.com/docker/go-connections v0.5.0 // indirect - github.com/docker/go-metrics v0.0.1 // indirect - github.com/emicklei/go-restful/v3 v3.12.1 // indirect - github.com/evanphx/json-patch v5.9.0+incompatible // indirect + github.com/emicklei/go-restful/v3 v3.12.2 // indirect + github.com/evanphx/json-patch v5.9.11+incompatible // indirect github.com/exponent-io/jsonpath v0.0.0-20210407135951-1de76d718b3f // indirect github.com/fatih/color v1.17.0 // indirect - github.com/felixge/httpsnoop v1.0.4 // indirect + github.com/fxamacker/cbor/v2 v2.9.0 // indirect github.com/go-errors/errors v1.5.1 // indirect github.com/go-gorp/gorp/v3 v3.1.0 // indirect - github.com/go-logr/logr v1.4.2 // indirect - github.com/go-logr/stdr v1.2.2 // indirect + github.com/go-logr/logr v1.4.3 // indirect github.com/go-openapi/jsonpointer v0.21.0 // indirect github.com/go-openapi/jsonreference v0.21.0 // indirect github.com/go-openapi/swag v0.23.0 // indirect github.com/gobwas/glob v0.2.3 // indirect - github.com/gogo/protobuf v1.3.2 // indirect - github.com/golang/protobuf v1.5.4 // indirect - github.com/google/btree v1.1.2 // indirect - github.com/google/gnostic-models v0.6.8 // indirect - github.com/google/go-cmp v0.6.0 // indirect - github.com/google/gofuzz v1.2.0 // indirect - github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 // indirect + github.com/google/btree v1.1.3 // indirect + github.com/google/gnostic-models v0.7.0 // indirect + github.com/google/go-cmp v0.7.0 // indirect github.com/google/uuid v1.6.0 // indirect - github.com/gorilla/mux v1.8.1 // indirect - github.com/gorilla/websocket v1.5.3 // indirect github.com/gosuri/uitable v0.0.4 // indirect github.com/gregjones/httpcache v0.0.0-20190611155906-901d90724c79 // indirect github.com/hashicorp/errwrap v1.1.0 // indirect github.com/hashicorp/go-multierror v1.1.1 // indirect github.com/huandu/xstrings v1.5.0 // indirect - github.com/imdario/mergo v0.3.16 // indirect github.com/inconshreveable/mousetrap v1.1.0 // indirect github.com/jmoiron/sqlx v1.4.0 // indirect github.com/josharian/intern v1.0.0 // indirect github.com/json-iterator/go v1.1.12 // indirect - github.com/klauspost/compress v1.17.9 // indirect + github.com/klauspost/compress v1.18.0 // indirect github.com/lann/builder v0.0.0-20180802200727-47ae307949d0 // indirect github.com/lann/ps v0.0.0-20150810152359-62de8c46ede0 // indirect github.com/lib/pq v1.10.9 // indirect @@ -80,75 +64,61 @@ require ( github.com/mattn/go-colorable v0.1.13 // indirect github.com/mattn/go-isatty v0.0.20 // indirect github.com/mattn/go-runewidth v0.0.16 // indirect - github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0 // indirect github.com/mitchellh/copystructure v1.2.0 // indirect github.com/mitchellh/go-wordwrap v1.0.1 // indirect github.com/mitchellh/reflectwalk v1.0.2 // indirect - github.com/moby/locker v1.0.1 // indirect - github.com/moby/spdystream v0.5.0 // indirect - github.com/moby/term v0.5.0 // indirect + github.com/moby/term v0.5.2 // indirect github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect - github.com/modern-go/reflect2 v1.0.2 // indirect + github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee // indirect github.com/monochromegane/go-gitignore v0.0.0-20200626010858-205db1a8cc00 // indirect github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect - github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f // indirect github.com/opencontainers/go-digest v1.0.0 // indirect - github.com/opencontainers/image-spec v1.1.0 // indirect + github.com/opencontainers/image-spec v1.1.1 // indirect github.com/peterbourgon/diskv v2.0.1+incompatible // indirect github.com/pkg/errors v0.9.1 // indirect - github.com/prometheus/client_golang v1.19.1 // indirect - github.com/prometheus/client_model v0.6.1 // indirect - github.com/prometheus/common v0.55.0 // indirect - github.com/prometheus/procfs v0.15.1 // indirect + github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect github.com/rivo/uniseg v0.4.7 // indirect - github.com/rubenv/sql-migrate v1.7.0 // indirect + github.com/rubenv/sql-migrate v1.8.1 // indirect github.com/russross/blackfriday/v2 v2.1.0 // indirect + github.com/santhosh-tekuri/jsonschema/v6 v6.0.2 // indirect github.com/shopspring/decimal v1.4.0 // indirect github.com/sirupsen/logrus v1.9.3 // indirect - github.com/spf13/cast v1.6.0 // indirect - github.com/spf13/cobra v1.8.1 // indirect - github.com/spf13/pflag v1.0.5 // indirect - github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb // indirect - github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 // indirect - github.com/xeipuuv/gojsonschema v1.2.0 // indirect + github.com/spf13/cast v1.7.0 // indirect + github.com/spf13/cobra v1.10.2 // indirect + github.com/spf13/pflag v1.0.10 // indirect + github.com/x448/float16 v0.8.4 // indirect github.com/xlab/treeprint v1.2.0 // indirect - go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.53.0 // indirect - go.opentelemetry.io/otel v1.28.0 // indirect - go.opentelemetry.io/otel/metric v1.28.0 // indirect - go.opentelemetry.io/otel/trace v1.28.0 // indirect - go.starlark.net v0.0.0-20240725214946-42030a7cedce // indirect - golang.org/x/crypto v0.25.0 // indirect - golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56 // indirect - golang.org/x/net v0.27.0 // indirect - golang.org/x/oauth2 v0.21.0 // indirect - golang.org/x/sync v0.7.0 // indirect - golang.org/x/sys v0.22.0 // indirect - golang.org/x/term v0.22.0 // indirect - golang.org/x/text v0.16.0 // indirect - golang.org/x/time v0.5.0 // indirect - google.golang.org/appengine v1.6.8 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20240730163845-b1a4ccb954bf // indirect - google.golang.org/grpc v1.65.0 // indirect - google.golang.org/protobuf v1.34.2 // indirect - gopkg.in/evanphx/json-patch.v4 v4.12.0 // indirect - gopkg.in/evanphx/json-patch.v5 v5.9.0 // indirect + go.yaml.in/yaml/v2 v2.4.3 // indirect + go.yaml.in/yaml/v3 v3.0.4 // indirect + golang.org/x/crypto v0.46.0 // indirect + golang.org/x/net v0.48.0 // indirect + golang.org/x/oauth2 v0.30.0 // indirect + golang.org/x/sync v0.19.0 // indirect + golang.org/x/sys v0.40.0 // indirect + golang.org/x/term v0.39.0 // indirect + golang.org/x/text v0.33.0 // indirect + golang.org/x/time v0.12.0 // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20250528174236-200df99c418a // indirect + google.golang.org/grpc v1.72.2 // indirect + google.golang.org/protobuf v1.36.8 // indirect + gopkg.in/evanphx/json-patch.v4 v4.13.0 // indirect gopkg.in/inf.v0 v0.9.1 // indirect - gopkg.in/yaml.v2 v2.4.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect - k8s.io/api v0.30.3 // indirect - k8s.io/apiextensions-apiserver v0.30.3 // indirect - k8s.io/apimachinery v0.30.3 // indirect - k8s.io/apiserver v0.30.3 // indirect - k8s.io/cli-runtime v0.30.3 // indirect - k8s.io/component-base v0.30.3 // indirect + k8s.io/api v0.35.2 // indirect + k8s.io/apiextensions-apiserver v0.35.0 // indirect + k8s.io/apimachinery v0.35.2 // indirect + k8s.io/apiserver v0.35.0 // indirect + k8s.io/cli-runtime v0.35.0 // indirect + k8s.io/component-base v0.35.0 // indirect k8s.io/klog/v2 v2.130.1 // indirect - k8s.io/kube-openapi v0.0.0-20240730131305-7a9a4e85957e // indirect - k8s.io/kubectl v0.30.3 // indirect - k8s.io/utils v0.0.0-20240711033017-18e509b52bc8 // indirect - oras.land/oras-go v1.2.6 // indirect - sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect - sigs.k8s.io/kustomize/api v0.17.3 // indirect - sigs.k8s.io/kustomize/kyaml v0.17.2 // indirect - sigs.k8s.io/structured-merge-diff/v4 v4.4.1 // indirect - sigs.k8s.io/yaml v1.4.0 // indirect + k8s.io/kube-openapi v0.0.0-20250910181357-589584f1c912 // indirect + k8s.io/kubectl v0.35.0 // indirect + k8s.io/utils v0.0.0-20251002143259-bc988d571ff4 // indirect + oras.land/oras-go/v2 v2.6.0 // indirect + sigs.k8s.io/json v0.0.0-20250730193827-2d320260d730 // indirect + sigs.k8s.io/kustomize/api v0.20.1 // indirect + sigs.k8s.io/kustomize/kyaml v0.20.1 // indirect + sigs.k8s.io/randfill v1.0.0 // indirect + sigs.k8s.io/structured-merge-diff/v6 v6.3.0 // indirect + sigs.k8s.io/yaml v1.6.0 // indirect ) diff --git a/go.sum b/go.sum index 858a5bbd..b7c1810e 100644 --- a/go.sum +++ b/go.sum @@ -1,261 +1,152 @@ +dario.cat/mergo v1.0.1 h1:Ra4+bf83h2ztPIQYNP99R6m+Y7KfnARDfID+a+vLl4s= +dario.cat/mergo v1.0.1/go.mod h1:uNxQE+84aUszobStD9th8a29P2fMDhsBdgRYvZOxGmk= +filippo.io/edwards25519 v1.1.0 h1:FNf4tywRC1HmFuKW5xopWpigGjJKiJSV0Cqo0cJWDaA= filippo.io/edwards25519 v1.1.0/go.mod h1:BxyFTGdWcka3PhytdK4V28tE5sGfRvvvRV7EaN4VDT4= -github.com/AdaLogics/go-fuzz-headers v0.0.0-20230811130428-ced1acdcaa24 h1:bvDV9vkmnHYOMsOr4WLk+Vo07yKIzd94sVoIqshQ4bU= -github.com/AdaLogics/go-fuzz-headers v0.0.0-20230811130428-ced1acdcaa24/go.mod h1:8o94RPi1/7XTJvwPpRSzSUedZrtlirdB3r9Z20bi2f8= github.com/AdaLogics/go-fuzz-headers v0.0.0-20240716105424-66b64c4bb379 h1:shYAfOpsleWVaSwGxQjmi+BBIwzj5jxB1FTCpVqs0N8= github.com/AdaLogics/go-fuzz-headers v0.0.0-20240716105424-66b64c4bb379/go.mod h1:8o94RPi1/7XTJvwPpRSzSUedZrtlirdB3r9Z20bi2f8= -github.com/Azure/go-ansiterm v0.0.0-20230124172434-306776ec8161 h1:L/gRVlceqvL25UVaW/CKtUDjefjrs0SPonmDGUVOYP0= -github.com/Azure/go-ansiterm v0.0.0-20230124172434-306776ec8161/go.mod h1:xomTg63KZ2rFqZQzSB4Vz2SUXa1BpHTVz9L5PTmPC4E= -github.com/BurntSushi/toml v1.3.2 h1:o7IhLm0Msx3BaB+n3Ag7L8EVlByGnpq14C4YWiu/gL8= -github.com/BurntSushi/toml v1.3.2/go.mod h1:CxXYINrC8qIiEnFrOxCa7Jy5BFHlXnUU2pbicEuybxQ= -github.com/BurntSushi/toml v1.4.0 h1:kuoIxZQy2WRRk1pttg9asf+WVv6tWQuBNVmK8+nqPr0= -github.com/BurntSushi/toml v1.4.0/go.mod h1:ukJfTF/6rtPPRCnwkur4qwRxa8vTRFBF0uk2lLoLwho= +github.com/Azure/go-ansiterm v0.0.0-20250102033503-faa5f7b0171c h1:udKWzYgxTojEKWjV8V+WSxDXJ4NFATAsZjh8iIbsQIg= +github.com/Azure/go-ansiterm v0.0.0-20250102033503-faa5f7b0171c/go.mod h1:xomTg63KZ2rFqZQzSB4Vz2SUXa1BpHTVz9L5PTmPC4E= +github.com/BurntSushi/toml v1.6.0 h1:dRaEfpa2VI55EwlIW72hMRHdWouJeRF7TPYhI+AUQjk= +github.com/BurntSushi/toml v1.6.0/go.mod h1:ukJfTF/6rtPPRCnwkur4qwRxa8vTRFBF0uk2lLoLwho= github.com/DATA-DOG/go-sqlmock v1.5.2 h1:OcvFkGmslmlZibjAjaHm3L//6LiuBgolP7OputlJIzU= github.com/DATA-DOG/go-sqlmock v1.5.2/go.mod h1:88MAG/4G7SMwSE3CeA0ZKzrT5CiOU3OJ+JlNzwDqpNU= github.com/MakeNowJust/heredoc v1.0.0 h1:cXCdzVdstXyiTqTvfqk9SDHpKNjxuom+DOlyEeQ4pzQ= github.com/MakeNowJust/heredoc v1.0.0/go.mod h1:mG5amYoWBHf8vpLOuehzbGGw0EHxpZZ6lCpQ4fNJ8LE= github.com/Masterminds/goutils v1.1.1 h1:5nUrii3FMTL5diU80unEVvNevw1nH4+ZV4DSLVJLSYI= github.com/Masterminds/goutils v1.1.1/go.mod h1:8cTjp+g8YejhMuvIA5y2vz3BpJxksy863GQaJW2MFNU= -github.com/Masterminds/semver/v3 v3.2.0/go.mod h1:qvl/7zhW3nngYb5+80sSMF+FG2BjYrf8m9wsX0PNOMQ= -github.com/Masterminds/semver/v3 v3.2.1 h1:RN9w6+7QoMeJVGyfmbcgs28Br8cvmnucEXnY0rYXWg0= -github.com/Masterminds/semver/v3 v3.2.1/go.mod h1:qvl/7zhW3nngYb5+80sSMF+FG2BjYrf8m9wsX0PNOMQ= -github.com/Masterminds/sprig/v3 v3.2.3 h1:eL2fZNezLomi0uOLqjQoN6BfsDD+fyLtgbJMAj9n6YA= -github.com/Masterminds/sprig/v3 v3.2.3/go.mod h1:rXcFaZ2zZbLRJv/xSysmlgIM1u11eBaRMhvYXJNkGuM= +github.com/Masterminds/semver/v3 v3.4.0 h1:Zog+i5UMtVoCU8oKka5P7i9q9HgrJeGzI9SA1Xbatp0= +github.com/Masterminds/semver/v3 v3.4.0/go.mod h1:4V+yj/TJE1HU9XfppCwVMZq3I84lprf4nC11bSS5beM= +github.com/Masterminds/sprig/v3 v3.3.0 h1:mQh0Yrg1XPo6vjYXgtf5OtijNAKJRNcTdOOGZe3tPhs= +github.com/Masterminds/sprig/v3 v3.3.0/go.mod h1:Zy1iXRYNqNLUolqCpL4uhk6SHUMAOSCzdgBfDb35Lz0= github.com/Masterminds/squirrel v1.5.4 h1:uUcX/aBc8O7Fg9kaISIUsHXdKuqehiXAMQTYX8afzqM= github.com/Masterminds/squirrel v1.5.4/go.mod h1:NNaOrjSoIDfDA40n7sr2tPNZRfjzjA400rg+riTZj10= -github.com/Microsoft/go-winio v0.6.1 h1:9/kr64B9VUZrLm5YYwbGtUJnMgqWVOdUAXu6Migciow= -github.com/Microsoft/go-winio v0.6.1/go.mod h1:LRdKpFKfdobln8UmuiYcKPot9D2v6svN5+sAH+4kjUM= -github.com/Microsoft/go-winio v0.6.2 h1:F2VQgta7ecxGYO8k3ZZz3RS8fVIXVxONVUPlNERoyfY= -github.com/Microsoft/hcsshim v0.11.4 h1:68vKo2VN8DE9AdN4tnkWnmdhqdbpUFM8OF3Airm7fz8= -github.com/Microsoft/hcsshim v0.11.4/go.mod h1:smjE4dvqPX9Zldna+t5FG3rnoHhaB7QYxPRqGcpAD9w= -github.com/Microsoft/hcsshim v0.12.5 h1:bpTInLlDy/nDRWFVcefDZZ1+U8tS+rz3MxjKgu9boo0= -github.com/Microsoft/hcsshim v0.12.5/go.mod h1:tIUGego4G1EN5Hb6KC90aDYiUI2dqLSTTOCjVNpOgZ8= -github.com/Shopify/logrus-bugsnag v0.0.0-20171204204709-577dee27f20d h1:UrqY+r/OJnIp5u0s1SbQ8dVfLCZJsnvazdBP5hS4iRs= -github.com/Shopify/logrus-bugsnag v0.0.0-20171204204709-577dee27f20d/go.mod h1:HI8ITrYtUY+O+ZhtlqUnD8+KwNPOyugEhfP9fdUIaEQ= -github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= -github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= -github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5 h1:0CwZNZbxp69SHPdPJAN/hZIm0C4OItdklCFmMRWYpio= -github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkYZB8zMSxRWpUBQtwG5a7fFgvEO+odwuTv2gs= github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2 h1:DklsrG3dyBCFEj5IhUbnKptjxatkF07cF2ak3yi77so= github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2/go.mod h1:WaHUgvxTVq04UNunO+XhnAqY/wQc+bxr74GqbsZ/Jqw= -github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= -github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8= github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= github.com/blang/semver/v4 v4.0.0 h1:1PFHFE6yCCTv8C1TeyNNarDzntLi7wMI5i/pzqYIsAM= github.com/blang/semver/v4 v4.0.0/go.mod h1:IbckMUScFkM3pff0VJDNKRiT6TG/YpiHIM2yvyW5YoQ= github.com/bshuster-repo/logrus-logstash-hook v1.0.0 h1:e+C0SB5R1pu//O4MQ3f9cFuPGoOVeF2fE4Og9otCc70= github.com/bshuster-repo/logrus-logstash-hook v1.0.0/go.mod h1:zsTqEiSzDgAa/8GZR7E1qaXrhYNDKBYy5/dWPTIflbk= -github.com/bugsnag/bugsnag-go v0.0.0-20141110184014-b1d153021fcd h1:rFt+Y/IK1aEZkEHchZRSq9OQbsSzIT/OrI8YFFmRIng= -github.com/bugsnag/bugsnag-go v0.0.0-20141110184014-b1d153021fcd/go.mod h1:2oa8nejYd4cQ/b0hMIopN0lCRxU0bueqREvZLWFrtK8= -github.com/bugsnag/osext v0.0.0-20130617224835-0dd3f918b21b h1:otBG+dV+YK+Soembjv71DPz3uX/V/6MMlSyD9JBQ6kQ= -github.com/bugsnag/osext v0.0.0-20130617224835-0dd3f918b21b/go.mod h1:obH5gd0BsqsP2LwDJ9aOkm/6J86V6lyAXCoQWGw3K50= -github.com/bugsnag/panicwrap v0.0.0-20151223152923-e2c28503fcd0 h1:nvj0OLI3YqYXer/kZD8Ri1aaunCxIEsOst1BVJswV0o= -github.com/bugsnag/panicwrap v0.0.0-20151223152923-e2c28503fcd0/go.mod h1:D/8v3kj0zr8ZAKg1AQ6crr+5VwKN5eIywRkfhyM/+dE= -github.com/cespare/xxhash/v2 v2.2.0 h1:DC2CZ1Ep5Y4k3ZQ899DldepgrayRUGE6BBZ/cd9Cj44= -github.com/cespare/xxhash/v2 v2.2.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= +github.com/cenkalti/backoff/v4 v4.3.0 h1:MyRJ/UdXutAwSAT+s3wNd7MfTIcy71VQueUuFK343L8= +github.com/cenkalti/backoff/v4 v4.3.0/go.mod h1:Y3VNntkOUPxTVeUxJ/G5vcM//AlwfmyYozVcomhLiZE= github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs= github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= -github.com/chai2010/gettext-go v1.0.2 h1:1Lwwip6Q2QGsAdl/ZKPCwTe9fe0CjlUbqj5bFNSjIRk= -github.com/chai2010/gettext-go v1.0.2/go.mod h1:y+wnP2cHYaVj19NZhYKAwEMH2CI1gNHeQQ+5AjwawxA= github.com/chai2010/gettext-go v1.0.3 h1:9liNh8t+u26xl5ddmWLmsOsdNLwkdRTg5AG+JnTiM80= github.com/chai2010/gettext-go v1.0.3/go.mod h1:y+wnP2cHYaVj19NZhYKAwEMH2CI1gNHeQQ+5AjwawxA= -github.com/containerd/cgroups v1.1.0 h1:v8rEWFl6EoqHB+swVNjVoCJE8o3jX7e8nqBGPLaDFBM= -github.com/containerd/cgroups v1.1.0/go.mod h1:6ppBcbh/NOOUU+dMKrykgaBnK9lCIBxHqJDGwsa1mIw= -github.com/containerd/containerd v1.7.12 h1:+KQsnv4VnzyxWcfO9mlxxELaoztsDEjOuCMPAuPqgU0= -github.com/containerd/containerd v1.7.12/go.mod h1:/5OMpE1p0ylxtEUGY8kuCYkDRzJm9NO1TFMWjUpdevk= -github.com/containerd/containerd v1.7.20 h1:Sl6jQYk3TRavaU83h66QMbI2Nqg9Jm6qzwX57Vsn1SQ= -github.com/containerd/containerd v1.7.20/go.mod h1:52GsS5CwquuqPuLncsXwG0t2CiUce+KsNHJZQJvAgR0= -github.com/containerd/continuity v0.4.2 h1:v3y/4Yz5jwnvqPKJJ+7Wf93fyWoCB3F5EclWG023MDM= -github.com/containerd/continuity v0.4.2/go.mod h1:F6PTNCKepoxEaXLQp3wDAjygEnImnZ/7o4JzpodfroQ= -github.com/containerd/errdefs v0.1.0 h1:m0wCRBiu1WJT/Fr+iOoQHMQS/eP5myQ8lCv4Dz5ZURM= -github.com/containerd/errdefs v0.1.0/go.mod h1:YgWiiHtLmSeBrvpw+UfPijzbLaB77mEG1WwJTDETIV0= +github.com/containerd/containerd v1.7.30 h1:/2vezDpLDVGGmkUXmlNPLCCNKHJ5BbC5tJB5JNzQhqE= +github.com/containerd/containerd v1.7.30/go.mod h1:fek494vwJClULlTpExsmOyKCMUAbuVjlFsJQc4/j44M= +github.com/containerd/errdefs v0.3.0 h1:FSZgGOeK4yuT/+DnF07/Olde/q4KBoMsaamhXxIMDp4= +github.com/containerd/errdefs v0.3.0/go.mod h1:+YBYIdtsnF4Iw6nWZhJcqGSg/dwvV7tyJ/kCkyJ2k+M= github.com/containerd/log v0.1.0 h1:TCJt7ioM2cr/tfR8GPbGf9/VRAX8D2B4PjzCpfX540I= github.com/containerd/log v0.1.0/go.mod h1:VRRf09a7mHDIRezVKTRCrOq78v577GXq3bSa3EhrzVo= github.com/containerd/platforms v0.2.1 h1:zvwtM3rz2YHPQsF2CHYM8+KtB5dvhISiXh5ZpSBQv6A= github.com/containerd/platforms v0.2.1/go.mod h1:XHCb+2/hzowdiut9rkudds9bE5yJ7npe7dG/wG+uFPw= -github.com/cpuguy83/go-md2man/v2 v2.0.3/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= -github.com/cpuguy83/go-md2man/v2 v2.0.4/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= +github.com/coreos/go-systemd/v22 v22.5.0 h1:RrqgGjYQKalulkV8NGVIfkXQf6YYmOyiJKk8iXXhfZs= +github.com/coreos/go-systemd/v22 v22.5.0/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSVTIJ3seZv2GcEnc= +github.com/cpuguy83/go-md2man/v2 v2.0.6/go.mod h1:oOW0eioCTA6cOiMLiUPZOpcVxMig6NIQQ7OS05n1F4g= github.com/creack/pty v1.1.18 h1:n56/Zwd5o6whRC5PMGretI4IdRLlmBXYNjScPaBgsbY= github.com/creack/pty v1.1.18/go.mod h1:MOBLtS5ELjhRRrroQr9kyvTxUAFNvYEK993ew/Vr4O4= -github.com/cyphar/filepath-securejoin v0.2.4 h1:Ugdm7cg7i6ZK6x3xDF1oEu1nfkyfH53EtKeQYTC3kyg= -github.com/cyphar/filepath-securejoin v0.2.4/go.mod h1:aPGpWjXOXUn2NCNjFvBE6aRxGGx79pTxQpKOJNYHHl4= -github.com/cyphar/filepath-securejoin v0.3.1 h1:1V7cHiaW+C+39wEfpH6XlLBQo3j/PciWFrgfCLS8XrE= -github.com/cyphar/filepath-securejoin v0.3.1/go.mod h1:F7i41x/9cBF7lzCrVsYs9fuzwRZm4NQsGTBdpp6mETc= +github.com/cyphar/filepath-securejoin v0.6.1 h1:5CeZ1jPXEiYt3+Z6zqprSAgSWiggmpVyciv8syjIpVE= +github.com/cyphar/filepath-securejoin v0.6.1/go.mod h1:A8hd4EnAeyujCJRrICiOWqjS1AX0a9kM5XL+NwKoYSc= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM= github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/distribution/distribution/v3 v3.0.0-20221208165359-362910506bc2 h1:aBfCb7iqHmDEIp6fBvC/hQUddQfg+3qdYjwzaiP9Hnc= -github.com/distribution/distribution/v3 v3.0.0-20221208165359-362910506bc2/go.mod h1:WHNsWjnIn2V1LYOrME7e8KxSeKunYHsxEm4am0BUtcI= -github.com/distribution/distribution/v3 v3.0.0-beta.1 h1:X+ELTxPuZ1Xe5MsD3kp2wfGUhc8I+MPfRis8dZ818Ic= -github.com/distribution/reference v0.5.0 h1:/FUIFXtfc/x2gpa5/VGfiGLuOIdYa1t65IKK2OFGvA0= -github.com/distribution/reference v0.5.0/go.mod h1:BbU0aIcezP1/5jX/8MP0YiH4SdvB5Y4f/wlDRiLyi3E= +github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f h1:lO4WD4F/rVNCu3HqELle0jiPLLBs70cWOduZpkS1E78= +github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f/go.mod h1:cuUVRXasLTGF7a8hSLbxyZXjz+1KgoB3wDUb6vlszIc= +github.com/distribution/distribution/v3 v3.0.0 h1:q4R8wemdRQDClzoNNStftB2ZAfqOiN6UX90KJc4HjyM= +github.com/distribution/distribution/v3 v3.0.0/go.mod h1:tRNuFoZsUdyRVegq8xGNeds4KLjwLCRin/tTo6i1DhU= github.com/distribution/reference v0.6.0 h1:0IXCQ5g4/QMHHkarYzh5l+u8T3t73zM5QvfrDyIgxBk= github.com/distribution/reference v0.6.0/go.mod h1:BbU0aIcezP1/5jX/8MP0YiH4SdvB5Y4f/wlDRiLyi3E= -github.com/docker/cli v25.0.1+incompatible h1:mFpqnrS6Hsm3v1k7Wa/BO23oz0k121MTbTO1lpcGSkU= -github.com/docker/cli v25.0.1+incompatible/go.mod h1:JLrzqnKDaYBop7H2jaqPtU4hHvMKP+vjCwu2uszcLI8= -github.com/docker/cli v27.1.1+incompatible h1:goaZxOqs4QKxznZjjBWKONQci/MywhtRv2oNn0GkeZE= -github.com/docker/cli v27.1.1+incompatible/go.mod h1:JLrzqnKDaYBop7H2jaqPtU4hHvMKP+vjCwu2uszcLI8= -github.com/docker/distribution v2.8.3+incompatible h1:AtKxIZ36LoNK51+Z6RpzLpddBirtxJnzDrHLEKxTAYk= -github.com/docker/distribution v2.8.3+incompatible/go.mod h1:J2gT2udsDAN96Uj4KfcMRqY0/ypR+oyYUYmja8H+y+w= -github.com/docker/docker v25.0.5+incompatible h1:UmQydMduGkrD5nQde1mecF/YnSbTOaPeFIeP5C4W+DE= -github.com/docker/docker v25.0.5+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= -github.com/docker/docker v27.1.1+incompatible h1:hO/M4MtV36kzKldqnA37IWhebRA+LnqqcqDja6kVaKY= -github.com/docker/docker v27.1.1+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= -github.com/docker/docker-credential-helpers v0.8.0 h1:YQFtbBQb4VrpoPxhFuzEBPQ9E16qz5SpHLS+uswaCp8= -github.com/docker/docker-credential-helpers v0.8.0/go.mod h1:UGFXcuoQ5TxPiB54nHOZ32AWRqQdECoh/Mg0AlEYb40= +github.com/dlclark/regexp2 v1.11.0 h1:G/nrcoOa7ZXlpoa/91N3X7mM3r8eIlMBBJZvsz/mxKI= +github.com/dlclark/regexp2 v1.11.0/go.mod h1:DHkYz0B9wPfa6wondMfaivmHpzrQ3v9q8cnmRbL6yW8= github.com/docker/docker-credential-helpers v0.8.2 h1:bX3YxiGzFP5sOXWc3bTPEXdEaZSeVMrFgOr3T+zrFAo= github.com/docker/docker-credential-helpers v0.8.2/go.mod h1:P3ci7E3lwkZg6XiHdRKft1KckHiO9a2rNtyFbZ/ry9M= -github.com/docker/go-connections v0.5.0 h1:USnMq7hx7gwdVZq1L49hLXaFtUdTADjXGp+uj1Br63c= -github.com/docker/go-connections v0.5.0/go.mod h1:ov60Kzw0kKElRwhNs9UlUHAE/F9Fe6GLaXnqyDdmEXc= github.com/docker/go-events v0.0.0-20190806004212-e31b211e4f1c h1:+pKlWGMw7gf6bQ+oDZB4KHQFypsfjYlq/C4rfL7D3g8= github.com/docker/go-events v0.0.0-20190806004212-e31b211e4f1c/go.mod h1:Uw6UezgYA44ePAFQYUehOuCzmy5zmg/+nl2ZfMWGkpA= github.com/docker/go-metrics v0.0.1 h1:AgB/0SvBxihN0X8OR4SjsblXkbMvalQ8cjmtKQ2rQV8= github.com/docker/go-metrics v0.0.1/go.mod h1:cG1hvH2utMXtqgqqYE9plW6lDxS3/5ayHzueweSI3Vw= -github.com/docker/libtrust v0.0.0-20150114040149-fa567046d9b1 h1:ZClxb8laGDf5arXfYcAtECDFgAgHklGI8CxgjHnXKJ4= -github.com/docker/libtrust v0.0.0-20150114040149-fa567046d9b1/go.mod h1:cyGadeNEkKy96OOhEzfZl+yxihPEzKnqJwvfuSUqbZE= -github.com/emicklei/go-restful/v3 v3.11.1 h1:S+9bSbua1z3FgCnV0KKOSSZ3mDthb5NyEPL5gEpCvyk= -github.com/emicklei/go-restful/v3 v3.11.1/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc= -github.com/emicklei/go-restful/v3 v3.12.1 h1:PJMDIM/ak7btuL8Ex0iYET9hxM3CI2sjZtzpL63nKAU= -github.com/emicklei/go-restful/v3 v3.12.1/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc= -github.com/evanphx/json-patch v5.7.0+incompatible h1:vgGkfT/9f8zE6tvSCe74nfpAVDQ2tG6yudJd8LBksgI= -github.com/evanphx/json-patch v5.7.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= -github.com/evanphx/json-patch v5.9.0+incompatible h1:fBXyNpNMuTTDdquAq/uisOr2lShz4oaXpDTX2bLe7ls= -github.com/evanphx/json-patch v5.9.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= +github.com/emicklei/go-restful/v3 v3.12.2 h1:DhwDP0vY3k8ZzE0RunuJy8GhNpPL6zqLkDf9B/a0/xU= +github.com/emicklei/go-restful/v3 v3.12.2/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc= +github.com/evanphx/json-patch v5.9.11+incompatible h1:ixHHqfcGvxhWkniF1tWxBHA0yb4Z+d1UQi45df52xW8= +github.com/evanphx/json-patch v5.9.11+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= github.com/exponent-io/jsonpath v0.0.0-20210407135951-1de76d718b3f h1:Wl78ApPPB2Wvf/TIe2xdyJxTlb6obmF18d8QdkxNDu4= github.com/exponent-io/jsonpath v0.0.0-20210407135951-1de76d718b3f/go.mod h1:OSYXu++VVOHnXeitef/D8n/6y4QV8uLHSFXX4NeXMGc= -github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM= -github.com/fatih/color v1.16.0/go.mod h1:fL2Sau1YI5c0pdGEVCbKQbLXB6edEj1ZgiY4NijnWvE= github.com/fatih/color v1.17.0 h1:GlRw1BRJxkpqUCBKzKOw098ed57fEsKeNjpTe3cSjK4= github.com/fatih/color v1.17.0/go.mod h1:YZ7TlrGPkiz6ku9fK3TLD/pl3CpsiFyu8N92HLgmosI= github.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg= github.com/felixge/httpsnoop v1.0.4/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= -github.com/foxcpp/go-mockdns v1.0.0 h1:7jBqxd3WDWwi/6WhDvacvH1XsN3rOLXyHM1uhvIx6FI= -github.com/foxcpp/go-mockdns v1.0.0/go.mod h1:lgRN6+KxQBawyIghpnl5CezHFGS9VLzvtVlwxvzXTQ4= +github.com/foxcpp/go-mockdns v1.2.0 h1:omK3OrHRD1IWJz1FuFBCFquhXslXoF17OvBS6JPzZF0= +github.com/foxcpp/go-mockdns v1.2.0/go.mod h1:IhLeSFGed3mJIAXPH2aiRQB+kqz7oqu8ld2qVbOu7Wk= github.com/frankban/quicktest v1.14.6 h1:7Xjx+VpznH+oBnejlPUj8oUpdxnVs4f8XU8WnHkI4W8= github.com/frankban/quicktest v1.14.6/go.mod h1:4ptaffx2x8+WTWXmUCuVU6aPUX1/Mz7zb5vbUoiM6w0= +github.com/fxamacker/cbor/v2 v2.9.0 h1:NpKPmjDBgUfBms6tr6JZkTHtfFGcMKsw3eGcmD/sapM= +github.com/fxamacker/cbor/v2 v2.9.0/go.mod h1:vM4b+DJCtHn+zz7h3FFp/hDAI9WNWCsZj23V5ytsSxQ= github.com/go-errors/errors v1.5.1 h1:ZwEMSLRCapFLflTpT7NKaAc7ukJ8ZPEjzlxt8rPN8bk= github.com/go-errors/errors v1.5.1/go.mod h1:sIVyrIiJhuEF+Pj9Ebtd6P/rEYROXFi3BopGUQ5a5Og= github.com/go-gorp/gorp/v3 v3.1.0 h1:ItKF/Vbuj31dmV4jxA1qblpSwkl9g1typ24xoe70IGs= github.com/go-gorp/gorp/v3 v3.1.0/go.mod h1:dLEjIyyRNiXvNZ8PSmzpt1GsWAUK8kjVhEpjH8TixEw= -github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= -github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE= -github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk= -github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= -github.com/go-logr/logr v1.4.1 h1:pKouT5E8xu9zeFC39JXRDukb6JFQPXM5p5I91188VAQ= -github.com/go-logr/logr v1.4.1/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= -github.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY= -github.com/go-logr/logr v1.4.2/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= +github.com/go-logr/logr v1.4.3 h1:CjnDlHq8ikf6E492q6eKboGOC0T8CDaOvkHCIg8idEI= +github.com/go-logr/logr v1.4.3/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag= github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE= -github.com/go-openapi/jsonpointer v0.20.2 h1:mQc3nmndL8ZBzStEo3JYF8wzmeWffDH4VbXz58sAx6Q= -github.com/go-openapi/jsonpointer v0.20.2/go.mod h1:bHen+N0u1KEO3YlmqOjTT9Adn1RfD91Ar825/PuiRVs= github.com/go-openapi/jsonpointer v0.21.0 h1:YgdVicSA9vH5RiHs9TZW5oyafXZFc6+2Vc1rr/O9oNQ= github.com/go-openapi/jsonpointer v0.21.0/go.mod h1:IUyH9l/+uyhIYQ/PXVA41Rexl+kOkAPDdXEYns6fzUY= -github.com/go-openapi/jsonreference v0.20.4 h1:bKlDxQxQJgwpUSgOENiMPzCTBVuc7vTdXSSgNeAhojU= -github.com/go-openapi/jsonreference v0.20.4/go.mod h1:5pZJyJP2MnYCpoeoMAql78cCHauHj0V9Lhc506VOpw4= github.com/go-openapi/jsonreference v0.21.0 h1:Rs+Y7hSXT83Jacb7kFyjn4ijOuVGSvOdF2+tg1TRrwQ= github.com/go-openapi/jsonreference v0.21.0/go.mod h1:LmZmgsrTkVg9LG4EaHeY8cBDslNPMo06cago5JNLkm4= -github.com/go-openapi/swag v0.22.7 h1:JWrc1uc/P9cSomxfnsFSVWoE1FW6bNbrVPmpQYpCcR8= -github.com/go-openapi/swag v0.22.7/go.mod h1:Gl91UqO+btAM0plGGxHqJcQZ1ZTy6jbmridBTsDy8A0= github.com/go-openapi/swag v0.23.0 h1:vsEVJDUo2hPJ2tu0/Xc+4noaxyEffXNIs3cOULZ+GrE= github.com/go-openapi/swag v0.23.0/go.mod h1:esZ8ITTYEsH1V2trKHjAN8Ai7xHb8RV+YSZ577vPjgQ= -github.com/go-sql-driver/mysql v1.6.0 h1:BCTh4TKNUYmOmMUcQ3IipzF5prigylS7XXjEkfCHuOE= -github.com/go-sql-driver/mysql v1.6.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg= github.com/go-sql-driver/mysql v1.8.1 h1:LedoTUt/eveggdHS9qUFC1EFSa8bU2+1pZjSRpvNJ1Y= github.com/go-sql-driver/mysql v1.8.1/go.mod h1:wEBSXgmK//2ZFJyE+qWnIsVGmvmEKlqwuVSjsCm7DZg= -github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= -github.com/go-task/slim-sprig v0.0.0-20230315185526-52ccab3ef572 h1:tfuBGBXKqDEevZMzYi5KSi8KkcZtzBcTgAUUtapy0OI= -github.com/go-task/slim-sprig v0.0.0-20230315185526-52ccab3ef572/go.mod h1:9Pwr4B2jHnOSGXyyzV8ROjYa2ojvAY6HCGYYfMoC3Ls= +github.com/go-task/slim-sprig/v3 v3.0.0 h1:sUs3vkvUymDpBKi3qH1YSqBQk9+9D/8M2mN1vB6EwHI= +github.com/go-task/slim-sprig/v3 v3.0.0/go.mod h1:W848ghGpv3Qj3dhTPRyJypKRiqCdHZiAzKg9hl15HA8= github.com/gobwas/glob v0.2.3 h1:A4xDbljILXROh+kObIiy5kIaPYD8e96x1tgBhUI5J+Y= github.com/gobwas/glob v0.2.3/go.mod h1:d3Ez4x06l9bZtSvzIay5+Yzi0fmZzPgnTbPcKjJAkT8= -github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= -github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= -github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= -github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da h1:oI5xCqsCo564l8iNU+DwB5epxmsaqB+rhGL0m5jtYqE= -github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= -github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= -github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= -github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= -github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk= -github.com/golang/protobuf v1.5.2/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek= github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps= -github.com/gomodule/redigo v1.8.2 h1:H5XSIre1MB5NbPYFp+i1NBbb5qN1W8Y8YAQoAYbkm8k= -github.com/gomodule/redigo v1.8.2/go.mod h1:P9dn9mFrCBvWhGE1wpxx6fgq7BAeLBk+UUUzlpkBYO0= -github.com/google/btree v1.1.2 h1:xf4v41cLI2Z6FxbKm+8Bu+m8ifhj15JuZ9sa0jZCMUU= -github.com/google/btree v1.1.2/go.mod h1:qOPhT0dTNdNzV6Z/lhRX0YXUafgPLFUh+gZMl761Gm4= -github.com/google/gnostic-models v0.6.8 h1:yo/ABAfM5IMRsS1VnXjTBvUb61tFIHozhlYvRgGre9I= -github.com/google/gnostic-models v0.6.8/go.mod h1:5n7qKqH0f5wFt+aWF8CW6pZLLNOfYuF5OpfBSENuI8U= -github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= -github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= -github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= -github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= +github.com/google/btree v1.1.3 h1:CVpQJjYgC4VbzxeGVHfvZrv1ctoYCAI8vbl07Fcxlyg= +github.com/google/btree v1.1.3/go.mod h1:qOPhT0dTNdNzV6Z/lhRX0YXUafgPLFUh+gZMl761Gm4= +github.com/google/gnostic-models v0.7.0 h1:qwTtogB15McXDaNqTZdzPJRHvaVJlAl+HVQnLmJEJxo= +github.com/google/gnostic-models v0.7.0/go.mod h1:whL5G0m6dmc5cPxKc5bdKdEN3UjI7OUGxBlw57miDrQ= +github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8= +github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU= github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= -github.com/google/gofuzz v1.2.0 h1:xRy4A+RhZaiKjJ1bPfwQ8sedCA+YS2YcCHW6ec7JMi0= -github.com/google/gofuzz v1.2.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= -github.com/google/pprof v0.0.0-20210720184732-4bb14d4b1be1 h1:K6RDEckDVWvDI9JAJYCmNdQXq6neHJOYx3V6jnqNEec= -github.com/google/pprof v0.0.0-20210720184732-4bb14d4b1be1/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= -github.com/google/pprof v0.0.0-20240424215950-a892ee059fd6 h1:k7nVchz72niMH6YLQNvHSdIE7iqsQxK1P41mySCvssg= -github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 h1:El6M4kTTCOh6aBiKaUGG7oYTSPP8MxqL4YI3kZKwcP4= -github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510/go.mod h1:pupxD2MaaD3pAXIBCelhxNneeOaAeabZDe5s4K6zSpQ= -github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= -github.com/google/uuid v1.5.0 h1:1p67kYwdtXjb0gL0BPiP1Av9wiZPo5A8z2cWkTZ+eyU= -github.com/google/uuid v1.5.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/google/pprof v0.0.0-20250403155104-27863c87afa6 h1:BHT72Gu3keYf3ZEu2J0b1vyeLSOYI8bm5wbJM/8yDe8= +github.com/google/pprof v0.0.0-20250403155104-27863c87afa6/go.mod h1:boTsfXsheKC2y+lKOCMpSfarhxDeIzfZG1jqGcPl3cA= github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= -github.com/gorilla/handlers v1.5.1 h1:9lRY6j8DEeeBT10CvO9hGW0gmky0BprnvDI5vfhUHH4= -github.com/gorilla/handlers v1.5.1/go.mod h1:t8XrUpc4KVXb7HGyJ4/cEnwQiaxrX/hz1Zv/4g96P1Q= github.com/gorilla/handlers v1.5.2 h1:cLTUSsNkgcwhgRqvCNmdbRWG0A3N4F+M2nWKdScwyEE= +github.com/gorilla/handlers v1.5.2/go.mod h1:dX+xVpaxdSw+q0Qek8SSsl3dfMk3jNddUkMzo0GtH0w= github.com/gorilla/mux v1.8.1 h1:TuBL49tXwgrFYWhqrNgrUNEY92u81SPhu7sTdzQEiWY= github.com/gorilla/mux v1.8.1/go.mod h1:AKf9I4AEqPTmMytcMc0KkNouC66V3BtZ4qD5fmWSiMQ= -github.com/gorilla/websocket v1.4.2/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= -github.com/gorilla/websocket v1.5.1 h1:gmztn0JnHVt9JZquRuzLw3g4wouNVzKL15iLr/zn/QY= -github.com/gorilla/websocket v1.5.1/go.mod h1:x3kM2JMyaluk02fnUJpQuwD2dCS5NDG2ZHL0uE0tcaY= -github.com/gorilla/websocket v1.5.3 h1:saDtZ6Pbx/0u+bgYQ3q96pZgCzfhKXGPqt7kZ72aNNg= -github.com/gorilla/websocket v1.5.3/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= github.com/gosuri/uitable v0.0.4 h1:IG2xLKRvErL3uhY6e1BylFzG+aJiwQviDDTfOKeKTpY= github.com/gosuri/uitable v0.0.4/go.mod h1:tKR86bXuXPZazfOTG1FIzvjIdXzd0mo4Vtn16vt0PJo= github.com/gregjones/httpcache v0.0.0-20190611155906-901d90724c79 h1:+ngKgrYPPJrOjhax5N+uePQ0Fh1Z7PheYoUI/0nzkPA= github.com/gregjones/httpcache v0.0.0-20190611155906-901d90724c79/go.mod h1:FecbI9+v66THATjSRHfNgh1IVFe/9kFxbXtjV0ctIMA= +github.com/grpc-ecosystem/grpc-gateway/v2 v2.26.3 h1:5ZPtiqj0JL5oKWmcsq4VMaAW5ukBEgSGXEN89zeH1Jo= +github.com/grpc-ecosystem/grpc-gateway/v2 v2.26.3/go.mod h1:ndYquD05frm2vACXE1nsccT4oJzjhw2arTS2cpUD1PI= github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= github.com/hashicorp/errwrap v1.1.0 h1:OxrOeh75EUXMY8TBjag2fzXGZ40LB6IKw45YeGUDY2I= github.com/hashicorp/errwrap v1.1.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= github.com/hashicorp/go-multierror v1.1.1 h1:H5DkEtf6CXdFp0N0Em5UCwQpXMWke8IA0+lD48awMYo= github.com/hashicorp/go-multierror v1.1.1/go.mod h1:iw975J/qwKPdAO1clOe2L8331t/9/fmwbPZ6JB6eMoM= -github.com/hashicorp/golang-lru v0.5.4 h1:YDjusn29QI/Das2iO9M0BHnIbxPeyuCHsjMW+lJfyTc= -github.com/hashicorp/golang-lru v0.5.4/go.mod h1:iADmTwqILo4mZ8BN3D2Q6+9jd8WM5uGBxy+E8yxSoD4= -github.com/huandu/xstrings v1.3.3/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE= -github.com/huandu/xstrings v1.4.0 h1:D17IlohoQq4UcpqD7fDk80P7l+lwAmlFaBHgOipl2FU= -github.com/huandu/xstrings v1.4.0/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE= +github.com/hashicorp/golang-lru/arc/v2 v2.0.5 h1:l2zaLDubNhW4XO3LnliVj0GXO3+/CGNJAg1dcN2Fpfw= +github.com/hashicorp/golang-lru/arc/v2 v2.0.5/go.mod h1:ny6zBSQZi2JxIeYcv7kt2sH2PXJtirBN7RDhRpxPkxU= +github.com/hashicorp/golang-lru/v2 v2.0.5 h1:wW7h1TG88eUIJ2i69gaE3uNVtEPIagzhGvHgwfx2Vm4= +github.com/hashicorp/golang-lru/v2 v2.0.5/go.mod h1:QeFd9opnmA6QUJc5vARoKUSoFhyfM2/ZepoAG6RGpeM= github.com/huandu/xstrings v1.5.0 h1:2ag3IFq9ZDANvthTwTiqSSZLjDc+BedvHPAp5tJy2TI= github.com/huandu/xstrings v1.5.0/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE= -github.com/imdario/mergo v0.3.11/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA= -github.com/imdario/mergo v0.3.16 h1:wwQJbIsHYGMUyLSPrEq1CT16AhnhNJQ51+4fdHUnCl4= -github.com/imdario/mergo v0.3.16/go.mod h1:WBLT9ZmE3lPoWsEzCh9LPo3TiwVN+ZKEjmz+hD27ysY= github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8= github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= -github.com/jmoiron/sqlx v1.3.5 h1:vFFPA71p1o5gAeqtEAwLU4dnX2napprKtHr7PYIcN3g= -github.com/jmoiron/sqlx v1.3.5/go.mod h1:nRVWtLre0KfCLJvgxzCsLVMogSvQ1zNJtpYr2Ccp0mQ= github.com/jmoiron/sqlx v1.4.0 h1:1PLqN7S1UYp5t4SrVVnt4nUVNemrDAtxlulVe+Qgm3o= github.com/jmoiron/sqlx v1.4.0/go.mod h1:ZrZ7UsYB/weZdl2Bxg6jCRO9c3YHl8r3ahlKmRT4JLY= github.com/josharian/intern v1.0.0 h1:vlS4z54oSdjm0bgjRigI+G1HpF+tI+9rE5LLzOg8HmY= github.com/josharian/intern v1.0.0/go.mod h1:5DoeVV0s6jJacbCEi61lwdGj/aVlrQvzHFFd8Hwg//Y= -github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU= -github.com/json-iterator/go v1.1.7/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM= github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo= -github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w= -github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= -github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= -github.com/klauspost/compress v1.17.4 h1:Ej5ixsIri7BrIjBkRZLTo6ghwrEtHFk7ijlczPW4fZ4= -github.com/klauspost/compress v1.17.4/go.mod h1:/dCuZOvVtNoHsyb+cuJD3itjs3NbnF6KH9zAO4BDxPM= -github.com/klauspost/compress v1.17.9 h1:6KIumPrER1LHsvBVuDa0r5xaG0Es51mhhB9BQB2qeMA= -github.com/klauspost/compress v1.17.9/go.mod h1:Di0epgTjJY877eYKx5yC51cX2A2Vl2ibi7bDH9ttBbw= -github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= -github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc= +github.com/klauspost/compress v1.18.0 h1:c/Cqfb0r+Yi+JtIEq73FWXVkRonBlf0CRNYc8Zttxdo= +github.com/klauspost/compress v1.18.0/go.mod h1:2Pp+KzxcywXVXMr50+X0Q/Lsb43OQHYWRCY2AiWywWQ= github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= @@ -264,7 +155,6 @@ github.com/lann/builder v0.0.0-20180802200727-47ae307949d0 h1:SOEGU9fKiNWd/HOJuq github.com/lann/builder v0.0.0-20180802200727-47ae307949d0/go.mod h1:dXGbAdH5GtBTC4WfIxhKZfyBF/HBFgRZSWwZ9g/He9o= github.com/lann/ps v0.0.0-20150810152359-62de8c46ede0 h1:P6pPBnrTSX3DEVR4fDembhRWSsG5rVo6hYhAB/ADZrk= github.com/lann/ps v0.0.0-20150810152359-62de8c46ede0/go.mod h1:vmVJ0l/dxyfGW6FmdpVm2joNMFikkuWg0EoCKLGUMNw= -github.com/lib/pq v1.2.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo= github.com/lib/pq v1.10.9 h1:YXG7RB+JIjhP29X+OtkiDnYaXQwpS4JEWq7dtCCRUEw= github.com/lib/pq v1.10.9/go.mod h1:AlVN5x4E4T544tWzH6hKfbfQvm3HdbOxrmggDNAPY9o= github.com/liggitt/tabwriter v0.0.0-20181228230101-89fcab3d43de h1:9TO3cAIGXtEhnIaL+V+BEER86oLrvS+kWobKpbJuye0= @@ -276,388 +166,234 @@ github.com/mattn/go-colorable v0.1.13/go.mod h1:7S9/ev0klgBDR4GtXTXX8a3vIGJpMovk github.com/mattn/go-isatty v0.0.16/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM= github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY= github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= -github.com/mattn/go-runewidth v0.0.15 h1:UNAjwbU9l54TA3KzvqLGxwWjHmMgBUVhBiTjelZgg3U= -github.com/mattn/go-runewidth v0.0.15/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w= github.com/mattn/go-runewidth v0.0.16 h1:E5ScNMtiwvlvB5paMFdw9p4kSQzbXFikJ5SQO6TULQc= github.com/mattn/go-runewidth v0.0.16/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w= -github.com/mattn/go-sqlite3 v1.14.6/go.mod h1:NyWgC/yNuGj7Q9rpYnZvas74GogHl5/Z4A/KQRfk6bU= -github.com/mattn/go-sqlite3 v1.14.15 h1:vfoHhTN1af61xCRSWzFIWzx2YskyMTwHLrExkBOjvxI= -github.com/mattn/go-sqlite3 v1.14.15/go.mod h1:2eHXhiwb8IkHr+BDWZGa96P6+rkvnG63S2DGjv9HUNg= github.com/mattn/go-sqlite3 v1.14.22 h1:2gZY6PC6kBnID23Tichd1K+Z0oS6nE/XwU+Vz/5o4kU= github.com/mattn/go-sqlite3 v1.14.22/go.mod h1:Uh1q+B4BYcTPb+yiD3kU8Ct7aC0hY9fxUwlHK0RXw+Y= -github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0= -github.com/matttproud/golang_protobuf_extensions v1.0.4 h1:mmDVorXM7PCGKw94cs5zkfA9PSy5pEvNWRP0ET0TIVo= -github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0 h1:jWpvCLoY8Z/e3VKvlsiIGKtc+UG6U5vzxaoagmhXfyg= -github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0/go.mod h1:QUyp042oQthUoa9bqDv0ER0wrtXnBruoNd7aNjkbP+k= -github.com/miekg/dns v1.1.25 h1:dFwPR6SfLtrSwgDcIq2bcU/gVutB4sNApq2HBdqcakg= -github.com/miekg/dns v1.1.25/go.mod h1:bPDLeHnStXmXAq1m/Ch/hvfNHr14JKNPMBo3VZKjuso= -github.com/mitchellh/copystructure v1.0.0/go.mod h1:SNtv71yrdKgLRyLFxmLdkAbkKEFWgYaq1OVrnRcwhnw= +github.com/miekg/dns v1.1.57 h1:Jzi7ApEIzwEPLHWRcafCN9LZSBbqQpxjt/wpgvg7wcM= +github.com/miekg/dns v1.1.57/go.mod h1:uqRjCRUuEAA6qsOiJvDd+CFo/vW+y5WR6SNmHE55hZk= github.com/mitchellh/copystructure v1.2.0 h1:vpKXTN4ewci03Vljg/q9QvCGUDttBOGBIa15WveJJGw= github.com/mitchellh/copystructure v1.2.0/go.mod h1:qLl+cE2AmVv+CoeAwDPye/v+N2HKCj9FbZEVFJRxO9s= github.com/mitchellh/go-wordwrap v1.0.1 h1:TLuKupo69TCn6TQSyGxwI1EblZZEsQ0vMlAFQflz0v0= github.com/mitchellh/go-wordwrap v1.0.1/go.mod h1:R62XHJLzvMFRBbcrT7m7WgmE1eOyTSsCt+hzestvNj0= -github.com/mitchellh/reflectwalk v1.0.0/go.mod h1:mSTlrgnPZtwu0c4WaC2kGObEpuNDbx0jmZXqmk4esnw= github.com/mitchellh/reflectwalk v1.0.2 h1:G2LzWKi524PWgd3mLHV8Y5k7s6XUvT0Gef6zxSIeXaQ= github.com/mitchellh/reflectwalk v1.0.2/go.mod h1:mSTlrgnPZtwu0c4WaC2kGObEpuNDbx0jmZXqmk4esnw= -github.com/mittwald/go-helm-client v0.12.10 h1:NvDXzBM0enPtrAHirZQ0D9Zx80yp2cGWcR19i0CleZY= -github.com/mittwald/go-helm-client v0.12.10/go.mod h1:HA3eMOaUhqa4EXUfj94f6L0v4aUEKHuVV977hVl1KWU= -github.com/moby/locker v1.0.1 h1:fOXqR41zeveg4fFODix+1Ch4mj/gT0NE1XJbp/epuBg= -github.com/moby/locker v1.0.1/go.mod h1:S7SDdo5zpBK84bzzVlKr2V0hz+7x9hWbYC/kq7oQppc= -github.com/moby/spdystream v0.2.0 h1:cjW1zVyyoiM0T7b6UoySUFqzXMoqRckQtXwGPiBhOM8= -github.com/moby/spdystream v0.2.0/go.mod h1:f7i0iNDQJ059oMTcWxx8MA/zKFIuD/lY+0GqbN2Wy8c= -github.com/moby/spdystream v0.5.0 h1:7r0J1Si3QO/kjRitvSLVVFUjxMEb/YLj6S9FF62JBCU= -github.com/moby/spdystream v0.5.0/go.mod h1:xBAYlnt/ay+11ShkdFKNAG7LsyK/tmNBVvVOwrfMgdI= -github.com/moby/sys/mountinfo v0.6.2 h1:BzJjoreD5BMFNmD9Rus6gdd1pLuecOFPt8wC+Vygl78= -github.com/moby/sys/mountinfo v0.6.2/go.mod h1:IJb6JQeOklcdMU9F5xQ8ZALD+CUr5VlGpwtX+VE0rpI= -github.com/moby/term v0.5.0 h1:xt8Q1nalod/v7BqbG21f8mQPqH+xAaC9C3N3wfWbVP0= -github.com/moby/term v0.5.0/go.mod h1:8FzsFHVUBGZdbDsJw/ot+X+d5HLUbvklYLJ9uGfcI3Y= +github.com/mittwald/go-helm-client v0.12.19 h1:GzwISuYemkgISegXfYzY3i6blRZzfNpp2G5+tBUyzp4= +github.com/mittwald/go-helm-client v0.12.19/go.mod h1:mlTMyzGOua5rXH4+kFTU/YsE9xxqvwkEW1c5ukM8Cj4= +github.com/moby/term v0.5.2 h1:6qk3FJAFDs6i/q3W/pQ97SX192qKfZgGjCQqfCJkgzQ= +github.com/moby/term v0.5.2/go.mod h1:d3djjFCrjnB+fl8NJux+EJzu0msscUP+f8it8hPkFLc= github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= -github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= -github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= -github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M= github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= +github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee h1:W5t00kpgFdJifH4BDsTlE89Zl93FEloxaWZfGcifgq8= +github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= github.com/monochromegane/go-gitignore v0.0.0-20200626010858-205db1a8cc00 h1:n6/2gBQ3RWajuToeY6ZtZTIKv2v7ThUy5KKusIT0yc0= github.com/monochromegane/go-gitignore v0.0.0-20200626010858-205db1a8cc00/go.mod h1:Pm3mSP3c5uWn86xMLZ5Sa7JB9GsEZySvHYXCTK4E9q4= github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA= github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= -github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= -github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f h1:y5//uYreIhSUg3J1GEMiLbxo1LJaP8RfCpH6pymGZus= -github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f/go.mod h1:ZdcZmHo+o7JKHSa8/e818NopupXU1YMK5fe1lsApnBw= -github.com/onsi/ginkgo/v2 v2.15.0 h1:79HwNRBAZHOEwrczrgSOPy+eFTTlIGELKy5as+ClttY= -github.com/onsi/ginkgo/v2 v2.15.0/go.mod h1:HlxMHtYF57y6Dpf+mc5529KKmSq9h2FpCF+/ZkwUxKM= -github.com/onsi/ginkgo/v2 v2.19.0 h1:9Cnnf7UHo57Hy3k6/m5k3dRfGTMXGvxhHFvkDTCTpvA= -github.com/onsi/gomega v1.31.0 h1:54UJxxj6cPInHS3a35wm6BK/F9nHYueZ1NVujHDrnXE= -github.com/onsi/gomega v1.31.0/go.mod h1:DW9aCi7U6Yi40wNVAvT6kzFnEVEI5n3DloYBiKiT6zk= -github.com/onsi/gomega v1.33.1 h1:dsYjIxxSR755MDmKVsaFQTE22ChNBcuuTWgkUDSubOk= +github.com/onsi/ginkgo/v2 v2.27.2 h1:LzwLj0b89qtIy6SSASkzlNvX6WktqurSHwkk2ipF/Ns= +github.com/onsi/ginkgo/v2 v2.27.2/go.mod h1:ArE1D/XhNXBXCBkKOLkbsb2c81dQHCRcF5zwn/ykDRo= +github.com/onsi/gomega v1.38.2 h1:eZCjf2xjZAqe+LeWvKb5weQ+NcPwX84kqJ0cZNxok2A= +github.com/onsi/gomega v1.38.2/go.mod h1:W2MJcYxRGV63b418Ai34Ud0hEdTVXq9NW9+Sx6uXf3k= github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U= github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM= -github.com/opencontainers/image-spec v1.1.0-rc6 h1:XDqvyKsJEbRtATzkgItUqBA7QHk58yxX1Ov9HERHNqU= -github.com/opencontainers/image-spec v1.1.0-rc6/go.mod h1:W4s4sFTMaBeK1BQLXbG4AdM2szdn85PY75RI83NrTrM= -github.com/opencontainers/image-spec v1.1.0 h1:8SG7/vwALn54lVB/0yZ/MMwhFrPYtpEHQb2IpWsCzug= -github.com/opencontainers/image-spec v1.1.0/go.mod h1:W4s4sFTMaBeK1BQLXbG4AdM2szdn85PY75RI83NrTrM= +github.com/opencontainers/image-spec v1.1.1 h1:y0fUlFfIZhPF1W537XOLg0/fcx6zcHCJwooC2xJA040= +github.com/opencontainers/image-spec v1.1.1/go.mod h1:qpqAh3Dmcf36wStyyWU+kCeDgrGnAve2nCC8+7h8Q0M= github.com/peterbourgon/diskv v2.0.1+incompatible h1:UBdAOUP5p4RWqPBg048CAvpKN+vxiaj6gdUUzhl4XmI= github.com/peterbourgon/diskv v2.0.1+incompatible/go.mod h1:uqqh8zWWbv1HBMNONnaR/tNboyR3/BZd58JJSHlUSCU= github.com/phayes/freeport v0.0.0-20220201140144-74d24b5ae9f5 h1:Ii+DKncOVM8Cu1Hc+ETb5K+23HdAMvESYE3ZJ5b5cMI= github.com/phayes/freeport v0.0.0-20220201140144-74d24b5ae9f5/go.mod h1:iIss55rKnNBTvrwdmkUpLnDpZoAHvWaiq5+iMmen4AE= -github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= -github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U= +github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/poy/onpar v1.1.2 h1:QaNrNiZx0+Nar5dLgTVp5mXkyoVFIbepjyEoGSnhbAY= github.com/poy/onpar v1.1.2/go.mod h1:6X8FLNoxyr9kkmnlqpK6LSoiOtrO6MICtWwEuWkLjzg= -github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= -github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= -github.com/prometheus/client_golang v1.1.0/go.mod h1:I1FGZT9+L76gKKOs5djB6ezCbFQP1xR9D75/vuwEF3g= -github.com/prometheus/client_golang v1.18.0 h1:HzFfmkOzH5Q8L8G+kSJKUx5dtG87sewO+FoDDqP5Tbk= -github.com/prometheus/client_golang v1.18.0/go.mod h1:T+GXkCk5wSJyOqMIzVgvvjFDlkOQntgjkJWKrN5txjA= -github.com/prometheus/client_golang v1.19.1 h1:wZWJDwK+NameRJuPGDhlnFgx8e8HN3XHQeLaYJFJBOE= -github.com/prometheus/client_golang v1.19.1/go.mod h1:mP78NwGzrVks5S2H6ab8+ZZGJLZUq1hoULYBAYBw1Ho= -github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= -github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= -github.com/prometheus/client_model v0.5.0 h1:VQw1hfvPvk3Uv6Qf29VrPF32JB6rtbgI6cYPYQjL0Qw= -github.com/prometheus/client_model v0.5.0/go.mod h1:dTiFglRmd66nLR9Pv9f0mZi7B7fk5Pm3gvsjB5tr+kI= -github.com/prometheus/client_model v0.6.1 h1:ZKSh/rekM+n3CeS952MLRAdFwIKqeY8b62p8ais2e9E= -github.com/prometheus/client_model v0.6.1/go.mod h1:OrxVMOVHjw3lKMa8+x6HeMGkHMQyHDk9E3jmP2AmGiY= -github.com/prometheus/common v0.4.1/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4= -github.com/prometheus/common v0.6.0/go.mod h1:eBmuwkDJBwy6iBfxCBob6t6dR6ENT/y+J+Zk0j9GMYc= -github.com/prometheus/common v0.45.0 h1:2BGz0eBc2hdMDLnO/8n0jeB3oPrt2D08CekT0lneoxM= -github.com/prometheus/common v0.45.0/go.mod h1:YJmSTw9BoKxJplESWWxlbyttQR4uaEcGyv9MZjVOJsY= -github.com/prometheus/common v0.55.0 h1:KEi6DK7lXW/m7Ig5i47x0vRzuBsHuvJdi5ee6Y3G1dc= -github.com/prometheus/common v0.55.0/go.mod h1:2SECS4xJG1kd8XF9IcM1gMX6510RAEL65zxzNImwdc8= -github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= -github.com/prometheus/procfs v0.0.2/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= -github.com/prometheus/procfs v0.0.3/go.mod h1:4A/X28fw3Fc593LaREMrKMqOKvUAntwMDaekg4FpcdQ= -github.com/prometheus/procfs v0.12.0 h1:jluTpSng7V9hY0O2R9DzzJHYb2xULk9VTR1V1R/k6Bo= -github.com/prometheus/procfs v0.12.0/go.mod h1:pcuDEFsWDnvcgNzo4EEweacyhjeA9Zk3cnaOZAZEfOo= -github.com/prometheus/procfs v0.15.1 h1:YagwOFzUgYfKKHX6Dr+sHT7km/hxC76UB0learggepc= -github.com/prometheus/procfs v0.15.1/go.mod h1:fB45yRUv8NstnjriLhBQLuOUt+WW4BsoGhij/e3PBqk= +github.com/prometheus/client_golang v1.23.2 h1:Je96obch5RDVy3FDMndoUsjAhG5Edi49h0RJWRi/o0o= +github.com/prometheus/client_golang v1.23.2/go.mod h1:Tb1a6LWHB3/SPIzCoaDXI4I8UHKeFTEQ1YCr+0Gyqmg= +github.com/prometheus/client_model v0.6.2 h1:oBsgwpGs7iVziMvrGhE53c/GrLUsZdHnqNwqPLxwZyk= +github.com/prometheus/client_model v0.6.2/go.mod h1:y3m2F6Gdpfy6Ut/GBsUqTWZqCUvMVzSfMLjcu6wAwpE= +github.com/prometheus/common v0.66.1 h1:h5E0h5/Y8niHc5DlaLlWLArTQI7tMrsfQjHV+d9ZoGs= +github.com/prometheus/common v0.66.1/go.mod h1:gcaUsgf3KfRSwHY4dIMXLPV0K/Wg1oZ8+SbZk/HH/dA= +github.com/prometheus/procfs v0.16.1 h1:hZ15bTNuirocR6u0JZ6BAHHmwS1p8B4P6MRqxtzMyRg= +github.com/prometheus/procfs v0.16.1/go.mod h1:teAbpZRB1iIAJYREa1LsoWUXykVXA1KlTmWl8x/U+Is= +github.com/redis/go-redis/extra/rediscmd/v9 v9.0.5 h1:EaDatTxkdHG+U3Bk4EUr+DZ7fOGwTfezUiUJMaIcaho= +github.com/redis/go-redis/extra/rediscmd/v9 v9.0.5/go.mod h1:fyalQWdtzDBECAQFBJuQe5bzQ02jGd5Qcbgb97Flm7U= +github.com/redis/go-redis/extra/redisotel/v9 v9.0.5 h1:EfpWLLCyXw8PSM2/XNJLjI3Pb27yVE+gIAfeqp8LUCc= +github.com/redis/go-redis/extra/redisotel/v9 v9.0.5/go.mod h1:WZjPDy7VNzn77AAfnAfVjZNvfJTYfPetfZk5yoSTLaQ= +github.com/redis/go-redis/v9 v9.7.3 h1:YpPyAayJV+XErNsatSElgRZZVCwXX9QzkKYNvO7x0wM= +github.com/redis/go-redis/v9 v9.7.3/go.mod h1:bGUrSggJ9X9GUmZpZNEOQKaANxSGgOEBRltRTZHSvrA= github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= -github.com/rivo/uniseg v0.4.4 h1:8TfxU8dW6PdqD27gjM8MVNuicgxIjxpm4K7x4jp8sis= -github.com/rivo/uniseg v0.4.4/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88= github.com/rivo/uniseg v0.4.7 h1:WUdvkW8uEhrYfLC4ZzdpI2ztxP1I582+49Oc5Mq64VQ= github.com/rivo/uniseg v0.4.7/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88= -github.com/rogpeppe/go-internal v1.11.0 h1:cWPaGQEPrBb5/AsnsZesgZZ9yb1OQ+GOISoDNXVBh4M= -github.com/rogpeppe/go-internal v1.11.0/go.mod h1:ddIwULY96R17DhadqLgMfk9H9tvdUzkipdSkR5nkCZA= -github.com/rubenv/sql-migrate v1.6.0 h1:IZpcTlAx/VKXphWEpwWJ7BaMq05tYtE80zYz+8a5Il8= -github.com/rubenv/sql-migrate v1.6.0/go.mod h1:m3ilnKP7sNb4eYkLsp6cGdPOl4OBcXM6rcbzU+Oqc5k= -github.com/rubenv/sql-migrate v1.7.0 h1:HtQq1xyTN2ISmQDggnh0c9U3JlP8apWh8YO2jzlXpTI= -github.com/rubenv/sql-migrate v1.7.0/go.mod h1:S4wtDEG1CKn+0ShpTtzWhFpHHI5PvCUtiGI+C+Z2THE= -github.com/russross/blackfriday v1.6.0 h1:KqfZb0pUVN2lYqZUYRddxF4OR8ZMURnJIG5Y3VRLtww= -github.com/russross/blackfriday v1.6.0/go.mod h1:ti0ldHuxg49ri4ksnFxlkCfN+hvslNlmVHqNRXXJNAY= +github.com/rogpeppe/go-internal v1.14.1 h1:UQB4HGPB6osV0SQTLymcB4TgvyWu6ZyliaW0tI/otEQ= +github.com/rogpeppe/go-internal v1.14.1/go.mod h1:MaRKkUm5W0goXpeCfT7UZI6fk/L7L7so1lCWt35ZSgc= +github.com/rubenv/sql-migrate v1.8.1 h1:EPNwCvjAowHI3TnZ+4fQu3a915OpnQoPAjTXCGOy2U0= +github.com/rubenv/sql-migrate v1.8.1/go.mod h1:BTIKBORjzyxZDS6dzoiw6eAFYJ1iNlGAtjn4LGeVjS8= github.com/russross/blackfriday/v2 v2.1.0 h1:JIOH55/0cWyOuilr9/qlrm0BSXldqnqwMsf35Ld67mk= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= -github.com/sergi/go-diff v1.1.0 h1:we8PVUC3FE2uYfodKH/nBHMSetSfHDR6scGdBi+erh0= -github.com/sergi/go-diff v1.1.0/go.mod h1:STckp+ISIX8hZLjrqAeVduY0gWCT9IjLuqbuNXdaHfM= +github.com/santhosh-tekuri/jsonschema/v6 v6.0.2 h1:KRzFb2m7YtdldCEkzs6KqmJw4nqEVZGK7IN2kJkjTuQ= +github.com/santhosh-tekuri/jsonschema/v6 v6.0.2/go.mod h1:JXeL+ps8p7/KNMjDQk3TCwPpBy0wYklyWTfbkIzdIFU= github.com/sergi/go-diff v1.2.0 h1:XU+rvMAioB0UC3q1MFrIQy4Vo5/4VsRDQQXHsEya6xQ= -github.com/shopspring/decimal v1.2.0/go.mod h1:DKyhrW/HYNuLGql+MJL6WCR6knT2jwCFRcu2hWCYk4o= -github.com/shopspring/decimal v1.3.1 h1:2Usl1nmF/WZucqkFZhnfFYxxxu8LG21F6nPQBE5gKV8= -github.com/shopspring/decimal v1.3.1/go.mod h1:DKyhrW/HYNuLGql+MJL6WCR6knT2jwCFRcu2hWCYk4o= +github.com/sergi/go-diff v1.2.0/go.mod h1:STckp+ISIX8hZLjrqAeVduY0gWCT9IjLuqbuNXdaHfM= github.com/shopspring/decimal v1.4.0 h1:bxl37RwXBklmTi0C79JfXCEBD1cqqHt0bbgBAGFp81k= github.com/shopspring/decimal v1.4.0/go.mod h1:gawqmDU56v4yIKSwfBSFip1HdCCXN8/+DMd9qYNcwME= -github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo= github.com/sirupsen/logrus v1.9.3 h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ= github.com/sirupsen/logrus v1.9.3/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ= -github.com/spf13/cast v1.3.1/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE= -github.com/spf13/cast v1.6.0 h1:GEiTHELF+vaR5dhz3VqZfFSzZjYbgeKDpBxQVS4GYJ0= -github.com/spf13/cast v1.6.0/go.mod h1:ancEpBxwJDODSW/UG4rDrAqiKolqNNh2DX3mk86cAdo= -github.com/spf13/cobra v1.8.0 h1:7aJaZx1B85qltLMc546zn58BxxfZdR/W22ej9CFoEf0= -github.com/spf13/cobra v1.8.0/go.mod h1:WXLWApfZ71AjXPya3WOlMsY9yMs7YeiHhFVlvLyhcho= -github.com/spf13/cobra v1.8.1 h1:e5/vxKd/rZsfSJMUX1agtjeTDf+qv1/JdBF8gg5k9ZM= -github.com/spf13/cobra v1.8.1/go.mod h1:wHxEcudfqmLYa8iTfL+OuZPbBZkmvliBWKIezN3kD9Y= -github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= -github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= +github.com/spf13/cast v1.7.0 h1:ntdiHjuueXFgm5nzDRdOS4yfT43P5Fnud6DH50rz/7w= +github.com/spf13/cast v1.7.0/go.mod h1:ancEpBxwJDODSW/UG4rDrAqiKolqNNh2DX3mk86cAdo= +github.com/spf13/cobra v1.10.2 h1:DMTTonx5m65Ic0GOoRY2c16WCbHxOOw6xxezuLaBpcU= +github.com/spf13/cobra v1.10.2/go.mod h1:7C1pvHqHw5A4vrJfjNwvOdzYu0Gml16OCs2GRiTUUS4= +github.com/spf13/pflag v1.0.9/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= +github.com/spf13/pflag v1.0.10 h1:4EBh2KAYBwaONj6b2Ye1GiHfwjqyROoF4RwYO+vPwFk= +github.com/spf13/pflag v1.0.10/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= -github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= -github.com/stretchr/objx v0.5.0 h1:1zr/of2m5FGMsad5YfcqgdqdWrIhu+EBEJRhR1U7z/c= -github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= +github.com/stretchr/objx v0.5.2 h1:xuMeJ0Sdp5ZMRXx/aWO6RZxdr3beISkG5/G/aIRr3pY= +github.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA= github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= -github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA= github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= -github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk= -github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= -github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f/go.mod h1:N2zxlSyiKSe5eX1tZViRH5QA0qijqEDrYZiPEAiq3wU= -github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb h1:zGWFAtiMcyryUHoUjUJX0/lt1H2+i2Ka2n+D3DImSNo= -github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb/go.mod h1:N2zxlSyiKSe5eX1tZViRH5QA0qijqEDrYZiPEAiq3wU= -github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 h1:EzJWgHovont7NscjpAxXsDA8S8BMYve8Y5+7cuRE7R0= -github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415/go.mod h1:GwrjFmJcFw6At/Gs6z4yjiIwzuJ1/+UwLxMQDVQXShQ= -github.com/xeipuuv/gojsonschema v1.2.0 h1:LhYJRs+L4fBtjZUfuSZIKGeVu0QRy8e5Xi7D17UxZ74= -github.com/xeipuuv/gojsonschema v1.2.0/go.mod h1:anYRn/JVcOK2ZgGU+IjEV4nwlhoK5sQluxsYJ78Id3Y= +github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu7U= +github.com/stretchr/testify v1.11.1/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U= +github.com/x448/float16 v0.8.4 h1:qLwI1I70+NjRFUR3zs1JPUCgaCXSh3SW62uAKT1mSBM= +github.com/x448/float16 v0.8.4/go.mod h1:14CWIYCyZA/cWjXOioeEpHeN/83MdbZDRQHoFcYsOfg= github.com/xlab/treeprint v1.2.0 h1:HzHnuAF1plUN2zGlAFHbSQP2qJ0ZAD3XF5XD7OesXRQ= github.com/xlab/treeprint v1.2.0/go.mod h1:gj5Gd3gPdKtR1ikdDK6fnFLdmIS0X30kTTuNd/WEJu0= -github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= -github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= -github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= -github.com/yvasiyarov/go-metrics v0.0.0-20140926110328-57bccd1ccd43 h1:+lm10QQTNSBd8DVTNGHx7o/IKu9HYDvLMffDhbyLccI= -github.com/yvasiyarov/go-metrics v0.0.0-20140926110328-57bccd1ccd43/go.mod h1:aX5oPXxHm3bOH+xeAttToC8pqch2ScQN/JoXYupl6xs= -github.com/yvasiyarov/gorelic v0.0.0-20141212073537-a9bba5b9ab50 h1:hlE8//ciYMztlGpl/VA+Zm1AcTPHYkHJPbHqE6WJUXE= -github.com/yvasiyarov/gorelic v0.0.0-20141212073537-a9bba5b9ab50/go.mod h1:NUSPSUX/bi6SeDMUh6brw0nXpxHnc96TguQh0+r/ssA= -github.com/yvasiyarov/newrelic_platform_go v0.0.0-20140908184405-b21fdbd4370f h1:ERexzlUfuTvpE74urLSbIQW0Z/6hF9t8U4NsJLaioAY= -github.com/yvasiyarov/newrelic_platform_go v0.0.0-20140908184405-b21fdbd4370f/go.mod h1:GlGEuHIJweS1mbCqG+7vt2nvWLzLLnRHbXz5JKd/Qbg= -go.opencensus.io v0.24.0 h1:y73uSU6J157QMP2kn2r30vwW1A2W2WFwSCGnAVxeaD0= -go.opencensus.io v0.24.0/go.mod h1:vNK8G9p7aAivkbmorf4v+7Hgx+Zs0yY+0fOtgBfjQKo= -go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.46.1 h1:aFJWCqJMNjENlcleuuOkGAPH82y0yULBScfXcIEdS24= -go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.46.1/go.mod h1:sEGXWArGqc3tVa+ekntsN65DmVbVeW+7lTKTjZF3/Fo= -go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.53.0 h1:4K4tsIXefpVJtvA/8srF4V4y0akAoPHkIslgAkjixJA= -go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.53.0/go.mod h1:jjdQuTGVsXV4vSs+CJ2qYDeDPf9yIJV23qlIzBm73Vg= -go.opentelemetry.io/otel v1.21.0 h1:hzLeKBZEL7Okw2mGzZ0cc4k/A7Fta0uoPgaJCr8fsFc= -go.opentelemetry.io/otel v1.21.0/go.mod h1:QZzNPQPm1zLX4gZK4cMi+71eaorMSGT3A4znnUvNNEo= -go.opentelemetry.io/otel v1.28.0 h1:/SqNcYk+idO0CxKEUOtKQClMK/MimZihKYMruSMViUo= -go.opentelemetry.io/otel v1.28.0/go.mod h1:q68ijF8Fc8CnMHKyzqL6akLO46ePnjkgfIMIjUIX9z4= -go.opentelemetry.io/otel/metric v1.21.0 h1:tlYWfeo+Bocx5kLEloTjbcDwBuELRrIFxwdQ36PlJu4= -go.opentelemetry.io/otel/metric v1.21.0/go.mod h1:o1p3CA8nNHW8j5yuQLdc1eeqEaPfzug24uvsyIEJRWM= -go.opentelemetry.io/otel/metric v1.28.0 h1:f0HGvSl1KRAU1DLgLGFjrwVyismPlnuU6JD6bOeuA5Q= -go.opentelemetry.io/otel/metric v1.28.0/go.mod h1:Fb1eVBFZmLVTMb6PPohq3TO9IIhUisDsbJoL/+uQW4s= -go.opentelemetry.io/otel/trace v1.21.0 h1:WD9i5gzvoUPuXIXH24ZNBudiarZDKuekPqi/E8fpfLc= -go.opentelemetry.io/otel/trace v1.21.0/go.mod h1:LGbsEB0f9LGjN+OZaQQ26sohbOmiMR+BaslueVtS/qQ= -go.opentelemetry.io/otel/trace v1.28.0 h1:GhQ9cUuQGmNDd5BTCP2dAvv75RdMxEfTmYejp+lkx9g= -go.opentelemetry.io/otel/trace v1.28.0/go.mod h1:jPyXzNPg6da9+38HEwElrQiHlVMTnVfM3/yv2OlIHaI= -go.starlark.net v0.0.0-20231121155337-90ade8b19d09 h1:hzy3LFnSN8kuQK8h9tHl4ndF6UruMj47OqwqsS+/Ai4= -go.starlark.net v0.0.0-20231121155337-90ade8b19d09/go.mod h1:LcLNIzVOMp4oV+uusnpk+VU+SzXaJakUuBjoCSWH5dM= -go.starlark.net v0.0.0-20240725214946-42030a7cedce h1:YyGqCjZtGZJ+mRPaenEiB87afEO2MFRzLiJNZ0Z0bPw= -go.starlark.net v0.0.0-20240725214946-42030a7cedce/go.mod h1:YKMCv9b1WrfWmeqdV5MAuEHWsu5iC+fe6kYl2sQjdI8= +go.opentelemetry.io/auto/sdk v1.1.0 h1:cH53jehLUN6UFLY71z+NDOiNJqDdPRaXzTel0sJySYA= +go.opentelemetry.io/auto/sdk v1.1.0/go.mod h1:3wSPjt5PWp2RhlCcmmOial7AvC4DQqZb7a7wCow3W8A= +go.opentelemetry.io/contrib/bridges/prometheus v0.57.0 h1:UW0+QyeyBVhn+COBec3nGhfnFe5lwB0ic1JBVjzhk0w= +go.opentelemetry.io/contrib/bridges/prometheus v0.57.0/go.mod h1:ppciCHRLsyCio54qbzQv0E4Jyth/fLWDTJYfvWpcSVk= +go.opentelemetry.io/contrib/exporters/autoexport v0.57.0 h1:jmTVJ86dP60C01K3slFQa2NQ/Aoi7zA+wy7vMOKD9H4= +go.opentelemetry.io/contrib/exporters/autoexport v0.57.0/go.mod h1:EJBheUMttD/lABFyLXhce47Wr6DPWYReCzaZiXadH7g= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.61.0 h1:F7Jx+6hwnZ41NSFTO5q4LYDtJRXBf2PD0rNBkeB/lus= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.61.0/go.mod h1:UHB22Z8QsdRDrnAtX4PntOl36ajSxcdUMt1sF7Y6E7Q= +go.opentelemetry.io/otel v1.36.0 h1:UumtzIklRBY6cI/lllNZlALOF5nNIzJVb16APdvgTXg= +go.opentelemetry.io/otel v1.36.0/go.mod h1:/TcFMXYjyRNh8khOAO9ybYkqaDBb/70aVwkNML4pP8E= +go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploggrpc v0.8.0 h1:WzNab7hOOLzdDF/EoWCt4glhrbMPVMOO5JYTmpz36Ls= +go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploggrpc v0.8.0/go.mod h1:hKvJwTzJdp90Vh7p6q/9PAOd55dI6WA6sWj62a/JvSs= +go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp v0.8.0 h1:S+LdBGiQXtJdowoJoQPEtI52syEP/JYBUpjO49EQhV8= +go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp v0.8.0/go.mod h1:5KXybFvPGds3QinJWQT7pmXf+TN5YIa7CNYObWRkj50= +go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.32.0 h1:j7ZSD+5yn+lo3sGV69nW04rRR0jhYnBwjuX3r0HvnK0= +go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.32.0/go.mod h1:WXbYJTUaZXAbYd8lbgGuvih0yuCfOFC5RJoYnoLcGz8= +go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v1.32.0 h1:t/Qur3vKSkUCcDVaSumWF2PKHt85pc7fRvFuoVT8qFU= +go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v1.32.0/go.mod h1:Rl61tySSdcOJWoEgYZVtmnKdA0GeKrSqkHC1t+91CH8= +go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.34.0 h1:OeNbIYk/2C15ckl7glBlOBp5+WlYsOElzTNmiPW/x60= +go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.34.0/go.mod h1:7Bept48yIeqxP2OZ9/AqIpYS94h2or0aB4FypJTc8ZM= +go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.34.0 h1:tgJ0uaNS4c98WRNUEx5U3aDlrDOI5Rs+1Vifcw4DJ8U= +go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.34.0/go.mod h1:U7HYyW0zt/a9x5J1Kjs+r1f/d4ZHnYFclhYY2+YbeoE= +go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.32.0 h1:cMyu9O88joYEaI47CnQkxO1XZdpoTF9fEnW2duIddhw= +go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.32.0/go.mod h1:6Am3rn7P9TVVeXYG+wtcGE7IE1tsQ+bP3AuWcKt/gOI= +go.opentelemetry.io/otel/exporters/prometheus v0.54.0 h1:rFwzp68QMgtzu9PgP3jm9XaMICI6TsofWWPcBDKwlsU= +go.opentelemetry.io/otel/exporters/prometheus v0.54.0/go.mod h1:QyjcV9qDP6VeK5qPyKETvNjmaaEc7+gqjh4SS0ZYzDU= +go.opentelemetry.io/otel/exporters/stdout/stdoutlog v0.8.0 h1:CHXNXwfKWfzS65yrlB2PVds1IBZcdsX8Vepy9of0iRU= +go.opentelemetry.io/otel/exporters/stdout/stdoutlog v0.8.0/go.mod h1:zKU4zUgKiaRxrdovSS2amdM5gOc59slmo/zJwGX+YBg= +go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.32.0 h1:SZmDnHcgp3zwlPBS2JX2urGYe/jBKEIT6ZedHRUyCz8= +go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.32.0/go.mod h1:fdWW0HtZJ7+jNpTKUR0GpMEDP69nR8YBJQxNiVCE3jk= +go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.32.0 h1:cC2yDI3IQd0Udsux7Qmq8ToKAx1XCilTQECZ0KDZyTw= +go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.32.0/go.mod h1:2PD5Ex6z8CFzDbTdOlwyNIUywRr1DN0ospafJM1wJ+s= +go.opentelemetry.io/otel/log v0.8.0 h1:egZ8vV5atrUWUbnSsHn6vB8R21G2wrKqNiDt3iWertk= +go.opentelemetry.io/otel/log v0.8.0/go.mod h1:M9qvDdUTRCopJcGRKg57+JSQ9LgLBrwwfC32epk5NX8= +go.opentelemetry.io/otel/metric v1.36.0 h1:MoWPKVhQvJ+eeXWHFBOPoBOi20jh6Iq2CcCREuTYufE= +go.opentelemetry.io/otel/metric v1.36.0/go.mod h1:zC7Ks+yeyJt4xig9DEw9kuUFe5C3zLbVjV2PzT6qzbs= +go.opentelemetry.io/otel/sdk v1.36.0 h1:b6SYIuLRs88ztox4EyrvRti80uXIFy+Sqzoh9kFULbs= +go.opentelemetry.io/otel/sdk v1.36.0/go.mod h1:+lC+mTgD+MUWfjJubi2vvXWcVxyr9rmlshZni72pXeY= +go.opentelemetry.io/otel/sdk/log v0.8.0 h1:zg7GUYXqxk1jnGF/dTdLPrK06xJdrXgqgFLnI4Crxvs= +go.opentelemetry.io/otel/sdk/log v0.8.0/go.mod h1:50iXr0UVwQrYS45KbruFrEt4LvAdCaWWgIrsN3ZQggo= +go.opentelemetry.io/otel/sdk/metric v1.36.0 h1:r0ntwwGosWGaa0CrSt8cuNuTcccMXERFwHX4dThiPis= +go.opentelemetry.io/otel/sdk/metric v1.36.0/go.mod h1:qTNOhFDfKRwX0yXOqJYegL5WRaW376QbB7P4Pb0qva4= +go.opentelemetry.io/otel/trace v1.36.0 h1:ahxWNuqZjpdiFAyrIoQ4GIiAIhxAunQR6MUoKrsNd4w= +go.opentelemetry.io/otel/trace v1.36.0/go.mod h1:gQ+OnDZzrybY4k4seLzPAWNwVBBVlF2szhehOBB/tGA= +go.opentelemetry.io/proto/otlp v1.5.0 h1:xJvq7gMzB31/d406fB8U5CBdyQGw4P399D1aQWU/3i4= +go.opentelemetry.io/proto/otlp v1.5.0/go.mod h1:keN8WnHxOy8PG0rQZjJJ5A2ebUoafqWp0eVQ4yIXvJ4= go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto= go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE= -golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= -golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= -golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= -golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= -golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= -golang.org/x/crypto v0.3.0/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4= -golang.org/x/crypto v0.21.0 h1:X31++rzVUdKhX5sWmSOFZxx8UW/ldWx55cbf08iNAMA= -golang.org/x/crypto v0.21.0/go.mod h1:0BP7YvVV9gBbVKyeTG0Gyn+gZm94bibOW5BjDEYAOMs= -golang.org/x/crypto v0.25.0 h1:ypSNr+bnYL2YhwoMt2zPxHFmbAN1KZs/njMG3hxUp30= -golang.org/x/crypto v0.25.0/go.mod h1:T+wALwcMOSE0kXgUAnPAHqTLW+XHgcELELW8VaDgm/M= -golang.org/x/exp v0.0.0-20240103183307-be819d1f06fc h1:ao2WRsKSzW6KuUY9IWPwWahcHCgR0s52IfwutMfEbdM= -golang.org/x/exp v0.0.0-20240103183307-be819d1f06fc/go.mod h1:iRJReGqOEeBhDZGkGbynYwcHlctCvnjTYIamk7uXpHI= -golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56 h1:2dVuKD2vS7b0QIHQbpyTISPd0LeHDbnYEryqj5Q1ug8= -golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56/go.mod h1:M4RDyNAINzryxdtnbRXRL/OHtkFuWGRjvuhBJpk2IlY= -golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= -golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= -golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= -golang.org/x/mod v0.15.0 h1:SernR4v+D55NyBH2QiEQrlBAnj1ECL6AGrA5+dPaMY8= -golang.org/x/mod v0.15.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= -golang.org/x/mod v0.19.0 h1:fEdghXQSo20giMthA7cd28ZC+jts4amQ3YMXiP5oMQ8= -golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= -golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= -golang.org/x/net v0.0.0-20190613194153-d28f0bde5980/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= -golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= -golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= -golang.org/x/net v0.2.0/go.mod h1:KqCZLdyyvdV855qA2rE3GC2aiw5xGR5TEjj8smXukLY= -golang.org/x/net v0.23.0 h1:7EYJ93RZ9vYSZAIb2x3lnuvqO5zneoD6IvWjuhfxjTs= -golang.org/x/net v0.23.0/go.mod h1:JKghWKKOSdJwpW2GEx0Ja7fmaKnMsbu+MWVZTokSYmg= -golang.org/x/net v0.27.0 h1:5K3Njcw06/l2y9vpGCSdcxWOYHOUk3dVNGDXN+FvAys= -golang.org/x/net v0.27.0/go.mod h1:dDi0PyhWNoiUOrAS8uXv/vnScO4wnHQO4mj9fn/RytE= -golang.org/x/oauth2 v0.15.0 h1:s8pnnxNVzjWyrvYdFUQq5llS1PX2zhPXmccZv99h7uQ= -golang.org/x/oauth2 v0.15.0/go.mod h1:q48ptWNTY5XWf+JNten23lcvHpLJ0ZSxF5ttTHKVCAM= -golang.org/x/oauth2 v0.21.0 h1:tsimM75w1tF/uws5rbeHzIWxEqElMehnc+iW793zsZs= -golang.org/x/oauth2 v0.21.0/go.mod h1:XYTD2NtWslqkgxebSiOHnXEap4TF09sJSc7H1sXbhtI= -golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.6.0 h1:5BMeUDZ7vkXGfEr1x9B4bRcTH4lpkTkpdh0T/J+qjbQ= -golang.org/x/sync v0.6.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= -golang.org/x/sync v0.7.0 h1:YsImfSBoP9QPYL0xyKJPq0gcaJdG3rInoqxTWbfQu9M= -golang.org/x/sync v0.7.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= -golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190801041406-cbf593c0f2f3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +go.yaml.in/yaml/v2 v2.4.3 h1:6gvOSjQoTB3vt1l+CU+tSyi/HOjfOjRLJ4YwYZGwRO0= +go.yaml.in/yaml/v2 v2.4.3/go.mod h1:zSxWcmIDjOzPXpjlTTbAsKokqkDNAVtZO0WOMiT90s8= +go.yaml.in/yaml/v3 v3.0.4 h1:tfq32ie2Jv2UxXFdLJdh3jXuOzWiL1fo0bu/FbuKpbc= +go.yaml.in/yaml/v3 v3.0.4/go.mod h1:DhzuOOF2ATzADvBadXxruRBLzYTpT36CKvDb3+aBEFg= +golang.org/x/crypto v0.46.0 h1:cKRW/pmt1pKAfetfu+RCEvjvZkA9RimPbh7bhFjGVBU= +golang.org/x/crypto v0.46.0/go.mod h1:Evb/oLKmMraqjZ2iQTwDwvCtJkczlDuTmdJXoZVzqU0= +golang.org/x/mod v0.31.0 h1:HaW9xtz0+kOcWKwli0ZXy79Ix+UW/vOfmWI5QVd2tgI= +golang.org/x/mod v0.31.0/go.mod h1:43JraMp9cGx1Rx3AqioxrbrhNsLl2l/iNAvuBkrezpg= +golang.org/x/net v0.48.0 h1:zyQRTTrjc33Lhh0fBgT/H3oZq9WuvRR5gPC70xpDiQU= +golang.org/x/net v0.48.0/go.mod h1:+ndRgGjkh8FGtu1w1FGbEC31if4VrNVMuKTgcAAnQRY= +golang.org/x/oauth2 v0.30.0 h1:dnDm7JmhM45NNpd8FDDeLhK6FwqbOf4MLCM9zb1BOHI= +golang.org/x/oauth2 v0.30.0/go.mod h1:B++QgG3ZKulg6sRPGD/mqlHQs5rB3Ml9erfeDY7xKlU= +golang.org/x/sync v0.19.0 h1:vV+1eWNmZ5geRlYjzm2adRgW2/mcpevXNg50YZtPCE4= +golang.org/x/sync v0.19.0/go.mod h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI= golang.org/x/sys v0.0.0-20210616094352-59db8d763f22/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.18.0 h1:DBdB3niSjOA/O0blCZBqDefyWNYveAYMNF1Wum0DYQ4= -golang.org/x/sys v0.18.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -golang.org/x/sys v0.22.0 h1:RI27ohtqKCnwULzJLqkv897zojh5/DwS/ENaMzUOaWI= -golang.org/x/sys v0.22.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= -golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= -golang.org/x/term v0.2.0/go.mod h1:TVmDHMZPmdnySmBfhjOoOdhjzdE1h4u1VwSiw2l1Nuc= -golang.org/x/term v0.18.0 h1:FcHjZXDMxI8mM3nwhX9HlKop4C0YQvCVCdwYl2wOtE8= -golang.org/x/term v0.18.0/go.mod h1:ILwASektA3OnRv7amZ1xhE/KTR+u50pbXfZ03+6Nx58= -golang.org/x/term v0.22.0 h1:BbsgPEJULsl2fV/AT3v15Mjva5yXKQDyKf+TbDz7QJk= -golang.org/x/term v0.22.0/go.mod h1:F3qCibpT5AMpCRfhfT53vVJwhLtIVHhB9XDjfFvnMI4= -golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= -golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= -golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= -golang.org/x/text v0.3.8/go.mod h1:E6s5w1FMmriuDzIBO73fBruAKo1PCIq6d2Q6DHfQ8WQ= -golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= -golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ= -golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= -golang.org/x/text v0.16.0 h1:a94ExnEXNtEwYLGJSIUxnWoxoRz/ZcCsV63ROupILh4= -golang.org/x/text v0.16.0/go.mod h1:GhwF1Be+LQoKShO3cGOHzqOgRrGaYc9AvblQOmPVHnI= -golang.org/x/time v0.5.0 h1:o7cqy6amK/52YcAKIPlM3a+Fpj35zvRj2TP+e1xFSfk= -golang.org/x/time v0.5.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM= -golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= -golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= -golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= -golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= -golang.org/x/tools v0.18.0 h1:k8NLag8AGHnn+PHbl7g43CtqZAwG60vZkLqgyZgIHgQ= -golang.org/x/tools v0.18.0/go.mod h1:GL7B4CwcLLeo59yx/9UWWuNOW1n3VZ4f5axWfML7Lcg= -golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -google.golang.org/appengine v1.6.8 h1:IhEN5q69dyKagZPYMSdIjS2HqprW324FRQZJcGqPAsM= -google.golang.org/appengine v1.6.8/go.mod h1:1jJ3jBArFh5pcgW8gCtRJnepW8FzD1V44FJffLiz/Ds= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240102182953-50ed04b92917 h1:6G8oQ016D88m1xAKljMlBOOGWDZkes4kMhgGFlf8WcQ= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240102182953-50ed04b92917/go.mod h1:xtjpI3tXFPP051KaWnhvxkiubL/6dJ18vLVf7q2pTOU= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240730163845-b1a4ccb954bf h1:liao9UHurZLtiEwBgT9LMOnKYsHze6eA6w1KQCMVN2Q= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240730163845-b1a4ccb954bf/go.mod h1:Ue6ibwXGpU+dqIcODieyLOcgj7z8+IcskoNIgZxtrFY= -google.golang.org/grpc v1.60.1 h1:26+wFr+cNqSGFcOXcabYC0lUVJVRa2Sb2ortSK7VrEU= -google.golang.org/grpc v1.60.1/go.mod h1:OlCHIeLYqSSsLi6i49B5QGdzaMZK9+M7LXN2FKz4eGM= -google.golang.org/grpc v1.65.0 h1:bs/cUb4lp1G5iImFFd3u5ixQzweKizoZJAwBNLR42lc= -google.golang.org/grpc v1.65.0/go.mod h1:WgYC2ypjlB0EiQi6wdKixMqukr6lBc0Vo+oOgjrM5ZQ= -google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= -google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= -google.golang.org/protobuf v1.33.0 h1:uNO2rsAINq/JlFpSdYEKIZ0uKD/R9cpdv0T+yoGwGmI= -google.golang.org/protobuf v1.33.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos= -google.golang.org/protobuf v1.34.2 h1:6xV6lTsCfpGD21XK49h7MhtcApnLqkfYgPcdHftf6hg= -google.golang.org/protobuf v1.34.2/go.mod h1:qYOHts0dSfpeUzUFpOMr/WGzszTmLH+DiWniOlNbLDw= -gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= +golang.org/x/sys v0.40.0 h1:DBZZqJ2Rkml6QMQsZywtnjnnGvHza6BTfYFWY9kjEWQ= +golang.org/x/sys v0.40.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks= +golang.org/x/term v0.39.0 h1:RclSuaJf32jOqZz74CkPA9qFuVTX7vhLlpfj/IGWlqY= +golang.org/x/term v0.39.0/go.mod h1:yxzUCTP/U+FzoxfdKmLaA0RV1WgE0VY7hXBwKtY/4ww= +golang.org/x/text v0.33.0 h1:B3njUFyqtHDUI5jMn1YIr5B0IE2U0qck04r6d4KPAxE= +golang.org/x/text v0.33.0/go.mod h1:LuMebE6+rBincTi9+xWTY8TztLzKHc/9C1uBCG27+q8= +golang.org/x/time v0.12.0 h1:ScB/8o8olJvc+CQPWrK3fPZNfh7qgwCrY0zJmoEQLSE= +golang.org/x/time v0.12.0/go.mod h1:CDIdPxbZBQxdj6cxyCIdrNogrJKMJ7pr37NYpMcMDSg= +golang.org/x/tools v0.40.0 h1:yLkxfA+Qnul4cs9QA3KnlFu0lVmd8JJfoq+E41uSutA= +golang.org/x/tools v0.40.0/go.mod h1:Ik/tzLRlbscWpqqMRjyWYDisX8bG13FrdXp3o4Sr9lc= +google.golang.org/genproto v0.0.0-20231211222908-989df2bf70f3 h1:1hfbdAfFbkmpg41000wDVqr7jUpK/Yo+LPnIxxGzmkg= +google.golang.org/genproto/googleapis/api v0.0.0-20250303144028-a0af3efb3deb h1:p31xT4yrYrSM/G4Sn2+TNUkVhFCbG9y8itM2S6Th950= +google.golang.org/genproto/googleapis/api v0.0.0-20250303144028-a0af3efb3deb/go.mod h1:jbe3Bkdp+Dh2IrslsFCklNhweNTBgSYanP1UXhJDhKg= +google.golang.org/genproto/googleapis/rpc v0.0.0-20250528174236-200df99c418a h1:v2PbRU4K3llS09c7zodFpNePeamkAwG3mPrAery9VeE= +google.golang.org/genproto/googleapis/rpc v0.0.0-20250528174236-200df99c418a/go.mod h1:qQ0YXyHHx3XkvlzUtpXDkS29lDSafHMZBAZDc03LQ3A= +google.golang.org/grpc v1.72.2 h1:TdbGzwb82ty4OusHWepvFWGLgIbNo1/SUynEN0ssqv8= +google.golang.org/grpc v1.72.2/go.mod h1:wH5Aktxcg25y1I3w7H69nHfXdOG3UiadoBtjh3izSDM= +google.golang.org/protobuf v1.36.8 h1:xHScyCOEuuwZEc6UtSOvPbAT4zRh0xcNRYekJwfqyMc= +google.golang.org/protobuf v1.36.8/go.mod h1:fuxRtAxBytpl4zzqUh6/eyUujkJdNiuEkXntxiD/uRU= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= -gopkg.in/evanphx/json-patch.v4 v4.12.0 h1:n6jtcsulIzXPJaxegRbvFNNrZDjbij7ny3gmSPG+6V4= -gopkg.in/evanphx/json-patch.v4 v4.12.0/go.mod h1:p8EYWUEYMpynmqDbY58zCKCFZw8pRWMG4EsWvDvM72M= -gopkg.in/evanphx/json-patch.v5 v5.7.0 h1:dGKGylPlZ/jus2g1YqhhyzfH0gPy2R8/MYUpW/OslTY= -gopkg.in/evanphx/json-patch.v5 v5.7.0/go.mod h1:/kvTRh1TVm5wuM6OkHxqXtE/1nUZZpihg29RtuIyfvk= -gopkg.in/evanphx/json-patch.v5 v5.9.0 h1:hx1VU2SGj4F8r9b8GUwJLdc8DNO8sy79ZGui0G05GLo= -gopkg.in/evanphx/json-patch.v5 v5.9.0/go.mod h1:/kvTRh1TVm5wuM6OkHxqXtE/1nUZZpihg29RtuIyfvk= +gopkg.in/evanphx/json-patch.v4 v4.13.0 h1:czT3CmqEaQ1aanPc5SdlgQrrEIb8w/wwCvWWnfEbYzo= +gopkg.in/evanphx/json-patch.v4 v4.13.0/go.mod h1:p8EYWUEYMpynmqDbY58zCKCFZw8pRWMG4EsWvDvM72M= gopkg.in/inf.v0 v0.9.1 h1:73M5CoZyi3ZLMOyDlQh031Cx6N9NDJ2Vvfl76EDAgDc= gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw= -gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= -gotest.tools/v3 v3.4.0 h1:ZazjZUfuVeZGLAmlKKuyv3IKP5orXcwtOwDQH6YVr6o= -gotest.tools/v3 v3.4.0/go.mod h1:CtbdzLSsqVhDgMtKsx03ird5YTGB3ar27v0u/yKBW5g= -helm.sh/helm/v3 v3.15.3 h1:HcZDaVFe9uHa6hpsR54mJjYyRy4uz/pc6csg27nxFOc= -helm.sh/helm/v3 v3.15.3/go.mod h1:FzSIP8jDQaa6WAVg9F+OkKz7J0ZmAga4MABtTbsb9WQ= -k8s.io/api v0.30.2 h1:+ZhRj+28QT4UOH+BKznu4CBgPWgkXO7XAvMcMl0qKvI= -k8s.io/api v0.30.2/go.mod h1:ULg5g9JvOev2dG0u2hig4Z7tQ2hHIuS+m8MNZ+X6EmI= -k8s.io/api v0.30.3 h1:ImHwK9DCsPA9uoU3rVh4QHAHHK5dTSv1nxJUapx8hoQ= -k8s.io/api v0.30.3/go.mod h1:GPc8jlzoe5JG3pb0KJCSLX5oAFIW3/qNJITlDj8BH04= -k8s.io/apiextensions-apiserver v0.30.0 h1:jcZFKMqnICJfRxTgnC4E+Hpcq8UEhT8B2lhBcQ+6uAs= -k8s.io/apiextensions-apiserver v0.30.0/go.mod h1:N9ogQFGcrbWqAY9p2mUAL5mGxsLqwgtUce127VtRX5Y= -k8s.io/apiextensions-apiserver v0.30.3 h1:oChu5li2vsZHx2IvnGP3ah8Nj3KyqG3kRSaKmijhB9U= -k8s.io/apiextensions-apiserver v0.30.3/go.mod h1:uhXxYDkMAvl6CJw4lrDN4CPbONkF3+XL9cacCT44kV4= -k8s.io/apimachinery v0.30.2 h1:fEMcnBj6qkzzPGSVsAZtQThU62SmQ4ZymlXRC5yFSCg= -k8s.io/apimachinery v0.30.2/go.mod h1:iexa2somDaxdnj7bha06bhb43Zpa6eWH8N8dbqVjTUc= -k8s.io/apimachinery v0.30.3 h1:q1laaWCmrszyQuSQCfNB8cFgCuDAoPszKY4ucAjDwHc= -k8s.io/apimachinery v0.30.3/go.mod h1:iexa2somDaxdnj7bha06bhb43Zpa6eWH8N8dbqVjTUc= -k8s.io/apiserver v0.30.0 h1:QCec+U72tMQ+9tR6A0sMBB5Vh6ImCEkoKkTDRABWq6M= -k8s.io/apiserver v0.30.0/go.mod h1:smOIBq8t0MbKZi7O7SyIpjPsiKJ8qa+llcFCluKyqiY= -k8s.io/apiserver v0.30.3 h1:QZJndA9k2MjFqpnyYv/PH+9PE0SHhx3hBho4X0vE65g= -k8s.io/apiserver v0.30.3/go.mod h1:6Oa88y1CZqnzetd2JdepO0UXzQX4ZnOekx2/PtEjrOg= -k8s.io/cli-runtime v0.30.0 h1:0vn6/XhOvn1RJ2KJOC6IRR2CGqrpT6QQF4+8pYpWQ48= -k8s.io/cli-runtime v0.30.0/go.mod h1:vATpDMATVTMA79sZ0YUCzlMelf6rUjoBzlp+RnoM+cg= -k8s.io/cli-runtime v0.30.3 h1:aG69oRzJuP2Q4o8dm+f5WJIX4ZBEwrvdID0+MXyUY6k= -k8s.io/cli-runtime v0.30.3/go.mod h1:hwrrRdd9P84CXSKzhHxrOivAR9BRnkMt0OeP5mj7X30= -k8s.io/client-go v0.30.2 h1:sBIVJdojUNPDU/jObC+18tXWcTJVcwyqS9diGdWHk50= -k8s.io/client-go v0.30.2/go.mod h1:JglKSWULm9xlJLx4KCkfLLQ7XwtlbflV6uFFSHTMgVs= -k8s.io/client-go v0.30.3 h1:bHrJu3xQZNXIi8/MoxYtZBBWQQXwy16zqJwloXXfD3k= -k8s.io/client-go v0.30.3/go.mod h1:8d4pf8vYu665/kUbsxWAQ/JDBNWqfFeZnvFiVdmx89U= -k8s.io/component-base v0.30.0 h1:cj6bp38g0ainlfYtaOQuRELh5KSYjhKxM+io7AUIk4o= -k8s.io/component-base v0.30.0/go.mod h1:V9x/0ePFNaKeKYA3bOvIbrNoluTSG+fSJKjLdjOoeXQ= -k8s.io/component-base v0.30.3 h1:Ci0UqKWf4oiwy8hr1+E3dsnliKnkMLZMVbWzeorlk7s= -k8s.io/component-base v0.30.3/go.mod h1:C1SshT3rGPCuNtBs14RmVD2xW0EhRSeLvBh7AGk1quA= -k8s.io/klog/v2 v2.120.1 h1:QXU6cPEOIslTGvZaXvFWiP9VKyeet3sawzTOvdXb4Vw= -k8s.io/klog/v2 v2.120.1/go.mod h1:3Jpz1GvMt720eyJH1ckRHK1EDfpxISzJ7I9OYgaDtPE= +helm.sh/helm/v3 v3.20.0 h1:2M+0qQwnbI1a2CxN7dbmfsWHg/MloeaFMnZCY56as50= +helm.sh/helm/v3 v3.20.0/go.mod h1:rTavWa0lagZOxGfdhu4vgk1OjH2UYCnrDKE2PVC4N0o= +k8s.io/api v0.35.2 h1:tW7mWc2RpxW7HS4CoRXhtYHSzme1PN1UjGHJ1bdrtdw= +k8s.io/api v0.35.2/go.mod h1:7AJfqGoAZcwSFhOjcGM7WV05QxMMgUaChNfLTXDRE60= +k8s.io/apiextensions-apiserver v0.35.0 h1:3xHk2rTOdWXXJM+RDQZJvdx0yEOgC0FgQ1PlJatA5T4= +k8s.io/apiextensions-apiserver v0.35.0/go.mod h1:E1Ahk9SADaLQ4qtzYFkwUqusXTcaV2uw3l14aqpL2LU= +k8s.io/apimachinery v0.35.2 h1:NqsM/mmZA7sHW02JZ9RTtk3wInRgbVxL8MPfzSANAK8= +k8s.io/apimachinery v0.35.2/go.mod h1:jQCgFZFR1F4Ik7hvr2g84RTJSZegBc8yHgFWKn//hns= +k8s.io/apiserver v0.35.0 h1:CUGo5o+7hW9GcAEF3x3usT3fX4f9r8xmgQeCBDaOgX4= +k8s.io/apiserver v0.35.0/go.mod h1:QUy1U4+PrzbJaM3XGu2tQ7U9A4udRRo5cyxkFX0GEds= +k8s.io/cli-runtime v0.35.0 h1:PEJtYS/Zr4p20PfZSLCbY6YvaoLrfByd6THQzPworUE= +k8s.io/cli-runtime v0.35.0/go.mod h1:VBRvHzosVAoVdP3XwUQn1Oqkvaa8facnokNkD7jOTMY= +k8s.io/client-go v0.35.2 h1:YUfPefdGJA4aljDdayAXkc98DnPkIetMl4PrKX97W9o= +k8s.io/client-go v0.35.2/go.mod h1:4QqEwh4oQpeK8AaefZ0jwTFJw/9kIjdQi0jpKeYvz7g= +k8s.io/component-base v0.35.0 h1:+yBrOhzri2S1BVqyVSvcM3PtPyx5GUxCK2tinZz1G94= +k8s.io/component-base v0.35.0/go.mod h1:85SCX4UCa6SCFt6p3IKAPej7jSnF3L8EbfSyMZayJR0= k8s.io/klog/v2 v2.130.1 h1:n9Xl7H1Xvksem4KFG4PYbdQCQxqc/tTUyrgXaOhHSzk= k8s.io/klog/v2 v2.130.1/go.mod h1:3Jpz1GvMt720eyJH1ckRHK1EDfpxISzJ7I9OYgaDtPE= -k8s.io/kube-openapi v0.0.0-20240228011516-70dd3763d340 h1:BZqlfIlq5YbRMFko6/PM7FjZpUb45WallggurYhKGag= -k8s.io/kube-openapi v0.0.0-20240228011516-70dd3763d340/go.mod h1:yD4MZYeKMBwQKVht279WycxKyM84kkAx2DPrTXaeb98= -k8s.io/kube-openapi v0.0.0-20240730131305-7a9a4e85957e h1:OnKkExfhk4yxMqvBSPzUfhv3zQ96FWJ+UOZzLrAFyAo= -k8s.io/kube-openapi v0.0.0-20240730131305-7a9a4e85957e/go.mod h1:0CVn9SVo8PeW5/JgsBZZIFmmTk5noOM8WXf2e1tCihE= -k8s.io/kubectl v0.30.0 h1:xbPvzagbJ6RNYVMVuiHArC1grrV5vSmmIcSZuCdzRyk= -k8s.io/kubectl v0.30.0/go.mod h1:zgolRw2MQXLPwmic2l/+iHs239L49fhSeICuMhQQXTI= -k8s.io/kubectl v0.30.3 h1:YIBBvMdTW0xcDpmrOBzcpUVsn+zOgjMYIu7kAq+yqiI= -k8s.io/kubectl v0.30.3/go.mod h1:IcR0I9RN2+zzTRUa1BzZCm4oM0NLOawE6RzlDvd1Fpo= -k8s.io/utils v0.0.0-20240102154912-e7106e64919e h1:eQ/4ljkx21sObifjzXwlPKpdGLrCfRziVtos3ofG/sQ= -k8s.io/utils v0.0.0-20240102154912-e7106e64919e/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= -k8s.io/utils v0.0.0-20240711033017-18e509b52bc8 h1:pUdcCO1Lk/tbT5ztQWOBi5HBgbBP1J8+AsQnQCKsi8A= -k8s.io/utils v0.0.0-20240711033017-18e509b52bc8/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= -oras.land/oras-go v1.2.5 h1:XpYuAwAb0DfQsunIyMfeET92emK8km3W4yEzZvUbsTo= -oras.land/oras-go v1.2.5/go.mod h1:PuAwRShRZCsZb7g8Ar3jKKQR/2A/qN+pkYxIOd/FAoo= -oras.land/oras-go v1.2.6 h1:z8cmxQXBU8yZ4mkytWqXfo6tZcamPwjsuxYU81xJ8Lk= -oras.land/oras-go v1.2.6/go.mod h1:OVPc1PegSEe/K8YiLfosrlqlqTN9PUyFvOw5Y9gwrT8= -sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd h1:EDPBXCAspyGV4jQlpZSudPeMmr1bNJefnuqLsRAsHZo= -sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd/go.mod h1:B8JuhiUyNFVKdsE8h686QcCxMaH6HrOAZj4vswFpcB0= -sigs.k8s.io/kustomize/api v0.16.0 h1:/zAR4FOQDCkgSDmVzV2uiFbuy9bhu3jEzthrHCuvm1g= -sigs.k8s.io/kustomize/api v0.16.0/go.mod h1:MnFZ7IP2YqVyVwMWoRxPtgl/5hpA+eCCrQR/866cm5c= -sigs.k8s.io/kustomize/api v0.17.3 h1:6GCuHSsxq7fN5yhF2XrC+AAr8gxQwhexgHflOAD/JJU= -sigs.k8s.io/kustomize/api v0.17.3/go.mod h1:TuDH4mdx7jTfK61SQ/j1QZM/QWR+5rmEiNjvYlhzFhc= -sigs.k8s.io/kustomize/kyaml v0.16.0 h1:6J33uKSoATlKZH16unr2XOhDI+otoe2sR3M8PDzW3K0= -sigs.k8s.io/kustomize/kyaml v0.16.0/go.mod h1:xOK/7i+vmE14N2FdFyugIshB8eF6ALpy7jI87Q2nRh4= -sigs.k8s.io/kustomize/kyaml v0.17.2 h1:+AzvoJUY0kq4QAhH/ydPHHMRLijtUKiyVyh7fOSshr0= -sigs.k8s.io/kustomize/kyaml v0.17.2/go.mod h1:9V0mCjIEYjlXuCdYsSXvyoy2BTsLESH7TlGV81S282U= -sigs.k8s.io/structured-merge-diff/v4 v4.4.1 h1:150L+0vs/8DA78h1u02ooW1/fFq/Lwr+sGiqlzvrtq4= -sigs.k8s.io/structured-merge-diff/v4 v4.4.1/go.mod h1:N8hJocpFajUSSeSJ9bOZ77VzejKZaXsTtZo4/u7Io08= -sigs.k8s.io/yaml v1.4.0 h1:Mk1wCc2gy/F0THH0TAp1QYyJNzRm2KCLy3o5ASXVI5E= -sigs.k8s.io/yaml v1.4.0/go.mod h1:Ejl7/uTz7PSA4eKMyQCUTnhZYNmLIl+5c2lQPGR2BPY= +k8s.io/kube-openapi v0.0.0-20250910181357-589584f1c912 h1:Y3gxNAuB0OBLImH611+UDZcmKS3g6CthxToOb37KgwE= +k8s.io/kube-openapi v0.0.0-20250910181357-589584f1c912/go.mod h1:kdmbQkyfwUagLfXIad1y2TdrjPFWp2Q89B3qkRwf/pQ= +k8s.io/kubectl v0.35.0 h1:cL/wJKHDe8E8+rP3G7avnymcMg6bH6JEcR5w5uo06wc= +k8s.io/kubectl v0.35.0/go.mod h1:VR5/TSkYyxZwrRwY5I5dDq6l5KXmiCb+9w8IKplk3Qo= +k8s.io/utils v0.0.0-20251002143259-bc988d571ff4 h1:SjGebBtkBqHFOli+05xYbK8YF1Dzkbzn+gDM4X9T4Ck= +k8s.io/utils v0.0.0-20251002143259-bc988d571ff4/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= +oras.land/oras-go/v2 v2.6.0 h1:X4ELRsiGkrbeox69+9tzTu492FMUu7zJQW6eJU+I2oc= +oras.land/oras-go/v2 v2.6.0/go.mod h1:magiQDfG6H1O9APp+rOsvCPcW1GD2MM7vgnKY0Y+u1o= +sigs.k8s.io/json v0.0.0-20250730193827-2d320260d730 h1:IpInykpT6ceI+QxKBbEflcR5EXP7sU1kvOlxwZh5txg= +sigs.k8s.io/json v0.0.0-20250730193827-2d320260d730/go.mod h1:mdzfpAEoE6DHQEN0uh9ZbOCuHbLK5wOm7dK4ctXE9Tg= +sigs.k8s.io/kustomize/api v0.20.1 h1:iWP1Ydh3/lmldBnH/S5RXgT98vWYMaTUL1ADcr+Sv7I= +sigs.k8s.io/kustomize/api v0.20.1/go.mod h1:t6hUFxO+Ph0VxIk1sKp1WS0dOjbPCtLJ4p8aADLwqjM= +sigs.k8s.io/kustomize/kyaml v0.20.1 h1:PCMnA2mrVbRP3NIB6v9kYCAc38uvFLVs8j/CD567A78= +sigs.k8s.io/kustomize/kyaml v0.20.1/go.mod h1:0EmkQHRUsJxY8Ug9Niig1pUMSCGHxQ5RklbpV/Ri6po= +sigs.k8s.io/randfill v1.0.0 h1:JfjMILfT8A6RbawdsK2JXGBR5AQVfd+9TbzrlneTyrU= +sigs.k8s.io/randfill v1.0.0/go.mod h1:XeLlZ/jmk4i1HRopwe7/aU3H5n1zNUcX6TM94b3QxOY= +sigs.k8s.io/structured-merge-diff/v6 v6.3.0 h1:jTijUJbW353oVOd9oTlifJqOGEkUw2jB/fXCbTiQEco= +sigs.k8s.io/structured-merge-diff/v6 v6.3.0/go.mod h1:M3W8sfWvn2HhQDIbGWj3S099YozAsymCo/wrT5ohRUE= +sigs.k8s.io/yaml v1.6.0 h1:G8fkbMSAFqgEFgh4b1wmtzDnioxFCUgTZhlbj5P9QYs= +sigs.k8s.io/yaml v1.6.0/go.mod h1:796bPqUfzR/0jLAl6XjHl3Ck7MiyVv8dbTdyT3/pMf4= diff --git a/gomod2nix.toml b/gomod2nix.toml index 175f49f0..f5f85273 100644 --- a/gomod2nix.toml +++ b/gomod2nix.toml @@ -1,432 +1,450 @@ schema = 3 [mod] - [mod."github.com/AdaLogics/go-fuzz-headers"] - version = "v0.0.0-20240716105424-66b64c4bb379" - hash = "sha256-qvbEQkQUcClO83L42GHWecnOAP4bIlLLtuwXowtp6mE=" - [mod."github.com/Azure/go-ansiterm"] - version = "v0.0.0-20230124172434-306776ec8161" - hash = "sha256-17hCoOE3HBv6cjpcukfBS6/ULgTuoUZ7RNbi5korH2M=" - [mod."github.com/BurntSushi/toml"] - version = "v1.4.0" - hash = "sha256-3cr8hfVA4th/AfveHDxigmj8Eiiae0ZBnxAgy+7RYO4=" - [mod."github.com/MakeNowJust/heredoc"] - version = "v1.0.0" - hash = "sha256-8hKERAVV1Pew84kc9GkW23dcO8uIUx/+tJQLi+oPwqE=" - [mod."github.com/Masterminds/goutils"] - version = "v1.1.1" - hash = "sha256-MEvA5e099GUllILa5EXxa6toQexU1sz6eDZt2tiqpCY=" - [mod."github.com/Masterminds/semver/v3"] - version = "v3.2.1" - hash = "sha256-VKHIquwriyOL8A0qgtmap/3cGEOpDokOLtPg1w4xjMA=" - [mod."github.com/Masterminds/sprig/v3"] - version = "v3.2.3" - hash = "sha256-1GLZic3WQIBZGyjvyHbfcZ/7EV7oNzNhkwEiiTpVfL4=" - [mod."github.com/Masterminds/squirrel"] - version = "v1.5.4" - hash = "sha256-7UGz8TLcBI9HjU7zPqj9Gjp9Av+43mu0YCBV1mRy34o=" - [mod."github.com/Microsoft/hcsshim"] - version = "v0.12.5" - hash = "sha256-0hI+fVtUji/XoDMffTmTU3jr1mCbKYMCubcSgBCuWIg=" - [mod."github.com/asaskevich/govalidator"] - version = "v0.0.0-20230301143203-a9d515a09cc2" - hash = "sha256-UCENzt1c1tFgsAzK2TNq5s2g0tQMQ5PxFaQKe8hTL/A=" - [mod."github.com/beorn7/perks"] - version = "v1.0.1" - hash = "sha256-h75GUqfwJKngCJQVE5Ao5wnO3cfKD9lSIteoLp/3xJ4=" - [mod."github.com/blang/semver/v4"] - version = "v4.0.0" - hash = "sha256-dJC22MjnfT5WqJ7x7Tc3Bvpw9tFnBn9HqfWFiM57JVc=" - [mod."github.com/cespare/xxhash/v2"] - version = "v2.3.0" - hash = "sha256-7hRlwSR+fos1kx4VZmJ/7snR7zHh8ZFKX+qqqqGcQpY=" - [mod."github.com/chai2010/gettext-go"] - version = "v1.0.3" - hash = "sha256-RtytBWIPUk33jEYc4hBYdgcDCgzHC1z9ld/sHO5vLTc=" - [mod."github.com/containerd/containerd"] - version = "v1.7.20" - hash = "sha256-EhvXaPXtoTYiYK/hfrHlGWABvHdlSjB9yC0CLzscbBg=" - [mod."github.com/containerd/errdefs"] - version = "v0.1.0" - hash = "sha256-RCfAGVYsQ7G5rYA2NqrP2vuMHhetA+HZV0OD89+wn8I=" - [mod."github.com/containerd/log"] - version = "v0.1.0" - hash = "sha256-vuE6Mie2gSxiN3jTKTZovjcbdBd1YEExb7IBe3GM+9s=" - [mod."github.com/containerd/platforms"] - version = "v0.2.1" - hash = "sha256-XQdg/tnn5uKNzUc/dMmoIS9wgarx7SxaqZ5uJ9ZglA0=" - [mod."github.com/cyphar/filepath-securejoin"] - version = "v0.3.1" - hash = "sha256-iA4Oqsoe58tYFY8KY6bjeuSko6cB2JivYa+Yi1xYGw0=" - [mod."github.com/davecgh/go-spew"] - version = "v1.1.2-0.20180830191138-d8f796af33cc" - hash = "sha256-fV9oI51xjHdOmEx6+dlq7Ku2Ag+m/bmbzPo6A4Y74qc=" - [mod."github.com/distribution/reference"] - version = "v0.6.0" - hash = "sha256-gr4tL+qz4jKyAtl8LINcxMSanztdt+pybj1T+2ulQv4=" - [mod."github.com/docker/cli"] - version = "v27.1.1+incompatible" - hash = "sha256-Sb+qN6LpG5iHtWvp3KxggBwsEbF8GoWVq+Ss5bf7sqE=" - [mod."github.com/docker/distribution"] - version = "v2.8.3+incompatible" - hash = "sha256-XhRURCGNpJC83QZTtgCxHHFL76HaxIxjt70HwUa847E=" - [mod."github.com/docker/docker"] - version = "v27.1.1+incompatible" - hash = "sha256-w+wyGRGE0BEl4mou8MLy8QWvPcwJfvgTslTFzSEOpaY=" - [mod."github.com/docker/docker-credential-helpers"] - version = "v0.8.2" - hash = "sha256-AmCyOKd6Xvz0BUZchGSJdbPolprne/pAmCr2UoXXRBE=" - [mod."github.com/docker/go-connections"] - version = "v0.5.0" - hash = "sha256-aGbMRrguh98DupIHgcpLkVUZpwycx1noQXbtTl5Sbms=" - [mod."github.com/docker/go-metrics"] - version = "v0.0.1" - hash = "sha256-6pXkJyKTTrVbaE1D3IQ0gUUp9LTUd5yfprxClhAKzqw=" - [mod."github.com/emicklei/go-restful/v3"] - version = "v3.12.1" - hash = "sha256-UscWmnbJq0UqOdtmyG5qVS70Qc28X9Q4PHk+muXyWiA=" - [mod."github.com/evanphx/json-patch"] - version = "v5.9.0+incompatible" - hash = "sha256-chyEWaRP+Sis9rV56og669CqS2KySmjU+nCkyRoUK4A=" - [mod."github.com/exponent-io/jsonpath"] - version = "v0.0.0-20210407135951-1de76d718b3f" - hash = "sha256-2wgJI2pvkaq2MoeUmLRaTBA8dIoEcwzKvw4qKJlhIec=" - [mod."github.com/fatih/color"] - version = "v1.17.0" - hash = "sha256-QsKMy3MsvjbYNcA9jP8w6c3wpmWDZ0079bybAEzmXR0=" - [mod."github.com/felixge/httpsnoop"] - version = "v1.0.4" - hash = "sha256-c1JKoRSndwwOyOxq9ddCe+8qn7mG9uRq2o/822x5O/c=" - [mod."github.com/go-errors/errors"] - version = "v1.5.1" - hash = "sha256-K/IEfka2mbBk6b0AbiMaxpvkY1pZgzhtT6knqoDovPk=" - [mod."github.com/go-gorp/gorp/v3"] - version = "v3.1.0" - hash = "sha256-z8AJoWp3fDJMNMYAi8kJdtzXDv8QyAd6bPYE58b2urs=" - [mod."github.com/go-logr/logr"] - version = "v1.4.2" - hash = "sha256-/W6qGilFlZNTb9Uq48xGZ4IbsVeSwJiAMLw4wiNYHLI=" - [mod."github.com/go-logr/stdr"] - version = "v1.2.2" - hash = "sha256-rRweAP7XIb4egtT1f2gkz4sYOu7LDHmcJ5iNsJUd0sE=" - [mod."github.com/go-openapi/jsonpointer"] - version = "v0.21.0" - hash = "sha256-bB8XTzo4hzXemi8Ey3tIXia3mfn38bvwIzKYLJYC650=" - [mod."github.com/go-openapi/jsonreference"] - version = "v0.21.0" - hash = "sha256-lkFb/kP0qt8L1jsLYLt+jXTY6jSk5SYJbfgAKKVlQYQ=" - [mod."github.com/go-openapi/swag"] - version = "v0.23.0" - hash = "sha256-D5CzsSQ3SYJLwXT6BDahnG66LI8du59Dy1mY4KutA7A=" - [mod."github.com/gobwas/glob"] - version = "v0.2.3" - hash = "sha256-hYHMUdwxVkMOjSKjR7UWO0D0juHdI4wL8JEy5plu/Jc=" - [mod."github.com/gogo/protobuf"] - version = "v1.3.2" - hash = "sha256-pogILFrrk+cAtb0ulqn9+gRZJ7sGnnLLdtqITvxvG6c=" - [mod."github.com/golang/protobuf"] - version = "v1.5.4" - hash = "sha256-N3+Lv9lEZjrdOWdQhFj6Y3Iap4rVLEQeI8/eFFyAMZ0=" - [mod."github.com/google/btree"] - version = "v1.1.2" - hash = "sha256-K7V2obq3pLM71Mg0vhhHtZ+gtaubwXPQx3xcIyZDCjM=" - [mod."github.com/google/gnostic-models"] - version = "v0.6.8" - hash = "sha256-YzA/XpvPyfdplJtHmAUdQk9P+j0NBwHhW9nj1DaGaoQ=" - [mod."github.com/google/go-cmp"] - version = "v0.6.0" - hash = "sha256-qgra5jze4iPGP0JSTVeY5qV5AvEnEu39LYAuUCIkMtg=" - [mod."github.com/google/gofuzz"] - version = "v1.2.0" - hash = "sha256-T6Gz741l45L3F6Dt7fiAuQvQQg59Qtap3zG05M2cfqU=" - [mod."github.com/google/shlex"] - version = "v0.0.0-20191202100458-e7afc7fbc510" - hash = "sha256-1f392pCmS7AXVKXIC1SvKlYtK/rvW47F5CCkGT2G6JM=" - [mod."github.com/google/uuid"] - version = "v1.6.0" - hash = "sha256-VWl9sqUzdOuhW0KzQlv0gwwUQClYkmZwSydHG2sALYw=" - [mod."github.com/gorilla/mux"] - version = "v1.8.1" - hash = "sha256-nDABvAhlYgxUW2N/brrep7NkQXoSGcHhA+XI4+tK0F0=" - [mod."github.com/gorilla/websocket"] - version = "v1.5.3" - hash = "sha256-vTIGEFMEi+30ZdO6ffMNJ/kId6pZs5bbyqov8xe9BM0=" - [mod."github.com/gosuri/uitable"] - version = "v0.0.4" - hash = "sha256-/SpsQ7j+3dEDC0UX9C+ZjQ8zY7taoqIOQspTqRb8oLk=" - [mod."github.com/gregjones/httpcache"] - version = "v0.0.0-20190611155906-901d90724c79" - hash = "sha256-AEfenLNBYwZjwHsMG48bpwUyUtjx1BBiK2W5HQruIBc=" - [mod."github.com/hashicorp/errwrap"] - version = "v1.1.0" - hash = "sha256-6lwuMQOfBq+McrViN3maJTIeh4f8jbEqvLy2c9FvvFw=" - [mod."github.com/hashicorp/go-multierror"] - version = "v1.1.1" - hash = "sha256-ANzPEUJIZIlToxR89Mn7Db73d9LGI51ssy7eNnUgmlA=" - [mod."github.com/huandu/xstrings"] - version = "v1.5.0" - hash = "sha256-q4F/rzbWMDmOVv07RVApdpfIsRNRByfOUQPEKsTq5BM=" - [mod."github.com/imdario/mergo"] - version = "v0.3.16" - hash = "sha256-gh2TEAq8YrZOEAf6SFW4AIcEEUguD68G+7/VUnBeWwM=" - [mod."github.com/inconshreveable/mousetrap"] - version = "v1.1.0" - hash = "sha256-XWlYH0c8IcxAwQTnIi6WYqq44nOKUylSWxWO/vi+8pE=" - [mod."github.com/jmoiron/sqlx"] - version = "v1.4.0" - hash = "sha256-0H132+A983nBr2zEyCKsJoBCZlC9pG+ylEcGysxKL4M=" - [mod."github.com/josharian/intern"] - version = "v1.0.0" - hash = "sha256-LJR0QE2vOQ2/2shBbO5Yl8cVPq+NFrE3ers0vu9FRP0=" - [mod."github.com/json-iterator/go"] - version = "v1.1.12" - hash = "sha256-To8A0h+lbfZ/6zM+2PpRpY3+L6725OPC66lffq6fUoM=" - [mod."github.com/klauspost/compress"] - version = "v1.17.9" - hash = "sha256-FxHk4OuwsbiH1OLI+Q0oA4KpcOB786sEfik0G+GNoow=" - [mod."github.com/lann/builder"] - version = "v0.0.0-20180802200727-47ae307949d0" - hash = "sha256-NDZvsU6T2jVq5pfhp/VoJcMTq8DXKXiEkfZHloOX6c0=" - [mod."github.com/lann/ps"] - version = "v0.0.0-20150810152359-62de8c46ede0" - hash = "sha256-fHIjAtshTJWa67PzzgruqN1LdpQ7Zgc1qpEZWhjQTnU=" - [mod."github.com/lib/pq"] - version = "v1.10.9" - hash = "sha256-Gl6dLtL+yk6UrTTWfas43aM4lP/pNa2l7+ITXnjQyKs=" - [mod."github.com/liggitt/tabwriter"] - version = "v0.0.0-20181228230101-89fcab3d43de" - hash = "sha256-b6pLitORwgfGpOHpe45ykj00P17utbDv8bv6MCVoCBM=" - [mod."github.com/mailru/easyjson"] - version = "v0.7.7" - hash = "sha256-NVCz8MURpxgOjHXqxOZExqV4bnpHggpeAOyZDArjcy4=" - [mod."github.com/mattn/go-colorable"] - version = "v0.1.13" - hash = "sha256-qb3Qbo0CELGRIzvw7NVM1g/aayaz4Tguppk9MD2/OI8=" - [mod."github.com/mattn/go-isatty"] - version = "v0.0.20" - hash = "sha256-qhw9hWtU5wnyFyuMbKx+7RB8ckQaFQ8D+8GKPkN3HHQ=" - [mod."github.com/mattn/go-runewidth"] - version = "v0.0.16" - hash = "sha256-NC+ntvwIpqDNmXb7aixcg09il80ygq6JAnW0Gb5b/DQ=" - [mod."github.com/matttproud/golang_protobuf_extensions/v2"] - version = "v2.0.0" - hash = "sha256-gcAN8jKL0ve8pcgDkxr2Lc8CUBG39ri9QAp0zrzchEs=" - [mod."github.com/mitchellh/copystructure"] - version = "v1.2.0" - hash = "sha256-VR9cPZvyW62IHXgmMw8ee+hBDThzd2vftgPksQYR/Mc=" - [mod."github.com/mitchellh/go-wordwrap"] - version = "v1.0.1" - hash = "sha256-fiD7kh5037BjA0vW6A2El0XArkK+4S5iTBjJB43BNYo=" - [mod."github.com/mitchellh/reflectwalk"] - version = "v1.0.2" - hash = "sha256-VX9DPqChm7jPnyrA3RAYgxAFrAhj7TRKIWD/qR9Zr9s=" - [mod."github.com/mittwald/go-helm-client"] - version = "v0.12.10" - hash = "sha256-EXkfcdfjIonvdkwEQz+7nhVLw3lwEPjAatYN50I+rHE=" - [mod."github.com/moby/locker"] - version = "v1.0.1" - hash = "sha256-OcpbO3fLe0WtLDZFF1ntxoEBlEDjyoA8q8mVAQ0TLB8=" - [mod."github.com/moby/spdystream"] - version = "v0.5.0" - hash = "sha256-9gVkh6e3y75zBlCBhnwO3k+TL8jnRYg+hGYSFJRA42Y=" - [mod."github.com/moby/term"] - version = "v0.5.0" - hash = "sha256-jy0kbkeUsr0KoiE33WLxNAgYXZIERKR2O5+saXBwdD8=" - [mod."github.com/modern-go/concurrent"] - version = "v0.0.0-20180306012644-bacd9c7ef1dd" - hash = "sha256-OTySieAgPWR4oJnlohaFTeK1tRaVp/b0d1rYY8xKMzo=" - [mod."github.com/modern-go/reflect2"] - version = "v1.0.2" - hash = "sha256-+W9EIW7okXIXjWEgOaMh58eLvBZ7OshW2EhaIpNLSBU=" - [mod."github.com/monochromegane/go-gitignore"] - version = "v0.0.0-20200626010858-205db1a8cc00" - hash = "sha256-j1Mgb2TUUIiBcXB+slOkjtvcjmqSMEsG5RZYE7vGXOU=" - [mod."github.com/munnerz/goautoneg"] - version = "v0.0.0-20191010083416-a7dc8b61c822" - hash = "sha256-79URDDFenmGc9JZu+5AXHToMrtTREHb3BC84b/gym9Q=" - [mod."github.com/mxk/go-flowrate"] - version = "v0.0.0-20140419014527-cca7078d478f" - hash = "sha256-gRTfRfff/LRxC1SXXnQd2tV3UTcTx9qu90DJIVIaGn8=" - [mod."github.com/opencontainers/go-digest"] - version = "v1.0.0" - hash = "sha256-cfVDjHyWItmUGZ2dzQhCHgmOmou8v7N+itDkLZVkqkQ=" - [mod."github.com/opencontainers/image-spec"] - version = "v1.1.0" - hash = "sha256-5OxW1ShHypLpzVu+BJivNlFX2JFPh9WKfJcMIgPZf4U=" - [mod."github.com/peterbourgon/diskv"] - version = "v2.0.1+incompatible" - hash = "sha256-K4mEVjH0eyxyYHQRxdbmgJT0AJrfucUwGB2BplRRt9c=" - [mod."github.com/pkg/errors"] - version = "v0.9.1" - hash = "sha256-mNfQtcrQmu3sNg/7IwiieKWOgFQOVVe2yXgKBpe/wZw=" - [mod."github.com/prometheus/client_golang"] - version = "v1.19.1" - hash = "sha256-MSLsMDi89uQc7Pa2fhqeamyfPJpenGj3r+eB/UotK7w=" - [mod."github.com/prometheus/client_model"] - version = "v0.6.1" - hash = "sha256-rIDyUzNfxRA934PIoySR0EhuBbZVRK/25Jlc/r8WODw=" - [mod."github.com/prometheus/common"] - version = "v0.55.0" - hash = "sha256-qzvCnc+hnAB5dq2MYy8GlPxgyNnyn9kFVlN2CXZe9T0=" - [mod."github.com/prometheus/procfs"] - version = "v0.15.1" - hash = "sha256-H+WXJemFFwdoglmD6p7JRjrJJZmIVAmJwYmLbZ8Q9sw=" - [mod."github.com/rivo/uniseg"] - version = "v0.4.7" - hash = "sha256-rDcdNYH6ZD8KouyyiZCUEy8JrjOQoAkxHBhugrfHjFo=" - [mod."github.com/rubenv/sql-migrate"] - version = "v1.7.0" - hash = "sha256-lczvqWodllOmf/yGunfpR2MKcLZJngffkt4LgDrJBA4=" - [mod."github.com/russross/blackfriday/v2"] - version = "v2.1.0" - hash = "sha256-R+84l1si8az5yDqd5CYcFrTyNZ1eSYlpXKq6nFt4OTQ=" - [mod."github.com/shopspring/decimal"] - version = "v1.4.0" - hash = "sha256-U36bC271jQsjuWFF8BfLz4WicxPJUcPHRGxLvTz4Mdw=" - [mod."github.com/sirupsen/logrus"] - version = "v1.9.3" - hash = "sha256-EnxsWdEUPYid+aZ9H4/iMTs1XMvCLbXZRDyvj89Ebms=" - [mod."github.com/spf13/cast"] - version = "v1.6.0" - hash = "sha256-hxioqRZfXE0AE5099wmn3YG0AZF8Wda2EB4c7zHF6zI=" - [mod."github.com/spf13/cobra"] - version = "v1.8.1" - hash = "sha256-yDF6yAHycV1IZOrt3/hofR+QINe+B2yqkcIaVov3Ky8=" - [mod."github.com/spf13/pflag"] - version = "v1.0.5" - hash = "sha256-w9LLYzxxP74WHT4ouBspH/iQZXjuAh2WQCHsuvyEjAw=" - [mod."github.com/xeipuuv/gojsonpointer"] - version = "v0.0.0-20190905194746-02993c407bfb" - hash = "sha256-/u+qznDY8cnECZYIgSMRpKVWs04yAkW6EoGhqt+t73g=" - [mod."github.com/xeipuuv/gojsonreference"] - version = "v0.0.0-20180127040603-bd5ef7bd5415" - hash = "sha256-ZbXA+ASQrTgBQzasUKC9vznrOGpquYyWr+uwpm46fvU=" - [mod."github.com/xeipuuv/gojsonschema"] - version = "v1.2.0" - hash = "sha256-1ERBEvxj3pvHkMS2mvmvmYRi8jgAaTquo5hwjDLAEdc=" - [mod."github.com/xlab/treeprint"] - version = "v1.2.0" - hash = "sha256-g85HyWGLZuD/TFXZzmXT+u9TA1xIT5escUVhnofsYQI=" - [mod."go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp"] - version = "v0.53.0" - hash = "sha256-B7LSUQARnc4mpFjHj4jvJJh/rBAHGtKm1p+qFib+Pqk=" - [mod."go.opentelemetry.io/otel"] - version = "v1.28.0" - hash = "sha256-bilBBr2cuADs9bQ7swnGLTuC7h0DooU6BQtrQqMqIjs=" - [mod."go.opentelemetry.io/otel/metric"] - version = "v1.28.0" - hash = "sha256-k3p1lYcvrODwIkZo/j2jvCoDFUelz4yVJEEVdUKUmGU=" - [mod."go.opentelemetry.io/otel/trace"] - version = "v1.28.0" - hash = "sha256-8uxmlm0/5VGoWegxwy0q8NgeY+pyicSoV08RkvD9Q98=" - [mod."go.starlark.net"] - version = "v0.0.0-20240725214946-42030a7cedce" - hash = "sha256-DC4WPTC6ueuGBXZQYkeFNLpFfzRQBJvaDuvg5A4baFE=" - [mod."golang.org/x/crypto"] - version = "v0.25.0" - hash = "sha256-traLAylqoBwGIh0Z1fuEhNjbGgQBItgVjtZYdYr0zzQ=" - [mod."golang.org/x/exp"] - version = "v0.0.0-20240719175910-8a7402abbf56" - hash = "sha256-mHEPy0vbd/pFwq5ZAEKaehCeYVQLEFDGnXAoVgkCLPo=" - [mod."golang.org/x/net"] - version = "v0.27.0" - hash = "sha256-GrlN5isYeEVrPZVAHK0MDQatttbnyfSPoWJHj0xqhjk=" - [mod."golang.org/x/oauth2"] - version = "v0.21.0" - hash = "sha256-0xgi5k7fxMScMH+rDwXhDqe8raTFHh5ih727jGVS918=" - [mod."golang.org/x/sync"] - version = "v0.7.0" - hash = "sha256-2ETllEu2GDWoOd/yMkOkLC2hWBpKzbVZ8LhjLu0d2A8=" - [mod."golang.org/x/sys"] - version = "v0.22.0" - hash = "sha256-RbG0XaXGGlErCsl2agvUxMnrkRwdbJLmriYT1H24FwA=" - [mod."golang.org/x/term"] - version = "v0.22.0" - hash = "sha256-tRx/y4ZIZzGAlDJ/8JW3AycC9bRXlNuRqO4V48sAEEc=" - [mod."golang.org/x/text"] - version = "v0.16.0" - hash = "sha256-hMTO45upjEuA4sJzGplJT+La2n3oAfHccfYWZuHcH+8=" - [mod."golang.org/x/time"] - version = "v0.5.0" - hash = "sha256-W6RgwgdYTO3byIPOFxrP2IpAZdgaGowAaVfYby7AULU=" - [mod."google.golang.org/appengine"] - version = "v1.6.8" - hash = "sha256-decMa0MiWfW/Bzr8QPPzzpeya0YWGHhZAt4Cr/bD1wQ=" - [mod."google.golang.org/genproto/googleapis/rpc"] - version = "v0.0.0-20240730163845-b1a4ccb954bf" - hash = "sha256-ass/74EkCljwk7DaASDtK2zipn2cZv6tCLKvwONUWgY=" - [mod."google.golang.org/grpc"] - version = "v1.65.0" - hash = "sha256-YP4dewjs+YuTH7rD1p/AFNoKHlk037wbVvSLVAtewIA=" - [mod."google.golang.org/protobuf"] - version = "v1.34.2" - hash = "sha256-nMTlrDEE2dbpWz50eQMPBQXCyQh4IdjrTIccaU0F3m0=" - [mod."gopkg.in/evanphx/json-patch.v4"] - version = "v4.12.0" - hash = "sha256-rUOokb3XW30ftpHp0fsF2WiJln1S0FSt2El7fTHq3CM=" - [mod."gopkg.in/evanphx/json-patch.v5"] - version = "v5.9.0" - hash = "sha256-chyEWaRP+Sis9rV56og669CqS2KySmjU+nCkyRoUK4A=" - [mod."gopkg.in/inf.v0"] - version = "v0.9.1" - hash = "sha256-z84XlyeWLcoYOvWLxPkPFgLkpjyb2Y4pdeGMyySOZQI=" - [mod."gopkg.in/yaml.v2"] - version = "v2.4.0" - hash = "sha256-uVEGglIedjOIGZzHW4YwN1VoRSTK8o0eGZqzd+TNdd0=" - [mod."gopkg.in/yaml.v3"] - version = "v3.0.1" - hash = "sha256-FqL9TKYJ0XkNwJFnq9j0VvJ5ZUU1RvH/52h/f5bkYAU=" - [mod."helm.sh/helm/v3"] - version = "v3.15.3" - hash = "sha256-h669E0R0ors/NhSuoBgONmVvTMEkP+QKIOrO1zP3Cqk=" - [mod."k8s.io/api"] - version = "v0.30.3" - hash = "sha256-tKEmMvbuQWyyVWYJUCljAZdHBeqz8vD3WBK8bNgKgpc=" - [mod."k8s.io/apiextensions-apiserver"] - version = "v0.30.3" - hash = "sha256-31+YVxnL0lBb2hab2ARD3dDyfydN74+3yjgySOLWnxk=" - [mod."k8s.io/apimachinery"] - version = "v0.30.3" - hash = "sha256-EBWG9PlSfRwMed/u6oF8ME8n44/U5HGBCacH+Mns2UI=" - [mod."k8s.io/apiserver"] - version = "v0.30.3" - hash = "sha256-cuEOyEI18Hl1/yKW2TNhdOCrV6/rZU9JpnhjggntQZI=" - [mod."k8s.io/cli-runtime"] - version = "v0.30.3" - hash = "sha256-53Jupc4a/Su6bIM4xworTpUHPEJIAyzHMKGVeUdJuTc=" - [mod."k8s.io/client-go"] - version = "v0.30.3" - hash = "sha256-hmt5J9ZYwLMfpGcXmn+HzXAl2t7ZEdBQMylOkoA5m+g=" - [mod."k8s.io/component-base"] - version = "v0.30.3" - hash = "sha256-ymtEQ7V3UJs1SzIDBk7XLoxTltDdAc3C1qfRUo4uWCA=" - [mod."k8s.io/klog/v2"] - version = "v2.130.1" - hash = "sha256-n5vls1o1a0V0KYv+3SULq4q3R2Is15K8iDHhFlsSH4o=" - [mod."k8s.io/kube-openapi"] - version = "v0.0.0-20240730131305-7a9a4e85957e" - hash = "sha256-/habn/lGBjzgqDuwQdzvMcOOa7A87fUGFgNKP4CNjsQ=" - [mod."k8s.io/kubectl"] - version = "v0.30.3" - hash = "sha256-BgdH3zjaWu1w7w6YzFqeujsgn944JZstlllS9eAlTxY=" - [mod."k8s.io/utils"] - version = "v0.0.0-20240711033017-18e509b52bc8" - hash = "sha256-asDLYotyW+oWIsCmiu9fLuLk77mAsKBkG6QnAbRsyoE=" - [mod."oras.land/oras-go"] - version = "v1.2.6" - hash = "sha256-bhVDJGoINGEtTNfJXwS0K0ptyzyG7Xk6Pqu8C/79DSI=" - [mod."sigs.k8s.io/json"] - version = "v0.0.0-20221116044647-bc3834ca7abd" - hash = "sha256-XDBMN2o450IHiAwEpBVsvo9e7tYZa+EXWrifUNTdNMU=" - [mod."sigs.k8s.io/kustomize/api"] - version = "v0.17.3" - hash = "sha256-O4r+ebfusc5I8Brs5KDH8OyHwFpvjQx7O44i0A29vNI=" - [mod."sigs.k8s.io/kustomize/kyaml"] - version = "v0.17.2" - hash = "sha256-mDdiYTWhHAM4lk6zJWwtE8qnXLrPmE/V2Ev/JdesNGM=" - [mod."sigs.k8s.io/structured-merge-diff/v4"] - version = "v4.4.1" - hash = "sha256-FcZHHZCKNNZW6/s1T1sKiS5Vj1TpHPmxVWr6YlL60xA=" - [mod."sigs.k8s.io/yaml"] - version = "v1.4.0" - hash = "sha256-Hd/M0vIfIVobDd87eb58p1HyVOjYWNlGq2bRXfmtVno=" + [mod.'dario.cat/mergo'] + version = 'v1.0.1' + hash = 'sha256-wcG6+x0k6KzOSlaPA+1RFxa06/RIAePJTAjjuhLbImw=' + + [mod.'github.com/AdaLogics/go-fuzz-headers'] + version = 'v0.0.0-20240716105424-66b64c4bb379' + hash = 'sha256-qvbEQkQUcClO83L42GHWecnOAP4bIlLLtuwXowtp6mE=' + + [mod.'github.com/Azure/go-ansiterm'] + version = 'v0.0.0-20250102033503-faa5f7b0171c' + hash = 'sha256-4WYKJtxjnm3egDAh9ocTR+gy5UUqVoY3knHy9c17XIY=' + + [mod.'github.com/BurntSushi/toml'] + version = 'v1.6.0' + hash = 'sha256-ptdUJvuc21ixeLt+M5way/na3aCnCO4MYHWulWp8NEY=' + + [mod.'github.com/MakeNowJust/heredoc'] + version = 'v1.0.0' + hash = 'sha256-8hKERAVV1Pew84kc9GkW23dcO8uIUx/+tJQLi+oPwqE=' + + [mod.'github.com/Masterminds/goutils'] + version = 'v1.1.1' + hash = 'sha256-MEvA5e099GUllILa5EXxa6toQexU1sz6eDZt2tiqpCY=' + + [mod.'github.com/Masterminds/semver/v3'] + version = 'v3.4.0' + hash = 'sha256-75kRraVwYVjYLWZvuSlts4Iu28Eh3SpiF0GHc7vCYHI=' + + [mod.'github.com/Masterminds/sprig/v3'] + version = 'v3.3.0' + hash = 'sha256-NvFX1xRO5t/u8OI063SDPfqYcZ43AuLI6klA6daPV9I=' + + [mod.'github.com/Masterminds/squirrel'] + version = 'v1.5.4' + hash = 'sha256-7UGz8TLcBI9HjU7zPqj9Gjp9Av+43mu0YCBV1mRy34o=' + + [mod.'github.com/asaskevich/govalidator'] + version = 'v0.0.0-20230301143203-a9d515a09cc2' + hash = 'sha256-UCENzt1c1tFgsAzK2TNq5s2g0tQMQ5PxFaQKe8hTL/A=' + + [mod.'github.com/blang/semver/v4'] + version = 'v4.0.0' + hash = 'sha256-dJC22MjnfT5WqJ7x7Tc3Bvpw9tFnBn9HqfWFiM57JVc=' + + [mod.'github.com/chai2010/gettext-go'] + version = 'v1.0.3' + hash = 'sha256-RtytBWIPUk33jEYc4hBYdgcDCgzHC1z9ld/sHO5vLTc=' + + [mod.'github.com/containerd/containerd'] + version = 'v1.7.30' + hash = 'sha256-JZqT04mKf2AZmNIH8UkAQsFMUnMh9CvbNc6I8KSaRiI=' + + [mod.'github.com/containerd/errdefs'] + version = 'v0.3.0' + hash = 'sha256-wMZGoeqvRhuovYCJx0Js4P3qFCNTZ/6Atea/kNYoPMI=' + + [mod.'github.com/containerd/log'] + version = 'v0.1.0' + hash = 'sha256-vuE6Mie2gSxiN3jTKTZovjcbdBd1YEExb7IBe3GM+9s=' + + [mod.'github.com/containerd/platforms'] + version = 'v0.2.1' + hash = 'sha256-XQdg/tnn5uKNzUc/dMmoIS9wgarx7SxaqZ5uJ9ZglA0=' + + [mod.'github.com/cyphar/filepath-securejoin'] + version = 'v0.6.1' + hash = 'sha256-obqip8c1c9mjXFznyXF8aDnpcMw7ttzv+e28anCa/v0=' + + [mod.'github.com/davecgh/go-spew'] + version = 'v1.1.2-0.20180830191138-d8f796af33cc' + hash = 'sha256-fV9oI51xjHdOmEx6+dlq7Ku2Ag+m/bmbzPo6A4Y74qc=' + + [mod.'github.com/emicklei/go-restful/v3'] + version = 'v3.12.2' + hash = 'sha256-eQ0qtVH7c5jgqB7F9B17GhZujYelBA2g9KwpPuSS0sE=' + + [mod.'github.com/evanphx/json-patch'] + version = 'v5.9.11+incompatible' + hash = 'sha256-1iyZpBaeBLmNkJ3T4A9fAEXEYB9nk9V02ug4pwl5dy0=' + + [mod.'github.com/exponent-io/jsonpath'] + version = 'v0.0.0-20210407135951-1de76d718b3f' + hash = 'sha256-2wgJI2pvkaq2MoeUmLRaTBA8dIoEcwzKvw4qKJlhIec=' + + [mod.'github.com/fatih/color'] + version = 'v1.17.0' + hash = 'sha256-QsKMy3MsvjbYNcA9jP8w6c3wpmWDZ0079bybAEzmXR0=' + + [mod.'github.com/fxamacker/cbor/v2'] + version = 'v2.9.0' + hash = 'sha256-/IZK76MRCrz9XCiilieH5tKaLnIWyPJhwxDoVKB8dFc=' + + [mod.'github.com/go-errors/errors'] + version = 'v1.5.1' + hash = 'sha256-K/IEfka2mbBk6b0AbiMaxpvkY1pZgzhtT6knqoDovPk=' + + [mod.'github.com/go-gorp/gorp/v3'] + version = 'v3.1.0' + hash = 'sha256-z8AJoWp3fDJMNMYAi8kJdtzXDv8QyAd6bPYE58b2urs=' + + [mod.'github.com/go-logr/logr'] + version = 'v1.4.3' + hash = 'sha256-Nnp/dEVNMxLp3RSPDHZzGbI8BkSNuZMX0I0cjWKXXLA=' + + [mod.'github.com/go-openapi/jsonpointer'] + version = 'v0.21.0' + hash = 'sha256-bB8XTzo4hzXemi8Ey3tIXia3mfn38bvwIzKYLJYC650=' + + [mod.'github.com/go-openapi/jsonreference'] + version = 'v0.21.0' + hash = 'sha256-lkFb/kP0qt8L1jsLYLt+jXTY6jSk5SYJbfgAKKVlQYQ=' + + [mod.'github.com/go-openapi/swag'] + version = 'v0.23.0' + hash = 'sha256-D5CzsSQ3SYJLwXT6BDahnG66LI8du59Dy1mY4KutA7A=' + + [mod.'github.com/gobwas/glob'] + version = 'v0.2.3' + hash = 'sha256-hYHMUdwxVkMOjSKjR7UWO0D0juHdI4wL8JEy5plu/Jc=' + + [mod.'github.com/google/btree'] + version = 'v1.1.3' + hash = 'sha256-/6Us2eNRFi2IIp7p5uPUXLridilAdk4SmZhcTYR0csw=' + + [mod.'github.com/google/gnostic-models'] + version = 'v0.7.0' + hash = 'sha256-sxShRxqOUVlz9IkAz0C/NP/7CmLBW3ffwoZTdh+rIOc=' + + [mod.'github.com/google/go-cmp'] + version = 'v0.7.0' + hash = 'sha256-JbxZFBFGCh/Rj5XZ1vG94V2x7c18L8XKB0N9ZD5F2rM=' + + [mod.'github.com/google/uuid'] + version = 'v1.6.0' + hash = 'sha256-VWl9sqUzdOuhW0KzQlv0gwwUQClYkmZwSydHG2sALYw=' + + [mod.'github.com/gosuri/uitable'] + version = 'v0.0.4' + hash = 'sha256-/SpsQ7j+3dEDC0UX9C+ZjQ8zY7taoqIOQspTqRb8oLk=' + + [mod.'github.com/gregjones/httpcache'] + version = 'v0.0.0-20190611155906-901d90724c79' + hash = 'sha256-AEfenLNBYwZjwHsMG48bpwUyUtjx1BBiK2W5HQruIBc=' + + [mod.'github.com/hashicorp/errwrap'] + version = 'v1.1.0' + hash = 'sha256-6lwuMQOfBq+McrViN3maJTIeh4f8jbEqvLy2c9FvvFw=' + + [mod.'github.com/hashicorp/go-multierror'] + version = 'v1.1.1' + hash = 'sha256-ANzPEUJIZIlToxR89Mn7Db73d9LGI51ssy7eNnUgmlA=' + + [mod.'github.com/huandu/xstrings'] + version = 'v1.5.0' + hash = 'sha256-q4F/rzbWMDmOVv07RVApdpfIsRNRByfOUQPEKsTq5BM=' + + [mod.'github.com/inconshreveable/mousetrap'] + version = 'v1.1.0' + hash = 'sha256-XWlYH0c8IcxAwQTnIi6WYqq44nOKUylSWxWO/vi+8pE=' + + [mod.'github.com/jmoiron/sqlx'] + version = 'v1.4.0' + hash = 'sha256-0H132+A983nBr2zEyCKsJoBCZlC9pG+ylEcGysxKL4M=' + + [mod.'github.com/josharian/intern'] + version = 'v1.0.0' + hash = 'sha256-LJR0QE2vOQ2/2shBbO5Yl8cVPq+NFrE3ers0vu9FRP0=' + + [mod.'github.com/json-iterator/go'] + version = 'v1.1.12' + hash = 'sha256-To8A0h+lbfZ/6zM+2PpRpY3+L6725OPC66lffq6fUoM=' + + [mod.'github.com/klauspost/compress'] + version = 'v1.18.0' + hash = 'sha256-jc5pMU/HCBFOShMcngVwNMhz9wolxjOb579868LtOuk=' + + [mod.'github.com/lann/builder'] + version = 'v0.0.0-20180802200727-47ae307949d0' + hash = 'sha256-NDZvsU6T2jVq5pfhp/VoJcMTq8DXKXiEkfZHloOX6c0=' + + [mod.'github.com/lann/ps'] + version = 'v0.0.0-20150810152359-62de8c46ede0' + hash = 'sha256-fHIjAtshTJWa67PzzgruqN1LdpQ7Zgc1qpEZWhjQTnU=' + + [mod.'github.com/lib/pq'] + version = 'v1.10.9' + hash = 'sha256-Gl6dLtL+yk6UrTTWfas43aM4lP/pNa2l7+ITXnjQyKs=' + + [mod.'github.com/liggitt/tabwriter'] + version = 'v0.0.0-20181228230101-89fcab3d43de' + hash = 'sha256-b6pLitORwgfGpOHpe45ykj00P17utbDv8bv6MCVoCBM=' + + [mod.'github.com/mailru/easyjson'] + version = 'v0.7.7' + hash = 'sha256-NVCz8MURpxgOjHXqxOZExqV4bnpHggpeAOyZDArjcy4=' + + [mod.'github.com/mattn/go-colorable'] + version = 'v0.1.13' + hash = 'sha256-qb3Qbo0CELGRIzvw7NVM1g/aayaz4Tguppk9MD2/OI8=' + + [mod.'github.com/mattn/go-isatty'] + version = 'v0.0.20' + hash = 'sha256-qhw9hWtU5wnyFyuMbKx+7RB8ckQaFQ8D+8GKPkN3HHQ=' + + [mod.'github.com/mattn/go-runewidth'] + version = 'v0.0.16' + hash = 'sha256-NC+ntvwIpqDNmXb7aixcg09il80ygq6JAnW0Gb5b/DQ=' + + [mod.'github.com/mitchellh/copystructure'] + version = 'v1.2.0' + hash = 'sha256-VR9cPZvyW62IHXgmMw8ee+hBDThzd2vftgPksQYR/Mc=' + + [mod.'github.com/mitchellh/go-wordwrap'] + version = 'v1.0.1' + hash = 'sha256-fiD7kh5037BjA0vW6A2El0XArkK+4S5iTBjJB43BNYo=' + + [mod.'github.com/mitchellh/reflectwalk'] + version = 'v1.0.2' + hash = 'sha256-VX9DPqChm7jPnyrA3RAYgxAFrAhj7TRKIWD/qR9Zr9s=' + + [mod.'github.com/mittwald/go-helm-client'] + version = 'v0.12.19' + hash = 'sha256-l3phllpgo5A0ZyoHEFLi5jK18zVGjvqjKpSZXg2esug=' + + [mod.'github.com/moby/term'] + version = 'v0.5.2' + hash = 'sha256-/G20jUZKx36ktmPU/nEw/gX7kRTl1Dbu7zvNBYNt4xU=' + + [mod.'github.com/modern-go/concurrent'] + version = 'v0.0.0-20180306012644-bacd9c7ef1dd' + hash = 'sha256-OTySieAgPWR4oJnlohaFTeK1tRaVp/b0d1rYY8xKMzo=' + + [mod.'github.com/modern-go/reflect2'] + version = 'v1.0.3-0.20250322232337-35a7c28c31ee' + hash = 'sha256-0pkWWZRB3lGFyzmlxxrm0KWVQo9HNXNafaUu3k+rE1g=' + + [mod.'github.com/monochromegane/go-gitignore'] + version = 'v0.0.0-20200626010858-205db1a8cc00' + hash = 'sha256-j1Mgb2TUUIiBcXB+slOkjtvcjmqSMEsG5RZYE7vGXOU=' + + [mod.'github.com/munnerz/goautoneg'] + version = 'v0.0.0-20191010083416-a7dc8b61c822' + hash = 'sha256-79URDDFenmGc9JZu+5AXHToMrtTREHb3BC84b/gym9Q=' + + [mod.'github.com/opencontainers/go-digest'] + version = 'v1.0.0' + hash = 'sha256-cfVDjHyWItmUGZ2dzQhCHgmOmou8v7N+itDkLZVkqkQ=' + + [mod.'github.com/opencontainers/image-spec'] + version = 'v1.1.1' + hash = 'sha256-bxBjtl+6846Ed3QHwdssOrNvlHV6b+Dn17zPISSQGP8=' + + [mod.'github.com/peterbourgon/diskv'] + version = 'v2.0.1+incompatible' + hash = 'sha256-K4mEVjH0eyxyYHQRxdbmgJT0AJrfucUwGB2BplRRt9c=' + + [mod.'github.com/pkg/errors'] + version = 'v0.9.1' + hash = 'sha256-mNfQtcrQmu3sNg/7IwiieKWOgFQOVVe2yXgKBpe/wZw=' + + [mod.'github.com/pmezard/go-difflib'] + version = 'v1.0.1-0.20181226105442-5d4384ee4fb2' + hash = 'sha256-XA4Oj1gdmdV/F/+8kMI+DBxKPthZ768hbKsO3d9Gx90=' + + [mod.'github.com/rivo/uniseg'] + version = 'v0.4.7' + hash = 'sha256-rDcdNYH6ZD8KouyyiZCUEy8JrjOQoAkxHBhugrfHjFo=' + + [mod.'github.com/rubenv/sql-migrate'] + version = 'v1.8.1' + hash = 'sha256-etogS73ms8b6GoL7WxaU6l5HhnwdITWwbC6ajVP0oRI=' + + [mod.'github.com/russross/blackfriday/v2'] + version = 'v2.1.0' + hash = 'sha256-R+84l1si8az5yDqd5CYcFrTyNZ1eSYlpXKq6nFt4OTQ=' + + [mod.'github.com/santhosh-tekuri/jsonschema/v6'] + version = 'v6.0.2' + hash = 'sha256-rPRYeV00NRyt6rb+gFJRK1K4TlVxy92cocRK/X9Wef4=' + + [mod.'github.com/shopspring/decimal'] + version = 'v1.4.0' + hash = 'sha256-U36bC271jQsjuWFF8BfLz4WicxPJUcPHRGxLvTz4Mdw=' + + [mod.'github.com/sirupsen/logrus'] + version = 'v1.9.3' + hash = 'sha256-EnxsWdEUPYid+aZ9H4/iMTs1XMvCLbXZRDyvj89Ebms=' + + [mod.'github.com/spf13/cast'] + version = 'v1.7.0' + hash = 'sha256-xO2kSmNmMHaJ1i3T0ou0pcaBCusuO6Ep3xtF1P7ZadA=' + + [mod.'github.com/spf13/cobra'] + version = 'v1.10.2' + hash = 'sha256-nbRCTFiDCC2jKK7AHi79n7urYCMP5yDZnWtNVJrDi+k=' + + [mod.'github.com/spf13/pflag'] + version = 'v1.0.10' + hash = 'sha256-uDPnWjHpSrzXr17KEYEA1yAbizfcsfo5AyztY2tS6ZU=' + + [mod.'github.com/x448/float16'] + version = 'v0.8.4' + hash = 'sha256-VKzMTMS9pIB/cwe17xPftCSK9Mf4Y6EuBEJlB4by5mE=' + + [mod.'github.com/xlab/treeprint'] + version = 'v1.2.0' + hash = 'sha256-g85HyWGLZuD/TFXZzmXT+u9TA1xIT5escUVhnofsYQI=' + + [mod.'go.yaml.in/yaml/v2'] + version = 'v2.4.3' + hash = 'sha256-WqfrOUQFvfuORgl1yyVOcsEXU/vwWQHkcVWx3vCxvaw=' + + [mod.'go.yaml.in/yaml/v3'] + version = 'v3.0.4' + hash = 'sha256-NkGFiDPoCxbr3LFsI6OCygjjkY0rdmg5ggvVVwpyDQ4=' + + [mod.'golang.org/x/crypto'] + version = 'v0.46.0' + hash = 'sha256-I8N/spcw3/h0DFA+V1WK38HctckWIB9ep93DEVCALxU=' + + [mod.'golang.org/x/net'] + version = 'v0.48.0' + hash = 'sha256-oZpddsiJwWCH3Aipa+XXpy7G/xHY5fEagUSok7T0bXE=' + + [mod.'golang.org/x/oauth2'] + version = 'v0.30.0' + hash = 'sha256-btD7BUtQpOswusZY5qIU90uDo38buVrQ0tmmQ8qNHDg=' + + [mod.'golang.org/x/sync'] + version = 'v0.19.0' + hash = 'sha256-RbRZ+sKZUurOczGhhzOoY/sojTlta3H9XjL4PXX/cno=' + + [mod.'golang.org/x/sys'] + version = 'v0.40.0' + hash = 'sha256-KDe+wMr7dfMFwKMJEljzk+f82pQWFFPoFHivjD7qJGg=' + + [mod.'golang.org/x/term'] + version = 'v0.39.0' + hash = 'sha256-diP4VknZDlJmhGQdcsXwI2+sFayQdsILFuxK1FBPaUE=' + + [mod.'golang.org/x/text'] + version = 'v0.33.0' + hash = 'sha256-XdA6D39ESuJkaaM/SRBnqZzjKUwi6Gbt1Si1nvauTr4=' + + [mod.'golang.org/x/time'] + version = 'v0.12.0' + hash = 'sha256-Cp3oxrCMH2wyxjzr5SHVmyhgaoUuSl56Uy00Q7DYEpw=' + + [mod.'google.golang.org/genproto/googleapis/rpc'] + version = 'v0.0.0-20250528174236-200df99c418a' + hash = 'sha256-WK7iDtAhH19NPe3TywTQlGjDawNaDKWnxhFL9PgVUwM=' + + [mod.'google.golang.org/grpc'] + version = 'v1.72.2' + hash = 'sha256-j69zyPD3jssUWXUxNL+Ky8gUD4YE0/6nZBOJPWgD97o=' + + [mod.'google.golang.org/protobuf'] + version = 'v1.36.8' + hash = 'sha256-yZN8ZON0b5HjUNUSubHst7zbvnMsOzd81tDPYQRtPgM=' + + [mod.'gopkg.in/evanphx/json-patch.v4'] + version = 'v4.13.0' + hash = 'sha256-1iyZpBaeBLmNkJ3T4A9fAEXEYB9nk9V02ug4pwl5dy0=' + + [mod.'gopkg.in/inf.v0'] + version = 'v0.9.1' + hash = 'sha256-z84XlyeWLcoYOvWLxPkPFgLkpjyb2Y4pdeGMyySOZQI=' + + [mod.'gopkg.in/yaml.v3'] + version = 'v3.0.1' + hash = 'sha256-FqL9TKYJ0XkNwJFnq9j0VvJ5ZUU1RvH/52h/f5bkYAU=' + + [mod.'helm.sh/helm/v3'] + version = 'v3.20.0' + hash = 'sha256-zKZEcSxpISjKUtkh/YUReduygpAA88wkZQAUAodHsQo=' + + [mod.'k8s.io/api'] + version = 'v0.35.2' + hash = 'sha256-nJSz5WkVcB9ie8RKrsMiOQjD2YR22PJgyXZaZe3fhZM=' + + [mod.'k8s.io/apiextensions-apiserver'] + version = 'v0.35.0' + hash = 'sha256-RZdGkV4SoCTY022pIzQbeVwaxIYhIpXapLZrD593gh8=' + + [mod.'k8s.io/apimachinery'] + version = 'v0.35.2' + hash = 'sha256-+dplbHUOfaCaD2E9IS4F3lnjSCr/a4LjTgdB9de92Pw=' + + [mod.'k8s.io/apiserver'] + version = 'v0.35.0' + hash = 'sha256-jte6rWgLJddOrVPdBavTDM5ivq0nlkdvfxuprWJTMDM=' + + [mod.'k8s.io/cli-runtime'] + version = 'v0.35.0' + hash = 'sha256-dxpvB1ZuZU7Xq9hVneukOh3ToT8N/shUv/opB5qDNnw=' + + [mod.'k8s.io/client-go'] + version = 'v0.35.2' + hash = 'sha256-e6FwEM1Vp4M6lFhL7MoGSqvi52gdJz5tH5fK8UCHpkw=' + + [mod.'k8s.io/component-base'] + version = 'v0.35.0' + hash = 'sha256-fIAmKs3/T8oHrXBX3sMWr/D1DGhyCsgM+6ZFdaA8BXU=' + + [mod.'k8s.io/klog/v2'] + version = 'v2.130.1' + hash = 'sha256-n5vls1o1a0V0KYv+3SULq4q3R2Is15K8iDHhFlsSH4o=' + + [mod.'k8s.io/kube-openapi'] + version = 'v0.0.0-20250910181357-589584f1c912' + hash = 'sha256-p34xQitGZDlha75SDiavMn6Cxilvo7L46p0C05wqwhQ=' + + [mod.'k8s.io/kubectl'] + version = 'v0.35.0' + hash = 'sha256-QBEqToqWG/zPx01CHYKev0aHzYqjXDRsf92OSF09Mh4=' + + [mod.'k8s.io/utils'] + version = 'v0.0.0-20251002143259-bc988d571ff4' + hash = 'sha256-Z3gfQXu5D5U58IyV7dYamQjrLbFSB0BmlJtFWvgHIgg=' + + [mod.'oras.land/oras-go/v2'] + version = 'v2.6.0' + hash = 'sha256-UwoJIpfocbUEYk25WqXbfysztCaYUXybk9W9EfxtTHg=' + + [mod.'sigs.k8s.io/json'] + version = 'v0.0.0-20250730193827-2d320260d730' + hash = 'sha256-y3vUPJYL6oxu/8c0j4vgX6fzqHtVPSCjfyuWkZYf6+I=' + + [mod.'sigs.k8s.io/kustomize/api'] + version = 'v0.20.1' + hash = 'sha256-kcZREdlFsFC7xaMRzvwkE+93lQJBTanImDJjgYMyzRU=' + + [mod.'sigs.k8s.io/kustomize/kyaml'] + version = 'v0.20.1' + hash = 'sha256-k87zgSRMFVcph06vqMd4KG9kE1GzllxKu36mWKdSisY=' + + [mod.'sigs.k8s.io/randfill'] + version = 'v1.0.0' + hash = 'sha256-xldQxDwW84hmlihdSOFfjXyauhxEWV9KmIDLZMTcYNo=' + + [mod.'sigs.k8s.io/structured-merge-diff/v6'] + version = 'v6.3.0' + hash = 'sha256-2EqUZSaHUhwTrdjoZuv+Z99tZYrX1E6rxf2ejeKd2BM=' + + [mod.'sigs.k8s.io/yaml'] + version = 'v1.6.0' + hash = 'sha256-49hg7IVPzwxeovp+HTMiWa/10NMMTSTjAdCmIv6p9dw=' diff --git a/nix/sources.json b/nix/sources.json index b1071336..3043939d 100644 --- a/nix/sources.json +++ b/nix/sources.json @@ -5,10 +5,10 @@ "homepage": "", "owner": "kolloch", "repo": "crate2nix", - "rev": "151122427d030874ebef3517cda766a6984e6ed6", - "sha256": "0clqy88nhd0w316957scnczzwrklazkfxbycxf0h17z7jrw1px6a", + "rev": "2114b4c51ab70739e41265ecca709f73b12d06b5", + "sha256": "0snavss5h7nzkmsw4l1ajf66l11cn5sxqr2mcyvp2znkxi69z85x", "type": "tarball", - "url": "https://github.com/kolloch/crate2nix/archive/151122427d030874ebef3517cda766a6984e6ed6.tar.gz", + "url": "https://github.com/kolloch/crate2nix/archive/2114b4c51ab70739e41265ecca709f73b12d06b5.tar.gz", "url_template": "https://github.com///archive/.tar.gz" }, "gomod2nix": { @@ -17,35 +17,23 @@ "homepage": "", "owner": "nix-community", "repo": "gomod2nix", - "rev": "5d387097aa716f35dd99d848dc26d8d5b62a104c", - "sha256": "1mdwyjz43nnh7gfq4rc54kql6fy65hw17w0p4gwklnfqciwrkax2", + "rev": "1201ddd1279c35497754f016ef33d5e060f3da8d", + "sha256": "0c037y00sajzbfi5d5ai1w4z7ijrgiv71dvpidxbwnbr6wxzs768", "type": "tarball", - "url": "https://github.com/nix-community/gomod2nix/archive/5d387097aa716f35dd99d848dc26d8d5b62a104c.tar.gz", + "url": "https://github.com/nix-community/gomod2nix/archive/1201ddd1279c35497754f016ef33d5e060f3da8d.tar.gz", "url_template": "https://github.com///archive/.tar.gz", "version": "1.5.0" }, - "js2nix": { - "branch": "main", - "description": "Node.js modules installation using Nix", - "homepage": "", - "owner": "canva-public", - "repo": "js2nix", - "rev": "d37912f6cc824e7f41bea7a481af1739ca195c8f", - "sha256": "075hw89h6dvrz5h1iz56yksv6a41hgh35f1wcgisnvsy2l8z8sq6", - "type": "tarball", - "url": "https://github.com/canva-public/js2nix/archive/d37912f6cc824e7f41bea7a481af1739ca195c8f.tar.gz", - "url_template": "https://github.com///archive/.tar.gz" - }, "nixpkgs": { "branch": "nixpkgs-unstable", "description": "Nix Packages collection", "homepage": "", "owner": "NixOS", "repo": "nixpkgs", - "rev": "a04d33c0c3f1a59a2c1cb0c6e34cd24500e5a1dc", - "sha256": "0ha2a6j3y4dbclcw7s6p473fcrzxhn4yap4wbm8s4jg7v6wal0ph", + "rev": "75690239f08f885ca9b0267580101f60d10fbe62", + "sha256": "0cki1jyqh8fbwm0c7wbyc3yq2q80218bsq17ycrrnvh0jl9dcbaz", "type": "tarball", - "url": "https://github.com/NixOS/nixpkgs/archive/a04d33c0c3f1a59a2c1cb0c6e34cd24500e5a1dc.tar.gz", + "url": "https://github.com/NixOS/nixpkgs/archive/75690239f08f885ca9b0267580101f60d10fbe62.tar.gz", "url_template": "https://github.com///archive/.tar.gz" } } diff --git a/package.json b/package.json deleted file mode 100644 index 45a78b88..00000000 --- a/package.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "private": true, - "workspaces": [ - "web" - ], - "packageManager": "yarn@1.22.19" -} diff --git a/rust-toolchain.toml b/rust-toolchain.toml index c1bc0a69..c976725f 100644 --- a/rust-toolchain.toml +++ b/rust-toolchain.toml @@ -1,2 +1,3 @@ [toolchain] -channel = "1.85.0" +channel = "1.93.0" +profile = "default" diff --git a/rust/stackable-cockpit/Cargo.toml b/rust/stackable-cockpit/Cargo.toml index 1decc06f..15ec1139 100644 --- a/rust/stackable-cockpit/Cargo.toml +++ b/rust/stackable-cockpit/Cargo.toml @@ -16,9 +16,9 @@ openapi = ["dep:utoipa"] helm-sys = { path = "../helm-sys" } bcrypt.workspace = true +clap.workspace = true +either.workspace = true indexmap.workspace = true -k8s-openapi.workspace = true -kube.workspace = true rand.workspace = true reqwest.workspace = true semver.workspace = true diff --git a/rust/stackable-cockpit/src/common/list.rs b/rust/stackable-cockpit/src/common/list.rs index 66b721e4..c2a486c3 100644 --- a/rust/stackable-cockpit/src/common/list.rs +++ b/rust/stackable-cockpit/src/common/list.rs @@ -49,7 +49,7 @@ where for file in files { let specs = transfer_client - .get(file, &Yaml::::new()) + .get(file, &Yaml::::default()) .await .context(FileTransferSnafu)?; diff --git a/rust/stackable-cockpit/src/constants.rs b/rust/stackable-cockpit/src/constants.rs index 120e5d8f..1c75953e 100644 --- a/rust/stackable-cockpit/src/constants.rs +++ b/rust/stackable-cockpit/src/constants.rs @@ -27,20 +27,61 @@ pub const HELM_OCI_REGISTRY: &str = "oci://oci.stackable.tech/sdp-charts"; pub const HELM_DEFAULT_CHART_VERSION: &str = "0.0.0-dev"; -pub const PRODUCT_NAMES: &[&str] = &[ - "airflow", - "druid", - "hbase", - "hdfs", - "hive", - "kafka", - "nifi", - "opa", - "spark-connect", - "spark-history", - "superset", - "trino", - "zookeeper", +/// Tuple of (product name, group, version, kind) +/// Group is usually `.stackable.tech`. +/// The version is currently hard-coded to `v1alpha1`. +/// Kind is usually `Cluster`. +/// But there are exceptions. +pub const PRODUCTS: &[(&str, &str, &str, &str)] = &[ + ( + "airflow", + "airflow.stackable.tech", + "v1alpha1", + "AirflowCluster", + ), + ("druid", "druid.stackable.tech", "v1alpha1", "DruidCluster"), + ("hbase", "hbase.stackable.tech", "v1alpha1", "HbaseCluster"), + ("hdfs", "hdfs.stackable.tech", "v1alpha1", "HdfsCluster"), + ("hive", "hive.stackable.tech", "v1alpha1", "HiveCluster"), + ("kafka", "kafka.stackable.tech", "v1alpha1", "KafkaCluster"), + ("nifi", "nifi.stackable.tech", "v1alpha1", "NifiCluster"), + ("opa", "opa.stackable.tech", "v1alpha1", "OpaCluster"), + // Kind is `OpenSearchCluster` instead of `OpensearchCluster`. + ( + "opensearch", + "opensearch.stackable.tech", + "v1alpha1", + "OpenSearchCluster", + ), + // Group is `spark.stackable.tech` instead of `spark-connect.stackable.tech`. + // Kind is `SparkConnectServer` instead of `Spark-connectCluster`. + ( + "spark-connect", + "spark.stackable.tech", + "v1alpha1", + "SparkConnectServer", + ), + // Group is `spark.stackable.tech` instead of `spark-history.stackable.tech`. + // Kind is `SparkHistoryServer` instead of `Spark-historyCluster`. + ( + "spark-history", + "spark.stackable.tech", + "v1alpha1", + "SparkHistoryServer", + ), + ( + "superset", + "superset.stackable.tech", + "v1alpha1", + "SupersetCluster", + ), + ("trino", "trino.stackable.tech", "v1alpha1", "TrinoCluster"), + ( + "zookeeper", + "zookeeper.stackable.tech", + "v1alpha1", + "ZookeeperCluster", + ), ]; pub const OCI_INDEX_PAGE_SIZE: usize = 20; diff --git a/rust/stackable-cockpit/src/engine/kind/mod.rs b/rust/stackable-cockpit/src/engine/kind/mod.rs index eabe318e..b3f86401 100644 --- a/rust/stackable-cockpit/src/engine/kind/mod.rs +++ b/rust/stackable-cockpit/src/engine/kind/mod.rs @@ -141,9 +141,12 @@ impl Cluster { .await .context(CommandFailedToRunSnafu)?; - ensure!(output.status.success(), CommandErroredOutSnafu { - error: String::from_utf8_lossy(&output.stderr) - }); + ensure!( + output.status.success(), + CommandErroredOutSnafu { + error: String::from_utf8_lossy(&output.stderr) + } + ); let output = String::from_utf8_lossy(&output.stdout); Ok(output.lines().any(|name| name == cluster_name)) diff --git a/rust/stackable-cockpit/src/helm.rs b/rust/stackable-cockpit/src/helm.rs index 4cca0bba..baad9ee1 100644 --- a/rust/stackable-cockpit/src/helm.rs +++ b/rust/stackable-cockpit/src/helm.rs @@ -38,6 +38,40 @@ pub struct ChartRepo { pub url: String, } +/// The kind of source a chart repo URL refers to. +/// +/// [Self::Oci] and [Self::Local] don't need special handling, but [Self::Repo] +/// needs to call `helm::add_repo`. +/// +/// Note: We don't yet support local repositories, so an error should be emitted +/// if the source is [Self::Local]. +#[derive(Debug, PartialEq)] +pub enum ChartSourceKind { + /// OCI registry (url starts with `oci://`) + Oci, + + /// Traditional index.yaml-based repository (url starts with `http://` or `https://`) + Repo, + + /// Local filesystem path (not yet supported) + /// + /// This is the fallback if not oci or http(s). + Local, +} + +impl ChartRepo { + /// Determine the kind of chart source based on the URL scheme. + pub fn source_kind(&self) -> ChartSourceKind { + if self.url.starts_with("oci://") { + ChartSourceKind::Oci + } else if self.url.starts_with("http://") || self.url.starts_with("https://") { + ChartSourceKind::Repo + } else { + ChartSourceKind::Local + } + } +} + #[derive(Debug, Snafu)] pub enum Error { #[snafu(display("failed to parse URL"))] @@ -61,6 +95,9 @@ pub enum Error { #[snafu(display("failed to install Helm release"))] InstallRelease { source: InstallReleaseError }, + #[snafu(display("failed to upgrade/install Helm release"))] + UpgradeRelease { source: InstallReleaseError }, + #[snafu(display("failed to uninstall Helm release ({error})"))] UninstallRelease { error: String }, } @@ -248,6 +285,78 @@ pub fn install_release_from_repo_or_registry( }) } +/// Upgrades a Helm release from a repo or registry. +/// +/// This function expects the fully qualified Helm release name. In case of our +/// operators this is: `-operator`. +#[instrument(skip(values_yaml), fields(with_values = values_yaml.is_some(), indicatif.pb_show = true))] +pub fn upgrade_or_install_release_from_repo_or_registry( + release_name: &str, + ChartVersion { + chart_source, + chart_name, + chart_version, + }: ChartVersion, + values_yaml: Option<&str>, + namespace: &str, + suppress_output: bool, +) -> Result { + // Ideally, each Helm invocation would spawn_blocking instead in/around helm_sys, + // but that requires a larger refactoring + block_in_place(|| { + debug!("Install/Upgrade Helm release from repo"); + Span::current() + .pb_set_message(format!("Installing/Upgrading {chart_name} Helm chart").as_str()); + + if check_release_exists(release_name, namespace)? { + let release = get_release(release_name, namespace)?.ok_or(Error::InstallRelease { + source: InstallReleaseError::NoSuchRelease { + name: release_name.to_owned(), + }, + })?; + + let current_version = release.version; + + match chart_version { + Some(chart_version) => { + if chart_version == current_version { + return Ok(InstallReleaseStatus::ReleaseAlreadyInstalledWithVersion { + requested_version: chart_version.to_string(), + release_name: release_name.to_string(), + current_version, + }); + } + } + None => { + return Ok(InstallReleaseStatus::ReleaseAlreadyInstalledUnspecified { + release_name: release_name.to_string(), + current_version, + }); + } + } + } + + let full_chart_name = format!("{chart_source}/{chart_name}"); + let chart_version = chart_version.unwrap_or(HELM_DEFAULT_CHART_VERSION); + + debug!( + release_name, + chart_version, full_chart_name, "Installing Helm release" + ); + + upgrade_release( + release_name, + &full_chart_name, + chart_version, + values_yaml, + namespace, + suppress_output, + )?; + + Ok(InstallReleaseStatus::Installed(release_name.to_string())) + }) +} + /// Installs a Helm release. /// /// This function expects the fully qualified Helm release name. In case of our @@ -281,6 +390,47 @@ fn install_release( Ok(()) } +/// Upgrades a Helm release. +/// If a release with the specified `chart_name` does not already exist, +/// this function installs it instead. +/// +/// This function expects the fully qualified Helm release name. In case of our +/// operators this is: `-operator`. +#[instrument(fields(with_values = values_yaml.is_some()))] +fn upgrade_release( + release_name: &str, + chart_name: &str, + chart_version: &str, + values_yaml: Option<&str>, + namespace: &str, + suppress_output: bool, +) -> Result<(), Error> { + // In Helm 3 the behavior of the `--force` option has changed + // It no longer deletes and re-installs a resource https://github.com/helm/helm/issues/7082#issuecomment-559558318 + // Because of that, conflict errors might appear, which fail the upgrade, even if `helm upgrade --force` is used + // Therefore we uninstall the previous release (if present) and install the new one + uninstall_release(release_name, namespace, suppress_output)?; + + let result = helm_sys::install_helm_release( + release_name, + chart_name, + chart_version, + values_yaml.unwrap_or(""), + namespace, + suppress_output, + ); + + if let Some(error) = helm_sys::to_helm_error(&result) { + error!("Go wrapper function go_install_helm_release encountered an error: {error}"); + + return Err(Error::UpgradeRelease { + source: InstallReleaseError::HelmWrapper { error }, + }); + } + + Ok(()) +} + /// Uninstall a Helm release. /// /// This function expects the fully qualified Helm release name. In case of our @@ -389,3 +539,27 @@ where serde_yaml::from_str(&index_file_content).context(DeserializeYamlSnafu) } + +#[cfg(test)] +mod tests { + use rstest::rstest; + + use super::*; + + #[rstest] + #[case("oci://oci.stackable.tech/sdp-charts", ChartSourceKind::Oci)] + #[case( + "https://repo.stackable.tech/repository/helm-stable", + ChartSourceKind::Repo + )] + #[case("http://example.com/charts", ChartSourceKind::Repo)] + #[case("./charts/my-chart", ChartSourceKind::Local)] + #[case("/absolute/path/to/chart", ChartSourceKind::Local)] + fn source_kind(#[case] url: &str, #[case] expected: ChartSourceKind) { + let repo = ChartRepo { + name: "test".to_owned(), + url: url.to_owned(), + }; + assert_eq!(repo.source_kind(), expected); + } +} diff --git a/rust/stackable-cockpit/src/oci.rs b/rust/stackable-cockpit/src/oci.rs index 5e350bd3..337cc876 100644 --- a/rust/stackable-cockpit/src/oci.rs +++ b/rust/stackable-cockpit/src/oci.rs @@ -128,9 +128,12 @@ pub async fn get_oci_index<'a>() -> Result HELM_REPO_NAME_TEST, HELM_REPO_NAME_DEV, ] { - source_index_files.insert(repo_name, ChartSourceMetadata { - entries: HashMap::new(), - }); + source_index_files.insert( + repo_name, + ChartSourceMetadata { + entries: HashMap::new(), + }, + ); } let base_url = format!("https://{HELM_OCI_BASE}/api/v2.0"); diff --git a/rust/stackable-cockpit/src/platform/cluster/mod.rs b/rust/stackable-cockpit/src/platform/cluster/mod.rs index d7c35687..d98ba2e4 100644 --- a/rust/stackable-cockpit/src/platform/cluster/mod.rs +++ b/rust/stackable-cockpit/src/platform/cluster/mod.rs @@ -1,7 +1,8 @@ -use k8s_openapi::api::core::v1::Node; -use kube::core::ObjectList; use snafu::{ResultExt, Snafu}; -use stackable_operator::{cpu::CpuQuantity, memory::MemoryQuantity}; +use stackable_operator::{ + cpu::CpuQuantity, k8s_openapi::api::core::v1::Node, kube::core::ObjectList, + memory::MemoryQuantity, +}; mod resource_request; diff --git a/rust/stackable-cockpit/src/platform/cluster/resource_request.rs b/rust/stackable-cockpit/src/platform/cluster/resource_request.rs index d3ada92c..fe48c16d 100644 --- a/rust/stackable-cockpit/src/platform/cluster/resource_request.rs +++ b/rust/stackable-cockpit/src/platform/cluster/resource_request.rs @@ -1,9 +1,11 @@ use std::fmt::Display; -use k8s_openapi::apimachinery::pkg::api::resource::Quantity; use serde::{Deserialize, Serialize}; use snafu::{ResultExt, Snafu}; -use stackable_operator::{cpu::CpuQuantity, memory::MemoryQuantity}; +use stackable_operator::{ + cpu::CpuQuantity, k8s_openapi::apimachinery::pkg::api::resource::Quantity, + memory::MemoryQuantity, +}; #[cfg(feature = "openapi")] use utoipa::ToSchema; diff --git a/rust/stackable-cockpit/src/platform/credentials.rs b/rust/stackable-cockpit/src/platform/credentials.rs index 5b96da02..d8211910 100644 --- a/rust/stackable-cockpit/src/platform/credentials.rs +++ b/rust/stackable-cockpit/src/platform/credentials.rs @@ -1,8 +1,8 @@ use std::fmt::Display; -use kube::{ResourceExt, core::DynamicObject}; use serde::Serialize; use snafu::{OptionExt, ResultExt, Snafu}; +use stackable_operator::kube::{ResourceExt, core::DynamicObject}; use crate::utils::k8s::{self, Client}; @@ -11,7 +11,10 @@ pub type Result = std::result::Result; #[derive(Debug, Snafu)] pub enum Error { #[snafu(display("failed to fetch data from Kubernetes API"))] - KubeClientFetch { source: k8s::Error }, + KubeClientFetch { + #[snafu(source(from(k8s::Error, Box::new)))] + source: Box, + }, #[snafu(display("no credentials secret found"))] NoSecret, @@ -35,7 +38,7 @@ impl Display for Credentials { } /// Retrieves the credentials looking up a secret identified by `secret_name` -/// in `secret_namespace`. The function returns [`Ok(None)`] if `username_key` +/// in `secret_namespace`. The function returns `Ok(None)` if `username_key` /// and/or `password_key` are not found or the product does not provide /// any credentials. pub async fn get( diff --git a/rust/stackable-cockpit/src/platform/demo/params.rs b/rust/stackable-cockpit/src/platform/demo/params.rs index 5cb337de..3cadda74 100644 --- a/rust/stackable-cockpit/src/platform/demo/params.rs +++ b/rust/stackable-cockpit/src/platform/demo/params.rs @@ -1,8 +1,15 @@ +use serde_yaml::Mapping; use stackable_operator::kvp::Labels; use crate::platform::operator::ChartSourceType; pub struct DemoInstallParameters { + /// Name of the stack, which is always present, as a demo builds on top of a stack + pub stack_name: String, + + /// Name of the demo, which is always present + pub demo_name: String, + pub operator_namespace: String, pub demo_namespace: String, @@ -13,4 +20,15 @@ pub struct DemoInstallParameters { pub stack_labels: Labels, pub labels: Labels, pub chart_source: ChartSourceType, + pub operator_values: Mapping, +} + +pub struct DemoUninstallParameters { + pub demo_name: String, + + pub operator_namespace: String, + pub demo_namespace: String, + + pub skip_operators: bool, + pub skip_crds: bool, } diff --git a/rust/stackable-cockpit/src/platform/demo/spec.rs b/rust/stackable-cockpit/src/platform/demo/spec.rs index 6c4c5589..e8d7fc72 100644 --- a/rust/stackable-cockpit/src/platform/demo/spec.rs +++ b/rust/stackable-cockpit/src/platform/demo/spec.rs @@ -1,5 +1,6 @@ use serde::{Deserialize, Serialize}; use snafu::{OptionExt, ResultExt, Snafu}; +use stackable_operator::kvp::{Label, LabelError}; use tracing::{Span, debug, info, instrument, warn}; use tracing_indicatif::span_ext::IndicatifSpanExt as _; #[cfg(feature = "openapi")] @@ -9,13 +10,13 @@ use crate::{ common::manifest::ManifestSpec, platform::{ cluster::{ResourceRequests, ResourceRequestsError}, - demo::DemoInstallParameters, + demo::{DemoInstallParameters, DemoUninstallParameters}, manifests::{self, InstallManifestsExt}, release::ReleaseList, stack::{self, StackInstallParameters, StackList}, }, utils::{ - k8s::Client, + k8s::{self, Client}, params::{ IntoParameters, IntoParametersError, Parameter, RawParameter, RawParameterParseError, }, @@ -47,8 +48,21 @@ pub enum Error { #[snafu(display("failed to install stack"))] InstallStack { source: stack::Error }, + /// This error indicates that the release failed to uninstall. + #[snafu(display("failed to uninstall release"))] + UninstallRelease { source: stack::Error }, + #[snafu(display("failed to install stack manifests"))] InstallManifests { source: manifests::Error }, + + #[snafu(display("failed to uninstall Helm manifests"))] + UninstallHelmManifests { source: manifests::Error }, + + #[snafu(display("failed to delete object"))] + DeleteObject { source: k8s::Error }, + + #[snafu(display("failed to build label"))] + BuildLabel { source: LabelError }, } impl InstallManifestsExt for DemoSpec {} @@ -153,14 +167,15 @@ impl DemoSpec { .await?; let stack_install_parameters = StackInstallParameters { + stack_name: self.stack.clone(), + demo_name: Some(install_parameters.demo_name.clone()), operator_namespace: install_parameters.operator_namespace.clone(), stack_namespace: install_parameters.demo_namespace.clone(), parameters: install_parameters.stack_parameters.clone(), labels: install_parameters.stack_labels.clone(), skip_release: install_parameters.skip_release, - stack_name: self.stack.clone(), - demo_name: None, chart_source: install_parameters.chart_source.clone(), + operator_values: install_parameters.operator_values.clone(), }; stack @@ -179,31 +194,128 @@ impl DemoSpec { } #[instrument(skip_all, fields( + demo_name = %uninstall_parameters.demo_name, + demo_namespace = %uninstall_parameters.demo_namespace, stack_name = %self.stack, - operator_namespace = %install_params.operator_namespace, - demo_namespace = %install_params.demo_namespace, + ))] + pub async fn uninstall( + &self, + stack_list: StackList, + release_list: ReleaseList, + uninstall_parameters: DemoUninstallParameters, + client: &Client, + transfer_client: &xfer::Client, + ) -> Result<(), Error> { + // Get the stack spec based on the name defined in the demo spec + let stack = stack_list.get(&self.stack).context(NoSuchStackSnafu { + name: self.stack.clone(), + })?; + + // Uninstall Helm Charts + let parameters = &mut Vec::new() + .into_params(self.parameters.clone()) + .context(ParseParametersSnafu)?; + + // We add the STACK and DEMO parameter, so that demos can use that to render e.g. the demo label + parameters.insert("STACK".to_owned(), self.stack.clone()); + parameters.insert("DEMO".to_owned(), uninstall_parameters.demo_name.clone()); + + Self::uninstall_helm_manifests( + &self.manifests, + parameters, + &uninstall_parameters.demo_namespace.to_owned(), + transfer_client, + ) + .await + .context(UninstallHelmManifestsSnafu)?; + + let stack_parameters = &mut Vec::new() + .into_params(stack.parameters.clone()) + .context(ParseParametersSnafu)?; + + // We add the STACK and DEMO parameter, so that stacks can use that to render e.g. the stack label + stack_parameters.insert("STACK".to_owned(), self.stack.clone()); + stack_parameters.insert("DEMO".to_owned(), uninstall_parameters.demo_name.clone()); + + Self::uninstall_helm_manifests( + &stack.manifests, + stack_parameters, + &uninstall_parameters.demo_namespace.to_owned(), + transfer_client, + ) + .await + .context(UninstallHelmManifestsSnafu)?; + + // Delete demo namespace + client + .delete_namespace(uninstall_parameters.demo_namespace) + .await + .context(DeleteObjectSnafu)?; + + // Delete remaining objects not namespace scoped + client + .delete_all_objects_with_label( + Label::try_from(("stackable.tech/demo", &uninstall_parameters.demo_name)) + .context(BuildLabelSnafu)?, + None, + ) + .await + .context(DeleteObjectSnafu)?; + + // Delete operators and the operator namespace + if !uninstall_parameters.skip_operators { + stack + .uninstall_release(release_list, &uninstall_parameters.operator_namespace) + .await + .context(UninstallReleaseSnafu)?; + + client + .delete_namespace(uninstall_parameters.operator_namespace) + .await + .context(DeleteObjectSnafu)?; + } + + // Delete CRDs + if !uninstall_parameters.skip_crds { + client + .delete_crds_with_group_suffix("stackable.tech") + .await + .context(DeleteObjectSnafu)?; + } + + Ok(()) + } + + #[instrument(skip_all, fields( + stack_name = %self.stack, + operator_namespace = %install_parameters.operator_namespace, + demo_namespace = %install_parameters.demo_namespace, indicatif.pb_show = true ))] async fn prepare_manifests( &self, - install_params: DemoInstallParameters, + install_parameters: DemoInstallParameters, client: &Client, transfer_client: &xfer::Client, ) -> Result<(), Error> { info!("Installing demo manifests"); Span::current().pb_set_message("Installing manifests"); - let params = install_params + let mut parameters = install_parameters .parameters .to_owned() .into_params(&self.parameters) .context(ParseParametersSnafu)?; + // We add the STACK and DEMO parameter, so that demos can use that to render e.g. the demo label + parameters.insert("STACK".to_owned(), install_parameters.stack_name); + parameters.insert("DEMO".to_owned(), install_parameters.demo_name); + Self::install_manifests( &self.manifests, - ¶ms, - &install_params.demo_namespace, - install_params.labels, + ¶meters, + &install_parameters.demo_namespace, + install_parameters.labels, client, transfer_client, ) diff --git a/rust/stackable-cockpit/src/platform/manifests.rs b/rust/stackable-cockpit/src/platform/manifests.rs index d9d23794..36531ded 100644 --- a/rust/stackable-cockpit/src/platform/manifests.rs +++ b/rust/stackable-cockpit/src/platform/manifests.rs @@ -40,7 +40,7 @@ pub enum Error { repo_name: String, }, - /// This error indicates that the Hlm wrapper failed to install the Helm + /// This error indicates that the Helm wrapper failed to install the Helm /// release. #[snafu(display("failed to install Helm release {release_name}"))] InstallHelmRelease { @@ -48,6 +48,18 @@ pub enum Error { source: helm::Error, }, + /// This error indicates that the Helm wrapper failed to uninstall the Helm + /// release. + #[snafu(display("failed to uninstall Helm chart"))] + UninstallHelmRelease { + release_name: String, + source: helm::Error, + }, + + /// This error indicates that the Helm chart source kind is not supported. + #[snafu(display("local Helm chart sources are not yet supported (source: {chart_source:?})"))] + UnsupportedChartSource { chart_source: String }, + /// This error indicates that Helm chart options could not be serialized /// into YAML. #[snafu(display("failed to serialize Helm chart options"))] @@ -80,46 +92,49 @@ pub trait InstallManifestsExt { Span::current().pb_set_length(manifests.len() as u64); let mut parameters = parameters.clone(); - // We add the NAMESPACE parameter, so that stacks/demos can use that to render e.g. the - // fqdn service names [which contain the namespace]. + // We need some additional templating capabilities, e.g. the namespace, so that stacks/demos + // can use that to render e.g. the fqdn service names [which contain the namespace]. parameters.insert("NAMESPACE".to_owned(), namespace.to_owned()); for manifest in manifests { let parameters = parameters.clone(); - let labels = labels.clone(); match manifest { ManifestSpec::HelmChart(helm_file) => { debug!(helm_file, "Installing manifest from Helm chart"); - // Read Helm chart YAML and apply templating - let helm_file = helm_file.into_path_or_url().context(ParsePathOrUrlSnafu { - path_or_url: helm_file.clone(), - })?; - - let helm_chart: helm::Chart = transfer_client - .get(&helm_file, &Template::new(¶meters).then(Yaml::new())) - .await - .context(FileTransferSnafu)?; + let helm_chart = + get_helm_chart(helm_file, transfer_client, ¶meters).await?; info!(helm_chart.name, helm_chart.version, "Installing Helm chart",); - // Assumption: that all manifest helm charts refer to repos not registries - helm::add_repo(&helm_chart.repo.name, &helm_chart.repo.url).context( - AddHelmRepositorySnafu { - repo_name: helm_chart.repo.name.clone(), - }, - )?; + let chart_source = match helm_chart.repo.source_kind() { + helm::ChartSourceKind::Repo => { + helm::add_repo(&helm_chart.repo.name, &helm_chart.repo.url).context( + AddHelmRepositorySnafu { + repo_name: helm_chart.repo.name.clone(), + }, + )?; + &helm_chart.repo.name + } + helm::ChartSourceKind::Oci => &helm_chart.repo.url, + helm::ChartSourceKind::Local => { + return UnsupportedChartSourceSnafu { + chart_source: helm_chart.repo.url.clone(), + } + .fail(); + } + }; // Serialize chart options to string let values_yaml = serde_yaml::to_string(&helm_chart.options) .context(SerializeOptionsSnafu)?; // Install the Helm chart using the Helm wrapper - helm::install_release_from_repo_or_registry( + helm::upgrade_or_install_release_from_repo_or_registry( &helm_chart.release_name, helm::ChartVersion { - chart_source: &helm_chart.repo.name, + chart_source, chart_name: &helm_chart.name, chart_version: Some(&helm_chart.version), }, @@ -159,4 +174,70 @@ pub trait InstallManifestsExt { Ok(()) } + + /// This function only handles uninstalling Helm Charts + /// + /// To delete objects installed through other manifests use [`Client::delete_namespace`] or [`Client::delete_all_objects_with_label`] instead. + #[instrument(skip_all, fields(%namespace, indicatif.pb_show = true))] + #[allow(async_fn_in_trait)] + async fn uninstall_helm_manifests( + manifests: &[ManifestSpec], + parameters: &mut HashMap, + namespace: &str, + transfer_client: &xfer::Client, + ) -> Result<(), Error> { + debug!("Uninstalling Helm manifests"); + Span::current().pb_set_message("Uninstalling Helm charts"); + + // We add the NAMESPACE parameter, so that stacks/demos can use that to render e.g. the + // fqdn service names [which contain the namespace]. + parameters.insert("NAMESPACE".to_owned(), namespace.to_owned()); + + for manifest in manifests { + match manifest { + ManifestSpec::HelmChart(helm_file) => { + debug!(helm_file, "Uninstalling manifest from Helm chart"); + + let helm_chart = get_helm_chart(helm_file, transfer_client, parameters).await?; + + info!( + helm_chart.name, + helm_chart.version, "Uninstalling Helm chart", + ); + + helm::uninstall_release(&helm_chart.release_name, namespace, true).context( + UninstallHelmReleaseSnafu { + release_name: &helm_chart.release_name, + }, + )?; + } + ManifestSpec::PlainYaml(_) => { + // This function only handles uninstalling Helm Charts + } + } + } + + Ok(()) + } +} + +pub async fn get_helm_chart( + helm_file: &str, + transfer_client: &xfer::Client, + parameters: &HashMap, +) -> Result { + // Read Helm chart YAML and apply templating + let helm_file_location = helm_file.into_path_or_url().context(ParsePathOrUrlSnafu { + path_or_url: helm_file, + })?; + + let helmchart = transfer_client + .get( + &helm_file_location, + &Template::new(parameters).then(Yaml::default()), + ) + .await + .context(FileTransferSnafu)?; + + Ok(helmchart) } diff --git a/rust/stackable-cockpit/src/platform/namespace.rs b/rust/stackable-cockpit/src/platform/namespace.rs index 10e2ca01..ed19b366 100644 --- a/rust/stackable-cockpit/src/platform/namespace.rs +++ b/rust/stackable-cockpit/src/platform/namespace.rs @@ -1,11 +1,12 @@ use snafu::Snafu; +use stackable_operator::kube; use crate::utils::k8s::{self, Client}; #[derive(Debug, Snafu)] pub enum Error { #[snafu(display("failed to create Kubernetes client"))] - KubeClientCreate { source: k8s::Error }, + KubeClientCreate { source: Box }, #[snafu(display( "permission denied - try to create the namespace manually or choose an already existing one to which you have access to" @@ -24,9 +25,11 @@ pub async fn create_if_needed(client: &Client, name: String) -> Result<(), Error k8s::Error::KubeClientCreate { source } => match source { kube::Error::Api(err) if err.code == 401 => Error::PermissionDenied, _ => Error::KubeClientCreate { - source: k8s::Error::KubeClientCreate { source }, + source: Box::new(k8s::Error::KubeClientCreate { source }), }, }, - _ => Error::KubeClientCreate { source: err }, + _ => Error::KubeClientCreate { + source: Box::new(err), + }, }) } diff --git a/rust/stackable-cockpit/src/platform/operator/listener_operator.rs b/rust/stackable-cockpit/src/platform/operator/listener_operator.rs new file mode 100644 index 00000000..ae27e2c4 --- /dev/null +++ b/rust/stackable-cockpit/src/platform/operator/listener_operator.rs @@ -0,0 +1,117 @@ +use clap::ValueEnum; +use serde_yaml::Value; +use snafu::ResultExt; +use stackable_operator::{ + k8s_openapi::api::core::v1::Node, + kube::{Api, Client, api::ListParams}, +}; +use tokio::sync::OnceCell; +use tracing::{debug, info, instrument}; + +pub static LISTENER_CLASS_PRESET: OnceCell = OnceCell::const_new(); + +/// Represents the `preset` value in the Listener Operator Helm Chart +#[derive(Copy, Clone, Debug, ValueEnum)] +pub enum ListenerClassPreset { + None, + StableNodes, + EphemeralNodes, +} + +impl ListenerClassPreset { + pub fn as_helm_value(&self) -> Value { + let preset_value = match self { + Self::None => "none", + Self::StableNodes => "stable-nodes", + Self::EphemeralNodes => "ephemeral-nodes", + }; + Value::String(preset_value.to_string()) + } +} + +#[instrument] +pub async fn determine_and_store_listener_class_preset(from_cli: Option<&ListenerClassPreset>) { + if let Some(from_cli) = from_cli { + LISTENER_CLASS_PRESET + .set(*from_cli) + .expect("LISTENER_CLASS_PRESET should be unset"); + return; + } + + let kubernetes_environment = guess_kubernetes_environment().await.unwrap_or_else(|err| { + info!("failed to determine Kubernetes environment, using defaults: {err:#?}"); + KubernetesEnvironment::Unknown + }); + let listener_class_preset = match kubernetes_environment { + // Kind does not support LoadBalancers out of the box, so avoid that + KubernetesEnvironment::Kind => ListenerClassPreset::StableNodes, + // Minikube does support LoadBalancers via "minikube tunnel", but that requires additional setup + // and we assume that users running Minikube with stackablectl want to keep things simple. + KubernetesEnvironment::Minikube => ListenerClassPreset::StableNodes, + // LoadBalancer support in k3s is optional, so let's be better safe than sorry and not use + // them + KubernetesEnvironment::K3s => ListenerClassPreset::StableNodes, + // Weekly node rotations and LoadBalancer support + KubernetesEnvironment::Ionos => ListenerClassPreset::EphemeralNodes, + // Don't pin nodes and assume we have LoadBalancer support + KubernetesEnvironment::Unknown => ListenerClassPreset::EphemeralNodes, + }; + debug!( + preset = ?listener_class_preset, + kubernetes.environment = ?kubernetes_environment, + "Using ListenerClass preset" + ); + + LISTENER_CLASS_PRESET + .set(listener_class_preset) + .expect("LISTENER_CLASS_PRESET should be unset"); +} + +#[derive(Debug)] +enum KubernetesEnvironment { + Kind, + K3s, + Ionos, + Minikube, + Unknown, +} + +/// Tries to guess what Kubernetes environment stackablectl is connecting to. +/// +/// Returns an error in case anything goes wrong. This could e.g. be the case in case no +/// Kubernetes context is configured, stackablectl is missing RBAC permission to retrieve nodes or +/// simply a network error. +#[instrument] +async fn guess_kubernetes_environment() -> Result { + let client = Client::try_default() + .await + .whatever_context("failed to construct Kubernetes client")?; + let node_api: Api = Api::all(client); + let nodes = node_api + .list(&ListParams::default()) + .await + .whatever_context("failed to list Kubernetes nodes")?; + + for node in nodes { + if let Some(spec) = node.spec { + if let Some(provider_id) = spec.provider_id { + if provider_id.starts_with("kind://") { + return Ok(KubernetesEnvironment::Kind); + } else if provider_id.starts_with("k3s://") { + return Ok(KubernetesEnvironment::K3s); + } else if provider_id.starts_with("ionos://") { + return Ok(KubernetesEnvironment::Ionos); + } + } + } + + // Check labels for minikube (since minikube doesn't set providerID) + if let Some(labels) = node.metadata.labels.as_ref() { + if labels.contains_key("minikube.k8s.io/version") { + return Ok(KubernetesEnvironment::Minikube); + } + } + } + + Ok(KubernetesEnvironment::Unknown) +} diff --git a/rust/stackable-cockpit/src/platform/operator/mod.rs b/rust/stackable-cockpit/src/platform/operator/mod.rs index 55d4f692..ec377a6f 100644 --- a/rust/stackable-cockpit/src/platform/operator/mod.rs +++ b/rust/stackable-cockpit/src/platform/operator/mod.rs @@ -1,7 +1,9 @@ use std::{fmt::Display, str::FromStr}; +use listener_operator::LISTENER_CLASS_PRESET; use semver::Version; use serde::Serialize; +use serde_yaml::{Mapping, Value}; use snafu::{ResultExt, Snafu, ensure}; use tracing::{Span, info, instrument}; use tracing_indicatif::{indicatif_println, span_ext::IndicatifSpanExt}; @@ -14,6 +16,8 @@ use crate::{ utils::operator_chart_name, }; +pub mod listener_operator; + pub const VALID_OPERATORS: &[&str] = &[ "airflow", "commons", @@ -26,6 +30,7 @@ pub const VALID_OPERATORS: &[&str] = &[ "listener", "nifi", "opa", + "opensearch", "secret", "spark-k8s", "superset", @@ -47,7 +52,11 @@ pub enum SpecParseError { #[snafu(display("empty operator spec input"))] EmptyInput, - #[snafu(display("invalid operator name {name:?}"))] + #[snafu(display( + "invalid operator name {name:?}. \ + It could be the case that this version of stackablectl is too old to know about this particular operator, \ + in which case you should update it." + ))] InvalidName { name: String }, } @@ -92,9 +101,10 @@ impl FromStr for OperatorSpec { ensure!(len <= 2, InvalidEqualSignCountSnafu); // Check if the provided operator name is in the list of valid operators - ensure!(VALID_OPERATORS.contains(&parts[0]), InvalidNameSnafu { - name: parts[0] - }); + ensure!( + VALID_OPERATORS.contains(&parts[0]), + InvalidNameSnafu { name: parts[0] } + ); // If there is only one part, the input didn't include // the optional version identifier @@ -191,6 +201,7 @@ impl OperatorSpec { &self, namespace: &str, chart_source: &ChartSourceType, + values: &Mapping, ) -> Result<(), helm::Error> { info!(operator = %self, "Installing operator"); Span::current() @@ -206,6 +217,24 @@ impl OperatorSpec { ChartSourceType::Repo => self.helm_repo_name(), }; + let mut helm_values = values.clone(); + if self.name == "listener" { + let preset = LISTENER_CLASS_PRESET + .get() + .expect("LISTENER_CLASS_PRESET must have been set") + .as_helm_value(); + helm_values.insert(Value::String("preset".to_string()), preset); + } + + let helm_values_yaml = if helm_values.is_empty() { + None + } else { + Some( + serde_yaml::to_string(&helm_values) + .expect("serializing a small YAML Mapping back to a YAML string can't fail"), + ) + }; + // Install using Helm helm::install_release_from_repo_or_registry( &helm_name, @@ -214,7 +243,7 @@ impl OperatorSpec { chart_name: &helm_name, chart_source: &chart_source, }, - None, + helm_values_yaml.as_deref(), namespace, true, )?; diff --git a/rust/stackable-cockpit/src/platform/release/spec.rs b/rust/stackable-cockpit/src/platform/release/spec.rs index 13f589a9..c73887d9 100644 --- a/rust/stackable-cockpit/src/platform/release/spec.rs +++ b/rust/stackable-cockpit/src/platform/release/spec.rs @@ -1,9 +1,11 @@ use futures::{StreamExt as _, TryStreamExt}; use indexmap::IndexMap; +use reqwest::StatusCode; use serde::{Deserialize, Serialize}; +use serde_yaml::Mapping; use snafu::{ResultExt, Snafu}; use tokio::task::JoinError; -use tracing::{Instrument, Span, info, instrument}; +use tracing::{Instrument, Span, debug, info, instrument}; use tracing_indicatif::span_ext::IndicatifSpanExt as _; #[cfg(feature = "openapi")] use utoipa::ToSchema; @@ -17,6 +19,7 @@ use crate::{ utils::{ k8s::{self, Client}, path::{IntoPathOrUrl as _, PathOrUrlParseError}, + yaml::values_for_operator, }, xfer::{self, processor::Text}, }; @@ -49,7 +52,10 @@ pub enum Error { BackgroundTask { source: JoinError }, #[snafu(display("failed to deploy manifests using the kube client"))] - DeployManifest { source: k8s::Error }, + DeployManifest { + #[snafu(source(from(k8s::Error, Box::new)))] + source: Box, + }, } #[derive(Clone, Debug, Deserialize, Serialize)] @@ -81,6 +87,7 @@ impl ReleaseSpec { exclude_products: &[String], namespace: &str, chart_source: &ChartSourceType, + operator_values: &Mapping, ) -> Result<()> { info!("Installing release"); Span::current().pb_set_style(&PROGRESS_BAR_STYLE); @@ -104,6 +111,7 @@ impl ReleaseSpec { let namespace = namespace.clone(); let chart_source = chart_source.clone(); + let operator_helm_values = values_for_operator(operator_values, &product_name); // Helm installs currently `block_in_place`, so we need to spawn each job onto a separate task to // get useful parallelism. tokio::spawn( @@ -118,7 +126,7 @@ impl ReleaseSpec { // Install operator operator - .install(&namespace, &chart_source) + .install(&namespace, &chart_source, &operator_helm_values) .context(HelmInstallSnafu)?; info!("Installed {product_name}-operator"); @@ -178,18 +186,38 @@ impl ReleaseSpec { } }; - let request_url = &format!( + let request_url_string = &format!( "https://raw.githubusercontent.com/stackabletech/{product_name}-operator/{release_branch}/deploy/helm/{product_name}-operator/crds/crds.yaml" ); - let request_url = request_url.into_path_or_url().context(ParsePathOrUrlSnafu { - path_or_url: request_url.clone(), + let request_url = request_url_string.into_path_or_url().context(ParsePathOrUrlSnafu { + path_or_url: request_url_string, })?; // Get CRD manifests from request_url - let crd_manifests: String = transfer_client + let crd_manifests = transfer_client .get(&request_url, &Text) - .await - .context(FileTransferSnafu)?; + .await; + let crd_manifests = match crd_manifests { + Ok(crd_manifests) => crd_manifests, + Err(crate::xfer::Error::FetchRemoteContent{source: reqwest_error}) + if reqwest_error.status() == Some(StatusCode::NOT_FOUND) => { + // Ignore 404, as CRD versioning is rolled out to operators. + // Starting with secret-operator 25.11.0, the CRD is maintained by the operator, + // making this entire functionality obsolete. + // As only some of the operators are migrated yet, some operator crds.yaml's + // return a 404, others don't. + debug!( + product = product_name, + // https://opentelemetry.io/docs/specs/semconv/http/http-spans/#http-client-span + url.full = request_url_string, + "Skipped updating CRD, as it doesn't exist in the upstream GitHub repo because the operator most likely uses CRD versioning" + ); + return Ok(()); + }, + Err(err) => { + return Err(Error::FileTransfer { source: err }); + }, + }; // Upgrade CRDs k8s_client diff --git a/rust/stackable-cockpit/src/platform/service.rs b/rust/stackable-cockpit/src/platform/service.rs index 73ff576c..e0544fb2 100644 --- a/rust/stackable-cockpit/src/platform/service.rs +++ b/rust/stackable-cockpit/src/platform/service.rs @@ -8,9 +8,11 @@ use std::collections::HashMap; use indexmap::IndexMap; -use k8s_openapi::api::core::v1::{Service, ServiceSpec}; -use kube::{ResourceExt, api::ListParams}; use snafu::{OptionExt, ResultExt, Snafu}; +use stackable_operator::{ + k8s_openapi::api::core::v1::{Service, ServiceSpec}, + kube::{self, ResourceExt, api::ListParams}, +}; use tracing::{debug, warn}; use crate::utils::k8s::{self, Client, ListParamsExt}; @@ -18,7 +20,10 @@ use crate::utils::k8s::{self, Client, ListParamsExt}; #[derive(Debug, Snafu)] pub enum Error { #[snafu(display("failed to fetch data from Kubernetes API"))] - KubeClientFetch { source: k8s::Error }, + KubeClientFetch { + #[snafu(source(from(k8s::Error, Box::new)))] + source: Box, + }, #[snafu(display("missing namespace for service {service:?}"))] MissingServiceNamespace { service: String }, diff --git a/rust/stackable-cockpit/src/platform/stack/params.rs b/rust/stackable-cockpit/src/platform/stack/params.rs index 39eb12ed..5e89ef34 100644 --- a/rust/stackable-cockpit/src/platform/stack/params.rs +++ b/rust/stackable-cockpit/src/platform/stack/params.rs @@ -1,12 +1,17 @@ +use serde_yaml::Mapping; use stackable_operator::kvp::Labels; use crate::platform::operator::ChartSourceType; #[derive(Debug)] pub struct StackInstallParameters { - pub demo_name: Option, + /// Name of the stack, which is always present pub stack_name: String, + /// Optional name of the demo, which is only present in case this stack is installed as part of + /// a demo. This is unset in case a stack is installed directly. + pub demo_name: Option, + pub operator_namespace: String, pub stack_namespace: String, @@ -14,4 +19,19 @@ pub struct StackInstallParameters { pub skip_release: bool, pub labels: Labels, pub chart_source: ChartSourceType, + pub operator_values: Mapping, +} + +pub struct StackUninstallParameters { + pub stack_name: String, + + /// Optional name of the demo, which is only present in case this stack is uninstalled as part of + /// a demo. This is unset in case a stack is uninstalled directly. + pub demo_name: Option, + + pub operator_namespace: String, + pub stack_namespace: String, + + pub skip_operators: bool, + pub skip_crds: bool, } diff --git a/rust/stackable-cockpit/src/platform/stack/spec.rs b/rust/stackable-cockpit/src/platform/stack/spec.rs index c5fd2939..e70116a7 100644 --- a/rust/stackable-cockpit/src/platform/stack/spec.rs +++ b/rust/stackable-cockpit/src/platform/stack/spec.rs @@ -1,5 +1,7 @@ use serde::{Deserialize, Serialize}; +use serde_yaml::Mapping; use snafu::{OptionExt, ResultExt, Snafu}; +use stackable_operator::kvp::{Label, LabelError}; use tracing::{Span, debug, info, instrument, log::warn}; use tracing_indicatif::span_ext::IndicatifSpanExt as _; #[cfg(feature = "openapi")] @@ -13,10 +15,10 @@ use crate::{ namespace, operator::ChartSourceType, release, - stack::StackInstallParameters, + stack::{StackInstallParameters, StackUninstallParameters}, }, utils::{ - k8s::Client, + k8s::{self, Client}, params::{ IntoParameters, IntoParametersError, Parameter, RawParameter, RawParameterParseError, }, @@ -44,6 +46,10 @@ pub enum Error { #[snafu(display("failed to install release"))] InstallRelease { source: release::Error }, + /// This error indicates that the release failed to uninstall. + #[snafu(display("failed to uninstall release"))] + UninstallRelease { source: release::Error }, + #[snafu(display("stack resource requests error"), context(false))] StackResourceRequests { source: ResourceRequestsError }, @@ -63,6 +69,15 @@ pub enum Error { #[snafu(display("failed to install stack manifests"))] InstallManifests { source: manifests::Error }, + + #[snafu(display("failed to uninstall Helm manifests"))] + UninstallHelmManifests { source: manifests::Error }, + + #[snafu(display("failed to delete object"))] + DeleteObject { source: k8s::Error }, + + #[snafu(display("failed to build label"))] + BuildLabel { source: LabelError }, } /// This struct describes a stack with the v2 spec @@ -70,7 +85,7 @@ pub enum Error { #[serde(rename_all = "camelCase")] #[cfg_attr(feature = "openapi", derive(ToSchema))] pub struct StackSpec { - /// A short description of the demo + /// A short description of the stack pub description: String, /// The release used by the stack, e.g. 23.4 @@ -149,10 +164,7 @@ impl StackSpec { // TODO (Techassi): Can we get rid of the release list and just use the release spec instead #[instrument(skip_all, fields( stack_name = %install_parameters.stack_name, - // NOTE (@NickLarsenNZ): Option doesn't impl Display, so we need to call - // display for the inner type if it exists. Otherwise we gte the Debug - // impl for the whole Option. - demo_name = install_parameters.demo_name.as_ref().map(tracing::field::display), + stack_namespace = %install_parameters.stack_namespace, ))] pub async fn install( &self, @@ -176,8 +188,8 @@ impl StackSpec { self.install_release( release_list, &install_parameters.operator_namespace, - &install_parameters.stack_namespace, &install_parameters.chart_source, + &install_parameters.operator_values, ) .await?; } @@ -195,13 +207,82 @@ impl StackSpec { .await } + #[instrument(skip_all, fields( + stack_name = %uninstall_parameters.stack_name, + stack_namespace = %uninstall_parameters.stack_namespace, + ))] + pub async fn uninstall( + &self, + release_list: release::ReleaseList, + uninstall_parameters: StackUninstallParameters, + client: &Client, + transfer_client: &xfer::Client, + ) -> Result<(), Error> { + // Uninstall Helm Charts + let parameters = &mut Vec::new() + .into_params(self.parameters.clone()) + .context(ParseParametersSnafu)?; + + // We add the STACK and optionally DEMO parameter, so that stacks can use that to render e.g. the stack label + parameters.insert("STACK".to_owned(), uninstall_parameters.stack_name.clone()); + if let Some(demo_name) = uninstall_parameters.demo_name { + parameters.insert("DEMO".to_owned(), demo_name); + } + + Self::uninstall_helm_manifests( + &self.manifests, + parameters, + &uninstall_parameters.stack_namespace.to_owned(), + transfer_client, + ) + .await + .context(UninstallHelmManifestsSnafu)?; + + // Delete stack namespace + client + .delete_namespace(uninstall_parameters.stack_namespace) + .await + .context(DeleteObjectSnafu)?; + + // Delete remaining objects not namespace scoped + client + .delete_all_objects_with_label( + Label::try_from(("stackable.tech/stack", &uninstall_parameters.stack_name)) + .context(BuildLabelSnafu)?, + None, + ) + .await + .context(DeleteObjectSnafu)?; + + // Delete operators and the operator namespace + if !uninstall_parameters.skip_operators { + self.uninstall_release(release_list, &uninstall_parameters.operator_namespace) + .await?; + + client + .delete_namespace(uninstall_parameters.operator_namespace) + .await + .context(DeleteObjectSnafu)?; + } + + // Delete CRDs + if !uninstall_parameters.skip_crds { + client + .delete_crds_with_group_suffix("stackable.tech") + .await + .context(DeleteObjectSnafu)?; + } + + Ok(()) + } + #[instrument(skip_all, fields(release = %self.release, %operator_namespace, indicatif.pb_show = true))] pub async fn install_release( &self, release_list: release::ReleaseList, operator_namespace: &str, - _namespace: &str, // TODO (@NickLarsenNZ): remove this field chart_source: &ChartSourceType, + operator_values: &Mapping, ) -> Result<(), Error> { info!(self.release, "Trying to install release"); Span::current().pb_set_message("Installing operators"); @@ -215,32 +296,66 @@ impl StackSpec { // Install the release release - .install(&self.operators, &[], operator_namespace, chart_source) + .install( + &self.operators, + &[], + operator_namespace, + chart_source, + operator_values, + ) .await .context(InstallReleaseSnafu) } + #[instrument(skip_all, fields(release = %self.release, %operator_namespace, indicatif.pb_show = true))] + pub async fn uninstall_release( + &self, + release_list: release::ReleaseList, + operator_namespace: &str, + ) -> Result<(), Error> { + info!(self.release, "Trying to uninstall release"); + Span::current().pb_set_message("Uninstalling operators"); + + // Get the release by name + let release = release_list + .get(&self.release) + .context(NoSuchReleaseSnafu { + name: self.release.clone(), + })?; + + // Uninstall the release + release + .uninstall(&self.operators, &[], operator_namespace) + .context(UninstallReleaseSnafu) + } + #[instrument(skip_all, fields(indicatif.pb_show = true))] pub async fn prepare_manifests( &self, - install_params: StackInstallParameters, + install_parameters: StackInstallParameters, client: &Client, transfer_client: &xfer::Client, ) -> Result<(), Error> { info!("Installing stack manifests"); Span::current().pb_set_message("Installing manifests"); - let parameters = install_params + let mut parameters = install_parameters .parameters .to_owned() .into_params(&self.parameters) .context(ParseParametersSnafu)?; + // We add the STACK and optionally DEMO parameter, so that stacks can use that to render e.g. the stack label + parameters.insert("STACK".to_owned(), install_parameters.stack_name); + if let Some(demo_name) = install_parameters.demo_name { + parameters.insert("DEMO".to_owned(), demo_name); + } + Self::install_manifests( &self.manifests, ¶meters, - &install_params.stack_namespace, - install_params.labels, + &install_parameters.stack_namespace, + install_parameters.labels, client, transfer_client, ) diff --git a/rust/stackable-cockpit/src/platform/stacklet/grafana.rs b/rust/stackable-cockpit/src/platform/stacklet/grafana.rs index 3347276f..70998d93 100644 --- a/rust/stackable-cockpit/src/platform/stacklet/grafana.rs +++ b/rust/stackable-cockpit/src/platform/stacklet/grafana.rs @@ -1,5 +1,5 @@ -use kube::{ResourceExt, api::ListParams}; use snafu::ResultExt; +use stackable_operator::kube::{ResourceExt, api::ListParams}; use crate::{ platform::{ diff --git a/rust/stackable-cockpit/src/platform/stacklet/minio.rs b/rust/stackable-cockpit/src/platform/stacklet/minio.rs index bfa7dab1..1f12afeb 100644 --- a/rust/stackable-cockpit/src/platform/stacklet/minio.rs +++ b/rust/stackable-cockpit/src/platform/stacklet/minio.rs @@ -1,5 +1,5 @@ -use kube::{ResourceExt, api::ListParams}; use snafu::ResultExt; +use stackable_operator::kube::{ResourceExt, api::ListParams}; use crate::{ platform::{ diff --git a/rust/stackable-cockpit/src/platform/stacklet/mod.rs b/rust/stackable-cockpit/src/platform/stacklet/mod.rs index 7c4cd449..58858125 100644 --- a/rust/stackable-cockpit/src/platform/stacklet/mod.rs +++ b/rust/stackable-cockpit/src/platform/stacklet/mod.rs @@ -1,19 +1,18 @@ use indexmap::IndexMap; -use kube::{ResourceExt, core::GroupVersionKind}; use serde::Serialize; -use snafu::{ResultExt, Snafu}; -use stackable_operator::status::condition::ClusterCondition; +use snafu::{OptionExt, ResultExt, Snafu}; +use stackable_operator::{ + kube::{ResourceExt, core::GroupVersionKind}, + status::condition::ClusterCondition, +}; use tracing::info; #[cfg(feature = "openapi")] use utoipa::ToSchema; use crate::{ - constants::PRODUCT_NAMES, + constants::PRODUCTS, platform::{credentials, service}, - utils::{ - k8s::{self, Client, ConditionsExt}, - string::Casing, - }, + utils::k8s::{self, Client, ConditionsExt}, }; mod grafana; @@ -45,10 +44,16 @@ pub struct Stacklet { #[derive(Debug, Snafu)] pub enum Error { #[snafu(display("failed to create Kubernetes client"))] - KubeClientCreate { source: k8s::Error }, + KubeClientCreate { + #[snafu(source(from(k8s::Error, Box::new)))] + source: Box, + }, #[snafu(display("failed to fetch data from the Kubernetes API"))] - KubeClientFetch { source: k8s::Error }, + KubeClientFetch { + #[snafu(source(from(k8s::Error, Box::new)))] + source: Box, + }, #[snafu(display("no namespace set for custom resource {crd_name:?}"))] CustomCrdNamespace { crd_name: String }, @@ -58,6 +63,9 @@ pub enum Error { #[snafu(display("failed to receive service information"))] ServiceFetch { source: service::Error }, + + #[snafu(display("product name {product_name:?} not found"))] + GetProduct { product_name: String }, } /// Lists all installed stacklets. If `namespace` is [`None`], stacklets from ALL @@ -83,7 +91,7 @@ pub async fn get_credentials_for_product( object_name: &str, product_name: &str, ) -> Result, Error> { - let product_gvk = gvk_from_product_name(product_name); + let product_gvk = gvk_from_product_name(product_name)?; let product_cluster = match client .get_namespaced_object(namespace, object_name, &product_gvk) .await @@ -113,10 +121,14 @@ async fn list_stackable_stacklets( client: &Client, namespace: Option<&str>, ) -> Result, Error> { - let product_list = build_products_gvk_list(PRODUCT_NAMES); let mut stacklets = Vec::new(); - for (product_name, product_gvk) in product_list { + for (product_name, group, version, kind) in PRODUCTS { + let product_gvk = GroupVersionKind { + group: group.to_string(), + version: version.to_string(), + kind: kind.to_string(), + }; let objects = match client .list_objects(&product_gvk, namespace) .await @@ -164,42 +176,15 @@ async fn list_stackable_stacklets( Ok(stacklets) } -fn build_products_gvk_list<'a>(product_names: &[&'a str]) -> IndexMap<&'a str, GroupVersionKind> { - let mut map = IndexMap::new(); - - for product_name in product_names { - // Note(techassi): Why? Just why? Can we please make this consistent? - // Note(sbernauer): I think it's legit that SparkHistoryServer and SparkConnectServer are in - // the api group spark.stackable.tech. All of this will probably be rewritten any as soon as - // we have versions different than v1alpha1. - if *product_name == "spark-history" { - map.insert(*product_name, GroupVersionKind { - group: "spark.stackable.tech".into(), - version: "v1alpha1".into(), - kind: "SparkHistoryServer".into(), - }); - } else if *product_name == "spark-connect" { - map.insert(*product_name, GroupVersionKind { - group: "spark.stackable.tech".into(), - version: "v1alpha1".into(), - kind: "SparkConnectServer".into(), - }); - } else { - map.insert(*product_name, gvk_from_product_name(product_name)); - } - } - - map -} - -// FIXME: Support SparkApplication and SparkConnectServer -fn gvk_from_product_name(product_name: &str) -> GroupVersionKind { - GroupVersionKind { - group: format!("{product_name}.stackable.tech"), - version: "v1alpha1".into(), - kind: format!( - "{product_name}Cluster", - product_name = product_name.capitalize() - ), - } +fn gvk_from_product_name(product_name: &str) -> Result { + let (_, group, version, kind) = PRODUCTS + .iter() + .find(|(other_product_name, _, _, _)| product_name == *other_product_name) + .context(GetProductSnafu { product_name })?; + + Ok(GroupVersionKind { + group: group.to_string(), + version: version.to_string(), + kind: kind.to_string(), + }) } diff --git a/rust/stackable-cockpit/src/platform/stacklet/opensearch.rs b/rust/stackable-cockpit/src/platform/stacklet/opensearch.rs index 32a92e04..b060fbdc 100644 --- a/rust/stackable-cockpit/src/platform/stacklet/opensearch.rs +++ b/rust/stackable-cockpit/src/platform/stacklet/opensearch.rs @@ -1,5 +1,5 @@ -use kube::{ResourceExt, api::ListParams}; use snafu::ResultExt; +use stackable_operator::kube::{ResourceExt, api::ListParams}; use crate::{ platform::{ diff --git a/rust/stackable-cockpit/src/platform/stacklet/prometheus.rs b/rust/stackable-cockpit/src/platform/stacklet/prometheus.rs index be8f36f4..fa377cf1 100644 --- a/rust/stackable-cockpit/src/platform/stacklet/prometheus.rs +++ b/rust/stackable-cockpit/src/platform/stacklet/prometheus.rs @@ -1,5 +1,5 @@ -use kube::{ResourceExt, api::ListParams}; use snafu::ResultExt; +use stackable_operator::kube::{ResourceExt, api::ListParams}; use crate::{ platform::{ diff --git a/rust/stackable-cockpit/src/utils/k8s/byte_string.rs b/rust/stackable-cockpit/src/utils/k8s/byte_string.rs index f7d77d01..94eba65d 100644 --- a/rust/stackable-cockpit/src/utils/k8s/byte_string.rs +++ b/rust/stackable-cockpit/src/utils/k8s/byte_string.rs @@ -1,6 +1,6 @@ use std::{error::Error, fmt::Display, string::FromUtf8Error}; -use k8s_openapi::ByteString; +use stackable_operator::k8s_openapi::ByteString; /// The [`ByteStringExt`] enables [`ByteString`] to be converted to a [`String`]. pub trait ByteStringExt { diff --git a/rust/stackable-cockpit/src/utils/k8s/client.rs b/rust/stackable-cockpit/src/utils/k8s/client.rs index e678b71b..afc0b085 100644 --- a/rust/stackable-cockpit/src/utils/k8s/client.rs +++ b/rust/stackable-cockpit/src/utils/k8s/client.rs @@ -1,21 +1,28 @@ -use std::{collections::BTreeMap, string::FromUtf8Error}; +use std::{collections::BTreeMap, ops::Deref, string::FromUtf8Error}; -use k8s_openapi::api::{ - apps::v1::{Deployment, StatefulSet}, - core::v1::{Endpoints, Namespace, Node, Secret, Service}, -}; -use kube::{ - Api, Discovery, ResourceExt, - api::{ListParams, Patch, PatchParams, PostParams}, - core::{DynamicObject, GroupVersionKind, ObjectList, ObjectMeta, TypeMeta}, - discovery::{ApiCapabilities, ApiResource, Scope}, -}; use serde::Deserialize; use snafu::{OptionExt, ResultExt, Snafu}; -use stackable_operator::{commons::listener::Listener, kvp::Labels}; +use stackable_operator::{ + crd::listener::v1alpha1::Listener, + k8s_openapi::{ + Resource, + api::{ + apps::v1::{Deployment, StatefulSet}, + core::v1::{Endpoints, Namespace, Node, Secret, Service}, + }, + apiextensions_apiserver::pkg::apis::apiextensions::v1::CustomResourceDefinition, + }, + kube::{ + self, Api, Discovery, ResourceExt, + api::{DeleteParams, ListParams, Patch, PatchParams, PostParams}, + core::{DynamicObject, GroupVersionKind, ObjectList, ObjectMeta, TypeMeta}, + discovery::{self, ApiCapabilities, ApiResource, Scope}, + }, + kvp::{Label, Labels}, +}; use tokio::sync::RwLock; use tracing::{Span, info, instrument}; -use tracing_indicatif::span_ext::IndicatifSpanExt as _; +use tracing_indicatif::{indicatif_eprintln, span_ext::IndicatifSpanExt as _}; #[cfg(doc)] use crate::utils::k8s::ListParamsExt; @@ -44,6 +51,11 @@ pub enum Error { gvk: GroupVersionKind, }, + #[snafu(display("failed to delete object"))] + KubeRuntimeDelete { + source: kube::runtime::wait::delete::Error, + }, + #[snafu(display("failed to deserialize YAML data"))] DeserializeYaml { source: serde_yaml::Error }, @@ -51,7 +63,7 @@ pub enum Error { GVKDiscoveryRun { source: kube::error::Error }, #[snafu(display("failed to deploy manifest because type of object {object:?} is not set"))] - ObjectType { object: DynamicObject }, + ObjectType { object: Box }, // Using output close to Display for ObjectRef https://docs.rs/kube-runtime/0.99.0/src/kube_runtime/reflector/object_ref.rs.html#292-296 #[snafu(display("failed to resolve GVK: {kind}.{version}.{group}", @@ -144,13 +156,48 @@ impl Client { } }; - api.patch( - &object.name_any(), - &PatchParams::apply("stackablectl"), - &Patch::Apply(object), - ) - .await - .context(KubeClientPatchSnafu)?; + if let Some(existing_object) = api + .get_opt(&object.name_any()) + .await + .context(KubeClientFetchSnafu)? + { + object.metadata.resource_version = existing_object.resource_version(); + + api + .patch( + &object.name_any(), + &PatchParams::apply("stackablectl"), + &Patch::Merge(object.clone()), + ) + .await + .or_else(|e| { + // If re-applying a Job fails due to immutability, print out the failed manifests instead of erroring out, + // so the user can decide if the existing Job needs a deletion and recreation + match (resource.kind.as_ref(), e) { + // Errors for immutability in Kubernetes do not return meaningful `code`, `status`, or `reason` to filter on + // Currently we have to check the `message` for the actual error we are looking for + ("Job", kube::Error::Api(e)) if e.message.contains("field is immutable") => { + indicatif_eprintln!( + "Deploying {kind}/{object_name} manifest failed due to immutability", + kind = resource.kind, + object_name = object.name_any().clone() + ); + Ok(object) + } + (_, e) => { + Err(e).context(KubeClientPatchSnafu) + } + } + })?; + } else { + api.patch( + &object.name_any(), + &PatchParams::apply("stackablectl"), + &Patch::Apply(object.clone()), + ) + .await + .context(KubeClientPatchSnafu)?; + } } Ok(()) @@ -199,8 +246,33 @@ impl Client { Ok(()) } + /// Deletes CRDs for the given group suffix + pub async fn delete_crds_with_group_suffix(&self, group_suffix: &str) -> Result<()> { + let api_client = Api::::all(self.client.clone()); + + for crd in api_client + .list(&ListParams::default()) + .await + .context(KubeClientFetchSnafu)? + { + if crd.spec.group.ends_with(group_suffix) { + if let Some(name) = crd.metadata.name { + kube::runtime::wait::delete::delete_and_finalize( + api_client.clone(), + &name, + &DeleteParams::default(), + ) + .await + .context(KubeRuntimeDeleteSnafu)?; + } + } + } + + Ok(()) + } + /// Lists objects by looking up a GVK via the discovery. It returns an - /// optional list of dynamic objects. The method returns [`Ok(None)`] + /// optional list of dynamic objects. The method returns `Ok(None)` /// if the client was unable to resolve the GVK. An error is returned /// when the client failed to list the objects. pub async fn list_objects( @@ -249,6 +321,89 @@ impl Client { )) } + /// Deletes all objects with a given label in the provided namespace. + /// If no namespace is provided, deletes all clusterwide objects with the given label. + pub async fn delete_all_objects_with_label( + &self, + label: Label, + namespace: Option<&str>, + ) -> Result<(), Error> { + let api_resources = self + .get_api_resources() + .await + .into_iter() + .filter(|(_, capability)| { + let listing_supported = capability.supports_operation(discovery::verbs::LIST); + + let capability_scope_matches = match namespace { + Some(_) => capability.scope == kube::discovery::Scope::Namespaced, + None => capability.scope == kube::discovery::Scope::Cluster, + }; + + listing_supported && capability_scope_matches + }); + + for (api_resource, _) in api_resources { + let objects = self + .list_objects( + &GroupVersionKind { + group: api_resource.group.clone(), + version: api_resource.version.clone(), + kind: api_resource.kind.clone(), + }, + namespace, + ) + .await?; + + let Some(object_list) = objects else { + continue; + }; + + for object in object_list { + if let Some(value) = object.labels().get(label.key().deref()) { + if value.eq(label.value().deref()) { + self.delete_object( + &object.metadata.name.unwrap(), + &api_resource, + object.metadata.namespace.as_deref(), + ) + .await?; + } + } + } + } + + Ok(()) + } + + #[instrument(skip_all, fields(indicatif.pb_show = true))] + pub async fn delete_object( + &self, + object_name: &str, + api_resource: &ApiResource, + namespace: Option<&str>, + ) -> Result<(), Error> { + Span::current().pb_set_message(&format!( + "Deleting {kind} {object_name}", + kind = api_resource.kind + )); + + let object_api = match namespace { + Some(namespace) => { + Api::::namespaced_with(self.client.clone(), namespace, api_resource) + } + None => Api::::all_with(self.client.clone(), api_resource), + }; + + kube::runtime::wait::delete::delete_and_finalize( + object_api, + object_name, + &DeleteParams::foreground(), + ) + .await + .context(KubeRuntimeDeleteSnafu) + } + /// Lists [`Service`]s by matching labels. The Services can be matched by /// the product labels. [`ListParamsExt`] provides a utility function to /// create [`ListParams`] based on a product name and optional instance @@ -295,7 +450,7 @@ impl Client { /// Retrieves user credentials consisting of username and password from a /// secret identified by `secret_name` inside the `secret_namespace`. If - /// either one of the values is missing, [`Ok(None)`] is returned. An error + /// either one of the values is missing, `Ok(None)` is returned. An error /// is returned if the client failed to get the secret. pub async fn get_credentials_from_secret( &self, @@ -405,19 +560,40 @@ impl Client { pub async fn create_namespace(&self, name: String) -> Result<()> { let namespace_api: Api = Api::all(self.client.clone()); namespace_api - .create(&PostParams::default(), &Namespace { - metadata: ObjectMeta { - name: Some(name), + .create( + &PostParams::default(), + &Namespace { + metadata: ObjectMeta { + name: Some(name), + ..Default::default() + }, ..Default::default() }, - ..Default::default() - }) + ) .await .context(KubeClientPatchSnafu)?; Ok(()) } + /// Deletes a [`Namespace`] with `name` in the cluster. + #[instrument(skip_all, fields(indicatif.pb_show = true))] + pub async fn delete_namespace(&self, name: String) -> Result<()> { + let namespace_api: Api = Api::all(self.client.clone()); + + Span::current().pb_set_message(&format!("Deleting {kind} {name}", kind = Namespace::KIND)); + + kube::runtime::wait::delete::delete_and_finalize( + namespace_api, + &name, + &DeleteParams::foreground(), + ) + .await + .context(KubeRuntimeDeleteSnafu)?; + + Ok(()) + } + /// Creates a [`Namespace`] only if not already present in the current cluster. pub async fn create_namespace_if_needed(&self, name: String) -> Result<()> { if self.get_namespace(&name).await?.is_none() { @@ -441,6 +617,16 @@ impl Client { endpoints_api.get(name).await.context(KubeClientFetchSnafu) } + pub async fn get_api_resources(&self) -> Vec<(ApiResource, ApiCapabilities)> { + let mut api_resources = Vec::new(); + + for group in self.discovery.read().await.groups() { + api_resources.append(group.recommended_resources().as_mut()); + } + + api_resources + } + /// Try to resolve the given [`GroupVersionKind`]. In case the resolution fails a discovery is run to pull in new /// GVKs that are not present in the [`Discovery`] cache. Afterwards a normal resolution is issued. async fn resolve_gvk( diff --git a/rust/stackable-cockpit/src/utils/k8s/conditions.rs b/rust/stackable-cockpit/src/utils/k8s/conditions.rs index 82f52118..eb1b0c94 100644 --- a/rust/stackable-cockpit/src/utils/k8s/conditions.rs +++ b/rust/stackable-cockpit/src/utils/k8s/conditions.rs @@ -1,9 +1,11 @@ -use k8s_openapi::{ - api::apps::v1::{DeploymentCondition, StatefulSetCondition}, - apimachinery::pkg::apis::meta::v1::Condition, -}; use serde::Serialize; -use stackable_operator::status::condition::ClusterCondition; +use stackable_operator::{ + k8s_openapi::{ + api::apps::v1::{DeploymentCondition, StatefulSetCondition}, + apimachinery::pkg::apis::meta::v1::Condition, + }, + status::condition::ClusterCondition, +}; #[cfg(feature = "openapi")] use utoipa::ToSchema; diff --git a/rust/stackable-cockpit/src/utils/k8s/labels.rs b/rust/stackable-cockpit/src/utils/k8s/labels.rs index d79c127b..d7db2229 100644 --- a/rust/stackable-cockpit/src/utils/k8s/labels.rs +++ b/rust/stackable-cockpit/src/utils/k8s/labels.rs @@ -1,4 +1,4 @@ -use kube::api::ListParams; +use stackable_operator::kube::api::ListParams; pub enum ProductLabel { Both, diff --git a/rust/stackable-cockpit/src/utils/mod.rs b/rust/stackable-cockpit/src/utils/mod.rs index ee2018a4..59a42c98 100644 --- a/rust/stackable-cockpit/src/utils/mod.rs +++ b/rust/stackable-cockpit/src/utils/mod.rs @@ -3,8 +3,8 @@ pub mod check; pub mod k8s; pub mod params; pub mod path; -pub mod string; pub mod templating; +pub mod yaml; /// Returns the name of the operator used in the Helm repository. pub fn operator_chart_name(name: &str) -> String { diff --git a/rust/stackable-cockpit/src/utils/params.rs b/rust/stackable-cockpit/src/utils/params.rs index d688009d..a3948ccd 100644 --- a/rust/stackable-cockpit/src/utils/params.rs +++ b/rust/stackable-cockpit/src/utils/params.rs @@ -281,17 +281,23 @@ mod test { let p = iter.next(); assert!(p.is_some()); - assert_eq!(p.unwrap(), &RawParameter { - name: "param1".into(), - value: "value1".into() - }); + assert_eq!( + p.unwrap(), + &RawParameter { + name: "param1".into(), + value: "value1".into() + } + ); let p = iter.next(); assert!(p.is_some()); - assert_eq!(p.unwrap(), &RawParameter { - name: "param2".into(), - value: "value2".into() - }); + assert_eq!( + p.unwrap(), + &RawParameter { + name: "param2".into(), + value: "value2".into() + } + ); let p = iter.next(); assert!(p.is_none()); @@ -309,17 +315,23 @@ mod test { let p = iter.next(); assert!(p.is_some()); - assert_eq!(p.unwrap(), &RawParameter { - name: "param1".into(), - value: "value1".into() - }); + assert_eq!( + p.unwrap(), + &RawParameter { + name: "param1".into(), + value: "value1".into() + } + ); let p = iter.next(); assert!(p.is_some()); - assert_eq!(p.unwrap(), &RawParameter { - name: "param2".into(), - value: "value2".into() - }); + assert_eq!( + p.unwrap(), + &RawParameter { + name: "param2".into(), + value: "value2".into() + } + ); let p = iter.next(); assert!(p.is_none()); @@ -367,10 +379,13 @@ mod test { match input.into_params(valid_parameters) { Ok(validated) => panic!("SHOULD FAIL: {validated:?}"), - Err(err) => assert_eq!(err, IntoParametersError::InvalidParameter { - parameter: "param2".into(), - expected: "param1".into() - }), + Err(err) => assert_eq!( + err, + IntoParametersError::InvalidParameter { + parameter: "param2".into(), + expected: "param1".into() + } + ), } } } diff --git a/rust/stackable-cockpit/src/utils/path.rs b/rust/stackable-cockpit/src/utils/path.rs index f71493e5..d0d6020a 100644 --- a/rust/stackable-cockpit/src/utils/path.rs +++ b/rust/stackable-cockpit/src/utils/path.rs @@ -25,18 +25,6 @@ impl> IntoPathOrUrl for T { } } -impl IntoPathOrUrl for PathOrUrl { - fn into_path_or_url(self) -> Result { - Ok(self) - } -} - -impl IntoPathOrUrl for &PathOrUrl { - fn into_path_or_url(self) -> Result { - Ok(self.to_owned()) - } -} - pub trait IntoPathsOrUrls: Sized { fn into_paths_or_urls(self) -> Result, PathOrUrlParseError>; } @@ -54,18 +42,6 @@ impl> IntoPathsOrUrls for Vec { } } -impl IntoPathsOrUrls for PathOrUrl { - fn into_paths_or_urls(self) -> Result, PathOrUrlParseError> { - Ok(vec![self]) - } -} - -impl IntoPathsOrUrls for &PathOrUrl { - fn into_paths_or_urls(self) -> Result, PathOrUrlParseError> { - Ok(vec![self.to_owned()]) - } -} - pub trait ParsePathsOrUrls { fn parse_paths_or_urls(self) -> Result, PathOrUrlParseError>; } diff --git a/rust/stackable-cockpit/src/utils/string.rs b/rust/stackable-cockpit/src/utils/string.rs deleted file mode 100644 index b2255f5e..00000000 --- a/rust/stackable-cockpit/src/utils/string.rs +++ /dev/null @@ -1,16 +0,0 @@ -pub trait Casing { - fn capitalize(&self) -> String; -} - -impl> Casing for T { - fn capitalize(&self) -> String { - let mut chars = self.as_ref().chars(); - match chars.next() { - None => String::new(), - Some(first) => first - .to_uppercase() - .chain(chars.map(|c| c.to_ascii_lowercase())) - .collect(), - } - } -} diff --git a/rust/stackable-cockpit/src/utils/templating.rs b/rust/stackable-cockpit/src/utils/templating.rs index 1be4436f..b2fa07b1 100644 --- a/rust/stackable-cockpit/src/utils/templating.rs +++ b/rust/stackable-cockpit/src/utils/templating.rs @@ -1,7 +1,7 @@ use std::collections::HashMap; use bcrypt::DEFAULT_COST; -use rand::distributions::{Alphanumeric, DistString}; +use rand::distr::{Alphanumeric, SampleString}; use serde::de::DeserializeOwned; use tera::{Context, Function, Tera, Value}; @@ -12,7 +12,7 @@ use crate::constants::PASSWORD_LENGTH; /// output. Available helper functions are: /// /// - `random_password`: Returns a random password with a relatively secure RNG. -/// See [`rand::thread_rng`] for more information. +/// See [`rand::rng`] for more information. /// - `bcrypt`: Returns the bcyrpt hash of the provided `password` parameter. pub fn render(content: &str, parameters: &HashMap) -> Result { // Create templating context @@ -44,7 +44,7 @@ where fn random_password() -> impl Function { |_args: &HashMap| -> tera::Result { - let password = Alphanumeric.sample_string(&mut rand::thread_rng(), PASSWORD_LENGTH); + let password = Alphanumeric.sample_string(&mut rand::rng(), PASSWORD_LENGTH); Ok(password.into()) } } diff --git a/rust/stackable-cockpit/src/utils/yaml.rs b/rust/stackable-cockpit/src/utils/yaml.rs new file mode 100644 index 00000000..486edd9b --- /dev/null +++ b/rust/stackable-cockpit/src/utils/yaml.rs @@ -0,0 +1,13 @@ +use serde_yaml::{Mapping, Value}; + +/// Extracts the Helm values for a specific operator from the operator values mapping. +/// +/// Looks up the operator-specific key (e.g. `airflow-operator`) and returns +/// the associated mapping, or an empty mapping if not found. +pub fn values_for_operator(operator_values: &Mapping, operator_name: &str) -> Mapping { + operator_values + .get(format!("{operator_name}-operator")) + .and_then(Value::as_mapping) + .cloned() + .unwrap_or_default() +} diff --git a/rust/stackable-cockpit/src/xfer/mod.rs b/rust/stackable-cockpit/src/xfer/mod.rs index 3792305b..0aaf0027 100644 --- a/rust/stackable-cockpit/src/xfer/mod.rs +++ b/rust/stackable-cockpit/src/xfer/mod.rs @@ -1,4 +1,4 @@ -use std::path::PathBuf; +use std::{path::PathBuf, time::SystemTime}; use snafu::{ResultExt, Snafu}; use tokio::fs; @@ -10,7 +10,7 @@ pub mod processor; use crate::{ utils::path::PathOrUrl, xfer::{ - cache::{Cache, Settings, Status}, + cache::{Cache, DeleteFilter, Settings, Status}, processor::{Processor, ProcessorError}, }, }; @@ -31,9 +31,15 @@ pub enum Error { #[snafu(display("failed to store file in cache"))] CacheStore { source: cache::Error }, - #[snafu(display("failed to retrieve file from cache"))] + #[snafu(display("failed to retrieve file(s) from cache"))] CacheRetrieve { source: cache::Error }, + #[snafu(display("failed to purge cached files"))] + CachePurge { source: cache::Error }, + + #[snafu(display("failed to initialize http client"))] + InitializeClient { source: reqwest::Error }, + #[snafu(display("failed to build http request"))] BuildRequest { source: reqwest::Error }, @@ -57,14 +63,14 @@ impl Client { .try_into_cache() .await .context(CacheSettingsSnafu)?; - let client = reqwest::Client::new(); - Ok(Self { client, cache }) - } + // Some servers require this (eg: GitHub API) + let client = reqwest::Client::builder() + .user_agent("stackable-cockpit") + .build() + .context(InitializeClientSnafu)?; - pub fn new_with(cache: Cache) -> Self { - let client = reqwest::Client::new(); - Self { client, cache } + Ok(Self { client, cache }) } /// Retrieves data from `path_or_url` which can either be a [`PathBuf`] @@ -84,6 +90,30 @@ impl Client { } } + /// Lists all currently cached files. + /// + /// This function does not make any requests to remote resources. + pub async fn list_cached_files(&self) -> Result> { + self.cache.list().await.context(CacheRetrieveSnafu) + } + + /// Purges currently cached files selected by the [`DeleteFilter`]. + /// + /// This function does not make any requests to remote resources. + pub async fn purge_cached_files(&self, delete_filter: DeleteFilter) -> Result<()> { + self.cache + .purge(delete_filter) + .await + .context(CachePurgeSnafu) + } + + /// Auto-purges the underlying cache. + /// + /// This function does not make any requests to remote resources. + pub async fn auto_purge(&self) -> Result<()> { + self.cache.auto_purge().await.context(CachePurgeSnafu) + } + async fn get_from_local_file(&self, path: &PathBuf) -> Result { fs::read_to_string(path) .await diff --git a/rust/stackable-cockpit/src/xfer/processor.rs b/rust/stackable-cockpit/src/xfer/processor.rs index c2f705ba..0631fbc6 100644 --- a/rust/stackable-cockpit/src/xfer/processor.rs +++ b/rust/stackable-cockpit/src/xfer/processor.rs @@ -12,6 +12,9 @@ pub enum ProcessorError { #[snafu(display("failed to deserialize YAML content"))] DeserializeYaml { source: serde_yaml::Error }, + #[snafu(display("failed to deserialize JSON content"))] + DeserializeJson { source: serde_json::Error }, + #[snafu(display("failed to render templated content"))] RenderTemplate { source: tera::Error }, } @@ -81,9 +84,24 @@ impl Default for Yaml { } } -impl Yaml { - pub fn new() -> Self { - Self::default() +#[derive(Debug)] +pub struct Json(PhantomData); + +impl Processor for Json +where + T: DeserializeOwned, +{ + type Input = String; + type Output = T; + + fn process(&self, input: Self::Input) -> Result { + serde_json::from_str(&input).context(DeserializeJsonSnafu) + } +} + +impl Default for Json { + fn default() -> Self { + Self(PhantomData) } } diff --git a/rust/stackable-cockpitd/Cargo.toml b/rust/stackable-cockpitd/Cargo.toml index 1a079ae0..fe41ae1e 100644 --- a/rust/stackable-cockpitd/Cargo.toml +++ b/rust/stackable-cockpitd/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "stackable-cockpitd" -description = "Stackable cockpit daemon bundling the HTTP REST API and UI" +description = "Stackable cockpit daemon bundling the HTTP REST API" version.workspace = true authors.workspace = true license.workspace = true @@ -8,21 +8,14 @@ edition.workspace = true repository.workspace = true publish = false -[features] -default = [] -# The UI builds slowly, so run in API-only mode during development -ui = ["dep:stackable-cockpit-web"] - [dependencies] stackable-cockpit = { path = "../stackable-cockpit", features = ["openapi"] } -stackable-cockpit-web = { path = "../../web", optional = true } axum.workspace = true axum-extra.workspace = true bcrypt.workspace = true clap.workspace = true futures.workspace = true -k8s-openapi.workspace = true serde.workspace = true snafu.workspace = true tokio.workspace = true diff --git a/rust/stackable-cockpitd/README.md b/rust/stackable-cockpitd/README.md index 442cd9dd..6f27efbc 100644 --- a/rust/stackable-cockpitd/README.md +++ b/rust/stackable-cockpitd/README.md @@ -12,9 +12,6 @@ and exposes functionality via an HTTP REST API. Core community-provided dependen - [`tracing`][tracing-link] is used for context-rich application logging. Our complete stack emits tracing events that can be consumed via multiple different subscribers. - [`snafu`][snafu-link] for easy custom error handling. -The Stackable UI is bundled into the final binary during the build process. The source code for the front end is located -in [web](../../web). Detailed information about the frontend stack can be found in the [README](../../web/README.me). - ## Development ```shell diff --git a/rust/stackable-cockpitd/src/cli.rs b/rust/stackable-cockpitd/src/cli.rs index 37d94cce..3c56dc80 100644 --- a/rust/stackable-cockpitd/src/cli.rs +++ b/rust/stackable-cockpitd/src/cli.rs @@ -5,8 +5,7 @@ use clap::Parser; #[derive(Debug, Parser)] #[command(author, version, about, propagate_version = true)] #[command( - about = "Run the Stackable daemon which exposes the Stackable library via an HTTP -REST API and provides a web-based application." + about = "Run the Stackable daemon which exposes the Stackable library via an HTTP REST API." )] pub struct Cli { /// Port the daemon listens on diff --git a/rust/stackable-cockpitd/src/handlers/demos.rs b/rust/stackable-cockpitd/src/handlers/demos.rs index e1204539..cf9507ae 100644 --- a/rust/stackable-cockpitd/src/handlers/demos.rs +++ b/rust/stackable-cockpitd/src/handlers/demos.rs @@ -10,7 +10,7 @@ pub fn router() -> Router { /// Retrieves all demos. #[utoipa::path(get, path = "/demos", responses( - (status = 200, description = "Retrieving a list of demos succeeded", body = [DemoSpecV2]), + (status = 200, description = "Retrieving a list of demos succeeded", body = [DemoSpec]), (status = 404, description = "Retrieving a list of demos failed") ))] pub async fn get_demos() -> Json> { @@ -19,7 +19,7 @@ pub async fn get_demos() -> Json> { /// Retrieves one demo identified by `name`. #[utoipa::path(get, path = "/demos/{name}", responses( - (status = 200, description = "Retrieving the demo with 'name' succeeded", body = DemoSpecV2), + (status = 200, description = "Retrieving the demo with 'name' succeeded", body = DemoSpec), (status = 404, description = "Retrieving the demo with 'name' failed") ))] pub async fn get_demo(Path(_name): Path) -> Json { diff --git a/rust/stackable-cockpitd/src/handlers/mod.rs b/rust/stackable-cockpitd/src/handlers/mod.rs index 61145488..de3222b1 100644 --- a/rust/stackable-cockpitd/src/handlers/mod.rs +++ b/rust/stackable-cockpitd/src/handlers/mod.rs @@ -3,9 +3,3 @@ pub mod releases; pub mod root; pub mod stacklets; pub mod stacks; - -#[cfg(feature = "ui")] -pub mod ui; -#[cfg(not(feature = "ui"))] -#[path = "ui_disabled.rs"] -pub mod ui; diff --git a/rust/stackable-cockpitd/src/handlers/ui.rs b/rust/stackable-cockpitd/src/handlers/ui.rs deleted file mode 100644 index 9abdb02b..00000000 --- a/rust/stackable-cockpitd/src/handlers/ui.rs +++ /dev/null @@ -1,28 +0,0 @@ -use axum::{ - Router, - extract::Path, - http::{HeaderValue, header::CONTENT_TYPE}, - response::{Html, IntoResponse}, - routing::get, -}; - -pub fn router() -> Router { - Router::new() - .route("/assets/:assset", get(asset)) - .route("/", get(ui)) - .route("/*path", get(ui)) -} - -async fn ui() -> Html<&'static str> { - Html(stackable_cockpit_web::INDEX_HTML) -} -async fn asset(Path(name): Path) -> impl IntoResponse { - ( - [(CONTENT_TYPE, match name.rsplit_once('.') { - Some((_, "js")) => HeaderValue::from_static("text/javascript"), - Some((_, "css")) => HeaderValue::from_static("text/css"), - _ => HeaderValue::from_static("application/octet-stream"), - })], - stackable_cockpit_web::ASSETS[&name], - ) -} diff --git a/rust/stackable-cockpitd/src/handlers/ui_disabled.rs b/rust/stackable-cockpitd/src/handlers/ui_disabled.rs deleted file mode 100644 index 88adbd9e..00000000 --- a/rust/stackable-cockpitd/src/handlers/ui_disabled.rs +++ /dev/null @@ -1,9 +0,0 @@ -use axum::{Router, routing::get}; - -pub fn router() -> Router { - Router::new().route("/", get(disabled_message)) -} - -async fn disabled_message() -> &'static str { - "UI is disabled, rebuild with --features ui to enable" -} diff --git a/rust/stackable-cockpitd/src/main.rs b/rust/stackable-cockpitd/src/main.rs index 98c5f61c..e36173f0 100644 --- a/rust/stackable-cockpitd/src/main.rs +++ b/rust/stackable-cockpitd/src/main.rs @@ -2,7 +2,6 @@ use std::net::SocketAddr; use axum::{ Router, - response::Redirect, routing::{get, post}, }; use clap::Parser; @@ -53,9 +52,7 @@ async fn main() -> Result<(), Whatever> { let router = Router::new() .nest("/api/", api) - .nest("/ui/", handlers::ui::router()) - .merge(SwaggerUi::new("/swagger-ui").url("/api-docs/openapi.json", api_doc::openapi())) - .route("/", get(|| async { Redirect::permanent("/ui/") })); + .merge(SwaggerUi::new("/swagger-ui").url("/api-docs/openapi.json", api_doc::openapi())); let listen_addr = SocketAddr::new(cli.address, cli.port); info!(addr = %listen_addr, "Starting server"); diff --git a/rust/stackablectl/CHANGELOG.md b/rust/stackablectl/CHANGELOG.md index aa4c6fce..25c586f9 100644 --- a/rust/stackablectl/CHANGELOG.md +++ b/rust/stackablectl/CHANGELOG.md @@ -4,6 +4,103 @@ All notable changes to this project will be documented in this file. ## [Unreleased] +### Added + +- Heuristic for setting listener presets when the environment is Minikube ([#438]). +- Add `uninstall` subcommand for `demo`/`stack` commands ([#429]). +- Add confirmation prompt to `install` subcommand for namespace selection ([#429]). +- Add `--assume-yes` option for running commands non-interactively ([#429]). +- Support Helm charts sourced from OCI registries in demo/stack manifests ([#440]). + +### Changed + +- Abort early if `uninstall` is issued for `default` namespace ([#442]). + +[#429]: https://github.com/stackabletech/stackable-cockpit/pull/429 +[#438]: https://github.com/stackabletech/stackable-cockpit/pull/438 +[#440]: https://github.com/stackabletech/stackable-cockpit/pull/440 +[#442]: https://github.com/stackabletech/stackable-cockpit/pull/442 + +## [1.4.0] - 2026-03-18 + +### Added + +- Add `STACK` and `DEMO` templating parameters. Have a look at the `README.md` for details ([#432]). + +[#432]: https://github.com/stackabletech/stackable-cockpit/pull/432 + +## [1.3.0] - 2026-03-16 + +### Added + +- Allow specifying Helm values for operator installations ([#425]). + +### Changed + +- Bump Rust to `1.93.0` as well as dependencies ([#426]). +- Bump Go to `1.26.0` as well as dependencies ([#426]). + +### Miscellaneous + +- Publish SBOM alongside artifacts ([#428]). + +[#425]: https://github.com/stackabletech/stackable-cockpit/pull/425 +[#426]: https://github.com/stackabletech/stackable-cockpit/pull/426 +[#428]: https://github.com/stackabletech/stackable-cockpit/pull/428 + +## [1.2.2] - 2025-12-03 + +### Added + +- Add the option for users to customize the behaviour of `stackablectl` through a user config located at + `$HOME/.config/stackablectl/config.toml` ([#422]). + - The first supported option is `version.check_enabled` which can be set to `true` or `false`. +- Add a new release check which is used in two different ways ([#421]): + - A new `stackablectl version check` command can be used to check if the current installation is up-to-date + - A check automatically runs for all other commands (in parallel to not block the commands) and the status is reported + as part of the final command output. + +[#421]: https://github.com/stackabletech/stackable-cockpit/pull/421 +[#422]: https://github.com/stackabletech/stackable-cockpit/pull/422 + +## [1.2.1] - 2025-11-18 + +### Fixed + +- Don't crash during `release upgrade` for SDP 25.11. + Previously it errored with `HTTP status client error (404 Not Found) for url (https://raw.githubusercontent.com/stackabletech/secret-operator/main/deploy/helm/secret-operator/crds/crds.yaml)`, as the secret-operator now maintains the CRD itself ([#418]). + +[#418]: https://github.com/stackabletech/stackable-cockpit/pull/418 + +## [1.2.0] - 2025-10-29 + +### Added + +- Automatically detect Kubernetes environment (e.g. kind, k3s or IONOS) and choose a sensible [ListenerClass preset] by default ([#414]). +- Support configuring the [ListenerClass preset] using `--listener-class-preset` ([#414]). + +[#414]: https://github.com/stackabletech/stackable-cockpit/pull/414 +[ListenerClass preset]: https://docs.stackable.tech/home/nightly/listener-operator/listenerclass/#presets + +## [1.1.0] - 2025-07-16 + +### Added + +- Add OpenSearch to the list of supported products ([#400]). + +### Fixed + +- nix: Update nixpkgs and upgrade nodejs-18 to nodejs_20 ([#384]). +- nix: Default to release build ([#388]). +- Switch to idempotent Helm installations for demos and stacks ([#386]). +- Ignore failed re-application of Jobs due to immutability in demo and stack installations. + Display those manifests to the user, so they can decide if they need to delete and recreate it ([#386]). + +[#384]: https://github.com/stackabletech/stackable-cockpit/pull/384 +[#386]: https://github.com/stackabletech/stackable-cockpit/pull/386 +[#388]: https://github.com/stackabletech/stackable-cockpit/pull/388 +[#400]: https://github.com/stackabletech/stackable-cockpit/pull/400 + ## [1.0.0] - 2025-06-02 ### Added diff --git a/rust/stackablectl/Cargo.toml b/rust/stackablectl/Cargo.toml index a4137a25..15db1c9d 100644 --- a/rust/stackablectl/Cargo.toml +++ b/rust/stackablectl/Cargo.toml @@ -2,7 +2,7 @@ name = "stackablectl" description = "Command line tool to interact with the Stackable Data Platform" # See /Cargo.toml -version = "1.0.0" +version = "1.4.0" authors.workspace = true license.workspace = true edition.workspace = true @@ -17,12 +17,14 @@ clap_complete.workspace = true clap_complete_nushell.workspace = true clap.workspace = true comfy-table.workspace = true +dialoguer.workspace = true directories.workspace = true dotenvy.workspace = true indexmap.workspace = true lazy_static.workspace = true rand.workspace = true reqwest.workspace = true +rustls.workspace = true semver.workspace = true serde_json.workspace = true serde_yaml.workspace = true @@ -30,6 +32,7 @@ serde.workspace = true snafu.workspace = true tera.workspace = true tokio.workspace = true +toml.workspace = true tracing-subscriber.workspace = true tracing.workspace = true tracing-indicatif.workspace = true @@ -38,3 +41,6 @@ indicatif.workspace = true termion.workspace = true urlencoding.workspace = true libc.workspace = true + +[build-dependencies] +built.workspace = true diff --git a/rust/stackablectl/README.md b/rust/stackablectl/README.md index 26ba50b7..d998a4bd 100644 --- a/rust/stackablectl/README.md +++ b/rust/stackablectl/README.md @@ -23,6 +23,7 @@ Commands: completions Generate shell completions for this tool cache Interact with locally cached files experimental-debug EXPERIMENTAL: Launch a debug container for a Pod + version Retrieve version data of the stackablectl installation help Print this message or the help of the given subcommand(s) Options: @@ -76,30 +77,65 @@ File options: Use "stackablectl [OPTIONS] -r path/to/releases1.yaml -r path/to/releases2.yaml" to provide multiple additional release files. + -f, --operator-values + Path to a Helm values file that will be used for the installation of operators + + The file is a YAML file containing Helm values used to deploy operators. + Operator-specific keys (e.g. 'airflow-operator', 'zookeeper-operator') map + to the Helm values for that operator. Use YAML anchors and aliases to share + values across operators. + + Example values file: + + airflow-operator: + tolerations: &default-tolerations + - key: "example" + operator: "Exists" + effect: "NoSchedule" + podAnnotations: + example.com/team: "data-engineering" + zookeeper-operator: + tolerations: *default-tolerations + podAnnotations: + example.com/team: "platform" + + Use "stackablectl [OPTIONS] -f path/to/values.yaml" to provide a + values file. + Helm repository options: - --helm-repo-stable + --helm-repo-stable Provide a custom Helm stable repository URL [default: https://repo.stackable.tech/repository/helm-stable/] - --helm-repo-test + --helm-repo-test Provide a custom Helm test repository URL [default: https://repo.stackable.tech/repository/helm-test/] - --helm-repo-dev + --helm-repo-dev Provide a custom Helm dev repository URL [default: https://repo.stackable.tech/repository/helm-dev/] - --chart-source + --chart-source Source the charts from either a OCI registry or from index.yaml-based repositories. - [default: oci] - Possible values: - oci: OCI registry - repo: index.yaml-based repositories: resolution (dev, test, stable) is based on the version and thus will be operator-specific + + [default: oci] + +Operator specific configurations: + --listener-class-preset + Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`). + + This takes precedence over values provided via the '-f/--operator-values' flag. + + This maps to the listener-operator Helm Chart preset value, see [the listener-operator documentation](https://docs.stackable.tech/home/nightly/listener-operator/listenerclass/#presets) for details. + + [possible values: none, stable-nodes, ephemeral-nodes] ``` ## Dev Setup diff --git a/rust/stackablectl/RELEASE.md b/rust/stackablectl/RELEASE.md new file mode 100644 index 00000000..3451d985 --- /dev/null +++ b/rust/stackablectl/RELEASE.md @@ -0,0 +1,17 @@ +# Release Process + +The release of `stackablectl` is currently mostly done manually. This means the following steps need +to be done: + +1. Ensure your local `main` branch is up-to-date and then proceed to checkout a new branch using + `git checkout -b chore/release-stackablectl-X.Y.Z`. +2. Update both the Cargo.toml and CHANGELOG.md file to the new version `X.Y.Z`. +3. Add the relevant changes from the changelog to a new release notes partial under + `docs/stackablectl/partials/release-notes`. +4. Update various files by running the following xtask `cargo xtask gen-man` and + `make regenerate-nix`. This is also automatically done if pre-commit is enabled. +5. Push the changes and raise a PR. +6. Merge the PR onto `main` and then proceed to tag the appropriate commit using + `git tag -s stackablectl-Y.Y.Z -m stackablectl-Y.Y.Z`. +7. Building the artifacts and creating the release on GitHub is fully automated from this point + onward. diff --git a/rust/stackablectl/build.rs b/rust/stackablectl/build.rs new file mode 100644 index 00000000..d764d79c --- /dev/null +++ b/rust/stackablectl/build.rs @@ -0,0 +1,3 @@ +fn main() { + built::write_built_file().expect("failed to acquire build-time information"); +} diff --git a/rust/stackablectl/src/args/file.rs b/rust/stackablectl/src/args/file.rs index 18b54579..91000466 100644 --- a/rust/stackablectl/src/args/file.rs +++ b/rust/stackablectl/src/args/file.rs @@ -42,4 +42,33 @@ definition will be used. Use \"stackablectl [OPTIONS] -r path/to/releases1.yaml -r path/to/releases2.yaml\" to provide multiple additional release files.")] pub release_files: Vec, + + /// Path to a Helm values file that will be used for the installation of operators + #[arg(short = 'f', long, value_name = "VALUES_FILE", value_hint = ValueHint::FilePath, global = true)] + #[arg( + long_help = "Path to a Helm values file that will be used for the installation of operators + +The file is a YAML file containing Helm values used to deploy operators. +Operator-specific keys (e.g. 'airflow-operator', 'zookeeper-operator') map +to the Helm values for that operator. Use YAML anchors and aliases to share +values across operators. + +Example values file: + + airflow-operator: + tolerations: &default-tolerations + - key: \"example\" + operator: \"Exists\" + effect: \"NoSchedule\" + podAnnotations: + example.com/team: \"data-engineering\" + zookeeper-operator: + tolerations: *default-tolerations + podAnnotations: + example.com/team: \"platform\" + +Use \"stackablectl [OPTIONS] -f path/to/values.yaml\" to provide a +values file." + )] + pub operator_values: Option, } diff --git a/rust/stackablectl/src/args/mod.rs b/rust/stackablectl/src/args/mod.rs index e6467ff8..0f53377c 100644 --- a/rust/stackablectl/src/args/mod.rs +++ b/rust/stackablectl/src/args/mod.rs @@ -1,9 +1,13 @@ mod cluster; mod file; mod namespace; +mod operator_configs; +mod prompt; mod repo; pub use cluster::*; pub use file::*; pub use namespace::*; +pub use operator_configs::*; +pub use prompt::*; pub use repo::*; diff --git a/rust/stackablectl/src/args/operator_configs.rs b/rust/stackablectl/src/args/operator_configs.rs new file mode 100644 index 00000000..08014c1a --- /dev/null +++ b/rust/stackablectl/src/args/operator_configs.rs @@ -0,0 +1,16 @@ +use clap::Args; +use stackable_cockpit::platform::operator::listener_operator::ListenerClassPreset; + +#[derive(Debug, Args)] +#[command(next_help_heading = "Operator specific configurations")] +pub struct CommonOperatorConfigsArgs { + /// Choose the ListenerClass preset (`none`, `ephemeral-nodes` or `stable-nodes`). + /// + /// This takes precedence over values provided via the '-f/--operator-values' flag. + /// + /// This maps to the listener-operator Helm Chart preset value, see + /// [the listener-operator documentation](https://docs.stackable.tech/home/nightly/listener-operator/listenerclass/#presets) + /// for details. + #[arg(long, global = true)] + pub listener_class_preset: Option, +} diff --git a/rust/stackablectl/src/args/prompt.rs b/rust/stackablectl/src/args/prompt.rs new file mode 100644 index 00000000..a76b8355 --- /dev/null +++ b/rust/stackablectl/src/args/prompt.rs @@ -0,0 +1,9 @@ +use clap::Args; + +#[derive(Debug, Args)] +#[command(next_help_heading = "Prompt options")] +pub struct CommonPromptArgs { + /// Assume "yes" as answer to all prompts and run non-interactively + #[arg(long, visible_aliases(["yes"]), short = 'y', global = true)] + pub assume_yes: bool, +} diff --git a/rust/stackablectl/src/cli/mod.rs b/rust/stackablectl/src/cli/mod.rs index 641c8cd4..8973b90e 100644 --- a/rust/stackablectl/src/cli/mod.rs +++ b/rust/stackablectl/src/cli/mod.rs @@ -1,28 +1,33 @@ -use std::env; +use std::{env, path::Path, sync::Arc}; use clap::{Parser, Subcommand, ValueEnum}; use directories::ProjectDirs; -use snafu::{ResultExt, Snafu}; +use snafu::{OptionExt, ResultExt, Snafu}; use stackable_cockpit::{ constants::{HELM_REPO_NAME_DEV, HELM_REPO_NAME_STABLE, HELM_REPO_NAME_TEST}, helm, - platform::operator::ChartSourceType, + platform::operator::{ + ChartSourceType, listener_operator::determine_and_store_listener_class_preset, + }, utils::path::{ IntoPathOrUrl, IntoPathsOrUrls, ParsePathsOrUrls, PathOrUrl, PathOrUrlParseError, }, - xfer::cache::Settings, + xfer::{self, cache::Settings}, }; use tracing::{Level, instrument}; +use tracing_indicatif::indicatif_eprintln; use crate::{ - args::{CommonFileArgs, CommonRepoArgs}, - cmds::{cache, completions, debug, demo, operator, release, stack, stacklet}, + args::{CommonFileArgs, CommonOperatorConfigsArgs, CommonRepoArgs}, + cmds::{cache, completions, debug, demo, operator, release, stack, stacklet, version}, + config::UserConfig, constants::{ DEMOS_REPOSITORY_DEMOS_SUBPATH, DEMOS_REPOSITORY_STACKS_SUBPATH, DEMOS_REPOSITORY_URL_BASE, ENV_KEY_DEMO_FILES, ENV_KEY_RELEASE_FILES, ENV_KEY_STACK_FILES, REMOTE_RELEASE_FILE, USER_DIR_APPLICATION_NAME, USER_DIR_ORGANIZATION_NAME, USER_DIR_QUALIFIER, }, output::{ErrorContext, Output, ResultContext}, + release_check, }; #[derive(Debug, Snafu)] @@ -39,20 +44,42 @@ pub enum Error { #[snafu(display("failed to execute stacklet (sub)command"))] Stacklet { source: stacklet::CmdError }, - #[snafu(display("demo command error"))] + #[snafu(display("failed to execute demo (sub)command"))] Demo { source: demo::CmdError }, - #[snafu(display("completions command error"))] + #[snafu(display("failed to execute completions (sub)command"))] Completions { source: completions::CmdError }, - #[snafu(display("cache command error"))] + #[snafu(display("failed to execute cache (sub)command"))] Cache { source: cache::CmdError }, - #[snafu(display("debug command error"))] + #[snafu(display("failed to execute debug (sub)command"))] Debug { source: debug::CmdError }, - #[snafu(display("helm error"))] - Helm { source: helm::Error }, + #[snafu(display("failed to execute version (sub)command"))] + Version { source: version::CmdError }, + + #[snafu(display("failed to add Helm repositories"))] + AddHelmRepos { source: helm::Error }, + + #[snafu(display("failed to retrieve cache settings"))] + RetrieveCacheSettings { source: CacheSettingsError }, + + #[snafu(display("failed to auto-purge cache"))] + AutoPurgeCache { source: xfer::Error }, + + #[snafu(display("failed to initialize transfer client"))] + InitializeTransferClient { source: xfer::Error }, + + #[snafu(display("failed to retrieve XDG directories"))] + RetrieveXdgDirectories, +} + +#[derive(Debug, Snafu)] +#[snafu(module)] +pub enum CacheSettingsError { + #[snafu(display("unable to resolve user directories"))] + UserDir, } #[derive(Debug, Parser)] @@ -79,8 +106,11 @@ Cached files are saved at '$XDG_CACHE_HOME/stackablectl', which is usually #[command(flatten)] pub repos: CommonRepoArgs, + #[command(flatten)] + pub operator_configs: CommonOperatorConfigsArgs, + #[command(subcommand)] - pub subcommand: Commands, + pub subcommand: Command, } impl Cli { @@ -88,11 +118,8 @@ impl Cli { /// the default demo file URL constructed from [`DEMOS_REPOSITORY_URL_BASE`] and the provided branch, files provided /// by the ENV variable [`ENV_KEY_DEMO_FILES`], and lastly, files provided by the CLI argument `--demo-file`. pub fn get_demo_files(&self, branch: &str) -> Result, PathOrUrlParseError> { - let branch_url = format!( - "{base}/{branch}/{demos}", - base = DEMOS_REPOSITORY_URL_BASE, - demos = DEMOS_REPOSITORY_DEMOS_SUBPATH - ); + let branch_url = + format!("{DEMOS_REPOSITORY_URL_BASE}/{branch}/{DEMOS_REPOSITORY_DEMOS_SUBPATH}"); let mut files = get_files(&branch_url, ENV_KEY_DEMO_FILES)?; @@ -106,11 +133,8 @@ impl Cli { /// the default stack file URL constructed from [`DEMOS_REPOSITORY_URL_BASE`] and the provided branch, files provided /// by the ENV variable [`ENV_KEY_STACK_FILES`], and lastly, files provided by the CLI argument `--stack-file`. pub fn get_stack_files(&self, branch: &str) -> Result, PathOrUrlParseError> { - let branch_url = format!( - "{base}/{branch}/{stacks}", - base = DEMOS_REPOSITORY_URL_BASE, - stacks = DEMOS_REPOSITORY_STACKS_SUBPATH - ); + let branch_url = + format!("{DEMOS_REPOSITORY_URL_BASE}/{branch}/{DEMOS_REPOSITORY_STACKS_SUBPATH}"); let mut files = get_files(&branch_url, ENV_KEY_STACK_FILES)?; @@ -132,6 +156,14 @@ impl Cli { Ok(files) } + pub fn get_values_file(&self) -> Result, PathOrUrlParseError> { + if let Some(operator_values) = self.files.operator_values.clone() { + Ok(Some(operator_values.into_path_or_url()?)) + } else { + Ok(None) + } + } + /// Adds the default (or custom) Helm repository URLs. Internally this calls the Helm SDK written in Go through the /// `go-helm-wrapper`. pub fn add_helm_repos(&self) -> Result<(), helm::Error> { @@ -149,67 +181,134 @@ impl Cli { Ok(()) } - pub fn cache_settings(&self) -> Result { + fn cache_settings(&self, cache_directory: &Path) -> Result { if self.no_cache { tracing::debug!("Cache disabled"); Ok(Settings::disabled()) } else { - let project_dir = ProjectDirs::from( - USER_DIR_QUALIFIER, - USER_DIR_ORGANIZATION_NAME, - USER_DIR_APPLICATION_NAME, - ) - .ok_or(CacheSettingsError::UserDir)?; - - let cache_dir = project_dir.cache_dir(); tracing::debug!( - cache_dir = %cache_dir.to_string_lossy(), + cache_directory = %cache_directory.to_string_lossy(), "Setting cache directory" ); - Ok(Settings::disk(cache_dir)) + Ok(Settings::disk(cache_directory)) } } + #[allow(clippy::result_large_err)] + fn xdg_directories() -> Result { + ProjectDirs::from( + USER_DIR_QUALIFIER, + USER_DIR_ORGANIZATION_NAME, + USER_DIR_APPLICATION_NAME, + ) + .context(RetrieveXdgDirectoriesSnafu) + } + #[instrument(skip_all)] - pub async fn run(&self) -> Result { + pub async fn run(self) -> Result { // FIXME (Techassi): There might be a better way to handle this with // the match later in this function. // Add Helm repos only when required match &self.subcommand { - Commands::Completions(_) => (), - Commands::Cache(_) => (), - _ => self.add_helm_repos().context(HelmSnafu)?, + Command::Completions(_) => (), + Command::Cache(_) => (), + _ => self.add_helm_repos().context(AddHelmReposSnafu)?, } - let cache = self - .cache_settings() - .unwrap() - .try_into_cache() - .await - .unwrap(); + let xdg_directories = Cli::xdg_directories()?; + // TODO (@Techassi): Move this file name to a constant + let user_config_path = xdg_directories.config_dir().join("config.toml"); - // TODO (Techassi): Do we still want to auto purge when running cache commands? - cache.auto_purge().await.unwrap(); + let user_config = UserConfig::from_file_or_default(user_config_path).unwrap(); - match &self.subcommand { - Commands::Operator(args) => args.run(self).await.context(OperatorSnafu), - Commands::Release(args) => args.run(self, cache).await.context(ReleaseSnafu), - Commands::Stack(args) => args.run(self, cache).await.context(StackSnafu), - Commands::Stacklet(args) => args.run(self).await.context(StackletSnafu), - Commands::Demo(args) => args.run(self, cache).await.context(DemoSnafu), - Commands::Completions(args) => args.run().context(CompletionsSnafu), - Commands::Cache(args) => args.run(self, cache).await.context(CacheSnafu), - Commands::ExperimentalDebug(args) => args.run(self).await.context(DebugSnafu), + let cache_settings = self + .cache_settings(xdg_directories.cache_dir()) + .context(RetrieveCacheSettingsSnafu)?; + let transfer_client = xfer::Client::new(cache_settings) + .await + .context(InitializeTransferClientSnafu)?; + + // Only run the cache auto-purge when the user executes ANY command other than the cache + // commands. + if !matches!(self.subcommand, Command::Cache(_)) { + transfer_client + .auto_purge() + .await + .context(AutoPurgeCacheSnafu)?; + } + + // Make transfer client sharable across multiple futures/threads + let transfer_client = Arc::new(transfer_client); + + determine_and_store_listener_class_preset( + self.operator_configs.listener_class_preset.as_ref(), + ) + .await; + + // Only run the version check in the background if the user runs ANY other command than + // the version command and the check isn't disabled via the user config. Also only report + // if the current version is outdated. + let check_version = + !matches!(self.subcommand, Command::Version(_)) && user_config.version.check_enabled; + let release_check_future = + release_check::version_notice_output(transfer_client.clone(), check_version, true); + let release_check_future = + tokio::time::timeout(std::time::Duration::from_secs(2), release_check_future); + + #[rustfmt::skip] + let command_future = async move { + match self.subcommand { + Command::Operator(ref args) => args.run(&self, transfer_client).await.context(OperatorSnafu), + Command::Release(ref args) => args.run(&self, transfer_client).await.context(ReleaseSnafu), + Command::Stack(ref args) => args.run(&self, transfer_client).await.context(StackSnafu), + Command::Stacklet(ref args) => args.run().await.context(StackletSnafu), + Command::Demo(ref args) => args.run(&self, transfer_client).await.context(DemoSnafu), + Command::Completions(ref args) => args.run().context(CompletionsSnafu), + Command::Cache(ref args) => args.run(transfer_client).await.context(CacheSnafu), + Command::ExperimentalDebug(ref args) => args.run().await.context(DebugSnafu), + Command::Version(ref args) => args.run(transfer_client).await.context(VersionSnafu), + } + }; + + // Run the version check and the actual command in parallel and not sequentially. This is + // done to not abort/stall execution when the version check couldn't be performed (because + // of network issues for example). We also optimistically run the version check and don't + // hard-error below when the check failed. + let (release_check_result, command_result) = + tokio::join!(release_check_future, command_future); + + // NOTE (@Techassi): This is freaking ugly (I'm sorry) but there seems to be no other better + // way to achieve what we want without reworking the entire output handling/rendering + // mechanism. + // FIXME (@Techassi): This currently messes up any structured output. This is also not + // trivially solved as explained above. + match command_result { + Ok(command_output) => { + let output = if let Ok(Ok(Some(release_check_output))) = release_check_result { + format!("{command_output}\n\n{release_check_output}") + } else { + command_output + }; + + Ok(output) + } + Err(err) => { + if let Ok(Ok(Some(release_check_output))) = release_check_result { + indicatif_eprintln!("{release_check_output}\n"); + } + + Err(err) + } } } // Output utility functions - pub fn result(&self) -> Output { + pub fn result() -> Output { Output::new(ResultContext::default(), true).expect("Failed to create output renderer") } - pub fn error(&self) -> Output { + pub fn error() -> Output { Output::new(ErrorContext::default(), true).expect("Failed to create output renderer") } @@ -219,7 +318,7 @@ impl Cli { } #[derive(Debug, Subcommand)] -pub enum Commands { +pub enum Command { /// Interact with single operator instead of the full platform #[command(alias("op"))] Operator(operator::OperatorArgs), @@ -260,6 +359,9 @@ CRDs." This container will have access to the same data volumes as the primary container.")] ExperimentalDebug(debug::DebugArgs), + + /// Retrieve version data of the stackablectl installation + Version(version::VersionArguments), } #[derive(Clone, Debug, Default, ValueEnum)] @@ -278,13 +380,6 @@ pub enum OutputType { Yaml, } -#[derive(Debug, Snafu)] -#[snafu(module)] -pub enum CacheSettingsError { - #[snafu(display("unable to resolve user directories"))] - UserDir, -} - /// Returns a list of paths or urls based on the default (remote) file and /// files provided via the env variable. fn get_files(default_file: &str, env_key: &str) -> Result, PathOrUrlParseError> { diff --git a/rust/stackablectl/src/cmds/cache.rs b/rust/stackablectl/src/cmds/cache.rs index 37dc77ee..62fc1bb3 100644 --- a/rust/stackablectl/src/cmds/cache.rs +++ b/rust/stackablectl/src/cmds/cache.rs @@ -1,9 +1,9 @@ -use std::time::Duration; +use std::{sync::Arc, time::Duration}; use clap::{Args, Subcommand}; use comfy_table::{ColumnConstraint, Table, Width, presets::UTF8_FULL}; use snafu::{ResultExt, Snafu}; -use stackable_cockpit::xfer::cache::{self, Cache, DeleteFilter}; +use stackable_cockpit::xfer::{self, cache::DeleteFilter}; use tracing::{info, instrument}; use crate::cli::Cli; @@ -35,26 +35,29 @@ pub struct CacheCleanArgs { #[derive(Debug, Snafu)] pub enum CmdError { #[snafu(display("failed to list cached files"))] - ListCachedFiles { source: cache::Error }, + ListCachedFiles { source: xfer::Error }, #[snafu(display("failed to purge cached files"))] - PurgeCachedFiles { source: cache::Error }, + PurgeCachedFiles { source: xfer::Error }, } impl CacheArgs { - pub async fn run(&self, cli: &Cli, cache: Cache) -> Result { + pub async fn run(&self, transfer_client: Arc) -> Result { match &self.subcommand { - CacheCommands::List => list_cmd(cache, cli).await, - CacheCommands::Clean(args) => clean_cmd(args, cache).await, + CacheCommands::List => list_cmd(transfer_client).await, + CacheCommands::Clean(args) => clean_cmd(args, transfer_client).await, } } } #[instrument(skip_all)] -async fn list_cmd(cache: Cache, cli: &Cli) -> Result { +async fn list_cmd(transfer_client: Arc) -> Result { info!("Listing cached files"); - let files = cache.list().await.context(ListCachedFilesSnafu)?; + let files = transfer_client + .list_cached_files() + .await + .context(ListCachedFilesSnafu)?; if files.is_empty() { return Ok("No cached files".into()); @@ -77,7 +80,7 @@ async fn list_cmd(cache: Cache, cli: &Cli) -> Result { table.add_row(vec![file_path, format!("{modified} seconds ago")]); } - let mut result = cli.result(); + let mut result = Cli::result(); result .with_command_hint("stackablectl cache clean", "to clean all cached files") @@ -87,7 +90,10 @@ async fn list_cmd(cache: Cache, cli: &Cli) -> Result { } #[instrument(skip_all)] -async fn clean_cmd(args: &CacheCleanArgs, cache: Cache) -> Result { +async fn clean_cmd( + args: &CacheCleanArgs, + transfer_client: Arc, +) -> Result { info!("Cleaning cached files"); let delete_filter = if args.only_remove_old_files { @@ -96,8 +102,8 @@ async fn clean_cmd(args: &CacheCleanArgs, cache: Cache) -> Result, pod: ObjectRef, }, @@ -48,15 +47,17 @@ pub enum CmdError { #[snafu(display("failed to create ephemeral debug container {container:?} on {pod}"))] CreateDebugContainer { - source: kube::Error, - pod: ObjectRef, + #[snafu(source(from(kube::Error, Box::new)))] + source: Box, + pod: Box>, container: String, }, #[snafu(display("debug container {container:?} on {pod} never became ready"))] AwaitDebugContainerReadiness { - source: kube::runtime::wait::Error, - pod: ObjectRef, + #[snafu(source(from(kube::runtime::wait::Error, Box::new)))] + source: Box, + pod: Box>, container: String, }, @@ -68,8 +69,9 @@ pub enum CmdError { #[snafu(display("failed to attach to container {container:?} on {pod}"))] AttachContainer { - source: kube::Error, - pod: ObjectRef, + #[snafu(source(from(kube::Error, Box::new)))] + source: Box, + pod: Box>, container: String, }, @@ -132,7 +134,7 @@ pub struct DebugArgs { } impl DebugArgs { - pub async fn run(&self, _cli: &Cli) -> Result { + pub async fn run(&self) -> Result { let kube = kube::Client::try_default() .await .context(KubeClientCreateSnafu)?; @@ -281,10 +283,10 @@ impl DebugArgs { } fn generate_debug_container_name() -> String { - let mut rng = rand::thread_rng(); + let mut rng = rand::rng(); let mut name = "stackablectl-debug-".to_string(); for _ in 0..5 { - name.push(rng.gen_range('a'..='z')); + name.push(rng.random_range('a'..='z')); } name } diff --git a/rust/stackablectl/src/cmds/demo.rs b/rust/stackablectl/src/cmds/demo.rs index bffc38a0..2a7b5488 100644 --- a/rust/stackablectl/src/cmds/demo.rs +++ b/rust/stackablectl/src/cmds/demo.rs @@ -1,14 +1,17 @@ +use std::sync::Arc; + use clap::{Args, Subcommand}; use comfy_table::{ ContentArrangement, Row, Table, presets::{NOTHING, UTF8_FULL}, }; +use dialoguer::Confirm; use snafu::{OptionExt as _, ResultExt, Snafu, ensure}; use stackable_cockpit::{ common::list, constants::{DEFAULT_NAMESPACE, DEFAULT_OPERATOR_NAMESPACE}, platform::{ - demo::{self, DemoInstallParameters}, + demo::{self, DemoInstallParameters, DemoUninstallParameters}, operator::ChartSourceType, release, stack, }, @@ -16,15 +19,16 @@ use stackable_cockpit::{ k8s::{self, Client}, path::PathOrUrlParseError, }, - xfer::{self, cache::Cache}, + xfer, }; use stackable_operator::kvp::{LabelError, Labels}; use tracing::{Span, debug, info, instrument}; -use tracing_indicatif::span_ext::IndicatifSpanExt as _; +use tracing_indicatif::{self, span_ext::IndicatifSpanExt as _}; use crate::{ - args::{CommonClusterArgs, CommonClusterArgsError, CommonNamespaceArgs}, + args::{CommonClusterArgs, CommonClusterArgsError, CommonNamespaceArgs, CommonPromptArgs}, cli::{Cli, OutputType}, + utils::load_operator_values, }; #[derive(Debug, Args)] @@ -50,6 +54,11 @@ pub enum DemoCommands { /// Install a specific demo #[command(aliases(["i", "in"]))] Install(DemoInstallArgs), + + /// Uninstall a specific stack. Caution: This will delete the provided stack namespace, + /// the operators and provided operator namespace, and all Stackable CRDs + #[command(aliases(["u", "un"]))] + Uninstall(DemoUninstallArgs), } #[derive(Debug, Args)] @@ -112,10 +121,26 @@ to specify operator versions." #[command(flatten)] namespaces: CommonNamespaceArgs, + + #[command(flatten)] + prompt_args: CommonPromptArgs, } #[derive(Debug, Args)] -pub struct DemoUninstallArgs {} +pub struct DemoUninstallArgs { + /// Demo to uninstall + demo_name: String, + + #[command(flatten)] + namespaces: CommonNamespaceArgs, + + /// Skip uninstalling Stackable operators and CRDs + #[arg(long)] + skip_operators_and_crds: bool, + + #[command(flatten)] + prompt_args: CommonPromptArgs, +} #[derive(Debug, Snafu)] pub enum CmdError { @@ -128,9 +153,6 @@ pub enum CmdError { #[snafu(display("no demo with name {name:?}"))] NoSuchDemo { name: String }, - #[snafu(display("no stack with name {name:?}"))] - NoSuchStack { name: String }, - #[snafu(display("no release {release:?}"))] NoSuchRelease { release: String }, @@ -152,20 +174,39 @@ pub enum CmdError { demo_name: String, }, + #[snafu(display("failed to confirm user input"))] + ConfirmDialog { source: dialoguer::Error }, + + #[snafu(display("failed to uninstall demo {demo_name:?}"))] + UninstallDemo { + source: demo::Error, + demo_name: String, + }, + + #[snafu(display( + "demo {demo_name:?} cannot be uninstalled from the {DEFAULT_NAMESPACE:?} namespace, because Kubernetes does not allow deleting it. Pass --namespace if the demo was installed in a different namespace, or delete the demo's resources manually" + ))] + UninstallFromDefaultNamespace { demo_name: String }, + #[snafu(display("failed to build labels for demo resources"))] BuildLabels { source: LabelError }, #[snafu(display("failed to create Kubernetes client"))] KubeClientCreate { source: k8s::Error }, + + #[snafu(display("failed to load operator values"))] + LoadOperatorValues { source: crate::utils::Error }, } impl DemoArgs { #[instrument(skip_all, fields(with_cache = !cli.no_cache))] - pub async fn run(&self, cli: &Cli, cache: Cache) -> Result { + pub async fn run( + &self, + cli: &Cli, + transfer_client: Arc, + ) -> Result { debug!("Handle demo args"); - let transfer_client = xfer::Client::new_with(cache); - let release_files = cli.get_release_files().context(PathOrUrlParseSnafu)?; let release_list = release::ReleaseList::build(&release_files, &transfer_client) .await @@ -173,9 +214,10 @@ impl DemoArgs { let release_branch = match &self.release { Some(release) => { - ensure!(release_list.contains_key(release), NoSuchReleaseSnafu { - release - }); + ensure!( + release_list.contains_key(release), + NoSuchReleaseSnafu { release } + ); if release == "dev" { "main".to_string() @@ -185,7 +227,7 @@ impl DemoArgs { } None => { let (release_name, _) = release_list.first().context(LatestReleaseSnafu)?; - format!("release-{release}", release = release_name,) + format!("release-{release_name}") } }; @@ -200,18 +242,21 @@ impl DemoArgs { .context(BuildListSnafu)?; match &self.subcommand { - DemoCommands::List(args) => list_cmd(args, cli, list).await, - DemoCommands::Describe(args) => describe_cmd(args, cli, list).await, + DemoCommands::List(args) => list_cmd(args, list).await, + DemoCommands::Describe(args) => describe_cmd(args, list).await, DemoCommands::Install(args) => { install_cmd(args, cli, list, &transfer_client, &release_branch).await } + DemoCommands::Uninstall(args) => { + uninstall_cmd(args, cli, list, &transfer_client, &release_branch).await + } } } } /// Print out a list of demos, either as a table (plain), JSON or YAML #[instrument(skip_all, fields(indicatif.pb_show = true))] -async fn list_cmd(args: &DemoListArgs, cli: &Cli, list: demo::List) -> Result { +async fn list_cmd(args: &DemoListArgs, list: demo::List) -> Result { info!("Listing demos"); Span::current().pb_set_message("Fetching demo information"); @@ -238,7 +283,7 @@ async fn list_cmd(args: &DemoListArgs, cli: &Cli, list: demo::List) -> Result Result Result { +async fn describe_cmd(args: &DemoDescribeArgs, list: demo::List) -> Result { info!(demo_name = %args.demo_name, "Describing demo"); Span::current().pb_set_message("Fetching demo information"); @@ -298,7 +339,7 @@ async fn describe_cmd( // TODO (Techassi): Add parameter output - let mut result = cli.result(); + let mut result = Cli::result(); result .with_command_hint( @@ -333,10 +374,13 @@ async fn install_cmd( release_branch: &str, ) -> Result { info!(demo_name = %args.demo_name, "Installing demo"); - Span::current().pb_set_message("Installing demo"); + Span::current().pb_set_message(&format!( + "Installing demo {demo_name}", + demo_name = args.demo_name + )); // Init result output and progress output - let mut output = cli.result(); + let mut output = Cli::result(); let demo = list.get(&args.demo_name).ok_or(CmdError::NoSuchDemo { name: args.demo_name.clone(), @@ -377,15 +421,54 @@ async fn install_cmd( .parse_insert(("stackable.tech/stack", &demo.stack)) .context(BuildLabelsSnafu)?; + // `stackablectl demo uninstall` relies on namespace deletion, suggest installing in a non-default namespace + // It should still be possible to skip that if either uninstall is not needed + // or installing an older version of the demo which only supports the 'default' namespace + let non_default_namespace_confirmation = || -> Result { + // Ask to install in a non-default namespace, currently suggesting the demo name as namespace name + Confirm::new() + .with_prompt( + format!( + "Demos installed in the {DEFAULT_NAMESPACE:?} namespace cannot be uninstalled with stackablectl. Install the demo in the {demo_namespace:?} namespace instead?", + demo_namespace = args.demo_name.clone()) + ) + .default(true) + .interact() + .context(ConfirmDialogSnafu) + }; + + let demo_namespace = if args.namespaces.namespace == DEFAULT_NAMESPACE { + if args.prompt_args.assume_yes + || tracing_indicatif::suspend_tracing_indicatif(non_default_namespace_confirmation)? + { + // User selected to install in suggested namespace + args.demo_name.clone() + } else { + // User selected to install in default namespace + args.namespaces.namespace.clone() + } + } else { + // User provided a non-default namespace with command argument + args.namespaces.namespace.clone() + }; + + let values_file = cli.get_values_file().context(PathOrUrlParseSnafu)?; + let operator_values = load_operator_values(values_file.as_ref(), transfer_client) + .await + .context(LoadOperatorValuesSnafu)?; + let install_parameters = DemoInstallParameters { + stack_name: demo.stack.clone(), + demo_name: args.demo_name.clone(), operator_namespace: args.namespaces.operator_namespace.clone(), - demo_namespace: args.namespaces.namespace.clone(), + demo_namespace: demo_namespace.clone(), stack_parameters: args.stack_parameters.clone(), parameters: args.parameters.clone(), skip_release: args.skip_release, stack_labels, labels, chart_source: ChartSourceType::from(cli.chart_type()), + operator_values, }; demo.install( @@ -414,11 +497,8 @@ async fn install_cmd( let stacklet_cmd = format!( "stackablectl stacklet list{option}", - option = if args.namespaces.namespace != DEFAULT_NAMESPACE { - format!( - " --namespace {namespace}", - namespace = args.namespaces.namespace - ) + option = if demo_namespace != DEFAULT_NAMESPACE { + format!(" --namespace {namespace}", namespace = demo_namespace) } else { "".into() } @@ -434,3 +514,100 @@ async fn install_cmd( Ok(output.render()) } + +#[instrument(skip_all, fields( + demo_name = %args.demo_name, + %release_branch, + indicatif.pb_show = true +))] +async fn uninstall_cmd( + args: &DemoUninstallArgs, + cli: &Cli, + list: demo::List, + transfer_client: &xfer::Client, + release_branch: &str, +) -> Result { + // Init result output and progress output + let mut output = Cli::result(); + + ensure!( + args.namespaces.namespace != DEFAULT_NAMESPACE, + UninstallFromDefaultNamespaceSnafu { + demo_name: args.demo_name.clone(), + } + ); + + let proceed_with_uninstall = args.prompt_args.assume_yes + || { + tracing_indicatif::suspend_tracing_indicatif(|| -> Result { + Confirm::new() + .with_prompt( + format!( + "Uninstalling the demo {demo_name:?} will delete the {demo_namespace:?} namespace. This action cannot be undone. Proceed?", + demo_name = args.demo_name.clone(), + demo_namespace = args.namespaces.namespace.clone()) + ) + .default(true) + .interact() + .context(ConfirmDialogSnafu) + })? + }; + + if !proceed_with_uninstall { + output.with_output(format!( + "Uninstalling demo {demo_name:?} canceled", + demo_name = args.demo_name.clone() + )); + + return Ok(output.render()); + } + + info!(demo_name = %args.demo_name, "Uninstalling demo"); + Span::current().pb_set_message(&format!( + "Uninstalling demo {demo_name}", + demo_name = args.demo_name + )); + + let demo = list.get(&args.demo_name).ok_or(CmdError::NoSuchDemo { + name: args.demo_name.clone(), + })?; + + let stack_files = cli + .get_stack_files(release_branch) + .context(PathOrUrlParseSnafu)?; + let stack_list = stack::StackList::build(&stack_files, transfer_client) + .await + .context(BuildListSnafu)?; + + let client = Client::new().await.context(KubeClientCreateSnafu)?; + + let release_files = cli.get_release_files().context(PathOrUrlParseSnafu)?; + let release_list = release::ReleaseList::build(&release_files, transfer_client) + .await + .context(BuildListSnafu)?; + + demo.uninstall( + stack_list, + release_list, + DemoUninstallParameters { + demo_name: args.demo_name.clone(), + operator_namespace: args.namespaces.operator_namespace.clone(), + demo_namespace: args.namespaces.namespace.clone(), + skip_operators: args.skip_operators_and_crds, + skip_crds: args.skip_operators_and_crds, + }, + &client, + transfer_client, + ) + .await + .context(UninstallDemoSnafu { + demo_name: args.demo_name.clone(), + })?; + + output.with_output(format!( + "Uninstalled demo {demo_name:?}", + demo_name = args.demo_name + )); + + Ok(output.render()) +} diff --git a/rust/stackablectl/src/cmds/mod.rs b/rust/stackablectl/src/cmds/mod.rs index 039e1fd8..e6c82df5 100644 --- a/rust/stackablectl/src/cmds/mod.rs +++ b/rust/stackablectl/src/cmds/mod.rs @@ -6,3 +6,4 @@ pub mod operator; pub mod release; pub mod stack; pub mod stacklet; +pub mod version; diff --git a/rust/stackablectl/src/cmds/operator.rs b/rust/stackablectl/src/cmds/operator.rs index cb2e903c..37a8c26c 100644 --- a/rust/stackablectl/src/cmds/operator.rs +++ b/rust/stackablectl/src/cmds/operator.rs @@ -1,4 +1,4 @@ -use std::collections::HashMap; +use std::{collections::HashMap, sync::Arc}; use clap::{Args, Subcommand}; use comfy_table::{ @@ -23,7 +23,10 @@ use stackable_cockpit::{ self, chartsource::ChartSourceMetadata, k8s::{self, Client}, + path::PathOrUrlParseError, + yaml::values_for_operator, }, + xfer, }; use tracing::{Span, debug, info, instrument}; use tracing_indicatif::{indicatif_println, span_ext::IndicatifSpanExt}; @@ -31,7 +34,7 @@ use tracing_indicatif::{indicatif_println, span_ext::IndicatifSpanExt}; use crate::{ args::{CommonClusterArgs, CommonClusterArgsError}, cli::{Cli, OutputType}, - utils::{InvalidRepoNameError, helm_repo_name_to_repo_url}, + utils::{InvalidRepoNameError, helm_repo_name_to_repo_url, load_operator_values}, }; const INSTALL_AFTER_HELP_TEXT: &str = "Examples: @@ -86,20 +89,19 @@ pub struct OperatorDescribeArgs { pub struct OperatorInstallArgs { /// Operator(s) to install #[arg(name = "OPERATORS", required = true)] - #[arg(long_help = "Operator(s) to install + #[arg(long_help = "Operator(s) to install (space separated) -Must have the form 'name[=version]'. If no version is specified the latest -nightly version - build from the main branch - will be used. Possible valid -values are: +Each must have the form 'name[=version]'. +If no version is specified the latest nightly version - built from the main branch - will be used. +Possible valid values are: -- superset -- superset=0.3.0 -- superset=0.3.0-nightly -- superset=0.3.0-pr123 +- superset (equivalent to superset=0.0.0-dev) +- superset=25.3.0 +- superset=0.0.0-pr123 (Pull Request build) Use \"stackablectl operator list\" to list available versions for all operators Use \"stackablectl operator describe \" to get available versions for one operator")] - operators: Vec, + operators: Vec, /// Namespace in the cluster used to deploy the operators #[arg(long, default_value = DEFAULT_OPERATOR_NAMESPACE, visible_aliases(["operator-ns"]))] @@ -157,7 +159,10 @@ pub enum CmdError { SerializeJsonOutput { source: serde_json::Error }, #[snafu(display("failed to create Kubernetes client"))] - KubeClientCreate { source: k8s::Error }, + KubeClientCreate { + #[snafu(source(from(k8s::Error, Box::new)))] + source: Box, + }, #[snafu(display("failed to create namespace {namespace:?}"))] NamespaceCreate { @@ -167,6 +172,12 @@ pub enum CmdError { #[snafu(display("OCI error"))] OciError { source: oci::Error }, + + #[snafu(display("path/url parse error"))] + PathOrUrlParse { source: PathOrUrlParseError }, + + #[snafu(display("failed to load operator values"))] + LoadOperatorValues { source: crate::utils::Error }, } /// This list contains a list of operator version grouped by stable, test and @@ -176,13 +187,17 @@ pub enum CmdError { pub struct OperatorVersionList(HashMap>); impl OperatorArgs { - pub async fn run(&self, cli: &Cli) -> Result { + pub async fn run( + &self, + cli: &Cli, + transfer_client: Arc, + ) -> Result { match &self.subcommand { OperatorCommands::List(args) => list_cmd(args, cli).await, OperatorCommands::Describe(args) => describe_cmd(args, cli).await, - OperatorCommands::Install(args) => install_cmd(args, cli).await, - OperatorCommands::Uninstall(args) => uninstall_cmd(args, cli), - OperatorCommands::Installed(args) => installed_cmd(args, cli), + OperatorCommands::Install(args) => install_cmd(args, cli, transfer_client).await, + OperatorCommands::Uninstall(args) => uninstall_cmd(args), + OperatorCommands::Installed(args) => installed_cmd(args), } } } @@ -225,7 +240,7 @@ async fn list_cmd(args: &OperatorListArgs, cli: &Cli) -> Result Result Result Result { +async fn install_cmd( + args: &OperatorInstallArgs, + cli: &Cli, + transfer_client: Arc, +) -> Result { info!("Installing operator(s)"); Span::current().pb_set_message("Installing operator(s)"); + let operators: Vec<&operator::OperatorSpec> = args + .operators + .iter() + .filter_map(|operator| match operator { + coffee::OperatorOrCoffee::Coffee => { + indicatif_println!("{}", coffee::COFFEE_ASCII_ART); + None + } + coffee::OperatorOrCoffee::Operator(spec) => Some(spec), + }) + .collect(); + + // In case no operators need to be installed (e.g. coffee was already installed), there is no + // need to connect to Kubernetes and potentially produce error messages. + if operators.is_empty() { + return Ok(String::new()); + } + args.local_cluster .install_if_needed() .await @@ -326,11 +363,19 @@ async fn install_cmd(args: &OperatorInstallArgs, cli: &Cli) -> Result Result Result Result Result { +fn uninstall_cmd(args: &OperatorUninstallArgs) -> Result { info!("Uninstalling operator(s)"); Span::current().pb_set_message("Uninstalling operator(s)"); @@ -369,7 +414,7 @@ fn uninstall_cmd(args: &OperatorUninstallArgs, cli: &Cli) -> Result Result Result { +fn installed_cmd(args: &OperatorInstalledArgs) -> Result { info!("Listing installed operators"); Span::current().pb_set_message("Fetching operator information"); @@ -441,7 +486,7 @@ fn installed_cmd(args: &OperatorInstalledArgs, cli: &Cli) -> Result Ok(vec![]), } } + +mod coffee { + use std::str::FromStr; + + pub const COFFEE_ASCII_ART: &str = r#" + ) ) + ( ( + .------. + | |] + \ / + `----' + + Psst... "coffee" is not an operator, but we get it. + Stackable runs on coffee too. Have a great day! ☕ +"#; + + #[derive(Clone, Debug)] + pub enum OperatorOrCoffee { + Operator(super::operator::OperatorSpec), + Coffee, + } + + impl FromStr for OperatorOrCoffee { + type Err = super::operator::SpecParseError; + + fn from_str(s: &str) -> Result { + match s { + "coffee" | "coffe" => Ok(OperatorOrCoffee::Coffee), + _ => s.parse().map(OperatorOrCoffee::Operator), + } + } + } +} diff --git a/rust/stackablectl/src/cmds/release.rs b/rust/stackablectl/src/cmds/release.rs index cad3b538..39778f0a 100644 --- a/rust/stackablectl/src/cmds/release.rs +++ b/rust/stackablectl/src/cmds/release.rs @@ -1,3 +1,5 @@ +use std::sync::Arc; + use clap::{Args, Subcommand}; use comfy_table::{ ContentArrangement, Table, @@ -18,7 +20,7 @@ use stackable_cockpit::{ k8s::{self, Client}, path::PathOrUrlParseError, }, - xfer::{self, cache::Cache}, + xfer, }; use tracing::{Span, debug, info, instrument}; use tracing_indicatif::span_ext::IndicatifSpanExt as _; @@ -26,6 +28,7 @@ use tracing_indicatif::span_ext::IndicatifSpanExt as _; use crate::{ args::{CommonClusterArgs, CommonClusterArgsError}, cli::{Cli, OutputType}, + utils::load_operator_values, }; #[derive(Debug, Args)] @@ -163,13 +166,19 @@ pub enum CmdError { source: namespace::Error, namespace: String, }, + + #[snafu(display("failed to load operator values"))] + LoadOperatorValues { source: crate::utils::Error }, } impl ReleaseArgs { - pub async fn run(&self, cli: &Cli, cache: Cache) -> Result { + pub async fn run( + &self, + cli: &Cli, + transfer_client: Arc, + ) -> Result { debug!("Handle release args"); - let transfer_client = xfer::Client::new_with(cache); let files = cli.get_release_files().context(PathOrUrlParseSnafu)?; let release_list = release::ReleaseList::build(&files, &transfer_client) .await @@ -180,10 +189,12 @@ impl ReleaseArgs { } match &self.subcommand { - ReleaseCommands::List(args) => list_cmd(args, cli, release_list).await, - ReleaseCommands::Describe(args) => describe_cmd(args, cli, release_list).await, - ReleaseCommands::Install(args) => install_cmd(args, cli, release_list).await, - ReleaseCommands::Uninstall(args) => uninstall_cmd(args, cli, release_list).await, + ReleaseCommands::List(args) => list_cmd(args, release_list).await, + ReleaseCommands::Describe(args) => describe_cmd(args, release_list).await, + ReleaseCommands::Install(args) => { + install_cmd(args, cli, release_list, &transfer_client).await + } + ReleaseCommands::Uninstall(args) => uninstall_cmd(args, release_list).await, ReleaseCommands::Upgrade(args) => { upgrade_cmd(args, cli, release_list, &transfer_client).await } @@ -191,10 +202,9 @@ impl ReleaseArgs { } } -#[instrument(skip(cli, release_list), fields(indicatif.pb_show = true))] +#[instrument(skip(release_list), fields(indicatif.pb_show = true))] async fn list_cmd( args: &ReleaseListArgs, - cli: &Cli, release_list: release::ReleaseList, ) -> Result { info!("Listing releases"); @@ -226,7 +236,7 @@ async fn list_cmd( ]); } - let mut result = cli.result(); + let mut result = Cli::result(); result .with_command_hint( @@ -246,10 +256,9 @@ async fn list_cmd( } } -#[instrument(skip(cli, release_list), fields(indicatif.pb_show = true))] +#[instrument(skip(release_list), fields(indicatif.pb_show = true))] async fn describe_cmd( args: &ReleaseDescribeArgs, - cli: &Cli, release_list: release::ReleaseList, ) -> Result { info!(release = %args.release, "Describing release"); @@ -289,7 +298,7 @@ async fn describe_cmd( product_table.to_string().as_str(), ]); - let mut result = cli.result(); + let mut result = Cli::result(); result .with_command_hint( @@ -313,18 +322,19 @@ async fn describe_cmd( } } -#[instrument(skip(cli, release_list), fields(indicatif.pb_show = true))] +#[instrument(skip(cli, release_list, transfer_client), fields(indicatif.pb_show = true))] async fn install_cmd( args: &ReleaseInstallArgs, cli: &Cli, release_list: release::ReleaseList, + transfer_client: &xfer::Client, ) -> Result { info!(release = %args.release, "Installing release"); Span::current().pb_set_message("Installing release"); match release_list.get(&args.release) { Some(release) => { - let mut output = cli.result(); + let mut output = Cli::result(); // Install local cluster if needed args.local_cluster @@ -341,12 +351,18 @@ async fn install_cmd( namespace: args.operator_namespace.clone(), })?; + let values_file = cli.get_values_file().context(PathOrUrlParseSnafu)?; + let operator_values = load_operator_values(values_file.as_ref(), transfer_client) + .await + .context(LoadOperatorValuesSnafu)?; + release .install( &args.included_products, &args.excluded_products, &args.operator_namespace, &ChartSourceType::from(cli.chart_type()), + &operator_values, ) .await .context(ReleaseInstallSnafu)?; @@ -381,7 +397,7 @@ async fn upgrade_cmd( match release_list.get(&args.release) { Some(release) => { - let mut output = cli.result(); + let mut output = Cli::result(); let client = Client::new().await.context(KubeClientCreateSnafu)?; // Get all currently installed operators to only upgrade those @@ -426,6 +442,11 @@ async fn upgrade_cmd( .await .context(CrdUpgradeSnafu)?; + let values_file = cli.get_values_file().context(PathOrUrlParseSnafu)?; + let operator_values = load_operator_values(values_file.as_ref(), transfer_client) + .await + .context(LoadOperatorValuesSnafu)?; + // Install the new operator release release .install( @@ -433,6 +454,7 @@ async fn upgrade_cmd( &args.excluded_products, &args.operator_namespace, &ChartSourceType::from(cli.chart_type()), + &operator_values, ) .await .context(ReleaseInstallSnafu)?; @@ -455,10 +477,9 @@ async fn upgrade_cmd( } } -#[instrument(skip(cli, release_list), fields(indicatif.pb_show = true))] +#[instrument(skip(release_list), fields(indicatif.pb_show = true))] async fn uninstall_cmd( args: &ReleaseUninstallArgs, - cli: &Cli, release_list: release::ReleaseList, ) -> Result { Span::current().pb_set_message("Uninstalling release"); @@ -469,7 +490,7 @@ async fn uninstall_cmd( .uninstall(&Vec::new(), &Vec::new(), &args.operator_namespace) .context(ReleaseUninstallSnafu)?; - let mut result = cli.result(); + let mut result = Cli::result(); result .with_command_hint("stackablectl release list", "list available releases") diff --git a/rust/stackablectl/src/cmds/stack.rs b/rust/stackablectl/src/cmds/stack.rs index a027166d..d57f60a4 100644 --- a/rust/stackablectl/src/cmds/stack.rs +++ b/rust/stackablectl/src/cmds/stack.rs @@ -1,8 +1,11 @@ +use std::sync::Arc; + use clap::{Args, Subcommand}; use comfy_table::{ ContentArrangement, Table, presets::{NOTHING, UTF8_FULL}, }; +use dialoguer::Confirm; use snafu::{OptionExt as _, ResultExt, Snafu, ensure}; use stackable_cockpit::{ common::list, @@ -10,21 +13,22 @@ use stackable_cockpit::{ platform::{ operator::ChartSourceType, release, - stack::{self, StackInstallParameters}, + stack::{self, StackInstallParameters, StackUninstallParameters}, }, utils::{ k8s::{self, Client}, path::PathOrUrlParseError, }, - xfer::{self, cache::Cache}, + xfer, }; use stackable_operator::kvp::{LabelError, Labels}; use tracing::{Span, debug, info, instrument}; use tracing_indicatif::span_ext::IndicatifSpanExt as _; use crate::{ - args::{CommonClusterArgs, CommonClusterArgsError, CommonNamespaceArgs}, + args::{CommonClusterArgs, CommonClusterArgsError, CommonNamespaceArgs, CommonPromptArgs}, cli::{Cli, OutputType}, + utils::load_operator_values, }; #[derive(Debug, Args)] @@ -50,6 +54,11 @@ pub enum StackCommands { /// Install a specific stack #[command(aliases(["i", "in"]))] Install(StackInstallArgs), + + /// Uninstall a specific stack. Caution: This will delete the provided stack namespace, + /// the operators and provided operator namespace, and all Stackable CRDs + #[command(aliases(["u", "un"]))] + Uninstall(StackUninstallArgs), } #[derive(Debug, Args)] @@ -69,7 +78,7 @@ pub struct StackDescribeArgs { #[derive(Debug, Args)] pub struct StackInstallArgs { - /// Name of the stack to describe + /// Name of the stack to install stack_name: String, /// Skip the installation of the release during the stack install process @@ -108,6 +117,25 @@ Use \"stackablectl stack describe \" to list available parameters for eac #[command(flatten)] namespaces: CommonNamespaceArgs, + + #[command(flatten)] + prompt_args: CommonPromptArgs, +} + +#[derive(Debug, Args)] +pub struct StackUninstallArgs { + /// Name of the stack to uninstall + stack_name: String, + + #[command(flatten)] + namespaces: CommonNamespaceArgs, + + /// Skip uninstalling Stackable operators and CRDs + #[arg(long)] + skip_operators_and_crds: bool, + + #[command(flatten)] + prompt_args: CommonPromptArgs, } #[derive(Debug, Snafu)] @@ -135,23 +163,47 @@ pub enum CmdError { #[snafu(display("failed to install stack {stack_name:?}"))] InstallStack { - source: stack::Error, + #[snafu(source(from(stack::Error, Box::new)))] + source: Box, + stack_name: String, + }, + + #[snafu(display("failed to confirm user input"))] + ConfirmDialog { source: dialoguer::Error }, + + #[snafu(display("failed to uninstall stack {stack_name:?}"))] + UninstallStack { + #[snafu(source(from(stack::Error, Box::new)))] + source: Box, stack_name: String, }, + #[snafu(display( + "stack {stack_name:?} cannot be uninstalled from the {DEFAULT_NAMESPACE:?} namespace, because Kubernetes does not allow deleting it. Pass --namespace if the stack was installed in a different namespace, or delete the stack's resources manually" + ))] + UninstallFromDefaultNamespace { stack_name: String }, + #[snafu(display("failed to build labels for stack resources"))] BuildLabels { source: LabelError }, #[snafu(display("failed to create Kubernetes client"))] - KubeClientCreate { source: k8s::Error }, + KubeClientCreate { + #[snafu(source(from(k8s::Error, Box::new)))] + source: Box, + }, + + #[snafu(display("failed to load operator values"))] + LoadOperatorValues { source: crate::utils::Error }, } impl StackArgs { - pub async fn run(&self, cli: &Cli, cache: Cache) -> Result { + pub async fn run( + &self, + cli: &Cli, + transfer_client: Arc, + ) -> Result { debug!("Handle stack args"); - let transfer_client = xfer::Client::new_with(cache); - let release_files = cli.get_release_files().context(PathOrUrlParseSnafu)?; let release_list = release::ReleaseList::build(&release_files, &transfer_client) .await @@ -159,9 +211,10 @@ impl StackArgs { let release_branch = match &self.release { Some(release) => { - ensure!(release_list.contains_key(release), NoSuchReleaseSnafu { - release - }); + ensure!( + release_list.contains_key(release), + NoSuchReleaseSnafu { release } + ); if release == "dev" { "main".to_string() @@ -171,7 +224,7 @@ impl StackArgs { } None => { let (release_name, _) = release_list.first().context(LatestReleaseSnafu)?; - format!("release-{release}", release = release_name,) + format!("release-{release_name}") } }; @@ -183,21 +236,20 @@ impl StackArgs { .context(BuildListSnafu)?; match &self.subcommand { - StackCommands::List(args) => list_cmd(args, cli, stack_list), - StackCommands::Describe(args) => describe_cmd(args, cli, stack_list), + StackCommands::List(args) => list_cmd(args, stack_list), + StackCommands::Describe(args) => describe_cmd(args, stack_list), StackCommands::Install(args) => { install_cmd(args, cli, stack_list, &transfer_client).await } + StackCommands::Uninstall(args) => { + uninstall_cmd(args, cli, stack_list, &transfer_client).await + } } } } #[instrument(skip_all, fields(indicatif.pb_show = true))] -fn list_cmd( - args: &StackListArgs, - cli: &Cli, - stack_list: stack::StackList, -) -> Result { +fn list_cmd(args: &StackListArgs, stack_list: stack::StackList) -> Result { info!("Listing stacks"); Span::current().pb_set_message("Fetching stack information"); @@ -223,7 +275,7 @@ fn list_cmd( ]); } - let mut result = cli.result(); + let mut result = Cli::result(); result .with_command_hint( @@ -246,7 +298,6 @@ fn list_cmd( #[instrument(skip_all, fields(indicatif.pb_show = true))] fn describe_cmd( args: &StackDescribeArgs, - cli: &Cli, stack_list: stack::StackList, ) -> Result { info!(stack_name = %args.stack_name, "Describing stack"); @@ -287,7 +338,7 @@ fn describe_cmd( .add_row(vec!["LABELS", stack.labels.join(", ").as_str()]) .add_row(vec!["PARAMETERS", parameter_table.to_string().as_str()]); - let mut result = cli.result(); + let mut result = Cli::result(); result .with_command_hint( @@ -317,7 +368,10 @@ async fn install_cmd( transfer_client: &xfer::Client, ) -> Result { info!(stack_name = %args.stack_name, "Installing stack"); - Span::current().pb_set_message("Installing stack"); + Span::current().pb_set_message(&format!( + "Installing stack {stack_name}", + stack_name = args.stack_name + )); let files = cli.get_release_files().context(PathOrUrlParseSnafu)?; let release_list = release::ReleaseList::build(&files, transfer_client) @@ -326,7 +380,7 @@ async fn install_cmd( match stack_list.get(&args.stack_name) { Some(stack_spec) => { - let mut output = cli.result(); + let mut output = Cli::result(); // Install local cluster if needed args.local_cluster @@ -345,15 +399,55 @@ async fn install_cmd( ]) .context(BuildLabelsSnafu)?; + // `stackablectl stack uninstall` relies on namespace deletion, suggest installing in a non-default namespace + // It should still be possible to skip that if either uninstall is not needed + // or installing an older version of the stack which only supports the 'default' namespace + let non_default_namespace_confirmation = || -> Result { + // Ask to install in a non-default namespace, currently suggesting the stack name as namespace name + Confirm::new() + .with_prompt( + format!( + "Stacks installed in the {DEFAULT_NAMESPACE:?} namespace cannot be uninstalled with stackablectl. Install the stack in the {stack_namespace:?} namespace instead?", + stack_namespace = args.stack_name.clone()) + ) + .default(true) + .interact() + .context(ConfirmDialogSnafu) + }; + + let stack_namespace = if args.namespaces.namespace == DEFAULT_NAMESPACE { + if args.prompt_args.assume_yes + || tracing_indicatif::suspend_tracing_indicatif( + non_default_namespace_confirmation, + )? + { + // User selected to install in suggested namespace + args.stack_name.clone() + } else { + // User selected to install in default namespace + args.namespaces.namespace.clone() + } + } else { + // User provided a non-default namespace with command argument + args.namespaces.namespace.clone() + }; + + let values_file = cli.get_values_file().context(PathOrUrlParseSnafu)?; + let operator_values = load_operator_values(values_file.as_ref(), transfer_client) + .await + .context(LoadOperatorValuesSnafu)?; + let install_parameters = StackInstallParameters { - operator_namespace: args.namespaces.operator_namespace.clone(), - stack_namespace: args.namespaces.namespace.clone(), stack_name: args.stack_name.clone(), + // There is no demo when installing only a stack + demo_name: None, + operator_namespace: args.namespaces.operator_namespace.clone(), + stack_namespace: stack_namespace.clone(), parameters: args.parameters.clone(), skip_release: args.skip_release, - demo_name: None, labels, chart_source: ChartSourceType::from(cli.chart_type()), + operator_values, }; stack_spec @@ -377,11 +471,8 @@ async fn install_cmd( let stacklet_cmd = format!( "stackablectl stacklet list{option}", - option = if args.namespaces.namespace != DEFAULT_NAMESPACE { - format!( - " --namespace {namespace}", - namespace = args.namespaces.namespace - ) + option = if stack_namespace != DEFAULT_NAMESPACE { + format!(" --namespace {namespace}", namespace = stack_namespace) } else { "".into() } @@ -400,3 +491,88 @@ async fn install_cmd( None => Ok("No such stack".into()), } } + +#[instrument(skip(cli, stack_list, transfer_client), fields(indicatif.pb_show = true))] +async fn uninstall_cmd( + args: &StackUninstallArgs, + cli: &Cli, + stack_list: stack::StackList, + transfer_client: &xfer::Client, +) -> Result { + let mut output = Cli::result(); + + ensure!( + args.namespaces.namespace != DEFAULT_NAMESPACE, + UninstallFromDefaultNamespaceSnafu { + stack_name: args.stack_name.clone(), + } + ); + + let proceed_with_uninstall = args.prompt_args.assume_yes + || tracing_indicatif::suspend_tracing_indicatif(|| -> Result { + Confirm::new() + .with_prompt( + format!( + "Uninstalling the stack {stack_name:?} will delete the {stack_namespace:?} namespace. This action cannot be undone. Proceed?", + stack_name = args.stack_name.clone(), + stack_namespace = args.namespaces.namespace.clone()) + ) + .default(true) + .interact() + .context(ConfirmDialogSnafu) + })?; + + if !proceed_with_uninstall { + output.with_output(format!( + "Uninstalling stack {stack_name:?} canceled", + stack_name = args.stack_name.clone() + )); + + return Ok(output.render()); + } + + info!(stack_name = %args.stack_name, "Uninstalling stack"); + Span::current().pb_set_message(&format!( + "Uninstalling stack {stack_name}", + stack_name = args.stack_name + )); + + match stack_list.get(&args.stack_name) { + Some(stack) => { + let client = Client::new().await.context(KubeClientCreateSnafu)?; + + let files = cli.get_release_files().context(PathOrUrlParseSnafu)?; + let release_list = release::ReleaseList::build(&files, transfer_client) + .await + .context(BuildListSnafu)?; + + stack + .uninstall( + release_list, + StackUninstallParameters { + stack_name: args.stack_name.clone(), + // There is no demo when uninstalling only a stack + demo_name: None, + operator_namespace: args.namespaces.operator_namespace.clone(), + stack_namespace: args.namespaces.namespace.clone(), + skip_operators: args.skip_operators_and_crds, + skip_crds: args.skip_operators_and_crds, + }, + &client, + transfer_client, + ) + .await + .context(UninstallStackSnafu { + stack_name: args.stack_name.clone(), + })?; + + output.with_output(format!( + "Uninstalled stack {stack_name:?}", + stack_name = args.stack_name + )); + + Ok(output.render()) + } + None => Ok("No such stack".into()), + } +} diff --git a/rust/stackablectl/src/cmds/stacklet.rs b/rust/stackablectl/src/cmds/stacklet.rs index 62c8aff2..475ba4d5 100644 --- a/rust/stackablectl/src/cmds/stacklet.rs +++ b/rust/stackablectl/src/cmds/stacklet.rs @@ -82,16 +82,16 @@ pub enum CmdError { } impl StackletArgs { - pub async fn run(&self, cli: &Cli) -> Result { + pub async fn run(&self) -> Result { match &self.subcommand { - StackletCommands::List(args) => list_cmd(args, cli).await, + StackletCommands::List(args) => list_cmd(args).await, StackletCommands::Credentials(args) => credentials_cmd(args).await, } } } #[instrument(skip_all, fields(indicatif.pb_show = true))] -async fn list_cmd(args: &StackletListArgs, cli: &Cli) -> Result { +async fn list_cmd(args: &StackletListArgs) -> Result { info!("Listing installed stacklets"); Span::current().pb_set_message("Fetching stacklet information"); @@ -105,7 +105,7 @@ async fn list_cmd(args: &StackletListArgs, cli: &Cli) -> Result Result) -> Result { + match &self.subcommand { + VersionCommand::Check => check_cmd(client).await, + } + } +} + +#[instrument(skip_all)] +async fn check_cmd(client: Arc) -> Result { + let output = release_check::version_notice_output(client, true, false) + .await + .context(RetrieveLatestReleaseSnafu)? + .unwrap_or_default(); + + let mut result = Cli::result(); + result.with_output(output); + + Ok(result.render()) +} diff --git a/rust/stackablectl/src/config.rs b/rust/stackablectl/src/config.rs new file mode 100644 index 00000000..4bbbae07 --- /dev/null +++ b/rust/stackablectl/src/config.rs @@ -0,0 +1,56 @@ +use std::path::{Path, PathBuf}; + +use serde::Deserialize; +use snafu::{ResultExt, Snafu}; + +#[derive(Debug, Default, Deserialize)] +pub struct UserConfig { + pub version: VersionOptions, +} + +#[derive(Debug, Deserialize)] +pub struct VersionOptions { + pub check_enabled: bool, +} + +#[derive(Debug, Snafu)] +pub enum Error { + #[snafu(display("failed to read config file from {path}", path = path.display()))] + Read { + source: std::io::Error, + path: PathBuf, + }, + + #[snafu(display("failed to deserialize config file located at {path} as TOML", path = path.display()))] + Deserialize { + source: toml::de::Error, + path: PathBuf, + }, +} + +impl UserConfig { + /// Reads [`UserConfig`] from `path` or if not found, falls back to the default config. + pub fn from_file_or_default

(path: P) -> Result + where + P: AsRef, + { + let path = path.as_ref(); + + match std::fs::read_to_string(path) { + Ok(contents) => toml::from_str(&contents).context(DeserializeSnafu { path }), + Err(err) if err.kind() == std::io::ErrorKind::NotFound => Ok(Self::default()), + Err(err) => Err(Error::Read { + path: path.to_path_buf(), + source: err, + }), + } + } +} + +impl Default for VersionOptions { + fn default() -> Self { + Self { + check_enabled: true, + } + } +} diff --git a/rust/stackablectl/src/lib.rs b/rust/stackablectl/src/lib.rs index f49b1be7..4d994091 100644 --- a/rust/stackablectl/src/lib.rs +++ b/rust/stackablectl/src/lib.rs @@ -1,6 +1,18 @@ pub mod args; pub mod cli; pub mod cmds; +pub mod config; pub mod constants; pub mod output; +pub mod release_check; pub mod utils; + +pub mod built_info { + use std::{str::FromStr, sync::LazyLock}; + + include!(concat!(env!("OUT_DIR"), "/built.rs")); + + pub static PKG_SEMVER: LazyLock = LazyLock::new(|| { + semver::Version::from_str(PKG_VERSION).expect("must be a valid semantic version") + }); +} diff --git a/rust/stackablectl/src/main.rs b/rust/stackablectl/src/main.rs index d6f96b24..f7f80aa3 100644 --- a/rust/stackablectl/src/main.rs +++ b/rust/stackablectl/src/main.rs @@ -19,7 +19,14 @@ use tracing_subscriber::{ #[tokio::main] async fn main() -> Result<(), Error> { // Parse the CLI args and commands - let app = Cli::parse(); + let cli = Cli::parse(); + + // As stackable-operator pulls in ring and reqwest >= 0.13 pulls in aws_lc_rs, we need + // to explicitly tell rustls what provider to use. As other operators use ring, we use + // that for consistency reasons here as well. + rustls::crypto::ring::default_provider() + .install_default() + .expect("failed to install ring rustls provider"); // Construct the tracing subscriber let format = fmt::format() @@ -35,7 +42,7 @@ async fn main() -> Result<(), Error> { ) .with_progress_style(PROGRESS_SPINNER_STYLE.clone()); - if let Some(level) = app.log_level { + if let Some(level) = cli.log_level { tracing_subscriber::registry() .with( fmt::layer() @@ -62,10 +69,10 @@ async fn main() -> Result<(), Error> { } } - match app.run().await { + match cli.run().await { Ok(result) => indicatif_println!("{result}"), Err(err) => { - let mut output = app.error(); + let mut output = Cli::error(); output.with_error_report(err); indicatif_eprintln!("{error}", error = output.render()); diff --git a/rust/stackablectl/src/output/mod.rs b/rust/stackablectl/src/output/mod.rs index 20ef91ef..44e04a24 100644 --- a/rust/stackablectl/src/output/mod.rs +++ b/rust/stackablectl/src/output/mod.rs @@ -55,7 +55,7 @@ where let mut report = String::new(); // Print top most error - write!(report, "An unrecoverable error occured: {self}\n\n")?; + write!(report, "An unrecoverable error occurred: {self}\n\n")?; writeln!( report, "Caused by these errors (recent errors listed first):" diff --git a/rust/stackablectl/src/output/templates/result.tpl b/rust/stackablectl/src/output/templates/result.tpl index c4d57e06..19434ad6 100644 --- a/rust/stackablectl/src/output/templates/result.tpl +++ b/rust/stackablectl/src/output/templates/result.tpl @@ -2,19 +2,17 @@ {% for pre_hint in pre_hints -%} {{ pre_hint }} {% endfor %} -{% endif -%} -{%- if output | length != 0 %} -{{ output }} -{%- endif %} +{% endif -%} +{%- if output | length != 0 %}{{ output }}{% endif -%} +{% if command_hints | length != 0 %} -{% if command_hints | length != 0 -%} {% for command_hint in command_hints -%} {{ command_hint }} {% endfor -%} {% endif -%} +{% if post_hints | length != 0 %} -{% if post_hints | length != 0 -%} {% for post_hint in post_hints -%} {{ post_hint }} {% endfor -%} diff --git a/rust/stackablectl/src/release_check.rs b/rust/stackablectl/src/release_check.rs new file mode 100644 index 00000000..36ab59e5 --- /dev/null +++ b/rust/stackablectl/src/release_check.rs @@ -0,0 +1,86 @@ +use std::{str::FromStr, sync::Arc}; + +use semver::Version; +use serde::Deserialize; +use snafu::{OptionExt, ResultExt, Snafu}; +use stackable_cockpit::{utils::path::PathOrUrl, xfer}; + +use crate::built_info::PKG_SEMVER; + +const URL: &str = "https://api.github.com/repos/stackabletech/stackable-cockpit/releases"; +const PREFIX: &str = "stackablectl-"; + +#[derive(Debug, Snafu)] +pub enum Error { + #[snafu(display("failed to retrieve list of releases"))] + RetrieveReleases { source: xfer::Error }, + + #[snafu(display("failed to find latest release"))] + FindLatestRelease, + + #[snafu(display("failed to parse {input} as semantic version"))] + ParseVersion { + source: semver::Error, + input: String, + }, +} + +#[derive(Debug, Deserialize)] +pub struct Release { + pub name: String, + pub prerelease: bool, + pub draft: bool, +} + +async fn fetch_latest_release_version_from_github( + client: Arc, +) -> Result { + let url = PathOrUrl::from_str(URL).expect("constant URL must be a valid URL"); + + let releases: Vec = client + .get(&url, &xfer::processor::Json::default()) + .await + .context(RetrieveReleasesSnafu)?; + + // We assume the list of releases is ordered (newest to oldest). + // If this ever changes, sorting needs to be done here instead. + let latest_release = releases + .into_iter() + // Filter out any draft and prerelease releases. + .filter(|release| !release.draft && !release.prerelease) + // Find a release starting with 'stackablectl-'. + .find(|release| release.name.starts_with(PREFIX)) + .context(FindLatestReleaseSnafu)?; + + let version = latest_release.name.trim_start_matches(PREFIX).to_owned(); + let version = Version::from_str(&version).context(ParseVersionSnafu { input: version })?; + + Ok(version) +} + +pub async fn version_notice_output( + client: Arc, + run_check: bool, + only_output_outdated: bool, +) -> Result, Error> { + if !run_check { + return Ok(None); + } + + let latest_version = fetch_latest_release_version_from_github(client).await?; + let current_version = &*PKG_SEMVER; + + let output = if &latest_version > current_version { + Some(format!( + "The current stackablectl version ({current_version}) is out-of-date. The latest version available is {latest_version}" + )) + } else if !only_output_outdated { + Some(format!( + "The current stackablectl version ({current_version}) is up-to-date" + )) + } else { + None + }; + + Ok(output) +} diff --git a/rust/stackablectl/src/utils.rs b/rust/stackablectl/src/utils.rs index 2c7a16a7..9d85a7de 100644 --- a/rust/stackablectl/src/utils.rs +++ b/rust/stackablectl/src/utils.rs @@ -1,12 +1,29 @@ use std::env; -use snafu::Snafu; -use stackable_cockpit::constants::{ - HELM_REPO_NAME_DEV, HELM_REPO_NAME_STABLE, HELM_REPO_NAME_TEST, +use serde_yaml::{Mapping, Value}; +use snafu::{ResultExt, Snafu}; +use stackable_cockpit::{ + constants::{HELM_REPO_NAME_DEV, HELM_REPO_NAME_STABLE, HELM_REPO_NAME_TEST}, + utils::path::PathOrUrl, + xfer::{self, processor::Yaml}, }; use crate::constants::{HELM_REPO_URL_DEV, HELM_REPO_URL_STABLE, HELM_REPO_URL_TEST}; +#[derive(Debug, Snafu)] +pub enum Error { + #[snafu(display("failed to open or transfer values file '{path}'"))] + FileTransfer { source: xfer::Error, path: String }, + + #[snafu(display("operator values file '{path}' must be a YAML mapping at the top level"))] + InvalidValueType { path: String }, + + #[snafu(display( + "value for key '{key}' in operator values file '{path}' must be a YAML mapping" + ))] + InvalidEntryType { key: String, path: String }, +} + #[derive(Debug, Snafu)] #[snafu(display("Invalid Helm repo name ({name}), cannot resolve to repo URL"))] pub struct InvalidRepoNameError { @@ -38,3 +55,57 @@ where pub fn use_colored_output(use_color: bool) -> bool { use_color && env::var_os("NO_COLOR").is_none() } + +/// Loads operator helm values from a YAML file. +/// +/// The file should contain a YAML mapping of operator names to their helm values. +/// Use YAML anchors and aliases to share values across operators: +/// ```yaml +/// airflow-operator: +/// tolerations: &default-tolerations +/// - key: "example" +/// operator: "Exists" +/// effect: "NoSchedule" +/// podAnnotations: +/// example.com/team: "data-engineering" +/// zookeeper-operator: +/// tolerations: *default-tolerations +/// podAnnotations: +/// example.com/team: "platform" +/// ``` +pub async fn load_operator_values( + values_file: Option<&PathOrUrl>, + transfer_client: &xfer::Client, +) -> Result { + let file = match values_file { + Some(file) => file, + None => return Ok(Mapping::new()), + }; + + let path = match file { + PathOrUrl::Path(p) => p.display().to_string(), + PathOrUrl::Url(u) => u.to_string(), + }; + + let value = transfer_client + .get(file, &Yaml::::default()) + .await + .context(FileTransferSnafu { path: path.clone() })?; + + let mapping = match value { + Value::Mapping(mapping) => mapping, + _ => return InvalidValueTypeSnafu { path: path.clone() }.fail(), + }; + + for (key, value) in &mapping { + if !value.is_mapping() { + return InvalidEntryTypeSnafu { + key: key.as_str().unwrap_or("").to_string(), + path: path.clone(), + } + .fail(); + } + } + + Ok(mapping) +} diff --git a/rust/xtask/Cargo.toml b/rust/xtask/Cargo.toml index 1007dca3..69a5beb7 100644 --- a/rust/xtask/Cargo.toml +++ b/rust/xtask/Cargo.toml @@ -13,6 +13,5 @@ once_cell.workspace = true regex.workspace = true serde_json.workspace = true snafu.workspace = true -stackable-cockpitd = { path = "../stackable-cockpitd" } stackablectl = { path = "../stackablectl" } tera.workspace = true diff --git a/rust/xtask/src/main.rs b/rust/xtask/src/main.rs index 80de075e..a6d2c0a3 100644 --- a/rust/xtask/src/main.rs +++ b/rust/xtask/src/main.rs @@ -2,14 +2,12 @@ use clap::Parser; use snafu::Snafu; use crate::{ - completions::GenCompError, docs::GenDocsError, man::GenManError, openapi::GenOpenapiError, - readme::GenReadmeError, + completions::GenCompError, docs::GenDocsError, man::GenManError, readme::GenReadmeError, }; mod completions; mod docs; mod man; -mod openapi; mod readme; #[derive(clap::Parser)] @@ -18,7 +16,6 @@ enum XtaskCommand { GenAll, GenMan, GenComp, - GenOpenapi, GenCtlReadme, GenDocs, } @@ -31,12 +28,6 @@ enum TaskError { #[snafu(display("failed to generate shell completions"), context(false))] Comp { source: GenCompError }, - #[snafu( - display("failed to generate OpenAPI TypeScript schema based on the OpenAPI JSON spec"), - context(false) - )] - Openapi { source: GenOpenapiError }, - #[snafu( display("failed to generate stackablectl usage README file"), context(false) @@ -54,13 +45,11 @@ fn main() -> Result<(), TaskError> { // IMPORTANT (@NickLarsenNZ): ensure all commands defined below are also in here. man::generate()?; completions::generate()?; - openapi::generate()?; readme::generate()?; docs::generate()?; } XtaskCommand::GenMan => man::generate()?, XtaskCommand::GenComp => completions::generate()?, - XtaskCommand::GenOpenapi => openapi::generate()?, XtaskCommand::GenCtlReadme => readme::generate()?, XtaskCommand::GenDocs => docs::generate()?, } diff --git a/rust/xtask/src/openapi.rs b/rust/xtask/src/openapi.rs deleted file mode 100644 index 693c3e02..00000000 --- a/rust/xtask/src/openapi.rs +++ /dev/null @@ -1,43 +0,0 @@ -use std::{ - io::Write, - process::{Command, Stdio}, -}; - -use snafu::{ResultExt, Snafu, ensure}; -use stackable_cockpitd::api_doc::openapi; - -#[derive(Debug, Snafu)] -pub enum GenOpenapiError { - #[snafu(display("error serializing openapi"))] - SerializeOpenApi { source: serde_json::Error }, - - #[snafu(display("error running importing openapi schema importer"))] - ImportOpenapiSchemaRun { source: std::io::Error }, - - #[snafu(display("openapi schema importer failed with error code {error_code:?}"))] - ImportOpenapiSchema { error_code: Option }, - - #[snafu(display("error writing openapi schema into importer"))] - WriteOpenapiSchema { source: std::io::Error }, -} - -pub fn generate() -> Result<(), GenOpenapiError> { - let openapi_json = openapi().to_json().context(SerializeOpenApiSnafu)?; - let mut codegen = Command::new("yarn") - .args(["--cwd", "web", "run", "openapi-codegen"]) - .stdin(Stdio::piped()) - .spawn() - .context(ImportOpenapiSchemaRunSnafu)?; - codegen - .stdin - .take() - .expect("child stdin must be available") - .write_all(openapi_json.as_bytes()) - .context(WriteOpenapiSchemaSnafu)?; - let status = codegen.wait().context(ImportOpenapiSchemaRunSnafu)?; - ensure!(status.success(), ImportOpenapiSchemaSnafu { - error_code: status.code() - }); - - Ok(()) -} diff --git a/scripts/verify_release_notes.sh b/scripts/verify_release_notes.sh new file mode 100755 index 00000000..9d574349 --- /dev/null +++ b/scripts/verify_release_notes.sh @@ -0,0 +1,17 @@ +#!/usr/bin/env bash + +set -euo pipefail + +STACKABLECTL_VERSION=$(grep 'version' "./rust/stackablectl/Cargo.toml" | grep -oE '[0-9]+\.[0-9]+\.[0-9]+' | head -1) +[ -n "$STACKABLECTL_VERSION" ] || ( + echo "CRATE_VERSION for is empty." >&2 + echo "Please check ./rust/stackablectl/Cargo.toml" >&2 + exit 1 +) + +RELEASE_NOTES_FILE="./docs/modules/stackablectl/partials/release-notes/release-${STACKABLECTL_VERSION}.adoc" + +if [ ! -f "$RELEASE_NOTES_FILE" ]; then + echo "$RELEASE_NOTES_FILE does not exist, please create it and add the appropriate content" >&2 + exit 1 +fi diff --git a/shell.nix b/shell.nix index 6c942812..d0ec38be 100644 --- a/shell.nix +++ b/shell.nix @@ -1,10 +1,20 @@ let - self = import ./. {}; + self = import ./. { }; inherit (self) sources pkgs meta; - cargoDependencySetOfCrate = crate: [ crate ] ++ pkgs.lib.concatMap cargoDependencySetOfCrate (crate.dependencies ++ crate.buildDependencies); - cargoDependencySet = pkgs.lib.unique (pkgs.lib.flatten (pkgs.lib.mapAttrsToList (crateName: crate: cargoDependencySetOfCrate crate.build) self.cargo.workspaceMembers)); -in pkgs.mkShell rec { + cargoDependencySetOfCrate = + crate: + [ crate ] + ++ pkgs.lib.concatMap cargoDependencySetOfCrate (crate.dependencies ++ crate.buildDependencies); + cargoDependencySet = pkgs.lib.unique ( + pkgs.lib.flatten ( + pkgs.lib.mapAttrsToList ( + crateName: crate: cargoDependencySetOfCrate crate.build + ) self.cargo.workspaceMembers + ) + ); +in +pkgs.mkShell rec { name = meta.operator.name; packages = with pkgs; [ @@ -16,25 +26,25 @@ in pkgs.mkShell rec { ## to ensure all the dependencies are caught. # cacert # vim nvim nano + crate2nix ]; # derivation runtime dependencies buildInputs = pkgs.lib.concatMap (crate: crate.buildInputs) cargoDependencySet; # build time dependencies - nativeBuildInputs = pkgs.lib.concatMap (crate: crate.nativeBuildInputs) cargoDependencySet ++ (with pkgs; [ - clang - git - # Replace llvmPackages with llvmPackages_X, where X is the latest LLVM version (at the time of writing, 16) - llvmPackages.bintools - rustup - - # additions for this repo - yarn - typescript - vite - go - ]); + nativeBuildInputs = + pkgs.lib.concatMap (crate: crate.nativeBuildInputs) cargoDependencySet + ++ (with pkgs; [ + clang + git + # Replace llvmPackages with llvmPackages_X, where X is the latest LLVM version (at the time of writing, 16) + llvmPackages.bintools + rustup + + # additions for this repo + go + ]); LIBCLANG_PATH = "${pkgs.libclang.lib}/lib"; BINDGEN_EXTRA_CLANG_ARGS = "-I${pkgs.glibc.dev}/include -I${pkgs.clang}/resource-root/include"; diff --git a/web/.editorconfig b/web/.editorconfig deleted file mode 100644 index b429316b..00000000 --- a/web/.editorconfig +++ /dev/null @@ -1,2 +0,0 @@ -[*] -indent_size = 2 diff --git a/web/.eslintignore b/web/.eslintignore deleted file mode 100644 index 74746490..00000000 --- a/web/.eslintignore +++ /dev/null @@ -1,2 +0,0 @@ -# generated files -src/api/schema.d.ts diff --git a/web/.eslintrc b/web/.eslintrc deleted file mode 100644 index 86d58a6b..00000000 --- a/web/.eslintrc +++ /dev/null @@ -1,41 +0,0 @@ -{ - "extends": [ - "eslint:recommended", - "plugin:@typescript-eslint/recommended", - "plugin:@typescript-eslint/recommended-requiring-type-checking", - "plugin:solid/typescript", - "plugin:unicorn/recommended", - "prettier" - ], - "parser": "@typescript-eslint/parser", - "parserOptions": { - "project": true - }, - "plugins": ["@typescript-eslint", "solid", "unicorn"], - "rules": { - // Causes false positives for Solid resources - "@typescript-eslint/no-misused-promises": "off", - "unicorn/prevent-abbreviations": [ - "error", - { - "replacements": { - "env": false, - // Err is used for the Result type - "err": false, - // Fn or fn is used in callbacks, predicate and filter functions - "fn": false, - // props and params are distinct SolidJS concepts - "props": false, - "params": false - } - } - ], - "unicorn/no-useless-undefined": "off", - "@typescript-eslint/no-unused-vars": [ - "error", - { - "argsIgnorePattern": "^_" - } - ] - } -} diff --git a/web/.gitignore b/web/.gitignore deleted file mode 100644 index ffc6a8f1..00000000 --- a/web/.gitignore +++ /dev/null @@ -1,27 +0,0 @@ -# Logs -logs -*.log -npm-debug.log* -yarn-debug.log* -yarn-error.log* -pnpm-debug.log* -lerna-debug.log* - -node_modules -dist -dist-ssr -*.local - -# Editor directories and files -.vscode/* -!.vscode/extensions.json -.idea -.DS_Store -*.suo -*.ntvs* -*.njsproj -*.sln -*.sw? - -# Test results / coverage -coverage diff --git a/web/.prettierignore b/web/.prettierignore deleted file mode 100644 index c2b7dc50..00000000 --- a/web/.prettierignore +++ /dev/null @@ -1,3 +0,0 @@ -dist -# Generated by openapi-typescript -src/api/schema.d.ts diff --git a/web/.prettierrc.json b/web/.prettierrc.json deleted file mode 100644 index e359dad9..00000000 --- a/web/.prettierrc.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "trailingComma": "all", - "singleQuote": true, - "jsxSingleQuote": true -} diff --git a/web/Cargo.toml b/web/Cargo.toml deleted file mode 100644 index 34621892..00000000 --- a/web/Cargo.toml +++ /dev/null @@ -1,11 +0,0 @@ -[package] -name = "stackable-cockpit-web" -version.workspace = true -edition = "2021" -publish = false - -[dependencies] -phf = { workspace = true } - -[build-dependencies] -phf_codegen = { workspace = true } diff --git a/web/README.md b/web/README.md deleted file mode 100644 index a7443df8..00000000 --- a/web/README.md +++ /dev/null @@ -1,15 +0,0 @@ -# stackable-cockpit-web - -## The stack - -The Stackable UI is a modern web app written in TypeScript. Core community-provided dependencies are: - -- [SolidJS][solidjs-link] is a reactivity-based framework for building modular web apps. -- [UnoCSS][unocss-link] is an on-demand CSS framework that generates CSS based on HTML classes. -- [Vite][vite-link] is a modern and fast TS/JS toolchain for all kinds of frameworks. Based on Rollup. - -[solidjs-link]: https://www.solidjs.com/ -[unocss-link]: https://unocss.dev/ -[vite-link]: https://vitejs.dev/ - -## Development diff --git a/web/build.rs b/web/build.rs deleted file mode 100644 index 40145831..00000000 --- a/web/build.rs +++ /dev/null @@ -1,54 +0,0 @@ -use std::{fs::File, io::Write, path::PathBuf, process::Command}; - -fn main() { - let out_dir = PathBuf::from(std::env::var("OUT_DIR").expect("OUT_DIR is required")); - - let vite_out_dir = out_dir.join("vite-dist"); - // Vite always seems to update the mtime of the project folder on each build, so track the files that we know matter individually - for tracked_file in [ - "package.json", - "../yarn.lock", - "index.html", - "public", - "src", - "tsconfig.json", - "vite.config.ts", - ] { - println!("cargo:rerun-if-changed={tracked_file}"); - } - - let mut vite_command = Command::new("yarn"); - vite_command - .arg("run") - .arg("build") - .arg("--outDir") - .arg(&vite_out_dir) - .arg("--base") - .arg("/ui/"); - - let vite_status = vite_command.status(); - match vite_status { - Ok(vite_status) if vite_status.success() => {} - _ => panic!("web-ui build failed: command {vite_command:?} resulted in {vite_status:?}"), - }; - - let mut asset_map = phf_codegen::Map::new(); - for asset_file in vite_out_dir.join("assets").read_dir().unwrap() { - let asset_file = asset_file.unwrap(); - let asset_file_name = asset_file.file_name(); - let asset_file_path = asset_file.path(); - asset_map.entry( - asset_file_name - .to_str() - .expect("asset filename must be valid UTF-8") - .to_string(), - &format!("include_bytes!({asset_file_path:?})"), - ); - } - write!( - File::create(out_dir.join("vite-asset-map.rs")).unwrap(), - "{asset_map}", - asset_map = asset_map.build() - ) - .unwrap(); -} diff --git a/web/index.html b/web/index.html deleted file mode 100644 index d01e30f6..00000000 --- a/web/index.html +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - Stackable Cockpit - - -

- - - diff --git a/web/package.json b/web/package.json deleted file mode 100644 index 838053c8..00000000 --- a/web/package.json +++ /dev/null @@ -1,61 +0,0 @@ -{ - "name": "web-ui", - "private": true, - "version": "0.0.0", - "type": "module", - "scripts": { - "lint": "eslint --ext .js,.ts,.tsx,.jsx,.json ./src", - "coverage": "vitest run --coverage", - "build": "tsc && vite build", - "preview": "vite preview", - "test:ui": "vitest --ui", - "openapi-codegen": "openapi-typescript -o src/api/schema.d.ts", - "format": "prettier .", - "test": "vitest", - "dev": "vite" - }, - "devDependencies": { - "@types/feather-icons": "^4.29.1", - "@typescript-eslint/eslint-plugin": "^5.59.5", - "@typescript-eslint/parser": "^5.59.5", - "@vitest/coverage-c8": "^0.31.1", - "@vitest/ui": "^0.31.1", - "eslint": "^8.40.0", - "eslint-config-prettier": "^8.8.0", - "eslint-plugin-solid": "^0.12.1", - "eslint-plugin-unicorn": "^47.0.0", - "openapi-typescript": "^6.5.0", - "prettier": "^2.8.8", - "typescript": "^5.0.4", - "unocss": "^0.51.8", - "vite": "^4.5.3", - "vite-plugin-solid": "^2.7.2", - "vitest": "^0.31.4" - }, - "dependencies": { - "@fluent/bundle": "^0.18.0", - "@fluent/langneg": "^0.7.0", - "@fluent/sequence": "^0.8.0", - "@solid-devtools/overlay": "^0.27.7", - "@solidjs/router": "^0.8.2", - "@unocss/reset": "^0.51.12", - "feather-icons": "^4.29.0", - "openapi-fetch": "^0.2.0", - "solid-js": "^1.7.4" - }, - "js2nix": { - "overlay": { - "vite-plugin-solid": { - "addDependencies": [ - "vite" - ] - }, - "@solidjs/router": { - "addDependencies": [ - "solid-js" - ] - } - } - }, - "packageManager": "yarn@1.22.19" -} diff --git a/web/public/.gitkeep b/web/public/.gitkeep deleted file mode 100644 index e69de29b..00000000 diff --git a/web/public/fonts/Inter-Bold.woff2 b/web/public/fonts/Inter-Bold.woff2 deleted file mode 100644 index 2846f29c..00000000 Binary files a/web/public/fonts/Inter-Bold.woff2 and /dev/null differ diff --git a/web/public/fonts/Inter-Medium.woff2 b/web/public/fonts/Inter-Medium.woff2 deleted file mode 100644 index f92498a2..00000000 Binary files a/web/public/fonts/Inter-Medium.woff2 and /dev/null differ diff --git a/web/public/fonts/Inter-Regular.woff2 b/web/public/fonts/Inter-Regular.woff2 deleted file mode 100644 index 6c2b6893..00000000 Binary files a/web/public/fonts/Inter-Regular.woff2 and /dev/null differ diff --git a/web/src/api/listeners.ts b/web/src/api/listeners.ts deleted file mode 100644 index 2ff5aea7..00000000 --- a/web/src/api/listeners.ts +++ /dev/null @@ -1,70 +0,0 @@ -import { ObjectMeta } from './meta'; -import { delay } from './mock-utils'; - -interface Listener { - metadata: ObjectMeta; - product: string; - endpoints: ListenerEndpoint[]; -} - -interface ListenerEndpoint { - path: string; - web: boolean; -} - -export async function getListeners(): Promise { - await delay(200); - return [ - { - metadata: { - namespace: 'default', - name: 'simple-nifi', - }, - product: 'nifi', - endpoints: [ - { - path: 'https://127.0.0.1:8443/ui', - web: true, - }, - { - path: 'mqtt://127.0.0.1:9999', - web: false, - }, - ], - }, - { - metadata: { - namespace: 'default', - name: 'dimple-nifi', - }, - product: 'nifi', - endpoints: [ - { - path: 'https://127.0.0.1:8443/ui', - web: true, - }, - { - path: 'mqtt://127.0.0.1:9999', - web: false, - }, - ], - }, - { - metadata: { - namespace: 'sefault', - name: 'dimple-nifi', - }, - product: 'nifi', - endpoints: [ - { - path: 'https://127.0.0.1:8443/ui', - web: true, - }, - { - path: 'mqtt://127.0.0.1:9999', - web: false, - }, - ], - }, - ]; -} diff --git a/web/src/api/meta.ts b/web/src/api/meta.ts deleted file mode 100644 index 2c8a16e3..00000000 --- a/web/src/api/meta.ts +++ /dev/null @@ -1,4 +0,0 @@ -export interface ObjectMeta { - namespace: string; - name: string; -} diff --git a/web/src/api/mock-utils.ts b/web/src/api/mock-utils.ts deleted file mode 100644 index afb87495..00000000 --- a/web/src/api/mock-utils.ts +++ /dev/null @@ -1,3 +0,0 @@ -export function delay(amount: number): Promise { - return new Promise((resolve) => setTimeout(resolve, amount)); -} diff --git a/web/src/api/schema.d.ts b/web/src/api/schema.d.ts deleted file mode 100644 index d3908c02..00000000 --- a/web/src/api/schema.d.ts +++ /dev/null @@ -1,234 +0,0 @@ -/** - * This file was auto-generated by openapi-typescript. - * Do not make direct changes to the file. - */ - - -/** OneOf type helpers */ -type Without = { [P in Exclude]?: never }; -type XOR = (T | U) extends object ? (Without & U) | (Without & T) : T | U; -type OneOf = T extends [infer Only] ? Only : T extends [infer A, infer B, ...infer Rest] ? OneOf<[XOR, ...Rest]> : never; - -export interface paths { - "/demos": { - /** Retrieves all demos. */ - get: operations["get_demos"]; - }; - "/demos/{name}": { - /** Retrieves one demo identified by `name`. */ - get: operations["get_demo"]; - }; - "/login": { - post: operations["log_in"]; - }; - "/ping": { - get: operations["ping"]; - }; - "/releases": { - /** Retrieves all releases. */ - get: operations["get_releases"]; - }; - "/releases/{name}": { - /** Retrieves one release identified by `name`. */ - get: operations["get_release"]; - }; - "/stacklets": { - /** Retrieves all stacklets. */ - get: operations["get_stacklets"]; - }; -} - -export type webhooks = Record; - -export interface components { - schemas: { - /** @description This struct describes a demo with the v2 spec */ - DemoSpec: { - /** @description A short description of the demo */ - description: string; - /** @description An optional link to a documentation page */ - documentation?: string | null; - /** @description A variable number of labels (tags) */ - labels?: string[]; - /** @description A variable number of Helm or YAML manifests */ - manifests?: components["schemas"]["ManifestSpec"][]; - /** @description A variable number of supported parameters */ - parameters?: components["schemas"]["Parameter"][]; - resourceRequests?: components["schemas"]["ResourceRequests"] | null; - /** @description The name of the underlying stack */ - stackableStack: string; - /** - * @description Supported namespaces this demo can run in. An empty list indicates that - * the demo can run in any namespace. - */ - supportedNamespaces?: string[]; - }; - DisplayCondition: { - condition: string; - is_good?: boolean | null; - message?: string | null; - }; - ManifestSpec: OneOf<[{ - helmChart: string; - }, { - plainYaml: string; - }]>; - ObjectMeta: { - name: string; - namespace: string; - }; - /** - * @description Parameter descibes a common parameter format. This format is used in demo - * and stack definitions. - */ - Parameter: { - /** @description Parameter default value */ - default: string; - /** @description Parameter description */ - description: string; - /** @description Parameter name */ - name: string; - }; - ProductSpec: { - operatorVersion: string; - }; - ReleaseSpec: { - /** @description A short description of this release */ - description: string; - /** @description List of products and their version in this release */ - products: { - [key: string]: components["schemas"]["product.ProductSpec"]; - }; - /** @description Date this released was released */ - releaseDate: string; - }; - /** - * @description Demos and stacks can define how much cluster resources they need to run - * via their definition. The struct [`ResourceRequests`] contains information - * how many CPU cores and how much memory and disk space are required to run - * the demo/stack. - */ - ResourceRequests: { - cpu: string; - memory: string; - pvc: string; - }; - Session: { - sessionToken: components["schemas"]["SessionToken"]; - }; - SessionToken: string; - Stacklet: { - /** @description Multiple cluster conditions. */ - conditions: components["schemas"]["k8s.DisplayCondition"][]; - /** - * @description Endpoint addresses the product is reachable at. - * The key is the service name (e.g. `web-ui`), the value is the URL. - */ - endpoints: { - [key: string]: string; - }; - /** @description Name of the stacklet. */ - name: string; - /** @description Some CRDs are cluster scoped. */ - namespace?: string | null; - /** @description Name of the product. */ - product: string; - }; - }; - responses: never; - parameters: never; - requestBodies: never; - headers: never; - pathItems: never; -} - -export type $defs = Record; - -export type external = Record; - -export interface operations { - - /** Retrieves all demos. */ - get_demos: { - responses: { - /** @description Retrieving a list of demos succeeded */ - 200: { - content: { - "application/json": components["schemas"]["DemoSpecV2"][]; - }; - }; - /** @description Retrieving a list of demos failed */ - 404: { - content: never; - }; - }; - }; - /** Retrieves one demo identified by `name`. */ - get_demo: { - responses: { - /** @description Retrieving the demo with 'name' succeeded */ - 200: { - content: { - "application/json": components["schemas"]["DemoSpecV2"]; - }; - }; - /** @description Retrieving the demo with 'name' failed */ - 404: { - content: never; - }; - }; - }; - log_in: { - responses: { - 200: { - content: { - "application/json": components["schemas"]["Session"]; - }; - }; - 401: { - content: { - "text/plain": string; - }; - }; - }; - }; - ping: { - responses: { - 200: { - content: { - "text/plain": string; - }; - }; - }; - }; - /** Retrieves all releases. */ - get_releases: { - responses: { - /** @description Retrieving a list of releases succeeded */ - 200: { - content: { - "application/json": components["schemas"]["ReleaseSpec"][]; - }; - }; - /** @description Retrieving a list of releases failed */ - 404: { - content: never; - }; - }; - }; - /** Retrieves one release identified by `name`. */ - get_release: { - responses: { - }; - }; - /** Retrieves all stacklets. */ - get_stacklets: { - responses: { - 200: { - content: { - "application/json": components["schemas"]["Stacklet"][]; - }; - }; - }; - }; -} diff --git a/web/src/api/session.ts b/web/src/api/session.ts deleted file mode 100644 index c9f47cf1..00000000 --- a/web/src/api/session.ts +++ /dev/null @@ -1,55 +0,0 @@ -import openapiCreateClient from 'openapi-fetch'; -import { paths } from './schema'; -import { createLocalStorageSignal } from '../utils/localstorage'; -import { None, someIfDefined } from '../types'; -import { createMemo } from 'solid-js'; - -const createClient = (options?: RequestInit) => - openapiCreateClient({ baseUrl: '/api', ...options }); -const [currentSessionToken, setCurrentSessionToken] = - createLocalStorageSignal('sessionToken'); -export const isLoggedIn = () => currentSessionToken().isSome(); -export const client = createMemo(() => { - const headers: HeadersInit = {}; - currentSessionToken().map((sessionToken) => { - headers.Authorization = `Bearer ${sessionToken}`; - }); - return createClient({ headers }); -}); - -// Try to validate that the session token is still valid, and log the user out otherwise -export function validateSessionOrLogOut() { - if (isLoggedIn()) { - client() - .get('/ping', {}) - .then((pingResponse) => { - if (pingResponse.response.status === 401) { - setCurrentSessionToken(None); - } - }) - // We don't want to block page loads on waiting for this validation - // eslint-disable-next-line unicorn/prefer-top-level-await - .catch((error) => - console.error('Failed to validate session token', error), - ); - } -} - -export async function logIn( - username: string, - password: string, -): Promise { - // Always use unauthenticated client for login requests - const response = await createClient().post('/login', { - headers: { Authorization: 'Basic ' + btoa(`${username}:${password}`) }, - }); - setCurrentSessionToken(someIfDefined(response.data?.sessionToken)); - if (!response.response.ok) { - return response.error; - } -} -// We want to leave room in the function contract to invalidate the session token in the future -// eslint-disable-next-line @typescript-eslint/require-await -export async function logOut() { - setCurrentSessionToken(None); -} diff --git a/web/src/api/stacklets.ts b/web/src/api/stacklets.ts deleted file mode 100644 index 39a60216..00000000 --- a/web/src/api/stacklets.ts +++ /dev/null @@ -1,47 +0,0 @@ -import { components } from './schema'; -import { client } from './session'; -import { ObjectMeta } from './meta'; -import { delay } from './mock-utils'; - -export type Stacklet = components['schemas']['Stacklet']; -export type DisplayCondition = components['schemas']['DisplayCondition']; -export async function getStacklets(): Promise { - const { data } = await client().get('/stacklets', {}); - if (data === undefined) { - throw new Error('No data returned by API'); - } else { - return data; - } -} - -export type DiscoveryFieldType = 'url' | 'blob'; -interface StackletDiscovery { - metadata: ObjectMeta; - data: { [x: string]: string }; - fieldTypes: { [x: string]: DiscoveryFieldType }; -} - -export async function getStackletDiscovery( - namespace: string, - discoveryConfigMapName: string, -): Promise { - await delay(200); - if (namespace == 'default' && discoveryConfigMapName == 'simple-nifi') { - return { - metadata: { namespace, name: discoveryConfigMapName }, - data: { NIFI_URL: 'https://foo.com' }, - fieldTypes: { NIFI_URL: 'url' }, - }; - } else if ( - namespace == 'default' && - discoveryConfigMapName == 'simple-hdfs' - ) { - return { - metadata: { namespace, name: discoveryConfigMapName }, - data: { 'hdfs-config.xml': 'config goes here' }, - fieldTypes: {}, - }; - } else { - return undefined; - } -} diff --git a/web/src/components/button.tsx b/web/src/components/button.tsx deleted file mode 100644 index f97c8581..00000000 --- a/web/src/components/button.tsx +++ /dev/null @@ -1,49 +0,0 @@ -import { A } from '@solidjs/router'; -import { JSX } from 'solid-js'; - -/// Special types of buttons that need specific callouts -export type ButtonRole = 'primary'; - -export interface VisualButtonProps { - children: JSX.Element; - role?: ButtonRole; -} - -const buttonProps = (props: VisualButtonProps) => { - const roleClasses = - // buttonProps is only called within a reactive scope - // eslint-disable-next-line solid/reactivity - props.role === 'primary' - ? 'bg-stackable-blue-light hover-bg-stackable-blue-dark active-stackable-blue-dark border-stackable-blue-dark' - : 'bg-gray-700 hover-bg-gray-600 active-bg-gray-500 border-gray-600'; - - return { - class: `p-2 text-size-4 c-white rounded border-1 border-solid cursor-pointer decoration-none ${roleClasses}`, - }; -}; - -export interface ButtonProps extends VisualButtonProps { - onClick: () => void; -} - -export const Button = (props: ButtonProps) => ( - -); - -export interface ButtonLinkProps extends VisualButtonProps { - href: string; -} - -export const ButtonLink = (props: ButtonLinkProps) => ( - - {props.children} - -); diff --git a/web/src/components/datatable.tsx b/web/src/components/datatable.tsx deleted file mode 100644 index b958ac40..00000000 --- a/web/src/components/datatable.tsx +++ /dev/null @@ -1,117 +0,0 @@ -import { For, JSX, Show, createMemo, createSignal } from 'solid-js'; -import { Button } from './button'; -import { SearchInput } from './form/search'; -import { LoadingBar } from './loading'; -import { translate } from '../localization'; - -export interface DataTableColumn { - label: string; - get: (x: T) => JSX.Element; - sortBy?: (x: T) => string; -} - -export interface DataTableProps { - columns: DataTableColumn[]; - items: T[]; - - searchQuery?: string; - setSearchQuery?: (query: string) => void; - - extraButtons?: JSX.Element; - - refresh?: () => void; - isLoading?: boolean; -} - -export function DataTable(props: DataTableProps): JSX.Element { - const [sortComparator, setSortComparator] = createSignal< - ((x: T, y: T) => number) | undefined - >(); - - const sortedItems = createMemo(() => { - const currentSortComparator = sortComparator(); - if (currentSortComparator == undefined) { - return props.items; - } else { - const items = [...props.items]; - items.sort(currentSortComparator); - return items; - } - }); - - const sortByColumn = (event: Event, column: DataTableColumn) => { - event.preventDefault(); - setSortComparator(() => - column.sortBy ? keyComparator(column.sortBy) : undefined, - ); - }; - - return ( -
-
- - props.setSearchQuery?.(q)} - /> - -
- {props.extraButtons} - - - -
- - - - - {(column) => ( - - )} - - - - - - - - - {(item) => ( - - - {(col) => ( - - )} - - - )} - - -
- - sortByColumn(event, column)} - > - {column.label} - - -
-
- -
-
- {col.get(item)} -
-
- ); -} - -const collator = new Intl.Collator(); - -function keyComparator(key: (x: T) => string): (x: T, y: T) => number { - return (x, y) => collator.compare(key(x), key(y)); -} diff --git a/web/src/components/form/search.tsx b/web/src/components/form/search.tsx deleted file mode 100644 index cf2c96e8..00000000 --- a/web/src/components/form/search.tsx +++ /dev/null @@ -1,21 +0,0 @@ -import { SearchSymbol } from '../symbols'; - -interface SearchInputProps { - query: string; - setQuery: (query: string) => void; -} -export const SearchInput = (props: SearchInputProps) => { - return ( - - ); -}; diff --git a/web/src/components/header.tsx b/web/src/components/header.tsx deleted file mode 100644 index 50c8b839..00000000 --- a/web/src/components/header.tsx +++ /dev/null @@ -1,70 +0,0 @@ -import { A } from '@solidjs/router'; -import { ParentProps, Show } from 'solid-js'; -import logo from '../resources/logo.png'; -import { logOut } from '../api/session'; -import { translate } from '../localization'; -import { LanguagePicker } from './language'; - -interface NavItemProps { - href?: string; - onClick?: () => void; -} - -const NavItem = (props: ParentProps) => { - const linkClass = - 'p-4 b-0 cursor-pointer c-white flex flex-items-center h-full decoration-none bg-gray-900'; - const inactiveClass = 'bg-opacity-30 hover:bg-opacity-50'; - - return ( -
  • - { - event.preventDefault(); - props.onClick?.(); - }} - > - {props.children} - - } - > - props.onClick?.()} - > - {props.children} - - -
  • - ); -}; - -export const Header = () => { - return ( - - ); -}; diff --git a/web/src/components/language.tsx b/web/src/components/language.tsx deleted file mode 100644 index 5c63e2eb..00000000 --- a/web/src/components/language.tsx +++ /dev/null @@ -1,23 +0,0 @@ -import { For } from 'solid-js'; -import { requireLanguageContext, translate } from '../localization'; -import { Some } from '../types/option'; - -export const LanguagePicker = () => { - const context = requireLanguageContext(); - return ( - - ); -}; diff --git a/web/src/components/loading.tsx b/web/src/components/loading.tsx deleted file mode 100644 index c236eb96..00000000 --- a/web/src/components/loading.tsx +++ /dev/null @@ -1,9 +0,0 @@ -export const LoadingBar = () => ( - - Loading... - - - - - -); diff --git a/web/src/components/symbols.tsx b/web/src/components/symbols.tsx deleted file mode 100644 index 8d5e1e8b..00000000 --- a/web/src/components/symbols.tsx +++ /dev/null @@ -1,14 +0,0 @@ -import { FeatherIconNames, icons as featherIcons } from 'feather-icons'; - -interface FeatherSymbolProps { - icon: FeatherIconNames; -} -const FeatherSymbol = (props: FeatherSymbolProps) => { - const icon = () => featherIcons[props.icon]; - // Icon contents are provided statically by feather, and not influenced by user input - // eslint-disable-next-line solid/no-innerhtml - return ; -}; - -export const SearchSymbol = () => ; -export const AddSymbol = () => ; diff --git a/web/src/components/title.tsx b/web/src/components/title.tsx deleted file mode 100644 index 1bff706d..00000000 --- a/web/src/components/title.tsx +++ /dev/null @@ -1,31 +0,0 @@ -import { createEffect, onCleanup } from 'solid-js'; -import { createMutable } from 'solid-js/store'; - -const originalTitle = document.title; -const titleStack = createMutable([() => originalTitle]); -createEffect(() => { - /* console.debug('Updating title stack', titleStack); */ - document.title = titleStack.map((x) => x()).join(' :: '); -}); - -interface TitleProps { - children: string; -} -export const Title = (props: TitleProps) => { - /* console.debug('Adding to title stack', props.children); */ - const getTitle = () => props.children; - // titleStack is consumed in a reactive context, so this is valid - // eslint-disable-next-line solid/reactivity - titleStack.push(getTitle); - onCleanup(() => { - /* console.debug(`Removing from title stack`, props.children); */ - const stackEntryIndex = titleStack.indexOf(getTitle); - if (stackEntryIndex === -1) { - throw new Error( - `Title stack entry for ${props.children} could not be found`, - ); - } - titleStack.splice(stackEntryIndex, 1); - }); - return <>; -}; diff --git a/web/src/fonts.css b/web/src/fonts.css deleted file mode 100644 index 6b06ead2..00000000 --- a/web/src/fonts.css +++ /dev/null @@ -1,23 +0,0 @@ -@font-face { - font-family: 'Inter'; - font-style: normal; - font-weight: 400; - font-display: swap; - src: url('static/fonts/Inter-Regular.woff2') format('woff2'); -} - -@font-face { - font-family: 'Inter'; - font-style: normal; - font-weight: 500; - font-display: swap; - src: url('static/fonts/Inter-Medium.woff2') format('woff2'); -} - -@font-face { - font-family: 'Inter'; - font-style: normal; - font-weight: 700; - font-display: swap; - src: url('static/fonts/Inter-Bold.woff2') format('woff2'); -} diff --git a/web/src/lib.rs b/web/src/lib.rs deleted file mode 100644 index 55c7e676..00000000 --- a/web/src/lib.rs +++ /dev/null @@ -1,2 +0,0 @@ -pub const INDEX_HTML: &str = include_str!(concat!(env!("OUT_DIR"), "/vite-dist/index.html")); -pub const ASSETS: phf::Map<&str, &[u8]> = include!(concat!(env!("OUT_DIR"), "/vite-asset-map.rs")); diff --git a/web/src/localization/README.md b/web/src/localization/README.md deleted file mode 100644 index f84736ec..00000000 --- a/web/src/localization/README.md +++ /dev/null @@ -1,9 +0,0 @@ -# Cockpit Localization - -We use [Fluent](https://projectfluent.org/) to power our translations. - -Each translation is stored as a file in the `locale/` folder, following the naming convention `locale/{langtag}.ftl`, where -`{langtag}` IETF language tag (for example: `en` for "generic english", or `en-US` for "US english"). - -Translation keys are named according using `kebab-case`, with `--` used as the hierarchy separator (for example: -`category--long-key`). diff --git a/web/src/localization/index.tsx b/web/src/localization/index.tsx deleted file mode 100644 index a66dea6b..00000000 --- a/web/src/localization/index.tsx +++ /dev/null @@ -1,106 +0,0 @@ -import { FluentBundle, FluentResource, FluentVariable } from '@fluent/bundle'; -import { mapBundleSync } from '@fluent/sequence'; -import { negotiateLanguages } from '@fluent/langneg'; -import { JSX, createContext, createMemo, useContext } from 'solid-js'; -import { createLocalStorageSignal } from '../utils/localstorage'; -import { Option } from '../types'; - -const fluentTranslationFiles = import.meta.glob('./locale/*.ftl', { - eager: true, - as: 'raw', -}); -const translationBundles = Object.fromEntries( - Object.entries(fluentTranslationFiles).map(([fileName, ftl]) => { - const localeName = fileName.replace( - /^.*\/(.+)\..*$/, - (_, locale: string) => locale, - ); - - const resource = new FluentResource(ftl); - const bundle = new FluentBundle(localeName); - const errors = bundle.addResource(resource); - if (errors.length > 0) { - throw new Error( - `Failed to load translation bundle ${fileName} as ${localeName}`, - { cause: errors[0] }, - ); - } - - return [localeName, bundle]; - }), -); - -const FALLBACK_LOCALE = 'en'; -interface LanguageContext { - activeLocales(): string[]; - setUserLocale(language: Option): void; - availableLocales(): Record; -} -const LanguageContext = createContext(); -export const requireLanguageContext = () => { - const langContext = useContext(LanguageContext); - if (langContext === undefined) { - throw new Error( - 'LanguageContext is required but no LanguageProvider is currently active', - ); - } - return langContext; -}; - -export const LanguageProvider = (props: { children: JSX.Element }) => { - const [userLanguage, setUserLocale] = - createLocalStorageSignal('user.language'); - const activeLocales = createMemo(() => - userLanguage().mapOrElse( - () => - negotiateLanguages( - navigator.languages, - Object.keys(translationBundles), - { - defaultLocale: FALLBACK_LOCALE, - }, - ), - (ul) => [ul, FALLBACK_LOCALE], - ), - ); - return ( - translationBundles, - }} - > - {props.children} - - ); -}; - -export const translate = ( - translatableName: string, - variables?: Record, - options?: { overrideLocales?: string[] }, -) => { - const context = requireLanguageContext(); - const localeChain = options?.overrideLocales ?? context.activeLocales(); - - const bundle = mapBundleSync( - localeChain.map((locale) => translationBundles[locale]), - translatableName, - ); - if (bundle === null) { - console.error( - `No translation found for ${translatableName} (locale chain: ${localeChain.toString()})`, - ); - return `#${translatableName}#`; - } - - const pattern = bundle.getMessage(translatableName)?.value; - if (pattern === undefined || pattern === null) { - throw new Error( - `Translation pattern for ${translatableName} has no value (in bundle ${bundle.locales.toString()})`, - ); - } - - return bundle.formatPattern(pattern, variables); -}; diff --git a/web/src/localization/locale/de.ftl b/web/src/localization/locale/de.ftl deleted file mode 100644 index 3ba1e668..00000000 --- a/web/src/localization/locale/de.ftl +++ /dev/null @@ -1,18 +0,0 @@ -locale-name = Deutsch - -refresh = Aktualisieren - -stacklet--list = Stacklets -stacklet--add = Stacklet hinzufügen - -stacklet--product = Produkt -stacklet--namespace = Namensraum -stacklet--name = Name -stacklet--endpoints = Endpunkte -stacklet--status = Status - -login--log-in = Anmelden -login--log-out = Abmelden -login--username = Nutzername -login--password = Passwort -login--logging-in = Anmelden... diff --git a/web/src/localization/locale/en.ftl b/web/src/localization/locale/en.ftl deleted file mode 100644 index 43f8c504..00000000 --- a/web/src/localization/locale/en.ftl +++ /dev/null @@ -1,18 +0,0 @@ -locale-name = English - -refresh = Refresh - -stacklet--list = Stacklets -stacklet--add = Add Stacklet - -stacklet--product = Product -stacklet--namespace = Namespace -stacklet--name = Name -stacklet--endpoints = Endpoints -stacklet--status = Status - -login--log-in = Log in -login--log-out = Log out -login--username = Username -login--password = Password -login--logging-in = Logging in... diff --git a/web/src/localization/locale/sv.ftl b/web/src/localization/locale/sv.ftl deleted file mode 100644 index 021b8976..00000000 --- a/web/src/localization/locale/sv.ftl +++ /dev/null @@ -1,18 +0,0 @@ -locale-name = Svenska - -refresh = Ladda om - -stacklet--list = Stackletar -stacklet--add = Lägg till Stacklet - -stacklet--product = Produkt -stacklet--namespace = Namnrymd -stacklet--name = Namn -stacklet--endpoints = Endpoints -stacklet--status = Status - -login--log-in = Logga in -login--log-out = Logga ut -login--username = Användarnamn -login--password = Lösenord -login--logging-in = Loggar in... diff --git a/web/src/main.tsx b/web/src/main.tsx deleted file mode 100644 index 05fb70ba..00000000 --- a/web/src/main.tsx +++ /dev/null @@ -1,51 +0,0 @@ -/* eslint-disable @typescript-eslint/naming-convention */ -import '@unocss/reset/sanitize/sanitize.css'; -import 'virtual:uno.css'; -import { render } from 'solid-js/web'; -import { Navigate, Route, Router, Routes } from '@solidjs/router'; -import { Header } from './components/header'; -import { StackletConnectionDetails } from './pages/stacklets/connect'; -import { Stacklets } from './pages/stacklets/list'; -import { LoginPageOr } from './pages/login'; -import { LanguageProvider } from './localization'; -import { attachDevtoolsOverlay } from '@solid-devtools/overlay'; - -attachDevtoolsOverlay(); - -const App = () => { - return ( -
    - -
    -
    - - - - } /> - -
    - -
    - ); -}; - -const root = document.querySelector('#app'); -if (root == undefined) { - throw new Error( - 'Root element not found. Did you forget to add it to your index.html? Or maybe the id attribute got mispelled?', - ); -} else { - render( - () => ( - - - - - - ), - root, - ); -} diff --git a/web/src/pages/login.tsx b/web/src/pages/login.tsx deleted file mode 100644 index 98189dd1..00000000 --- a/web/src/pages/login.tsx +++ /dev/null @@ -1,98 +0,0 @@ -import { - JSX, - Show, - createResource, - createSignal, - createUniqueId, - untrack, -} from 'solid-js'; -import logo from '../resources/logo.png'; -import { isLoggedIn, logIn, validateSessionOrLogOut } from '../api/session'; -import { Button } from '../components/button'; -import { translate } from '../localization'; - -interface LoginPageOrProps { - children: JSX.Element; -} -export const LoginPageOr = (props: LoginPageOrProps) => { - // Validate the session when loading, but there's little to no point re-validating - // when the user has just logged in. - untrack(() => validateSessionOrLogOut()); - return ( - }> - {props.children} - - ); -}; - -export const LoginPage = () => { - const [username, setUsername] = createSignal(''); - const [password, setPassword] = createSignal(''); - const [currentAttempt, setCurrentAttempt] = createSignal( - Promise.resolve(undefined), - ); - // Create attempts imperatively, use createResource to render the results - const [loginMessage] = createResource( - () => currentAttempt(), - (attempt) => attempt, - ); - const clickLogin = () => { - void setCurrentAttempt(() => logIn(username(), password())); - }; - const usernameId = createUniqueId(); - const passwordId = createUniqueId(); - return ( -
    -
    -

    - Stackable -

    -

    {translate('login--log-in')}

    -
    - - setUsername(event.target.value)} - /> - - setPassword(event.target.value)} - /> -
    - -
    {translate('login--logging-in')}
    -
    - -
    {loginMessage()}
    -
    - -
    -
    -
    -
    - ); -}; diff --git a/web/src/pages/stacklets/connect.tsx b/web/src/pages/stacklets/connect.tsx deleted file mode 100644 index 30026d37..00000000 --- a/web/src/pages/stacklets/connect.tsx +++ /dev/null @@ -1,71 +0,0 @@ -import { - For, - Match, - Show, - Switch, - createResource, - createUniqueId, -} from 'solid-js'; -import { DiscoveryFieldType, getStackletDiscovery } from '../../api/stacklets'; -import { Params, useParams } from '@solidjs/router'; - -interface StackletConnectionDetailsParams extends Params { - namespace: string; - name: string; -} - -export const StackletConnectionDetails = () => { - const params = useParams(); - const [discoveryConfig, { refetch }] = createResource(() => - getStackletDiscovery(params.namespace, params.name), - ); - const configParams = () => { - const currentDiscoveryConfig = discoveryConfig(); - const data = currentDiscoveryConfig?.data || {}; - const types = currentDiscoveryConfig?.fieldTypes || {}; - return Object.keys(data) - .sort() - .map((key) => ({ key, value: data[key], type: types[key] || 'blob' })); - }; - return ( - <> - - Loading... -
      - - {(item) => ( -
    • - -
    • - )} -
      -
    - - ); -}; - -interface FieldProps { - label: string; - value: string; - type: DiscoveryFieldType; -} - -const Field = (props: FieldProps) => { - const dataFieldId = createUniqueId(); - return ( - - - {props.label} - - {/* Fall back to rendering as blob if unknown */} - - - - - - ); -}; diff --git a/web/src/pages/stacklets/list.module.css b/web/src/pages/stacklets/list.module.css deleted file mode 100644 index b37c87af..00000000 --- a/web/src/pages/stacklets/list.module.css +++ /dev/null @@ -1,6 +0,0 @@ -.inline-list-item { - display: inline; -} -.inline-list-item:not(:last-child)::after { - content: ', '; -} diff --git a/web/src/pages/stacklets/list.tsx b/web/src/pages/stacklets/list.tsx deleted file mode 100644 index 243f17f0..00000000 --- a/web/src/pages/stacklets/list.tsx +++ /dev/null @@ -1,109 +0,0 @@ -import { For, Show, createResource } from 'solid-js'; -import { DisplayCondition, getStacklets } from '../../api/stacklets'; -import { DataTable } from '../../components/datatable'; -import styles from './list.module.css'; -import { translate } from '../../localization'; - -export const Stacklets = () => { - const [stacklets, { refetch }] = createResource(getStacklets); - return ( - <> - x.product, - sortBy: (x) => x.product, - }, - { - label: translate('stacklet--namespace'), - get: (x) => x.namespace || '(Cluster-scoped)', - sortBy: (x) => x.namespace || '', - }, - { - label: translate('stacklet--name'), - get: (x) => x.name, - sortBy: (x) => x.name, - }, - { - label: translate('stacklet--endpoints'), - get: (x) => , - }, - { - label: translate('stacklet--status'), - get: (x) => , - }, - /* { - label: 'Actions', - get: (x) => ( - - Connect - - ), - }, */ - ]} - extraButtons={ - <> - {/* - {translate('stacklet--add')} - */} - - } - refresh={refetch} - isLoading={stacklets.loading} - /> - - ); -}; - -const StackletConditions = (props: { conditions: DisplayCondition[] }) => ( -
      - - {(cond) => ( -
    • - -
    • - )} -
      -
    -); - -const StackletCondition = (props: { condition: DisplayCondition }) => ( - - {props.condition.condition} - -); - -const StackletEndpoints = (props: { - endpoints: { [key: string]: string | undefined }; -}) => ( -
      - - {(item) => ( -
    • - - {item[0]}: {item[1]} - - } - > - - {item[0]} - - -
    • - )} -
      -
    -); diff --git a/web/src/resources/logo.png b/web/src/resources/logo.png deleted file mode 100644 index 49c633b1..00000000 Binary files a/web/src/resources/logo.png and /dev/null differ diff --git a/web/src/types/index.ts b/web/src/types/index.ts deleted file mode 100644 index ddf5edd1..00000000 --- a/web/src/types/index.ts +++ /dev/null @@ -1,3 +0,0 @@ -export * from './result'; -export * from './option'; -export * from './utils'; diff --git a/web/src/types/option.ts b/web/src/types/option.ts deleted file mode 100644 index 2cc222e7..00000000 --- a/web/src/types/option.ts +++ /dev/null @@ -1,412 +0,0 @@ -import { ToString } from './utils'; -import { Err, Ok, Result } from './result'; - -interface BaseOption { - /** - * Returns true if the option is a `Some` value. - * - * @returns boolean - */ - isSome(): this is Some; - - /** - * Returns true if the option is a `Some` and the value inside of it matches - * a predicate. - * - * @param fn Predicate to match - * @returns boolean - */ - isSomeAnd(fn: (value: Readonly) => boolean): this is Some; - - /** - * Returns true if the option is a `None` value. - * - * @returns boolean - */ - isNone(): this is None; - - match(matcher: { some: (value: Readonly) => T; none: () => T }): T; - - /** - * Maps an `Option` to `Option` by applying a function to a contained - * value (if `Some`) or returns `None` (if `None`). - * - * @param fn Mapping function. - * @returns The mapped option. - */ - map(fn: (value: Readonly) => T): Option; - - /** - * Returns the provided default result (if none), or applies a function to - * the contained value (if any). - * - * @param defaultValue The default value if `None`. - * @param fn The mapping function. - */ - mapOr(defaultValue: T, fn: (value: Readonly) => T): T; - - /** - * Computes a default function result (if none), or applies a different - * function to the contained value (if any). - * - * @param defaultFn Closure computing the default value if `None`. - * @param fn The mapping function. - */ - mapOrElse(defaultFn: () => T, fn: (value: Readonly) => T): T; - - /** - * Transforms the `Option` into a `Result`, mapping `Some(v)` to - * `Ok(v)` and `None` to `Err(err)`. - * - * @param error The error value if `None`. - * @returns The transformed result. - */ - okOr(error: E): Result; - - /** - * Transforms the `Option` into a `Result`, mapping `Some(v)` to - * `Ok(v)` and `None` to `Err(err())`. - * - * @param err Closure to compute the error value if `None`. - * @returns The transformed result. - */ - okOrElse(err: () => E): Result; - - /** - * Returns `None` if the option is `None`, otherwise returns `other`. - * - * @param other The other option if `Some`. - * @returns Either `None` or the `other` option. - */ - and(other: Option): Option; - - /** - * Returns `None` if the option is `None`, otherwise calls `fn` with the - * wrapped value and returns the result. - * - * @param fn The function which produces the other option if `Some`. - * @returns Either `None` or the computed other option. - */ - andThen(fn: (value: Readonly) => Option): Option; - - /** - * Returns `None` if the option is `None`, otherwise calls `predicate` with - * the wrapped value and returns: - * - * - `Some(t)` if predicate returns true (where t is the wrapped value), and - * - `None` if predicate returns false. - * - * @param predicate The filter function. - * @returns `Some` if the filter function returned true, otherwise `None`. - */ - filter(predicate: (value: Readonly) => boolean): Option; - - /** - * Returns the option if it contains a value, otherwise returns `other`. - * - * @param other The `other` option if `None`. - * @returns Either this or `other`. - */ - or(other: Option): Option; - - /** - * Returns the option if it contains a value, otherwise calls `fn` and returns - * the result. - * - * @param fn Function to compute the other option. - * @returns Either this or the other computed option. - */ - orElse(fn: () => Option): Option; - - /** - * Returns `Some` if exactly one of self, `other` is `Some`, otherwise returns - * `None`. - * - * @param other The other option. - */ - xor(other: Option): Option; - - /** - * Returns true if the option is a `Some` value containing the given `value`. - * - * @param value The value to match `Some(value)`. - * @returns boolean - */ - contains(value: S): boolean; - - /** - * Zips `self` with another `Option`. - * - * If `self` is `Some(s)` and other is `Some(o)`, this method returns - * `Some([s, o])`. Otherwise, `None` is returned. - * - * @param other The other option to zip with. - * @returns The zipped option or `None`. - */ - zip(other: Option): Option<[S, T]>; - - /** - * Zips `self` and another `Option` with function `fn`. - * - * If `self` is `Some(s)` and other is `Some(o)`, this method returns - * `Some(fn(s, o))`. Otherwise, `None` is returned. - * - * @param other The other option to zip with. - * @param fn Function which get's applied to the zipped values. - * @returns The zipped and transformed option or `None`. - */ - zipWith(other: Option, fn: (self: S, other: T) => K): Option; - - /** - * Returns the contained `Some` value. - * - * Because this function may throw, its use is generally discouraged. Instead, - * prefer to use pattern matching and handle the `None` case explicitly, or - * call `unwrap_or` or `unwrap_or_else`. - * - * @returns The contained `Some` value. - * - * @throws Throws if the self value equals `None`. - */ - unwrap(): S; - - /** - * Returns the contained `Some` value or a provided default. - * - * @param defaultValue Default value returned when `None`. - * @returns Either contained `Some` value of `defaultValue`. - */ - unwrapOr(defaultValue: T): S | T; - - /** - * Returns the contained `Some` value or computes it from a closure. - * - * @param fn Closure to compute default value. - */ - unwrapOrElse(fn: () => T): S | T; - - /** - * Returns the contained Some value - * - * ### Recommended Message Style - * - * We recommend that `expect` messages are used to describe the reason you - * expect the `Option` should be `Some`. - * - * **Hint:** If you’re having trouble remembering how to phrase expect error - * messages remember to focus on the word “should” as in “env variable should - * be set by blah” or “the given binary should be available and executable by - * the current user”. - * - * @param message Error message. - * @returns The contained `Some` value. - * - * @throws Throws if the value is a `None` with a custom panic message - * provided by `msg`. - */ - expect(message: string): S; -} - -class NoneImpl implements BaseOption { - isSome(): this is Some { - return false; - } - - isSomeAnd(_fn: (value: never) => boolean): this is Some { - return false; - } - - isNone(): this is None { - return true; - } - - match(matcher: { none: () => T }): T { - return matcher.none(); - } - - map(_fn: (value: never) => T): None { - return None; - } - - mapOr(defaultValue: T, _fn: (value: never) => T): T { - return defaultValue; - } - - mapOrElse(defaultFn: () => T, _fn: (value: never) => T): T { - return defaultFn(); - } - - okOr(error: E): Result { - return Err(error); - } - - okOrElse(err: () => E): Result { - return Err(err()); - } - - and(_other: Option): None { - return None; - } - - andThen(_fn: (value: never) => Option): None { - return None; - } - - filter(_predicate: (value: never) => boolean): None { - return None; - } - - or(other: Option): Option { - return other; - } - - orElse(fn: () => Option): Option { - return fn(); - } - - xor(other: Option): Option { - return other.isSome() ? other : None; - } - - contains(_value: never): false { - return false; - } - - zip(_other: Option): None { - return None; - } - - zipWith(_other: Option, _fn: (self: never, other: T) => K): None { - return None; - } - - unwrap(): never { - return this.expect('called `Option::unwrap()` on a `None` value'); - } - - unwrapOr(defaultValue: T): T { - return defaultValue; - } - - unwrapOrElse(fn: () => T): T { - return fn(); - } - - expect(message: string): never { - throw new Error(message); - } -} - -export const None = new NoneImpl(); -export type None = NoneImpl; -Object.freeze(None); - -class SomeImpl implements BaseOption { - constructor(public value: S) {} - - isSome(): this is Some { - return true; - } - - isSomeAnd(op: (value: Readonly) => boolean): this is Some { - return op(this.value); - } - - isNone(): this is None { - return false; - } - - match(matcher: { some: (value: Readonly) => T }): T { - // See - // - https://github.com/sindresorhus/eslint-plugin-unicorn/issues/1947 - // - https://github.com/sindresorhus/eslint-plugin-unicorn/issues/1946 - // - https://github.com/sindresorhus/eslint-plugin-unicorn/issues/1940 - - // eslint-disable-next-line unicorn/no-array-callback-reference - return matcher.some(this.value); - } - - map(fn: (value: Readonly) => T): Some { - return Some(fn(this.value)); - } - - mapOr(_defaultValue: T, fn: (value: Readonly) => T): T { - return fn(this.value); - } - - mapOrElse(_defaultFn: () => T, fn: (value: Readonly) => T): T { - return fn(this.value); - } - - okOr(_error: E): Result { - return Ok(this.value); - } - - okOrElse(_err: () => E): Result { - return Ok(this.value); - } - - and(other: Option): typeof other { - return other; - } - - andThen(fn: (value: Readonly) => Option): Option { - return fn(this.value); - } - - filter(predicate: (value: Readonly) => boolean): Option { - return predicate(this.value) ? this : None; - } - - or(_other: Option): Some { - return this; - } - - orElse(_fn: () => Option): Some { - return this; - } - - xor(other: Option): Option { - return other.isNone() ? this : None; - } - - contains(value: S): boolean { - return this.value === value; - } - - zip(other: Option): Option<[S, T]> { - return other.map((otherValue) => [this.value, otherValue]); - } - - zipWith(other: Option, fn: (self: S, other: T) => K): Option { - return other.map((otherValue) => fn(this.value, otherValue)); - } - - unwrap(): S { - return this.value; - } - - unwrapOr(_defaultValue: T): S { - return this.value; - } - - unwrapOrElse(_fn: () => T): S { - return this.value; - } - - expect(_message: string): S { - return this.value; - } -} - -export const Some = (value: T) => new SomeImpl(value); -export type Some = SomeImpl; - -export type Option = Some | None; - -export function someIfDefined(value: T | undefined): Option { - return value === undefined ? None : Some(value); -} -export function someIfNotNull(value: T | null): Option { - return value === null ? None : Some(value); -} diff --git a/web/src/types/result.ts b/web/src/types/result.ts deleted file mode 100644 index 5cbd4083..00000000 --- a/web/src/types/result.ts +++ /dev/null @@ -1,330 +0,0 @@ -import { None, Option, Some } from './option'; -import { ToString } from './utils'; - -interface BaseResult { - /** - * Returns true if the result is `Ok`. - * - * @returns boolean - */ - isOk(): this is Ok; - - /** - * Returns `true` if the result is `Ok` and the value inside of it matches - * a predicate. - * - * @param fn Predicate to match. - * @returns boolean - */ - isOkAnd(fn: (value: Readonly) => boolean): this is Ok; - - /** - * Returns `true` if the result is `Err`. - * - * @returns boolean - */ - isErr(): this is Err; - - /** - * Returns `true` if the result is `Err` and the value inside of it matches - * a predicate. - * - * @param fn Predicate to match. - * @returns boolean - */ - isErrAnd(fn: (error: Readonly) => boolean): this is Err; - - match(matcher: { - ok: (value: Readonly) => T; - err: (error: Readonly) => K; - }): T | K; - - /** - * Returns the contained `Ok` value. - * - * Because this function may throw, its use is generally discouraged. Instead, - * prefer to use pattern matching and handle the `Err` case explicitly, or - * call `unwrap_or` or `unwrap_or_else`. - * - * @returns The contained `Ok` value. - * - * @throws Throws if the value is an `Err`, with a panic message provided by - * the `Err`'s value. - */ - unwrap(): O; - - /** - * Returns the contained `Err` value. - * - * @returns The contained `Err` value. - * - * @throws Throws if the value is an `Ok`, with a custom panic message - * provided by the `Ok`'s value. - */ - unwrapErr(): E; - - /** - * Returns the contained `Ok` value or a provided default. - * - * @param defaultValue The default value if `Err`. - * @returns Either contained `Ok` value of default value. - */ - unwrapOr(defaultValue: O): O; - - /** - * Returns the contained `Ok` value or computes it from a closure. - * - * @param fn Computed the default value if `Err`. - * @returns The contained `Ok` value or computed default value. - */ - unwrapOrElse(fn: (error: Readonly) => O): O; - - /** - * Converts from `Result` to `Option`. Converts self into an - * `Option` and discarding the error, if any. - * - * @returns The converted option. - */ - ok(): Option; - - /** - * Converts from `Result` to `Option`. Converts self into an - * `Option` and discarding the success value, if any. - * - * @returns The converted option. - */ - err(): Option; - - /** - * Maps a `Result` to `Result` by applying a function to a - * contained `Ok` value, leaving an `Err` value untouched. - * - * This function can be used to compose the results of two functions. - * - * @param fn The mapping function. - * @returns The mapped result. - */ - map(fn: (value: Readonly) => T): Result; - - /** - * Returns the provided default (if `Err`), or applies a function to the - * contained value (if `Ok`). - * - * @param defaultValue The default value of `Err`. - * @param fn The mapping function if `Ok`. - * @returns The mapped result. - */ - mapOr(defaultValue: T, fn: (value: Readonly) => T): T; - - /** - * Maps a `Result` to `T` by applying fallback function default to a - * contained `Err` value, or function `fn` to a contained `Ok` value. - * - * This function can be used to unpack a successful result while handling - * an error. - * - * @param defaultFn Function computing the default value if `Err`. - * @param fn Mapping function if `Ok`. - * @returns The mapped value. - */ - mapOrElse( - defaultFn: (error: Readonly) => T, - fn: (value: Readonly) => T, - ): T; - - /** - * Maps a `Result` to `Result` by applying a function to a - * contained `Err` value, leaving an `Ok` value untouched. - * - * This function can be used to pass through a successful result while - * handling an error. - * - * @param fn Error mapping function. - * @returns The mapped result. - */ - mapErr(fn: (error: Readonly) => T): Result; - - /** - * Returns the contained `Ok` value. - * - * Because this function may throw, its use is generally discouraged. Instead, - * prefer to use pattern matching and handle the `Err` case explicitly, or - * call `unwrap_or` or `unwrap_or_else`. - * - * @param message Error message. - * @returns The contained `Ok` value. - * - * @throws Throws if the value is an `Err`, with a panic message including the - * passed message, and the content of the `Err`. - */ - expect(message: string): O; - - /** - * Returns the contained `Err` value. - * - * @param message Error message. - * @returns The contained `Err` value. - * - * @throws Throws if the value is an `Ok`, with an error message including the - * passed message, and the content of the `Ok`. - */ - expectErr(message: string): E; -} - -export class OkImpl implements BaseResult { - constructor(public value: O) {} - - isOk(): this is Ok { - return true; - } - - isOkAnd(fn: (value: Readonly) => boolean): this is Ok { - return fn(this.value); - } - - isErr(): this is Err { - return false; - } - - isErrAnd(_fn: (error: Readonly) => boolean): this is Err { - return false; - } - - match(matcher: { ok: (value: Readonly) => T }): T { - return matcher.ok(this.value); - } - - unwrap(): O { - return this.value; - } - - unwrapErr(): never { - return this.expectErr('called `Result.unwrapErr()` on an `Ok` value'); - } - - unwrapOr(_defaultValue: O): O { - return this.value; - } - - unwrapOrElse(_fn: (error: Readonly) => O): O { - return this.value; - } - - ok(): Option { - return Some(this.value); - } - - err(): None { - return None; - } - - map(fn: (value: Readonly) => T): Result { - return Ok(fn(this.value)); - } - - mapOr(_defaultValue: T, fn: (value: Readonly) => T): T { - return fn(this.value); - } - - mapOrElse( - _defaultFn: (error: Readonly) => T, - fn: (value: Readonly) => T, - ): T { - return fn(this.value); - } - - mapErr(_fn: (error: Readonly) => T): Result { - return Ok(this.value); - } - - expect(_message: string): O { - return this.value; - } - - expectErr(message: string): never { - throw new Error(`${message}`); - } -} - -export const Ok = (value: O) => new OkImpl(value); -export type Ok = OkImpl; - -class ErrImpl implements BaseResult { - constructor(public error: E) {} - - isOk(): this is Ok { - return false; - } - - isOkAnd(_fn: (value: never) => boolean): this is Ok { - return false; - } - - isErr(): this is Err { - return true; - } - - isErrAnd(fn: (error: Readonly) => boolean): this is Err { - return fn(this.error); - } - - match(matcher: { err: (error: Readonly) => K }): T | K { - return matcher.err(this.error); - } - - unwrap(): never { - return this.expect('called `Result.unwrap()` on an `Err` value'); - } - - unwrapErr(): E { - return this.error; - } - - unwrapOr(defaultValue: T): T { - return defaultValue; - } - - unwrapOrElse(fn: (error: Readonly) => T): T { - return fn(this.error); - } - - ok(): Option { - return None; - } - - err(): Option { - return Some(this.error); - } - - map(_fn: (value: never) => T): Result { - return Err(this.error); - } - - mapOr(defaultValue: T, _fn: (value: never) => T): T { - return defaultValue; - } - - mapOrElse( - defaultFn: (error: Readonly) => T, - _fn: (value: never) => T, - ): T { - return defaultFn(this.error); - } - - mapErr(fn: (error: Readonly) => T): Result { - return Err(fn(this.error)); - } - - expect(message: string): never { - throw new Error(`${message}`); - } - - expectErr(_message: string): E { - return this.error; - } -} - -export const Err = (error: E) => new ErrImpl(error); -export type Err = ErrImpl; - -export type Result = Ok | Err; diff --git a/web/src/types/utils.ts b/web/src/types/utils.ts deleted file mode 100644 index f2c7bcba..00000000 --- a/web/src/types/utils.ts +++ /dev/null @@ -1,3 +0,0 @@ -export interface ToString { - toString(): string; -} diff --git a/web/src/utils/localstorage.ts b/web/src/utils/localstorage.ts deleted file mode 100644 index 5caf05ee..00000000 --- a/web/src/utils/localstorage.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { Signal, createEffect, createRoot, createSignal } from 'solid-js'; -import { Option, someIfNotNull } from '../types'; - -function createStorageSignal( - storage: Storage, - name: string, -): Signal> { - const [value, setValue] = createSignal>( - someIfNotNull(storage.getItem(name)), - ); - // The session writer effect's lifecycle should be tied to that of the signal - createRoot(() => { - createEffect(() => { - value().match({ - none: () => storage.removeItem(name), - some: (currentValue) => storage.setItem(name, currentValue), - }); - }); - }); - return [value, setValue]; -} - -export function createLocalStorageSignal(name: string): Signal> { - return createStorageSignal(localStorage, name); -} diff --git a/web/src/vite-env.d.ts b/web/src/vite-env.d.ts deleted file mode 100644 index 11f02fe2..00000000 --- a/web/src/vite-env.d.ts +++ /dev/null @@ -1 +0,0 @@ -/// diff --git a/web/tests/option.test.ts b/web/tests/option.test.ts deleted file mode 100644 index ca5b925a..00000000 --- a/web/tests/option.test.ts +++ /dev/null @@ -1,241 +0,0 @@ -/* eslint-disable unicorn/prevent-abbreviations */ -import { assert, describe, it } from 'vitest'; -import { Err, None, Ok, Some } from '../src/types'; - -describe('option tests', () => { - it('option isSome', () => { - const option = Some('foo'); - - assert.isTrue(option.isSome()); - assert.isFalse(option.isNone()); - }); - - it('option isSomeAnd', () => { - const option = Some('foo'); - - assert.isTrue(option.isSomeAnd((value) => value.length === 3)); - assert.isFalse(option.isSomeAnd((value) => value.length === 2)); - assert.isFalse(option.isNone()); - }); - - it('option isNone', () => { - const option = None; - - assert.isFalse(option.isSome()); - assert.isTrue(option.isNone()); - }); - - it('option map', () => { - const optionA = Some('foo'); - assert.deepEqual( - optionA.map((value) => value.length), - Some(3), - ); - - const optionB = None; - assert.deepEqual( - optionB.map(() => 3), - None, - ); - }); - - it('option mapOr', () => { - const optionA = Some('foo'); - assert.equal( - optionA.mapOr(2, (value) => value.length), - 3, - ); - - const optionB = None; - assert.equal( - optionB.mapOr(2, () => 3), - 2, - ); - }); - - it('option mapOrElse', () => { - const optionA = Some('foo'); - assert.equal( - optionA.mapOrElse( - () => 2, - (value) => value.length, - ), - 3, - ); - - const optionB = None; - assert.equal( - optionB.mapOrElse( - () => 2, - () => 3, - ), - 2, - ); - }); - - it('option okOr', () => { - const optionA = Some('foo'); - assert.deepEqual(optionA.okOr('Error'), Ok('foo')); - - const optionB = None; - assert.deepEqual(optionB.okOr('Error'), Err('Error')); - }); - - it('option okOrElse', () => { - const optionA = Some('foo'); - assert.deepEqual( - optionA.okOrElse(() => 'Error'), - Ok('foo'), - ); - - const optionB = None; - assert.deepEqual( - optionB.okOrElse(() => 'Error'), - Err('Error'), - ); - }); - - it('option and', () => { - const optionA = Some('foo'); - assert.deepEqual(optionA.and(Some('bar')), Some('bar')); - - const optionB = None; - assert.deepEqual(optionB.and(Some('var')), None); - }); - - it('option andThen', () => { - const optionA = Some('foo'); - assert.deepEqual( - optionA.andThen((value) => Some(value.length)), - Some(3), - ); - - const optionB = Some('foo'); - assert.deepEqual( - optionB.andThen(() => None), - None, - ); - - const optionC = None; - assert.deepEqual( - optionC.andThen(() => Some(3)), - None, - ); - }); - - it('option filter', () => { - const optionA = Some('foo'); - assert.deepEqual( - optionA.filter((value) => value.length === 3), - Some('foo'), - ); - - const optionB = Some('foo'); - assert.deepEqual( - optionB.filter((value) => value.length === 2), - None, - ); - - const optionC = None; - assert.deepEqual( - optionC.filter(() => true), - None, - ); - }); - - it('option or', () => { - const optionA = Some('foo'); - const optionAOr = optionA.or(Some('bar')); - - assert.deepEqual(optionAOr, Some('foo')); - - const optionB = None; - const optionBOr = optionB.or(Some('bar')); - - assert.deepEqual(optionBOr, Some('bar')); - }); - - it('option orElse', () => { - const optionA = Some('foo'); - const optionAOr = optionA.orElse(() => Some('bar')); - - assert.deepEqual(optionAOr, Some('foo')); - - const optionB = None; - const optionBOr = optionB.orElse(() => Some('bar')); - - assert.deepEqual(optionBOr, Some('bar')); - }); - - it('option xor', () => { - const optionA = Some('foo'); - const someA = optionA.xor(None); - const noneA = optionA.xor(Some('bar')); - - assert.deepEqual(someA, Some('foo')); - assert.deepEqual(noneA, None); - - const optionB = None; - const noneB = optionB.xor(None); - const someB = optionB.xor(Some('bar')); - - assert.deepEqual(noneB, None); - assert.deepEqual(someB, Some('bar')); - }); - - it('option contains', () => { - const optionA = Some('foo'); - assert.isTrue(optionA.contains('foo')); - - const optionB = Some('foo'); - assert.isFalse(optionB.contains('bar')); - }); - - it('option zip', () => { - const option = Some('foo'); - const zipped = option.zip(Some(3)); - assert.deepEqual(zipped.unwrap(), ['foo', 3]); - - const zippedNone = option.zip(None); - assert.deepEqual(zippedNone, None); - }); - - it('option zipWith', () => { - const option = Some('foo'); - const zipped = option.zipWith(Some(3), (str, num) => str.repeat(num)); - assert.deepEqual(zipped, Some('foofoofoo')); - - const zippedNone = option.zipWith(None, () => 'bar'); - assert.deepEqual(zippedNone, None); - }); - - it('option unwrap', () => { - const option = Some('foo'); - assert.equal(option.unwrap(), 'foo'); - - const optionNone = None; - assert.throw(() => optionNone.unwrap()); - }); - - it('option unwrapOr', () => { - const optionA = Some('foo'); - assert.equal(optionA.unwrapOr('bar'), 'foo'); - - const optionB = None; - assert.equal(optionB.unwrapOr(3), 3); - }); - - it('option unwrapOrElse', () => { - const optionA = Some('foo'); - assert.equal( - optionA.unwrapOrElse(() => 3), - 'foo', - ); - - const optionB = None; - assert.equal( - optionB.unwrapOrElse(() => 3), - 3, - ); - }); -}); diff --git a/web/tests/result.test.ts b/web/tests/result.test.ts deleted file mode 100644 index ca5ed15f..00000000 --- a/web/tests/result.test.ts +++ /dev/null @@ -1,126 +0,0 @@ -/* eslint-disable unicorn/prevent-abbreviations */ -import { assert, describe, it } from 'vitest'; - -import { Err, None, Ok, Some } from '../src/types'; - -describe('result tests', () => { - it('result isOk', () => { - const result = Ok('foo'); - - assert.equal(result.isOk(), true); - assert.equal(result.isErr(), false); - }); - - it('result isOkAnd', () => { - const result = Ok('foo'); - - assert.equal( - result.isOkAnd((value) => value.length === 3), - true, - ); - assert.equal( - result.isOkAnd((value) => value.length === 2), - false, - ); - }); - - it('result ok', () => { - const result = Ok('foo'); - - assert.deepEqual(result.ok(), Some('foo')); - assert.deepEqual(result.err(), None); - }); - - it('result map', () => { - const result = Ok('foo'); - const mapped = result.map((value) => value.length); - - assert.equal(mapped.unwrap(), 3); - }); - - it('result isErr', () => { - const result = Err('foo'); - - assert.equal(result.isErr(), true); - assert.equal(result.isOk(), false); - }); - - it('result isErrAnd', () => { - const result = Err('foo'); - - assert.equal( - result.isErrAnd((error) => error.length === 3), - true, - ); - assert.equal( - result.isErrAnd((error) => error.length === 2), - false, - ); - }); - - it('result err', () => { - const result = Err('foo'); - - assert.deepEqual(result.err(), Some('foo')); - assert.deepEqual(result.ok(), None); - }); - - it('result map', () => { - const result = Ok('foo'); - const mapped = result.map((value) => value.length); - - assert.isTrue(result.isOk()); - assert.isTrue(mapped.isOk()); - - assert.equal(result.unwrap(), 'foo'); - assert.equal(mapped.unwrap(), 3); - }); - - it('result mapOr', () => { - const resultA = Ok('foo'); - const mappedA = resultA.mapOr(2, (value) => value.length); - - assert.isTrue(resultA.isOk()); - assert.equal(mappedA, 3); - - const resultB = Err('bar'); - const mappedB = resultB.mapOr(2, () => 3); - - assert.isTrue(resultB.isErr()); - assert.equal(mappedB, 2); - }); - - it('result mapOrElse', () => { - const resultA = Ok('foo'); - const mappedA = resultA.mapOrElse( - () => 2, - (value) => value.length, - ); - - assert.isTrue(resultA.isOk()); - assert.equal(mappedA, 3); - - const resultB = Err('bar'); - const mappedB = resultB.mapOrElse( - (err) => err.length, - () => 2, - ); - - assert.isTrue(resultB.isErr()); - assert.equal(mappedB, 3); - }); - - it('result mapErr', () => { - const resultA = Ok('foo'); - assert.deepEqual( - resultA.mapErr(() => 'bar'), - Ok('foo'), - ); - - const resultB = Err('foo'); - assert.deepEqual( - resultB.mapErr((err) => err.length), - Err(3), - ); - }); -}); diff --git a/web/tsconfig.json b/web/tsconfig.json deleted file mode 100644 index d1ee89c9..00000000 --- a/web/tsconfig.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "compilerOptions": { - "target": "ES2020", - "useDefineForClassFields": true, - "module": "ESNext", - "lib": ["ES2022", "DOM", "DOM.Iterable"], - "skipLibCheck": true, - /* Bundler mode */ - "moduleResolution": "bundler", - "allowImportingTsExtensions": true, - "resolveJsonModule": true, - "isolatedModules": true, - "noEmit": true, - /* Linting */ - "strict": true, - "noUnusedLocals": true, - "noUnusedParameters": true, - "noFallthroughCasesInSwitch": true, - "jsx": "preserve", - "jsxImportSource": "solid-js" - }, - "exclude": ["**/dist/**", "**/node_modules/**"] -} diff --git a/web/uno.config.ts b/web/uno.config.ts deleted file mode 100644 index f214078e..00000000 --- a/web/uno.config.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { defineConfig, presetUno } from 'unocss'; - -export default defineConfig({ - theme: { - colors: { - stackable: { - blue: { - light: '#1880BD', - dark: '#0B689F', - }, - }, - }, - }, - presets: [presetUno()], -}); diff --git a/web/vite.config.ts b/web/vite.config.ts deleted file mode 100644 index 9302e761..00000000 --- a/web/vite.config.ts +++ /dev/null @@ -1,18 +0,0 @@ -import { defineConfig } from 'vite'; -import solidPlugin from 'vite-plugin-solid'; -import UnoCSS from 'unocss/vite'; - -export default defineConfig({ - plugins: [solidPlugin(), UnoCSS()], - server: { - proxy: { - // Forward API requests to stackable-cockpitd - '/api': 'http://127.0.0.1:8000', - }, - }, - css: { - modules: { - localsConvention: 'camelCaseOnly', - }, - }, -}); diff --git a/web/vitest.config.ts b/web/vitest.config.ts deleted file mode 100644 index c7c898dc..00000000 --- a/web/vitest.config.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { defineConfig } from 'vitest/config'; - -export default defineConfig({ - test: { - coverage: { - enabled: true, - provider: 'c8', - reporter: ['html', 'text'], - }, - }, -}); diff --git a/yarn.lock b/yarn.lock deleted file mode 100644 index 6b30c1c0..00000000 --- a/yarn.lock +++ /dev/null @@ -1,3931 +0,0 @@ -# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. -# yarn lockfile v1 - - -"@ampproject/remapping@^2.2.0", "@ampproject/remapping@^2.2.1": - version "2.3.0" - resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.3.0.tgz#ed441b6fa600072520ce18b43d2c8cc8caecc7f4" - integrity sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw== - dependencies: - "@jridgewell/gen-mapping" "^0.3.5" - "@jridgewell/trace-mapping" "^0.3.24" - -"@antfu/install-pkg@^0.1.1": - version "0.1.1" - resolved "https://registry.yarnpkg.com/@antfu/install-pkg/-/install-pkg-0.1.1.tgz#157bb04f0de8100b9e4c01734db1a6c77e98bbb5" - integrity sha512-LyB/8+bSfa0DFGC06zpCEfs89/XoWZwws5ygEa5D+Xsm3OfI+aXQ86VgVG7Acyef+rSZ5HE7J8rrxzrQeM3PjQ== - dependencies: - execa "^5.1.1" - find-up "^5.0.0" - -"@antfu/utils@^0.7.7": - version "0.7.8" - resolved "https://registry.yarnpkg.com/@antfu/utils/-/utils-0.7.8.tgz#86cb0974bcab7e64e29b57d6d9021102307257de" - integrity sha512-rWQkqXRESdjXtc+7NRfK9lASQjpXJu1ayp7qi1d23zZorY+wBHVLHHoVcMsEnkqEBWTFqbztO7/QdJFzyEcLTg== - -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.23.5", "@babel/code-frame@^7.24.2": - version "7.24.2" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.24.2.tgz#718b4b19841809a58b29b68cde80bc5e1aa6d9ae" - integrity sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ== - dependencies: - "@babel/highlight" "^7.24.2" - picocolors "^1.0.0" - -"@babel/compat-data@^7.23.5": - version "7.24.4" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.24.4.tgz#6f102372e9094f25d908ca0d34fc74c74606059a" - integrity sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ== - -"@babel/core@^7.23.3": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.24.5.tgz#15ab5b98e101972d171aeef92ac70d8d6718f06a" - integrity sha512-tVQRucExLQ02Boi4vdPp49svNGcfL2GhdTCT9aldhXgCJVAI21EtRfBettiuLUwce/7r6bFdgs6JFkcdTiFttA== - dependencies: - "@ampproject/remapping" "^2.2.0" - "@babel/code-frame" "^7.24.2" - "@babel/generator" "^7.24.5" - "@babel/helper-compilation-targets" "^7.23.6" - "@babel/helper-module-transforms" "^7.24.5" - "@babel/helpers" "^7.24.5" - "@babel/parser" "^7.24.5" - "@babel/template" "^7.24.0" - "@babel/traverse" "^7.24.5" - "@babel/types" "^7.24.5" - convert-source-map "^2.0.0" - debug "^4.1.0" - gensync "^1.0.0-beta.2" - json5 "^2.2.3" - semver "^6.3.1" - -"@babel/generator@^7.23.6", "@babel/generator@^7.24.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.24.5.tgz#e5afc068f932f05616b66713e28d0f04e99daeb3" - integrity sha512-x32i4hEXvr+iI0NEoEfDKzlemF8AmtOP8CcrRaEcpzysWuoEb1KknpcvMsHKPONoKZiDuItklgWhB18xEhr9PA== - dependencies: - "@babel/types" "^7.24.5" - "@jridgewell/gen-mapping" "^0.3.5" - "@jridgewell/trace-mapping" "^0.3.25" - jsesc "^2.5.1" - -"@babel/helper-compilation-targets@^7.23.6": - version "7.23.6" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz#4d79069b16cbcf1461289eccfbbd81501ae39991" - integrity sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ== - dependencies: - "@babel/compat-data" "^7.23.5" - "@babel/helper-validator-option" "^7.23.5" - browserslist "^4.22.2" - lru-cache "^5.1.1" - semver "^6.3.1" - -"@babel/helper-environment-visitor@^7.22.20": - version "7.22.20" - resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz#96159db61d34a29dba454c959f5ae4a649ba9167" - integrity sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA== - -"@babel/helper-function-name@^7.23.0": - version "7.23.0" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz#1f9a3cdbd5b2698a670c30d2735f9af95ed52759" - integrity sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw== - dependencies: - "@babel/template" "^7.22.15" - "@babel/types" "^7.23.0" - -"@babel/helper-hoist-variables@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz#c01a007dac05c085914e8fb652b339db50d823bb" - integrity sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw== - dependencies: - "@babel/types" "^7.22.5" - -"@babel/helper-module-imports@7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz#1e3ebdbbd08aad1437b428c50204db13c5a3ca6e" - integrity sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA== - dependencies: - "@babel/types" "^7.18.6" - -"@babel/helper-module-imports@^7.22.15", "@babel/helper-module-imports@^7.24.3": - version "7.24.3" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz#6ac476e6d168c7c23ff3ba3cf4f7841d46ac8128" - integrity sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg== - dependencies: - "@babel/types" "^7.24.0" - -"@babel/helper-module-transforms@^7.24.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.24.5.tgz#ea6c5e33f7b262a0ae762fd5986355c45f54a545" - integrity sha512-9GxeY8c2d2mdQUP1Dye0ks3VDyIMS98kt/llQ2nUId8IsWqTF0l1LkSX0/uP7l7MCDrzXS009Hyhe2gzTiGW8A== - dependencies: - "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-module-imports" "^7.24.3" - "@babel/helper-simple-access" "^7.24.5" - "@babel/helper-split-export-declaration" "^7.24.5" - "@babel/helper-validator-identifier" "^7.24.5" - -"@babel/helper-plugin-utils@^7.24.0": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.5.tgz#a924607dd254a65695e5bd209b98b902b3b2f11a" - integrity sha512-xjNLDopRzW2o6ba0gKbkZq5YWEBaK3PCyTOY1K2P/O07LGMhMqlMXPxwN4S5/RhWuCobT8z0jrlKGlYmeR1OhQ== - -"@babel/helper-simple-access@^7.24.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.24.5.tgz#50da5b72f58c16b07fbd992810be6049478e85ba" - integrity sha512-uH3Hmf5q5n7n8mz7arjUlDOCbttY/DW4DYhE6FUsjKJ/oYC1kQQUvwEQWxRwUpX9qQKRXeqLwWxrqilMrf32sQ== - dependencies: - "@babel/types" "^7.24.5" - -"@babel/helper-split-export-declaration@^7.24.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.5.tgz#b9a67f06a46b0b339323617c8c6213b9055a78b6" - integrity sha512-5CHncttXohrHk8GWOFCcCl4oRD9fKosWlIRgWm4ql9VYioKm52Mk2xsmoohvm7f3JoiLSM5ZgJuRaf5QZZYd3Q== - dependencies: - "@babel/types" "^7.24.5" - -"@babel/helper-string-parser@^7.24.1": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz#f99c36d3593db9540705d0739a1f10b5e20c696e" - integrity sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ== - -"@babel/helper-validator-identifier@^7.19.1", "@babel/helper-validator-identifier@^7.24.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.5.tgz#918b1a7fa23056603506370089bd990d8720db62" - integrity sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA== - -"@babel/helper-validator-option@^7.23.5": - version "7.23.5" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz#907a3fbd4523426285365d1206c423c4c5520307" - integrity sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw== - -"@babel/helpers@^7.24.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.24.5.tgz#fedeb87eeafa62b621160402181ad8585a22a40a" - integrity sha512-CiQmBMMpMQHwM5m01YnrM6imUG1ebgYJ+fAIW4FZe6m4qHTPaRHti+R8cggAwkdz4oXhtO4/K9JWlh+8hIfR2Q== - dependencies: - "@babel/template" "^7.24.0" - "@babel/traverse" "^7.24.5" - "@babel/types" "^7.24.5" - -"@babel/highlight@^7.24.2": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.24.5.tgz#bc0613f98e1dd0720e99b2a9ee3760194a704b6e" - integrity sha512-8lLmua6AVh/8SLJRRVD6V8p73Hir9w5mJrhE+IPpILG31KKlI9iz5zmBYKcWPS59qSfgP9RaSBQSHHE81WKuEw== - dependencies: - "@babel/helper-validator-identifier" "^7.24.5" - chalk "^2.4.2" - js-tokens "^4.0.0" - picocolors "^1.0.0" - -"@babel/parser@^7.1.0", "@babel/parser@^7.20.7", "@babel/parser@^7.24.0", "@babel/parser@^7.24.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.5.tgz#4a4d5ab4315579e5398a82dcf636ca80c3392790" - integrity sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg== - -"@babel/plugin-syntax-jsx@^7.18.6": - version "7.24.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.24.1.tgz#3f6ca04b8c841811dbc3c5c5f837934e0d626c10" - integrity sha512-2eCtxZXf+kbkMIsXS4poTvT4Yu5rXiRa+9xGVT56raghjmBTKMpFNc9R4IDiB4emao9eO22Ox7CxuJG7BgExqA== - dependencies: - "@babel/helper-plugin-utils" "^7.24.0" - -"@babel/template@^7.22.15", "@babel/template@^7.24.0": - version "7.24.0" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.24.0.tgz#c6a524aa93a4a05d66aaf31654258fae69d87d50" - integrity sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA== - dependencies: - "@babel/code-frame" "^7.23.5" - "@babel/parser" "^7.24.0" - "@babel/types" "^7.24.0" - -"@babel/traverse@^7.24.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.24.5.tgz#972aa0bc45f16983bf64aa1f877b2dd0eea7e6f8" - integrity sha512-7aaBLeDQ4zYcUFDUD41lJc1fG8+5IU9DaNSJAgal866FGvmD5EbWQgnEC6kO1gGLsX0esNkfnJSndbTXA3r7UA== - dependencies: - "@babel/code-frame" "^7.24.2" - "@babel/generator" "^7.24.5" - "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-function-name" "^7.23.0" - "@babel/helper-hoist-variables" "^7.22.5" - "@babel/helper-split-export-declaration" "^7.24.5" - "@babel/parser" "^7.24.5" - "@babel/types" "^7.24.5" - debug "^4.3.1" - globals "^11.1.0" - -"@babel/types@^7.0.0", "@babel/types@^7.18.6", "@babel/types@^7.20.7", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.23.6", "@babel/types@^7.24.0", "@babel/types@^7.24.5": - version "7.24.5" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.5.tgz#7661930afc638a5383eb0c4aee59b74f38db84d7" - integrity sha512-6mQNsaLeXTw0nxYUYu+NSa4Hx4BlF1x1x8/PMFbiR+GBSr+2DkECc69b8hgy2frEodNcvPffeH8YfWd3LI6jhQ== - dependencies: - "@babel/helper-string-parser" "^7.24.1" - "@babel/helper-validator-identifier" "^7.24.5" - to-fast-properties "^2.0.0" - -"@bcoe/v8-coverage@^0.2.3": - version "0.2.3" - resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" - integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== - -"@esbuild/android-arm64@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz#984b4f9c8d0377443cc2dfcef266d02244593622" - integrity sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ== - -"@esbuild/android-arm@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.18.20.tgz#fedb265bc3a589c84cc11f810804f234947c3682" - integrity sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw== - -"@esbuild/android-x64@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.18.20.tgz#35cf419c4cfc8babe8893d296cd990e9e9f756f2" - integrity sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg== - -"@esbuild/darwin-arm64@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz#08172cbeccf95fbc383399a7f39cfbddaeb0d7c1" - integrity sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA== - -"@esbuild/darwin-x64@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz#d70d5790d8bf475556b67d0f8b7c5bdff053d85d" - integrity sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ== - -"@esbuild/freebsd-arm64@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz#98755cd12707f93f210e2494d6a4b51b96977f54" - integrity sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw== - -"@esbuild/freebsd-x64@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz#c1eb2bff03915f87c29cece4c1a7fa1f423b066e" - integrity sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ== - -"@esbuild/linux-arm64@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz#bad4238bd8f4fc25b5a021280c770ab5fc3a02a0" - integrity sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA== - -"@esbuild/linux-arm@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz#3e617c61f33508a27150ee417543c8ab5acc73b0" - integrity sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg== - -"@esbuild/linux-ia32@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz#699391cccba9aee6019b7f9892eb99219f1570a7" - integrity sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA== - -"@esbuild/linux-loong64@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz#e6fccb7aac178dd2ffb9860465ac89d7f23b977d" - integrity sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg== - -"@esbuild/linux-mips64el@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz#eeff3a937de9c2310de30622a957ad1bd9183231" - integrity sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ== - -"@esbuild/linux-ppc64@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz#2f7156bde20b01527993e6881435ad79ba9599fb" - integrity sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA== - -"@esbuild/linux-riscv64@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz#6628389f210123d8b4743045af8caa7d4ddfc7a6" - integrity sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A== - -"@esbuild/linux-s390x@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz#255e81fb289b101026131858ab99fba63dcf0071" - integrity sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ== - -"@esbuild/linux-x64@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz#c7690b3417af318a9b6f96df3031a8865176d338" - integrity sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w== - -"@esbuild/netbsd-x64@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz#30e8cd8a3dded63975e2df2438ca109601ebe0d1" - integrity sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A== - -"@esbuild/openbsd-x64@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz#7812af31b205055874c8082ea9cf9ab0da6217ae" - integrity sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg== - -"@esbuild/sunos-x64@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz#d5c275c3b4e73c9b0ecd38d1ca62c020f887ab9d" - integrity sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ== - -"@esbuild/win32-arm64@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz#73bc7f5a9f8a77805f357fab97f290d0e4820ac9" - integrity sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg== - -"@esbuild/win32-ia32@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz#ec93cbf0ef1085cc12e71e0d661d20569ff42102" - integrity sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g== - -"@esbuild/win32-x64@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz#786c5f41f043b07afb1af37683d7c33668858f6d" - integrity sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ== - -"@eslint-community/eslint-utils@^4.2.0", "@eslint-community/eslint-utils@^4.4.0": - version "4.4.0" - resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz#a23514e8fb9af1269d5f7788aa556798d61c6b59" - integrity sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA== - dependencies: - eslint-visitor-keys "^3.3.0" - -"@eslint-community/regexpp@^4.4.0", "@eslint-community/regexpp@^4.6.1": - version "4.10.0" - resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.10.0.tgz#548f6de556857c8bb73bbee70c35dc82a2e74d63" - integrity sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA== - -"@eslint/eslintrc@^2.1.4": - version "2.1.4" - resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-2.1.4.tgz#388a269f0f25c1b6adc317b5a2c55714894c70ad" - integrity sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ== - dependencies: - ajv "^6.12.4" - debug "^4.3.2" - espree "^9.6.0" - globals "^13.19.0" - ignore "^5.2.0" - import-fresh "^3.2.1" - js-yaml "^4.1.0" - minimatch "^3.1.2" - strip-json-comments "^3.1.1" - -"@eslint/js@8.57.0": - version "8.57.0" - resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.57.0.tgz#a5417ae8427873f1dd08b70b3574b453e67b5f7f" - integrity sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g== - -"@fastify/busboy@^2.0.0": - version "2.1.1" - resolved "https://registry.yarnpkg.com/@fastify/busboy/-/busboy-2.1.1.tgz#b9da6a878a371829a0502c9b6c1c143ef6663f4d" - integrity sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA== - -"@fluent/bundle@^0.18.0": - version "0.18.0" - resolved "https://registry.yarnpkg.com/@fluent/bundle/-/bundle-0.18.0.tgz#bf67e306719a33baf3b66c88af5ac427d7800dbd" - integrity sha512-8Wfwu9q8F9g2FNnv82g6Ch/E1AW1wwljsUOolH5NEtdJdv0sZTuWvfCM7c3teB9dzNaJA8rn4khpidpozHWYEA== - -"@fluent/langneg@^0.7.0": - version "0.7.0" - resolved "https://registry.yarnpkg.com/@fluent/langneg/-/langneg-0.7.0.tgz#51c58d0b422595640195d8234c0f15687cfcb261" - integrity sha512-StAM0vgsD1QK+nFikaKs9Rxe3JGNipiXrpmemNGwM4gWERBXPe9gjzsBoKjgBgq1Vyiy+xy/C652QIWY+MPyYw== - -"@fluent/sequence@^0.8.0": - version "0.8.0" - resolved "https://registry.yarnpkg.com/@fluent/sequence/-/sequence-0.8.0.tgz#dd3da353a0635f1efa5f27e6d4fc59e01f162372" - integrity sha512-eV5QlEEVV/wR3AFQLXO67x4yPRPQXyqke0c8yucyMSeW36B3ecZyVFlY1UprzrfFV8iPJB4TAehDy/dLGbvQ1Q== - -"@humanwhocodes/config-array@^0.11.14": - version "0.11.14" - resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.11.14.tgz#d78e481a039f7566ecc9660b4ea7fe6b1fec442b" - integrity sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg== - dependencies: - "@humanwhocodes/object-schema" "^2.0.2" - debug "^4.3.1" - minimatch "^3.0.5" - -"@humanwhocodes/module-importer@^1.0.1": - version "1.0.1" - resolved "https://registry.yarnpkg.com/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz#af5b2691a22b44be847b0ca81641c5fb6ad0172c" - integrity sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA== - -"@humanwhocodes/object-schema@^2.0.2": - version "2.0.3" - resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz#4a2868d75d6d6963e423bcf90b7fd1be343409d3" - integrity sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA== - -"@iconify/types@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@iconify/types/-/types-2.0.0.tgz#ab0e9ea681d6c8a1214f30cd741fe3a20cc57f57" - integrity sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg== - -"@iconify/utils@^2.1.5": - version "2.1.23" - resolved "https://registry.yarnpkg.com/@iconify/utils/-/utils-2.1.23.tgz#1cde237dd5142a66d9fbd065b2fa7acc4f80f862" - integrity sha512-YGNbHKM5tyDvdWZ92y2mIkrfvm5Fvhe6WJSkWu7vvOFhMtYDP0casZpoRz0XEHZCrYsR4stdGT3cZ52yp5qZdQ== - dependencies: - "@antfu/install-pkg" "^0.1.1" - "@antfu/utils" "^0.7.7" - "@iconify/types" "^2.0.0" - debug "^4.3.4" - kolorist "^1.8.0" - local-pkg "^0.5.0" - mlly "^1.6.1" - -"@istanbuljs/schema@^0.1.2", "@istanbuljs/schema@^0.1.3": - version "0.1.3" - resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" - integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== - -"@jridgewell/gen-mapping@^0.3.5": - version "0.3.5" - resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz#dcce6aff74bdf6dad1a95802b69b04a2fcb1fb36" - integrity sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg== - dependencies: - "@jridgewell/set-array" "^1.2.1" - "@jridgewell/sourcemap-codec" "^1.4.10" - "@jridgewell/trace-mapping" "^0.3.24" - -"@jridgewell/resolve-uri@^3.1.0": - version "3.1.2" - resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz#7a0ee601f60f99a20c7c7c5ff0c80388c1189bd6" - integrity sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw== - -"@jridgewell/set-array@^1.2.1": - version "1.2.1" - resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.2.1.tgz#558fb6472ed16a4c850b889530e6b36438c49280" - integrity sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A== - -"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.14", "@jridgewell/sourcemap-codec@^1.4.15": - version "1.4.15" - resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32" - integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== - -"@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25": - version "0.3.25" - resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz#15f190e98895f3fc23276ee14bc76b675c2e50f0" - integrity sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ== - dependencies: - "@jridgewell/resolve-uri" "^3.1.0" - "@jridgewell/sourcemap-codec" "^1.4.14" - -"@nodelib/fs.scandir@2.1.5": - version "2.1.5" - resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5" - integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g== - dependencies: - "@nodelib/fs.stat" "2.0.5" - run-parallel "^1.1.9" - -"@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2": - version "2.0.5" - resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" - integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== - -"@nodelib/fs.walk@^1.2.3", "@nodelib/fs.walk@^1.2.8": - version "1.2.8" - resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" - integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== - dependencies: - "@nodelib/fs.scandir" "2.1.5" - fastq "^1.6.0" - -"@nothing-but/utils@^0.3.2": - version "0.3.2" - resolved "https://registry.yarnpkg.com/@nothing-but/utils/-/utils-0.3.2.tgz#516a993bc9a4bd6367aa263d0895954c974cf3d0" - integrity sha512-y7ynAt3lVjvXF7+xVVezGnq4pJliX/ducCa9/AV6iB03M1JUcV0iq/9qK6h+4ieFPXhTAX2a/VuBNgksjnUQZw== - -"@polka/url@^1.0.0-next.24": - version "1.0.0-next.25" - resolved "https://registry.yarnpkg.com/@polka/url/-/url-1.0.0-next.25.tgz#f077fdc0b5d0078d30893396ff4827a13f99e817" - integrity sha512-j7P6Rgr3mmtdkeDGTe0E/aYyWEWVtc5yFXtHCRHs28/jptDEWfaVOc5T7cblqy1XKPPfCxJc/8DwQ5YgLOZOVQ== - -"@rollup/pluginutils@^5.0.2": - version "5.1.0" - resolved "https://registry.yarnpkg.com/@rollup/pluginutils/-/pluginutils-5.1.0.tgz#7e53eddc8c7f483a4ad0b94afb1f7f5fd3c771e0" - integrity sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g== - dependencies: - "@types/estree" "^1.0.0" - estree-walker "^2.0.2" - picomatch "^2.3.1" - -"@solid-devtools/debugger@^0.22.4": - version "0.22.4" - resolved "https://registry.yarnpkg.com/@solid-devtools/debugger/-/debugger-0.22.4.tgz#68fd0e1e4fe6738c4782ea8c58150c0c49543d5a" - integrity sha512-rrKZB1hbteOpptH4AiK9nKT3oLoJDAU1UJnfZJB4zIvvmqZXQcpsEYfXvJjDBIYHONeuTJ3K2tpgLjGb7h7H6g== - dependencies: - "@nothing-but/utils" "^0.3.2" - "@solid-devtools/shared" "^0.12.3" - "@solid-primitives/bounds" "^0.0.114" - "@solid-primitives/cursor" "^0.0.111" - "@solid-primitives/event-bus" "^1.0.7" - "@solid-primitives/event-listener" "^2.2.13" - "@solid-primitives/keyboard" "^1.2.3" - "@solid-primitives/platform" "^0.0.105" - "@solid-primitives/rootless" "^1.4.1" - "@solid-primitives/scheduled" "^1.4.0" - "@solid-primitives/static-store" "^0.0.4" - "@solid-primitives/utils" "^6.2.0" - -"@solid-devtools/frontend@^0.10.3": - version "0.10.3" - resolved "https://registry.yarnpkg.com/@solid-devtools/frontend/-/frontend-0.10.3.tgz#4d600fb370778030755c4541f91245258011ef44" - integrity sha512-mbz+4pJcVDZvz4YKKFpAyUyFQx49DCdgvcs5b5kkJxhzVeCBN/JbxsThBIWfDE603VD0A7wjjzTDeAxrNRTrBQ== - dependencies: - "@solid-devtools/debugger" "^0.22.4" - "@solid-devtools/shared" "^0.12.3" - "@solid-primitives/context" "^0.2.1" - "@solid-primitives/cursor" "^0.0.111" - "@solid-primitives/date" "^2.0.15" - "@solid-primitives/event-bus" "^1.0.7" - "@solid-primitives/event-listener" "^2.2.13" - "@solid-primitives/jsx-tokenizer" "^1.0.6" - "@solid-primitives/keyboard" "^1.2.3" - "@solid-primitives/keyed" "^1.2.0" - "@solid-primitives/media" "^2.2.3" - "@solid-primitives/mouse" "^2.0.14" - "@solid-primitives/props" "^3.1.6" - "@solid-primitives/range" "^0.1.14" - "@solid-primitives/resize-observer" "^2.0.18" - "@solid-primitives/scheduled" "^1.4.0" - "@solid-primitives/static-store" "^0.0.4" - "@solid-primitives/styles" "^0.0.110" - "@solid-primitives/timer" "^1.3.7" - "@solid-primitives/utils" "^6.2.0" - clsx "^2.0.0" - solid-headless "^0.13.1" - -"@solid-devtools/overlay@^0.27.7": - version "0.27.9" - resolved "https://registry.yarnpkg.com/@solid-devtools/overlay/-/overlay-0.27.9.tgz#fdb60eff6bcbceeb2d25adba3e4e22df846f0cb5" - integrity sha512-kUQmTGzb+ISIaSB8eknbvUE4834ruUyHbtYpb5JJUfN4gsSdwr4q//kPEuLEoA4tZfMJp9VGjP6GuA+s3kHEqg== - dependencies: - "@solid-devtools/debugger" "^0.22.4" - "@solid-devtools/frontend" "^0.10.3" - "@solid-devtools/shared" "^0.12.3" - "@solid-primitives/cursor" "^0.0.111" - "@solid-primitives/event-listener" "^2.2.13" - "@solid-primitives/media" "^2.2.3" - "@solid-primitives/utils" "^6.2.0" - -"@solid-devtools/shared@^0.12.3": - version "0.12.3" - resolved "https://registry.yarnpkg.com/@solid-devtools/shared/-/shared-0.12.3.tgz#ccd10dcae9e8be7997c74e118c55c52b6bc0517a" - integrity sha512-GBPyj+S4lZmVO5WK73/FP1l1lHYoeDwqbSV2M15l5LSAtaG68HBE6smmMQI7G12XShfs8soM+PXwlx8YZ9ElIw== - dependencies: - "@solid-primitives/event-bus" "^1.0.7" - "@solid-primitives/event-listener" "^2.2.13" - "@solid-primitives/media" "^2.2.3" - "@solid-primitives/refs" "^1.0.4" - "@solid-primitives/rootless" "^1.4.1" - "@solid-primitives/scheduled" "^1.4.0" - "@solid-primitives/static-store" "^0.0.4" - "@solid-primitives/styles" "^0.0.110" - "@solid-primitives/utils" "^6.2.0" - -"@solid-primitives/bounds@^0.0.114": - version "0.0.114" - resolved "https://registry.yarnpkg.com/@solid-primitives/bounds/-/bounds-0.0.114.tgz#80e44d96fc50fbf75db630cee4512be0a9aee6c5" - integrity sha512-PS+PObcgzhoaY05ets7u+9/5vW+5MFcQxwaS18N9ZpxYh8dPkk8vYgJkUegz5t4jIeZrNwowI6xGBpdAQWMPqg== - dependencies: - "@solid-primitives/event-listener" "^2.2.13" - "@solid-primitives/resize-observer" "^2.0.18" - "@solid-primitives/static-store" "^0.0.4" - "@solid-primitives/utils" "^6.2.0" - -"@solid-primitives/context@^0.2.1": - version "0.2.3" - resolved "https://registry.yarnpkg.com/@solid-primitives/context/-/context-0.2.3.tgz#3514620a973ea0703e06db34d5a32709442941ee" - integrity sha512-6/e8qu9qJf48FJ+sxc/B782NdgFw5TvI8+r6U0gHizumfZcWZg8FAJqvRZAiwlygkUNiTQOGTeO10LVbMm0kvg== - -"@solid-primitives/cursor@^0.0.111": - version "0.0.111" - resolved "https://registry.yarnpkg.com/@solid-primitives/cursor/-/cursor-0.0.111.tgz#6fdb9fa8dd13f2797f88ef08abf3354185cb974d" - integrity sha512-P/KqyIdi//VSiE+7uEkbYpO4lubnFBxd40FrNzjZ7iJcxb2woyAsvzKV6pHLIznxRRrAM7bnUsj20e3qbw5TCQ== - dependencies: - "@solid-primitives/utils" "^6.2.0" - -"@solid-primitives/date@^2.0.15": - version "2.0.21" - resolved "https://registry.yarnpkg.com/@solid-primitives/date/-/date-2.0.21.tgz#a75826b428febd4f9521fada26cc1bac444761e9" - integrity sha512-DZSmILY9YZarO0IVRzac8gQ6aMgC9QKzKJEgZnv7cF5K4QdkzhdkYud3HC/pfacZ7x1elopZrS0HbCkQllCrYg== - dependencies: - "@solid-primitives/memo" "^1.3.8" - "@solid-primitives/timer" "^1.3.9" - "@solid-primitives/utils" "^6.2.3" - -"@solid-primitives/event-bus@^1.0.7": - version "1.0.11" - resolved "https://registry.yarnpkg.com/@solid-primitives/event-bus/-/event-bus-1.0.11.tgz#0a4c42d79f588a21c9bf061b6ace1508081d14df" - integrity sha512-bSwVA4aI2aNHomSbEroUnisMSyDDXJbrw4U8kFEvrcYdlLrJX5i6QeCFx+vj/zdQQw62KAllrEIyWP8KMpPVnQ== - dependencies: - "@solid-primitives/utils" "^6.2.3" - -"@solid-primitives/event-listener@^2.2.13", "@solid-primitives/event-listener@^2.3.3": - version "2.3.3" - resolved "https://registry.yarnpkg.com/@solid-primitives/event-listener/-/event-listener-2.3.3.tgz#ab28c8627aa7d6234617867d8b02c80e1b8f0948" - integrity sha512-DAJbl+F0wrFW2xmcV8dKMBhk9QLVLuBSW+TR4JmIfTaObxd13PuL7nqaXnaYKDWOYa6otB00qcCUIGbuIhSUgQ== - dependencies: - "@solid-primitives/utils" "^6.2.3" - -"@solid-primitives/jsx-tokenizer@^1.0.6": - version "1.0.10" - resolved "https://registry.yarnpkg.com/@solid-primitives/jsx-tokenizer/-/jsx-tokenizer-1.0.10.tgz#3ae91d47f8a753c3ca5d818f9d3e8299f5fe3026" - integrity sha512-OziPOhJcVneuEwuC4Ys2atePcBhXZK00h93Tg+dGw5GUijB8hvP97qXZ9Q8oNai0FCInlGUOYQnOgM9piBoSMQ== - dependencies: - "@solid-primitives/utils" "^6.2.3" - -"@solid-primitives/keyboard@^1.2.3": - version "1.2.8" - resolved "https://registry.yarnpkg.com/@solid-primitives/keyboard/-/keyboard-1.2.8.tgz#99a695deede1724e03ce415ebdf5969c174fa398" - integrity sha512-pJtcbkjozS6L1xvTht9rPpyPpX55nAkfBzbFWdf3y0Suwh6qClTibvvObzKOf7uzQ+8aZRDH4LsoGmbTKXtJjQ== - dependencies: - "@solid-primitives/event-listener" "^2.3.3" - "@solid-primitives/rootless" "^1.4.5" - "@solid-primitives/utils" "^6.2.3" - -"@solid-primitives/keyed@^1.2.0": - version "1.2.2" - resolved "https://registry.yarnpkg.com/@solid-primitives/keyed/-/keyed-1.2.2.tgz#42323c11ecfd9f6e4525af2cb53475ff2dfb4d51" - integrity sha512-oBziY40JK4XmJ57XGkFl8j0GtEarSu0hhjdkUQgqL/U0QQE3TZrRo9uhgH7I6VGJKBKG7SAraTPE6S5lVLM1ow== - -"@solid-primitives/media@^2.2.3": - version "2.2.9" - resolved "https://registry.yarnpkg.com/@solid-primitives/media/-/media-2.2.9.tgz#bbe1e30b108cd3ece2e214d529e757702eb4dd34" - integrity sha512-QUmU62D4/d9YWx/4Dvr/UZasIkIpqNXz7wosA5GLmesRW9XlPa3G5M6uOmTw73SByHNTCw0D6x8bSdtvvLgzvQ== - dependencies: - "@solid-primitives/event-listener" "^2.3.3" - "@solid-primitives/rootless" "^1.4.5" - "@solid-primitives/static-store" "^0.0.8" - "@solid-primitives/utils" "^6.2.3" - -"@solid-primitives/memo@^1.3.8": - version "1.3.8" - resolved "https://registry.yarnpkg.com/@solid-primitives/memo/-/memo-1.3.8.tgz#d9359b0fd58b3653ca9fd77c14181f2033a78b5b" - integrity sha512-U75pfLFSxFmM2xbx1+2XPPyWbaXrnUFF10spbFuOUgJ7azrC+4y+FnrVi4RKqHw9gftd8aKQuTiyMQq468YLQw== - dependencies: - "@solid-primitives/scheduled" "^1.4.3" - "@solid-primitives/utils" "^6.2.3" - -"@solid-primitives/mouse@^2.0.14": - version "2.0.19" - resolved "https://registry.yarnpkg.com/@solid-primitives/mouse/-/mouse-2.0.19.tgz#e126939f946df323f526eb2bd889f756b1eb644d" - integrity sha512-mVYhWsMjjIdZ8iLIypiYGhNGtLOFVCmCeXaNQVYUjPOZkZOm9aaKjjGqgdwVw5RtJ0ZfNvKH/A5WE1t/fOBvLA== - dependencies: - "@solid-primitives/event-listener" "^2.3.3" - "@solid-primitives/rootless" "^1.4.5" - "@solid-primitives/static-store" "^0.0.8" - "@solid-primitives/utils" "^6.2.3" - -"@solid-primitives/platform@^0.0.105": - version "0.0.105" - resolved "https://registry.yarnpkg.com/@solid-primitives/platform/-/platform-0.0.105.tgz#d282938c585d2e252b219b33ef1c8c96551a396a" - integrity sha512-GULqmMc5vNsLSsIxIEYYxJv/6ypGKG+ig9hzSi4lxVPfooX6Go6txDlhv53woUSvaG939ceZGRq+X5uADMed6g== - -"@solid-primitives/props@^3.1.6": - version "3.1.11" - resolved "https://registry.yarnpkg.com/@solid-primitives/props/-/props-3.1.11.tgz#bd40c2808ab4e2d4adecbd3ccbad5c3756a72b1c" - integrity sha512-jZAKWwvDRHjiydIumDgMj68qviIbowQ1ci7nkEAgzgvanNkhKSQV8iPgR2jMk1uv7S2ZqXYHslVQTgJel/TEyg== - dependencies: - "@solid-primitives/utils" "^6.2.3" - -"@solid-primitives/range@^0.1.14": - version "0.1.18" - resolved "https://registry.yarnpkg.com/@solid-primitives/range/-/range-0.1.18.tgz#4653887d3c2536650c7a923d1978ceaa51d6cb75" - integrity sha512-F5OTdpRFdeLOPEHs92S714GKUk1ZUUmEJ45Z/Z5h6i43DHi7fUFgUL7LeHFxVgIjtGv+Tg5Op7aM9PdSo5iqeQ== - dependencies: - "@solid-primitives/utils" "^6.2.3" - -"@solid-primitives/refs@^1.0.4": - version "1.0.8" - resolved "https://registry.yarnpkg.com/@solid-primitives/refs/-/refs-1.0.8.tgz#2f8e1db2c08601c8a9cf4479b05f490470aaa3ad" - integrity sha512-+jIsWG8/nYvhaCoG2Vg6CJOLgTmPKFbaCrNQKWfChalgUf9WrVxWw0CdJb3yX15n5lUcQ0jBo6qYtuVVmBLpBw== - dependencies: - "@solid-primitives/utils" "^6.2.3" - -"@solid-primitives/resize-observer@^2.0.18": - version "2.0.25" - resolved "https://registry.yarnpkg.com/@solid-primitives/resize-observer/-/resize-observer-2.0.25.tgz#c97a01193fe9b2c08bc240d096b92888ab44bda0" - integrity sha512-jVDXkt2MiriYRaz4DYs62185d+6jQ+1DCsR+v7f6XMsIJJuf963qdBRFjtZtKXBaxdPNMyuPeDgf5XQe3EoDJg== - dependencies: - "@solid-primitives/event-listener" "^2.3.3" - "@solid-primitives/rootless" "^1.4.5" - "@solid-primitives/static-store" "^0.0.8" - "@solid-primitives/utils" "^6.2.3" - -"@solid-primitives/rootless@^1.4.1", "@solid-primitives/rootless@^1.4.5": - version "1.4.5" - resolved "https://registry.yarnpkg.com/@solid-primitives/rootless/-/rootless-1.4.5.tgz#120244fd5e02d9ea111ed2236fedcef572010be4" - integrity sha512-GFJE9GC3ojx0aUKqAUZmQPyU8fOVMtnVNrkdk2yS4kd17WqVSpXpoTmo9CnOwA+PG7FTzdIkogvfLQSLs4lrww== - dependencies: - "@solid-primitives/utils" "^6.2.3" - -"@solid-primitives/scheduled@^1.4.0", "@solid-primitives/scheduled@^1.4.3": - version "1.4.3" - resolved "https://registry.yarnpkg.com/@solid-primitives/scheduled/-/scheduled-1.4.3.tgz#379443e759c90275f7530c11c9df63ff63c8c9fd" - integrity sha512-HfWN5w7b7FEc6VPLBKnnE302h90jsLMuR28Fcf7neRGGf8jBj6wm6/UFQ00VlKexHFMR6KQ2u4VBh5a1ZcqM8g== - -"@solid-primitives/static-store@^0.0.4": - version "0.0.4" - resolved "https://registry.yarnpkg.com/@solid-primitives/static-store/-/static-store-0.0.4.tgz#90cd12e72bcd68c5a69fd01214e0cfd8f30f805a" - integrity sha512-NcLtDNA6H+Z9LmqaUe4SKfMx0YbszIMXEqfV15cB34t5XyEeOM5TihYwsVJ/dpkmpHYzflm0SwAL+P9uwyzvWQ== - dependencies: - "@solid-primitives/utils" "^6.2.0" - -"@solid-primitives/static-store@^0.0.8": - version "0.0.8" - resolved "https://registry.yarnpkg.com/@solid-primitives/static-store/-/static-store-0.0.8.tgz#a4d7a93a254bf89d3c5c5f27a031d1a46c34f5c5" - integrity sha512-ZecE4BqY0oBk0YG00nzaAWO5Mjcny8Fc06CdbXadH9T9lzq/9GefqcSe/5AtdXqjvY/DtJ5C6CkcjPZO0o/eqg== - dependencies: - "@solid-primitives/utils" "^6.2.3" - -"@solid-primitives/styles@^0.0.110": - version "0.0.110" - resolved "https://registry.yarnpkg.com/@solid-primitives/styles/-/styles-0.0.110.tgz#7457ffdf539a8ccbfc381a4fda81fa31adc429fa" - integrity sha512-PSaM1Rl4+zwpOfxil8KlY87UC+R1rQy8b2EiCMjgTWakRK1TjvFM78KY5/ohFg42bp2V/DWRx2QaL/Unjm3HMg== - dependencies: - "@solid-primitives/rootless" "^1.4.1" - "@solid-primitives/utils" "^6.2.0" - -"@solid-primitives/timer@^1.3.7", "@solid-primitives/timer@^1.3.9": - version "1.3.9" - resolved "https://registry.yarnpkg.com/@solid-primitives/timer/-/timer-1.3.9.tgz#ad42595fbdc045804e681078364ebe56f19729f8" - integrity sha512-uD+4+boV7k+5W+hL5d30eodUXSwOfOQz8AfbMPVmLOHaTmd0mdfpw0NkYhyn1rgcx1bSn/nHTd8lraHiMhO/6w== - -"@solid-primitives/utils@^6.2.0", "@solid-primitives/utils@^6.2.3": - version "6.2.3" - resolved "https://registry.yarnpkg.com/@solid-primitives/utils/-/utils-6.2.3.tgz#1abed4c74a2696e08bd2e49cf2b86fc8b87a32bd" - integrity sha512-CqAwKb2T5Vi72+rhebSsqNZ9o67buYRdEJrIFzRXz3U59QqezuuxPsyzTSVCacwS5Pf109VRsgCJQoxKRoECZQ== - -"@solidjs/router@^0.8.2": - version "0.8.4" - resolved "https://registry.yarnpkg.com/@solidjs/router/-/router-0.8.4.tgz#aa19bee6dc6289807821b2d0dd5cf07a79da6b68" - integrity sha512-Gi/WVoVseGMKS1DBdT3pNAMgOzEOp6Q3dpgNd2mW9GUEnVocPmtyBjDvXwN6m7tjSGsqqfqJFXk7bm1hxabSRw== - -"@types/babel__core@^7.20.4": - version "7.20.5" - resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.20.5.tgz#3df15f27ba85319caa07ba08d0721889bb39c017" - integrity sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA== - dependencies: - "@babel/parser" "^7.20.7" - "@babel/types" "^7.20.7" - "@types/babel__generator" "*" - "@types/babel__template" "*" - "@types/babel__traverse" "*" - -"@types/babel__generator@*": - version "7.6.8" - resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.8.tgz#f836c61f48b1346e7d2b0d93c6dacc5b9535d3ab" - integrity sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw== - dependencies: - "@babel/types" "^7.0.0" - -"@types/babel__template@*": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.4.4.tgz#5672513701c1b2199bc6dad636a9d7491586766f" - integrity sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A== - dependencies: - "@babel/parser" "^7.1.0" - "@babel/types" "^7.0.0" - -"@types/babel__traverse@*": - version "7.20.5" - resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.20.5.tgz#7b7502be0aa80cc4ef22978846b983edaafcd4dd" - integrity sha512-WXCyOcRtH37HAUkpXhUduaxdm82b4GSlyTqajXviN4EfiuPgNYR109xMCKvpl6zPIpua0DGlMEDCq+g8EdoheQ== - dependencies: - "@babel/types" "^7.20.7" - -"@types/chai-subset@^1.3.3": - version "1.3.5" - resolved "https://registry.yarnpkg.com/@types/chai-subset/-/chai-subset-1.3.5.tgz#3fc044451f26985f45625230a7f22284808b0a9a" - integrity sha512-c2mPnw+xHtXDoHmdtcCXGwyLMiauiAyxWMzhGpqHC4nqI/Y5G2XhTampslK2rb59kpcuHon03UH8W6iYUzw88A== - dependencies: - "@types/chai" "*" - -"@types/chai@*", "@types/chai@^4.3.5": - version "4.3.16" - resolved "https://registry.yarnpkg.com/@types/chai/-/chai-4.3.16.tgz#b1572967f0b8b60bf3f87fe1d854a5604ea70c82" - integrity sha512-PatH4iOdyh3MyWtmHVFXLWCCIhUbopaltqddG9BzB+gMIzee2MJrvd+jouii9Z3wzQJruGWAm7WOMjgfG8hQlQ== - -"@types/estree@^1.0.0": - version "1.0.5" - resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.5.tgz#a6ce3e556e00fd9895dd872dd172ad0d4bd687f4" - integrity sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw== - -"@types/feather-icons@^4.29.1": - version "4.29.4" - resolved "https://registry.yarnpkg.com/@types/feather-icons/-/feather-icons-4.29.4.tgz#3c1d0bba09278c88dd35f6ae102aeb293aabf4bd" - integrity sha512-cvwI455PWx/gJ33XDTIZOdauRy+XCxZggkOT/tAQYZLdySPFATD4RnDC9mxOnCIEaK9kwPm3zZigkAsMkhXb5w== - -"@types/istanbul-lib-coverage@^2.0.1": - version "2.0.6" - resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz#7739c232a1fee9b4d3ce8985f314c0c6d33549d7" - integrity sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w== - -"@types/json-schema@^7.0.9": - version "7.0.15" - resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841" - integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA== - -"@types/node@*": - version "20.12.11" - resolved "https://registry.yarnpkg.com/@types/node/-/node-20.12.11.tgz#c4ef00d3507000d17690643278a60dc55a9dc9be" - integrity sha512-vDg9PZ/zi+Nqp6boSOT7plNuthRugEKixDv5sFTIpkE89MmNtEArAShI4mxuX2+UrLEe9pxC1vm2cjm9YlWbJw== - dependencies: - undici-types "~5.26.4" - -"@types/normalize-package-data@^2.4.0": - version "2.4.4" - resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz#56e2cc26c397c038fab0e3a917a12d5c5909e901" - integrity sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA== - -"@types/semver@^7.3.12": - version "7.5.8" - resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.5.8.tgz#8268a8c57a3e4abd25c165ecd36237db7948a55e" - integrity sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ== - -"@typescript-eslint/eslint-plugin@^5.59.5": - version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz#aeef0328d172b9e37d9bab6dbc13b87ed88977db" - integrity sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag== - dependencies: - "@eslint-community/regexpp" "^4.4.0" - "@typescript-eslint/scope-manager" "5.62.0" - "@typescript-eslint/type-utils" "5.62.0" - "@typescript-eslint/utils" "5.62.0" - debug "^4.3.4" - graphemer "^1.4.0" - ignore "^5.2.0" - natural-compare-lite "^1.4.0" - semver "^7.3.7" - tsutils "^3.21.0" - -"@typescript-eslint/parser@^5.59.5": - version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.62.0.tgz#1b63d082d849a2fcae8a569248fbe2ee1b8a56c7" - integrity sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA== - dependencies: - "@typescript-eslint/scope-manager" "5.62.0" - "@typescript-eslint/types" "5.62.0" - "@typescript-eslint/typescript-estree" "5.62.0" - debug "^4.3.4" - -"@typescript-eslint/scope-manager@5.62.0": - version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz#d9457ccc6a0b8d6b37d0eb252a23022478c5460c" - integrity sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w== - dependencies: - "@typescript-eslint/types" "5.62.0" - "@typescript-eslint/visitor-keys" "5.62.0" - -"@typescript-eslint/type-utils@5.62.0": - version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.62.0.tgz#286f0389c41681376cdad96b309cedd17d70346a" - integrity sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew== - dependencies: - "@typescript-eslint/typescript-estree" "5.62.0" - "@typescript-eslint/utils" "5.62.0" - debug "^4.3.4" - tsutils "^3.21.0" - -"@typescript-eslint/types@5.62.0": - version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.62.0.tgz#258607e60effa309f067608931c3df6fed41fd2f" - integrity sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ== - -"@typescript-eslint/typescript-estree@5.62.0": - version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz#7d17794b77fabcac615d6a48fb143330d962eb9b" - integrity sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA== - dependencies: - "@typescript-eslint/types" "5.62.0" - "@typescript-eslint/visitor-keys" "5.62.0" - debug "^4.3.4" - globby "^11.1.0" - is-glob "^4.0.3" - semver "^7.3.7" - tsutils "^3.21.0" - -"@typescript-eslint/utils@5.62.0", "@typescript-eslint/utils@^5.55.0": - version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.62.0.tgz#141e809c71636e4a75daa39faed2fb5f4b10df86" - integrity sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ== - dependencies: - "@eslint-community/eslint-utils" "^4.2.0" - "@types/json-schema" "^7.0.9" - "@types/semver" "^7.3.12" - "@typescript-eslint/scope-manager" "5.62.0" - "@typescript-eslint/types" "5.62.0" - "@typescript-eslint/typescript-estree" "5.62.0" - eslint-scope "^5.1.1" - semver "^7.3.7" - -"@typescript-eslint/visitor-keys@5.62.0": - version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz#2174011917ce582875954ffe2f6912d5931e353e" - integrity sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw== - dependencies: - "@typescript-eslint/types" "5.62.0" - eslint-visitor-keys "^3.3.0" - -"@ungap/structured-clone@^1.2.0": - version "1.2.0" - resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.2.0.tgz#756641adb587851b5ccb3e095daf27ae581c8406" - integrity sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ== - -"@unocss/astro@0.51.13": - version "0.51.13" - resolved "https://registry.yarnpkg.com/@unocss/astro/-/astro-0.51.13.tgz#f5b1e30d9d28d27bb86f6d2fc37c4b8ad6892aba" - integrity sha512-Dul0ZJNwseGBxngBMfghfTsf0quf4HcQcqJuIDzA1T+ueavpwf4QScwbDuS0BqFO4ZiIVSItA7f6eLe31PHUmw== - dependencies: - "@unocss/core" "0.51.13" - "@unocss/reset" "0.51.13" - "@unocss/vite" "0.51.13" - -"@unocss/cli@0.51.13": - version "0.51.13" - resolved "https://registry.yarnpkg.com/@unocss/cli/-/cli-0.51.13.tgz#d29f795848c963d1e798e03fe7cb1194867ab24b" - integrity sha512-g5CmSVyMFIgw/uStVlABldw+EYsrCyGjHd9jQMMTSZbV9IWuM0Tf+ILAZ+B4iXs62ctnrxPYH3Mha6IIuuZXZg== - dependencies: - "@ampproject/remapping" "^2.2.1" - "@rollup/pluginutils" "^5.0.2" - "@unocss/config" "0.51.13" - "@unocss/core" "0.51.13" - "@unocss/preset-uno" "0.51.13" - cac "^6.7.14" - chokidar "^3.5.3" - colorette "^2.0.20" - consola "^3.1.0" - fast-glob "^3.2.12" - magic-string "^0.30.0" - pathe "^1.1.0" - perfect-debounce "^1.0.0" - -"@unocss/config@0.51.13": - version "0.51.13" - resolved "https://registry.yarnpkg.com/@unocss/config/-/config-0.51.13.tgz#1894aae4917dc6af891efb1ddd8d3b35424d51a7" - integrity sha512-EnSLt7Z1C01U3kORh+Iql+zLFm/PQTD1Np6oEW6U0/GTmD3HEilVFQFFxdM5F0X2bBZtZMkkAGGyhRWQj09hDQ== - dependencies: - "@unocss/core" "0.51.13" - unconfig "^0.3.7" - -"@unocss/core@0.51.13": - version "0.51.13" - resolved "https://registry.yarnpkg.com/@unocss/core/-/core-0.51.13.tgz#5c3aaa46d8f0e1bd04bee06b945b5e1dd8fcd108" - integrity sha512-SclWkqY2c+p5+PiqrbQkhJNEExPdeo71/aGFye10tpBkgPJWd5xC7dhg5F8M4VPNBtuNCrvBWyqNnunMyuz/WQ== - -"@unocss/extractor-arbitrary-variants@0.51.13": - version "0.51.13" - resolved "https://registry.yarnpkg.com/@unocss/extractor-arbitrary-variants/-/extractor-arbitrary-variants-0.51.13.tgz#838a692f0d7661f21097299988ae338905f81f07" - integrity sha512-lF7p0ea/MeNf4IsjzNhRNYP8u+f1h5JjhTzcvFpQo/vpBvuM5ZCyqp4mkXxYnLNLFfTLsc+MxXaU34IXxpw1QA== - dependencies: - "@unocss/core" "0.51.13" - -"@unocss/inspector@0.51.13": - version "0.51.13" - resolved "https://registry.yarnpkg.com/@unocss/inspector/-/inspector-0.51.13.tgz#31e6c1c794e1370dcdff38e0d4e9eb57490c3555" - integrity sha512-y6wCvLDmfFHfr5MHqcQLZkwRio4+VEH6j607bgUdKTRlZGVCD7/GBV8lperxsxpkspaE1eykOeDmW7Ms99SEuQ== - dependencies: - gzip-size "^6.0.0" - sirv "^2.0.3" - -"@unocss/postcss@0.51.13": - version "0.51.13" - resolved "https://registry.yarnpkg.com/@unocss/postcss/-/postcss-0.51.13.tgz#e3146cc7b395fe3923fe76e78b0a31056c8104c3" - integrity sha512-V1QJ7md9jYtBwRc6NGep1Atc+QhaR3115B1wCo8CNM+v+ZOQzpxNsAshvOfyPzfzTj+KLtp4u4zqqaTbYGX2cw== - dependencies: - "@unocss/config" "0.51.13" - "@unocss/core" "0.51.13" - css-tree "^2.3.1" - fast-glob "^3.2.12" - magic-string "^0.30.0" - postcss "^8.4.23" - -"@unocss/preset-attributify@0.51.13": - version "0.51.13" - resolved "https://registry.yarnpkg.com/@unocss/preset-attributify/-/preset-attributify-0.51.13.tgz#f5ccb15ec78e145c2980603a67c1a926b346648b" - integrity sha512-a501ylamV90E+tVf7Dgc8Plwex5LQ5oFSYwsxk06QhcxPWdLmDey3SQjL68AsP9qnLGfIez51sV4y/6H8wFqlw== - dependencies: - "@unocss/core" "0.51.13" - -"@unocss/preset-icons@0.51.13": - version "0.51.13" - resolved "https://registry.yarnpkg.com/@unocss/preset-icons/-/preset-icons-0.51.13.tgz#173f2a1d2a0c368e962d2d83fb894c96bcf87ea1" - integrity sha512-iL9s1NUVeWe3WSh5LHn7vy+veCAag9AFA50IfNlHuAARhuI8JtrMQA8dOXrWrzM0zWBMB+BVIkVaMVrF257n+Q== - dependencies: - "@iconify/utils" "^2.1.5" - "@unocss/core" "0.51.13" - ofetch "^1.0.1" - -"@unocss/preset-mini@0.51.13": - version "0.51.13" - resolved "https://registry.yarnpkg.com/@unocss/preset-mini/-/preset-mini-0.51.13.tgz#0d35d7538c1330772b0dd6c60cd4ce0824e52b30" - integrity sha512-Wa6eMq8IiJEb7F8rL+cDX4XFm4ViAULaAvn8rjk7ANGdOmeqYGyGc0IZkOjQgl3PiFJFnitsBluHhg7nMIk7QQ== - dependencies: - "@unocss/core" "0.51.13" - "@unocss/extractor-arbitrary-variants" "0.51.13" - -"@unocss/preset-tagify@0.51.13": - version "0.51.13" - resolved "https://registry.yarnpkg.com/@unocss/preset-tagify/-/preset-tagify-0.51.13.tgz#eeb608d43747bf2c718063c30054cb8c6aa1a406" - integrity sha512-9pWPTff/1OKFmOQiGolVKFPzXwJ+r77UhXTB5E793uOQFHPMWCdkjyTPiN12FlB9izjTLIFH3GCGy/koRX9S4w== - dependencies: - "@unocss/core" "0.51.13" - -"@unocss/preset-typography@0.51.13": - version "0.51.13" - resolved "https://registry.yarnpkg.com/@unocss/preset-typography/-/preset-typography-0.51.13.tgz#7b3f35ea70baae3fbf41f6e69458d45515e8da0a" - integrity sha512-9uXrPztLsc8ZMnmoIdNAC3/gD183wyFECDzXtJqjOrJhzGr1kcv1sByyQO+kRPI67eWErSsDjpJwK2arfDOihQ== - dependencies: - "@unocss/core" "0.51.13" - "@unocss/preset-mini" "0.51.13" - -"@unocss/preset-uno@0.51.13": - version "0.51.13" - resolved "https://registry.yarnpkg.com/@unocss/preset-uno/-/preset-uno-0.51.13.tgz#92db5b03f5d988d5def2182cfb41f91935a0eeb0" - integrity sha512-S9po93y87YphySfW21+Z5uzSL/GAGN5MqZURQxaGk9WGxYugAnu2PnvhhyqLCVmP05J34tMSDMkIZZqjnGaJzg== - dependencies: - "@unocss/core" "0.51.13" - "@unocss/preset-mini" "0.51.13" - "@unocss/preset-wind" "0.51.13" - -"@unocss/preset-web-fonts@0.51.13": - version "0.51.13" - resolved "https://registry.yarnpkg.com/@unocss/preset-web-fonts/-/preset-web-fonts-0.51.13.tgz#d5d4bcc60980d96f7df97b5345e86fb44996087a" - integrity sha512-jl6AhPcnLYN4oKYQZbU/40714IIuNb7TOFh2kgMkDH70r+fzLEdH+cB4l5m0yTsMhEQ6oDsppxm9aXcsVDRESA== - dependencies: - "@unocss/core" "0.51.13" - ofetch "^1.0.1" - -"@unocss/preset-wind@0.51.13": - version "0.51.13" - resolved "https://registry.yarnpkg.com/@unocss/preset-wind/-/preset-wind-0.51.13.tgz#b6bc746f92e7307ef097d1dc9f2eca3f2f3763bc" - integrity sha512-deRXLOWmKmqCJuohWCE5NUzs7XDJLn4pzgYQSUlEAVUfS6rzL49aJmSHA+p/f+HhJs5jipNdvkcrHYEBMNV1XQ== - dependencies: - "@unocss/core" "0.51.13" - "@unocss/preset-mini" "0.51.13" - -"@unocss/reset@0.51.13", "@unocss/reset@^0.51.12": - version "0.51.13" - resolved "https://registry.yarnpkg.com/@unocss/reset/-/reset-0.51.13.tgz#62b704eef8657554ef8f3e1caaee4a4805280a14" - integrity sha512-xwYJW6vNbHIpBtlFcW93fZxILZpWatcCc9nclSgsl0YlFUz9w4/aoV9KqwU62Y4VUteJxCZCCXa3pSiPO8h5KA== - -"@unocss/scope@0.51.13": - version "0.51.13" - resolved "https://registry.yarnpkg.com/@unocss/scope/-/scope-0.51.13.tgz#4334bec70b5adc33ea73faa7c7952c508b03af4f" - integrity sha512-ATwgDx1qZflR2/EPsAs/XMR9/HdcUNyAZ6VdenwQQdlmAFlIWZQ6smswKyuiJWKtcJynfbdGOWcO3vcocrnSrQ== - -"@unocss/transformer-attributify-jsx-babel@0.51.13": - version "0.51.13" - resolved "https://registry.yarnpkg.com/@unocss/transformer-attributify-jsx-babel/-/transformer-attributify-jsx-babel-0.51.13.tgz#6855b412e705f2ce032e7cb3e634d0de692906c8" - integrity sha512-HMEeTi3FIuI5gMJnRICbWdDmraL4NfpjSTjSmAo6EsraBuNO2m+/5JZL5Fc1B3olKes2G84FDSlzfofHyinWzw== - dependencies: - "@unocss/core" "0.51.13" - -"@unocss/transformer-attributify-jsx@0.51.13": - version "0.51.13" - resolved "https://registry.yarnpkg.com/@unocss/transformer-attributify-jsx/-/transformer-attributify-jsx-0.51.13.tgz#4117d3a9168ddea3d1e45a1ab3ba6360c3925793" - integrity sha512-vLAtT0K3Rfa3Xiu3LhU4tNCptuO3QlbgSsVO93K3onujfO7qZAaXjK5nj7jiLPyTKtQyl/3WOgNStfReMleF0w== - dependencies: - "@unocss/core" "0.51.13" - -"@unocss/transformer-compile-class@0.51.13": - version "0.51.13" - resolved "https://registry.yarnpkg.com/@unocss/transformer-compile-class/-/transformer-compile-class-0.51.13.tgz#2463fb3ac88d516bd60322d245917760eb855507" - integrity sha512-7G5ReCIkrZOAikwM9LN74nR4uxffJMSDAbLFDyhdh4qaumJFaxDLDQ4lxpQVZVeXQIF12QSxsnJuI9Fu1nuqmg== - dependencies: - "@unocss/core" "0.51.13" - -"@unocss/transformer-directives@0.51.13": - version "0.51.13" - resolved "https://registry.yarnpkg.com/@unocss/transformer-directives/-/transformer-directives-0.51.13.tgz#0ae7f4e644cc41f35e2743451d6545656d60f2d5" - integrity sha512-1tl8UcVpqYaKkj1zan/QmUAslEcHe9WdN0/QX3Ao663A5r91EwWhnhwKFfvujrZp1XlFnXgKLmKS8OwTRQfCQg== - dependencies: - "@unocss/core" "0.51.13" - css-tree "^2.3.1" - -"@unocss/transformer-variant-group@0.51.13": - version "0.51.13" - resolved "https://registry.yarnpkg.com/@unocss/transformer-variant-group/-/transformer-variant-group-0.51.13.tgz#847a0d7cb05938f6498170b2590ffecf0bcef80a" - integrity sha512-QT3dfnYeht9SpqPFHJrEfZjL+XeMyi0Wwc4ll4ttIQNCl1Ihiwxl4ScRs1oVXlhCAc3hCXNu9V/FWO0cYHRt/Q== - dependencies: - "@unocss/core" "0.51.13" - -"@unocss/vite@0.51.13": - version "0.51.13" - resolved "https://registry.yarnpkg.com/@unocss/vite/-/vite-0.51.13.tgz#8bda8812c5d2a8f18234a698958a05b7579b2604" - integrity sha512-WwyaPnu1XfRiFy4uxXwBuWaL7J1Rcaetsw5lJQUIUdSBTblsd6W7sW+MYTsLfAlA9FUxWDK4ESdI51Xgq4glxw== - dependencies: - "@ampproject/remapping" "^2.2.1" - "@rollup/pluginutils" "^5.0.2" - "@unocss/config" "0.51.13" - "@unocss/core" "0.51.13" - "@unocss/inspector" "0.51.13" - "@unocss/scope" "0.51.13" - "@unocss/transformer-directives" "0.51.13" - chokidar "^3.5.3" - fast-glob "^3.2.12" - magic-string "^0.30.0" - -"@vitest/coverage-c8@^0.31.1": - version "0.31.4" - resolved "https://registry.yarnpkg.com/@vitest/coverage-c8/-/coverage-c8-0.31.4.tgz#5628e415fd9bea99ee12127e0524b9d267a33e17" - integrity sha512-VPx368m4DTcpA/P0v3YdVxl4QOSh1DbUcXURLRvDShrIB5KxOgfzw4Bn2R8AhAe/GyiWW/FIsJ/OJdYXCCiC1w== - dependencies: - "@ampproject/remapping" "^2.2.1" - c8 "^7.13.0" - magic-string "^0.30.0" - picocolors "^1.0.0" - std-env "^3.3.2" - -"@vitest/expect@0.31.4": - version "0.31.4" - resolved "https://registry.yarnpkg.com/@vitest/expect/-/expect-0.31.4.tgz#115c517404488bf3cb6ce4ac411c40d8e86891b8" - integrity sha512-tibyx8o7GUyGHZGyPgzwiaPaLDQ9MMuCOrc03BYT0nryUuhLbL7NV2r/q98iv5STlwMgaKuFJkgBW/8iPKwlSg== - dependencies: - "@vitest/spy" "0.31.4" - "@vitest/utils" "0.31.4" - chai "^4.3.7" - -"@vitest/runner@0.31.4": - version "0.31.4" - resolved "https://registry.yarnpkg.com/@vitest/runner/-/runner-0.31.4.tgz#e99abee89132a500d9726a53b58dfc9160db1078" - integrity sha512-Wgm6UER+gwq6zkyrm5/wbpXGF+g+UBB78asJlFkIOwyse0pz8lZoiC6SW5i4gPnls/zUcPLWS7Zog0LVepXnpg== - dependencies: - "@vitest/utils" "0.31.4" - concordance "^5.0.4" - p-limit "^4.0.0" - pathe "^1.1.0" - -"@vitest/snapshot@0.31.4": - version "0.31.4" - resolved "https://registry.yarnpkg.com/@vitest/snapshot/-/snapshot-0.31.4.tgz#59a42046fec4950a1ac70cf0ec64aada3b995559" - integrity sha512-LemvNumL3NdWSmfVAMpXILGyaXPkZbG5tyl6+RQSdcHnTj6hvA49UAI8jzez9oQyE/FWLKRSNqTGzsHuk89LRA== - dependencies: - magic-string "^0.30.0" - pathe "^1.1.0" - pretty-format "^27.5.1" - -"@vitest/spy@0.31.4": - version "0.31.4" - resolved "https://registry.yarnpkg.com/@vitest/spy/-/spy-0.31.4.tgz#fce8e348cea32deff79996d116c67893b19cc47d" - integrity sha512-3ei5ZH1s3aqbEyftPAzSuunGICRuhE+IXOmpURFdkm5ybUADk+viyQfejNk6q8M5QGX8/EVKw+QWMEP3DTJDag== - dependencies: - tinyspy "^2.1.0" - -"@vitest/ui@^0.31.1": - version "0.31.4" - resolved "https://registry.yarnpkg.com/@vitest/ui/-/ui-0.31.4.tgz#465a4762d7937e3322fe66f94c2378bacfeba1ac" - integrity sha512-sKM16ITX6HrNFF+lNZ2AQAen4/6Bx2i6KlBfIvkUjcTgc5YII/j2ltcX14oCUv4EA0OTWGQuGhO3zDoAsTENGA== - dependencies: - "@vitest/utils" "0.31.4" - fast-glob "^3.2.12" - fflate "^0.7.4" - flatted "^3.2.7" - pathe "^1.1.0" - picocolors "^1.0.0" - sirv "^2.0.3" - -"@vitest/utils@0.31.4": - version "0.31.4" - resolved "https://registry.yarnpkg.com/@vitest/utils/-/utils-0.31.4.tgz#5cfdcecfd604a7dbe3972cfe0f2b1e0af1246ad2" - integrity sha512-DobZbHacWznoGUfYU8XDPY78UubJxXfMNY1+SUdOp1NsI34eopSA6aZMeaGu10waSOeYwE8lxrd/pLfT0RMxjQ== - dependencies: - concordance "^5.0.4" - loupe "^2.3.6" - pretty-format "^27.5.1" - -acorn-jsx@^5.3.2: - version "5.3.2" - resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" - integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== - -acorn-walk@^8.2.0: - version "8.3.2" - resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.3.2.tgz#7703af9415f1b6db9315d6895503862e231d34aa" - integrity sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A== - -acorn@^8.10.0, acorn@^8.11.3, acorn@^8.8.2, acorn@^8.9.0: - version "8.11.3" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.11.3.tgz#71e0b14e13a4ec160724b38fb7b0f233b1b81d7a" - integrity sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg== - -ajv@^6.12.4: - version "6.12.6" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" - integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== - dependencies: - fast-deep-equal "^3.1.1" - fast-json-stable-stringify "^2.0.0" - json-schema-traverse "^0.4.1" - uri-js "^4.2.2" - -ansi-colors@^4.1.3: - version "4.1.3" - resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.3.tgz#37611340eb2243e70cc604cad35d63270d48781b" - integrity sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw== - -ansi-regex@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" - integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== - -ansi-styles@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" - integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== - dependencies: - color-convert "^1.9.0" - -ansi-styles@^4.0.0, ansi-styles@^4.1.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" - integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== - dependencies: - color-convert "^2.0.1" - -ansi-styles@^5.0.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-5.2.0.tgz#07449690ad45777d1924ac2abb2fc8895dba836b" - integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA== - -anymatch@~3.1.2: - version "3.1.3" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" - integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== - dependencies: - normalize-path "^3.0.0" - picomatch "^2.0.4" - -argparse@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" - integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== - -array-buffer-byte-length@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz#1e5583ec16763540a27ae52eed99ff899223568f" - integrity sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg== - dependencies: - call-bind "^1.0.5" - is-array-buffer "^3.0.4" - -array-includes@^3.1.6: - version "3.1.8" - resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.8.tgz#5e370cbe172fdd5dd6530c1d4aadda25281ba97d" - integrity sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ== - dependencies: - call-bind "^1.0.7" - define-properties "^1.2.1" - es-abstract "^1.23.2" - es-object-atoms "^1.0.0" - get-intrinsic "^1.2.4" - is-string "^1.0.7" - -array-union@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" - integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== - -array.prototype.flat@^1.3.1: - version "1.3.2" - resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz#1476217df8cff17d72ee8f3ba06738db5b387d18" - integrity sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA== - dependencies: - call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" - es-shim-unscopables "^1.0.0" - -arraybuffer.prototype.slice@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz#097972f4255e41bc3425e37dc3f6421cf9aefde6" - integrity sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A== - dependencies: - array-buffer-byte-length "^1.0.1" - call-bind "^1.0.5" - define-properties "^1.2.1" - es-abstract "^1.22.3" - es-errors "^1.2.1" - get-intrinsic "^1.2.3" - is-array-buffer "^3.0.4" - is-shared-array-buffer "^1.0.2" - -assertion-error@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.1.0.tgz#e60b6b0e8f301bd97e5375215bda406c85118c0b" - integrity sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw== - -available-typed-arrays@^1.0.7: - version "1.0.7" - resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz#a5cc375d6a03c2efc87a553f3e0b1522def14846" - integrity sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ== - dependencies: - possible-typed-array-names "^1.0.0" - -babel-plugin-jsx-dom-expressions@^0.37.20: - version "0.37.20" - resolved "https://registry.yarnpkg.com/babel-plugin-jsx-dom-expressions/-/babel-plugin-jsx-dom-expressions-0.37.20.tgz#506fd0302d6740bdea957d5f7b18eccb117342ca" - integrity sha512-0L3aC5EFyvCgIlEYIqJb4Ym29s1IDI/U5SntZ1ZK054xe0MqBmBi2GLK3f9AOklhdY7kCC3GsHD0bILh6u0Qsg== - dependencies: - "@babel/helper-module-imports" "7.18.6" - "@babel/plugin-syntax-jsx" "^7.18.6" - "@babel/types" "^7.20.7" - html-entities "2.3.3" - validate-html-nesting "^1.2.1" - -babel-preset-solid@^1.8.4: - version "1.8.17" - resolved "https://registry.yarnpkg.com/babel-preset-solid/-/babel-preset-solid-1.8.17.tgz#8d55e8e2ee800be85527425e7943534f984dc815" - integrity sha512-s/FfTZOeds0hYxYqce90Jb+0ycN2lrzC7VP1k1JIn3wBqcaexDKdYi6xjB+hMNkL+Q6HobKbwsriqPloasR9LA== - dependencies: - babel-plugin-jsx-dom-expressions "^0.37.20" - -balanced-match@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" - integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== - -binary-extensions@^2.0.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.3.0.tgz#f6e14a97858d327252200242d4ccfe522c445522" - integrity sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw== - -blueimp-md5@^2.10.0: - version "2.19.0" - resolved "https://registry.yarnpkg.com/blueimp-md5/-/blueimp-md5-2.19.0.tgz#b53feea5498dcb53dc6ec4b823adb84b729c4af0" - integrity sha512-DRQrD6gJyy8FbiE4s+bDoXS9hiW3Vbx5uCdwvcCf3zLHL+Iv7LtGHLpr+GZV8rHG8tK766FGYBwRbu8pELTt+w== - -brace-expansion@^1.1.7: - version "1.1.11" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" - integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== - dependencies: - balanced-match "^1.0.0" - concat-map "0.0.1" - -braces@^3.0.2, braces@~3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" - integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== - dependencies: - fill-range "^7.0.1" - -browserslist@^4.22.2: - version "4.23.0" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.23.0.tgz#8f3acc2bbe73af7213399430890f86c63a5674ab" - integrity sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ== - dependencies: - caniuse-lite "^1.0.30001587" - electron-to-chromium "^1.4.668" - node-releases "^2.0.14" - update-browserslist-db "^1.0.13" - -builtin-modules@^3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-3.3.0.tgz#cae62812b89801e9656336e46223e030386be7b6" - integrity sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw== - -c8@^7.13.0: - version "7.14.0" - resolved "https://registry.yarnpkg.com/c8/-/c8-7.14.0.tgz#f368184c73b125a80565e9ab2396ff0be4d732f3" - integrity sha512-i04rtkkcNcCf7zsQcSv/T9EbUn4RXQ6mropeMcjFOsQXQ0iGLAr/xT6TImQg4+U9hmNpN9XdvPkjUL1IzbgxJw== - dependencies: - "@bcoe/v8-coverage" "^0.2.3" - "@istanbuljs/schema" "^0.1.3" - find-up "^5.0.0" - foreground-child "^2.0.0" - istanbul-lib-coverage "^3.2.0" - istanbul-lib-report "^3.0.0" - istanbul-reports "^3.1.4" - rimraf "^3.0.2" - test-exclude "^6.0.0" - v8-to-istanbul "^9.0.0" - yargs "^16.2.0" - yargs-parser "^20.2.9" - -cac@^6.7.14: - version "6.7.14" - resolved "https://registry.yarnpkg.com/cac/-/cac-6.7.14.tgz#804e1e6f506ee363cb0e3ccbb09cad5dd9870959" - integrity sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ== - -call-bind@^1.0.2, call-bind@^1.0.5, call-bind@^1.0.6, call-bind@^1.0.7: - version "1.0.7" - resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.7.tgz#06016599c40c56498c18769d2730be242b6fa3b9" - integrity sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w== - dependencies: - es-define-property "^1.0.0" - es-errors "^1.3.0" - function-bind "^1.1.2" - get-intrinsic "^1.2.4" - set-function-length "^1.2.1" - -callsites@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" - integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== - -caniuse-lite@^1.0.30001587: - version "1.0.30001617" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001617.tgz#809bc25f3f5027ceb33142a7d6c40759d7a901eb" - integrity sha512-mLyjzNI9I+Pix8zwcrpxEbGlfqOkF9kM3ptzmKNw5tizSyYwMe+nGLTqMK9cO+0E+Bh6TsBxNAaHWEM8xwSsmA== - -chai@^4.3.7: - version "4.4.1" - resolved "https://registry.yarnpkg.com/chai/-/chai-4.4.1.tgz#3603fa6eba35425b0f2ac91a009fe924106e50d1" - integrity sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g== - dependencies: - assertion-error "^1.1.0" - check-error "^1.0.3" - deep-eql "^4.1.3" - get-func-name "^2.0.2" - loupe "^2.3.6" - pathval "^1.1.1" - type-detect "^4.0.8" - -chalk@^2.4.2: - version "2.4.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" - integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== - dependencies: - ansi-styles "^3.2.1" - escape-string-regexp "^1.0.5" - supports-color "^5.3.0" - -chalk@^4.0.0: - version "4.1.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" - integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== - dependencies: - ansi-styles "^4.1.0" - supports-color "^7.1.0" - -check-error@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.3.tgz#a6502e4312a7ee969f646e83bb3ddd56281bd694" - integrity sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg== - dependencies: - get-func-name "^2.0.2" - -chokidar@^3.5.3: - version "3.6.0" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.6.0.tgz#197c6cc669ef2a8dc5e7b4d97ee4e092c3eb0d5b" - integrity sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw== - dependencies: - anymatch "~3.1.2" - braces "~3.0.2" - glob-parent "~5.1.2" - is-binary-path "~2.1.0" - is-glob "~4.0.1" - normalize-path "~3.0.0" - readdirp "~3.6.0" - optionalDependencies: - fsevents "~2.3.2" - -ci-info@^3.8.0: - version "3.9.0" - resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.9.0.tgz#4279a62028a7b1f262f3473fc9605f5e218c59b4" - integrity sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ== - -classnames@^2.2.5: - version "2.5.1" - resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.5.1.tgz#ba774c614be0f016da105c858e7159eae8e7687b" - integrity sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow== - -clean-regexp@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/clean-regexp/-/clean-regexp-1.0.0.tgz#8df7c7aae51fd36874e8f8d05b9180bc11a3fed7" - integrity sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw== - dependencies: - escape-string-regexp "^1.0.5" - -cliui@^7.0.2: - version "7.0.4" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" - integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== - dependencies: - string-width "^4.2.0" - strip-ansi "^6.0.0" - wrap-ansi "^7.0.0" - -clsx@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/clsx/-/clsx-2.1.1.tgz#eed397c9fd8bd882bfb18deab7102049a2f32999" - integrity sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA== - -color-convert@^1.9.0: - version "1.9.3" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" - integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== - dependencies: - color-name "1.1.3" - -color-convert@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" - integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== - dependencies: - color-name "~1.1.4" - -color-name@1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" - integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== - -color-name@~1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" - integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== - -colorette@^2.0.20: - version "2.0.20" - resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.20.tgz#9eb793e6833067f7235902fcd3b09917a000a95a" - integrity sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w== - -concat-map@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" - integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== - -concordance@^5.0.4: - version "5.0.4" - resolved "https://registry.yarnpkg.com/concordance/-/concordance-5.0.4.tgz#9896073261adced72f88d60e4d56f8efc4bbbbd2" - integrity sha512-OAcsnTEYu1ARJqWVGwf4zh4JDfHZEaSNlNccFmt8YjB2l/n19/PF2viLINHc57vO4FKIAFl2FWASIGZZWZ2Kxw== - dependencies: - date-time "^3.1.0" - esutils "^2.0.3" - fast-diff "^1.2.0" - js-string-escape "^1.0.1" - lodash "^4.17.15" - md5-hex "^3.0.1" - semver "^7.3.2" - well-known-symbols "^2.0.0" - -confbox@^0.1.7: - version "0.1.7" - resolved "https://registry.yarnpkg.com/confbox/-/confbox-0.1.7.tgz#ccfc0a2bcae36a84838e83a3b7f770fb17d6c579" - integrity sha512-uJcB/FKZtBMCJpK8MQji6bJHgu1tixKPxRLeGkNzBoOZzpnZUJm0jm2/sBDWcuBx1dYgxV4JU+g5hmNxCyAmdA== - -consola@^3.1.0: - version "3.2.3" - resolved "https://registry.yarnpkg.com/consola/-/consola-3.2.3.tgz#0741857aa88cfa0d6fd53f1cff0375136e98502f" - integrity sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ== - -convert-source-map@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" - integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== - -core-js@^3.1.3: - version "3.37.0" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.37.0.tgz#d8dde58e91d156b2547c19d8a4efd5c7f6c426bb" - integrity sha512-fu5vHevQ8ZG4og+LXug8ulUtVxjOcEYvifJr7L5Bfq9GOztVqsKd9/59hUk2ZSbCrS3BqUr3EpaYGIYzq7g3Ug== - -cross-spawn@^7.0.0, cross-spawn@^7.0.2, cross-spawn@^7.0.3: - version "7.0.3" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" - integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== - dependencies: - path-key "^3.1.0" - shebang-command "^2.0.0" - which "^2.0.1" - -css-tree@^2.3.1: - version "2.3.1" - resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-2.3.1.tgz#10264ce1e5442e8572fc82fbe490644ff54b5c20" - integrity sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw== - dependencies: - mdn-data "2.0.30" - source-map-js "^1.0.1" - -csstype@^3.1.0: - version "3.1.3" - resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.3.tgz#d80ff294d114fb0e6ac500fbf85b60137d7eff81" - integrity sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw== - -data-view-buffer@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/data-view-buffer/-/data-view-buffer-1.0.1.tgz#8ea6326efec17a2e42620696e671d7d5a8bc66b2" - integrity sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA== - dependencies: - call-bind "^1.0.6" - es-errors "^1.3.0" - is-data-view "^1.0.1" - -data-view-byte-length@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz#90721ca95ff280677eb793749fce1011347669e2" - integrity sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ== - dependencies: - call-bind "^1.0.7" - es-errors "^1.3.0" - is-data-view "^1.0.1" - -data-view-byte-offset@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz#5e0bbfb4828ed2d1b9b400cd8a7d119bca0ff18a" - integrity sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA== - dependencies: - call-bind "^1.0.6" - es-errors "^1.3.0" - is-data-view "^1.0.1" - -date-time@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/date-time/-/date-time-3.1.0.tgz#0d1e934d170579f481ed8df1e2b8ff70ee845e1e" - integrity sha512-uqCUKXE5q1PNBXjPqvwhwJf9SwMoAHBgWJ6DcrnS5o+W2JOiIILl0JEdVD8SGujrNS02GGxgwAg2PN2zONgtjg== - dependencies: - time-zone "^1.0.0" - -debug@^4.1.0, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4: - version "4.3.4" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" - integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== - dependencies: - ms "2.1.2" - -deep-eql@^4.1.3: - version "4.1.3" - resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-4.1.3.tgz#7c7775513092f7df98d8df9996dd085eb668cc6d" - integrity sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw== - dependencies: - type-detect "^4.0.0" - -deep-is@^0.1.3: - version "0.1.4" - resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" - integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== - -define-data-property@^1.0.1, define-data-property@^1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/define-data-property/-/define-data-property-1.1.4.tgz#894dc141bb7d3060ae4366f6a0107e68fbe48c5e" - integrity sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A== - dependencies: - es-define-property "^1.0.0" - es-errors "^1.3.0" - gopd "^1.0.1" - -define-properties@^1.2.0, define-properties@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.1.tgz#10781cc616eb951a80a034bafcaa7377f6af2b6c" - integrity sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg== - dependencies: - define-data-property "^1.0.1" - has-property-descriptors "^1.0.0" - object-keys "^1.1.1" - -defu@^6.1.4: - version "6.1.4" - resolved "https://registry.yarnpkg.com/defu/-/defu-6.1.4.tgz#4e0c9cf9ff68fe5f3d7f2765cc1a012dfdcb0479" - integrity sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg== - -destr@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/destr/-/destr-2.0.3.tgz#7f9e97cb3d16dbdca7be52aca1644ce402cfe449" - integrity sha512-2N3BOUU4gYMpTP24s5rF5iP7BDr7uNTCs4ozw3kf/eKfvWSIu93GEBi5m427YoyJoeOzQ5smuu4nNAPGb8idSQ== - -dir-glob@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" - integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== - dependencies: - path-type "^4.0.0" - -doctrine@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" - integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== - dependencies: - esutils "^2.0.2" - -duplexer@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6" - integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg== - -electron-to-chromium@^1.4.668: - version "1.4.763" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.763.tgz#64f2041ed496fd6fc710b9be806fe91da9334f91" - integrity sha512-k4J8NrtJ9QrvHLRo8Q18OncqBCB7tIUyqxRcJnlonQ0ioHKYB988GcDFF3ZePmnb8eHEopDs/wPHR/iGAFgoUQ== - -emoji-regex@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" - integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== - -error-ex@^1.3.1: - version "1.3.2" - resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" - integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== - dependencies: - is-arrayish "^0.2.1" - -es-abstract@^1.22.1, es-abstract@^1.22.3, es-abstract@^1.23.0, es-abstract@^1.23.2: - version "1.23.3" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.23.3.tgz#8f0c5a35cd215312573c5a27c87dfd6c881a0aa0" - integrity sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A== - dependencies: - array-buffer-byte-length "^1.0.1" - arraybuffer.prototype.slice "^1.0.3" - available-typed-arrays "^1.0.7" - call-bind "^1.0.7" - data-view-buffer "^1.0.1" - data-view-byte-length "^1.0.1" - data-view-byte-offset "^1.0.0" - es-define-property "^1.0.0" - es-errors "^1.3.0" - es-object-atoms "^1.0.0" - es-set-tostringtag "^2.0.3" - es-to-primitive "^1.2.1" - function.prototype.name "^1.1.6" - get-intrinsic "^1.2.4" - get-symbol-description "^1.0.2" - globalthis "^1.0.3" - gopd "^1.0.1" - has-property-descriptors "^1.0.2" - has-proto "^1.0.3" - has-symbols "^1.0.3" - hasown "^2.0.2" - internal-slot "^1.0.7" - is-array-buffer "^3.0.4" - is-callable "^1.2.7" - is-data-view "^1.0.1" - is-negative-zero "^2.0.3" - is-regex "^1.1.4" - is-shared-array-buffer "^1.0.3" - is-string "^1.0.7" - is-typed-array "^1.1.13" - is-weakref "^1.0.2" - object-inspect "^1.13.1" - object-keys "^1.1.1" - object.assign "^4.1.5" - regexp.prototype.flags "^1.5.2" - safe-array-concat "^1.1.2" - safe-regex-test "^1.0.3" - string.prototype.trim "^1.2.9" - string.prototype.trimend "^1.0.8" - string.prototype.trimstart "^1.0.8" - typed-array-buffer "^1.0.2" - typed-array-byte-length "^1.0.1" - typed-array-byte-offset "^1.0.2" - typed-array-length "^1.0.6" - unbox-primitive "^1.0.2" - which-typed-array "^1.1.15" - -es-define-property@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/es-define-property/-/es-define-property-1.0.0.tgz#c7faefbdff8b2696cf5f46921edfb77cc4ba3845" - integrity sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ== - dependencies: - get-intrinsic "^1.2.4" - -es-errors@^1.2.1, es-errors@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f" - integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw== - -es-object-atoms@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/es-object-atoms/-/es-object-atoms-1.0.0.tgz#ddb55cd47ac2e240701260bc2a8e31ecb643d941" - integrity sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw== - dependencies: - es-errors "^1.3.0" - -es-set-tostringtag@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz#8bb60f0a440c2e4281962428438d58545af39777" - integrity sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ== - dependencies: - get-intrinsic "^1.2.4" - has-tostringtag "^1.0.2" - hasown "^2.0.1" - -es-shim-unscopables@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz#1f6942e71ecc7835ed1c8a83006d8771a63a3763" - integrity sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw== - dependencies: - hasown "^2.0.0" - -es-to-primitive@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a" - integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA== - dependencies: - is-callable "^1.1.4" - is-date-object "^1.0.1" - is-symbol "^1.0.2" - -esbuild@^0.18.10: - version "0.18.20" - resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.18.20.tgz#4709f5a34801b43b799ab7d6d82f7284a9b7a7a6" - integrity sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA== - optionalDependencies: - "@esbuild/android-arm" "0.18.20" - "@esbuild/android-arm64" "0.18.20" - "@esbuild/android-x64" "0.18.20" - "@esbuild/darwin-arm64" "0.18.20" - "@esbuild/darwin-x64" "0.18.20" - "@esbuild/freebsd-arm64" "0.18.20" - "@esbuild/freebsd-x64" "0.18.20" - "@esbuild/linux-arm" "0.18.20" - "@esbuild/linux-arm64" "0.18.20" - "@esbuild/linux-ia32" "0.18.20" - "@esbuild/linux-loong64" "0.18.20" - "@esbuild/linux-mips64el" "0.18.20" - "@esbuild/linux-ppc64" "0.18.20" - "@esbuild/linux-riscv64" "0.18.20" - "@esbuild/linux-s390x" "0.18.20" - "@esbuild/linux-x64" "0.18.20" - "@esbuild/netbsd-x64" "0.18.20" - "@esbuild/openbsd-x64" "0.18.20" - "@esbuild/sunos-x64" "0.18.20" - "@esbuild/win32-arm64" "0.18.20" - "@esbuild/win32-ia32" "0.18.20" - "@esbuild/win32-x64" "0.18.20" - -escalade@^3.1.1, escalade@^3.1.2: - version "3.1.2" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.2.tgz#54076e9ab29ea5bf3d8f1ed62acffbb88272df27" - integrity sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA== - -escape-string-regexp@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" - integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== - -escape-string-regexp@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" - integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== - -eslint-config-prettier@^8.8.0: - version "8.10.0" - resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-8.10.0.tgz#3a06a662130807e2502fc3ff8b4143d8a0658e11" - integrity sha512-SM8AMJdeQqRYT9O9zguiruQZaN7+z+E4eAP9oiLNGKMtomwaB1E9dcgUD6ZAn/eQAb52USbvezbiljfZUhbJcg== - -eslint-plugin-solid@^0.12.1: - version "0.12.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-solid/-/eslint-plugin-solid-0.12.1.tgz#6035e9e992620f916fd9d14ad9eb2bbf62a76973" - integrity sha512-fM0sEg9PcS1mcNbWklwc+W/lOv1/XyEwXf53HmFFy4GOA8E3u41h8JW+hc+Vv1m3kh01umKoTalOTET08zKdAQ== - dependencies: - "@typescript-eslint/utils" "^5.55.0" - is-html "^2.0.0" - jsx-ast-utils "^3.3.3" - kebab-case "^1.0.2" - known-css-properties "^0.24.0" - style-to-object "^0.3.0" - -eslint-plugin-unicorn@^47.0.0: - version "47.0.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-unicorn/-/eslint-plugin-unicorn-47.0.0.tgz#960e9d3789f656ba3e21982420793b069a911011" - integrity sha512-ivB3bKk7fDIeWOUmmMm9o3Ax9zbMz1Bsza/R2qm46ufw4T6VBFBaJIR1uN3pCKSmSXm8/9Nri8V+iUut1NhQGA== - dependencies: - "@babel/helper-validator-identifier" "^7.19.1" - "@eslint-community/eslint-utils" "^4.4.0" - ci-info "^3.8.0" - clean-regexp "^1.0.0" - esquery "^1.5.0" - indent-string "^4.0.0" - is-builtin-module "^3.2.1" - jsesc "^3.0.2" - lodash "^4.17.21" - pluralize "^8.0.0" - read-pkg-up "^7.0.1" - regexp-tree "^0.1.24" - regjsparser "^0.10.0" - safe-regex "^2.1.1" - semver "^7.3.8" - strip-indent "^3.0.0" - -eslint-scope@^5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" - integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== - dependencies: - esrecurse "^4.3.0" - estraverse "^4.1.1" - -eslint-scope@^7.2.2: - version "7.2.2" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.2.2.tgz#deb4f92563390f32006894af62a22dba1c46423f" - integrity sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg== - dependencies: - esrecurse "^4.3.0" - estraverse "^5.2.0" - -eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4.3: - version "3.4.3" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800" - integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag== - -eslint@^8.40.0: - version "8.57.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.57.0.tgz#c786a6fd0e0b68941aaf624596fb987089195668" - integrity sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ== - dependencies: - "@eslint-community/eslint-utils" "^4.2.0" - "@eslint-community/regexpp" "^4.6.1" - "@eslint/eslintrc" "^2.1.4" - "@eslint/js" "8.57.0" - "@humanwhocodes/config-array" "^0.11.14" - "@humanwhocodes/module-importer" "^1.0.1" - "@nodelib/fs.walk" "^1.2.8" - "@ungap/structured-clone" "^1.2.0" - ajv "^6.12.4" - chalk "^4.0.0" - cross-spawn "^7.0.2" - debug "^4.3.2" - doctrine "^3.0.0" - escape-string-regexp "^4.0.0" - eslint-scope "^7.2.2" - eslint-visitor-keys "^3.4.3" - espree "^9.6.1" - esquery "^1.4.2" - esutils "^2.0.2" - fast-deep-equal "^3.1.3" - file-entry-cache "^6.0.1" - find-up "^5.0.0" - glob-parent "^6.0.2" - globals "^13.19.0" - graphemer "^1.4.0" - ignore "^5.2.0" - imurmurhash "^0.1.4" - is-glob "^4.0.0" - is-path-inside "^3.0.3" - js-yaml "^4.1.0" - json-stable-stringify-without-jsonify "^1.0.1" - levn "^0.4.1" - lodash.merge "^4.6.2" - minimatch "^3.1.2" - natural-compare "^1.4.0" - optionator "^0.9.3" - strip-ansi "^6.0.1" - text-table "^0.2.0" - -espree@^9.6.0, espree@^9.6.1: - version "9.6.1" - resolved "https://registry.yarnpkg.com/espree/-/espree-9.6.1.tgz#a2a17b8e434690a5432f2f8018ce71d331a48c6f" - integrity sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ== - dependencies: - acorn "^8.9.0" - acorn-jsx "^5.3.2" - eslint-visitor-keys "^3.4.1" - -esquery@^1.4.2, esquery@^1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.5.0.tgz#6ce17738de8577694edd7361c57182ac8cb0db0b" - integrity sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg== - dependencies: - estraverse "^5.1.0" - -esrecurse@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" - integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== - dependencies: - estraverse "^5.2.0" - -estraverse@^4.1.1: - version "4.3.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" - integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== - -estraverse@^5.1.0, estraverse@^5.2.0: - version "5.3.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" - integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== - -estree-walker@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-2.0.2.tgz#52f010178c2a4c117a7757cfe942adb7d2da4cac" - integrity sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w== - -esutils@^2.0.2, esutils@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" - integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== - -execa@^5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" - integrity sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg== - dependencies: - cross-spawn "^7.0.3" - get-stream "^6.0.0" - human-signals "^2.1.0" - is-stream "^2.0.0" - merge-stream "^2.0.0" - npm-run-path "^4.0.1" - onetime "^5.1.2" - signal-exit "^3.0.3" - strip-final-newline "^2.0.0" - -fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" - integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== - -fast-diff@^1.2.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.3.0.tgz#ece407fa550a64d638536cd727e129c61616e0f0" - integrity sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw== - -fast-glob@^3.2.12, fast-glob@^3.2.9, fast-glob@^3.3.2: - version "3.3.2" - resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.2.tgz#a904501e57cfdd2ffcded45e99a54fef55e46129" - integrity sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow== - dependencies: - "@nodelib/fs.stat" "^2.0.2" - "@nodelib/fs.walk" "^1.2.3" - glob-parent "^5.1.2" - merge2 "^1.3.0" - micromatch "^4.0.4" - -fast-json-stable-stringify@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" - integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== - -fast-levenshtein@^2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" - integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== - -fastq@^1.6.0: - version "1.17.1" - resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.17.1.tgz#2a523f07a4e7b1e81a42b91b8bf2254107753b47" - integrity sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w== - dependencies: - reusify "^1.0.4" - -feather-icons@^4.29.0: - version "4.29.2" - resolved "https://registry.yarnpkg.com/feather-icons/-/feather-icons-4.29.2.tgz#b03a47588a1c400f215e884504db1c18860d89f8" - integrity sha512-0TaCFTnBTVCz6U+baY2UJNKne5ifGh7sMG4ZC2LoBWCZdIyPa+y6UiR4lEYGws1JOFWdee8KAsAIvu0VcXqiqA== - dependencies: - classnames "^2.2.5" - core-js "^3.1.3" - -fflate@^0.7.4: - version "0.7.4" - resolved "https://registry.yarnpkg.com/fflate/-/fflate-0.7.4.tgz#61587e5d958fdabb5a9368a302c25363f4f69f50" - integrity sha512-5u2V/CDW15QM1XbbgS+0DfPxVB+jUKhWEKuuFuHncbk3tEEqzmoXL+2KyOFuKGqOnmdIy0/davWF1CkuwtibCw== - -file-entry-cache@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" - integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg== - dependencies: - flat-cache "^3.0.4" - -fill-range@^7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" - integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== - dependencies: - to-regex-range "^5.0.1" - -find-up@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" - integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== - dependencies: - locate-path "^5.0.0" - path-exists "^4.0.0" - -find-up@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" - integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== - dependencies: - locate-path "^6.0.0" - path-exists "^4.0.0" - -flat-cache@^3.0.4: - version "3.2.0" - resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.2.0.tgz#2c0c2d5040c99b1632771a9d105725c0115363ee" - integrity sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw== - dependencies: - flatted "^3.2.9" - keyv "^4.5.3" - rimraf "^3.0.2" - -flatted@^3.2.7, flatted@^3.2.9: - version "3.3.1" - resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.3.1.tgz#21db470729a6734d4997002f439cb308987f567a" - integrity sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw== - -for-each@^0.3.3: - version "0.3.3" - resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.3.tgz#69b447e88a0a5d32c3e7084f3f1710034b21376e" - integrity sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw== - dependencies: - is-callable "^1.1.3" - -foreground-child@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-2.0.0.tgz#71b32800c9f15aa8f2f83f4a6bd9bff35d861a53" - integrity sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA== - dependencies: - cross-spawn "^7.0.0" - signal-exit "^3.0.2" - -fs.realpath@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" - integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== - -fsevents@~2.3.2: - version "2.3.3" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" - integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== - -function-bind@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" - integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== - -function.prototype.name@^1.1.6: - version "1.1.6" - resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.6.tgz#cdf315b7d90ee77a4c6ee216c3c3362da07533fd" - integrity sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg== - dependencies: - call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" - functions-have-names "^1.2.3" - -functions-have-names@^1.2.3: - version "1.2.3" - resolved "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.3.tgz#0404fe4ee2ba2f607f0e0ec3c80bae994133b834" - integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ== - -gensync@^1.0.0-beta.2: - version "1.0.0-beta.2" - resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" - integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== - -get-caller-file@^2.0.5: - version "2.0.5" - resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" - integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== - -get-func-name@^2.0.1, get-func-name@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/get-func-name/-/get-func-name-2.0.2.tgz#0d7cf20cd13fda808669ffa88f4ffc7a3943fc41" - integrity sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ== - -get-intrinsic@^1.1.3, get-intrinsic@^1.2.1, get-intrinsic@^1.2.3, get-intrinsic@^1.2.4: - version "1.2.4" - resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.4.tgz#e385f5a4b5227d449c3eabbad05494ef0abbeadd" - integrity sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ== - dependencies: - es-errors "^1.3.0" - function-bind "^1.1.2" - has-proto "^1.0.1" - has-symbols "^1.0.3" - hasown "^2.0.0" - -get-stream@^6.0.0: - version "6.0.1" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" - integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== - -get-symbol-description@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/get-symbol-description/-/get-symbol-description-1.0.2.tgz#533744d5aa20aca4e079c8e5daf7fd44202821f5" - integrity sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg== - dependencies: - call-bind "^1.0.5" - es-errors "^1.3.0" - get-intrinsic "^1.2.4" - -glob-parent@^5.1.2, glob-parent@~5.1.2: - version "5.1.2" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" - integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== - dependencies: - is-glob "^4.0.1" - -glob-parent@^6.0.2: - version "6.0.2" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3" - integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A== - dependencies: - is-glob "^4.0.3" - -glob@^7.1.3, glob@^7.1.4: - version "7.2.3" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" - integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.1.1" - once "^1.3.0" - path-is-absolute "^1.0.0" - -globals@^11.1.0: - version "11.12.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" - integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== - -globals@^13.19.0: - version "13.24.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-13.24.0.tgz#8432a19d78ce0c1e833949c36adb345400bb1171" - integrity sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ== - dependencies: - type-fest "^0.20.2" - -globalthis@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.4.tgz#7430ed3a975d97bfb59bcce41f5cabbafa651236" - integrity sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ== - dependencies: - define-properties "^1.2.1" - gopd "^1.0.1" - -globby@^11.1.0: - version "11.1.0" - resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" - integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== - dependencies: - array-union "^2.1.0" - dir-glob "^3.0.1" - fast-glob "^3.2.9" - ignore "^5.2.0" - merge2 "^1.4.1" - slash "^3.0.0" - -gopd@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.0.1.tgz#29ff76de69dac7489b7c0918a5788e56477c332c" - integrity sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA== - dependencies: - get-intrinsic "^1.1.3" - -graphemer@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/graphemer/-/graphemer-1.4.0.tgz#fb2f1d55e0e3a1849aeffc90c4fa0dd53a0e66c6" - integrity sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag== - -gzip-size@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/gzip-size/-/gzip-size-6.0.0.tgz#065367fd50c239c0671cbcbad5be3e2eeb10e462" - integrity sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q== - dependencies: - duplexer "^0.1.2" - -has-bigints@^1.0.1, has-bigints@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.2.tgz#0871bd3e3d51626f6ca0966668ba35d5602d6eaa" - integrity sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ== - -has-flag@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" - integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== - -has-flag@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" - integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== - -has-property-descriptors@^1.0.0, has-property-descriptors@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz#963ed7d071dc7bf5f084c5bfbe0d1b6222586854" - integrity sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg== - dependencies: - es-define-property "^1.0.0" - -has-proto@^1.0.1, has-proto@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/has-proto/-/has-proto-1.0.3.tgz#b31ddfe9b0e6e9914536a6ab286426d0214f77fd" - integrity sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q== - -has-symbols@^1.0.2, has-symbols@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8" - integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== - -has-tostringtag@^1.0.0, has-tostringtag@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.2.tgz#2cdc42d40bef2e5b4eeab7c01a73c54ce7ab5abc" - integrity sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw== - dependencies: - has-symbols "^1.0.3" - -hasown@^2.0.0, hasown@^2.0.1, hasown@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003" - integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ== - dependencies: - function-bind "^1.1.2" - -hosted-git-info@^2.1.4: - version "2.8.9" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" - integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== - -html-entities@2.3.3: - version "2.3.3" - resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-2.3.3.tgz#117d7626bece327fc8baace8868fa6f5ef856e46" - integrity sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA== - -html-escaper@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" - integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== - -html-tags@^3.0.0: - version "3.3.1" - resolved "https://registry.yarnpkg.com/html-tags/-/html-tags-3.3.1.tgz#a04026a18c882e4bba8a01a3d39cfe465d40b5ce" - integrity sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ== - -human-signals@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" - integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== - -ignore@^5.2.0: - version "5.3.1" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.1.tgz#5073e554cd42c5b33b394375f538b8593e34d4ef" - integrity sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw== - -import-fresh@^3.2.1: - version "3.3.0" - resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" - integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== - dependencies: - parent-module "^1.0.0" - resolve-from "^4.0.0" - -imurmurhash@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" - integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA== - -indent-string@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" - integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== - -inflight@^1.0.4: - version "1.0.6" - resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" - integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== - dependencies: - once "^1.3.0" - wrappy "1" - -inherits@2: - version "2.0.4" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" - integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== - -inline-style-parser@0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/inline-style-parser/-/inline-style-parser-0.1.1.tgz#ec8a3b429274e9c0a1f1c4ffa9453a7fef72cea1" - integrity sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q== - -internal-slot@^1.0.7: - version "1.0.7" - resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.7.tgz#c06dcca3ed874249881007b0a5523b172a190802" - integrity sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g== - dependencies: - es-errors "^1.3.0" - hasown "^2.0.0" - side-channel "^1.0.4" - -is-array-buffer@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/is-array-buffer/-/is-array-buffer-3.0.4.tgz#7a1f92b3d61edd2bc65d24f130530ea93d7fae98" - integrity sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw== - dependencies: - call-bind "^1.0.2" - get-intrinsic "^1.2.1" - -is-arrayish@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" - integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== - -is-bigint@^1.0.1: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.0.4.tgz#08147a1875bc2b32005d41ccd8291dffc6691df3" - integrity sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg== - dependencies: - has-bigints "^1.0.1" - -is-binary-path@~2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" - integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== - dependencies: - binary-extensions "^2.0.0" - -is-boolean-object@^1.1.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.1.2.tgz#5c6dc200246dd9321ae4b885a114bb1f75f63719" - integrity sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA== - dependencies: - call-bind "^1.0.2" - has-tostringtag "^1.0.0" - -is-builtin-module@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-3.2.1.tgz#f03271717d8654cfcaf07ab0463faa3571581169" - integrity sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A== - dependencies: - builtin-modules "^3.3.0" - -is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.7: - version "1.2.7" - resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055" - integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== - -is-core-module@^2.13.0: - version "2.13.1" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.13.1.tgz#ad0d7532c6fea9da1ebdc82742d74525c6273384" - integrity sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw== - dependencies: - hasown "^2.0.0" - -is-data-view@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-data-view/-/is-data-view-1.0.1.tgz#4b4d3a511b70f3dc26d42c03ca9ca515d847759f" - integrity sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w== - dependencies: - is-typed-array "^1.1.13" - -is-date-object@^1.0.1: - version "1.0.5" - resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f" - integrity sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ== - dependencies: - has-tostringtag "^1.0.0" - -is-extglob@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" - integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== - -is-fullwidth-code-point@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" - integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== - -is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: - version "4.0.3" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" - integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== - dependencies: - is-extglob "^2.1.1" - -is-html@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-html/-/is-html-2.0.0.tgz#b3ab2e27ccb7a12235448f51f115a6690f435fc8" - integrity sha512-S+OpgB5i7wzIue/YSE5hg0e5ZYfG3hhpNh9KGl6ayJ38p7ED6wxQLd1TV91xHpcTvw90KMJ9EwN3F/iNflHBVg== - dependencies: - html-tags "^3.0.0" - -is-negative-zero@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.3.tgz#ced903a027aca6381b777a5743069d7376a49747" - integrity sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw== - -is-number-object@^1.0.4: - version "1.0.7" - resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.7.tgz#59d50ada4c45251784e9904f5246c742f07a42fc" - integrity sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ== - dependencies: - has-tostringtag "^1.0.0" - -is-number@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" - integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== - -is-path-inside@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" - integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ== - -is-regex@^1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.4.tgz#eef5663cd59fa4c0ae339505323df6854bb15958" - integrity sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg== - dependencies: - call-bind "^1.0.2" - has-tostringtag "^1.0.0" - -is-shared-array-buffer@^1.0.2, is-shared-array-buffer@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz#1237f1cba059cdb62431d378dcc37d9680181688" - integrity sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg== - dependencies: - call-bind "^1.0.7" - -is-stream@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" - integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg== - -is-string@^1.0.5, is-string@^1.0.7: - version "1.0.7" - resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.7.tgz#0dd12bf2006f255bb58f695110eff7491eebc0fd" - integrity sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg== - dependencies: - has-tostringtag "^1.0.0" - -is-symbol@^1.0.2, is-symbol@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.4.tgz#a6dac93b635b063ca6872236de88910a57af139c" - integrity sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg== - dependencies: - has-symbols "^1.0.2" - -is-typed-array@^1.1.13: - version "1.1.13" - resolved "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.13.tgz#d6c5ca56df62334959322d7d7dd1cca50debe229" - integrity sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw== - dependencies: - which-typed-array "^1.1.14" - -is-weakref@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.0.2.tgz#9529f383a9338205e89765e0392efc2f100f06f2" - integrity sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ== - dependencies: - call-bind "^1.0.2" - -is-what@^4.1.8: - version "4.1.16" - resolved "https://registry.yarnpkg.com/is-what/-/is-what-4.1.16.tgz#1ad860a19da8b4895ad5495da3182ce2acdd7a6f" - integrity sha512-ZhMwEosbFJkA0YhFnNDgTM4ZxDRsS6HqTo7qsZM08fehyRYIYa0yHu5R6mgo1n/8MgaPBXiPimPD77baVFYg+A== - -isarray@^2.0.5: - version "2.0.5" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-2.0.5.tgz#8af1e4c1221244cc62459faf38940d4e644a5723" - integrity sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw== - -isexe@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" - integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== - -istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0: - version "3.2.2" - resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz#2d166c4b0644d43a39f04bf6c2edd1e585f31756" - integrity sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg== - -istanbul-lib-report@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz#908305bac9a5bd175ac6a74489eafd0fc2445a7d" - integrity sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw== - dependencies: - istanbul-lib-coverage "^3.0.0" - make-dir "^4.0.0" - supports-color "^7.1.0" - -istanbul-reports@^3.1.4: - version "3.1.7" - resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.7.tgz#daed12b9e1dca518e15c056e1e537e741280fa0b" - integrity sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g== - dependencies: - html-escaper "^2.0.0" - istanbul-lib-report "^3.0.0" - -jiti@^1.21.0: - version "1.21.0" - resolved "https://registry.yarnpkg.com/jiti/-/jiti-1.21.0.tgz#7c97f8fe045724e136a397f7340475244156105d" - integrity sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q== - -js-string-escape@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/js-string-escape/-/js-string-escape-1.0.1.tgz#e2625badbc0d67c7533e9edc1068c587ae4137ef" - integrity sha512-Smw4xcfIQ5LVjAOuJCvN/zIodzA/BBSsluuoSykP+lUvScIi4U6RJLfwHet5cxFnCswUjISV8oAXaqaJDY3chg== - -js-tokens@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" - integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== - -js-yaml@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" - integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== - dependencies: - argparse "^2.0.1" - -jsesc@^2.5.1: - version "2.5.2" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" - integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== - -jsesc@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-3.0.2.tgz#bb8b09a6597ba426425f2e4a07245c3d00b9343e" - integrity sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g== - -jsesc@~0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" - integrity sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA== - -json-buffer@3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13" - integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ== - -json-parse-even-better-errors@^2.3.0: - version "2.3.1" - resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" - integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== - -json-schema-traverse@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" - integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== - -json-stable-stringify-without-jsonify@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" - integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw== - -json5@^2.2.3: - version "2.2.3" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" - integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== - -jsx-ast-utils@^3.3.3: - version "3.3.5" - resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz#4766bd05a8e2a11af222becd19e15575e52a853a" - integrity sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ== - dependencies: - array-includes "^3.1.6" - array.prototype.flat "^1.3.1" - object.assign "^4.1.4" - object.values "^1.1.6" - -kebab-case@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/kebab-case/-/kebab-case-1.0.2.tgz#5eac97d5d220acf606d40e3c0ecfea21f1f9e1eb" - integrity sha512-7n6wXq4gNgBELfDCpzKc+mRrZFs7D+wgfF5WRFLNAr4DA/qtr9Js8uOAVAfHhuLMfAcQ0pRKqbpjx+TcJVdE1Q== - -keyv@^4.5.3: - version "4.5.4" - resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.5.4.tgz#a879a99e29452f942439f2a405e3af8b31d4de93" - integrity sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw== - dependencies: - json-buffer "3.0.1" - -known-css-properties@^0.24.0: - version "0.24.0" - resolved "https://registry.yarnpkg.com/known-css-properties/-/known-css-properties-0.24.0.tgz#19aefd85003ae5698a5560d2b55135bf5432155c" - integrity sha512-RTSoaUAfLvpR357vWzAz/50Q/BmHfmE6ETSWfutT0AJiw10e6CmcdYRQJlLRd95B53D0Y2aD1jSxD3V3ySF+PA== - -kolorist@^1.8.0: - version "1.8.0" - resolved "https://registry.yarnpkg.com/kolorist/-/kolorist-1.8.0.tgz#edddbbbc7894bc13302cdf740af6374d4a04743c" - integrity sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ== - -levn@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" - integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== - dependencies: - prelude-ls "^1.2.1" - type-check "~0.4.0" - -lines-and-columns@^1.1.6: - version "1.2.4" - resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" - integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== - -local-pkg@^0.4.3: - version "0.4.3" - resolved "https://registry.yarnpkg.com/local-pkg/-/local-pkg-0.4.3.tgz#0ff361ab3ae7f1c19113d9bb97b98b905dbc4963" - integrity sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g== - -local-pkg@^0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/local-pkg/-/local-pkg-0.5.0.tgz#093d25a346bae59a99f80e75f6e9d36d7e8c925c" - integrity sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg== - dependencies: - mlly "^1.4.2" - pkg-types "^1.0.3" - -locate-path@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" - integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g== - dependencies: - p-locate "^4.1.0" - -locate-path@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286" - integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw== - dependencies: - p-locate "^5.0.0" - -lodash.merge@^4.6.2: - version "4.6.2" - resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" - integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== - -lodash@^4.17.15, lodash@^4.17.21: - version "4.17.21" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" - integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== - -loupe@^2.3.6: - version "2.3.7" - resolved "https://registry.yarnpkg.com/loupe/-/loupe-2.3.7.tgz#6e69b7d4db7d3ab436328013d37d1c8c3540c697" - integrity sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA== - dependencies: - get-func-name "^2.0.1" - -lru-cache@^5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" - integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== - dependencies: - yallist "^3.0.2" - -magic-string@^0.30.0: - version "0.30.10" - resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.30.10.tgz#123d9c41a0cb5640c892b041d4cfb3bd0aa4b39e" - integrity sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ== - dependencies: - "@jridgewell/sourcemap-codec" "^1.4.15" - -make-dir@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-4.0.0.tgz#c3c2307a771277cd9638305f915c29ae741b614e" - integrity sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw== - dependencies: - semver "^7.5.3" - -md5-hex@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/md5-hex/-/md5-hex-3.0.1.tgz#be3741b510591434b2784d79e556eefc2c9a8e5c" - integrity sha512-BUiRtTtV39LIJwinWBjqVsU9xhdnz7/i889V859IBFpuqGAj6LuOvHv5XLbgZ2R7ptJoJaEcxkv88/h25T7Ciw== - dependencies: - blueimp-md5 "^2.10.0" - -mdn-data@2.0.30: - version "2.0.30" - resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.30.tgz#ce4df6f80af6cfbe218ecd5c552ba13c4dfa08cc" - integrity sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA== - -merge-anything@^5.1.7: - version "5.1.7" - resolved "https://registry.yarnpkg.com/merge-anything/-/merge-anything-5.1.7.tgz#94f364d2b0cf21ac76067b5120e429353b3525d7" - integrity sha512-eRtbOb1N5iyH0tkQDAoQ4Ipsp/5qSR79Dzrz8hEPxRX10RWWR/iQXdoKmBSRCThY1Fh5EhISDtpSc93fpxUniQ== - dependencies: - is-what "^4.1.8" - -merge-stream@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" - integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== - -merge2@^1.3.0, merge2@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" - integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== - -micromatch@^4.0.4: - version "4.0.5" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6" - integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA== - dependencies: - braces "^3.0.2" - picomatch "^2.3.1" - -mimic-fn@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" - integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== - -min-indent@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869" - integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== - -minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: - version "3.1.2" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" - integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== - dependencies: - brace-expansion "^1.1.7" - -mlly@^1.2.0, mlly@^1.4.2, mlly@^1.6.1, mlly@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/mlly/-/mlly-1.7.0.tgz#587383ae40dda23cadb11c3c3cc972b277724271" - integrity sha512-U9SDaXGEREBYQgfejV97coK0UL1r+qnF2SyO9A3qcI8MzKnsIFKHNVEkrDyNncQTKQQumsasmeq84eNMdBfsNQ== - dependencies: - acorn "^8.11.3" - pathe "^1.1.2" - pkg-types "^1.1.0" - ufo "^1.5.3" - -mrmime@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/mrmime/-/mrmime-2.0.0.tgz#151082a6e06e59a9a39b46b3e14d5cfe92b3abb4" - integrity sha512-eu38+hdgojoyq63s+yTpN4XMBdt5l8HhMhc4VKLO9KM5caLIBvUm4thi7fFaxyTmCKeNnXZ5pAlBwCUnhA09uw== - -ms@2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" - integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== - -nanoid@^3.3.7: - version "3.3.7" - resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.7.tgz#d0c301a691bc8d54efa0a2226ccf3fe2fd656bd8" - integrity sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g== - -natural-compare-lite@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz#17b09581988979fddafe0201e931ba933c96cbb4" - integrity sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g== - -natural-compare@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" - integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== - -node-fetch-native@^1.6.3: - version "1.6.4" - resolved "https://registry.yarnpkg.com/node-fetch-native/-/node-fetch-native-1.6.4.tgz#679fc8fd8111266d47d7e72c379f1bed9acff06e" - integrity sha512-IhOigYzAKHd244OC0JIMIUrjzctirCmPkaIfhDeGcEETWof5zKYUW7e7MYvChGWh/4CJeXEgsRyGzuF334rOOQ== - -node-releases@^2.0.14: - version "2.0.14" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.14.tgz#2ffb053bceb8b2be8495ece1ab6ce600c4461b0b" - integrity sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw== - -normalize-package-data@^2.5.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" - integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== - dependencies: - hosted-git-info "^2.1.4" - resolve "^1.10.0" - semver "2 || 3 || 4 || 5" - validate-npm-package-license "^3.0.1" - -normalize-path@^3.0.0, normalize-path@~3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" - integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== - -npm-run-path@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" - integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== - dependencies: - path-key "^3.0.0" - -object-inspect@^1.13.1: - version "1.13.1" - resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.1.tgz#b96c6109324ccfef6b12216a956ca4dc2ff94bc2" - integrity sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ== - -object-keys@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" - integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== - -object.assign@^4.1.4, object.assign@^4.1.5: - version "4.1.5" - resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.5.tgz#3a833f9ab7fdb80fc9e8d2300c803d216d8fdbb0" - integrity sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ== - dependencies: - call-bind "^1.0.5" - define-properties "^1.2.1" - has-symbols "^1.0.3" - object-keys "^1.1.1" - -object.values@^1.1.6: - version "1.2.0" - resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.2.0.tgz#65405a9d92cee68ac2d303002e0b8470a4d9ab1b" - integrity sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ== - dependencies: - call-bind "^1.0.7" - define-properties "^1.2.1" - es-object-atoms "^1.0.0" - -ofetch@^1.0.1: - version "1.3.4" - resolved "https://registry.yarnpkg.com/ofetch/-/ofetch-1.3.4.tgz#7ea65ced3c592ec2b9906975ae3fe1d26a56f635" - integrity sha512-KLIET85ik3vhEfS+3fDlc/BAZiAp+43QEC/yCo5zkNoY2YaKvNkOaFr/6wCFgFH1kuYQM5pMNi0Tg8koiIemtw== - dependencies: - destr "^2.0.3" - node-fetch-native "^1.6.3" - ufo "^1.5.3" - -once@^1.3.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" - integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== - dependencies: - wrappy "1" - -onetime@^5.1.2: - version "5.1.2" - resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" - integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== - dependencies: - mimic-fn "^2.1.0" - -openapi-fetch@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/openapi-fetch/-/openapi-fetch-0.2.1.tgz#a5865cd030620df9047c588554b1b670b0355757" - integrity sha512-XrpiPz8fPUdYtgcXSU4u8jJ/At67PbFsj6XRZZbt6lMsrosKplWY7dUgnkstYaroschNz/NfYSPIiq0sOaY0nw== - -openapi-typescript@^6.5.0: - version "6.7.5" - resolved "https://registry.yarnpkg.com/openapi-typescript/-/openapi-typescript-6.7.5.tgz#3e7f0d080d540396ef8db3df4ed07e1a4a5bb1d8" - integrity sha512-ZD6dgSZi0u1QCP55g8/2yS5hNJfIpgqsSGHLxxdOjvY7eIrXzj271FJEQw33VwsZ6RCtO/NOuhxa7GBWmEudyA== - dependencies: - ansi-colors "^4.1.3" - fast-glob "^3.3.2" - js-yaml "^4.1.0" - supports-color "^9.4.0" - undici "^5.28.2" - yargs-parser "^21.1.1" - -optionator@^0.9.3: - version "0.9.4" - resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.4.tgz#7ea1c1a5d91d764fb282139c88fe11e182a3a734" - integrity sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g== - dependencies: - deep-is "^0.1.3" - fast-levenshtein "^2.0.6" - levn "^0.4.1" - prelude-ls "^1.2.1" - type-check "^0.4.0" - word-wrap "^1.2.5" - -p-limit@^2.2.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" - integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== - dependencies: - p-try "^2.0.0" - -p-limit@^3.0.2: - version "3.1.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" - integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== - dependencies: - yocto-queue "^0.1.0" - -p-limit@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-4.0.0.tgz#914af6544ed32bfa54670b061cafcbd04984b644" - integrity sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ== - dependencies: - yocto-queue "^1.0.0" - -p-locate@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" - integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A== - dependencies: - p-limit "^2.2.0" - -p-locate@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834" - integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw== - dependencies: - p-limit "^3.0.2" - -p-try@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" - integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== - -parent-module@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" - integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== - dependencies: - callsites "^3.0.0" - -parse-json@^5.0.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" - integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== - dependencies: - "@babel/code-frame" "^7.0.0" - error-ex "^1.3.1" - json-parse-even-better-errors "^2.3.0" - lines-and-columns "^1.1.6" - -path-exists@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" - integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== - -path-is-absolute@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" - integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== - -path-key@^3.0.0, path-key@^3.1.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" - integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== - -path-parse@^1.0.7: - version "1.0.7" - resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" - integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== - -path-type@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" - integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== - -pathe@^1.1.0, pathe@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/pathe/-/pathe-1.1.2.tgz#6c4cb47a945692e48a1ddd6e4094d170516437ec" - integrity sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ== - -pathval@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/pathval/-/pathval-1.1.1.tgz#8534e77a77ce7ac5a2512ea21e0fdb8fcf6c3d8d" - integrity sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ== - -perfect-debounce@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/perfect-debounce/-/perfect-debounce-1.0.0.tgz#9c2e8bc30b169cc984a58b7d5b28049839591d2a" - integrity sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA== - -picocolors@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" - integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== - -picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.3.1: - version "2.3.1" - resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" - integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== - -pkg-types@^1.0.3, pkg-types@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/pkg-types/-/pkg-types-1.1.1.tgz#07b626880749beb607b0c817af63aac1845a73f2" - integrity sha512-ko14TjmDuQJ14zsotODv7dBlwxKhUKQEhuhmbqo1uCi9BB0Z2alo/wAXg6q1dTR5TyuqYyWhjtfe/Tsh+X28jQ== - dependencies: - confbox "^0.1.7" - mlly "^1.7.0" - pathe "^1.1.2" - -pluralize@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-8.0.0.tgz#1a6fa16a38d12a1901e0320fa017051c539ce3b1" - integrity sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA== - -possible-typed-array-names@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz#89bb63c6fada2c3e90adc4a647beeeb39cc7bf8f" - integrity sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q== - -postcss@^8.4.23, postcss@^8.4.27: - version "8.4.38" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.38.tgz#b387d533baf2054288e337066d81c6bee9db9e0e" - integrity sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A== - dependencies: - nanoid "^3.3.7" - picocolors "^1.0.0" - source-map-js "^1.2.0" - -prelude-ls@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" - integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== - -prettier@^2.8.8: - version "2.8.8" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.8.8.tgz#e8c5d7e98a4305ffe3de2e1fc4aca1a71c28b1da" - integrity sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q== - -pretty-format@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.5.1.tgz#2181879fdea51a7a5851fb39d920faa63f01d88e" - integrity sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ== - dependencies: - ansi-regex "^5.0.1" - ansi-styles "^5.0.0" - react-is "^17.0.1" - -punycode@^2.1.0: - version "2.3.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.1.tgz#027422e2faec0b25e1549c3e1bd8309b9133b6e5" - integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg== - -queue-microtask@^1.2.2: - version "1.2.3" - resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" - integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== - -react-is@^17.0.1: - version "17.0.2" - resolved "https://registry.yarnpkg.com/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0" - integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w== - -read-pkg-up@^7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-7.0.1.tgz#f3a6135758459733ae2b95638056e1854e7ef507" - integrity sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg== - dependencies: - find-up "^4.1.0" - read-pkg "^5.2.0" - type-fest "^0.8.1" - -read-pkg@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-5.2.0.tgz#7bf295438ca5a33e56cd30e053b34ee7250c93cc" - integrity sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg== - dependencies: - "@types/normalize-package-data" "^2.4.0" - normalize-package-data "^2.5.0" - parse-json "^5.0.0" - type-fest "^0.6.0" - -readdirp@~3.6.0: - version "3.6.0" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" - integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA== - dependencies: - picomatch "^2.2.1" - -regexp-tree@^0.1.24, regexp-tree@~0.1.1: - version "0.1.27" - resolved "https://registry.yarnpkg.com/regexp-tree/-/regexp-tree-0.1.27.tgz#2198f0ef54518ffa743fe74d983b56ffd631b6cd" - integrity sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA== - -regexp.prototype.flags@^1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz#138f644a3350f981a858c44f6bb1a61ff59be334" - integrity sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw== - dependencies: - call-bind "^1.0.6" - define-properties "^1.2.1" - es-errors "^1.3.0" - set-function-name "^2.0.1" - -regjsparser@^0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.10.0.tgz#b1ed26051736b436f22fdec1c8f72635f9f44892" - integrity sha512-qx+xQGZVsy55CH0a1hiVwHmqjLryfh7wQyF5HO07XJ9f7dQMY/gPQHhlyDkIzJKC+x2fUCpCcUODUUUFrm7SHA== - dependencies: - jsesc "~0.5.0" - -require-directory@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" - integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q== - -resolve-from@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" - integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== - -resolve@^1.10.0: - version "1.22.8" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d" - integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw== - dependencies: - is-core-module "^2.13.0" - path-parse "^1.0.7" - supports-preserve-symlinks-flag "^1.0.0" - -reusify@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" - integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== - -rimraf@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" - integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== - dependencies: - glob "^7.1.3" - -rollup@^3.27.1: - version "3.29.4" - resolved "https://registry.yarnpkg.com/rollup/-/rollup-3.29.4.tgz#4d70c0f9834146df8705bfb69a9a19c9e1109981" - integrity sha512-oWzmBZwvYrU0iJHtDmhsm662rC15FRXmcjCk1xD771dFDx5jJ02ufAQQTn0etB2emNk4J9EZg/yWKpsn9BWGRw== - optionalDependencies: - fsevents "~2.3.2" - -run-parallel@^1.1.9: - version "1.2.0" - resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" - integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== - dependencies: - queue-microtask "^1.2.2" - -safe-array-concat@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/safe-array-concat/-/safe-array-concat-1.1.2.tgz#81d77ee0c4e8b863635227c721278dd524c20edb" - integrity sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q== - dependencies: - call-bind "^1.0.7" - get-intrinsic "^1.2.4" - has-symbols "^1.0.3" - isarray "^2.0.5" - -safe-regex-test@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.0.3.tgz#a5b4c0f06e0ab50ea2c395c14d8371232924c377" - integrity sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw== - dependencies: - call-bind "^1.0.6" - es-errors "^1.3.0" - is-regex "^1.1.4" - -safe-regex@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-2.1.1.tgz#f7128f00d056e2fe5c11e81a1324dd974aadced2" - integrity sha512-rx+x8AMzKb5Q5lQ95Zoi6ZbJqwCLkqi3XuJXp5P3rT8OEc6sZCJG5AE5dU3lsgRr/F4Bs31jSlVN+j5KrsGu9A== - dependencies: - regexp-tree "~0.1.1" - -"semver@2 || 3 || 4 || 5": - version "5.7.2" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8" - integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== - -semver@^6.3.1: - version "6.3.1" - resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" - integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== - -semver@^7.3.2, semver@^7.3.7, semver@^7.3.8, semver@^7.5.3: - version "7.6.2" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.2.tgz#1e3b34759f896e8f14d6134732ce798aeb0c6e13" - integrity sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w== - -seroval-plugins@^1.0.3: - version "1.0.5" - resolved "https://registry.yarnpkg.com/seroval-plugins/-/seroval-plugins-1.0.5.tgz#eeded50d736d5e1dba142a72b0188df9f4e42b6d" - integrity sha512-8+pDC1vOedPXjKG7oz8o+iiHrtF2WswaMQJ7CKFpccvSYfrzmvKY9zOJWCg+881722wIHfwkdnRmiiDm9ym+zQ== - -seroval@^1.0.4: - version "1.0.5" - resolved "https://registry.yarnpkg.com/seroval/-/seroval-1.0.5.tgz#d71ee540d936babaed92f56eda3e52d8e2a3deed" - integrity sha512-TM+Z11tHHvQVQKeNlOUonOWnsNM+2IBwZ4vwoi4j3zKzIpc5IDw8WPwCfcc8F17wy6cBcJGbZbFOR0UCuTZHQA== - -set-function-length@^1.2.1: - version "1.2.2" - resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.2.2.tgz#aac72314198eaed975cf77b2c3b6b880695e5449" - integrity sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg== - dependencies: - define-data-property "^1.1.4" - es-errors "^1.3.0" - function-bind "^1.1.2" - get-intrinsic "^1.2.4" - gopd "^1.0.1" - has-property-descriptors "^1.0.2" - -set-function-name@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/set-function-name/-/set-function-name-2.0.2.tgz#16a705c5a0dc2f5e638ca96d8a8cd4e1c2b90985" - integrity sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ== - dependencies: - define-data-property "^1.1.4" - es-errors "^1.3.0" - functions-have-names "^1.2.3" - has-property-descriptors "^1.0.2" - -shebang-command@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" - integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== - dependencies: - shebang-regex "^3.0.0" - -shebang-regex@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" - integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== - -side-channel@^1.0.4: - version "1.0.6" - resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.6.tgz#abd25fb7cd24baf45466406b1096b7831c9215f2" - integrity sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA== - dependencies: - call-bind "^1.0.7" - es-errors "^1.3.0" - get-intrinsic "^1.2.4" - object-inspect "^1.13.1" - -siginfo@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/siginfo/-/siginfo-2.0.0.tgz#32e76c70b79724e3bb567cb9d543eb858ccfaf30" - integrity sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g== - -signal-exit@^3.0.2, signal-exit@^3.0.3: - version "3.0.7" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" - integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== - -sirv@^2.0.3: - version "2.0.4" - resolved "https://registry.yarnpkg.com/sirv/-/sirv-2.0.4.tgz#5dd9a725c578e34e449f332703eb2a74e46a29b0" - integrity sha512-94Bdh3cC2PKrbgSOUqTiGPWVZeSiXfKOVZNJniWoqrWrRkB1CJzBU3NEbiTsPcYy1lDsANA/THzS+9WBiy5nfQ== - dependencies: - "@polka/url" "^1.0.0-next.24" - mrmime "^2.0.0" - totalist "^3.0.0" - -slash@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" - integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== - -solid-headless@^0.13.1: - version "0.13.1" - resolved "https://registry.yarnpkg.com/solid-headless/-/solid-headless-0.13.1.tgz#eed2d79043891eaebccc8aa1449f7aaa8ba24e2e" - integrity sha512-FZJai49YmdBu6oEo8aJGPMQ1Qn8xiW0cnD6vNFDIQWMKJdXEUtDEwz0hTR9aZ7Epq3IkrZs+98E0vNiv1+pZpA== - dependencies: - solid-use "^0.6.2" - -solid-js@^1.7.4: - version "1.8.17" - resolved "https://registry.yarnpkg.com/solid-js/-/solid-js-1.8.17.tgz#780ed6f0fd8633009d1b3c29d56bf6b6bb33bd50" - integrity sha512-E0FkUgv9sG/gEBWkHr/2XkBluHb1fkrHywUgA6o6XolPDCJ4g1HaLmQufcBBhiF36ee40q+HpG/vCZu7fLpI3Q== - dependencies: - csstype "^3.1.0" - seroval "^1.0.4" - seroval-plugins "^1.0.3" - -solid-refresh@^0.6.3: - version "0.6.3" - resolved "https://registry.yarnpkg.com/solid-refresh/-/solid-refresh-0.6.3.tgz#d23ef80f04e177619c9234a809c573cb16360627" - integrity sha512-F3aPsX6hVw9ttm5LYlth8Q15x6MlI/J3Dn+o3EQyRTtTxidepSTwAYdozt01/YA+7ObcciagGEyXIopGZzQtbA== - dependencies: - "@babel/generator" "^7.23.6" - "@babel/helper-module-imports" "^7.22.15" - "@babel/types" "^7.23.6" - -solid-use@^0.6.2: - version "0.6.2" - resolved "https://registry.yarnpkg.com/solid-use/-/solid-use-0.6.2.tgz#c9d997d5db3658693bf7436741439924f487d5c8" - integrity sha512-0ShJ5s+4PIN0pJB/BtsQucsZB+xnUeeTGaxErQDu6USn5jygZWXicAtOEvFbI8gv40xE751uY1Tz7Aib9lxL/Q== - -source-map-js@^1.0.1, source-map-js@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.2.0.tgz#16b809c162517b5b8c3e7dcd315a2a5c2612b2af" - integrity sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg== - -spdx-correct@^3.0.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.2.0.tgz#4f5ab0668f0059e34f9c00dce331784a12de4e9c" - integrity sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA== - dependencies: - spdx-expression-parse "^3.0.0" - spdx-license-ids "^3.0.0" - -spdx-exceptions@^2.1.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz#5d607d27fc806f66d7b64a766650fa890f04ed66" - integrity sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w== - -spdx-expression-parse@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679" - integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q== - dependencies: - spdx-exceptions "^2.1.0" - spdx-license-ids "^3.0.0" - -spdx-license-ids@^3.0.0: - version "3.0.17" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.17.tgz#887da8aa73218e51a1d917502d79863161a93f9c" - integrity sha512-sh8PWc/ftMqAAdFiBu6Fy6JUOYjqDJBJvIhpfDMyHrr0Rbp5liZqd4TjtQ/RgfLjKFZb+LMx5hpml5qOWy0qvg== - -stackback@0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/stackback/-/stackback-0.0.2.tgz#1ac8a0d9483848d1695e418b6d031a3c3ce68e3b" - integrity sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw== - -std-env@^3.3.2: - version "3.7.0" - resolved "https://registry.yarnpkg.com/std-env/-/std-env-3.7.0.tgz#c9f7386ced6ecf13360b6c6c55b8aaa4ef7481d2" - integrity sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg== - -string-width@^4.1.0, string-width@^4.2.0: - version "4.2.3" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" - integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== - dependencies: - emoji-regex "^8.0.0" - is-fullwidth-code-point "^3.0.0" - strip-ansi "^6.0.1" - -string.prototype.trim@^1.2.9: - version "1.2.9" - resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz#b6fa326d72d2c78b6df02f7759c73f8f6274faa4" - integrity sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw== - dependencies: - call-bind "^1.0.7" - define-properties "^1.2.1" - es-abstract "^1.23.0" - es-object-atoms "^1.0.0" - -string.prototype.trimend@^1.0.8: - version "1.0.8" - resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz#3651b8513719e8a9f48de7f2f77640b26652b229" - integrity sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ== - dependencies: - call-bind "^1.0.7" - define-properties "^1.2.1" - es-object-atoms "^1.0.0" - -string.prototype.trimstart@^1.0.8: - version "1.0.8" - resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz#7ee834dda8c7c17eff3118472bb35bfedaa34dde" - integrity sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg== - dependencies: - call-bind "^1.0.7" - define-properties "^1.2.1" - es-object-atoms "^1.0.0" - -strip-ansi@^6.0.0, strip-ansi@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" - integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== - dependencies: - ansi-regex "^5.0.1" - -strip-final-newline@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" - integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== - -strip-indent@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-3.0.0.tgz#c32e1cee940b6b3432c771bc2c54bcce73cd3001" - integrity sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ== - dependencies: - min-indent "^1.0.0" - -strip-json-comments@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" - integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== - -strip-literal@^1.0.1: - version "1.3.0" - resolved "https://registry.yarnpkg.com/strip-literal/-/strip-literal-1.3.0.tgz#db3942c2ec1699e6836ad230090b84bb458e3a07" - integrity sha512-PugKzOsyXpArk0yWmUwqOZecSO0GH0bPoctLcqNDH9J04pVW3lflYE0ujElBGTloevcxF5MofAOZ7C5l2b+wLg== - dependencies: - acorn "^8.10.0" - -style-to-object@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/style-to-object/-/style-to-object-0.3.0.tgz#b1b790d205991cc783801967214979ee19a76e46" - integrity sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA== - dependencies: - inline-style-parser "0.1.1" - -supports-color@^5.3.0: - version "5.5.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" - integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== - dependencies: - has-flag "^3.0.0" - -supports-color@^7.1.0: - version "7.2.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" - integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== - dependencies: - has-flag "^4.0.0" - -supports-color@^9.4.0: - version "9.4.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-9.4.0.tgz#17bfcf686288f531db3dea3215510621ccb55954" - integrity sha512-VL+lNrEoIXww1coLPOmiEmK/0sGigko5COxI09KzHc2VJXJsQ37UaQ+8quuxjDeA7+KnLGTWRyOXSLLR2Wb4jw== - -supports-preserve-symlinks-flag@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" - integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== - -test-exclude@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e" - integrity sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w== - dependencies: - "@istanbuljs/schema" "^0.1.2" - glob "^7.1.4" - minimatch "^3.0.4" - -text-table@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" - integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw== - -time-zone@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/time-zone/-/time-zone-1.0.0.tgz#99c5bf55958966af6d06d83bdf3800dc82faec5d" - integrity sha512-TIsDdtKo6+XrPtiTm1ssmMngN1sAhyKnTO2kunQWqNPWIVvCm15Wmw4SWInwTVgJ5u/Tr04+8Ei9TNcw4x4ONA== - -tinybench@^2.5.0: - version "2.8.0" - resolved "https://registry.yarnpkg.com/tinybench/-/tinybench-2.8.0.tgz#30e19ae3a27508ee18273ffed9ac7018949acd7b" - integrity sha512-1/eK7zUnIklz4JUUlL+658n58XO2hHLQfSk1Zf2LKieUjxidN16eKFEoDEfjHc3ohofSSqK3X5yO6VGb6iW8Lw== - -tinypool@^0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/tinypool/-/tinypool-0.5.0.tgz#3861c3069bf71e4f1f5aa2d2e6b3aaacc278961e" - integrity sha512-paHQtnrlS1QZYKF/GnLoOM/DN9fqaGOFbCbxzAhwniySnzl9Ebk8w73/dd34DAhe/obUbPAOldTyYXQZxnPBPQ== - -tinyspy@^2.1.0: - version "2.2.1" - resolved "https://registry.yarnpkg.com/tinyspy/-/tinyspy-2.2.1.tgz#117b2342f1f38a0dbdcc73a50a454883adf861d1" - integrity sha512-KYad6Vy5VDWV4GH3fjpseMQ/XU2BhIYP7Vzd0LG44qRWm/Yt2WCOTicFdvmgo6gWaqooMQCawTtILVQJupKu7A== - -to-fast-properties@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" - integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog== - -to-regex-range@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" - integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== - dependencies: - is-number "^7.0.0" - -totalist@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/totalist/-/totalist-3.0.1.tgz#ba3a3d600c915b1a97872348f79c127475f6acf8" - integrity sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ== - -tslib@^1.8.1: - version "1.14.1" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" - integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== - -tsutils@^3.21.0: - version "3.21.0" - resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623" - integrity sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA== - dependencies: - tslib "^1.8.1" - -type-check@^0.4.0, type-check@~0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" - integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== - dependencies: - prelude-ls "^1.2.1" - -type-detect@^4.0.0, type-detect@^4.0.8: - version "4.0.8" - resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" - integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== - -type-fest@^0.20.2: - version "0.20.2" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" - integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== - -type-fest@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.6.0.tgz#8d2a2370d3df886eb5c90ada1c5bf6188acf838b" - integrity sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg== - -type-fest@^0.8.1: - version "0.8.1" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" - integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== - -typed-array-buffer@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz#1867c5d83b20fcb5ccf32649e5e2fc7424474ff3" - integrity sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ== - dependencies: - call-bind "^1.0.7" - es-errors "^1.3.0" - is-typed-array "^1.1.13" - -typed-array-byte-length@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz#d92972d3cff99a3fa2e765a28fcdc0f1d89dec67" - integrity sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw== - dependencies: - call-bind "^1.0.7" - for-each "^0.3.3" - gopd "^1.0.1" - has-proto "^1.0.3" - is-typed-array "^1.1.13" - -typed-array-byte-offset@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz#f9ec1acb9259f395093e4567eb3c28a580d02063" - integrity sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA== - dependencies: - available-typed-arrays "^1.0.7" - call-bind "^1.0.7" - for-each "^0.3.3" - gopd "^1.0.1" - has-proto "^1.0.3" - is-typed-array "^1.1.13" - -typed-array-length@^1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/typed-array-length/-/typed-array-length-1.0.6.tgz#57155207c76e64a3457482dfdc1c9d1d3c4c73a3" - integrity sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g== - dependencies: - call-bind "^1.0.7" - for-each "^0.3.3" - gopd "^1.0.1" - has-proto "^1.0.3" - is-typed-array "^1.1.13" - possible-typed-array-names "^1.0.0" - -typescript@^5.0.4: - version "5.4.5" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.4.5.tgz#42ccef2c571fdbd0f6718b1d1f5e6e5ef006f611" - integrity sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ== - -ufo@^1.5.3: - version "1.5.3" - resolved "https://registry.yarnpkg.com/ufo/-/ufo-1.5.3.tgz#3325bd3c977b6c6cd3160bf4ff52989adc9d3344" - integrity sha512-Y7HYmWaFwPUmkoQCUIAYpKqkOf+SbVj/2fJJZ4RJMCfZp0rTGwRbzQD+HghfnhKOjL9E01okqz+ncJskGYfBNw== - -unbox-primitive@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.2.tgz#29032021057d5e6cdbd08c5129c226dff8ed6f9e" - integrity sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw== - dependencies: - call-bind "^1.0.2" - has-bigints "^1.0.2" - has-symbols "^1.0.3" - which-boxed-primitive "^1.0.2" - -unconfig@^0.3.7: - version "0.3.13" - resolved "https://registry.yarnpkg.com/unconfig/-/unconfig-0.3.13.tgz#8612d57811c1316f30d95f45bb96ce8ce8afc10c" - integrity sha512-N9Ph5NC4+sqtcOjPfHrRcHekBCadCXWTBzp2VYYbySOHW0PfD9XLCeXshTXjkPYwLrBr9AtSeU0CZmkYECJhng== - dependencies: - "@antfu/utils" "^0.7.7" - defu "^6.1.4" - jiti "^1.21.0" - -undici-types@~5.26.4: - version "5.26.5" - resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.26.5.tgz#bcd539893d00b56e964fd2657a4866b221a65617" - integrity sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA== - -undici@^5.28.2: - version "5.28.4" - resolved "https://registry.yarnpkg.com/undici/-/undici-5.28.4.tgz#6b280408edb6a1a604a9b20340f45b422e373068" - integrity sha512-72RFADWFqKmUb2hmmvNODKL3p9hcB6Gt2DOQMis1SEBaV6a4MH8soBvzg+95CYhCKPFedut2JY9bMfrDl9D23g== - dependencies: - "@fastify/busboy" "^2.0.0" - -unocss@^0.51.8: - version "0.51.13" - resolved "https://registry.yarnpkg.com/unocss/-/unocss-0.51.13.tgz#f41c0d186559f2375f319334f4811ed21b427b23" - integrity sha512-EAhuQ97D7E+EsTdlCL+xoWEsvz46Se9ZAtHhJ+1W+DzMky9qrDLRyR8Caf2TPbz8dw/z0qYhoPr6/aJARG4r0g== - dependencies: - "@unocss/astro" "0.51.13" - "@unocss/cli" "0.51.13" - "@unocss/core" "0.51.13" - "@unocss/extractor-arbitrary-variants" "0.51.13" - "@unocss/postcss" "0.51.13" - "@unocss/preset-attributify" "0.51.13" - "@unocss/preset-icons" "0.51.13" - "@unocss/preset-mini" "0.51.13" - "@unocss/preset-tagify" "0.51.13" - "@unocss/preset-typography" "0.51.13" - "@unocss/preset-uno" "0.51.13" - "@unocss/preset-web-fonts" "0.51.13" - "@unocss/preset-wind" "0.51.13" - "@unocss/reset" "0.51.13" - "@unocss/transformer-attributify-jsx" "0.51.13" - "@unocss/transformer-attributify-jsx-babel" "0.51.13" - "@unocss/transformer-compile-class" "0.51.13" - "@unocss/transformer-directives" "0.51.13" - "@unocss/transformer-variant-group" "0.51.13" - "@unocss/vite" "0.51.13" - -update-browserslist-db@^1.0.13: - version "1.0.15" - resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.15.tgz#60ed9f8cba4a728b7ecf7356f641a31e3a691d97" - integrity sha512-K9HWH62x3/EalU1U6sjSZiylm9C8tgq2mSvshZpqc7QE69RaA2qjhkW2HlNA0tFpEbtyFz7HTqbSdN4MSwUodA== - dependencies: - escalade "^3.1.2" - picocolors "^1.0.0" - -uri-js@^4.2.2: - version "4.4.1" - resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" - integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== - dependencies: - punycode "^2.1.0" - -v8-to-istanbul@^9.0.0: - version "9.2.0" - resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-9.2.0.tgz#2ed7644a245cddd83d4e087b9b33b3e62dfd10ad" - integrity sha512-/EH/sDgxU2eGxajKdwLCDmQ4FWq+kpi3uCmBGpw1xJtnAxEjlD8j8PEiGWpCIMIs3ciNAgH0d3TTJiUkYzyZjA== - dependencies: - "@jridgewell/trace-mapping" "^0.3.12" - "@types/istanbul-lib-coverage" "^2.0.1" - convert-source-map "^2.0.0" - -validate-html-nesting@^1.2.1: - version "1.2.2" - resolved "https://registry.yarnpkg.com/validate-html-nesting/-/validate-html-nesting-1.2.2.tgz#2d74de14b598a0de671fad01bd71deabb93b8aca" - integrity sha512-hGdgQozCsQJMyfK5urgFcWEqsSSrK63Awe0t/IMR0bZ0QMtnuaiHzThW81guu3qx9abLi99NEuiaN6P9gVYsNg== - -validate-npm-package-license@^3.0.1: - version "3.0.4" - resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" - integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== - dependencies: - spdx-correct "^3.0.0" - spdx-expression-parse "^3.0.0" - -vite-node@0.31.4: - version "0.31.4" - resolved "https://registry.yarnpkg.com/vite-node/-/vite-node-0.31.4.tgz#0437f76c35fa83f0a868d3fb5896ca9e164291f5" - integrity sha512-uzL377GjJtTbuc5KQxVbDu2xfU/x0wVjUtXQR2ihS21q/NK6ROr4oG0rsSkBBddZUVCwzfx22in76/0ZZHXgkQ== - dependencies: - cac "^6.7.14" - debug "^4.3.4" - mlly "^1.2.0" - pathe "^1.1.0" - picocolors "^1.0.0" - vite "^3.0.0 || ^4.0.0" - -vite-plugin-solid@^2.7.2: - version "2.10.2" - resolved "https://registry.yarnpkg.com/vite-plugin-solid/-/vite-plugin-solid-2.10.2.tgz#180f5ec9d8ac03d19160dd5728b313fe9b62ee0d" - integrity sha512-AOEtwMe2baBSXMXdo+BUwECC8IFHcKS6WQV/1NEd+Q7vHPap5fmIhLcAzr+DUJ04/KHx/1UBU0l1/GWP+rMAPQ== - dependencies: - "@babel/core" "^7.23.3" - "@types/babel__core" "^7.20.4" - babel-preset-solid "^1.8.4" - merge-anything "^5.1.7" - solid-refresh "^0.6.3" - vitefu "^0.2.5" - -"vite@^3.0.0 || ^4.0.0", vite@^4.5.3: - version "4.5.3" - resolved "https://registry.yarnpkg.com/vite/-/vite-4.5.3.tgz#d88a4529ea58bae97294c7e2e6f0eab39a50fb1a" - integrity sha512-kQL23kMeX92v3ph7IauVkXkikdDRsYMGTVl5KY2E9OY4ONLvkHf04MDTbnfo6NKxZiDLWzVpP5oTa8hQD8U3dg== - dependencies: - esbuild "^0.18.10" - postcss "^8.4.27" - rollup "^3.27.1" - optionalDependencies: - fsevents "~2.3.2" - -vitefu@^0.2.5: - version "0.2.5" - resolved "https://registry.yarnpkg.com/vitefu/-/vitefu-0.2.5.tgz#c1b93c377fbdd3e5ddd69840ea3aa70b40d90969" - integrity sha512-SgHtMLoqaeeGnd2evZ849ZbACbnwQCIwRH57t18FxcXoZop0uQu0uzlIhJBlF/eWVzuce0sHeqPcDo+evVcg8Q== - -vitest@^0.31.4: - version "0.31.4" - resolved "https://registry.yarnpkg.com/vitest/-/vitest-0.31.4.tgz#5abe02562675262949c10e40811f348a80f6b2a6" - integrity sha512-GoV0VQPmWrUFOZSg3RpQAPN+LPmHg2/gxlMNJlyxJihkz6qReHDV6b0pPDcqFLNEPya4tWJ1pgwUNP9MLmUfvQ== - dependencies: - "@types/chai" "^4.3.5" - "@types/chai-subset" "^1.3.3" - "@types/node" "*" - "@vitest/expect" "0.31.4" - "@vitest/runner" "0.31.4" - "@vitest/snapshot" "0.31.4" - "@vitest/spy" "0.31.4" - "@vitest/utils" "0.31.4" - acorn "^8.8.2" - acorn-walk "^8.2.0" - cac "^6.7.14" - chai "^4.3.7" - concordance "^5.0.4" - debug "^4.3.4" - local-pkg "^0.4.3" - magic-string "^0.30.0" - pathe "^1.1.0" - picocolors "^1.0.0" - std-env "^3.3.2" - strip-literal "^1.0.1" - tinybench "^2.5.0" - tinypool "^0.5.0" - vite "^3.0.0 || ^4.0.0" - vite-node "0.31.4" - why-is-node-running "^2.2.2" - -well-known-symbols@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/well-known-symbols/-/well-known-symbols-2.0.0.tgz#e9c7c07dbd132b7b84212c8174391ec1f9871ba5" - integrity sha512-ZMjC3ho+KXo0BfJb7JgtQ5IBuvnShdlACNkKkdsqBmYw3bPAaJfPeYUo6tLUaT5tG/Gkh7xkpBhKRQ9e7pyg9Q== - -which-boxed-primitive@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz#13757bc89b209b049fe5d86430e21cf40a89a8e6" - integrity sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg== - dependencies: - is-bigint "^1.0.1" - is-boolean-object "^1.1.0" - is-number-object "^1.0.4" - is-string "^1.0.5" - is-symbol "^1.0.3" - -which-typed-array@^1.1.14, which-typed-array@^1.1.15: - version "1.1.15" - resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.15.tgz#264859e9b11a649b388bfaaf4f767df1f779b38d" - integrity sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA== - dependencies: - available-typed-arrays "^1.0.7" - call-bind "^1.0.7" - for-each "^0.3.3" - gopd "^1.0.1" - has-tostringtag "^1.0.2" - -which@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" - integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== - dependencies: - isexe "^2.0.0" - -why-is-node-running@^2.2.2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/why-is-node-running/-/why-is-node-running-2.2.2.tgz#4185b2b4699117819e7154594271e7e344c9973e" - integrity sha512-6tSwToZxTOcotxHeA+qGCq1mVzKR3CwcJGmVcY+QE8SHy6TnpFnh8PAvPNHYr7EcuVeG0QSMxtYCuO1ta/G/oA== - dependencies: - siginfo "^2.0.0" - stackback "0.0.2" - -word-wrap@^1.2.5: - version "1.2.5" - resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.5.tgz#d2c45c6dd4fbce621a66f136cbe328afd0410b34" - integrity sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA== - -wrap-ansi@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" - integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== - dependencies: - ansi-styles "^4.0.0" - string-width "^4.1.0" - strip-ansi "^6.0.0" - -wrappy@1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" - integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== - -y18n@^5.0.5: - version "5.0.8" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" - integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== - -yallist@^3.0.2: - version "3.1.1" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" - integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== - -yargs-parser@^20.2.2, yargs-parser@^20.2.9: - version "20.2.9" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" - integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== - -yargs-parser@^21.1.1: - version "21.1.1" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35" - integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw== - -yargs@^16.2.0: - version "16.2.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" - integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== - dependencies: - cliui "^7.0.2" - escalade "^3.1.1" - get-caller-file "^2.0.5" - require-directory "^2.1.1" - string-width "^4.2.0" - y18n "^5.0.5" - yargs-parser "^20.2.2" - -yocto-queue@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" - integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== - -yocto-queue@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-1.0.0.tgz#7f816433fb2cbc511ec8bf7d263c3b58a1a3c251" - integrity sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==