proxctl 0.2.7__tar.gz → 0.2.8__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {proxctl-0.2.7 → proxctl-0.2.8}/.github/workflows/release.yml +89 -12
- {proxctl-0.2.7 → proxctl-0.2.8}/CHANGELOG.md +12 -0
- {proxctl-0.2.7 → proxctl-0.2.8}/Cargo.lock +315 -1
- {proxctl-0.2.7 → proxctl-0.2.8}/Cargo.toml +2 -1
- {proxctl-0.2.7 → proxctl-0.2.8}/PKG-INFO +1 -1
- {proxctl-0.2.7 → proxctl-0.2.8}/src/api/error.rs +27 -0
- {proxctl-0.2.7 → proxctl-0.2.8}/src/commands/access.rs +12 -6
- {proxctl-0.2.7 → proxctl-0.2.8}/src/commands/apply/mod.rs +4 -4
- {proxctl-0.2.7 → proxctl-0.2.8}/src/commands/backup.rs +8 -2
- {proxctl-0.2.7 → proxctl-0.2.8}/src/commands/ceph.rs +4 -4
- {proxctl-0.2.7 → proxctl-0.2.8}/src/commands/cluster.rs +7 -7
- {proxctl-0.2.7 → proxctl-0.2.8}/src/commands/container/config.rs +4 -4
- {proxctl-0.2.7 → proxctl-0.2.8}/src/commands/container/firewall.rs +1 -1
- {proxctl-0.2.7 → proxctl-0.2.8}/src/commands/container/lifecycle.rs +3 -3
- {proxctl-0.2.7 → proxctl-0.2.8}/src/commands/container/snapshot.rs +4 -4
- {proxctl-0.2.7 → proxctl-0.2.8}/src/commands/firewall.rs +13 -7
- {proxctl-0.2.7 → proxctl-0.2.8}/src/commands/node.rs +16 -10
- {proxctl-0.2.7 → proxctl-0.2.8}/src/commands/pool.rs +8 -2
- {proxctl-0.2.7 → proxctl-0.2.8}/src/commands/storage.rs +9 -3
- {proxctl-0.2.7 → proxctl-0.2.8}/src/commands/task.rs +3 -3
- {proxctl-0.2.7 → proxctl-0.2.8}/src/commands/vm/agent.rs +4 -4
- {proxctl-0.2.7 → proxctl-0.2.8}/src/commands/vm/cloudinit.rs +1 -1
- {proxctl-0.2.7 → proxctl-0.2.8}/src/commands/vm/config.rs +4 -4
- {proxctl-0.2.7 → proxctl-0.2.8}/src/commands/vm/firewall.rs +1 -1
- {proxctl-0.2.7 → proxctl-0.2.8}/src/commands/vm/lifecycle.rs +3 -3
- {proxctl-0.2.7 → proxctl-0.2.8}/src/commands/vm/snapshot.rs +4 -4
- {proxctl-0.2.7 → proxctl-0.2.8}/src/main.rs +170 -34
- proxctl-0.2.8/src/output.rs +97 -0
- {proxctl-0.2.7 → proxctl-0.2.8}/src/schema.rs +167 -106
- proxctl-0.2.8/tests/fixtures/clispec-v0.2.json +135 -0
- proxctl-0.2.8/tests/schema_compliance.rs +99 -0
- proxctl-0.2.7/src/output.rs +0 -49
- {proxctl-0.2.7 → proxctl-0.2.8}/.github/workflows/ci.yml +0 -0
- {proxctl-0.2.7 → proxctl-0.2.8}/.gitignore +0 -0
- {proxctl-0.2.7 → proxctl-0.2.8}/LICENSE +0 -0
- {proxctl-0.2.7 → proxctl-0.2.8}/Makefile +0 -0
- {proxctl-0.2.7 → proxctl-0.2.8}/README.md +0 -0
- {proxctl-0.2.7 → proxctl-0.2.8}/prek.toml +0 -0
- {proxctl-0.2.7 → proxctl-0.2.8}/proxctl_py/__init__.py +0 -0
- {proxctl-0.2.7 → proxctl-0.2.8}/proxctl_py/__main__.py +0 -0
- {proxctl-0.2.7 → proxctl-0.2.8}/pyproject.toml +0 -0
- {proxctl-0.2.7 → proxctl-0.2.8}/src/api/client.rs +0 -0
- {proxctl-0.2.7 → proxctl-0.2.8}/src/api/mod.rs +0 -0
- {proxctl-0.2.7 → proxctl-0.2.8}/src/api/token.rs +0 -0
- {proxctl-0.2.7 → proxctl-0.2.8}/src/api/types.rs +0 -0
- {proxctl-0.2.7 → proxctl-0.2.8}/src/commands/api.rs +0 -0
- {proxctl-0.2.7 → proxctl-0.2.8}/src/commands/apply/container.rs +0 -0
- {proxctl-0.2.7 → proxctl-0.2.8}/src/commands/apply/diff.rs +0 -0
- {proxctl-0.2.7 → proxctl-0.2.8}/src/commands/apply/firewall.rs +0 -0
- {proxctl-0.2.7 → proxctl-0.2.8}/src/commands/apply/manifest.rs +0 -0
- {proxctl-0.2.7 → proxctl-0.2.8}/src/commands/apply/reconciler.rs +0 -0
- {proxctl-0.2.7 → proxctl-0.2.8}/src/commands/apply/vm.rs +0 -0
- {proxctl-0.2.7 → proxctl-0.2.8}/src/commands/container/migrate.rs +0 -0
- {proxctl-0.2.7 → proxctl-0.2.8}/src/commands/container/mod.rs +0 -0
- {proxctl-0.2.7 → proxctl-0.2.8}/src/commands/export.rs +0 -0
- {proxctl-0.2.7 → proxctl-0.2.8}/src/commands/list_args.rs +0 -0
- {proxctl-0.2.7 → proxctl-0.2.8}/src/commands/mod.rs +0 -0
- {proxctl-0.2.7 → proxctl-0.2.8}/src/commands/vm/migrate.rs +0 -0
- {proxctl-0.2.7 → proxctl-0.2.8}/src/commands/vm/mod.rs +0 -0
- {proxctl-0.2.7 → proxctl-0.2.8}/src/lib.rs +0 -0
|
@@ -46,48 +46,114 @@ jobs:
|
|
|
46
46
|
build:
|
|
47
47
|
name: Build ${{ matrix.target }}
|
|
48
48
|
needs: test
|
|
49
|
+
timeout-minutes: 30
|
|
50
|
+
# Guard: self-hosted runners only execute on trusted events (tag push,
|
|
51
|
+
# workflow_dispatch). Fork PRs must never dispatch jobs to self-hosted.
|
|
52
|
+
if: github.event_name != 'pull_request'
|
|
49
53
|
strategy:
|
|
50
54
|
matrix:
|
|
51
55
|
include:
|
|
52
56
|
- os: ubuntu-latest
|
|
53
57
|
target: x86_64-unknown-linux-gnu
|
|
54
|
-
- os:
|
|
58
|
+
- os: [self-hosted, Linux, ARM64]
|
|
55
59
|
target: aarch64-unknown-linux-gnu
|
|
56
60
|
- os: windows-latest
|
|
57
61
|
target: x86_64-pc-windows-msvc
|
|
58
|
-
- os:
|
|
62
|
+
- os: [self-hosted, macOS, ARM64]
|
|
59
63
|
target: x86_64-apple-darwin
|
|
60
|
-
- os:
|
|
64
|
+
- os: [self-hosted, macOS, ARM64]
|
|
61
65
|
target: aarch64-apple-darwin
|
|
62
66
|
runs-on: ${{ matrix.os }}
|
|
63
67
|
steps:
|
|
64
68
|
- uses: actions/checkout@v4
|
|
69
|
+
with:
|
|
70
|
+
# Preserve target/ between runs on self-hosted runners for cargo
|
|
71
|
+
# incremental rebuild. GitHub-hosted runners start clean each job
|
|
72
|
+
# regardless of this setting, so this only affects self-hosted.
|
|
73
|
+
clean: false
|
|
65
74
|
|
|
66
75
|
- uses: dtolnay/rust-toolchain@stable
|
|
67
76
|
with:
|
|
68
77
|
targets: ${{ matrix.target }}
|
|
69
78
|
|
|
70
|
-
- name:
|
|
79
|
+
- name: Prepare cargo cache dirs (arm64 linux)
|
|
71
80
|
if: matrix.target == 'aarch64-unknown-linux-gnu'
|
|
81
|
+
run: mkdir -p "${RUNNER_TOOL_CACHE}/cargo-cache/registry" "${RUNNER_TOOL_CACHE}/cargo-cache/git"
|
|
82
|
+
|
|
83
|
+
- name: Clean stale dist
|
|
84
|
+
# Keep dist/ fresh each run so previous builds cannot leak artifacts
|
|
85
|
+
# into the upload. Self-hosted runners do not clean automatically.
|
|
86
|
+
# On the arm64 linux runner, maturin-action runs as root inside the
|
|
87
|
+
# manylinux container and leaves root-owned files in dist/; clean
|
|
88
|
+
# via docker so the unprivileged runner user can proceed.
|
|
89
|
+
shell: bash
|
|
90
|
+
run: |
|
|
91
|
+
if [[ "${{ matrix.target }}" == "aarch64-unknown-linux-gnu" ]]; then
|
|
92
|
+
docker run --rm -v "${GITHUB_WORKSPACE}:/io" alpine rm -rf /io/dist /io/target/wheels
|
|
93
|
+
else
|
|
94
|
+
rm -rf dist target/wheels
|
|
95
|
+
fi
|
|
96
|
+
|
|
97
|
+
- name: Install cross-compilation tools
|
|
98
|
+
# Only needed on GitHub-hosted linux where the arm64 toolchain must
|
|
99
|
+
# be cross-installed. The self-hosted arm64 runner is native.
|
|
100
|
+
if: matrix.target == 'aarch64-unknown-linux-gnu' && runner.arch != 'ARM64'
|
|
72
101
|
run: sudo apt-get update && sudo apt-get install -y gcc-aarch64-linux-gnu
|
|
73
102
|
|
|
74
|
-
- name: Install
|
|
75
|
-
|
|
103
|
+
- name: Install uv
|
|
104
|
+
if: matrix.target != 'aarch64-unknown-linux-gnu'
|
|
105
|
+
uses: astral-sh/setup-uv@v6
|
|
106
|
+
|
|
107
|
+
- name: Install maturin and zig
|
|
108
|
+
# maturin-action provides its own maturin inside the manylinux
|
|
109
|
+
# container for the arm64 linux build, so skip the host install
|
|
110
|
+
# on the self-hosted runner.
|
|
111
|
+
if: matrix.target != 'aarch64-unknown-linux-gnu'
|
|
112
|
+
shell: bash
|
|
113
|
+
run: |
|
|
114
|
+
uv venv "${RUNNER_TEMP}/build-venv"
|
|
115
|
+
VENV_BIN="${RUNNER_TEMP}/build-venv/bin"
|
|
116
|
+
[ -d "$VENV_BIN" ] || VENV_BIN="${RUNNER_TEMP}/build-venv/Scripts"
|
|
117
|
+
uv pip install --python "${RUNNER_TEMP}/build-venv" maturin ziglang
|
|
118
|
+
echo "$VENV_BIN" >> "$GITHUB_PATH"
|
|
119
|
+
|
|
120
|
+
- name: Build wheel (arm64 linux via maturin-action)
|
|
121
|
+
if: matrix.target == 'aarch64-unknown-linux-gnu'
|
|
122
|
+
uses: PyO3/maturin-action@v1
|
|
123
|
+
with:
|
|
124
|
+
target: aarch64-unknown-linux-gnu
|
|
125
|
+
args: --release --out dist
|
|
126
|
+
manylinux: manylinux_2_28
|
|
127
|
+
# Mount persistent cargo cache into the manylinux container so
|
|
128
|
+
# dependency downloads survive between jobs on the self-hosted
|
|
129
|
+
# runner.
|
|
130
|
+
docker-options: -v ${{ runner.tool_cache }}/cargo-cache/registry:/root/.cargo/registry -v ${{ runner.tool_cache }}/cargo-cache/git:/root/.cargo/git
|
|
76
131
|
|
|
77
132
|
- name: Build wheel
|
|
133
|
+
if: matrix.target != 'aarch64-unknown-linux-gnu'
|
|
78
134
|
shell: bash
|
|
79
135
|
run: |
|
|
80
136
|
case "${{ matrix.target }}" in
|
|
81
137
|
*-gnu)
|
|
82
|
-
|
|
83
|
-
maturin build --release --target ${{ matrix.target }} --compatibility manylinux_2_28 --zig
|
|
138
|
+
maturin build --release --target ${{ matrix.target }} --compatibility manylinux_2_28 --zig --out dist
|
|
84
139
|
;;
|
|
85
140
|
*)
|
|
86
|
-
maturin build --release --target ${{ matrix.target }}
|
|
141
|
+
maturin build --release --target ${{ matrix.target }} --out dist
|
|
87
142
|
;;
|
|
88
143
|
esac
|
|
89
144
|
|
|
145
|
+
- name: Build binary (arm64 linux via cargo-zigbuild)
|
|
146
|
+
# On the Pi runner build natively with cargo-zigbuild targeting
|
|
147
|
+
# glibc 2.28 for wide distro compatibility. Use a separate target
|
|
148
|
+
# directory so host cargo does not conflict with root-owned files
|
|
149
|
+
# left behind by the maturin-action container build in target/.
|
|
150
|
+
if: matrix.target == 'aarch64-unknown-linux-gnu'
|
|
151
|
+
env:
|
|
152
|
+
CARGO_TARGET_DIR: target-host
|
|
153
|
+
run: cargo zigbuild --release --target aarch64-unknown-linux-gnu.2.28
|
|
154
|
+
|
|
90
155
|
- name: Build binary
|
|
156
|
+
if: matrix.target != 'aarch64-unknown-linux-gnu'
|
|
91
157
|
env:
|
|
92
158
|
CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER: aarch64-linux-gnu-gcc
|
|
93
159
|
run: cargo build --release --target ${{ matrix.target }}
|
|
@@ -117,7 +183,12 @@ jobs:
|
|
|
117
183
|
cd ..
|
|
118
184
|
powershell -command "Get-FileHash -Path '${ARCHIVE_NAME}.zip' -Algorithm SHA256 | Select-Object -ExpandProperty Hash" > "${ARCHIVE_NAME}.zip.sha256"
|
|
119
185
|
else
|
|
120
|
-
|
|
186
|
+
if [[ "${{ matrix.target }}" == "aarch64-unknown-linux-gnu" ]]; then
|
|
187
|
+
BIN_PATH="target-host/aarch64-unknown-linux-gnu/release/proxctl"
|
|
188
|
+
else
|
|
189
|
+
BIN_PATH="target/${{ matrix.target }}/release/proxctl"
|
|
190
|
+
fi
|
|
191
|
+
cp "$BIN_PATH" release-package/proxctl
|
|
121
192
|
tar -czf "${ARCHIVE_NAME}.tar.gz" -C release-package proxctl
|
|
122
193
|
|
|
123
194
|
if [[ "${{ runner.os }}" == "macOS" ]]; then
|
|
@@ -132,7 +203,7 @@ jobs:
|
|
|
132
203
|
- name: Upload wheel
|
|
133
204
|
uses: actions/upload-artifact@v4
|
|
134
205
|
with:
|
|
135
|
-
path:
|
|
206
|
+
path: dist/*.whl
|
|
136
207
|
name: wheel-${{ matrix.target }}
|
|
137
208
|
|
|
138
209
|
- name: Upload release archives
|
|
@@ -150,8 +221,14 @@ jobs:
|
|
|
150
221
|
steps:
|
|
151
222
|
- uses: actions/checkout@v4
|
|
152
223
|
|
|
224
|
+
- uses: astral-sh/setup-uv@v6
|
|
225
|
+
|
|
153
226
|
- name: Install maturin
|
|
154
|
-
|
|
227
|
+
shell: bash
|
|
228
|
+
run: |
|
|
229
|
+
uv venv "${RUNNER_TEMP}/build-venv"
|
|
230
|
+
uv pip install --python "${RUNNER_TEMP}/build-venv/bin/python" maturin
|
|
231
|
+
echo "${RUNNER_TEMP}/build-venv/bin" >> "$GITHUB_PATH"
|
|
155
232
|
|
|
156
233
|
- name: Build sdist
|
|
157
234
|
run: maturin sdist
|
|
@@ -9,6 +9,18 @@ All notable changes to this project will be documented in this file.
|
|
|
9
9
|
|
|
10
10
|
|
|
11
11
|
|
|
12
|
+
|
|
13
|
+
## [0.2.8](https://github.com/rvben/proxctl/compare/v0.2.7...v0.2.8) - 2026-06-11
|
|
14
|
+
|
|
15
|
+
### Added
|
|
16
|
+
|
|
17
|
+
- comply with clispec v0.2 schema shape and runtime requirements ([0c8d392](https://github.com/rvben/proxctl/commit/0c8d392b55e87afbf906dc03299be7b67e93fcdb))
|
|
18
|
+
|
|
19
|
+
### Fixed
|
|
20
|
+
|
|
21
|
+
- restore --json compat flag as hidden alias for --output json ([ba0ec45](https://github.com/rvben/proxctl/commit/ba0ec457ca11d453b52e137c340eb22b997dd26c))
|
|
22
|
+
- complete clispec v0.2 conformance to 100% ([a204e63](https://github.com/rvben/proxctl/commit/a204e63572463497ecbb49bc67b217ec16d2b2f7))
|
|
23
|
+
|
|
12
24
|
## [0.2.7](https://github.com/rvben/proxctl/compare/v0.2.6...v0.2.7) - 2026-04-03
|
|
13
25
|
|
|
14
26
|
## [0.2.6](https://github.com/rvben/proxctl/compare/v0.2.5...v0.2.6) - 2026-04-03
|
|
@@ -2,6 +2,20 @@
|
|
|
2
2
|
# It is not intended for manual editing.
|
|
3
3
|
version = 4
|
|
4
4
|
|
|
5
|
+
[[package]]
|
|
6
|
+
name = "ahash"
|
|
7
|
+
version = "0.8.12"
|
|
8
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
9
|
+
checksum = "5a15f179cd60c4584b8a8c596927aadc462e27f2ca70c04e0071964a73ba7a75"
|
|
10
|
+
dependencies = [
|
|
11
|
+
"cfg-if",
|
|
12
|
+
"getrandom 0.3.4",
|
|
13
|
+
"once_cell",
|
|
14
|
+
"serde",
|
|
15
|
+
"version_check",
|
|
16
|
+
"zerocopy",
|
|
17
|
+
]
|
|
18
|
+
|
|
5
19
|
[[package]]
|
|
6
20
|
name = "aho-corasick"
|
|
7
21
|
version = "1.1.4"
|
|
@@ -83,24 +97,57 @@ version = "1.1.2"
|
|
|
83
97
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
84
98
|
checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0"
|
|
85
99
|
|
|
100
|
+
[[package]]
|
|
101
|
+
name = "autocfg"
|
|
102
|
+
version = "1.5.1"
|
|
103
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
104
|
+
checksum = "f2032f911046de80f0a198e0901378627c33f59ea0ac00e363d481118bd70a53"
|
|
105
|
+
|
|
86
106
|
[[package]]
|
|
87
107
|
name = "base64"
|
|
88
108
|
version = "0.22.1"
|
|
89
109
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
90
110
|
checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6"
|
|
91
111
|
|
|
112
|
+
[[package]]
|
|
113
|
+
name = "bit-set"
|
|
114
|
+
version = "0.8.0"
|
|
115
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
116
|
+
checksum = "08807e080ed7f9d5433fa9b275196cfc35414f66a0c79d864dc51a0d825231a3"
|
|
117
|
+
dependencies = [
|
|
118
|
+
"bit-vec",
|
|
119
|
+
]
|
|
120
|
+
|
|
121
|
+
[[package]]
|
|
122
|
+
name = "bit-vec"
|
|
123
|
+
version = "0.8.0"
|
|
124
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
125
|
+
checksum = "5e764a1d40d510daf35e07be9eb06e75770908c27d411ee6c92109c9840eaaf7"
|
|
126
|
+
|
|
92
127
|
[[package]]
|
|
93
128
|
name = "bitflags"
|
|
94
129
|
version = "2.11.0"
|
|
95
130
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
96
131
|
checksum = "843867be96c8daad0d758b57df9392b6d8d271134fce549de6ce169ff98a92af"
|
|
97
132
|
|
|
133
|
+
[[package]]
|
|
134
|
+
name = "borrow-or-share"
|
|
135
|
+
version = "0.2.4"
|
|
136
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
137
|
+
checksum = "dc0b364ead1874514c8c2855ab558056ebfeb775653e7ae45ff72f28f8f3166c"
|
|
138
|
+
|
|
98
139
|
[[package]]
|
|
99
140
|
name = "bumpalo"
|
|
100
141
|
version = "3.20.2"
|
|
101
142
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
102
143
|
checksum = "5d20789868f4b01b2f2caec9f5c4e0213b41e3e5702a50157d699ae31ced2fcb"
|
|
103
144
|
|
|
145
|
+
[[package]]
|
|
146
|
+
name = "bytecount"
|
|
147
|
+
version = "0.6.9"
|
|
148
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
149
|
+
checksum = "175812e0be2bccb6abe50bb8d566126198344f707e304f45c648fd8f2cc0365e"
|
|
150
|
+
|
|
104
151
|
[[package]]
|
|
105
152
|
name = "bytes"
|
|
106
153
|
version = "1.11.1"
|
|
@@ -260,6 +307,15 @@ dependencies = [
|
|
|
260
307
|
"syn",
|
|
261
308
|
]
|
|
262
309
|
|
|
310
|
+
[[package]]
|
|
311
|
+
name = "email_address"
|
|
312
|
+
version = "0.2.9"
|
|
313
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
314
|
+
checksum = "e079f19b08ca6239f47f8ba8509c11cf3ea30095831f7fed61441475edd8c449"
|
|
315
|
+
dependencies = [
|
|
316
|
+
"serde",
|
|
317
|
+
]
|
|
318
|
+
|
|
263
319
|
[[package]]
|
|
264
320
|
name = "encode_unicode"
|
|
265
321
|
version = "1.0.0"
|
|
@@ -282,6 +338,17 @@ dependencies = [
|
|
|
282
338
|
"windows-sys 0.61.2",
|
|
283
339
|
]
|
|
284
340
|
|
|
341
|
+
[[package]]
|
|
342
|
+
name = "fancy-regex"
|
|
343
|
+
version = "0.14.0"
|
|
344
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
345
|
+
checksum = "6e24cb5a94bcae1e5408b0effca5cd7172ea3c5755049c5f3af4cd283a165298"
|
|
346
|
+
dependencies = [
|
|
347
|
+
"bit-set",
|
|
348
|
+
"regex-automata",
|
|
349
|
+
"regex-syntax",
|
|
350
|
+
]
|
|
351
|
+
|
|
285
352
|
[[package]]
|
|
286
353
|
name = "fastrand"
|
|
287
354
|
version = "2.3.0"
|
|
@@ -294,6 +361,17 @@ version = "0.1.9"
|
|
|
294
361
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
295
362
|
checksum = "5baebc0774151f905a1a2cc41989300b1e6fbb29aff0ceffa1064fdd3088d582"
|
|
296
363
|
|
|
364
|
+
[[package]]
|
|
365
|
+
name = "fluent-uri"
|
|
366
|
+
version = "0.3.2"
|
|
367
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
368
|
+
checksum = "1918b65d96df47d3591bed19c5cca17e3fa5d0707318e4b5ef2eae01764df7e5"
|
|
369
|
+
dependencies = [
|
|
370
|
+
"borrow-or-share",
|
|
371
|
+
"ref-cast",
|
|
372
|
+
"serde",
|
|
373
|
+
]
|
|
374
|
+
|
|
297
375
|
[[package]]
|
|
298
376
|
name = "fnv"
|
|
299
377
|
version = "1.0.7"
|
|
@@ -315,6 +393,16 @@ dependencies = [
|
|
|
315
393
|
"percent-encoding",
|
|
316
394
|
]
|
|
317
395
|
|
|
396
|
+
[[package]]
|
|
397
|
+
name = "fraction"
|
|
398
|
+
version = "0.15.4"
|
|
399
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
400
|
+
checksum = "e076045bb43dac435333ed5f04caf35c7463631d0dae2deb2638d94dd0a5b872"
|
|
401
|
+
dependencies = [
|
|
402
|
+
"lazy_static",
|
|
403
|
+
"num",
|
|
404
|
+
]
|
|
405
|
+
|
|
318
406
|
[[package]]
|
|
319
407
|
name = "futures"
|
|
320
408
|
version = "0.3.32"
|
|
@@ -768,6 +856,31 @@ dependencies = [
|
|
|
768
856
|
"wasm-bindgen",
|
|
769
857
|
]
|
|
770
858
|
|
|
859
|
+
[[package]]
|
|
860
|
+
name = "jsonschema"
|
|
861
|
+
version = "0.29.1"
|
|
862
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
863
|
+
checksum = "161c33c3ec738cfea3288c5c53dfcdb32fd4fc2954de86ea06f71b5a1a40bfcd"
|
|
864
|
+
dependencies = [
|
|
865
|
+
"ahash",
|
|
866
|
+
"base64",
|
|
867
|
+
"bytecount",
|
|
868
|
+
"email_address",
|
|
869
|
+
"fancy-regex",
|
|
870
|
+
"fraction",
|
|
871
|
+
"idna",
|
|
872
|
+
"itoa",
|
|
873
|
+
"num-cmp",
|
|
874
|
+
"once_cell",
|
|
875
|
+
"percent-encoding",
|
|
876
|
+
"referencing",
|
|
877
|
+
"regex-syntax",
|
|
878
|
+
"reqwest",
|
|
879
|
+
"serde",
|
|
880
|
+
"serde_json",
|
|
881
|
+
"uuid-simd",
|
|
882
|
+
]
|
|
883
|
+
|
|
771
884
|
[[package]]
|
|
772
885
|
name = "lazy_static"
|
|
773
886
|
version = "1.5.0"
|
|
@@ -807,6 +920,15 @@ version = "0.8.1"
|
|
|
807
920
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
808
921
|
checksum = "6373607a59f0be73a39b6fe456b8192fcc3585f602af20751600e974dd455e77"
|
|
809
922
|
|
|
923
|
+
[[package]]
|
|
924
|
+
name = "lock_api"
|
|
925
|
+
version = "0.4.14"
|
|
926
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
927
|
+
checksum = "224399e74b87b5f3557511d98dff8b14089b3dadafcab6bb93eab67d3aace965"
|
|
928
|
+
dependencies = [
|
|
929
|
+
"scopeguard",
|
|
930
|
+
]
|
|
931
|
+
|
|
810
932
|
[[package]]
|
|
811
933
|
name = "log"
|
|
812
934
|
version = "0.4.29"
|
|
@@ -852,6 +974,85 @@ dependencies = [
|
|
|
852
974
|
"windows-sys 0.61.2",
|
|
853
975
|
]
|
|
854
976
|
|
|
977
|
+
[[package]]
|
|
978
|
+
name = "num"
|
|
979
|
+
version = "0.4.3"
|
|
980
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
981
|
+
checksum = "35bd024e8b2ff75562e5f34e7f4905839deb4b22955ef5e73d2fea1b9813cb23"
|
|
982
|
+
dependencies = [
|
|
983
|
+
"num-bigint",
|
|
984
|
+
"num-complex",
|
|
985
|
+
"num-integer",
|
|
986
|
+
"num-iter",
|
|
987
|
+
"num-rational",
|
|
988
|
+
"num-traits",
|
|
989
|
+
]
|
|
990
|
+
|
|
991
|
+
[[package]]
|
|
992
|
+
name = "num-bigint"
|
|
993
|
+
version = "0.4.6"
|
|
994
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
995
|
+
checksum = "a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9"
|
|
996
|
+
dependencies = [
|
|
997
|
+
"num-integer",
|
|
998
|
+
"num-traits",
|
|
999
|
+
]
|
|
1000
|
+
|
|
1001
|
+
[[package]]
|
|
1002
|
+
name = "num-cmp"
|
|
1003
|
+
version = "0.1.0"
|
|
1004
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1005
|
+
checksum = "63335b2e2c34fae2fb0aa2cecfd9f0832a1e24b3b32ecec612c3426d46dc8aaa"
|
|
1006
|
+
|
|
1007
|
+
[[package]]
|
|
1008
|
+
name = "num-complex"
|
|
1009
|
+
version = "0.4.6"
|
|
1010
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1011
|
+
checksum = "73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495"
|
|
1012
|
+
dependencies = [
|
|
1013
|
+
"num-traits",
|
|
1014
|
+
]
|
|
1015
|
+
|
|
1016
|
+
[[package]]
|
|
1017
|
+
name = "num-integer"
|
|
1018
|
+
version = "0.1.46"
|
|
1019
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1020
|
+
checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f"
|
|
1021
|
+
dependencies = [
|
|
1022
|
+
"num-traits",
|
|
1023
|
+
]
|
|
1024
|
+
|
|
1025
|
+
[[package]]
|
|
1026
|
+
name = "num-iter"
|
|
1027
|
+
version = "0.1.45"
|
|
1028
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1029
|
+
checksum = "1429034a0490724d0075ebb2bc9e875d6503c3cf69e235a8941aa757d83ef5bf"
|
|
1030
|
+
dependencies = [
|
|
1031
|
+
"autocfg",
|
|
1032
|
+
"num-integer",
|
|
1033
|
+
"num-traits",
|
|
1034
|
+
]
|
|
1035
|
+
|
|
1036
|
+
[[package]]
|
|
1037
|
+
name = "num-rational"
|
|
1038
|
+
version = "0.4.2"
|
|
1039
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1040
|
+
checksum = "f83d14da390562dca69fc84082e73e548e1ad308d24accdedd2720017cb37824"
|
|
1041
|
+
dependencies = [
|
|
1042
|
+
"num-bigint",
|
|
1043
|
+
"num-integer",
|
|
1044
|
+
"num-traits",
|
|
1045
|
+
]
|
|
1046
|
+
|
|
1047
|
+
[[package]]
|
|
1048
|
+
name = "num-traits"
|
|
1049
|
+
version = "0.2.19"
|
|
1050
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1051
|
+
checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841"
|
|
1052
|
+
dependencies = [
|
|
1053
|
+
"autocfg",
|
|
1054
|
+
]
|
|
1055
|
+
|
|
855
1056
|
[[package]]
|
|
856
1057
|
name = "num_cpus"
|
|
857
1058
|
version = "1.17.0"
|
|
@@ -886,12 +1087,41 @@ version = "0.2.0"
|
|
|
886
1087
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
887
1088
|
checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d"
|
|
888
1089
|
|
|
1090
|
+
[[package]]
|
|
1091
|
+
name = "outref"
|
|
1092
|
+
version = "0.5.2"
|
|
1093
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1094
|
+
checksum = "1a80800c0488c3a21695ea981a54918fbb37abf04f4d0720c453632255e2ff0e"
|
|
1095
|
+
|
|
889
1096
|
[[package]]
|
|
890
1097
|
name = "owo-colors"
|
|
891
1098
|
version = "4.3.0"
|
|
892
1099
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
893
1100
|
checksum = "d211803b9b6b570f68772237e415a029d5a50c65d382910b879fb19d3271f94d"
|
|
894
1101
|
|
|
1102
|
+
[[package]]
|
|
1103
|
+
name = "parking_lot"
|
|
1104
|
+
version = "0.12.5"
|
|
1105
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1106
|
+
checksum = "93857453250e3077bd71ff98b6a65ea6621a19bb0f559a85248955ac12c45a1a"
|
|
1107
|
+
dependencies = [
|
|
1108
|
+
"lock_api",
|
|
1109
|
+
"parking_lot_core",
|
|
1110
|
+
]
|
|
1111
|
+
|
|
1112
|
+
[[package]]
|
|
1113
|
+
name = "parking_lot_core"
|
|
1114
|
+
version = "0.9.12"
|
|
1115
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1116
|
+
checksum = "2621685985a2ebf1c516881c026032ac7deafcda1a2c9b7850dc81e3dfcb64c1"
|
|
1117
|
+
dependencies = [
|
|
1118
|
+
"cfg-if",
|
|
1119
|
+
"libc",
|
|
1120
|
+
"redox_syscall",
|
|
1121
|
+
"smallvec",
|
|
1122
|
+
"windows-link",
|
|
1123
|
+
]
|
|
1124
|
+
|
|
895
1125
|
[[package]]
|
|
896
1126
|
name = "percent-encoding"
|
|
897
1127
|
version = "2.3.2"
|
|
@@ -955,13 +1185,14 @@ dependencies = [
|
|
|
955
1185
|
|
|
956
1186
|
[[package]]
|
|
957
1187
|
name = "proxctl"
|
|
958
|
-
version = "0.2.
|
|
1188
|
+
version = "0.2.8"
|
|
959
1189
|
dependencies = [
|
|
960
1190
|
"clap",
|
|
961
1191
|
"clap_complete",
|
|
962
1192
|
"dialoguer",
|
|
963
1193
|
"dirs",
|
|
964
1194
|
"indicatif",
|
|
1195
|
+
"jsonschema",
|
|
965
1196
|
"owo-colors",
|
|
966
1197
|
"reqwest",
|
|
967
1198
|
"rpassword",
|
|
@@ -1080,6 +1311,15 @@ dependencies = [
|
|
|
1080
1311
|
"getrandom 0.3.4",
|
|
1081
1312
|
]
|
|
1082
1313
|
|
|
1314
|
+
[[package]]
|
|
1315
|
+
name = "redox_syscall"
|
|
1316
|
+
version = "0.5.18"
|
|
1317
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1318
|
+
checksum = "ed2bf2547551a7053d6fdfafda3f938979645c44812fbfcda098faae3f1a362d"
|
|
1319
|
+
dependencies = [
|
|
1320
|
+
"bitflags",
|
|
1321
|
+
]
|
|
1322
|
+
|
|
1083
1323
|
[[package]]
|
|
1084
1324
|
name = "redox_users"
|
|
1085
1325
|
version = "0.5.2"
|
|
@@ -1091,6 +1331,40 @@ dependencies = [
|
|
|
1091
1331
|
"thiserror 2.0.18",
|
|
1092
1332
|
]
|
|
1093
1333
|
|
|
1334
|
+
[[package]]
|
|
1335
|
+
name = "ref-cast"
|
|
1336
|
+
version = "1.0.25"
|
|
1337
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1338
|
+
checksum = "f354300ae66f76f1c85c5f84693f0ce81d747e2c3f21a45fef496d89c960bf7d"
|
|
1339
|
+
dependencies = [
|
|
1340
|
+
"ref-cast-impl",
|
|
1341
|
+
]
|
|
1342
|
+
|
|
1343
|
+
[[package]]
|
|
1344
|
+
name = "ref-cast-impl"
|
|
1345
|
+
version = "1.0.25"
|
|
1346
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1347
|
+
checksum = "b7186006dcb21920990093f30e3dea63b7d6e977bf1256be20c3563a5db070da"
|
|
1348
|
+
dependencies = [
|
|
1349
|
+
"proc-macro2",
|
|
1350
|
+
"quote",
|
|
1351
|
+
"syn",
|
|
1352
|
+
]
|
|
1353
|
+
|
|
1354
|
+
[[package]]
|
|
1355
|
+
name = "referencing"
|
|
1356
|
+
version = "0.29.1"
|
|
1357
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1358
|
+
checksum = "40a64b3a635fad9000648b4d8a59c8710c523ab61a23d392a7d91d47683f5adc"
|
|
1359
|
+
dependencies = [
|
|
1360
|
+
"ahash",
|
|
1361
|
+
"fluent-uri",
|
|
1362
|
+
"once_cell",
|
|
1363
|
+
"parking_lot",
|
|
1364
|
+
"percent-encoding",
|
|
1365
|
+
"serde_json",
|
|
1366
|
+
]
|
|
1367
|
+
|
|
1094
1368
|
[[package]]
|
|
1095
1369
|
name = "regex"
|
|
1096
1370
|
version = "1.12.3"
|
|
@@ -1128,6 +1402,7 @@ checksum = "eddd3ca559203180a307f12d114c268abf583f59b03cb906fd0b3ff8646c1147"
|
|
|
1128
1402
|
dependencies = [
|
|
1129
1403
|
"base64",
|
|
1130
1404
|
"bytes",
|
|
1405
|
+
"futures-channel",
|
|
1131
1406
|
"futures-core",
|
|
1132
1407
|
"futures-util",
|
|
1133
1408
|
"http",
|
|
@@ -1261,6 +1536,12 @@ version = "1.0.23"
|
|
|
1261
1536
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1262
1537
|
checksum = "9774ba4a74de5f7b1c1451ed6cd5285a32eddb5cccb8cc655a4e50009e06477f"
|
|
1263
1538
|
|
|
1539
|
+
[[package]]
|
|
1540
|
+
name = "scopeguard"
|
|
1541
|
+
version = "1.2.0"
|
|
1542
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1543
|
+
checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
|
|
1544
|
+
|
|
1264
1545
|
[[package]]
|
|
1265
1546
|
name = "semver"
|
|
1266
1547
|
version = "1.0.27"
|
|
@@ -1725,6 +2006,39 @@ version = "0.2.2"
|
|
|
1725
2006
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1726
2007
|
checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821"
|
|
1727
2008
|
|
|
2009
|
+
[[package]]
|
|
2010
|
+
name = "uuid"
|
|
2011
|
+
version = "1.23.3"
|
|
2012
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
2013
|
+
checksum = "144d6b123cef80b301b8f72a9e2ca4370ddec21950d0a103dd22c437006d2db7"
|
|
2014
|
+
dependencies = [
|
|
2015
|
+
"js-sys",
|
|
2016
|
+
"wasm-bindgen",
|
|
2017
|
+
]
|
|
2018
|
+
|
|
2019
|
+
[[package]]
|
|
2020
|
+
name = "uuid-simd"
|
|
2021
|
+
version = "0.8.0"
|
|
2022
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
2023
|
+
checksum = "23b082222b4f6619906941c17eb2297fff4c2fb96cb60164170522942a200bd8"
|
|
2024
|
+
dependencies = [
|
|
2025
|
+
"outref",
|
|
2026
|
+
"uuid",
|
|
2027
|
+
"vsimd",
|
|
2028
|
+
]
|
|
2029
|
+
|
|
2030
|
+
[[package]]
|
|
2031
|
+
name = "version_check"
|
|
2032
|
+
version = "0.9.5"
|
|
2033
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
2034
|
+
checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a"
|
|
2035
|
+
|
|
2036
|
+
[[package]]
|
|
2037
|
+
name = "vsimd"
|
|
2038
|
+
version = "0.8.0"
|
|
2039
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
2040
|
+
checksum = "5c3082ca00d5a5ef149bb8b555a72ae84c9c59f7250f013ac822ac2e49b19c64"
|
|
2041
|
+
|
|
1728
2042
|
[[package]]
|
|
1729
2043
|
name = "want"
|
|
1730
2044
|
version = "0.3.1"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[package]
|
|
2
2
|
name = "proxctl"
|
|
3
|
-
version = "0.2.
|
|
3
|
+
version = "0.2.8"
|
|
4
4
|
edition = "2024"
|
|
5
5
|
rust-version = "1.90"
|
|
6
6
|
description = "CLI for Proxmox VE"
|
|
@@ -36,3 +36,4 @@ dialoguer = "0.11"
|
|
|
36
36
|
[dev-dependencies]
|
|
37
37
|
tempfile = "3"
|
|
38
38
|
wiremock = "0.6"
|
|
39
|
+
jsonschema = "0.29"
|