Skip to content

Commit a43f747

Browse files
donislawdevclaude
andcommitted
ci: mailparser without a committed lockfile again - the licence gate is not the place to decide CI tools in passing
A lockfile in the repository put the whole mailparser tree into the dependency graph, and the licence gate blocked two packages of it: @zone-eu/mailsplit (MIT OR EUPL-1.1+) and leac (reported as JSON AND MIT, its own LICENSE file is MIT). Whether tools installed only in CI answer to the gate that guards what ships is a decision for the owner, so the install is back to the pinned top level the gate passed. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
1 parent cd50495 commit a43f747

3 files changed

Lines changed: 11 additions & 374 deletions

File tree

‎.github/mailparser/package-lock.json‎

Lines changed: 0 additions & 356 deletions
This file was deleted.

‎.github/mailparser/package.json‎

Lines changed: 0 additions & 8 deletions
This file was deleted.

‎.github/workflows/ci.yml‎

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1376,16 +1376,17 @@ jobs:
13761376
# Mail is read by mailparser beside Python's email package - the
13771377
# parser much of the mail handling written in Node uses, and the one
13781378
# that refuses a message of more than 1000 MIME entities
1379-
# (docs/EML-2026-10-07.md section 5.1). Installed with npm ci from the
1380-
# lockfile in .github/mailparser, so the whole tree is the one
1381-
# committed rather than whatever the registry resolves that day
1382-
# (review of #173), outside the checkout, and named to the guard
1383-
# through TFG_MAILPARSER. Asked for its version, so a package that did
1384-
# not install stops this step, and the guard fails if it is named and
1385-
# reads nothing.
1386-
mkdir -p "$RUNNER_TEMP/mailparser"
1387-
cp .github/mailparser/package.json .github/mailparser/package-lock.json "$RUNNER_TEMP/mailparser/"
1388-
npm ci --prefix "$RUNNER_TEMP/mailparser"
1379+
# (docs/EML-2026-10-07.md section 5.1). Pinned, installed outside the
1380+
# checkout, and named to the guard through TFG_MAILPARSER. Asked for
1381+
# its version, so a package that did not install stops this step, and
1382+
# the guard fails if it is named and reads nothing.
1383+
#
1384+
# Without a committed lockfile, on purpose for now: one in the
1385+
# repository puts the whole tree into the dependency graph, and the
1386+
# licence gate then blocks two packages of it (review of #173,
1387+
# docs/REVIEW-173-2026-10-07.md). Whether CI-only tools belong under
1388+
# that gate is the owner's decision, not a fix.
1389+
npm install --prefix "$RUNNER_TEMP/mailparser" mailparser@3.9.36
13891390
echo "TFG_MAILPARSER=$RUNNER_TEMP/mailparser/node_modules/mailparser" >> "$GITHUB_ENV"
13901391
node -e "console.log('mailparser', require(process.argv[1] + '/package.json').version)" "$RUNNER_TEMP/mailparser/node_modules/mailparser"
13911392

0 commit comments

Comments
 (0)