Skip to content

fix: restore #146, #160 and #161 work dropped by the 09-30 batch merge - #166

Merged
srpatcha merged 1 commit into
masterfrom
fix/restore-reverted-commands
Oct 1, 2026
Merged

srpatcha merged 1 commit into
masterfrom
fix/restore-reverted-commands

Conversation

@srpatcha

@srpatcha srpatcha commented Oct 1, 2026

Copy link
Copy Markdown
Member

Fixes #165

Summary

master has been red since the 09-30 batch merge. This puts back the merged work that two merge resolutions removed, and keeps what each of those PRs was meant to change.

Lost by What was lost Restored here
#141 merge 40d5a65 #161 runner args (_resolve_runner_args, flash --config, --no-runner-args, passthrough args) yes
#141 merge 40d5a65 #146 lockfile read before resolve, plus the corrupt-lock error yes
#141 merge 40d5a65 #160 ninja_command() in build yes
#137 merge 18b3ee5 #138 path-based recreate_archive.py archive rule yes

#141's real change stays: executable_output_path is imported from ebuild.build.layout.

I rebuilt commands.py with a 3-way merge rather than editing it by hand: base = 40d5a65, ours = current master, theirs = 40d5a65^1 with #141's import change applied. There were no conflicts. Master's CRLF line endings are kept, so the diff contains only content changes.

The archive-member assertions now expect keep.c.o / removed.c.o. That is the naming _object_path has used since #133.

Test evidence (Ubuntu 20.04 WSL2, Python 3.12.14)

Check master 7f1ff93 this branch
pytest tests --no-cov 25 failed + 1 collection error 797 passed, 1 skipped
ruff check . 13 errors All checks passed
yamllint . rc 0 rc 0 (warnings only)
mypy . --ignore-missing-imports --no-strict-optional --exclude '^(layers|core|promo)/' — no issues in 116 files

Not verified locally: the Windows and macOS CI legs. CI on this PR will cover them.

The #141 merge (40d5a65) took an old copy of ebuild/cli/commands.py and
deleted three merged features. It now has runner args for flash (#161),
the lockfile read before resolving (#146) and ninja_command() (#160)
again. #141's own change stays: executable_output_path comes from
ebuild.build.layout.

The #137 merge (18b3ee5) replaced #138's archive rule, which runs
recreate_archive.py by path, with an inline python -c command. #138's
helper and tests were still in the tree, so its rule is back. The
helper checks that the archiver can run before it unlinks $out.

The archive-member tests from #137 and #138 expected keep.o. Since #133,
_object_path keeps the source extension, so the member is keep.c.o.

Also fixes ruff's 13 trailing-whitespace errors in
tests/unit/cli/test_commands_utils.py.

Fixes #165
@srpatcha
srpatcha requested a review from hshanmug12 as a code owner October 1, 2026 06:33
@srpatcha
srpatcha merged commit f2dca35 into master Oct 1, 2026
33 checks passed
@srpatcha
srpatcha deleted the fix/restore-reverted-commands branch October 1, 2026 06:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

master is red: the 09-30 batch merge reverted #146, #160 and #161 and overwrote #138

1 participant