fix(license): drop unused OFL-1.1 font from the published package#1357
Merged
Conversation
The vendored copy of `blessed` pulls in the Terminus bitmap font (external/blessed/usr/fonts/ter-u14*.json), which is licensed OFL-1.1 and is only read by blessed's BigText widget — a widget the CLI never instantiates. Shipping it forced the package's declared license to be `MIT AND OFL-1.1`. Scope the blessed vendoring keep-list to `usr/*` so the terminfo files are retained while usr/fonts/** is dropped, and declare the license as plain `MIT`. Bump to 1.1.117.
Jeppe Fredsgaard Blaabjerg (jfblaa)
approved these changes
Jun 8, 2026
Jeppe Fredsgaard Blaabjerg (jfblaa)
left a comment
Contributor
There was a problem hiding this comment.
LGTM 👍
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
npm reports
socketasMIT AND OFL-1.1even though the project's own code is MIT. TheOFL-1.1comes from the Terminus bitmap font (external/blessed/usr/fonts/ter-u14{n,b}.json), which lands in the tarball as a byproduct of vendoring the entireblessedlibrary wholesale.The font is dead weight: it's read only by blessed's
BigTextwidget, and the CLI never instantiatesBigText(it usesscreen/box/table/grid/bar/line, andrequires those widget files directly — it never imports blessed's index, sobigtext.jsisn't even loaded).What
.config/rollup.dist.config.mjs— scope the blessed vendoring keep-list fromusr/**/**tousr/*. This keeps the flat terminfo files (usr/xterm,usr/linux, …) that blessed actually needs, but dropsusr/fonts/**(the OFL font + its AUTHORS/README/LICENSE). Added a comment documenting the scoping and a reminder to re-verifyusr/on a blessed upgrade.package.json—licenseMIT AND OFL-1.1→MIT; version1.1.116→1.1.117.CHANGELOG.md—1.1.117entry.external/is a gitignored build artifact, so no vendored files are committed — the change is the build config that regenerates it.Verification
pnpm build:dist:src→ exit 0;socket --version→1.1.117external/blessed/usr/fonts/gone; terminfo retainednpm pack --dry-runpublish set: nousr/fonts/ter-u14/OFL entriesMITfield now agrees with file-content scanning, not just the manifest.Notes / follow-ups
socket@1.1.117with whatever originally flagged OFL to confirm it's cleared end-to-end.external/blessed/lib/widgets/bigtext.jsis left in place (MIT, harmless dead code; ENOENT only on an explicitnew BigText(), which never happens). Optional future cleanup.provenance.ymlworkflow_dispatch, which readsversionfrompackage.jsonand tagsv1.1.117.Base branch is
v1.x(the 1.x release line) — retarget if a patch should go elsewhere.Note
Low Risk
Packaging-only change with no CLI behavior change; the only caveat is a future blessed
usr/layout change could drop needed terminfo if not re-verified.Overview
The published
socketnpm package no longer ships the unused Terminus bitmap font from vendoredblessed(usr/fonts/**, OFL-1.1)..config/rollup.dist.config.mjstightens the blessed keep-list fromusr/**/**tousr/*, so flat terminfo files (e.g.usr/xterm) still land in the tarball while nested font assets are stripped at build time; comments call out re-checkingusr/on blessed upgrades.package.jsondeclaresMITonly (wasMIT AND OFL-1.1) and bumps to 1.1.117;CHANGELOG.mddocuments the licensing/packaging change.Reviewed by Cursor Bugbot for commit 72a7d42. Configure here.