Skip to content

O próprio Bun é licenciado sob MIT.

JavaScriptCore ​

O Bun vincula estaticamente o JavaScriptCore (e WebKit) que é licenciado sob LGPL-2. Arquivos WebCore do WebKit também são licenciados sob LGPL2. Conforme LGPL2:

(1) Se você vincular estaticamente a uma biblioteca LGPL, você também deve fornecer sua aplicação em um formato de objeto (não necessariamente fonte), para que um usuário tenha a oportunidade de modificar a biblioteca e relinkar a aplicação.

Você pode encontrar a versão corrigida do WebKit usada pelo Bun aqui: https://github.com/oven-sh/webkit. Se você deseja relinkar o Bun com alterações:

  • git submodule update --init --recursive
  • make jsc
  • zig build

Isso compila o JavaScriptCore, compila os bindings .cpp do Bun para JavaScriptCore (que são os arquivos de objeto usando JavaScriptCore) e produz um novo binário bun com suas alterações.

Bibliotecas vinculadas ​

O Bun vincula estaticamente estas bibliotecas:

BibliotecaLicença
boringsslvárias licenças
brotliMIT
libarchivevárias licenças
lol-htmlBSD 3-Clause
mimallocMIT
picohttplicenciado duplamente sob Licença Perl ou Licença MIT
zstdlicenciado duplamente sob Licença BSD ou GPLv2
simdutfApache 2.0
tinyccLGPL v2.1
uSocketsApache 2.0
zlib-cloudflarezlib
c-aresMIT
libicu 72licença aqui
libbase64BSD 2-Clause
libuv (no Windows)MIT
libdeflateMIT
Um fork do uWebsocketsLicenciado sob Apache 2.0
Partes do código IO do TigerbeetleLicenciado sob Apache 2.0

Polyfills ​

Por razões de compatibilidade, os seguintes pacotes são incorporados no binário do Bun e injetados se importados.

PacoteLicença
assertMIT
browserify-zlibMIT
bufferMIT
constants-browserifyMIT
crypto-browserifyMIT
domain-browserMIT
eventsMIT
https-browserifyMIT
os-browserifyMIT
path-browserifyMIT
processMIT
punycodeMIT
querystring-es3MIT
stream-browserifyMIT
stream-httpMIT
string_decoderMIT
timers-browserifyMIT
tty-browserifyMIT
urlMIT
utilMIT
vm-browserifyMIT

Créditos adicionais ​

  • O transpilador JS, lexer CSS e código do resolvedor de módulos Node.js do Bun é uma porta Zig do projeto esbuild de @evanw.
  • Crédito a @kipply pelo nome "Bun"!

Bun by www.bunjs.com.cn edit