diff --git a/doc/api/packages.md b/doc/api/packages.md index 09f32e6c160892..15b021baeb3cbb 100644 --- a/doc/api/packages.md +++ b/doc/api/packages.md @@ -689,6 +689,20 @@ exports, while resolving the existing `"node"`, `"node-addons"`, `"default"`, Any number of custom conditions can be set with repeat flags. +Typical conditions should only contain alphanumerical characters, +using ":" or "=" as separators if necessary. Anything else may run +into compability issues outside of node. + +In node, conditions can be almost any string, including multi-byte characters and whitespace. There's only a few restrictions: + +1. They must contain at least one character. +2. They cannot start with "." since they may appear in places that also + allow relative paths. +3. They cannot contain "," since they may be parsed as a comma-separated + list by some CLI tools. +4. They cannot be numeric property keys like "10" since that can have + unexpected effects on property ordering. + ### Community Conditions Definitions Condition strings other than the `"import"`, `"require"`, `"node"`,