패키지, 저장소 및 앱 카테고리 검색

GitHub 저장소onepub-dev/pub_release

pub_release

Pub Release는 Dart/Flutter 패키지를 pub.dev에 게시하는 데 도움을 주는 패키지입니다.

pub_release 프로젝트 이미지
스타
18
포크
4
최근 푸시(UTC)
2026. 7. 24.
프로젝트 상태
활성

원본 README

아래는 영문 원문 스냅샷입니다. 최신 내용은 GitHub에서 확인하세요.

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.

OnePub GitHub avatar
GitHub 작성자

OnePub ↗

언어Dart

분류

이 저장소가 배포한 패키지

사용 중인 의존성

의존성 목록 12 개

프로젝트에 맞는 저장소를 선택하려면?

사용 목적에 따라 검색하고 개발 활동을 비교한 뒤 원본 저장소에서 요구 사항을 확인하세요.

  1. 이름, 작성자 또는 설명으로 검색하고 기술 주제로 범위를 좁힙니다.
  2. 스타, 포크, 최근 푸시를 함께 비교하세요. 스타는 관심의 지표이며 품질을 보장하지 않습니다.
  3. 사용하기 전에 GitHub에서 README, 라이선스, Issues를 확인하세요.

출처 및 관리

“A repository is the most basic element of GitHub.”

GitHub Docs — About repositories ↗