4.3.0.0

shadowsocks/shadowsocks-windows4.3.0.0Oct 18, 2020by database64128

AI Summary

Major update focusing on PAC generation improvements with direct/proxied groups (whitelist/blacklist modes) and the beginning of a transition to WPF for the GUI.

Key Highlights

  • PAC generation modes: whitelist and blacklist with configurable direct and proxied groups.
  • New update prompt window showing release notes.
  • WPF reimplementation of ForwardProxyView, HotkeysView, and OnlineConfigView.
  • Automatic PAC regeneration on version updates.
  • Cleanup of dependencies and removal of unnecessary legacy code.

Breaking Changes

  • Default PAC behavior changed to whitelist mode (Chinese domains proxied by default unless in exception list).
  • Configuration structure for PAC groups has changed in gui-config.json.

New Features

  • Geosite group validation with automatic reset to defaults.
  • Single HttpClient instance usage for lifecycle.
  • WPF version update prompt implementation.

Full Release Notes

## ๐Ÿ“ Release Notes

- PAC: To better utilize the geosite database and adapt to the needs of our users, we added options for direct and proxied groups. They are currently only available for modifications in `gui-config.json`. GUI with the feature fully supported is coming in v5.
    - Generation modes: __whitelist__ mode and __blacklist__ mode
        - When `geositePreferDirect` is false (default), PAC works in whitelist mode. Exception rules are generated from `geositeDirectGroups`. Unmatched domains goes through the proxy.
        - When `geositePreferDirect` is true, PAC works in blacklist mode. Blocking rules are generated from `geositeProxiedGroups`. Exception rules are generated from `geositeDirectGroups`. Unmatched domains are connected to directly.
    - Domain groups: `geositeDirectGroups` and `geositeProxiedGroups`.
        - `geositeDirectGroups` is initialized with `cn` and `geolocation-!cn@cn`.
        - `geositeProxiedGroups` is initialized with `geolocation-!cn`.
    - The new default values make sure that:
        - When in whitelist mode, Chinese domains, including non-Chinese companies' Chinese CDNs, are connected to directly.
        - When in blacklist mode, only non-Chinese domains goes through the proxy. Chinese domains, as well as non-Chinese companies' Chinese CDNs, are connected to directly.
- WPF: This release includes a new update prompt window that shows release notes for you. We have also reimplemented `ForwardProxyView`, `HotkeysView`, `OnlineConfigView` in WPF. Your feedback is welcome on these new UIs.
- Fixes and improvements
    - We fixed an issue where in certain locales, the PAC generation crashes the application (#2986).
    - We have improved the stability by adding a validation of the geosite group configuration. Invalid settings will be automatically reset to default (and logged).
    - `pac.txt` is now automatically regenerated on version updates. You can turn it off by changing `regeneratePacOnUpdate` to false.
- Cleanup: Only one `HttpClient` instance is used throughout the lifecycle. `StringEx.CS` along with many other unnecessary stuff has been removed. All dependencies have been updated to the latest versions.

## ๐Ÿ‘ฉโ€๐Ÿ’ป Changes

- Cleanup and update dependencies (#2983)
- Geosite group validation + PAC regeneration on version update (#2988)
- PAC: add options for direct and proxied groups (#2990)
- Transition to WPF: ForwardProxyView + HotkeysView + OnlineConfigView + VersionUpdatePromptView (#2991)

## ๐Ÿ› Known Issues

- If you encounter any issue, please refer to https://github.com/shadowsocks/shadowsocks-windows/wiki/Troubleshooting.
- ๅฆ‚ๆžœ้‡ๅˆฐไปปไฝ•้—ฎ้ข˜๏ผŒ่ฏท้ฆ–ๅ…ˆๅ‚่€ƒ https://github.com/shadowsocks/shadowsocks-windows/wiki/Troubleshooting

## ๐Ÿ“ฆ File Info

- `Shadowsocks-4.3.0.0.zip`
    - MD5: `B8A78DC56651BEF0A7BE228CE469106A`
    - SHA-1: `1D4028B6E1C7C49D61F8B4BF834C8F6A57018075`
    - SHA-256: `0472497B295C4466E58C2623F2F03281F4A8297696753DD18EFFE3A4D633E86E`
    - SHA-512: `0154A548CD317252E7FF350CE2E0BB8BD85B25163B86FFB70CB605B211074438DE514A804D18A550225E066C6EA93702A81E457FEDDD8F2FE8B5CA33E53C37DB`