Pular para o conteúdo

Usar um pacote

add, install, remove — e onde o código de terceiro vai parar.

dataforge add resolve, baixa e instala; o adopt encontra o resultado. Quatro arquivos e uma pasta, e cada um tem um dono.

OndeO quêVersionado?
forge.tomlo que você pediu — as faixassim
forge.locko que foi instalado — versão e sha256sim
forge_modules/os pacotesnão
~/.dataforge/cache/os tarballs, entre projetosnão
bash
dataforge add validador          # a ultima, e grava a faixa
dataforge add tabela@^1.2        # uma faixa explicita
dataforge install                # tudo do forge.toml (e do lock)
dataforge list                   # o que esta instalado
dataforge remove tabela          # tira do toml e da pasta
dataforge outdated               # o que sobe, e o que exige mudar a faixa
dataforge
// Depois do 'add', o 'adopt' acha sozinho: ele olha
// 'forge_modules/', subindo ate achar um 'forge.toml'.
//
//   adopt validador as V
//   out V.cpf("529.982.247-25")
//
// O nome e o do PACOTE, e nao um caminho: e o mesmo 'adopt' que o
// teste da propria biblioteca usa, e e por isso que ele precisa
// funcionar pelo nome — o teste exercita a biblioteca pelo caminho
// que um usuario usaria.

out "o adopt encontra o que o add instalou"

O que a extração recusa#

RecusaO ataque
entrada com ../Zip Slip: escrever fora da pasta do pacote
link simbólicoapontar para fora e ser seguido depois
descompactação desproporcionalzip bomb: 1 KB que vira 10 GB

Continue em O lockfile e O registro.