[PR #7108] [MERGED] Update Rust, Crates, GHA and fix a DNS issue #23413

Closed
opened 2026-05-16 05:59:55 -05:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/dani-garcia/vaultwarden/pull/7108
Author: @BlackDex
Created: 4/17/2026
Status: Merged
Merged: 4/18/2026
Merged by: @dani-garcia

Base: mainHead: update-crates-rust-gha


📝 Commits (2)

  • 49fa690 Update Rust, Crates and GHA
  • 4495056 Adjust resolver builder path

📊 Changes

14 files changed (+305 additions, -176 deletions)

View changed files

📝 .gitattributes (+0 -1)
📝 .github/workflows/trivy.yml (+1 -1)
📝 .github/workflows/typos.yml (+1 -1)
📝 .github/workflows/zizmor.yml (+1 -1)
📝 .pre-commit-config.yaml (+55 -53)
📝 Cargo.lock (+208 -83)
📝 Cargo.toml (+6 -6)
📝 diesel.toml (+1 -1)
📝 docker/DockerSettings.yaml (+1 -1)
📝 docker/Dockerfile.alpine (+4 -4)
📝 docker/Dockerfile.debian (+1 -1)
📝 rust-toolchain.toml (+1 -1)
📝 src/api/identity.rs (+1 -1)
📝 src/http_client.rs (+24 -21)

📄 Description

  • Updated Rust to v1.95.0
  • Updated all the crates
  • Update GitHub Actions

With the crate updates, hickory-resolver was updated which needed some changes. During testing I found a bug with the fallback resolving from Tokio. The resolver doesn't work if it receives only a &str, it needs a port too. This fixed the resolving if Hickory failed to load.

Also, Hickory switched the resolving to prefer IPv6. While this is nice, it could break or slowdown resolving for IPv4 only environments. Since we already have a flag to prefer IPv6, we check if this is set, else resolve IPv4 first and IPv6 afterwards.

Also, we returned just 1 IpAddr record, and ignored the rest. This could mean, a failed attempt to connect if the first IP endpoint has issues. Same if the first records is IPv6 but the server doesn't support this, it never tried a possible returned IPv4 address.

We now return a full list of the resolved records unless one of the records matched a filtered address, than the whole resolving is ignored as was previously the case.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/dani-garcia/vaultwarden/pull/7108 **Author:** [@BlackDex](https://github.com/BlackDex) **Created:** 4/17/2026 **Status:** ✅ Merged **Merged:** 4/18/2026 **Merged by:** [@dani-garcia](https://github.com/dani-garcia) **Base:** `main` ← **Head:** `update-crates-rust-gha` --- ### 📝 Commits (2) - [`49fa690`](https://github.com/dani-garcia/vaultwarden/commit/49fa6903ed7b8d50e72fbbb6a4e76912c9f6276f) Update Rust, Crates and GHA - [`4495056`](https://github.com/dani-garcia/vaultwarden/commit/449505653478d8bff3a5c63a869f67a10b60a577) Adjust resolver builder path ### 📊 Changes **14 files changed** (+305 additions, -176 deletions) <details> <summary>View changed files</summary> 📝 `.gitattributes` (+0 -1) 📝 `.github/workflows/trivy.yml` (+1 -1) 📝 `.github/workflows/typos.yml` (+1 -1) 📝 `.github/workflows/zizmor.yml` (+1 -1) 📝 `.pre-commit-config.yaml` (+55 -53) 📝 `Cargo.lock` (+208 -83) 📝 `Cargo.toml` (+6 -6) 📝 `diesel.toml` (+1 -1) 📝 `docker/DockerSettings.yaml` (+1 -1) 📝 `docker/Dockerfile.alpine` (+4 -4) 📝 `docker/Dockerfile.debian` (+1 -1) 📝 `rust-toolchain.toml` (+1 -1) 📝 `src/api/identity.rs` (+1 -1) 📝 `src/http_client.rs` (+24 -21) </details> ### 📄 Description - Updated Rust to v1.95.0 - Updated all the crates - Update GitHub Actions With the crate updates, hickory-resolver was updated which needed some changes. During testing I found a bug with the fallback resolving from Tokio. The resolver doesn't work if it receives only a `&str`, it needs a `port` too. This fixed the resolving if Hickory failed to load. Also, Hickory switched the resolving to prefer IPv6. While this is nice, it could break or slowdown resolving for IPv4 only environments. Since we already have a flag to prefer IPv6, we check if this is set, else resolve IPv4 first and IPv6 afterwards. Also, we returned just 1 IpAddr record, and ignored the rest. This could mean, a failed attempt to connect if the first IP endpoint has issues. Same if the first records is IPv6 but the server doesn't support this, it never tried a possible returned IPv4 address. We now return a full list of the resolved records unless one of the records matched a filtered address, than the whole resolving is ignored as was previously the case. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
GiteaMirror added the pull-request label 2026-05-16 05:59:55 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/vaultwarden#23413