Releases: daeuniverse/dae
v2.0.0rc1
Release date: 2026/04/23
Features
Warning
Release Candidate Notice: This release candidate is intended for users to try new features and provide feedback. It may include experimental functionality and breaking changes, so it is not recommended for production use.
- ci/docs/optimize/feature: Enhance control plane features and improve CI workflows by olicesx in #970 by (@MarksonHon)
Example Config: https://github.com/daeuniverse/dae/blob/v2.0.0rc1/example.dae
Full Changelog: v1.1.0...v2.0.0rc1
v1.1.0
Release date: 2026/04/23
Features
- optimize(bpf): Load separate programs for L2/L3 netdev in #822 by (@jschwinger233)
- feat(anytls): support anytls tcp&&udp in #852 by (@cubatic45)
- feat(outbound): support udphop for hysteria2 in #786 by (@LostAttractor)
- feat: add TLS fragmentation in #825 by (@null)
- feat(dns): support dns bind to local port in #878 by (@bradfordzhang)
- feat(dns): support tcp+udp schema for dns local bind in #885 by (@tomaegg)
- feat(control): add runtime traffic metrics and node latency probing in #968 by (@ksong008)
Bug Fixes
- fix(tproxy): refactor parse_transport and fix wrong ipv6 extension header offset calc in #844 by (@LostAttractor)
- fix(bpf): Fix bpf timer in #845 by (@jschwinger233)
- fix(outbound): Fix anytls dialer. in #865 by (@ppdragon16)
- fix(dns): fix dns bind issue when reload in #884 by (@bradfordzhang)
- fix: support absolute paths in include directive in #908 by (@tsx8)
- fix: Remove sockmap fast tcp redirect in #912 by (@jschwinger233)
- fix(tproxy): avoid conflicts with LAN ingress by filtering direct rou… in #925 by (@olicesx)
- fix(tproxy): re-apply fwmark on non-SYN TCP packets in LAN ingress in #939 by (@luhengsw)
Others
- ci(release): draft release v1.0.0 in #832 by (@dae-prow)
- chore(bpf): Cleanup dead bpf code in #842 by (@jschwinger233)
- docs(config): clarify domain rule comment in #834 by (@akiooo45)
- docs(AnyTLS): add AnyTLS doc in #856 by (@cubatic45)
- docs(user-guide): fix missing
chmodafter downloaded the sample config file and fix the link of release page in #860 by (@mozillazg) - ci(release): draft release v1.1.0rc1 in #898 by (@dae-prow)
- ci: Bump little-vm-helper: 0.0.23 -> 0.0.28 in #913 by (@jschwinger233)
- ci: use go 1.24 branch because go 1.25's issue#77217 in #931 by (@MarksonHon)
- chore: upgrade utls to 1.8.2 in #962 by (@Integral-Tech)
- ci/docs/optimize/feature: Enhance control plane features and improve CI workflows by olicesx in #970 by (@MarksonHon)
Example Config: https://github.com/daeuniverse/dae/blob/v1.1.0/example.dae
Full Changelog: v1.0.0...v1.1.0
New Contributors
v1.1.0rc1
Release date: 2025/11/03
Features
- optimize(bpf): Load separate programs for L2/L3 netdev in #822 by (@jschwinger233)
- feat(anytls): support anytls tcp&&udp in #852 by (@cubatic45)
- feat(outbound): support udphop for hysteria2 in #786 by (@LostAttractor)
- feat: add TLS fragmentation in #825 by (@null)
- feat(dns): support dns bind to local port in #878 by (@bradfordzhang)
- feat(dns): support tcp+udp schema for dns local bind in #885 by (@tomaegg)
Bug Fixes
- fix(tproxy): refactor parse_transport and fix wrong ipv6 extension header offset calc in #844 by (@LostAttractor)
- fix(bpf): Fix bpf timer in #845 by (@jschwinger233)
- fix(outbound): Fix anytls dialer. in #865 by (@ppdragon16)
- fix(dns): fix dns bind issue when reload in #884 by (@bradfordzhang)
Others
- ci(release): draft release v1.0.0 in #832 by (@dae-prow)
- chore(bpf): Cleanup dead bpf code in #842 by (@jschwinger233)
- docs(config): clarify domain rule comment in #834 by (@akiooo45)
- docs(AnyTLS): add AnyTLS doc in #856 by (@cubatic45)
- docs(user-guide): fix missing
chmodafter downloaded the sample config file and fix the link of release page in #860 by (@mozillazg)
Example Config: https://github.com/daeuniverse/dae/blob/v1.1.0rc1/example.dae
Full Changelog: v1.0.0...v1.1.0rc1
New Contributors
v1.0.0
Release date: 2025/05/30
Features
- feat: enhance privilege elevation logic in #722 by (@woshikedayaa)
- feat: subfile as sublink fallback in #726 by (@st0nie)
- feat: support link/ppp & link/tun in #746 by (@LostAttractor)
- feat: udp conntrack for lan interface in #699 by (@LostAttractor)
- feat(config): wildcard interface name support & refactor lazybind in #758 by (@LostAttractor)
- feat: add fallback DNS in #784 by (@LostAttractor)
Bug Fixes
- fix(trojan): websocket path loss in #727 by (@irort)
- fix(config): correct the truncation of process name(comm name) in #737 by (@xcpky)
- fix(config): correct the truncation of process name(comm name) in #738 by (@xcpky)
- fix: close of closed channel in #747 by (@cubercsl,mzz2017)
- fix: panic due to goroutine setting returned error in #748 by (@mzz2017)
- fix(hy2): memory leaking from RoundTrip in #752 by (@mzz2017)
- fix(bpf): Match pname as long as 16 bytes in #769 by (@jschwinger233)
- fix(bpf): Make bpf code compatible with clang-12 to clang-19 in #771 by (@jschwinger233)
- fix: must_rules cause entire match_set to become must. in #719 by (@LostAttractor)
- fix: revert wrongly merged go mod changes in #802 by (@LostAttractor)
- fix: solve the problem that DNS dialer not perform switching & udp traffic stucks in #782 by (@LostAttractor)
Others
- docs: disable Encrypted ClientHello to avoid affecting traffic split in #717 by (@sommio)
- ci(trigger-downstream-flake-sync): update sync-target branch in #716 by (@sumire88)
- ci: add new goarch in #720 by (@Integral-Tech)
- ci: add linux packages & minimize archive size in #721 by (@Integral-Tech)
- docs: add UDP support for Reality in #732 by (@woshikedayaa)
- docs: add Fedora Copr to installation guide in #733 by (@Integral-Tech)
- chore: upgrade quic-go to v0.49.0 in #743 by (@mzz2017)
- ci(kernel-test.yml): update checkout to v4.2 in #751 by (@MarksonHon)
- docs: add check command for fish shell in #744 by (@Bryan2333)
- ci(release): draft release v1.0.0rc1 in #756 by (@dae-prow)
- ci: add zip format for binary archives & adjust compression level in #757 by (@Integral-Tech)
- ci(release): draft release v1.0.0rc2 in #761 by (@dae-prow)
- docs: update minimum kernel version to 5.17 in #794 by (@Integral-Tech)
- docs: update archlinuxcn package name & add AVX2 package to AUR in #797 by (@Integral-Tech)
- ci(release): draft release v1.0.0rc3 in #808 by (@dae-prow)
- ci(bpf-test): Test bpf against llvm 15-19 in #811 by (@jschwinger233)
- chore(cmd/config): fix typos in #813 by (@wanlce)
- chore(license/copyright): update license signature in #820 by (@sumire88)
- docs(example): add fallback resolver in #829 by (@MarksonHon)
- docs(readme): remove legacy badge in #828 by (@sumire88)
- docs(example): remove duplicate fallback resolver in #830 by (@wanlce)
Example Config: https://github.com/daeuniverse/dae/blob/v1.0.0/example.dae
Full Changelog: v0.9.0...v1.0.0
New Contributors
v0.9.0
Release date: 2024/12/18
Features
- feat/optimize(hy2): support human-readable bandwidth configuration in #666 by (@douglarek)
- feat(dns): support DoH, DoT, DoH3, DoQ in #649 by (@EkkoG)
- optimize: reduce memory usage by reading kallsyms only in the trace command in #700 by (@seiuneko)
- feat(vision): support xudp in #708 by (@cubatic45)
Bug Fixes
- fix(routing): Fix MergeAndSortRulesOptimizer in #682 by (@jschwinger233)
- fix: update sources in
desc.goin #697 by (@emmanuel-ferdman) - fix: minimal upgrade panjf2000/ants dependency to v2.0.0 in #707 by (@cospotato)
- fix: add risc-v vmlinux headers in submodules (#696) in #706 by (@Integral-Tech)
Others
- ci(workflows/bpf-test): add BPF test to cover route logic in #671 by (@jschwinger233)
- refactor/optimize(bpf): rework bpf route with bpf_loop in #580 by (@mzz2017)
- docs(dns): add docs for #649 in #687 by (@EkkoG)
- docs(dns): fix typo in #688 by (@EkkoG)
- ci(release): draft release v0.9.0rc1 in #690 by (@dae-prow)
- ci(release): draft release v0.9.0rc2 in #705 by (@dae-prow)
- chore: more detail of Choose DNS path log in #692 by (@EkkoG)
- docs(run-on-alpine.md): update for Alpine's kernel changes in #712 by (@MarksonHon)
Example Config: https://github.com/daeuniverse/dae/blob/v0.9.0/example.dae
Full Changelog: v0.8.0...v0.9.0
New Contributors
- @seiuneko made their first contribution in #700
- @cubatic45 made their first contribution in #708
v0.8.0
Release date: 2024/10/11
Features
- feat: add sysdump as subcommand in #572 by (@linglilongyi)
- optimize(bpf): Use direct packet access in #562 by (@jschwinger233)
- feat(cmd): shell completion subcommand in #576 by (@zzzsyyy)
- optimize(bpf): Alternative way to avoid parsing packet at dae0 in #600 by (@jschwinger233)
- feat: add MPTCP support in #601 by (@AkinoKaede)
- feat: support ipip tunnel as lan/wan interface in #615 by (@pcmid)
- feat(dialer): support reality (without udp support) in #573 by (@mzz2017)
- optimize: replace c arithmetic operators with bitwise ones in #628 by (@Integral-Tech)
- feat: allow group override global node connectivity check in #623 by (@KagurazakaNyaa)
- feat: support bandwidth configuration in #645 by (@mnixry)
- feat(trace): add drop-only option in #632 by (@linglilongyi)
Bug Fixes
- fix/chore(hy2): update outbound submodule to fix userpass auth in #550 by (@mzz2017)
- fix(udp_task_pool): panic: close of closed channel in #570 by (@mzz2017)
- fix: unknown tls implementation in #569 by (@mzz2017)
- fix: cannot sniff tls fragments in #555 by (@mzz2017)
- fix(cmd/run.go): always check whether network online in #588 by (@MarksonHon)
- patch: revert: refactor: improve code readability of struct initialization in #637 by (@mzz2017)
- fix: compatible issue when DNS msg not be compressed in #646 by (@EkkoG)
- fix(sniffer): remove useless EOF warning logs printing in #650 by (@douglarek)
- fix(vless): allow empty flow as ordinary tls in #652 by (@mzz2017)
- fix: crash on openwrt in #640 by (@mzz2017)
- fix(hy2): dialer regression introduced by #645 pr in #663 by (@douglarek)
- fix: unknown type due to dae-wing fixed policy in #582 by (@wanlce)
- fix: connection leaks in #624 by (@mzz2017)
Others
- ci(release): draft release v0.7.0rc1 in #545 by (@dae-prow)
- ci(prerelease): fix go version ref in #546 by (@sumire88)
- ci: update action-gh-release to v2 in #547 by (@MarksonHon)
- docs(protocols): add hysteria2 in #558 by (@wanlce)
- docs: Update build-by-yourself.md in #561 by (@linglilongyi)
- docs: persistent subscription in #577 by (@st0nie)
- ci(release): draft release v0.8.0rc1 in #585 by (@dae-prow)
- chore(example.dae): add hy2 in comments in #605 by (@4860575)
- chore(changelogs): add v0.7.1 release changelogs in #609 by (@sumire88)
- ci: add trigger-downstream-flake-sync workflow in #612 by (@sumire88)
- ci/fix(trigger-downstream-flake-sync): update dispatch target in #613 by (@sumire88)
- docs: update persistent script in #603 by (@st0nie)
- docs: add reality tcp support to proxy-protocols in #627 by (@Integral-Tech)
- refactor: remove redundant assignments in #634 by (@Integral-Tech)
- refactor: improve code readability of struct initialization in #633 by (@Integral-Tech)
- refactor: reuse existing functions & format code in #641 by (@Integral-Tech)
- docs: add linux-aarch64-7ji as recommended kernel for Arch Linux ARM in #648 by (@Integral-Tech)
- chore(changelogs): include v0.7.2 changelogs in #653 by (@sumire88)
- ci(release): draft release v0.8.0rc2 in #655 by (@dae-prow)
- chore: fix go.mod for v0.7.2 in #656 by (@mzz2017)
- chore(changelogs): add v0.7.3 changelogs in #658 by (@sumire88)
- ci(workflows/{prerelease,release}): force checkout to specific tag in #660 by (@sumire88)
- chore(changelogs): add v0.7.4 changelogs in #659 by (@sumire88)
- docs: Google DNS should use dns.google instead of dns.google.com in #664 by (@EkkoG)
Example Config: https://github.com/daeuniverse/dae/blob/v0.8.0/example.dae
Full Changelog: v0.7.0...v0.8.0
New Contributors
- @4860575 made their first contribution in #605
- @KagurazakaNyaa made their first contribution in #623