feat(rust): add Rust-based DNS server backend with IPC management and TypeScript bridge
This commit is contained in:
10
changelog.md
10
changelog.md
@@ -1,5 +1,15 @@
|
||||
# Changelog
|
||||
|
||||
## 2026-02-11 - 7.7.0 - feat(rust)
|
||||
add Rust-based DNS server backend with IPC management and TypeScript bridge
|
||||
|
||||
- Adds a new rust/ workspace with crates: rustdns, rustdns-protocol, rustdns-server, rustdns-dnssec (DNS packet parsing/encoding, UDP/HTTPS servers, DNSSEC signing).
|
||||
- Implements an IPC management loop and command/event protocol (stdin/stdout) for communication between Rust and TypeScript (ipc_types, management).
|
||||
- Introduces DnsResolver and DNSSEC key/signing logic in Rust (keys, signing, keytag), plus UDP and DoH HTTPS server implementations.
|
||||
- Adds a TypeScript Rust bridge (ts_server/classes.rustdnsbridge.ts) using @push.rocks/smartrust to spawn and talk to the Rust binary; exposes spawn/start/stop/processPacket/ping APIs.
|
||||
- Removes JS-based DNSSEC implementation and updates ts_server plugins to use smartrust; adds tsrust integration and tsrust devDependency and build step in package.json.
|
||||
- Documentation and tooling: README updated with Rust backend architecture, .gitignore updated for rust/target, Cargo config for cross-compile linker added.
|
||||
|
||||
## 2025-09-12 - 7.6.1 - fix(classes.dnsclient)
|
||||
Remove redundant DOH response parsing in getRecords to avoid duplicate processing and clean up client code
|
||||
|
||||
|
||||
Reference in New Issue
Block a user