aspire
aspire copied to clipboard
[WIP] Managed implementation of DNS resolver
Description
This PR brings in a C# implementation of a DNS resolver that is able to signal the TTL information together with the query results.
Main features
- Async network I/O, fully cancellable
- Mockable
- Resolves IP Addresses (A/AAAA records) and Service records (SRV + related A/AAAA)
- Transparent fallback to TCP
- Autodetection of OS settings (i.e. reads nameservers from /etc/resolv.conf file)
- Thread-safe
Checklist
- Is this feature complete?
- [ ] Yes. Ready to ship.
- [ ] No. Follow-up changes expected.
- Are you including unit tests for the changes and scenario tests if relevant?
- [x] Yes
- [ ] No
- Did you add public API?
- [ ] Yes
- If yes, did you have an API Review for it?
- [ ] Yes
- [ ] No
- Did you add
<remarks />and<code />elements on your triple slash comments?- [ ] Yes
- [ ] No
- If yes, did you have an API Review for it?
- [x] No
- [ ] Yes
- Does the change make any security assumptions or guarantees?
- [ ] Yes
- If yes, have you done a threat model and had a security review?
- [ ] Yes
- [ ] No
- If yes, have you done a threat model and had a security review?
- [ ] No
- [ ] Yes
- Does the change require an update in our Aspire docs?
- [ ] Yes
- Link to aspire-docs issue:
- [ ] No
- [ ] Yes