* Refactor: reduce the use of strings.TrimSpace
* Refactor: use string attr before toProto
* Refactor parseEntry
- add value/attribute checker(check missing space)
- allow multiple spaces
- sort attributes
- improve readablity
* Refactor exportPlainTextList
- remove unnecessary variable
- improve readablity
* Remove support for partial include
This reverts e640ac2783
It is problematic and I will implement a new one
* Refactor: promote refMap
* Feat: add support for partial include
- refactor inclusion logic
- add basic deduplicate
* Refactor exporting plaintext list
* Feat: add support for affiliation
A domain rule is always added to the list corresponding to the filename
it resides in. Additionally, you can now add affiliations to a domain
rule, and the rule will be added to the list specified by the
affiliation. Each affiliation begins with `&` and followed by the name
of the affiliation.
This helps us to reduce the number of data files without compromising
functionality, and avoid writing a same rule in different files.
* Feat: add advanced deduplicate for subdomains
only for domain/full subdomains without attr
* Refactor: import and use slices
* Refactor: improve code
Add missing domain for Jiguang (JPush) service.
According to the official Jiguang documentation, `easytomessage.com` is a required domain for the push service to function correctly on network-restricted environments.
Reference:
https://community.jiguang.cn/article/408970
* apple: deduplicate
- swift is included in apple-dev
- `full:certs.apple.com @cn` is added in apple-pki
- `full:crl.apple.com @cn` is added in apple-pki
- `full:ocsp-lb.apple.com.akadns.net @cn` is added in apple-pki
- `full:ocsp.apple.com @cn` is added in apple-pki
- `full:ocsp2-lb.apple.com.akadns.net @cn` is added in apple-pki
- `full:ocsp2.apple.com @cn` is added in apple-pki
- `full:valid.apple.com @cn` is added in apple-pki
* apple: move `valid.origin-apple.com.akadns.net` to apple-pki
keep consistent with valid.apple.com
- `full:safebrowsing-cache.google.com @cn` appears twice
- `full:crl.pki.goog @cn` is added in google-trust-services
- `full:firebase-settings.crashlytics.com @cn` is added in firebase
- `full:ocsp.pki.goog @cn` is added in google-trust-services
- `full:pki-goog.l.google.com @cn` is added in google-trust-services
- `full:redirector.c.play.google.com @cn` is added in google-play