Bun selbst ist MIT-lizenziert.
JavaScriptCore
Bun linkt JavaScriptCore (und WebKit) statisch, was LGPL-2-lizenziert ist. WebCore-Dateien von WebKit sind ebenfalls unter LGPL2 lizenziert. Gemäß LGPL2:
(1) Wenn Sie statisch gegen eine LGPL-lizenzierte Bibliothek linken, müssen Sie Ihre Anwendung auch in einem Objektformat (nicht unbedingt Quellcode) bereitstellen, sodass ein Benutzer die Möglichkeit hat, die Bibliothek zu modifizieren und die Anwendung neu zu linken.
Sie können die von Bun verwendete gepatchte Version von WebKit hier finden: https://github.com/oven-sh/webkit. Wenn Sie Bun mit Änderungen neu linken möchten:
git submodule update --init --recursivemake jsczig build
Dies kompiliert JavaScriptCore, kompiliert Buns .cpp-Bindings für JavaScriptCore (die die Objektdateien sind, die JavaScriptCore verwenden) und gibt eine neue bun-Binärdatei mit Ihren Änderungen aus.
Verknüpfte Bibliotheken
Bun linkt diese Bibliotheken statisch:
| Bibliothek | Lizenz |
|---|---|
boringssl | mehrere Lizenzen |
brotli | MIT |
libarchive | mehrere Lizenzen |
lol-html | BSD 3-Clause |
mimalloc | MIT |
picohttp | doppelt lizenziert unter der Perl-Lizenz oder der MIT-Lizenz |
zstd | doppelt lizenziert unter der BSD-Lizenz oder GPLv2-Lizenz |
simdutf | Apache 2.0 |
tinycc | LGPL v2.1 |
uSockets | Apache 2.0 |
zlib-cloudflare | zlib |
c-ares | MIT-lizenziert |
libicu 72 | Lizenz hier |
libbase64 | BSD 2-Clause |
libuv (auf Windows) | MIT |
libdeflate | MIT |
Ein Fork von uWebsockets | Apache 2.0-lizenziert |
| Teile von Tigerbeetles IO-Code | Apache 2.0-lizenziert |
Polyfills
Aus Kompatibilitätsgründen sind die folgenden Pakete in Buns Binärdatei eingebettet und werden injiziert, wenn sie importiert werden.
| Paket | Lizenz |
|---|---|
assert | MIT |
browserify-zlib | MIT |
buffer | MIT |
constants-browserify | MIT |
crypto-browserify | MIT |
domain-browser | MIT |
events | MIT |
https-browserify | MIT |
os-browserify | MIT |
path-browserify | MIT |
process | MIT |
punycode | MIT |
querystring-es3 | MIT |
stream-browserify | MIT |
stream-http | MIT |
string_decoder | MIT |
timers-browserify | MIT |
tty-browserify | MIT |
url | MIT |
util | MIT |
vm-browserify | MIT |