[PR #913] [CLOSED] Remove the necessity for Background in the Resolver #1789

Closed
opened 2026-03-16 02:25:28 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/hickory-dns/hickory-dns/pull/913
Author: @bluejekyll
Created: 11/7/2019
Status: Closed

Base: masterHead: remove-Background


📝 Commits (10+)

  • 02a8670 all working, but there is more cleanup to do
  • cb96688 Client refactored without background
  • 816b0c2 all default tests building and passing
  • 4f2911b dns-over-tls and https compiling, but resolver and client tests hanging
  • e644489 fix infinite loop
  • e97df8b all-features compiling, https hanging
  • f03421d fix hang in tls/https
  • 9d79439 all features working again
  • f63dbb8 Everything working with Background removed
  • 0540b21 wip: cleanup clippy warnnings

📊 Changes

50 files changed (+1419 additions, -1869 deletions)

View changed files

📝 CHANGELOG.md (+16 -1)
📝 Cargo.lock (+133 -109)
📝 README.md (+4 -4)
📝 bin/benches/comparison_benches.rs (+4 -4)
📝 bin/src/named.rs (+4 -6)
📝 bin/tests/named_https_tests.rs (+4 -2)
📝 bin/tests/named_openssl_tests.rs (+4 -5)
📝 bin/tests/named_rustls_tests.rs (+6 -4)
📝 bin/tests/named_test_rsa_dnssec.rs (+18 -27)
📝 bin/tests/named_tests.rs (+30 -47)
📝 bin/tests/server_harness/mod.rs (+19 -14)
📝 crates/client/src/client/client.rs (+51 -139)
📝 crates/client/src/client/client_future.rs (+45 -103)
📝 crates/client/src/client/mod.rs (+1 -18)
📝 crates/client/src/client/rc_future.rs (+16 -21)
📝 crates/client/src/lib.rs (+7 -16)
📝 crates/native-tls/src/tests.rs (+2 -0)
📝 crates/proto/src/lib.rs (+1 -1)
📝 crates/proto/src/rr/domain/try_parse_ip.rs (+7 -0)
📝 crates/proto/src/tcp/tcp_client_stream.rs (+4 -4)

...and 30 more files

📄 Description

This change is an attempt to remove the Background types from the Resolver. These create some indirection to handle spawns that occur in some of the IO connection handlers. The plan is to remove all spawns (the reason this object was needed) and make those part of the sending future.

Might need a different strategy, we'll see.


left to do:

  • rename ClientFuture to AsyncClient
  • complete removal of AsyncResolver Background
  • remove all macro created Lookup futures that are unnecessary
  • remove all unused Handle wrappers that are no longer used

Fixes #891
Fixes #886
Fixes #888


🔄 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/hickory-dns/hickory-dns/pull/913 **Author:** [@bluejekyll](https://github.com/bluejekyll) **Created:** 11/7/2019 **Status:** ❌ Closed **Base:** `master` ← **Head:** `remove-Background` --- ### 📝 Commits (10+) - [`02a8670`](https://github.com/hickory-dns/hickory-dns/commit/02a867012bfccfc5ef14b97ad952696d5acd0abc) all working, but there is more cleanup to do - [`cb96688`](https://github.com/hickory-dns/hickory-dns/commit/cb9668849d6803216738730f6d572c816f4be219) Client refactored without background - [`816b0c2`](https://github.com/hickory-dns/hickory-dns/commit/816b0c294e3020024cad4ca532cf550ec4a4bc67) all default tests building and passing - [`4f2911b`](https://github.com/hickory-dns/hickory-dns/commit/4f2911b32ab80723831b57a15ce7c571163c2519) dns-over-tls and https compiling, but resolver and client tests hanging - [`e644489`](https://github.com/hickory-dns/hickory-dns/commit/e644489a6b3297f9f3f227c967d4e1dcb765401d) fix infinite loop - [`e97df8b`](https://github.com/hickory-dns/hickory-dns/commit/e97df8beeb51d37955c31de1f1343a1c7d1ebbbc) all-features compiling, https hanging - [`f03421d`](https://github.com/hickory-dns/hickory-dns/commit/f03421da8c3b3d63662984afa28d9e90b11fdf91) fix hang in tls/https - [`9d79439`](https://github.com/hickory-dns/hickory-dns/commit/9d79439a3e7b446ef9e68297818b6bafe40c56a5) all features working again - [`f63dbb8`](https://github.com/hickory-dns/hickory-dns/commit/f63dbb885b4fef0416b65ea308600e36a658f1be) Everything working with Background removed - [`0540b21`](https://github.com/hickory-dns/hickory-dns/commit/0540b2136f8b860138df093267e7ea3647934e1d) wip: cleanup clippy warnnings ### 📊 Changes **50 files changed** (+1419 additions, -1869 deletions) <details> <summary>View changed files</summary> 📝 `CHANGELOG.md` (+16 -1) 📝 `Cargo.lock` (+133 -109) 📝 `README.md` (+4 -4) 📝 `bin/benches/comparison_benches.rs` (+4 -4) 📝 `bin/src/named.rs` (+4 -6) 📝 `bin/tests/named_https_tests.rs` (+4 -2) 📝 `bin/tests/named_openssl_tests.rs` (+4 -5) 📝 `bin/tests/named_rustls_tests.rs` (+6 -4) 📝 `bin/tests/named_test_rsa_dnssec.rs` (+18 -27) 📝 `bin/tests/named_tests.rs` (+30 -47) 📝 `bin/tests/server_harness/mod.rs` (+19 -14) 📝 `crates/client/src/client/client.rs` (+51 -139) 📝 `crates/client/src/client/client_future.rs` (+45 -103) 📝 `crates/client/src/client/mod.rs` (+1 -18) 📝 `crates/client/src/client/rc_future.rs` (+16 -21) 📝 `crates/client/src/lib.rs` (+7 -16) 📝 `crates/native-tls/src/tests.rs` (+2 -0) 📝 `crates/proto/src/lib.rs` (+1 -1) 📝 `crates/proto/src/rr/domain/try_parse_ip.rs` (+7 -0) 📝 `crates/proto/src/tcp/tcp_client_stream.rs` (+4 -4) _...and 30 more files_ </details> ### 📄 Description This change is an attempt to remove the Background types from the Resolver. These create some indirection to handle spawns that occur in some of the IO connection handlers. The plan is to remove all spawns (the reason this object was needed) and make those part of the sending future. Might need a different strategy, we'll see. --- left to do: - [x] rename ClientFuture to AsyncClient - [x] complete removal of AsyncResolver Background - [x] remove all macro created Lookup futures that are unnecessary - [x] remove all unused Handle wrappers that are no longer used --- Fixes #891 Fixes #886 Fixes #888 --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-03-16 02:25:28 +03:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/hickory-dns#1789
No description provided.