Releases: serbanghita/form-to-object
Releases · serbanghita/form-to-object
Release list
v3.2.2 - Security and Hardening Update
What's Changed in v3.2.2
🛡️ Security & Hardening
- Prototype Pollution Defense-in-Depth:
- Added
isDangerousKey()validator and runtime-frozenDANGEROUS_KEYS(Object.freeze(['__proto__', 'constructor', 'prototype'])). - Sanitized
extend()andconvertFieldNameToArrayOfKeys()insrc/utils.ts. - Guarded
processSingleLevelNode()andprocessMultiLevelNode()insrc/FormToObject.ts. - Added comprehensive unit tests for prototype pollution payload vectors.
- Added
- Dependency Remediation:
- Upgraded
vitestand@vitest/coverage-v8to4.1.10, resolving all 7 vulnerabilities (found 0 vulnerabilities).
- Upgraded
🐛 Bug Fixes & Robustness
- CSS Selector Error Handling:
- Invalid CSS selector syntax (e.g.
:invalid[) is now caught gracefully asSyntaxErrorwithout throwing unhandledDOMException, returningfalseso the constructor produces the standard form-not-found error while re-throwing unexpected runtime errors.
- Invalid CSS selector syntax (e.g.
- CI/CD Modernization:
- Upgraded GitHub Actions in
.github/workflows/test.ymlto@v4(actions/checkout@v4,actions/setup-node@v4,codecov/codecov-action@v4).
- Upgraded GitHub Actions in
Full Changelog: v3.2.1...v3.2.2