Forwarded from Surge's Changelog
#Mac #Beta
Version 5.7.0-2694
### New Feature
- Smart Policy Group. Check the community documentation to learn more: https://community.nssurge.com/d/2536-smart-policy-group
Version 5.7.0-2694
### New Feature
- Smart Policy Group. Check the community documentation to learn more: https://community.nssurge.com/d/2536-smart-policy-group
Forwarded from Surge's Changelog
#Mac #Beta
Version 5.7.0-2695
### New Feature
- Smart Policy Group. Check the community documentation to learn more: https://community.nssurge.com/d/2536-smart-policy-group
Version 5.7.0-2695
### New Feature
- Smart Policy Group. Check the community documentation to learn more: https://community.nssurge.com/d/2536-smart-policy-group
Forwarded from Surge's Changelog
#iOS #TestFlight
Surge 5 5.21.0 (3151) is ready to test on iOS.
What to Test:
- 规则系统整体性能优化
- µs 时间改为 ms 的小数方式表示
- 大幅优化大型域名规则集中的索引算法,测试环境下,对包含 310000 条规则的规则集进行测试(50% hit rate)
旧版本:2.167 ms
新版本:0.058 ms
- 修正规则集内的逻辑规则的子规则无法被规则集的 no-resolve 和 extended-matching 参数覆盖的问题
Surge 5 5.21.0 (3151) is ready to test on iOS.
What to Test:
- 规则系统整体性能优化
- µs 时间改为 ms 的小数方式表示
- 大幅优化大型域名规则集中的索引算法,测试环境下,对包含 310000 条规则的规则集进行测试(50% hit rate)
旧版本:2.167 ms
新版本:0.058 ms
- 修正规则集内的逻辑规则的子规则无法被规则集的 no-resolve 和 extended-matching 参数覆盖的问题
Forwarded from Surge's Changelog
#iOS #TestFlight
Surge 5 5.21.0 (3151) is ready to test on iOS.
What to Test:
- 规则系统整体性能优化
- µs 时间改为 ms 的小数方式表示
- 大幅优化大型域名规则集中的索引算法,测试环境下,对包含 310000 条规则的规则集进行测试(50% hit rate)
旧版本:2.167 ms
新版本:0.058 ms
- 修正规则集内的逻辑规则的子规则无法被规则集的 no-resolve 和 extended-matching 参数覆盖的问题
Surge 5 5.21.0 (3151) is ready to test on iOS.
What to Test:
- 规则系统整体性能优化
- µs 时间改为 ms 的小数方式表示
- 大幅优化大型域名规则集中的索引算法,测试环境下,对包含 310000 条规则的规则集进行测试(50% hit rate)
旧版本:2.167 ms
新版本:0.058 ms
- 修正规则集内的逻辑规则的子规则无法被规则集的 no-resolve 和 extended-matching 参数覆盖的问题
Forwarded from Surge's Changelog
#iOS #TestFlight
Surge 5 5.21.0 (3155) is ready to test on iOS.
What to Test:
- 𖠔UN p 𧽼
- urge
-
Surge 5 5.21.0 (3155) is ready to test on iOS.
What to Test:
- 𖠔UN p 𧽼
- urge
-
Forwarded from Surge's Changelog
#Mac #Beta
Version 5.7.0-2697
### New Feature
- Smart Policy Group. Check the community documentation to learn more: https://community.nssurge.com/d/2536-smart-policy-group
Version 5.7.0-2697
### New Feature
- Smart Policy Group. Check the community documentation to learn more: https://community.nssurge.com/d/2536-smart-policy-group
Forwarded from Surge's Changelog
#iOS #TestFlight
Surge 5 5.21.0 (3156) is ready to test on iOS.
What to Test:
- 新增低内存模式,在内存用量到达 40MB 以上后将降低减少内存用量,避免超限
- 修正 WireGuard 配置修改后需要重启才可以被应用的问题
5.11.0 RC1
Surge 5 5.21.0 (3156) is ready to test on iOS.
What to Test:
- 新增低内存模式,在内存用量到达 40MB 以上后将降低减少内存用量,避免超限
- 修正 WireGuard 配置修改后需要重启才可以被应用的问题
5.11.0 RC1
Forwarded from Surge's Changelog
#Mac #Beta
Version 5.7.0-2698
### Smart Group
This is a new type of policy group, driven by our carefully designed algorithm engine, which can automatically select the appropriate policy from the sub-policies of this policy group. The goal of the Smart policy group is to replace the original automatic testing groups (url/load-balance/fallback), greatly optimizing the experience while minimizing the need for manual intervention in policy groups. Users only need to put the available policies into this group.
For details, see: https://kb.nssurge.com/surge-knowledge-base/guidelines/smart-group
### Rule System
- Overall performance optimization of the rule system.
- Significant optimization of the indexing algorithm in large domain rule sets, improving the search efficiency by more than ten times for rule sets with more than 100,000 rules.
- Corrected the issue where sub-rules of logical rules within a rule set could not be covered by the
- Added a new rule type
-
### IPv6
- The behavior of the
- Added a warning for the
- Adjusted the automatic retry mechanism. Accessing IPv6 addresses in a non-IPv6 network will no longer enter the retry process, and the request will fail immediately (solving the problem of some applications stalling when IPv6 VIF is enabled in a non-IPv6 environment, but the application will still continue to send IPv6 requests).
### Other Optimizations
- Enhanced
- Optimized WireGuard failure handling.
- Reduced the power consumption of the TUIC protocol during sleep.
- Improved the precision of time statistics in the request log system, now accurate to µs level.
- Optimized various abnormal retry mechanisms, avoiding high resource usage caused by continuous retry in the face of some specific problems. For operations that need to be retried continuously (such as WireGuard reconnection, Ponte server reporting to iCloud), Surge will now retry after 0.1s, 0.5s, 1s, 5s, 10s, 30s after an error.
- Optimized the caching system for external resources.
- Added the profile line modifier
### Minor Adjustments
- Limited the length of logs that can be written to request notes in debug mode by scripts.
- Changed the default UDP test target to 1.0.0.1.
- If incorrect types of fields are passed when using API in scripts, it will result in script errors.
- After the script is completed or times out, unfinished $httpClient will no longer call the callback function.
### Issue Fixes
- Fixed the issue where the HTTP Body captured from remote devices could not be read in the Dashboard.
- Fixed the problem where Header Rewrite rules could not match URLs based on the Host field.
- Corrected the issue where ip-version and tos parameters could not take effect when testing proxies.
- Fixed the crash issue caused by mistakenly passing null when executing scripts via HTTP-API.
Version 5.7.0-2698
### Smart Group
This is a new type of policy group, driven by our carefully designed algorithm engine, which can automatically select the appropriate policy from the sub-policies of this policy group. The goal of the Smart policy group is to replace the original automatic testing groups (url/load-balance/fallback), greatly optimizing the experience while minimizing the need for manual intervention in policy groups. Users only need to put the available policies into this group.
For details, see: https://kb.nssurge.com/surge-knowledge-base/guidelines/smart-group
### Rule System
- Overall performance optimization of the rule system.
- Significant optimization of the indexing algorithm in large domain rule sets, improving the search efficiency by more than ten times for rule sets with more than 100,000 rules.
- Corrected the issue where sub-rules of logical rules within a rule set could not be covered by the
no-resolve and extended-matching parameters of the rule set.- Added a new rule type
DOMAIN-WILDCARD, supporting ? and * domain name matching.-
DOMAIN-SET and RULE-SET are changed to strict validation. If there are invalid lines in the file, the entire rule set will be invalidated to avoid problems caused by misuse.### IPv6
- The behavior of the
ipv6-vif parameter has been modified. When set to always, IPv6 functionality will be enabled even if ipv6=true is not set.- Added a warning for the
ipv6-vif=always parameter.- Adjusted the automatic retry mechanism. Accessing IPv6 addresses in a non-IPv6 network will no longer enter the retry process, and the request will fail immediately (solving the problem of some applications stalling when IPv6 VIF is enabled in a non-IPv6 environment, but the application will still continue to send IPv6 requests).
### Other Optimizations
- Enhanced
$notification.post, adding support for media resources, sound hints, and automatic dismissal.- Optimized WireGuard failure handling.
- Reduced the power consumption of the TUIC protocol during sleep.
- Improved the precision of time statistics in the request log system, now accurate to µs level.
- Optimized various abnormal retry mechanisms, avoiding high resource usage caused by continuous retry in the face of some specific problems. For operations that need to be retried continuously (such as WireGuard reconnection, Ponte server reporting to iCloud), Surge will now retry after 0.1s, 0.5s, 1s, 5s, 10s, 30s after an error.
- Optimized the caching system for external resources.
- Added the profile line modifier
#!REQUIREMENT.### Minor Adjustments
- Limited the length of logs that can be written to request notes in debug mode by scripts.
- Changed the default UDP test target to 1.0.0.1.
- If incorrect types of fields are passed when using API in scripts, it will result in script errors.
- After the script is completed or times out, unfinished $httpClient will no longer call the callback function.
### Issue Fixes
- Fixed the issue where the HTTP Body captured from remote devices could not be read in the Dashboard.
- Fixed the problem where Header Rewrite rules could not match URLs based on the Host field.
- Corrected the issue where ip-version and tos parameters could not take effect when testing proxies.
- Fixed the crash issue caused by mistakenly passing null when executing scripts via HTTP-API.
Forwarded from Surge's Changelog
#tvOS #TestFlight
Surge 5 5.21.0 (3159) is ready to test on tvOS.
What to Test:
- 同步 iOS 版本更新
5.11.0 RC1
Surge 5 5.21.0 (3159) is ready to test on tvOS.
What to Test:
- 同步 iOS 版本更新
5.11.0 RC1
Forwarded from Surge's Changelog
#Mac #Beta
Version 5.7.0-2699
### Smart Group
This is a new type of policy group, driven by our carefully designed algorithm engine, which can automatically select the appropriate policy from the sub-policies of this policy group. The goal of the Smart policy group is to replace the original automatic testing groups (url/load-balance/fallback), greatly optimizing the experience while minimizing the need for manual intervention in policy groups. Users only need to put the available policies into this group.
For details, see: https://kb.nssurge.com/surge-knowledge-base/guidelines/smart-group
### Rule System
- Overall performance optimization of the rule system.
- Significant optimization of the indexing algorithm in large domain rule sets, improving the search efficiency by more than ten times for rule sets with more than 100,000 rules.
- Corrected the issue where sub-rules of logical rules within a rule set could not be covered by the
- Added a new rule type
-
### IPv6
- The behavior of the
- Added a warning for the
- Adjusted the automatic retry mechanism. Accessing IPv6 addresses in a non-IPv6 network will no longer enter the retry process, and the request will fail immediately (solving the problem of some applications stalling when IPv6 VIF is enabled in a non-IPv6 environment, but the application will still continue to send IPv6 requests).
### Other Optimizations
- Enhanced
- Optimized WireGuard failure handling.
- Reduced the power consumption of the TUIC protocol during sleep.
- Improved the precision of time statistics in the request log system, now accurate to µs level.
- Optimized various abnormal retry mechanisms, avoiding high resource usage caused by continuous retry in the face of some specific problems. For operations that need to be retried continuously (such as WireGuard reconnection, Ponte server reporting to iCloud), Surge will now retry after 0.1s, 0.5s, 1s, 5s, 10s, 30s after an error.
- Optimized the caching system for external resources.
- Added the profile line modifier
### Minor Adjustments
- Limited the length of logs that can be written to request notes in debug mode by scripts.
- Changed the default UDP test target to 1.0.0.1.
- If incorrect types of fields are passed when using API in scripts, it will result in script errors.
- After the script is completed or times out, unfinished $httpClient will no longer call the callback function.
### Issue Fixes
- Fixed the issue where the HTTP Body captured from remote devices could not be read in the Dashboard.
- Fixed the problem where Header Rewrite rules could not match URLs based on the Host field.
- Corrected the issue where ip-version and tos parameters could not take effect when testing proxies.
- Fixed the crash issue caused by mistakenly passing null when executing scripts via HTTP-API.
Version 5.7.0-2699
### Smart Group
This is a new type of policy group, driven by our carefully designed algorithm engine, which can automatically select the appropriate policy from the sub-policies of this policy group. The goal of the Smart policy group is to replace the original automatic testing groups (url/load-balance/fallback), greatly optimizing the experience while minimizing the need for manual intervention in policy groups. Users only need to put the available policies into this group.
For details, see: https://kb.nssurge.com/surge-knowledge-base/guidelines/smart-group
### Rule System
- Overall performance optimization of the rule system.
- Significant optimization of the indexing algorithm in large domain rule sets, improving the search efficiency by more than ten times for rule sets with more than 100,000 rules.
- Corrected the issue where sub-rules of logical rules within a rule set could not be covered by the
no-resolve and extended-matching parameters of the rule set.- Added a new rule type
DOMAIN-WILDCARD, supporting ? and * domain name matching.-
DOMAIN-SET and RULE-SET are changed to strict validation. If there are invalid lines in the file, the entire rule set will be invalidated to avoid problems caused by misuse.### IPv6
- The behavior of the
ipv6-vif parameter has been modified. When set to always, IPv6 functionality will be enabled even if ipv6=true is not set.- Added a warning for the
ipv6-vif=always parameter.- Adjusted the automatic retry mechanism. Accessing IPv6 addresses in a non-IPv6 network will no longer enter the retry process, and the request will fail immediately (solving the problem of some applications stalling when IPv6 VIF is enabled in a non-IPv6 environment, but the application will still continue to send IPv6 requests).
### Other Optimizations
- Enhanced
$notification.post, adding support for media resources, sound hints, and automatic dismissal.- Optimized WireGuard failure handling.
- Reduced the power consumption of the TUIC protocol during sleep.
- Improved the precision of time statistics in the request log system, now accurate to µs level.
- Optimized various abnormal retry mechanisms, avoiding high resource usage caused by continuous retry in the face of some specific problems. For operations that need to be retried continuously (such as WireGuard reconnection, Ponte server reporting to iCloud), Surge will now retry after 0.1s, 0.5s, 1s, 5s, 10s, 30s after an error.
- Optimized the caching system for external resources.
- Added the profile line modifier
#!REQUIREMENT.### Minor Adjustments
- Limited the length of logs that can be written to request notes in debug mode by scripts.
- Changed the default UDP test target to 1.0.0.1.
- If incorrect types of fields are passed when using API in scripts, it will result in script errors.
- After the script is completed or times out, unfinished $httpClient will no longer call the callback function.
### Issue Fixes
- Fixed the issue where the HTTP Body captured from remote devices could not be read in the Dashboard.
- Fixed the problem where Header Rewrite rules could not match URLs based on the Host field.
- Corrected the issue where ip-version and tos parameters could not take effect when testing proxies.
- Fixed the crash issue caused by mistakenly passing null when executing scripts via HTTP-API.
Forwarded from Surge's Changelog
#iOS #TestFlight
Surge 5 5.21.0 (3160) is ready to test on iOS.
What to Test:
- 文案补全
- 优化规则集重索引的时机
- 在使用自动配置升级前,备份当前配置
5.11.0 RC2
Surge 5 5.21.0 (3160) is ready to test on iOS.
What to Test:
- 文案补全
- 优化规则集重索引的时机
- 在使用自动配置升级前,备份当前配置
5.11.0 RC2
Forwarded from Surge's Changelog
#tvOS #TestFlight
Surge 5 5.21.0 (3161) is ready to test on tvOS.
What to Test:
- 修正规则集无法更新的问题(大于 1MB 的规则集需要打开主程序完成索引后才可使用)
5.11.0 RC2
Surge 5 5.21.0 (3161) is ready to test on tvOS.
What to Test:
- 修正规则集无法更新的问题(大于 1MB 的规则集需要打开主程序完成索引后才可使用)
5.11.0 RC2
Forwarded from Surge's Changelog
#Mac #Beta
Version 5.7.0-2701
### Smart Group
This is a new type of policy group, driven by our carefully designed algorithm engine, which can automatically select the appropriate policy from the sub-policies of this policy group. The goal of the Smart policy group is to replace the original automatic testing groups (url/load-balance/fallback), greatly optimizing the experience while minimizing the need for manual intervention in policy groups. Users only need to put the available policies into this group.
For details, see: https://kb.nssurge.com/surge-knowledge-base/guidelines/smart-group
### Rule System
- Overall performance optimization of the rule system.
- Significant optimization of the indexing algorithm in large domain rule sets, improving the search efficiency by more than ten times for rule sets with more than 100,000 rules.
- Corrected the issue where sub-rules of logical rules within a rule set could not be covered by the
- Added a new rule type
-
### IPv6
- The behavior of the
- Added a warning for the
- Adjusted the automatic retry mechanism. Accessing IPv6 addresses in a non-IPv6 network will no longer enter the retry process, and the request will fail immediately (solving the problem of some applications stalling when IPv6 VIF is enabled in a non-IPv6 environment, but the application will still continue to send IPv6 requests).
### Other Optimizations
- Enhanced
- Optimized WireGuard failure handling.
- Reduced the power consumption of the TUIC protocol during sleep.
- Improved the precision of time statistics in the request log system, now accurate to µs level.
- Optimized various abnormal retry mechanisms, avoiding high resource usage caused by continuous retry in the face of some specific problems. For operations that need to be retried continuously (such as WireGuard reconnection, Ponte server reporting to iCloud), Surge will now retry after 0.1s, 0.5s, 1s, 5s, 10s, 30s after an error.
- Optimized the caching system for external resources.
- Added the profile line modifier
### Minor Adjustments
- Limited the length of logs that can be written to request notes in debug mode by scripts.
- Changed the default UDP test target to 1.0.0.1.
- If incorrect types of fields are passed when using API in scripts, it will result in script errors.
- After the script is completed or times out, unfinished $httpClient will no longer call the callback function.
### Issue Fixes
- Fixed the issue where the HTTP Body captured from remote devices could not be read in the Dashboard.
- Fixed the problem where Header Rewrite rules could not match URLs based on the Host field.
- Corrected the issue where ip-version and tos parameters could not take effect when testing proxies.
- Fixed the crash issue caused by mistakenly passing null when executing scripts via HTTP-API.
Version 5.7.0-2701
### Smart Group
This is a new type of policy group, driven by our carefully designed algorithm engine, which can automatically select the appropriate policy from the sub-policies of this policy group. The goal of the Smart policy group is to replace the original automatic testing groups (url/load-balance/fallback), greatly optimizing the experience while minimizing the need for manual intervention in policy groups. Users only need to put the available policies into this group.
For details, see: https://kb.nssurge.com/surge-knowledge-base/guidelines/smart-group
### Rule System
- Overall performance optimization of the rule system.
- Significant optimization of the indexing algorithm in large domain rule sets, improving the search efficiency by more than ten times for rule sets with more than 100,000 rules.
- Corrected the issue where sub-rules of logical rules within a rule set could not be covered by the
no-resolve and extended-matching parameters of the rule set.- Added a new rule type
DOMAIN-WILDCARD, supporting ? and * domain name matching.-
DOMAIN-SET and RULE-SET are changed to strict validation. If there are invalid lines in the file, the entire rule set will be invalidated to avoid problems caused by misuse.### IPv6
- The behavior of the
ipv6-vif parameter has been modified. When set to always, IPv6 functionality will be enabled even if ipv6=true is not set.- Added a warning for the
ipv6-vif=always parameter.- Adjusted the automatic retry mechanism. Accessing IPv6 addresses in a non-IPv6 network will no longer enter the retry process, and the request will fail immediately (solving the problem of some applications stalling when IPv6 VIF is enabled in a non-IPv6 environment, but the application will still continue to send IPv6 requests).
### Other Optimizations
- Enhanced
$notification.post, adding support for media resources, sound hints, and automatic dismissal.- Optimized WireGuard failure handling.
- Reduced the power consumption of the TUIC protocol during sleep.
- Improved the precision of time statistics in the request log system, now accurate to µs level.
- Optimized various abnormal retry mechanisms, avoiding high resource usage caused by continuous retry in the face of some specific problems. For operations that need to be retried continuously (such as WireGuard reconnection, Ponte server reporting to iCloud), Surge will now retry after 0.1s, 0.5s, 1s, 5s, 10s, 30s after an error.
- Optimized the caching system for external resources.
- Added the profile line modifier
#!REQUIREMENT.### Minor Adjustments
- Limited the length of logs that can be written to request notes in debug mode by scripts.
- Changed the default UDP test target to 1.0.0.1.
- If incorrect types of fields are passed when using API in scripts, it will result in script errors.
- After the script is completed or times out, unfinished $httpClient will no longer call the callback function.
### Issue Fixes
- Fixed the issue where the HTTP Body captured from remote devices could not be read in the Dashboard.
- Fixed the problem where Header Rewrite rules could not match URLs based on the Host field.
- Corrected the issue where ip-version and tos parameters could not take effect when testing proxies.
- Fixed the crash issue caused by mistakenly passing null when executing scripts via HTTP-API.
Forwarded from Surge's Changelog
#tvOS #TestFlight
Surge 5 5.21.0 (3165) is ready to test on tvOS.
What to Test:
- 修正规则集索引建立的相关问题,现在小于 1MB 的规则集可以不由主程序完成索引
5.11.0 RC3
Surge 5 5.21.0 (3165) is ready to test on tvOS.
What to Test:
- 修正规则集索引建立的相关问题,现在小于 1MB 的规则集可以不由主程序完成索引
5.11.0 RC3
Forwarded from Surge's Changelog
#iOS #TestFlight
Surge 5 5.21.0 (3164) is ready to test on iOS.
What to Test:
- 修正规则集索引建立的相关问题,现在小于 1MB 的规则集可以不由主程序完成索引
5.11.0 RC3
Surge 5 5.21.0 (3164) is ready to test on iOS.
What to Test:
- 修正规则集索引建立的相关问题,现在小于 1MB 的规则集可以不由主程序完成索引
5.11.0 RC3
Forwarded from Surge's Changelog
#Mac #Beta
Version 5.7.0-2702
### Smart Group
This is a new type of policy group, driven by our carefully designed algorithm engine, which can automatically select the appropriate policy from the sub-policies of this policy group. The goal of the Smart policy group is to replace the original automatic testing groups (url/load-balance/fallback), greatly optimizing the experience while minimizing the need for manual intervention in policy groups. Users only need to put the available policies into this group.
For details, see: https://kb.nssurge.com/surge-knowledge-base/guidelines/smart-group
### Rule System
- Overall performance optimization of the rule system.
- Significant optimization of the indexing algorithm in large domain rule sets, improving the search efficiency by more than ten times for rule sets with more than 100,000 rules.
- Corrected the issue where sub-rules of logical rules within a rule set could not be covered by the
- Added a new rule type
-
### IPv6
- The behavior of the
- Added a warning for the
- Adjusted the automatic retry mechanism. Accessing IPv6 addresses in a non-IPv6 network will no longer enter the retry process, and the request will fail immediately (solving the problem of some applications stalling when IPv6 VIF is enabled in a non-IPv6 environment, but the application will still continue to send IPv6 requests).
### Other Optimizations
- Enhanced
- Optimized WireGuard failure handling.
- Reduced the power consumption of the TUIC protocol during sleep.
- Improved the precision of time statistics in the request log system, now accurate to µs level.
- Optimized various abnormal retry mechanisms, avoiding high resource usage caused by continuous retry in the face of some specific problems. For operations that need to be retried continuously (such as WireGuard reconnection, Ponte server reporting to iCloud), Surge will now retry after 0.1s, 0.5s, 1s, 5s, 10s, 30s after an error.
- Optimized the caching system for external resources.
- Added the profile line modifier
### Minor Adjustments
- Limited the length of logs that can be written to request notes in debug mode by scripts.
- Changed the default UDP test target to 1.0.0.1.
- If incorrect types of fields are passed when using API in scripts, it will result in script errors.
- After the script is completed or times out, unfinished $httpClient will no longer call the callback function.
### Issue Fixes
- Fixed the issue where the HTTP Body captured from remote devices could not be read in the Dashboard.
- Fixed the problem where Header Rewrite rules could not match URLs based on the Host field.
- Corrected the issue where ip-version and tos parameters could not take effect when testing proxies.
- Fixed the crash issue caused by mistakenly passing null when executing scripts via HTTP-API.
Version 5.7.0-2702
### Smart Group
This is a new type of policy group, driven by our carefully designed algorithm engine, which can automatically select the appropriate policy from the sub-policies of this policy group. The goal of the Smart policy group is to replace the original automatic testing groups (url/load-balance/fallback), greatly optimizing the experience while minimizing the need for manual intervention in policy groups. Users only need to put the available policies into this group.
For details, see: https://kb.nssurge.com/surge-knowledge-base/guidelines/smart-group
### Rule System
- Overall performance optimization of the rule system.
- Significant optimization of the indexing algorithm in large domain rule sets, improving the search efficiency by more than ten times for rule sets with more than 100,000 rules.
- Corrected the issue where sub-rules of logical rules within a rule set could not be covered by the
no-resolve and extended-matching parameters of the rule set.- Added a new rule type
DOMAIN-WILDCARD, supporting ? and * domain name matching.-
DOMAIN-SET and RULE-SET are changed to strict validation. If there are invalid lines in the file, the entire rule set will be invalidated to avoid problems caused by misuse.### IPv6
- The behavior of the
ipv6-vif parameter has been modified. When set to always, IPv6 functionality will be enabled even if ipv6=true is not set.- Added a warning for the
ipv6-vif=always parameter.- Adjusted the automatic retry mechanism. Accessing IPv6 addresses in a non-IPv6 network will no longer enter the retry process, and the request will fail immediately (solving the problem of some applications stalling when IPv6 VIF is enabled in a non-IPv6 environment, but the application will still continue to send IPv6 requests).
### Other Optimizations
- Enhanced
$notification.post, adding support for media resources, sound hints, and automatic dismissal.- Optimized WireGuard failure handling.
- Reduced the power consumption of the TUIC protocol during sleep.
- Improved the precision of time statistics in the request log system, now accurate to µs level.
- Optimized various abnormal retry mechanisms, avoiding high resource usage caused by continuous retry in the face of some specific problems. For operations that need to be retried continuously (such as WireGuard reconnection, Ponte server reporting to iCloud), Surge will now retry after 0.1s, 0.5s, 1s, 5s, 10s, 30s after an error.
- Optimized the caching system for external resources.
- Added the profile line modifier
#!REQUIREMENT.### Minor Adjustments
- Limited the length of logs that can be written to request notes in debug mode by scripts.
- Changed the default UDP test target to 1.0.0.1.
- If incorrect types of fields are passed when using API in scripts, it will result in script errors.
- After the script is completed or times out, unfinished $httpClient will no longer call the callback function.
### Issue Fixes
- Fixed the issue where the HTTP Body captured from remote devices could not be read in the Dashboard.
- Fixed the problem where Header Rewrite rules could not match URLs based on the Host field.
- Corrected the issue where ip-version and tos parameters could not take effect when testing proxies.
- Fixed the crash issue caused by mistakenly passing null when executing scripts via HTTP-API.
Forwarded from Surge's Changelog
#Mac #Beta
Version 5.7.0-2705
### Smart Group
This is a new type of policy group, driven by our carefully designed algorithm engine, which can automatically select the appropriate policy from the sub-policies of this policy group. The goal of the Smart policy group is to replace the original automatic testing groups (url/load-balance/fallback), greatly optimizing the experience while minimizing the need for manual intervention in policy groups. Users only need to put the available policies into this group.
For details, see: https://kb.nssurge.com/surge-knowledge-base/guidelines/smart-group
### Rule System
- Overall performance optimization of the rule system.
- Significant optimization of the indexing algorithm in large domain rule sets, improving the search efficiency by more than ten times for rule sets with more than 100,000 rules.
- Corrected the issue where sub-rules of logical rules within a rule set could not be covered by the
- Added a new rule type
-
### IPv6
- The behavior of the
- Added a warning for the
- Adjusted the automatic retry mechanism. Accessing IPv6 addresses in a non-IPv6 network will no longer enter the retry process, and the request will fail immediately (solving the problem of some applications stalling when IPv6 VIF is enabled in a non-IPv6 environment, but the application will still continue to send IPv6 requests).
### Other Optimizations
- Enhanced
- Optimized WireGuard failure handling.
- Reduced the power consumption of the TUIC protocol during sleep.
- Improved the precision of time statistics in the request log system, now accurate to µs level.
- Optimized various abnormal retry mechanisms, avoiding high resource usage caused by continuous retry in the face of some specific problems. For operations that need to be retried continuously (such as WireGuard reconnection, Ponte server reporting to iCloud), Surge will now retry after 0.1s, 0.5s, 1s, 5s, 10s, 30s after an error.
- Optimized the caching system for external resources.
- Added the profile line modifier
### Minor Adjustments
- Limited the length of logs that can be written to request notes in debug mode by scripts.
- Changed the default UDP test target to 1.0.0.1.
- If incorrect types of fields are passed when using API in scripts, it will result in script errors.
- After the script is completed or times out, unfinished $httpClient will no longer call the callback function.
### Issue Fixes
- Fixed the issue where the HTTP Body captured from remote devices could not be read in the Dashboard.
- Fixed the problem where Header Rewrite rules could not match URLs based on the Host field.
- Corrected the issue where ip-version and tos parameters could not take effect when testing proxies.
- Fixed the crash issue caused by mistakenly passing null when executing scripts via HTTP-API.
Version 5.7.0-2705
### Smart Group
This is a new type of policy group, driven by our carefully designed algorithm engine, which can automatically select the appropriate policy from the sub-policies of this policy group. The goal of the Smart policy group is to replace the original automatic testing groups (url/load-balance/fallback), greatly optimizing the experience while minimizing the need for manual intervention in policy groups. Users only need to put the available policies into this group.
For details, see: https://kb.nssurge.com/surge-knowledge-base/guidelines/smart-group
### Rule System
- Overall performance optimization of the rule system.
- Significant optimization of the indexing algorithm in large domain rule sets, improving the search efficiency by more than ten times for rule sets with more than 100,000 rules.
- Corrected the issue where sub-rules of logical rules within a rule set could not be covered by the
no-resolve and extended-matching parameters of the rule set.- Added a new rule type
DOMAIN-WILDCARD, supporting ? and * domain name matching.-
DOMAIN-SET and RULE-SET are changed to strict validation. If there are invalid lines in the file, the entire rule set will be invalidated to avoid problems caused by misuse.### IPv6
- The behavior of the
ipv6-vif parameter has been modified. When set to always, IPv6 functionality will be enabled even if ipv6=true is not set.- Added a warning for the
ipv6-vif=always parameter.- Adjusted the automatic retry mechanism. Accessing IPv6 addresses in a non-IPv6 network will no longer enter the retry process, and the request will fail immediately (solving the problem of some applications stalling when IPv6 VIF is enabled in a non-IPv6 environment, but the application will still continue to send IPv6 requests).
### Other Optimizations
- Enhanced
$notification.post, adding support for media resources, sound hints, and automatic dismissal.- Optimized WireGuard failure handling.
- Reduced the power consumption of the TUIC protocol during sleep.
- Improved the precision of time statistics in the request log system, now accurate to µs level.
- Optimized various abnormal retry mechanisms, avoiding high resource usage caused by continuous retry in the face of some specific problems. For operations that need to be retried continuously (such as WireGuard reconnection, Ponte server reporting to iCloud), Surge will now retry after 0.1s, 0.5s, 1s, 5s, 10s, 30s after an error.
- Optimized the caching system for external resources.
- Added the profile line modifier
#!REQUIREMENT.### Minor Adjustments
- Limited the length of logs that can be written to request notes in debug mode by scripts.
- Changed the default UDP test target to 1.0.0.1.
- If incorrect types of fields are passed when using API in scripts, it will result in script errors.
- After the script is completed or times out, unfinished $httpClient will no longer call the callback function.
### Issue Fixes
- Fixed the issue where the HTTP Body captured from remote devices could not be read in the Dashboard.
- Fixed the problem where Header Rewrite rules could not match URLs based on the Host field.
- Corrected the issue where ip-version and tos parameters could not take effect when testing proxies.
- Fixed the crash issue caused by mistakenly passing null when executing scripts via HTTP-API.
Forwarded from Surge's Changelog
#Mac #Beta
Version 5.7.0-2706
### Smart Group
This is a new type of policy group, driven by our carefully designed algorithm engine, which can automatically select the appropriate policy from the sub-policies of this policy group. The goal of the Smart policy group is to replace the original automatic testing groups (url/load-balance/fallback), greatly optimizing the experience while minimizing the need for manual intervention in policy groups. Users only need to put the available policies into this group.
For details, see: https://kb.nssurge.com/surge-knowledge-base/guidelines/smart-group
### Rule System
- Overall performance optimization of the rule system.
- Significant optimization of the indexing algorithm in large domain rule sets, improving the search efficiency by more than ten times for rule sets with more than 100,000 rules.
- Corrected the issue where sub-rules of logical rules within a rule set could not be covered by the
- Added a new rule type
-
### IPv6
- The behavior of the
- Added a warning for the
- Adjusted the automatic retry mechanism. Accessing IPv6 addresses in a non-IPv6 network will no longer enter the retry process, and the request will fail immediately (solving the problem of some applications stalling when IPv6 VIF is enabled in a non-IPv6 environment, but the application will still continue to send IPv6 requests).
### Other Optimizations
- Enhanced
- Optimized WireGuard failure handling.
- Reduced the power consumption of the TUIC protocol during sleep.
- Improved the precision of time statistics in the request log system, now accurate to µs level.
- Optimized various abnormal retry mechanisms, avoiding high resource usage caused by continuous retry in the face of some specific problems. For operations that need to be retried continuously (such as WireGuard reconnection, Ponte server reporting to iCloud), Surge will now retry after 0.1s, 0.5s, 1s, 5s, 10s, 30s after an error.
- Optimized the caching system for external resources.
- Added the profile line modifier
### Minor Adjustments
- Limited the length of logs that can be written to request notes in debug mode by scripts.
- Changed the default UDP test target to 1.0.0.1.
- If incorrect types of fields are passed when using API in scripts, it will result in script errors.
- After the script is completed or times out, unfinished $httpClient will no longer call the callback function.
### Issue Fixes
- Fixed the issue where the HTTP Body captured from remote devices could not be read in the Dashboard.
- Fixed the problem where Header Rewrite rules could not match URLs based on the Host field.
- Corrected the issue where ip-version and tos parameters could not take effect when testing proxies.
- Fixed the crash issue caused by mistakenly passing null when executing scripts via HTTP-API.
Version 5.7.0-2706
### Smart Group
This is a new type of policy group, driven by our carefully designed algorithm engine, which can automatically select the appropriate policy from the sub-policies of this policy group. The goal of the Smart policy group is to replace the original automatic testing groups (url/load-balance/fallback), greatly optimizing the experience while minimizing the need for manual intervention in policy groups. Users only need to put the available policies into this group.
For details, see: https://kb.nssurge.com/surge-knowledge-base/guidelines/smart-group
### Rule System
- Overall performance optimization of the rule system.
- Significant optimization of the indexing algorithm in large domain rule sets, improving the search efficiency by more than ten times for rule sets with more than 100,000 rules.
- Corrected the issue where sub-rules of logical rules within a rule set could not be covered by the
no-resolve and extended-matching parameters of the rule set.- Added a new rule type
DOMAIN-WILDCARD, supporting ? and * domain name matching.-
DOMAIN-SET and RULE-SET are changed to strict validation. If there are invalid lines in the file, the entire rule set will be invalidated to avoid problems caused by misuse.### IPv6
- The behavior of the
ipv6-vif parameter has been modified. When set to always, IPv6 functionality will be enabled even if ipv6=true is not set.- Added a warning for the
ipv6-vif=always parameter.- Adjusted the automatic retry mechanism. Accessing IPv6 addresses in a non-IPv6 network will no longer enter the retry process, and the request will fail immediately (solving the problem of some applications stalling when IPv6 VIF is enabled in a non-IPv6 environment, but the application will still continue to send IPv6 requests).
### Other Optimizations
- Enhanced
$notification.post, adding support for media resources, sound hints, and automatic dismissal.- Optimized WireGuard failure handling.
- Reduced the power consumption of the TUIC protocol during sleep.
- Improved the precision of time statistics in the request log system, now accurate to µs level.
- Optimized various abnormal retry mechanisms, avoiding high resource usage caused by continuous retry in the face of some specific problems. For operations that need to be retried continuously (such as WireGuard reconnection, Ponte server reporting to iCloud), Surge will now retry after 0.1s, 0.5s, 1s, 5s, 10s, 30s after an error.
- Optimized the caching system for external resources.
- Added the profile line modifier
#!REQUIREMENT.### Minor Adjustments
- Limited the length of logs that can be written to request notes in debug mode by scripts.
- Changed the default UDP test target to 1.0.0.1.
- If incorrect types of fields are passed when using API in scripts, it will result in script errors.
- After the script is completed or times out, unfinished $httpClient will no longer call the callback function.
### Issue Fixes
- Fixed the issue where the HTTP Body captured from remote devices could not be read in the Dashboard.
- Fixed the problem where Header Rewrite rules could not match URLs based on the Host field.
- Corrected the issue where ip-version and tos parameters could not take effect when testing proxies.
- Fixed the crash issue caused by mistakenly passing null when executing scripts via HTTP-API.
Forwarded from Surge's Changelog
#Mac #Beta
Version 5.7.0-2708
### Smart Group
This is a new type of policy group, driven by our carefully designed algorithm engine, which can automatically select the appropriate policy from the sub-policies of this policy group. The goal of the Smart policy group is to replace the original automatic testing groups (url/load-balance/fallback), greatly optimizing the experience while minimizing the need for manual intervention in policy groups. Users only need to put the available policies into this group.
For details, see: https://kb.nssurge.com/surge-knowledge-base/guidelines/smart-group
### Rule System
- Overall performance optimization of the rule system.
- Significant optimization of the indexing algorithm in large domain rule sets, improving the search efficiency by more than ten times for rule sets with more than 100,000 rules.
- Corrected the issue where sub-rules of logical rules within a rule set could not be covered by the
- Added a new rule type
-
### IPv6
- The behavior of the
- Added a warning for the
- Adjusted the automatic retry mechanism. Accessing IPv6 addresses in a non-IPv6 network will no longer enter the retry process, and the request will fail immediately (solving the problem of some applications stalling when IPv6 VIF is enabled in a non-IPv6 environment, but the application will still continue to send IPv6 requests).
### Other Optimizations
- Enhanced
- Optimized WireGuard failure handling.
- Reduced the power consumption of the TUIC protocol during sleep.
- Improved the precision of time statistics in the request log system, now accurate to µs level.
- Optimized various abnormal retry mechanisms, avoiding high resource usage caused by continuous retry in the face of some specific problems. For operations that need to be retried continuously (such as WireGuard reconnection, Ponte server reporting to iCloud), Surge will now retry after 0.1s, 0.5s, 1s, 5s, 10s, 30s after an error.
- Optimized the caching system for external resources.
- Added the profile line modifier
### Minor Adjustments
- Limited the length of logs that can be written to request notes in debug mode by scripts.
- Changed the default UDP test target to 1.0.0.1.
- If incorrect types of fields are passed when using API in scripts, it will result in script errors.
- After the script is completed or times out, unfinished $httpClient will no longer call the callback function.
### Issue Fixes
- Fixed the issue where the HTTP Body captured from remote devices could not be read in the Dashboard.
- Fixed the problem where Header Rewrite rules could not match URLs based on the Host field.
- Corrected the issue where ip-version and tos parameters could not take effect when testing proxies.
- Fixed the crash issue caused by mistakenly passing null when executing scripts via HTTP-API.
Version 5.7.0-2708
### Smart Group
This is a new type of policy group, driven by our carefully designed algorithm engine, which can automatically select the appropriate policy from the sub-policies of this policy group. The goal of the Smart policy group is to replace the original automatic testing groups (url/load-balance/fallback), greatly optimizing the experience while minimizing the need for manual intervention in policy groups. Users only need to put the available policies into this group.
For details, see: https://kb.nssurge.com/surge-knowledge-base/guidelines/smart-group
### Rule System
- Overall performance optimization of the rule system.
- Significant optimization of the indexing algorithm in large domain rule sets, improving the search efficiency by more than ten times for rule sets with more than 100,000 rules.
- Corrected the issue where sub-rules of logical rules within a rule set could not be covered by the
no-resolve and extended-matching parameters of the rule set.- Added a new rule type
DOMAIN-WILDCARD, supporting ? and * domain name matching.-
DOMAIN-SET and RULE-SET are changed to strict validation. If there are invalid lines in the file, the entire rule set will be invalidated to avoid problems caused by misuse.### IPv6
- The behavior of the
ipv6-vif parameter has been modified. When set to always, IPv6 functionality will be enabled even if ipv6=true is not set.- Added a warning for the
ipv6-vif=always parameter.- Adjusted the automatic retry mechanism. Accessing IPv6 addresses in a non-IPv6 network will no longer enter the retry process, and the request will fail immediately (solving the problem of some applications stalling when IPv6 VIF is enabled in a non-IPv6 environment, but the application will still continue to send IPv6 requests).
### Other Optimizations
- Enhanced
$notification.post, adding support for media resources, sound hints, and automatic dismissal.- Optimized WireGuard failure handling.
- Reduced the power consumption of the TUIC protocol during sleep.
- Improved the precision of time statistics in the request log system, now accurate to µs level.
- Optimized various abnormal retry mechanisms, avoiding high resource usage caused by continuous retry in the face of some specific problems. For operations that need to be retried continuously (such as WireGuard reconnection, Ponte server reporting to iCloud), Surge will now retry after 0.1s, 0.5s, 1s, 5s, 10s, 30s after an error.
- Optimized the caching system for external resources.
- Added the profile line modifier
#!REQUIREMENT.### Minor Adjustments
- Limited the length of logs that can be written to request notes in debug mode by scripts.
- Changed the default UDP test target to 1.0.0.1.
- If incorrect types of fields are passed when using API in scripts, it will result in script errors.
- After the script is completed or times out, unfinished $httpClient will no longer call the callback function.
### Issue Fixes
- Fixed the issue where the HTTP Body captured from remote devices could not be read in the Dashboard.
- Fixed the problem where Header Rewrite rules could not match URLs based on the Host field.
- Corrected the issue where ip-version and tos parameters could not take effect when testing proxies.
- Fixed the crash issue caused by mistakenly passing null when executing scripts via HTTP-API.
Forwarded from Surge's Changelog
#Mac #Beta
Version 5.7.0-2710
### Smart Group
This is a new type of policy group, driven by our carefully designed algorithm engine, which can automatically select the appropriate policy from the sub-policies of this policy group. The goal of the Smart policy group is to replace the original automatic testing groups (url/load-balance/fallback), greatly optimizing the experience while minimizing the need for manual intervention in policy groups. Users only need to put the available policies into this group.
For details, see: https://kb.nssurge.com/surge-knowledge-base/guidelines/smart-group
### Rule System
- Overall performance optimization of the rule system.
- Significant optimization of the indexing algorithm in large domain rule sets, improving the search efficiency by more than ten times for rule sets with more than 100,000 rules.
- Corrected the issue where sub-rules of logical rules within a rule set could not be covered by the
- Added a new rule type
-
### IPv6
- The behavior of the
- Added a warning for the
- Adjusted the automatic retry mechanism. Accessing IPv6 addresses in a non-IPv6 network will no longer enter the retry process, and the request will fail immediately (solving the problem of some applications stalling when IPv6 VIF is enabled in a non-IPv6 environment, but the application will still continue to send IPv6 requests).
### Other Optimizations
- Enhanced
- Optimized WireGuard failure handling.
- Reduced the power consumption of the TUIC protocol during sleep.
- Improved the precision of time statistics in the request log system, now accurate to µs level.
- Optimized various abnormal retry mechanisms, avoiding high resource usage caused by continuous retry in the face of some specific problems. For operations that need to be retried continuously (such as WireGuard reconnection, Ponte server reporting to iCloud), Surge will now retry after 0.1s, 0.5s, 1s, 5s, 10s, 30s after an error.
- Optimized the caching system for external resources.
- Added the profile line modifier
### Minor Adjustments
- Limited the length of logs that can be written to request notes in debug mode by scripts.
- Changed the default UDP test target to 1.0.0.1.
- If incorrect types of fields are passed when using API in scripts, it will result in script errors.
- After the script is completed or times out, unfinished $httpClient will no longer call the callback function.
### Issue Fixes
- Fixed the issue where the HTTP Body captured from remote devices could not be read in the Dashboard.
- Fixed the problem where Header Rewrite rules could not match URLs based on the Host field.
- Corrected the issue where ip-version and tos parameters could not take effect when testing proxies.
- Fixed the crash issue caused by mistakenly passing null when executing scripts via HTTP-API.
Version 5.7.0-2710
### Smart Group
This is a new type of policy group, driven by our carefully designed algorithm engine, which can automatically select the appropriate policy from the sub-policies of this policy group. The goal of the Smart policy group is to replace the original automatic testing groups (url/load-balance/fallback), greatly optimizing the experience while minimizing the need for manual intervention in policy groups. Users only need to put the available policies into this group.
For details, see: https://kb.nssurge.com/surge-knowledge-base/guidelines/smart-group
### Rule System
- Overall performance optimization of the rule system.
- Significant optimization of the indexing algorithm in large domain rule sets, improving the search efficiency by more than ten times for rule sets with more than 100,000 rules.
- Corrected the issue where sub-rules of logical rules within a rule set could not be covered by the
no-resolve and extended-matching parameters of the rule set.- Added a new rule type
DOMAIN-WILDCARD, supporting ? and * domain name matching.-
DOMAIN-SET and RULE-SET are changed to strict validation. If there are invalid lines in the file, the entire rule set will be invalidated to avoid problems caused by misuse.### IPv6
- The behavior of the
ipv6-vif parameter has been modified. When set to always, IPv6 functionality will be enabled even if ipv6=true is not set.- Added a warning for the
ipv6-vif=always parameter.- Adjusted the automatic retry mechanism. Accessing IPv6 addresses in a non-IPv6 network will no longer enter the retry process, and the request will fail immediately (solving the problem of some applications stalling when IPv6 VIF is enabled in a non-IPv6 environment, but the application will still continue to send IPv6 requests).
### Other Optimizations
- Enhanced
$notification.post, adding support for media resources, sound hints, and automatic dismissal.- Optimized WireGuard failure handling.
- Reduced the power consumption of the TUIC protocol during sleep.
- Improved the precision of time statistics in the request log system, now accurate to µs level.
- Optimized various abnormal retry mechanisms, avoiding high resource usage caused by continuous retry in the face of some specific problems. For operations that need to be retried continuously (such as WireGuard reconnection, Ponte server reporting to iCloud), Surge will now retry after 0.1s, 0.5s, 1s, 5s, 10s, 30s after an error.
- Optimized the caching system for external resources.
- Added the profile line modifier
#!REQUIREMENT.### Minor Adjustments
- Limited the length of logs that can be written to request notes in debug mode by scripts.
- Changed the default UDP test target to 1.0.0.1.
- If incorrect types of fields are passed when using API in scripts, it will result in script errors.
- After the script is completed or times out, unfinished $httpClient will no longer call the callback function.
### Issue Fixes
- Fixed the issue where the HTTP Body captured from remote devices could not be read in the Dashboard.
- Fixed the problem where Header Rewrite rules could not match URLs based on the Host field.
- Corrected the issue where ip-version and tos parameters could not take effect when testing proxies.
- Fixed the crash issue caused by mistakenly passing null when executing scripts via HTTP-API.
Forwarded from Surge's Changelog
#Mac #Beta
Version 5.7.0-2712
### Smart Group
This is a new type of policy group, driven by our carefully designed algorithm engine, which can automatically select the appropriate policy from the sub-policies of this policy group. The goal of the Smart policy group is to replace the original automatic testing groups (url/load-balance/fallback), greatly optimizing the experience while minimizing the need for manual intervention in policy groups. Users only need to put the available policies into this group.
For details, see: https://kb.nssurge.com/surge-knowledge-base/guidelines/smart-group
### Rule System
- Overall performance optimization of the rule system.
- Significant optimization of the indexing algorithm in large domain rule sets, improving the search efficiency by more than ten times for rule sets with more than 100,000 rules.
- Corrected the issue where sub-rules of logical rules within a rule set could not be covered by the
- Added a new rule type
-
### IPv6
- The behavior of the
- Added a warning for the
- Adjusted the automatic retry mechanism. Accessing IPv6 addresses in a non-IPv6 network will no longer enter the retry process, and the request will fail immediately (solving the problem of some applications stalling when IPv6 VIF is enabled in a non-IPv6 environment, but the application will still continue to send IPv6 requests).
### Other Optimizations
- Enhanced
- Optimized WireGuard failure handling.
- Reduced the power consumption of the TUIC protocol during sleep.
- Improved the precision of time statistics in the request log system, now accurate to µs level.
- Optimized various abnormal retry mechanisms, avoiding high resource usage caused by continuous retry in the face of some specific problems. For operations that need to be retried continuously (such as WireGuard reconnection, Ponte server reporting to iCloud), Surge will now retry after 0.1s, 0.5s, 1s, 5s, 10s, 30s after an error.
- Optimized the caching system for external resources.
- Added the profile line modifier
### Minor Adjustments
- Limited the length of logs that can be written to request notes in debug mode by scripts.
- Changed the default UDP test target to 1.0.0.1.
- If incorrect types of fields are passed when using API in scripts, it will result in script errors.
- After the script is completed or times out, unfinished $httpClient will no longer call the callback function.
### Issue Fixes
- Fixed the issue where the HTTP Body captured from remote devices could not be read in the Dashboard.
- Fixed the problem where Header Rewrite rules could not match URLs based on the Host field.
- Corrected the issue where ip-version and tos parameters could not take effect when testing proxies.
- Fixed the crash issue caused by mistakenly passing null when executing scripts via HTTP-API.
Version 5.7.0-2712
### Smart Group
This is a new type of policy group, driven by our carefully designed algorithm engine, which can automatically select the appropriate policy from the sub-policies of this policy group. The goal of the Smart policy group is to replace the original automatic testing groups (url/load-balance/fallback), greatly optimizing the experience while minimizing the need for manual intervention in policy groups. Users only need to put the available policies into this group.
For details, see: https://kb.nssurge.com/surge-knowledge-base/guidelines/smart-group
### Rule System
- Overall performance optimization of the rule system.
- Significant optimization of the indexing algorithm in large domain rule sets, improving the search efficiency by more than ten times for rule sets with more than 100,000 rules.
- Corrected the issue where sub-rules of logical rules within a rule set could not be covered by the
no-resolve and extended-matching parameters of the rule set.- Added a new rule type
DOMAIN-WILDCARD, supporting ? and * domain name matching.-
DOMAIN-SET and RULE-SET are changed to strict validation. If there are invalid lines in the file, the entire rule set will be invalidated to avoid problems caused by misuse.### IPv6
- The behavior of the
ipv6-vif parameter has been modified. When set to always, IPv6 functionality will be enabled even if ipv6=true is not set.- Added a warning for the
ipv6-vif=always parameter.- Adjusted the automatic retry mechanism. Accessing IPv6 addresses in a non-IPv6 network will no longer enter the retry process, and the request will fail immediately (solving the problem of some applications stalling when IPv6 VIF is enabled in a non-IPv6 environment, but the application will still continue to send IPv6 requests).
### Other Optimizations
- Enhanced
$notification.post, adding support for media resources, sound hints, and automatic dismissal.- Optimized WireGuard failure handling.
- Reduced the power consumption of the TUIC protocol during sleep.
- Improved the precision of time statistics in the request log system, now accurate to µs level.
- Optimized various abnormal retry mechanisms, avoiding high resource usage caused by continuous retry in the face of some specific problems. For operations that need to be retried continuously (such as WireGuard reconnection, Ponte server reporting to iCloud), Surge will now retry after 0.1s, 0.5s, 1s, 5s, 10s, 30s after an error.
- Optimized the caching system for external resources.
- Added the profile line modifier
#!REQUIREMENT.### Minor Adjustments
- Limited the length of logs that can be written to request notes in debug mode by scripts.
- Changed the default UDP test target to 1.0.0.1.
- If incorrect types of fields are passed when using API in scripts, it will result in script errors.
- After the script is completed or times out, unfinished $httpClient will no longer call the callback function.
### Issue Fixes
- Fixed the issue where the HTTP Body captured from remote devices could not be read in the Dashboard.
- Fixed the problem where Header Rewrite rules could not match URLs based on the Host field.
- Corrected the issue where ip-version and tos parameters could not take effect when testing proxies.
- Fixed the crash issue caused by mistakenly passing null when executing scripts via HTTP-API.