gg_multi 5.7.0 copy "gg_multi: ^5.7.0" to clipboard
gg_multi: ^5.7.0 copied to clipboard

Das Herzstück der Gg Multi Suite. Fungiert als Backend und CMD-Line Tool.

Changelog #

5.7.0 - 2026-07-15 #

Added #

  • do configure-publish: new command that interactively writes <ticket>/.gg/.gg-publish.json (per-repo version increment + merge message, plus one delete_ticket choice). do publish runs it automatically when started without a config, so every interactive decision is made up front before the unattended publish.
  • do publish --continue: records per-repo progress in .gg/.gg-publish.json, skips already-published repos and resumes the rest after a failure; the file is deleted on full success. Review / can publish are re-run unless at least one repo already published. Within a repo, resume: true is forwarded to gg_one's do publish, which resumes at the first open step of its repo-level <repo>/.gg/.gg-publish.json (done_steps) — including the version tag. The full-restore rollback deletes that repo-level file (its markers would be stale); the keep-commits rollback keeps it, and --reconfigure discards ticket and repo-level files. Each repo's .gitignore gets the .gg/.gg-publish.json entry automatically before the pre-publish commit.
  • do publish --reconfigure: discards an existing .gg/.gg-publish.json and reconfigures interactively.
  • Code-review hardening: --continue also skips review/can-publish when a failed repo's own step file proves irreversible progress (first-repo failure after registry publish/merge no longer blocks the resume); --config and do configure-publish refuse to clobber a runtime file that still holds progress markers.

Changed #

  • do publish --message / -m is kept, with refined meaning: it is the default merge message used only when the .gg/.gg-publish.json is written interactively (a fresh run or --reconfigure). It seeds every repo's merge-message prompt and takes precedence over the ticket description. It is ignored once a config exists or is supplied via --config. do configure-publish accepts the same -m.
  • Tidy CHANGELOGs: single Unreleased section and chronological order
  • gg_multi: changed references to git

Fixed #

  • Code-review fixes: resume-safe branch handling, progress guards for configure/--config, did-commit check and idempotent branch deletion on resume

5.6.0 - 2026-07-13 #

Changed #

  • do review and do publish now roll back the repository state when they fail, restoring the snapshot taken before the run. do review restores every changed, not-yet-pushed repo; do publish restores only the failed repo — fully when nothing irreversible happened, otherwise keeping all commits so a re-run resumes. The shared git runner and snapshot capture live in backend/git_snapshot.dart.

5.5.1 - 2026-07-06 #

Changed #

  • gg_multi: changed references to git

5.5.0 - 2026-07-06 #

Added #

  • Org-prefixed repo folders: repos newly added to the master workspace are cloned into <org>_<repo> (Dart) / <org>-<repo> (TypeScript) folders, so same-named repos from different organizations can coexist. Existing unprefixed folders keep working: do add, do rm, ticket copies and transitive-dep cloning now resolve repos by folder name, manifest package name or git remote URL (RepoFolderResolver).
  • do add <name> now tries the known organizations from .organizations first and uses the bare <name>/<name> guess only as a last resort, so a plain add clones straight from the right org without a failed attempt.
  • can publish now runs gg can publish for every repo in the ticket (feature branch, CHANGELOG, pana, npm authentication), so publish blockers — like a missing npm login for an npm-published package — surface up front instead of as a cryptic 404 mid-publish.

Changed #

  • feat: clone whole GitHub org via gg do add - recognize /orgs/

Fixed #

  • fix(org-add): handle missing GitHub CLI gracefully and fall back to https clone url when sshUrl is empty (code-review)
  • do review (and therefore do publish) now disables pnpm 11's blockExoticSubdeps while refreshing dependencies, so the transitive git-referenced dependency chain that localizing to git feature branches creates installs instead of failing with ERR_PNPM_EXOTIC_SUBDEP. This matches the fix do publish already applied to its own refresh step.
  • do review now surfaces a failed install's output from stdout when stderr is empty (pnpm writes its errors to stdout), instead of throwing the cause-less ... (pnpm install failed: ).

Reverted #

  • Revert parallelization of gg can commit and gg do push (commit c97a31a). Restores the previous sequential implementation.

5.3.2 - 2026-06-26 #

Changed #

  • Preserve dependency constraint operator (^^/~/exact) through publish
  • gg_multi: changed references to git

5.3.1 - 2026-06-25 #

Changed #

  • gg_multi: changed references to git

Fixed #

  • Revert org-prefixed repo folders (ticket org_prefix_folders); keep gg_cross_language_deps

5.3.0 - 2026-06-19 #

Changed #

  • Build dependency graph across Dart and TypeScript bridge repos
  • Treat dart-typescript bridge repos as TypeScript for can/do review (npm install, skip dart pub get); export isBridgeProject from gg_one
  • Introduce checkProjectType() as single source of truth for bridge->TypeScript check rule; add .example() real-instance factories & P:\programs\flutter/bin/internal/exit_with_errorlevel.bat
  • Treat bridge repos as both Dart and TypeScript in do add-deps: getManifestDependenciesFromWorkspace now unions both manifests, tagging each dependency with its registry (pub.dev vs npm) so a bridge's deps are cloned from the correct source
  • Publish bridges as TypeScript: pnpm-aware publish, dual-manifest version bump, non-swallowed publish errors, idempotent resume, review skips merged repos, link: for local TS deps, package.json scripts check
  • gg_multi: changed references to git

Fixed #

  • Fix bridge handling: cancel_review now runs npm install for bridges (symmetric to do/review); repo_folder_resolver names bridge clone folders TypeScript-style (hyphen) via checkProjectType
  • Fix non-destructive sorted processing order (no longer mutates live Node.dependencies); make do/publish dependency refresh treat bridges as TypeScript via checkProjectType, symmetric with do/review and do/cancel_review
  • Review fixes: keep full npm-scoped names in the dependency graph so different scopes stay distinct (no false duplicate-drop / misrouted edges); surface bridges in gg ls (dart+nodejs label, list package.json deps as typescript)

5.2.0 - 2026-06-11 #

Changed #

  • gg_multi: changed references to git

5.1.0 - 2026-06-09 #

Changed #

  • feat(ts): version-pinned git deps via #semver: + tag-push for npm/pnpm
  • gg_multi: changed references to git
  • refactor(ts): trim comments to grace-cloud style limits + do_maintain layout
  • style: apply grace-cloud comment + 80-char limits across ticket
  • gg_multi: changed references to git

5.0.0 - 2026-06-08 #

Changed #

  • feat(do review): integrate the remote feature branch before pushing to avoid non-fast-forward rejections; on a real rebase conflict it aborts cleanly and fails with an actionable message (never force-pushes)
  • feat(do review): after merging origin/main, re-run 'gg can commit' for any repo whose HEAD moved, to catch merges that silently corrupt a manifest (e.g. duplicate keys) before localizing/committing/pushing; aborts early with a clear message
  • feat(do add): auto-clone transitive deps into master before graph build & P:\programs\flutter/bin/internal/exit_with_errorlevel.bat
  • gg_multi: changed references to git
  • feat(do_publish): default askBeforePublishing=false in multi-publish for non-interactive runs
  • gg_multi: changed references to git
  • gg_multi: changed references to git

Fixed #

  • feat: language-aware add/publish via gg_lang (NpmRegistryChecker + RegistryWaiter, manifest-name resolution for scoped packages); exclude fixture sub-packages from analysis and load them via relative imports
  • fix(do review): surface the exact failing step and underlying cause instead of only 'Failed to review in:
  • fix(filesystem_utils): skip node_modules during recursive copy to preserve pnpm symlink graph in TS ticket repos

4.5.2 - 2026-05-31 #

Changed #

  • can review fuehrt vor dem Uncommitted-Check dart pub get --offline aus (analog gg_one can commit, mit Status-Printer)

4.5.1 - 2026-05-31 #

Changed #

  • Revertiere die Parallelisierung von 'gg can commit' und 'gg do push' (Commit c97a31a). Die vorherige sequentielle Implementierung wird wiederhergestellt.
  • Update gg metadata files for revert branch

4.5.0 - 2026-05-20 #

4.4.0 - 2026-05-19 #

Changed #

  • gg_multi: changed references to git

4.3.1 - 2026-05-19 #

Changed #

  • gg_multi: changed references to git

4.3.0 - 2026-05-17 #

Changed #

  • parallelization
  • documentation

4.2.0 - 2026-05-12 #

4.1.0 - 2026-05-12 #

Changed #

  • gg_multi: changed references to git

4.0.1 - 2026-05-11 #

Changed #

  • gg_multi: changed references to git
  • Gg Multi: changed references to pub.dev
  • BREAKING: Renamed package from kidney_core to gg_multi. Repository moved to https://github.com/ggsuite/gg\_multi. Update dependencies: entries and import 'package:kidney_core/...' statements to import 'package:gg_multi/...'. The executable is now gg_multi (previously kidney_core).
  • BREAKING: Replaced dependency gg ^7.0.5 with gg_one ^8.0.0 (the gg package itself was renamed to gg_one upstream).
  • Renamed status marker file .kidney_status to .gg_multi_status. Existing checked-out workspaces must rename the file or run the localization commands again.
  • Upgrade gg_localize_refs version

Removed #

  • remove unlocalize step from do review command and tests

3.1.0 - 2026-05-04 #

Added #

  • Add TypeScript support to do review and do cancel-review

3.0.4 - 2026-04-29 #

3.0.3 - 2026-04-28 #

Fixed #

  • Refactor _prepareMasterRepositoryForCopy and fix git tag deletion on macOS

3.0.2 - 2026-04-28 #

Changed #

  • check in kidney_core can review, dass kein repo im main branch ist
  • Execute dart pub get after changing of pubspec.yaml in kidney_core do publish

3.0.1 - 2026-04-24 #

3.0.0 - 2026-04-23 #

Changed #

  • Change Confirm dialogs to Select dialogs

Removed #

  • Remove --force option in do publish

2.8.1 - 2026-04-15 #

2.8.0 - 2026-04-14 #

Added #

  • Add command do claude

2.7.2 - 2026-04-13 #

2.7.1 - 2026-04-08 #

Changed #

  • Run do push before can publish in DoPublishCommand workflow

2.7.0 - 2026-04-08 #

Added #

  • Add test for quiet taskLog behavior when verbose is false

Changed #

  • kidney: changed references to local
  • Run merge main into feat for all repos in ticket during publish
  • Swap order of can merge and do push in can publish flow

2.6.0 - 2026-04-07 #

Added #

  • Add gg merge main into feat step to can publish command

2.5.0 - 2026-04-01 #

2.4.2 - 2026-03-31 #

2.4.1 - 2026-03-30 #

2.4.0 - 2026-03-30 #

2.3.1 - 2026-03-30 #

2.3.0 - 2026-03-30 #

2.2.9 - 2026-03-30 #

2.2.8 - 2026-03-30 #

2.2.7 - 2026-03-30 #

2.2.6 - 2026-03-29 #

2.2.5 - 2026-03-29 #

2.2.4 - 2026-03-29 #

2.2.3 - 2026-03-29 #

2.2.2 - 2026-03-27 #

Changed #

  • new gg version

2.2.1 - 2026-03-27 #

Changed #

  • increase gg version

2.2.0 - 2026-03-27 #

Changed #

  • Run git and dart commands in shell for add command and tests
  • Kidney: changed references to pub.dev
  • Upgrade gg_localize_refs version
  • Run git commands always in shell

Removed #

  • remove unlocalize step from do review command and tests

2.1.0 - 2026-03-27 #

Added #

  • Add did commit and did push

Changed #

  • run git reset when adding repo to ticket
  • Run did commit in can publish

2.0.1 - 2026-03-26 #

Changed #

  • kidney: changed references to path
  • kidney: changed references to git

Fixed #

  • small fixes in tests and version upgrades

2.0.0 - 2026-03-26 #

Changed #

  • Upgraded gg to 6.0.1

1.1.0 - 2026-03-26 #

Removed #

  • Move add, remove, code, create, init, add_deps to do/ directory and update imports

1.0.0 - 2026-03-24 #

Added #

  • Initial boilerplate.
  • Add readme
  • Add tests
  • Add --force parameter to add
  • Add console colors
  • Add console colors in remove command
  • Add init command
  • Add tests for create ticket
  • Add function defaultKidneyWorkspacePath
  • Add force flag correctly to AddCommand
  • Add command kidney_core list tickets
  • add support in add command for multiple repos
  • Add constants.dart and change master folder to .master
  • Add tests for creation of .organizations
  • Add test: logs error when primary and all fallback organization clones fail
  • Add tests for command add organization
  • add tests for url parser
  • Add tests for azure urls
  • Add tests for can publish
  • Add do execute command
  • add tests for kidney add
  • add tests for do publish
  • Add VS Code workspace file generation to kidney add command
  • Add test for kidney_core can review command failure handling
  • add tests for quiet taskLog behavior when verbose is false

Changed #

  • Ignore dart dependencies in add-deps
  • Log messages start with upper case
  • Update Readme
  • execute list repos, list organizations and create ticket always in kidney workspace
  • Error if ticket already exists
  • Successfully open VSCode on Windows
  • Rename GitCloner to GitHandler
  • restructure code in review command
  • code command does not require argument if executed in ticket directory
  • change to relative path outputs in log
  • suggest cd command to user when new ticket created
  • change parameter projectName to project_name in .organizations json file
  • extractOrganizationFromUrl works with azure dev ops urls
  • extract repo name of azure dev ops urls correctly
  • Write kidney_status file
  • Abort directly if a command fails in do review
  • Execute gg do commit after localizing in kidney add
  • Pass gitRef param to _localizeRefs.get in DoReviewCommand and tests
  • open ticket as VSCode workspace file instead of individual repos
  • Switch gg_localize_refs dependency to use GitHub repo
  • Update integration test and add sample folder metadata files
  • Update .gg.json with new canCommit success hash value
  • Refactor install_git_hooks to simplify error handling logic
  • Enforce pre-push commit checks only on main/master branches
  • log git and pub commands with darkGray instead of green
  • Refactor Node to use manifest field instead of pubspec in tests
  • Switch gg_localize_refs dependency from path to git URL
  • Update gg_publish to version 3.2.0 in pubspec.yaml
  • Update gg and related deps to latest pub versions in pubspec.yaml
  • Update version and repository URL in pubspec.yaml
  • Update canCheckout hash in .gg.json to match other actions

Removed #

  • remove trailing # and / in organization urls
  • remove command works also for tickets
  • Remove redundant code in appendOrganization
  • Remove prints
  • Remove gh pr create from review