PrivacyManifest is the pkl file that provides the benefits of static typing to generate Apple's xcprivacy file.
Packages within this repository are published as package://pkg.pkl-lang.org/github.com/fumito-ito/PrivacyManifest@<VERSION>.
Modules from package can be imported directly. For example, the below line imports the module from package at version 0.1.0:
import "package://pkg.pkl-lang.org/github.com/fumito-ito/PrivacyManifest/PrivacyManifest@0.1.0"create your pkl file to generate xcprivacy file.
amends "package://pkg.pkl-lang.org/github.com/fumito-ito/PrivacyManifest/PrivacyManifest@0.1.0#/PrivacyManifestFile.pkl"
NSPrivacyTracking = true
NSPrivacyTrackingDomains {
"com.github.fumito-ito.PrivacyManifest.pkl"
}... and generate !
$ pkl eval YourPklFile.pkl > PrivacyInfo.xcprivacyThis module provides following validations.
If NSPrivacyTracking = true, NSPrivacyTrackingDomains needs one or more domains.
NSPrivacyTrackingDomains should be domain style string, e.g. com.example.app
NSPrivacyAccessedAPITypeReasons should supply the relevant values from NSPrivacyAccessedAPIType.
Check that the correct names are used for the classes listed below.
NSPrivacyAccessedAPITypeNSPrivacyAccessedAPITypeReasonsNSPrivacyCollectedDataTypeNSPrivacyCollectedDataTypePurposes
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Please make sure to update tests as appropriate.