From 052801f7081dec484d443597cc1c54f735f22d7b Mon Sep 17 00:00:00 2001 From: Felipe Sauer Date: Thu, 27 Aug 2026 09:53:13 -0400 Subject: [PATCH 1/2] fix(js): stop shipping tests and tooling config in the npm package MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit With no `files` field, npm published everything the split repo carries: the whole tests/ tree (60-odd files, some of them 50 kB), eslint.config.js, stryker.config.json, tsconfig.json, vitest.config.ts and .gitattributes. Consumers were downloading the test suite along with the library. Restricting to dist, src and CHANGELOG.md leaves exactly what belongs there — npm always adds README, LICENSE and package.json on its own. Every path in `exports` still resolves. --- packages/js/package.json | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/packages/js/package.json b/packages/js/package.json index 1c17cf3..7773ff5 100644 --- a/packages/js/package.json +++ b/packages/js/package.json @@ -7,6 +7,11 @@ "type": "module", "main": "./dist/index.js", "types": "./dist/index.d.ts", + "files": [ + "dist", + "src", + "CHANGELOG.md" + ], "exports": { ".": { "import": "./dist/index.js", From 1d3f77f8407803495c18bb101b10104b2ea9582f Mon Sep 17 00:00:00 2001 From: Felipe Sauer Date: Thu, 27 Aug 2026 09:53:13 -0400 Subject: [PATCH 2/2] fix(php): stop exporting tooling config in the Composer archive MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The export-ignore list already covered phpstan, php-cs-fixer, phpunit and tests, but missed infection.json5, scripts/ and composer.lock — none of which mean anything to someone requiring this package. A library's lock file in particular is dead weight: Composer ignores it for dependencies. --- packages/php/.gitattributes | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/php/.gitattributes b/packages/php/.gitattributes index 538d394..a309d4b 100644 --- a/packages/php/.gitattributes +++ b/packages/php/.gitattributes @@ -10,3 +10,7 @@ /phpstan/ export-ignore /.gitattributes export-ignore /.gitignore export-ignore +/infection.json5 export-ignore +/scripts/ export-ignore +/composer.lock export-ignore +/.gitkeep export-ignore