Skip to content

build(deps): patch development dependency DoS - #43

Merged
GSTJ merged 1 commit into
masterfrom
security/development-dependencies
Aug 17, 2026
Merged

GSTJ merged 1 commit into
masterfrom
security/development-dependencies

Conversation

@GSTJ

@GSTJ GSTJ commented Aug 17, 2026

Copy link
Copy Markdown
Owner

Summary

Patch the development dependency graph without forcing Metro onto an unsupported image-size major.

Details

  • Resolves js-yaml at 3.15.1 and 4.3.1, and Nano ID at 3.3.18.
  • Backports the ICNS and ISO media box guards to image-size 1.2.1, with child-process watchdogs covering direct parser and Metro asset paths.
  • Runs the parser and version regressions before Jest in CI and release jobs. The package audit ignores only the two image-size advisories without an upstream fixed release.
  • Leaves runtime source and dependency declarations unchanged.

Testing steps

  1. Install the repository dependencies:

    pnpm install --frozen-lockfile

    It should finish without edits.

  2. Exercise the CI test path and the dependency audit:

    pnpm run test --runInBand
    pnpm run security:check

    Both commands should exit 0.

@GSTJ

GSTJ commented Aug 17, 2026

Copy link
Copy Markdown
Owner Author

Local verification of the dependency regressions, audit result, and packed-plugin Expo prebuild:\n\nDependency repair verification

@GSTJ
GSTJ marked this pull request as ready for review August 17, 2026 13:27
@GSTJ
GSTJ merged commit 1fe1252 into master Aug 17, 2026
5 checks passed
@GSTJ
GSTJ deleted the security/development-dependencies branch August 17, 2026 13:30
GSTJ added a commit that referenced this pull request Sep 21, 2026
* fix(release): bump a patch for build(deps) commits

Three security patches (#37, #38, #43, #44, #45) landed as
build(deps): commits and never reached npm: the changelog preset marks
build as effect: "changelog", so release-it correctly found nothing to
release and exited 0 every time. Nobody was watching for that, so the
patches sat on master.

findTypeEntry matches on type and scope before falling back to the
scope-less entry, so a build(deps) entry ahead of the generic build one
in TYPES lets dependency and security patches bump a patch while
scope-less build: (tooling, tsconfig, oxfmt) still doesn't move the
version. changelog-check.mjs's POLICY and assertions are updated to
match, including a build(deps) vs build bump test so this can't regress
silently again.

* docs: the Swift AppDelegate redirect already landed

bb07d7b fixed the SDK 53+ AppDelegate.swift bundle URL redirect back in
v1.0.13, but the SDK-support note above it was written 26 minutes
earlier the same day and never got updated. Confirmed by prebuild
against a fresh SDK 57 app: CodePush.bundleURL() lands in
ReactNativeDelegate.bundleURL() same as the Objective-C template does.

* style: satisfy oxfmt on changelog-check.mjs
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant