Fix trying to fetch a ruleset when adding it as a RULE-SET rule to configuration files.
Add URL Decode to username and password field in Telegram-link-style HTTP/Socks 5 links.
Add more function callbacks to template renderer.
Add basic Jinja2Cpp template library support.
INIReader: Add keeping comments and blank lines in direct-save sections.
Fix inconsistent argument name in HTTP and Socks 5 single link.
Fix support for some non-standard ShadowsocksD subscription.
Fix include/exclude option in URL argument not overriding former settings.
Fix template system interpreting some comments in YAML files as line statement.
inja: re-implement variable accessing to catch exceptions on using not-exist variable and return an empty value.
Optimize codes.
Fix broken /sub2clashr and /surge2clash interface.
Add template support for base configurations.
Add support for exporting HTTP/Socks 5 nodes to Quantumult configurations.
Add support for VMess HTTP nodes in Clash configurations.
Optimize codes.
Fix TLS settings missing when parsing Clash configurations.
Add support for adding route settings to Shadowsocks Android subscriptions.
Add serve_cache_on_fetch_fail option to determine whether to serve cached content when failed to download a file.
Optimize codes.
Fix compiler warnings.
Add group type fallback when only one node is found for an auto group in Quantumult(X) configuration.
Tweak default Emoji rules.
Optimize codes.
Fix failed to load external configuration when enable_rule_generator or overwrite_original_rules is missing in YAML format configuration.
Optimize codes.
Fix not processing quotes in ws-headers in Surge VMess configurations.
Fix when default_url is set and insert_url is not set in YAML configuration and access /sub without url argument, the nodes in default_url will be added twice.
Add /version interface to compatible with some front-end.