git 5.0.0.beta.3 → 5.0.0.beta.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.dockerignore +27 -0
- data/.github/copilot-instructions.md +3 -8
- data/.github/hooks/bin-setup-on-worktree.json +11 -0
- data/.github/hooks/run-bin-setup-once.sh +14 -0
- data/.github/skills/breaking-change-analysis/SKILL.md +6 -9
- data/.github/skills/ci-cd-troubleshooting/SKILL.md +2 -2
- data/.github/skills/command-implementation/REFERENCE.md +34 -33
- data/.github/skills/command-implementation/SKILL.md +5 -4
- data/.github/skills/command-test-conventions/SKILL.md +13 -9
- data/.github/skills/command-yard-documentation/SKILL.md +14 -6
- data/.github/skills/development-workflow/SKILL.md +20 -14
- data/.github/skills/facade-implementation/REFERENCE.md +19 -22
- data/.github/skills/facade-implementation/SKILL.md +0 -5
- data/.github/skills/facade-test-conventions/SKILL.md +4 -7
- data/.github/skills/facade-yard-documentation/SKILL.md +8 -2
- data/.github/skills/make-skill-template/SKILL.md +53 -3
- data/.github/skills/pr-readiness-review/SKILL.md +22 -2
- data/.github/skills/project-context/SKILL.md +16 -23
- data/.github/skills/pull-request-review/SKILL.md +2 -2
- data/.github/skills/rebase/SKILL.md +148 -0
- data/.github/skills/refactor-command-to-commandlineresult/SKILL.md +1 -1
- data/.github/skills/resolve-feedback/SKILL.md +288 -0
- data/.github/skills/review-arguments-dsl/CHECKLIST.md +3 -3
- data/.github/skills/reviewing-skills/SKILL.md +28 -3
- data/.github/skills/test-debugging/SKILL.md +20 -19
- data/.github/skills/yard-documentation/SKILL.md +671 -483
- data/.github/skills/yard-documentation/element-rules.md +162 -0
- data/.github/skills-deprecated/README.md +21 -0
- data/.github/{skills → skills-deprecated}/extract-command-from-lib/SKILL.md +9 -9
- data/.github/{skills → skills-deprecated}/extract-facade-from-base-lib/SKILL.md +12 -12
- data/.github/workflows/continuous_integration.yml +3 -2
- data/.rubocop.yml +7 -39
- data/.yard-lint.yml +75 -0
- data/CONTRIBUTING.md +186 -174
- data/Gemfile +17 -0
- data/README.md +47 -12
- data/Rakefile +3 -21
- data/UPGRADING.md +219 -70
- data/docker/test/Dockerfile +32 -0
- data/docker/test/docker-compose.yml +0 -0
- data/git.gemspec +3 -4
- data/lib/git/author.rb +20 -1
- data/lib/git/branch.rb +26 -6
- data/lib/git/branch_delete_failure.rb +3 -0
- data/lib/git/branch_delete_result.rb +6 -3
- data/lib/git/branch_info.rb +6 -6
- data/lib/git/command_line/base.rb +6 -13
- data/lib/git/command_line/capturing.rb +67 -10
- data/lib/git/command_line/result.rb +0 -8
- data/lib/git/command_line/streaming.rb +45 -5
- data/lib/git/command_line.rb +4 -3
- data/lib/git/commands/add.rb +61 -53
- data/lib/git/commands/am/abort.rb +2 -2
- data/lib/git/commands/am/apply.rb +109 -98
- data/lib/git/commands/am/continue.rb +2 -2
- data/lib/git/commands/am/quit.rb +2 -2
- data/lib/git/commands/am/retry.rb +4 -2
- data/lib/git/commands/am/show_current_patch.rb +1 -1
- data/lib/git/commands/am/skip.rb +2 -2
- data/lib/git/commands/am.rb +2 -2
- data/lib/git/commands/apply.rb +7 -2
- data/lib/git/commands/archive/list_formats.rb +3 -3
- data/lib/git/commands/archive.rb +7 -2
- data/lib/git/commands/arguments.rb +1370 -359
- data/lib/git/commands/base.rb +111 -13
- data/lib/git/commands/branch/copy.rb +29 -21
- data/lib/git/commands/branch/create.rb +72 -68
- data/lib/git/commands/branch/delete.rb +25 -17
- data/lib/git/commands/branch/list.rb +76 -60
- data/lib/git/commands/branch/move.rb +29 -21
- data/lib/git/commands/branch/set_upstream.rb +8 -8
- data/lib/git/commands/branch/show_current.rb +3 -3
- data/lib/git/commands/branch/unset_upstream.rb +4 -8
- data/lib/git/commands/branch.rb +2 -2
- data/lib/git/commands/cat_file/batch.rb +36 -20
- data/lib/git/commands/cat_file/filtered.rb +12 -12
- data/lib/git/commands/cat_file/raw.rb +13 -13
- data/lib/git/commands/cat_file.rb +4 -4
- data/lib/git/commands/checkout/branch.rb +7 -5
- data/lib/git/commands/checkout/files.rb +5 -4
- data/lib/git/commands/checkout.rb +4 -4
- data/lib/git/commands/checkout_index.rb +5 -4
- data/lib/git/commands/clean.rb +6 -4
- data/lib/git/commands/clone.rb +5 -4
- data/lib/git/commands/commit.rb +5 -4
- data/lib/git/commands/commit_tree.rb +5 -4
- data/lib/git/commands/config_option_syntax/add.rb +7 -4
- data/lib/git/commands/config_option_syntax/get.rb +9 -5
- data/lib/git/commands/config_option_syntax/get_all.rb +7 -4
- data/lib/git/commands/config_option_syntax/get_color.rb +8 -4
- data/lib/git/commands/config_option_syntax/get_color_bool.rb +7 -4
- data/lib/git/commands/config_option_syntax/get_regexp.rb +8 -4
- data/lib/git/commands/config_option_syntax/get_urlmatch.rb +8 -4
- data/lib/git/commands/config_option_syntax/list.rb +8 -4
- data/lib/git/commands/config_option_syntax/remove_section.rb +7 -2
- data/lib/git/commands/config_option_syntax/rename_section.rb +7 -2
- data/lib/git/commands/config_option_syntax/replace_all.rb +7 -2
- data/lib/git/commands/config_option_syntax/set.rb +7 -2
- data/lib/git/commands/config_option_syntax/unset.rb +7 -4
- data/lib/git/commands/config_option_syntax/unset_all.rb +7 -2
- data/lib/git/commands/describe.rb +5 -4
- data/lib/git/commands/diff.rb +13 -12
- data/lib/git/commands/diff_files.rb +7 -6
- data/lib/git/commands/diff_index.rb +10 -7
- data/lib/git/commands/fetch.rb +6 -4
- data/lib/git/commands/fsck.rb +6 -4
- data/lib/git/commands/gc.rb +6 -4
- data/lib/git/commands/grep.rb +6 -5
- data/lib/git/commands/init.rb +6 -4
- data/lib/git/commands/log.rb +287 -285
- data/lib/git/commands/ls_files.rb +69 -65
- data/lib/git/commands/ls_remote.rb +62 -56
- data/lib/git/commands/ls_tree.rb +50 -46
- data/lib/git/commands/maintenance/register.rb +25 -23
- data/lib/git/commands/maintenance/run.rb +7 -2
- data/lib/git/commands/maintenance/start.rb +7 -2
- data/lib/git/commands/maintenance/stop.rb +7 -2
- data/lib/git/commands/maintenance/unregister.rb +7 -2
- data/lib/git/commands/merge/abort.rb +2 -2
- data/lib/git/commands/merge/continue.rb +2 -2
- data/lib/git/commands/merge/quit.rb +2 -2
- data/lib/git/commands/merge/start.rb +7 -2
- data/lib/git/commands/merge.rb +2 -2
- data/lib/git/commands/merge_base.rb +7 -2
- data/lib/git/commands/mv.rb +7 -2
- data/lib/git/commands/name_rev.rb +7 -2
- data/lib/git/commands/pull.rb +7 -2
- data/lib/git/commands/push.rb +7 -2
- data/lib/git/commands/read_tree.rb +7 -2
- data/lib/git/commands/remote/add.rb +7 -2
- data/lib/git/commands/remote/get_url.rb +4 -2
- data/lib/git/commands/remote/list.rb +4 -2
- data/lib/git/commands/remote/prune.rb +4 -2
- data/lib/git/commands/remote/remove.rb +4 -2
- data/lib/git/commands/remote/rename.rb +4 -2
- data/lib/git/commands/remote/set_branches.rb +9 -2
- data/lib/git/commands/remote/set_head.rb +12 -5
- data/lib/git/commands/remote/set_url.rb +9 -2
- data/lib/git/commands/remote/set_url_add.rb +11 -2
- data/lib/git/commands/remote/set_url_delete.rb +9 -2
- data/lib/git/commands/remote/show.rb +18 -12
- data/lib/git/commands/remote/update.rb +19 -12
- data/lib/git/commands/remote.rb +2 -2
- data/lib/git/commands/repack.rb +67 -63
- data/lib/git/commands/reset.rb +51 -44
- data/lib/git/commands/rev_parse.rb +135 -128
- data/lib/git/commands/revert/abort.rb +2 -2
- data/lib/git/commands/revert/continue.rb +7 -2
- data/lib/git/commands/revert/quit.rb +2 -2
- data/lib/git/commands/revert/skip.rb +2 -2
- data/lib/git/commands/revert/start.rb +7 -2
- data/lib/git/commands/revert.rb +2 -2
- data/lib/git/commands/rm.rb +35 -36
- data/lib/git/commands/show.rb +1 -1
- data/lib/git/commands/show_ref/exclude_existing.rb +3 -4
- data/lib/git/commands/show_ref/exists.rb +15 -13
- data/lib/git/commands/show_ref/list.rb +39 -35
- data/lib/git/commands/show_ref/verify.rb +29 -27
- data/lib/git/commands/show_ref.rb +4 -4
- data/lib/git/commands/stash/apply.rb +31 -25
- data/lib/git/commands/stash/branch.rb +10 -8
- data/lib/git/commands/stash/clear.rb +7 -5
- data/lib/git/commands/stash/create.rb +10 -8
- data/lib/git/commands/stash/drop.rb +15 -9
- data/lib/git/commands/stash/list.rb +9 -5
- data/lib/git/commands/stash/pop.rb +21 -12
- data/lib/git/commands/stash/push.rb +20 -11
- data/lib/git/commands/stash/show.rb +21 -12
- data/lib/git/commands/stash/store.rb +19 -10
- data/lib/git/commands/stash.rb +2 -2
- data/lib/git/commands/status.rb +7 -2
- data/lib/git/commands/symbolic_ref/delete.rb +18 -14
- data/lib/git/commands/symbolic_ref/read.rb +24 -20
- data/lib/git/commands/symbolic_ref/update.rb +20 -17
- data/lib/git/commands/symbolic_ref.rb +4 -4
- data/lib/git/commands/tag/create.rb +45 -42
- data/lib/git/commands/tag/delete.rb +5 -3
- data/lib/git/commands/tag/list.rb +47 -44
- data/lib/git/commands/tag/verify.rb +12 -12
- data/lib/git/commands/tag.rb +2 -2
- data/lib/git/commands/update_ref/batch.rb +6 -1
- data/lib/git/commands/update_ref/delete.rb +19 -21
- data/lib/git/commands/update_ref/update.rb +22 -25
- data/lib/git/commands/update_ref.rb +4 -4
- data/lib/git/commands/version.rb +14 -11
- data/lib/git/commands/worktree/add.rb +50 -51
- data/lib/git/commands/worktree/list.rb +17 -17
- data/lib/git/commands/worktree/lock.rb +12 -12
- data/lib/git/commands/worktree/move.rb +16 -16
- data/lib/git/commands/worktree/prune.rb +2 -2
- data/lib/git/commands/worktree/remove.rb +2 -2
- data/lib/git/commands/worktree/repair.rb +2 -2
- data/lib/git/commands/worktree/unlock.rb +2 -2
- data/lib/git/commands/write_tree.rb +2 -2
- data/lib/git/commands.rb +4 -3
- data/lib/git/config.rb +47 -1
- data/lib/git/configuring.rb +89 -15
- data/lib/git/detached_head_info.rb +4 -1
- data/lib/git/diff.rb +2 -5
- data/lib/git/diff_file_numstat_info.rb +3 -1
- data/lib/git/diff_file_patch_info.rb +3 -1
- data/lib/git/diff_file_raw_info.rb +3 -1
- data/lib/git/diff_info.rb +8 -15
- data/lib/git/diff_path_status.rb +16 -3
- data/lib/git/diff_result.rb +3 -1
- data/lib/git/diff_stats.rb +15 -0
- data/lib/git/dirstat_info.rb +24 -8
- data/lib/git/encoding_utils.rb +32 -1
- data/lib/git/errors.rb +19 -9
- data/lib/git/escaped_path.rb +55 -3
- data/lib/git/execution_context/repository.rb +15 -0
- data/lib/git/execution_context.rb +76 -74
- data/lib/git/file_ref.rb +6 -3
- data/lib/git/fsck_object.rb +8 -0
- data/lib/git/fsck_result.rb +26 -15
- data/lib/git/log.rb +152 -5
- data/lib/git/object.rb +284 -8
- data/lib/git/parsers/branch.rb +18 -0
- data/lib/git/parsers/cat_file.rb +2 -2
- data/lib/git/parsers/diff.rb +213 -5
- data/lib/git/parsers/fsck.rb +11 -0
- data/lib/git/parsers/ls_remote.rb +1 -1
- data/lib/git/parsers/stash.rb +51 -0
- data/lib/git/parsers/tag.rb +38 -0
- data/lib/git/remote.rb +34 -2
- data/lib/git/repository/branching.rb +23 -21
- data/lib/git/repository/committing.rb +46 -6
- data/lib/git/repository/context_helpers.rb +45 -16
- data/lib/git/repository/diffing.rb +32 -23
- data/lib/git/repository/factories.rb +153 -28
- data/lib/git/repository/inspecting.rb +1 -1
- data/lib/git/repository/logging.rb +169 -30
- data/lib/git/repository/maintenance.rb +1 -1
- data/lib/git/repository/merging.rb +3 -3
- data/lib/git/repository/object_operations.rb +108 -14
- data/lib/git/repository/remote_operations.rb +150 -171
- data/lib/git/repository/shared_private.rb +7 -5
- data/lib/git/repository/staging.rb +36 -12
- data/lib/git/repository/stashing.rb +16 -16
- data/lib/git/repository/status_operations.rb +1 -1
- data/lib/git/repository/worktree_operations.rb +1 -1
- data/lib/git/repository.rb +123 -63
- data/lib/git/stash.rb +16 -21
- data/lib/git/stash_info.rb +4 -4
- data/lib/git/stashes.rb +20 -26
- data/lib/git/status.rb +21 -7
- data/lib/git/tag_delete_failure.rb +3 -0
- data/lib/git/tag_delete_result.rb +6 -3
- data/lib/git/tag_info.rb +1 -0
- data/lib/git/url.rb +12 -5
- data/lib/git/version.rb +6 -4
- data/lib/git/version_constraint.rb +4 -0
- data/lib/git.rb +398 -314
- data/redesign/3_architecture_implementation.md +59 -29
- data/redesign/Phase 4 - Step B.md +921 -0
- data/redesign/Phase 4 - Step C.md +833 -0
- data/redesign/c1a-public-api-scope.tsv +256 -0
- data/redesign/phase-4-step-b-test-audit.tsv +485 -0
- data/tasks/yard.rake +24 -17
- metadata +24 -57
- data/commitlint.test +0 -4
- data/lib/git/args_builder.rb +0 -103
- data/lib/git/command_line_result.rb +0 -8
- data/lib/git/deprecation.rb +0 -9
- data/tasks/test.rake +0 -25
- /data/.github/{skills → skills-deprecated}/extract-facade-from-base-lib/KEYWORD_ARG_REMEDIATION.md +0 -0
- /data/.github/{skills → skills-deprecated}/review-backward-compatibility/SKILL.md +0 -0
|
@@ -9,7 +9,7 @@ risk and allows for a gradual, controlled migration to the new architecture.
|
|
|
9
9
|
- [Facade Modules Completed](#facade-modules-completed)
|
|
10
10
|
- [Facade module naming convention](#facade-module-naming-convention)
|
|
11
11
|
- [Next Task](#next-task)
|
|
12
|
-
- [
|
|
12
|
+
- [Phase 4 complete — architectural redesign is done 🎉](#phase-4-complete--architectural-redesign-is-done-)
|
|
13
13
|
- [Phase 3 Overview](#phase-3-overview)
|
|
14
14
|
- [Workstream A — Fill facade coverage gaps](#workstream-a--fill-facade-coverage-gaps)
|
|
15
15
|
- [Workstream B — C0: Redirect `Git::Base` factory methods to `facade_repository`](#workstream-b--c0-redirect-gitbase-factory-methods-to-facade_repository)
|
|
@@ -44,8 +44,8 @@ risk and allows for a gradual, controlled migration to the new architecture.
|
|
|
44
44
|
| Phase 1 | ✅ Complete | Foundation and scaffolding | 5% | 100% |
|
|
45
45
|
| Phase 2 | ✅ Complete | Migrating commands (all checklist items done) | 40% | 100% |
|
|
46
46
|
| Phase 3 | ✅ Complete | Refactoring public interface — see [Facade Modules Completed](#facade-modules-completed) and [Facade coverage checklist](#facade-coverage-checklist) | 45% | 100% |
|
|
47
|
-
| Phase 4 |
|
|
48
|
-
| **TOTAL** |
|
|
47
|
+
| Phase 4 | ✅ Complete | Final cleanup and release — Steps A, B, and C all complete | 10% | 100% |
|
|
48
|
+
| **TOTAL** | ✅ **Complete** | -- | **100%** | **100%** |
|
|
49
49
|
|
|
50
50
|
### Facade Modules Completed
|
|
51
51
|
|
|
@@ -85,7 +85,7 @@ such as `Branch`, `Diff`, `Log`, `Object`, `Remote`, `Status`, `Worktree`, etc.
|
|
|
85
85
|
|
|
86
86
|
### Next Task
|
|
87
87
|
|
|
88
|
-
#### Phase 4
|
|
88
|
+
#### Phase 4 complete — architectural redesign is done 🎉
|
|
89
89
|
|
|
90
90
|
Phase 4 **Step A — Remove old code** is ✅ complete. The atomic removal landed in
|
|
91
91
|
[PR #1456](https://github.com/ruby-git/ruby-git/pull/1456) (commit `c1c53999`),
|
|
@@ -96,13 +96,31 @@ item. The only remaining `Git::Base` / `Git::Lib` strings in `lib/` are YARD/com
|
|
|
96
96
|
references to historical 4.x behavior, which the Step A done-criteria explicitly
|
|
97
97
|
allow.
|
|
98
98
|
|
|
99
|
-
|
|
99
|
+
Phase 4 **Step B — Finalize test suite** is ✅ complete. All 159 PORT rows (after dedup) were ported
|
|
100
|
+
to RSpec (batches U1–U21), `tests/` and the Test::Unit tooling were removed (W3), the
|
|
101
|
+
`extract-*` skills were deprecated (W4a), Test::Unit documentation references were
|
|
102
|
+
removed (W4b), the full quality gate was verified green (W5 — 5668 unit + 893
|
|
103
|
+
integration examples, 0 failures), and stale `Git::Base`/`Git::Lib` references were
|
|
104
|
+
removed from active Copilot skills (W6 — [PR #1509](https://github.com/ruby-git/ruby-git/pull/1509)).
|
|
105
|
+
|
|
106
|
+
Phase 4 **Step C — Update documentation** is ✅ complete. C1a–C1d (YARD audit and
|
|
107
|
+
coverage gate), C2a–C2b (`UPGRADING.md` and `README.md`), and C3 (documentation
|
|
108
|
+
completeness verification) are all done. Final state: all unit and integration examples
|
|
109
|
+
pass, 0 failures; 100.00% documented; `yard:lint` no offenses; gem builds.
|
|
110
|
+
One gap found and fixed during C3b: `Git::Status` was missing a class-level
|
|
111
|
+
`@example` (added in this PR).
|
|
112
|
+
|
|
113
|
+
All Phase 4 steps are now complete:
|
|
100
114
|
|
|
101
115
|
| Step | Status | Summary |
|
|
102
116
|
| ---- | ------ | ------- |
|
|
103
117
|
| A — Remove old code | ✅ Complete | `Git::Base`/`Git::Lib` and the bridge deleted ([PR #1456](https://github.com/ruby-git/ruby-git/pull/1456)) |
|
|
104
|
-
| B — Finalize test suite |
|
|
105
|
-
| C — Update documentation |
|
|
118
|
+
| B — Finalize test suite | ✅ Complete | W2 ✅ (all 159 PORT rows ported and merged after dedup, batches U1–U21); W3 ✅ (removed `tests/` and Test::Unit tooling); W4a ✅ (deprecated `extract-*` skills); W4b ✅ (removed Test::Unit doc references); W5 ✅ (gate green: 5668 unit + 893 integration, 0 failures); W6 ✅ (removed stale `Git::Base`/`Git::Lib` skill refs, [PR #1509](https://github.com/ruby-git/ruby-git/pull/1509)) |
|
|
119
|
+
| C — Update documentation | ✅ Complete | C1a–C1d ✅ (YARD audit + coverage gate); C2a ✅ (`UPGRADING.md`); C2b ✅ (`README.md`); C3 ✅ (docs verification: CI green, spot-check passed, links valid) |
|
|
120
|
+
|
|
121
|
+
The architectural redesign is now **fully complete**. The codebase is ready for the
|
|
122
|
+
v5.0.0 release process (see the
|
|
123
|
+
[release-management](../.github/skills/release-management/SKILL.md) skill).
|
|
106
124
|
|
|
107
125
|
The following earlier prerequisites are all ✅ complete:
|
|
108
126
|
|
|
@@ -132,10 +150,10 @@ All 9 domain-object migrations are ✅ complete:
|
|
|
132
150
|
| `Git::Branches` | [PR #1356](https://github.com/ruby-git/ruby-git/pull/1356), [PR #1357](https://github.com/ruby-git/ruby-git/pull/1357), [PR #1358](https://github.com/ruby-git/ruby-git/pull/1358), [PR #1359](https://github.com/ruby-git/ruby-git/pull/1359) |
|
|
133
151
|
| `Git::Worktree` + `Git::Worktrees` | — |
|
|
134
152
|
|
|
135
|
-
The work was organized into six workstreams (A–F). All workstreams
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
153
|
+
The work was organized into six workstreams (A–F). All workstreams are ✅ complete.
|
|
154
|
+
F1 and F2 are both ✅ complete — F2 moved the remaining `Git` module utility methods
|
|
155
|
+
off `Git::Lib`. Phase 4 Steps A, B, and C are all ✅ complete (see
|
|
156
|
+
[Next Task](#next-task)).
|
|
139
157
|
|
|
140
158
|
**Sequencing** (see [Phase 3 dependency order](#phase-3-dependency-order) for the
|
|
141
159
|
reasoning behind each edge):
|
|
@@ -1550,8 +1568,8 @@ release.*
|
|
|
1550
1568
|
|
|
1551
1569
|
```mermaid
|
|
1552
1570
|
graph LR
|
|
1553
|
-
A --> B
|
|
1554
|
-
B --> C
|
|
1571
|
+
A["A ✅ Remove old code"] --> B["B ✅ Finalize test suite"]
|
|
1572
|
+
B --> C["C 🚧 Update documentation"]
|
|
1555
1573
|
```
|
|
1556
1574
|
|
|
1557
1575
|
#### Step A — Remove old code
|
|
@@ -1570,24 +1588,36 @@ graph LR
|
|
|
1570
1588
|
|
|
1571
1589
|
#### Step B — Finalize test suite
|
|
1572
1590
|
|
|
1573
|
-
**Status:
|
|
1591
|
+
**Status: ✅ Complete.**
|
|
1574
1592
|
|
|
1575
|
-
|
|
1576
|
-
|
|
1577
|
-
|
|
1593
|
+
All 159 PORT rows (after dedup) from the W1/W1.5 audit were ported to RSpec across batches U1–U21
|
|
1594
|
+
(W2). The `tests/` directory and all Test::Unit tooling were removed (W3). The
|
|
1595
|
+
`extract-*` skills were deprecated (W4a). All Test::Unit documentation references
|
|
1596
|
+
were removed (W4b). The full quality gate was verified green (W5): 5668 unit examples
|
|
1597
|
+
+ 893 integration examples, 0 failures; RuboCop clean; YARD 83.6% (threshold 75%);
|
|
1598
|
+
gem build successful. W6 (remove stale `Git::Base`/`Git::Lib` skill references from
|
|
1599
|
+
active skills) is complete — both plan ([PR #1506](https://github.com/ruby-git/ruby-git/pull/1506)) and execution ([PR #1509](https://github.com/ruby-git/ruby-git/pull/1509)) have merged.
|
|
1578
1600
|
|
|
1579
|
-
|
|
1580
|
-
|
|
1601
|
+
See the detailed execution plan in
|
|
1602
|
+
[Phase 4 - Step B.md](Phase%204%20-%20Step%20B.md).
|
|
1581
1603
|
|
|
1582
1604
|
#### Step C — Update documentation
|
|
1583
1605
|
|
|
1584
|
-
**Status: 🚧 Partial.**
|
|
1585
|
-
|
|
1586
|
-
|
|
1587
|
-
-
|
|
1588
|
-
|
|
1589
|
-
|
|
1590
|
-
|
|
1591
|
-
|
|
1592
|
-
|
|
1593
|
-
|
|
1606
|
+
**Status: 🚧 Partial.** See detailed execution plan in
|
|
1607
|
+
[Phase 4 - Step C.md](Phase%204%20-%20Step%20C.md).
|
|
1608
|
+
|
|
1609
|
+
- ✅ Thoroughly document the new public API (`Git`, `Git::Repository`, etc.) and all
|
|
1610
|
+
of `lib/` — **done**: every file passes `yard-lint` (which replaced the retired
|
|
1611
|
+
`yardstick` tooling) with no offenses.
|
|
1612
|
+
- Set correct `@api` tags across `lib/` (including flipping the `Git::Repository::*`
|
|
1613
|
+
topic modules to `@api private`).
|
|
1614
|
+
- Update the `README.md` and expand the existing `UPGRADING.md` guide explaining the
|
|
1615
|
+
breaking changes for v5.0.0.
|
|
1616
|
+
|
|
1617
|
+
**Done when**: the criteria in the Step C execution plan
|
|
1618
|
+
([Phase 4 - Step C.md](Phase%204%20-%20Step%20C.md) → "Done-When Criteria") are all
|
|
1619
|
+
met. In brief: documentation coverage is complete and enforced by `yard-lint`
|
|
1620
|
+
(`.yard-lint.yml`; `rake yard:lint` passes with no offenses) — already done — the
|
|
1621
|
+
`@api`-visibility tags are correct, `UPGRADING.md` covers all breaking changes,
|
|
1622
|
+
`README.md` reflects the new entry points, and the full CI pipeline is green. This
|
|
1623
|
+
tracker defers to the Step C plan as the single source of truth to avoid drift.
|