Skip to content

Commit a364f6d

Browse files
authored
Add build criteria content for libraries (#3293)
[ ] Check if this is a typo or other quick fix and ignore the rest :) ## Type of change Update to Libraries overview ### What should this PR do? Add content on build criteria, licensing and scope availability, version support ### Why are we making this change? Requested in this thread: https://chainguard-dev.slack.com/archives/C0962EGMS3F/p1777559146860869?thread_ts=1777405982.409859&cid=C0962EGMS3F Issue documented here: https://github.com/orgs/chainguard-dev/projects/166/views/14?pane=issue&itemId=182364463&issue=chainguard-dev%7Cinternal%7C5824 ### What are the acceptance criteria? Content should be clear and accurate and appear in the expected location ### How should this PR be tested? Review the deploy preview --------- Signed-off-by: s-stumbo <sally.stumbo@chainguard.dev>
1 parent 23b1b86 commit a364f6d

1 file changed

Lines changed: 26 additions & 1 deletion

File tree

content/chainguard/libraries/overview.md

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,32 @@ Chainguard Libraries is available for the following library ecosystems:
9999
* Python and the larger ecosystem with
100100
[Chainguard Libraries for Python](/chainguard/libraries/python/overview/)
101101

102-
## Library version support
102+
## Chainguard criteria for building a library
103+
104+
Chainguard Libraries includes thousands of Java, JavaScript, and Python libraries, and coverage is continuously growing as we add more packages and versions over time. Chainguard aims to build libraries that are relevant to our customers and that support broader software supply chain security goals. However, it is not always feasible or safe to rebuild and redistribute every package from public registries such as Maven Central, npm, or PyPI.
105+
106+
### Licensing and source availability
107+
108+
Chainguard Libraries are rebuilt from upstream source code, not mirrored binaries from public registries. For a library to be in scope:
109+
110+
* Source code must be available and verifiable
111+
* The project’s source must be available in a source code manager (such as GitHub or GitLab). Packages that do not provide a valid or verifiable source URL cannot be rebuilt in the Chainguard Factory and are out of scope.
112+
* Licensing must allow rebuild and redistribution
113+
* The project must be licensed in a way that allows Chainguard to rebuild and redistribute it to customers.
114+
115+
### Library version support
116+
117+
Chainguard builds libraries using supported language toolchains in our hardened build environment. We do not aim to replicate all historical runtime environments exactly, but we do attempt to preserve runtime compatibility where it is safe to do so. For older or EOL projects, our ability to build and remediate issues is constrained by runtime compatibility and by upstream maintenance practices.
118+
119+
Our current minimum supported toolchains are:
120+
121+
* **Python**: Python 3.10 and higher.
122+
* **Java**: Java 8 and higher.
123+
* **JavaScript**: Any supported, non-EOL version of Node.js.
124+
125+
We will attempt to rebuild any libraries that meet the [licensing and source availability criteria](#licensing-and-source-availability) using the supported toolchains.
126+
127+
### EOL version support
103128

104129
When a library version reaches end of life (EOL) upstream, Chainguard Libraries continues to build packages and provide security fixes for that version for six months beyond the upstream EOL date.
105130

0 commit comments

Comments
 (0)