Files
pnpm/pnpm11/object/property-path/src
Luan Taraschi fe7c6d5657 fix(pkg): accept hyphens in dot-notation property paths (#14037)
Both property-path parsers ended an identifier at the first character
outside `\w`, so `dependencies.some-package-name` tokenized as `some`,
an unexpected `-`, and `package`, and `pnpm pkg get` / `pnpm pkg set`
failed with ERR_PNPM_UNEXPECTED_TOKEN_IN_PROPERTY_PATH on a key that
`npm pkg` reads. Hyphens now continue an identifier, in
`pnpm11/object/property-path` and in `pnpm/crates/config` alike.

The first character keeps its old rule, so `-foo` is still rejected, and
the bracketed forms that already accepted these keys are untouched.

`pnpm config set` shares the parser through `validateSimpleKey`, which
short-circuits on strictly kebab-case keys. A key it does not
short-circuit, such as `foo-Bar`, used to fail at the parse step and now
reaches the config validation that has something useful to say about it:
ERR_PNPM_CONFIG_SET_UNSUPPORTED_YAML_CONFIG_KEY. Both reject the key.

Closes pnpm/pnpm#13163
2026-08-23 00:08:05 +02:00
..