chore: version packages#12
Conversation
Greptile SummaryThis is an automated "version packages" PR from the Changesets release action, bumping Changes in this PR:
Notable about the version strategy: Confidence Score: 5/5Safe to merge — purely automated version bookkeeping with no logic changes. All three file changes are exactly what the Changesets action is supposed to produce: version field bumped in package.json, changelog entry prepended, and the source changeset file deleted. The minor-version bump for a pre-1.0 package with breaking changes follows semver convention correctly. No code, logic, or configuration beyond release metadata is modified. No files require special attention. Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[security-hardening-pass.md\nchangeset added to main] --> B[Changesets Action\ndetects pending changeset]
B --> C[Opens / updates\n'chore: version packages' PR]
C --> D{PR merged?}
D -- Yes --> E[changeset version\nconsumes .md, bumps package.json\nupdates CHANGELOG.md]
E --> F[npm publish\npassmint@0.2.0\nwith provenance]
D -- Not yet --> G[More changesets\nmerged to main]
G --> C
Reviews (1): Last reviewed commit: "chore: version packages" | Re-trigger Greptile |
This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.
Releases
passmint@0.2.0
Minor Changes
a48448f: Security hardening pass — 28 new tests, 0 regressions.
New guarantees (some of these tighten existing inputs):
ZipAssembler.add()now rejects..path segments, backslashes, drive-letter prefixes (e.g.C:\), and NUL bytes. Prevents ZIP-Slip-class issues for downstream consumers who useZipAssemblerdirectly with untrusted filenames. The internal.pkpasspipeline was already safe; this hardens the public API.webService.urlmust behttps://. Previously any URL shape was accepted. Apple PKPass spec requires HTTPS; we now enforce at the schema layer instead of relying on device-side rejection. Same enforcement applies tosemantics.homepage,semantics.orderManagementUrl, and all image URLs.applyRaw.applecannot override identity fields (passTypeIdentifier,teamIdentifier,serialNumber,authenticationToken,webServiceURL).applyRaw.googlecannot overrideid,classId,state. Prevents accidental identity forgery when callers pipe semi-trusted input through the escape hatch.expclaim by default (15 minutes). Override viaGoogleSaveOptions.expirySeconds, or opt out withexpirySeconds: null. Non-integer / non-positive values throw.classSuffix/objectSuffixvalidated against Google's allowed charset[A-Za-z0-9._-]with a 100-char cap. Prior behavior silently produced JWTs that Google rejected with an opaque error.Public API additions:
DEFAULT_GOOGLE_JWT_EXPIRY_SECONDS,MAX_IMAGE_BYTE_LENGTH,MAX_PEM_LENGTH,GoogleSaveOptions.expirySeconds,GoogleSaveJwtClaims.exp.Other: Added
SECURITY.mdand.github/dependabot.yml.Breaking for:
http://towebService.url, image URLs, or semantic URLs (now errors at schema time — switch tohttps://).applyRawto override identity fields (use the validated top-level fields instead).ZipAssembler.add()with..or backslashes in paths (rarely legitimate).