upd-cli 0.0.28__tar.gz → 0.1.2__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.
Files changed (76) hide show
  1. {upd_cli-0.0.28 → upd_cli-0.1.2}/.mise.toml +3 -3
  2. {upd_cli-0.0.28 → upd_cli-0.1.2}/.pre-commit-config.yaml +3 -3
  3. {upd_cli-0.0.28 → upd_cli-0.1.2}/.pre-commit-hooks.yaml +1 -1
  4. {upd_cli-0.0.28 → upd_cli-0.1.2}/CHANGELOG.md +83 -0
  5. {upd_cli-0.0.28 → upd_cli-0.1.2}/Cargo.lock +529 -168
  6. {upd_cli-0.0.28 → upd_cli-0.1.2}/Cargo.toml +17 -16
  7. {upd_cli-0.0.28 → upd_cli-0.1.2}/PKG-INFO +191 -20
  8. {upd_cli-0.0.28 → upd_cli-0.1.2}/README.md +190 -19
  9. {upd_cli-0.0.28 → upd_cli-0.1.2}/rust-toolchain.toml +1 -1
  10. {upd_cli-0.0.28 → upd_cli-0.1.2}/src/align.rs +219 -11
  11. upd_cli-0.1.2/src/audit/cache.rs +341 -0
  12. upd_cli-0.1.2/src/audit/cvss.rs +487 -0
  13. upd_cli-0.1.2/src/audit/mod.rs +1007 -0
  14. {upd_cli-0.0.28 → upd_cli-0.1.2}/src/cache.rs +97 -6
  15. upd_cli-0.1.2/src/cli.rs +844 -0
  16. {upd_cli-0.0.28 → upd_cli-0.1.2}/src/config.rs +539 -11
  17. upd_cli-0.1.2/src/cooldown.rs +965 -0
  18. upd_cli-0.1.2/src/lib.rs +64 -0
  19. {upd_cli-0.0.28 → upd_cli-0.1.2}/src/lockfile.rs +373 -25
  20. {upd_cli-0.0.28 → upd_cli-0.1.2}/src/main.rs +1519 -255
  21. upd_cli-0.1.2/src/output.rs +1111 -0
  22. {upd_cli-0.0.28 → upd_cli-0.1.2}/src/registry/crates_io.rs +92 -6
  23. {upd_cli-0.0.28 → upd_cli-0.1.2}/src/registry/github_releases.rs +212 -19
  24. {upd_cli-0.0.28 → upd_cli-0.1.2}/src/registry/go_proxy.rs +119 -1
  25. {upd_cli-0.0.28 → upd_cli-0.1.2}/src/registry/mock.rs +61 -1
  26. {upd_cli-0.0.28 → upd_cli-0.1.2}/src/registry/mod.rs +47 -0
  27. {upd_cli-0.0.28 → upd_cli-0.1.2}/src/registry/npm.rs +181 -3
  28. {upd_cli-0.0.28 → upd_cli-0.1.2}/src/registry/nuget.rs +82 -0
  29. {upd_cli-0.0.28 → upd_cli-0.1.2}/src/registry/pypi.rs +109 -4
  30. {upd_cli-0.0.28 → upd_cli-0.1.2}/src/registry/rubygems.rs +158 -3
  31. {upd_cli-0.0.28 → upd_cli-0.1.2}/src/registry/utils.rs +8 -18
  32. {upd_cli-0.0.28 → upd_cli-0.1.2}/src/updater/cargo_toml.rs +102 -13
  33. {upd_cli-0.0.28 → upd_cli-0.1.2}/src/updater/csproj.rs +201 -20
  34. {upd_cli-0.0.28 → upd_cli-0.1.2}/src/updater/gemfile.rs +236 -14
  35. {upd_cli-0.0.28 → upd_cli-0.1.2}/src/updater/github_actions.rs +91 -17
  36. {upd_cli-0.0.28 → upd_cli-0.1.2}/src/updater/go_mod.rs +341 -22
  37. {upd_cli-0.0.28 → upd_cli-0.1.2}/src/updater/mise.rs +159 -23
  38. {upd_cli-0.0.28 → upd_cli-0.1.2}/src/updater/mod.rs +531 -2
  39. {upd_cli-0.0.28 → upd_cli-0.1.2}/src/updater/package_json.rs +385 -20
  40. {upd_cli-0.0.28 → upd_cli-0.1.2}/src/updater/pre_commit.rs +166 -18
  41. {upd_cli-0.0.28 → upd_cli-0.1.2}/src/updater/pyproject.rs +190 -20
  42. {upd_cli-0.0.28 → upd_cli-0.1.2}/src/updater/requirements.rs +444 -13
  43. {upd_cli-0.0.28 → upd_cli-0.1.2}/src/updater/terraform.rs +471 -20
  44. {upd_cli-0.0.28 → upd_cli-0.1.2}/src/version/mod.rs +4 -2
  45. {upd_cli-0.0.28 → upd_cli-0.1.2}/src/version/pep440.rs +30 -0
  46. {upd_cli-0.0.28 → upd_cli-0.1.2}/src/version/semver_util.rs +24 -0
  47. upd_cli-0.1.2/src/version/tag.rs +266 -0
  48. upd_cli-0.1.2/tests/audit_offline.rs +136 -0
  49. upd_cli-0.1.2/tests/audit_sarif.rs +188 -0
  50. upd_cli-0.1.2/tests/audit_severity.rs +335 -0
  51. upd_cli-0.1.2/tests/bump_filter.rs +257 -0
  52. upd_cli-0.1.2/tests/cooldown_e2e.rs +77 -0
  53. upd_cli-0.1.2/tests/exit_codes.rs +542 -0
  54. upd_cli-0.1.2/tests/fix_audit.rs +304 -0
  55. upd_cli-0.1.2/tests/format_json.rs +107 -0
  56. upd_cli-0.1.2/tests/help_text.rs +167 -0
  57. upd_cli-0.1.2/tests/interactive_tty.rs +58 -0
  58. upd_cli-0.1.2/tests/invalid_positional.rs +142 -0
  59. upd_cli-0.1.2/tests/no_args_scope.rs +367 -0
  60. upd_cli-0.1.2/tests/output_streams.rs +215 -0
  61. upd_cli-0.1.2/tests/package_filter.rs +196 -0
  62. upd_cli-0.0.28/src/audit.rs +0 -394
  63. upd_cli-0.0.28/src/cli.rs +0 -400
  64. upd_cli-0.0.28/src/lib.rs +0 -22
  65. {upd_cli-0.0.28 → upd_cli-0.1.2}/.rumdl.toml +0 -0
  66. {upd_cli-0.0.28 → upd_cli-0.1.2}/LICENSE +0 -0
  67. {upd_cli-0.0.28 → upd_cli-0.1.2}/Makefile +0 -0
  68. {upd_cli-0.0.28 → upd_cli-0.1.2}/assets/logo-wide.svg +0 -0
  69. {upd_cli-0.0.28 → upd_cli-0.1.2}/assets/logo.svg +0 -0
  70. {upd_cli-0.0.28 → upd_cli-0.1.2}/pyproject.toml +0 -0
  71. {upd_cli-0.0.28 → upd_cli-0.1.2}/python/upd_cli/__init__.py +0 -0
  72. {upd_cli-0.0.28 → upd_cli-0.1.2}/python/upd_cli/__main__.py +0 -0
  73. {upd_cli-0.0.28 → upd_cli-0.1.2}/python/upd_cli/py.typed +0 -0
  74. {upd_cli-0.0.28 → upd_cli-0.1.2}/src/interactive.rs +0 -0
  75. {upd_cli-0.0.28 → upd_cli-0.1.2}/src/registry/terraform.rs +0 -0
  76. {upd_cli-0.0.28 → upd_cli-0.1.2}/vership.toml +0 -0
@@ -5,10 +5,10 @@ RUST_BACKTRACE = "1"
5
5
 
6
6
  [tools]
7
7
  # Rust toolchain - version matches rust-toolchain.toml
8
- rust = "1.91.1"
8
+ rust = "1.95.0"
9
9
 
10
10
  # Python for maturin/python bindings
11
- python = "3.12"
11
+ python = "3.14"
12
12
 
13
13
  # UV - Fast Python package manager
14
14
  uv = "latest"
@@ -19,7 +19,7 @@ uv = "latest"
19
19
  "cargo:cargo-zigbuild" = "latest"
20
20
 
21
21
  # Zig for cross-compilation
22
- zig = "0.13"
22
+ zig = "0.15"
23
23
 
24
24
  [settings]
25
25
  cargo_binstall = true
@@ -26,7 +26,7 @@ repos:
26
26
 
27
27
  - id: cargo-test
28
28
  name: cargo test
29
- entry: cargo test --lib -- --test-threads=1
29
+ entry: env UPD_CACHE_DIR=/tmp/upd-precommit-cache cargo test --lib -- --test-threads=1
30
30
  language: system
31
31
  types: [rust]
32
32
  pass_filenames: false
@@ -34,7 +34,7 @@ repos:
34
34
 
35
35
  # General file quality checks
36
36
  - repo: https://github.com/pre-commit/pre-commit-hooks
37
- rev: v4.6.0
37
+ rev: v6.0.0
38
38
  hooks:
39
39
  - id: trailing-whitespace
40
40
  exclude: \.md$
@@ -50,7 +50,7 @@ repos:
50
50
 
51
51
  # Markdown linting using rumdl
52
52
  - repo: https://github.com/rvben/rumdl-pre-commit
53
- rev: v0.0.192
53
+ rev: v0.1.73
54
54
  hooks:
55
55
  - id: rumdl
56
56
  exclude: ^CHANGELOG\.md$
@@ -10,7 +10,7 @@
10
10
  - id: upd-check-major
11
11
  name: Check for major dependency updates
12
12
  description: Check if any dependencies have major updates available
13
- entry: upd --check --major
13
+ entry: upd --check --bump major
14
14
  language: system
15
15
  pass_filenames: false
16
16
  files: (requirements.*\.txt|pyproject\.toml|package\.json|Cargo\.toml|go\.mod)$
@@ -9,6 +9,89 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
9
9
 
10
10
 
11
11
 
12
+
13
+
14
+
15
+ ## [0.1.2](https://github.com/rvben/upd/compare/v0.1.1...v0.1.2) - 2026-04-24
16
+
17
+ ### Added
18
+
19
+ - **cache**: add optional versions field to CacheEntry for future list_versions caching ([1beb34d](https://github.com/rvben/upd/commit/1beb34dc030f160e3748dff9a63e71bfa1772043))
20
+ - **output**: report held-back and skipped-by-cooldown packages ([3d1a2ce](https://github.com/rvben/upd/commit/3d1a2cef2ae31c59a87b417b074e0d672b7256d2))
21
+ - **updater**: propagate cooldown policy to remaining updaters ([8e80f25](https://github.com/rvben/upd/commit/8e80f252339f022d90f8120694e529c68c3bcf90))
22
+ - **updater**: apply cooldown policy in requirements updater ([5d6cfd3](https://github.com/rvben/upd/commit/5d6cfd32bfe87df7af86453476a93e2945f009ff))
23
+ - **registry**: implement list_versions for GitHub releases ([5f6472b](https://github.com/rvben/upd/commit/5f6472b5d7c4394d59fbabfd4bd9a1d9b736a67a))
24
+ - **registry**: implement list_versions for RubyGems ([1a1dda3](https://github.com/rvben/upd/commit/1a1dda31d73e0f25d8a73e6438aed7c4daadc007))
25
+ - **registry**: implement list_versions for Go module proxy ([196fef6](https://github.com/rvben/upd/commit/196fef634b0ae3c53096222e8bbe3161d8b67a33))
26
+ - **registry**: implement list_versions for crates.io ([8869dec](https://github.com/rvben/upd/commit/8869dec1a69148b5b3db44cc3393a05aaa2b01fb))
27
+ - **registry**: implement list_versions for npm ([b23cd78](https://github.com/rvben/upd/commit/b23cd787e748dfc5404a8fd51981c67f858e1d5a))
28
+ - **registry**: implement list_versions for PyPI ([9aa342c](https://github.com/rvben/upd/commit/9aa342c5c11ae504024aed5aa2d8930c66b4a6df))
29
+ - **cli**: add --min-age flag for cooldown override ([b5bfb30](https://github.com/rvben/upd/commit/b5bfb304c39f6b8099aef3a066e2ef4ed17f606f))
30
+ - **config**: show cooldown policy in --show-config ([9486257](https://github.com/rvben/upd/commit/9486257b22456e55e9af23709089a574cce262be))
31
+ - **config**: add [cooldown] table with default and per-ecosystem overrides ([a9ff8e3](https://github.com/rvben/upd/commit/a9ff8e31050485056a9bb6e03f4d313df1262998))
32
+ - **cooldown**: implement select() selection algorithm ([8b588bb](https://github.com/rvben/upd/commit/8b588bb1b42d84d696a7a17d8e97141a223351a1))
33
+ - **cooldown**: add CooldownPolicy with precedence resolution ([ddba284](https://github.com/rvben/upd/commit/ddba284329dad87bf84cf566ecb487ef665408a1))
34
+ - **cooldown**: add parse_duration for release-age config ([a7e67e0](https://github.com/rvben/upd/commit/a7e67e035764e4d905ace1dc4092f41c27510a5c))
35
+ - **registry**: re-export VersionMeta from crate root ([b2cdd60](https://github.com/rvben/upd/commit/b2cdd6037c09110881f53db4992542e77596f6c3))
36
+ - **registry**: add VersionMeta and list_versions trait method ([09ddbf9](https://github.com/rvben/upd/commit/09ddbf9c2b8f0546feafeb642f27547bed1882da))
37
+
38
+ ### Fixed
39
+
40
+ - **cooldown**: harden selection against real-world constraints and per-file policy ([a284ea4](https://github.com/rvben/upd/commit/a284ea497dcf3abf65fda2c7e7f6c0c03c3dd8e2))
41
+ - **updater**: pass Poetry constraint to cooldown selection ([a0383e9](https://github.com/rvben/upd/commit/a0383e9167b2ef05cc4583aa23c1035d32268750))
42
+
43
+ ## [0.1.1](https://github.com/rvben/upd/compare/v0.1.0...v0.1.1) - 2026-04-22
44
+
45
+ ### Added
46
+
47
+ - **version**: add TagVersion for N-segment git tag parsing ([5994c6b](https://github.com/rvben/upd/commit/5994c6b39e347ed6470ca2097c1d7ed0a10b767d))
48
+
49
+ ### Fixed
50
+
51
+ - **align**: use TagVersion fallback in compare_semver ([1738ace](https://github.com/rvben/upd/commit/1738aceaa98e39bd5245864e6bb1a2658c147878))
52
+ - **registry**: resolve N-segment git tags in GitHub fallback ([552425d](https://github.com/rvben/upd/commit/552425de91519cfb0d280eebc22c7802304d6580))
53
+
54
+ ## [0.1.0](https://github.com/rvben/upd/compare/v0.0.28...v0.1.0) - 2026-04-21
55
+
56
+ ### Breaking Changes
57
+
58
+ - **cli**: rename --bump to --only-bump and add --max-bump ([eb63589](https://github.com/rvben/upd/commit/eb63589867bac483b5de313d413d7c8e22a00a5f))
59
+ - **cli**: lock CLI surface for 0.1.0 ([d7a3ea4](https://github.com/rvben/upd/commit/d7a3ea441836e266c9ca3c3b772026246ba07d2f))
60
+
61
+ ### Added
62
+
63
+ - **audit**: add SARIF 2.1.0 output for audit results ([d6b0118](https://github.com/rvben/upd/commit/d6b01188862bef90550814269df21c32f1588a50))
64
+ - **audit**: cache OSV responses and add --offline mode ([5a3058b](https://github.com/rvben/upd/commit/5a3058b39d97c4a116eefde65265bdfe354d263d))
65
+ - **audit**: add --fix-audit to bump packages to minimum safe version ([5292ae2](https://github.com/rvben/upd/commit/5292ae264b8f076c6b170f5eba5788e9d7eb56da))
66
+ - **cli**: rename --bump to --only-bump and add --max-bump ([eb63589](https://github.com/rvben/upd/commit/eb63589867bac483b5de313d413d7c8e22a00a5f))
67
+ - **cli**: scope no-args to VCS root and require --apply to mutate ([fe99418](https://github.com/rvben/upd/commit/fe99418b4844fa6c6944644e47982518a3f8616b))
68
+ - **audit**: normalize severity labels and sort by severity ([940f25c](https://github.com/rvben/upd/commit/940f25c0286deb5bb72d59cd08bec5ec6a34577e))
69
+ - **cli**: route errors to stderr and add --quiet flag ([0cbc19c](https://github.com/rvben/upd/commit/0cbc19c30f0c98a2683434c2f6b6f9f1cb9be615))
70
+ - **cli**: add --package filter to restrict updates by name ([f7962c8](https://github.com/rvben/upd/commit/f7962c8b1333a2da2133aacdc89f6f8318d0eb4e))
71
+ - **config**: warn on unknown keys and add --show-config ([cab49c1](https://github.com/rvben/upd/commit/cab49c18eb0ff1fd19f1e579959dc9ca3a555617))
72
+ - **lock**: regenerate packages.lock.json and .terraform.lock.hcl ([87d8e4e](https://github.com/rvben/upd/commit/87d8e4e9f7ea4e13ad0a5d4e4244384eae48b779))
73
+ - **audit**: include .NET packages via OSV NuGet ecosystem ([caec69d](https://github.com/rvben/upd/commit/caec69de65ae61f0923e19f1ba264031cc512365))
74
+ - **cli**: add --format json for machine-readable output ([f9c867f](https://github.com/rvben/upd/commit/f9c867fc497ed53e6d6997bb84660b40d851469a))
75
+
76
+ ### Fixed
77
+
78
+ - **cli**: reject unknown subcommands instead of silent no-op ([e28aea4](https://github.com/rvben/upd/commit/e28aea44b783190f002a3453a1fc21ceff23c882))
79
+ - **terraform**: handle registry.terraform.io prefixed sources ([6d90d11](https://github.com/rvben/upd/commit/6d90d1175ab25b35d81dfff791329d5da8b34d8d))
80
+ - **cli**: print revert tip in --help and post-run summary ([05cdd14](https://github.com/rvben/upd/commit/05cdd14a5de31fc0a9533f6d6454bb5cb5b8c6d4))
81
+ - **lockfile**: error on missing tool, skip when no lockfile exists ([f8cca78](https://github.com/rvben/upd/commit/f8cca785f8a365ee7240cc60236b92387253afdb))
82
+ - **cli**: accept comma-separated values for --lang ([c7f8b11](https://github.com/rvben/upd/commit/c7f8b11564b872270747f1cb88b2dbb988060bf3))
83
+ - **main**: exit 1 on --dry-run with pending updates ([eb3cadc](https://github.com/rvben/upd/commit/eb3cadc79f03f33f5a9ce5cc26ecec74c804b103))
84
+ - **audit**: exit 3 on vulnerabilities, add --no-fail ([28e8b75](https://github.com/rvben/upd/commit/28e8b75ad7b9ff15f33dfd56c5a8270e3dc1696b))
85
+ - **main**: exit 2 on errors, structure JSON error objects ([353e013](https://github.com/rvben/upd/commit/353e013988cb43bd66544246e1dca0a5132d4263))
86
+ - **version**: keep pre-releases on pre-release-pinned packages ([a95d2f8](https://github.com/rvben/upd/commit/a95d2f85c4143cc913266df774bda3fe35a0a4d3))
87
+ - **terraform**: keep ~> constraint when latest still satisfies ([e869e40](https://github.com/rvben/upd/commit/e869e40f99ca88cda873556cfdaff06c44b8de53))
88
+ - **audit**: include Go pseudoversion dependencies ([e051f06](https://github.com/rvben/upd/commit/e051f0621a88751059f83707bc415df359b15905))
89
+ - **interactive**: require TTY for --interactive mode ([ba0d0b2](https://github.com/rvben/upd/commit/ba0d0b2e2bb7d021ea557bf547bade3be5953379))
90
+ - **updater**: refuse to write version downgrades ([41bd7e6](https://github.com/rvben/upd/commit/41bd7e67d03d48cb2f948770abc7ee4979205f9e))
91
+ - **requirements**: skip update when current is not valid PEP 440 ([4e6f3ea](https://github.com/rvben/upd/commit/4e6f3ea755d974392915e3fe211b6e0f9e6c3121))
92
+ - **audit**: preserve package-name case for OSV queries ([8bde8b1](https://github.com/rvben/upd/commit/8bde8b1bc81aba56a43049d5fac46016195d7eac))
93
+ - **rubygems**: skip yanked versions when selecting latest ([2d48a0e](https://github.com/rvben/upd/commit/2d48a0ebcce2c576ca0169f661f27bd4a268a18c))
94
+
12
95
  ## [0.0.28](https://github.com/rvben/upd/compare/v0.0.27...v0.0.28) - 2026-04-17
13
96
 
14
97
  ### Added