Skip to content

Update dependencies and fix kube API error handling - #97

Merged
popen2 merged 3 commits into
mainfrom
claude/upgrade-packages-all-repos-Ie6Rh
May 25, 2026
Merged

popen2 merged 3 commits into
mainfrom
claude/upgrade-packages-all-repos-Ie6Rh

Conversation

@popen2

@popen2 popen2 commented May 25, 2026

Copy link
Copy Markdown
Member

Summary

This PR updates all workspace dependencies to their latest versions and fixes a breaking change in the kube crate's error handling API.

Key Changes

  • Dependency Updates: Updated 30+ dependencies across all workspace crates to latest versions, including:

    • AWS SDK crates (ec2, eks, ecr, sqs)
    • Kubernetes crate (kube 1.1.0 → 3.1.0)
    • Tokio ecosystem (tokio, tokio-stream, tokio-util)
    • Serialization (serde, serde_json)
    • HTTP and networking (reqwest, http, url)
    • And many others
  • Dependency Source Changes:

    • Migrated diesel-filter and diesel-pagination from git dependencies to crates.io versions (2.0.0)
    • Updated reqwest feature flags from rustls-tls to rustls (API change in 0.13.x)
  • API Compatibility Fix: Updated error handling in k8s-agent/src/task_runner/install_and_upgrade.rs to match kube 3.x API:

    • Changed from pattern matching on kube::core::ErrorResponse struct to accessing the code field on the kube::Error::Api status object
    • This fixes compilation with the updated kube crate version

Notable Implementation Details

  • The kube crate major version bump (1.1.0 → 3.1.0) introduced breaking changes to error types, requiring the error handling pattern update in the namespace deletion logic
  • All feature flags and dependency configurations remain functionally equivalent after the updates

https://claude.ai/code/session_01Lq361bxUKUMGzCtj7LA6mE

claude added 2 commits May 25, 2026 11:18
Upgrade dependencies to latest, including major bumps: openid 0.17 ->
0.23, jsonwebtoken 9 -> 10, rand 0.9 -> 0.10, sha2 0.10 -> 0.11,
kube 1.1 -> 3.1, k8s-openapi 0.25 -> 0.27, reqwest 0.12 -> 0.13
(rustls-tls feature renamed to rustls) and strum 0.27 -> 0.28.

Adapt to kube 3.x's Error::Api now wrapping Box<Status> instead of
ErrorResponse.

diesel/diesel-async/diesel_migrations are held at 2.2.x/0.6.x to stay
compatible with the pinned diesel_filter (tag v2.0.0).

https://claude.ai/code/session_01Lq361bxUKUMGzCtj7LA6mE
The popen2 fork's changes are now published upstream as diesel_filter
2.0.0 and diesel_pagination 2.0.0 (with the actix/serde/utoipa and
diesel-async/serde/utoipa features), so drop the git dependency on
github.com/popen2/diesel_filter and pull both from crates.io.

diesel_enum_derive stays on the git fork since its "plain" feature is
not yet published.

https://claude.ai/code/session_01Lq361bxUKUMGzCtj7LA6mE
Comment thread db/Cargo.toml Outdated
Now that they come from crates.io they're regular dependencies, so
move them out of their own [dependencies.*] tables into the main
[dependencies] section alongside the other diesel crates.

https://claude.ai/code/session_01Lq361bxUKUMGzCtj7LA6mE
@popen2
popen2 merged commit 0fa0a6b into main May 25, 2026
7 checks passed
@popen2
popen2 deleted the claude/upgrade-packages-all-repos-Ie6Rh branch May 25, 2026 18:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants