v0.3.1: Reuploaded to fix bugs
Bug Fixes:
- Fix a potential random crash on non-Windows platforms.
- Fix logical error for customizing rulesets and groups.
- Fix when subscription download timeout before complete, the parser will still try to parse downloaded content.
- Fix when processing duplicated node name for Surge, the program will crash.
- Fix when a request without User-Agent was received, the program will crash.
- Fix after generating a Clash Proxy Provider, the cached Clash base will be broken.
- Fix parsing error for some VMess subscriptions.
- Fix compatibility with some non-standard Shadowsocks and Shadowcsocks Android subscriptions.
- Fix missing keys and sections in Mellow configs.
- Fix Surge SSID groups not being correctly generated.
- Fix empty lines in rulesets not being removed.
- Fix a bug which may cause some comments in rulesets not being filtered.
- Fix when generating configurations with external configuration file with rule generator disabled, generated rules will still be added.
- Fix when list option is set to true, the program will still try to load groups and rulesets.
- Fix Emoji matching rules.
Add:
- Add an interface to directly convert Surge config to Clash config.
- Add support for importing snippets for some options in configuration files.
- Add an interface to provide local/remote rulesets for Surge/Quantumult X.
- Add converting rulesets to Quantumult X format and adding as remote filters.
- Add duplicate node name check for Quantumult(X) configuration files.
- Add token verification when using default_urls in API mode.
- Add support for extracting UserInfo from SSD subscriptions.
- Add support for configuration files in YAML format.
- Add Netease Music IP ruleset.
- Add support for data: URIs.
- Add more HTTP status code.
- Add SSID group example.
Changes:
- Change default configuration file to pref.ini and try to look for pref.yml.
- Change default working directory to where pref.ini is in.
- Change Quantumult X "url-test" equivalent to "available".
- Change default regex library to PCRE2.
- Update local rulesets and example configs.
- Update build scripts.
- Update Dockerfile.
- Update READMEs.
- Clean up codes.