Bugs fixed:
- Fix wrong flag identification When converting Nigeria node (#654)
- Fix request arguments not properly handled (#661)
- Fix a typo which cause the server to hang
- Fix bad conversion of DOMAIN-SUFFIX rules when generating Surge DOMAIN-SET (#667)
- Fix proxy type missing when append_proxy_type is enabled for Quantumult X configs
- Fix crash if name argument is missing in getProfile interface
- Fix bad webGet retry logic
- Fix implementation of str_icase_map for HTTP headers
- Fix missing classical rulesets when exporting Clash configs with expand=false (#715)
- Fix implementation of getting random string (#726)
- Do not add check-interval and tolerance to SSID groups in QuanX configs (#718)
Newly added:
- Add support for WireGuard nodes in Clash, Surge and Loon configs
- Add support for generating sing-box configs and exporting node list in sing-box format
- Add option to enable reload pref config on request
- Add support for parsing authentication info in SOCKS5 links (#652)
- Add Shadowsocks-2022 ciphers (#564)
- Add no-resolve to generated Clash rule-set if exists (#679)
- Add UA of Clash Verge to auto target (#713)
- Read template_args from root in TOML preferences (#717)
- Support setting output style for proxy groups in Clash configs (#734)
- Add macOS ARM build
Other changes:
- Use cpp-httplib as web server
- Optimize codes
- Use Host as SNI field if exists in Surge configs (#674)
- Print curl verbose logs with standard format
- Change thread id in logs to thread name
- Optimize generation of rule contents
- Set most node_pref settings to indeterminate by default (#728)
- Make max_workers work for httplib