Skip to content

Commit 1031839

Browse files
committed
docs(pr-overlap): describe the depends-on row for an edited easyconfig
8a712f0 added a second kind of depends-on row for easyconfigs pull requests: one PR edits or deletes an easyconfig, and another PR builds a dependent of it. The pages still described only the row for an added module. The easyconfigs how-to now names both causes in the depends-on bullet. It says that After and the impact report's resolves list follow either cause. It also notes that no PR in the recorded set builds a dependent of the three nghttp3 files 27215 edits. The explanation page gets one paragraph on the easyconfigs edge: which reverse dependents are must-rebuild and scheduled, and which stay review or no-rebuild on the record. llms-full.txt is regenerated.
1 parent 1504fdb commit 1031839

3 files changed

Lines changed: 50 additions & 10 deletions

File tree

‎docs/orgmode/explanation/pr-overlap.org‎

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -196,6 +196,22 @@ and libpng, and the freetype row resolves for 12 only, because 13 asks
196196
for freetype itself. A number outside the input exits 2 and names it:
197197
~--merged 999: no pull request with that number~.
198198

199+
An easyconfigs pull request has no easystack entries, so rule 1 reads
200+
its ~depends-on~ rows instead. Each row runs from pull request A to pull
201+
request B and has one of two causes. In the first, A adds a module. B's
202+
closure needs that module, and B does not add it. In the second, A edits
203+
or deletes an easyconfig, and B builds a dependent of that module
204+
without changing it. B builds a dependent when the module is in B's
205+
closure, or when B's ~to_build~ lists one of A's reverse dependents. The
206+
edited easyconfig joins A's ~to_build~ because A edits it. The rebuild
207+
classes apply to A's reverse dependents. A bundle whose ~exts_list~
208+
names that package is ~must-rebuild~, and it joins A's ~to_build~ even
209+
when the bundle is already installed. A runtime dependent is
210+
~no-rebuild~, and a dependent reached only through builddependencies is
211+
~review~. Both are listed under reverse dependents with depth and class,
212+
and neither is scheduled. A toolchain edge is not listed. ~--impact A~
213+
lists the edited module under ~resolves~ for B.
214+
199215
~merge-order.toml~ and the last table in ~overlap.md~ also list
200216
easystack edits that will collide in git. ~same-entry~ means two pull
201217
requests add the identical line. ~same-insertion~ means they add lines

‎docs/orgmode/howto/easyconfigs-pr-overlap.org‎

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -90,9 +90,10 @@ section for the PR under review.
9090
The next section of the report repeats ~Mathematica/14.2.1~, because
9191
the base tree does not already provide it. That is the one module
9292
counted in ~shared_modules~.
93-
- ~depends-on~ is ~None~ in this run. A row there means one PR's closure
94-
needs a module that another open PR adds. The PR that adds the module
95-
comes first.
93+
- ~depends-on~ is ~None~ in this run. A row there means one PR has to
94+
wait for another open PR. Either the other PR adds a module this
95+
PR's closure needs, or it edits or deletes a module this PR builds a
96+
dependent of. The PR that adds or edits the module comes first.
9697

9798
The summary line below each PR heading reports how many easyconfigs
9899
changed, how many modules the dependency walk reached, how many are new
@@ -194,8 +195,11 @@ build. That row is the ~same-file~ duplicate: compare
194195
the files, keep one PR, and close or rebase the other. It is not a
195196
second module to install. Position 3 builds aria2, and position 4 builds the four nghttp3 modules.
196197
After is blank because no PR needs a module that only another open PR
197-
adds. When a ~depends-on~ row exists, After names the PR that adds the
198-
module. When two or more PRs could go next, the fewest modules left to
198+
adds. When a ~depends-on~ row exists, After names the PR that adds or
199+
edits the module, and ~--impact~ on that PR lists the module under
200+
~resolves~. 27215 edits three nghttp3 files. No other PR here builds
201+
a dependent of them, so no row starts at 27215. When two or more
202+
PRs could go next, the fewest modules left to
199203
build wins, then the lowest PR number. Module names are in
200204
~merge-order.toml~.
201205

‎llms-full.txt‎

Lines changed: 25 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2684,9 +2684,10 @@ section for the PR under review.
26842684
The next section of the report repeats `Mathematica/14.2.1`, because
26852685
the base tree does not already provide it. That is the one module
26862686
counted in `shared_modules`.
2687-
- `depends-on` is `None` in this run. A row there means one PR's closure
2688-
needs a module that another open PR adds. The PR that adds the module
2689-
comes first.
2687+
- `depends-on` is `None` in this run. A row there means one PR has to
2688+
wait for another open PR. Either the other PR adds a module this
2689+
PR's closure needs, or it edits or deletes a module this PR builds a
2690+
dependent of. The PR that adds or edits the module comes first.
26902691

26912692
The summary line below each PR heading reports how many easyconfigs
26922693
changed, how many modules the dependency walk reached, how many are new
@@ -2788,8 +2789,11 @@ build. That row is the `same-file` duplicate: compare
27882789
the files, keep one PR, and close or rebase the other. It is not a
27892790
second module to install. Position 3 builds aria2, and position 4 builds the four nghttp3 modules.
27902791
After is blank because no PR needs a module that only another open PR
2791-
adds. When a `depends-on` row exists, After names the PR that adds the
2792-
module. When two or more PRs could go next, the fewest modules left to
2792+
adds. When a `depends-on` row exists, After names the PR that adds or
2793+
edits the module, and `--impact` on that PR lists the module under
2794+
`resolves`. 27215 edits three nghttp3 files. No other PR here builds
2795+
a dependent of them, so no row starts at 27215. When two or more
2796+
PRs could go next, the fewest modules left to
27932797
build wins, then the lowest PR number. Module names are in
27942798
`merge-order.toml`.
27952799

@@ -7166,6 +7170,22 @@ and libpng, and the freetype row resolves for 12 only, because 13 asks
71667170
for freetype itself. A number outside the input exits 2 and names it:
71677171
`--merged 999: no pull request with that number`.
71687172

7173+
An easyconfigs pull request has no easystack entries, so rule 1 reads
7174+
its `depends-on` rows instead. Each row runs from pull request A to pull
7175+
request B and has one of two causes. In the first, A adds a module. B's
7176+
closure needs that module, and B does not add it. In the second, A edits
7177+
or deletes an easyconfig, and B builds a dependent of that module
7178+
without changing it. B builds a dependent when the module is in B's
7179+
closure, or when B's `to_build` lists one of A's reverse dependents. The
7180+
edited easyconfig joins A's `to_build` because A edits it. The rebuild
7181+
classes apply to A's reverse dependents. A bundle whose `exts_list`
7182+
names that package is `must-rebuild`, and it joins A's `to_build` even
7183+
when the bundle is already installed. A runtime dependent is
7184+
`no-rebuild`, and a dependent reached only through builddependencies is
7185+
`review`. Both are listed under reverse dependents with depth and class,
7186+
and neither is scheduled. A toolchain edge is not listed. `--impact A`
7187+
lists the edited module under `resolves` for B.
7188+
71697189
`merge-order.toml` and the last table in `overlap.md` also list
71707190
easystack edits that will collide in git. `same-entry` means two pull
71717191
requests add the identical line. `same-insertion` means they add lines

0 commit comments

Comments
 (0)