gg_multi 5.7.0
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 onedelete_ticketchoice).do publishruns 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 publishare re-run unless at least one repo already published. Within a repo, resume: true is forwarded to gg_one'sdo 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--reconfigurediscards ticket and repo-level files. Each repo's.gitignoregets the.gg/.gg-publish.jsonentry automatically before the pre-publish commit.do publish --reconfigure: discards an existing.gg/.gg-publish.jsonand reconfigures interactively.- Code-review hardening:
--continuealso 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);--configanddo configure-publishrefuse to clobber a runtime file that still holds progress markers.
Changed #
do publish --message/-mis kept, with refined meaning: it is the default merge message used only when the.gg/.gg-publish.jsonis 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-publishaccepts 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 reviewanddo publishnow roll back the repository state when they fail, restoring the snapshot taken before the run.do reviewrestores every changed, not-yet-pushed repo;do publishrestores 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 inbackend/git_snapshot.dart.
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.organizationsfirst 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 publishnow runsgg can publishfor 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 thereforedo publish) now disables pnpm 11'sblockExoticSubdepswhile refreshing dependencies, so the transitive git-referenced dependency chain that localizing to git feature branches creates installs instead of failing withERR_PNPM_EXOTIC_SUBDEP. This matches the fixdo publishalready applied to its own refresh step.do reviewnow 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 commitandgg 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 #
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.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.2.0 - 2026-05-12 #
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_coretogg_multi. Repository moved to https://github.com/ggsuite/gg\_multi. Updatedependencies:entries andimport 'package:kidney_core/...'statements toimport 'package:gg_multi/...'. The executable is nowgg_multi(previouslykidney_core). - BREAKING: Replaced dependency
gg ^7.0.5withgg_one ^8.0.0(theggpackage itself was renamed togg_oneupstream). - Renamed status marker file
.kidney_statusto.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.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 #
2.8.1 - 2026-04-15 #
2.7.2 - 2026-04-13 #
2.7.0 - 2026-04-08 #
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.0 - 2026-03-27 #
2.1.0 - 2026-03-27 #
2.0.1 - 2026-03-26 #
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