O Que É Vendoring de Dependências?
Vendoring é a prática de fazer o check-in de cópias das dependências de terceiros no seu próprio repositório de código-fonte, em vez de baixá-las de um registry externo a cada build. O build então usa as cópias locais, já commitadas. Isso garante que o código exato esteja disponível e inalterado, mesmo que o registry upstream esteja fora do ar ou uma versão desapareça.
Por que isso importa
Vendoring torna os builds resilientes a quedas de registry e a pacotes removidos, e torna as mudanças de dependências visíveis no code review. O trade-off é um repositório maior e o esforço manual de manter as cópias vendoradas atualizadas, então as equipes o comparam com lockfiles somados a um proxy de cache.
Conceitos relacionados
- Uma alternativa a buscar de um registry a cada build
- Melhora a hermeticidade e a reprodutibilidade do build
- Lockfiles são uma abordagem de fixação mais leve
Guias relacionados
What Is a Lockfile?A lockfile records the exact resolved versions and hashes of every dependency, so installs are deterministic…
What Is Dependency Pinning?Dependency pinning fixes dependencies to exact versions (or hashes) instead of ranges, so builds are predicta…
What Is a Hermetic Build?A hermetic build depends only on explicitly declared, pinned inputs and is isolated from the host, so it prod…