Buscar pacotes, repositórios e categorias de apps

Detalhes do pacotev11.11.1

pub_release

Automatiza o lançamento de um pacote Dart no pub.dev, incluindo a execução do dartfmt, criação de uma marcação no git, incremento do número da versão do pacote e envio do pacote para o pub.dev.

macOSWindowsLinux
Downloads em 30 dias
970
Curtidas
22
Pontos Pub
150

Instalar pacote

flutter pub add pub_release

Visão geral do pacote

Orientação gerada a partir de informações públicas. Apenas para referência.

pub_release é um pacote Flutter/Dart que automatiza o processo de publicação de um pacote Dart no pub.dev. Ele simplifica a publicação executando o dartfmt para formatação de código, incrementando o número da versão, criando uma marca do git e enviando o pacote atualizado para o pub.dev. Projetado para desenvolvedores que publicam pacotes com frequência, reduz etapas manuais e minimiza erros nos fluxos de liberação. A ferramenta é compatível com macOS, Windows e Linux, tornando-a acessível em ambientes de desenvolvimento principais.

Casos de uso

  • Automatizando lançamentos de pacotes
  • Simplificando a publicação no pub.dev
  • Garantir a formatação de código consistente
  • Gerenciando incrementos de versão
  • Reduzindo erros manuais na liberação

Principais recursos

  • Execução automática do dartfmt
  • Atualização de versão
  • Marcando Git
  • Enviar para o pub.dev
  • Suporte multiplataforma

Indicado para

  • mantenedores de pacotes Dart
  • Integrações de pipeline CI/CD
  • Editores frequentes
  • colaboradores de código aberto

Considerações

  • Requer configuração do git
  • Precisa de credenciais do pub.dev
  • Depende da estratégia correta de versionamento
  • Pode ser necessário configurar personalizado para fluxos de trabalho complexos

README original

Snapshot do README original do repositório-fonte vinculado. Consulte o repositório para o conteúdo mais recente.

README

Pub Release is a package that automates publishing dart/flutter packages to pub.dev.

Pub Release also supports the simultaneous release of multiple related packages.

Pub Release performs the following operations:

  • Run pre/post release 'hook' scripts.
  • Formats all code using dartfmt
  • Increments the version no. using semantic versioning after asking what sort of changes have been made.
  • Creates a dart file containing the version no. in src/version/version.g.dart
  • Updates the pubspec.yaml with the new version no.
  • If you are using Git:
    • Generates a Git Tag using the new version no.
    • Generates release notes from commit messages since the last tag.
    • Publish any executables list in pubspec.yaml as assets on github
  • Allows you to edit the release notes.
  • Adds the release notes to CHANGELOG.MD along with the new version no.
  • Publishes the package to pub.dev.

Getting Started

Install Pub Release globally:

dart pub global activate pub_release

Run it from your package root:

pub_release

Read the full documentation to learn how to use it.

Common Workflows

Dry-run a release (no publish):

pub_release --dry-run

Set a specific version and skip prompts:

pub_release --setVersion=1.2.3 --autoAnswer

Run multi-package release in a mono-repo:

pub_release multi

Dry Run

Use --dry-run to validate a release without publishing. During a dry run, pub_release performs the publish step inside a temporary copy of your package to avoid git working tree warnings while still validating the generated version and changelog.

If you need to allow warnings from dart pub publish, pass --ignore-warnings.

Commands

  • pub_release - release a single package (default).
  • pub_release multi - release related packages using tool/pubrelease.multi.yaml.
  • pub_release help - show usage.

Flags

  • --dry-run - validate but do not publish.
  • --ignore-warnings - pass --ignore-warnings to dart pub publish.
  • --[no]-test - enable/disable unit tests (default: on).
  • --test-concurrency=<n> - maximum concurrent test suites (positive integer); overrides the project setting.
  • --line=<n> - formatter line length (default: 80).
  • --[no]-format - enable/disable formatting (default: on).
  • --verbose - enable verbose logging.
  • --git - enable git operations (default: on).
  • --no-multi - disable multi-release even if a multi config exists.
  • --askVersion - prompt for version (default).
  • --setVersion=<x.y.z> - set version directly.
  • --autoAnswer - suppress prompts (requires --setVersion).
  • --tags=<tag,...> - only run tests matching tags.
  • --exclude-tags=<tag,...> - exclude tests by tag.
  • --skip-packages=<name,...> - skip named packages when running the multi command.

Test Concurrency

For projects whose tests share external state, run test suites serially by adding the following to tool/.pubrelease.yaml:

test-concurrency: 1

Override the project setting for a release with:

pub_release --test-concurrency=4

Pub Release passes the selected value to critical_test as --concurrency=<n>. The value must be a positive integer. If neither setting is provided, critical_test's default concurrency is unchanged. For multi-package releases, the selected value applies to every released package. --no-test still skips tests regardless of the concurrency setting.

Multi Release Notes

When using pub_release multi, the first package that generates a changelog entry will have its release notes propagated to the other packages unless they already contain notes for that version.

Categorias

Dependências

Lista de dependências 10 itens

Repositório-fonte

Projetos que usam este pacote

Ainda não há dados.