Este guia abrange a jornada completa de uma biblioteca.NET, desde a preparação da API até a divulgação da versão estável no NuGet.org. Também aborda quando o pacote deve ficar em feeds públicos e quando em feeds privados.

Como Publicar uma Biblioteca .NET no NuGet.org

Preparando a API

A primeira etapa é garantir que a API pública seja tratada como um contrato. Isso envolve a compatibilidade, versão consciente e validação do artefato em um ambiente de consumidor separado.

Decidindo o Tipo de Distribuição

Decida entre o tipo de distribuição público (NuGet.org) ou privado (Azure Artifacts ou GitHub Packages). A publicação segura combina três pilares: contrato estável, versão consciente e validação do artefato.

Validando Localmente

Validar o pacote localmente é crucial antes de subir a versão definitiva. Isso garante que o pacote funcione corretamente em ambientes externos.

Publicação em Ambientes de Teste

Se o pacote for público, será necessário revisar e indexar no NuGet.org. Se for interno, o melhor caminho é usar Azure Artifacts ou GitHub Packages, com autenticação e controle de acesso.

Publicação Pública

Após validar localmente, o pacote pode ser publicado em um feed público no NuGet.org. Isso permite que outras pessoas e equipes consumam a biblioteca.

Publicação Privada

Para feeds privados, o pacote pode ser publicado em feeds como Azure Artifacts ou GitHub Packages. Esses feeds permitem distribuição interna autenticada e persistente.

Preparação Antes da Publicação

Antes de empacotar o primeiro pacote, é importante validar alguns preceitos básicos. Isso inclui ter o.NET SDK instalado e funcional, uma conta no Nuget.org e uma API key com escopo limitado para o pacote.

Separando o Cenário de Distribuição

O pacote pode ser distribuído em feeds públicos (NuGet.org) ou privados (Azure Artifacts ou GitHub Packages). A publicação pública exige revisão e indexação, enquanto a privada usa autenticação e controle de acesso.

Validando o Pacote

Contrato e Estratégia de Versionamento SemVer

O versionamento é tratado como parte do contrato público. O SemVer é a convenção mais usada no ecossistema e define a estrutura MAJOR.MINOR.PATCH para cada versão. A versão MAJOR indica alterações incompatíveis de API pública, MINOR indica adições compatíveis, e PATCH indica correções de defeito sem alterar a API.

Versões Pré-Release

As versões pré-release (como 1.5.0-beta.1, 1.5.0-rc.1, e 1.6.0-alpha.3) são úteis para validar uma funcionalidade antes de o pacote ser publicado como estável. Isso reduz o risco de anunciar uma versão definitiva sem testar os impactos reais.

Conclusão

Publicar bibliotecas.NET no NuGet.org exige uma abordagem cuidadosa e planejada. Isso envolve a preparação da API, a escolha do tipo de distribuição, a validação local e a publicação em feeds públicos ou privados. A versão consciente e a validação do artefato são fundamentais para garantir que o pacote seja útil e confiável para os consumidores externos e internos.

ApenasBibliotecaIntroducaoNugetPublicar