Skip to content

Commit 2bd44b1

Browse files
committed
chore: replace huge THIRD-PARTY-NOTICES with compact LICENSES.md
The previous file enumerated all 873 transitive deps inline. The new file is a category-level summary with descriptions, explicit weak- copyleft entries, and a regen script that recreates the full BOM on demand.
1 parent a580529 commit 2bd44b1

2 files changed

Lines changed: 72 additions & 3516 deletions

File tree

THIRD-PARTY-LICENSES.md

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
# Third-party licenses
2+
3+
This project is distributed under the MIT License (see `LICENSE`). MIT requires that the upstream LICENSE text be preserved in each third-party dependency's installed artifact — Bun's package cache does this by default.
4+
5+
6+
This file summarizes the third-party open-source components included in or linked from `nextlytics` (generated from a CycloneDX SBOM of the dependency tree). The full per-package bill of materials is not committed to this repo to keep diffs reviewable; regenerate it with the script below.
7+
8+
9+
## Summary by license category
10+
11+
| Category | Count |
12+
|---|---:|
13+
| Permissive | 783 |
14+
| Permissive (with attribution) | 78 |
15+
| Weak copyleft | 12 |
16+
| **Total third-party components** | **873** |
17+
18+
## What each category means
19+
20+
**Permissive** — Licenses like MIT, BSD, ISC, 0BSD, Unlicense, CC0, Boost, etc. Allow use, modification, and redistribution with minimal restrictions. No source-disclosure or attribution-in-derivative-works requirement beyond preserving the upstream LICENSE text in the package itself.
21+
22+
**Permissive (with attribution)** — Licenses like Apache-2.0, Artistic, CC-BY. Allow use, modification, and redistribution like other permissive licenses, but additionally require preserving any upstream NOTICE file and crediting the original authors. Honored by keeping the LICENSE/NOTICE text in the installed package.
23+
24+
**Weak copyleft** — Licenses like MPL-2.0, LGPL, EPL, CDDL. File-level or library-level copyleft: modifications to the licensed files themselves must be released under the same license, but using the library as a dependency does not force the surrounding project to be open source. Safe for unmodified library use.
25+
26+
27+
## Weak-copyleft dependencies (explicit list)
28+
29+
These are the entries a license-compliance reviewer needs to confirm. All are safe as unmodified library deps; none would force this project to be relicensed.
30+
31+
32+
| Package | Version | Ecosystem | License(s) |
33+
|---|---|---|---|
34+
| `@edge-runtime/format` | 2.2.1 | npm | MPL-2.0 |
35+
| `@edge-runtime/node-utils` | 2.3.0 | npm | MPL-2.0 |
36+
| `@edge-runtime/ponyfill` | 2.4.2 | npm | MPL-2.0 |
37+
| `@edge-runtime/primitives` | 4.1.0 | npm | MPL-2.0 |
38+
| `@edge-runtime/vm` | 3.2.0 | npm | MPL-2.0 |
39+
| `@img/sharp-libvips-darwin-arm64` | 1.2.4 | npm | LGPL-3.0-or-later |
40+
| `@vercel/og` | 0.7.2 | npm | MPL-2.0 |
41+
| `edge-runtime` | 2.5.9 | npm | MPL-2.0 |
42+
| `lightningcss` | 1.30.2 | npm | MPL-2.0 |
43+
| `lightningcss-darwin-arm64` | 1.30.2 | npm | MPL-2.0 |
44+
| `next-mdx-remote` | 6.0.0 | npm | MPL-2.0 |
45+
| `pip-requirements-js` | 1.0.2 | npm | MPL-2.0 |
46+
47+
## Permissive dependencies
48+
49+
There are 861 permissive third-party components. They are not enumerated here to keep this file readable. Each is honored by preserving the upstream LICENSE/NOTICE text in the installed package.
50+
51+
Full attribution is available by:
52+
53+
- Running `syft <repo>/. -o cyclonedx-json` to regenerate the SBOM, or
54+
- Inspecting `node_modules/**/LICENSE` (npm/bun) or `$GOPATH/pkg/mod/.../LICENSE` (Go) in an installed checkout.
55+
56+
57+
## Regenerating this file
58+
59+
This file is auto-generated. To regenerate from the current dep tree:
60+
61+
```bash
62+
# 1. Install dependencies so package metadata is available.
63+
bun install --frozen-lockfile --linker=hoisted
64+
65+
# 2. Generate a CycloneDX SBOM with license enrichment.
66+
SYFT_ENRICH=all \
67+
SYFT_GOLANG_SEARCH_REMOTE_LICENSES=true \
68+
SYFT_JAVASCRIPT_SEARCH_REMOTE_LICENSES=true \
69+
syft . -o cyclonedx-json=sbom.cdx.json
70+
```
71+
72+
The SBOM is the canonical source of truth; this file is a human-readable summary derived from it.

0 commit comments

Comments
 (0)