Commit Graph
87156 Commits
Author SHA1 Message Date
David Tardon 55bf0766a1 coccinelle: fix exclusion path
This file was moved 5 years ago...

Follow-up for commits 99b9f8fddd and
6dcabd5f5e .
2026-03-17 09:26:55 +00:00
dongshengyuan cccb77304b add-ug-bo-translation 2026-03-16 20:45:41 +01:00
Luca Boccassi c751714d8c man: document that with RuntimeDirecoryPreserve= dirs are under /run/private/
This is not immediately obvious so document it explicitly.

Follow-up for 40cd2ecc26
2026-03-16 20:26:33 +01:00
Daan De Meyer 3c0c557f6c ci: Review PRs per-commit and attach comments to correct commits (#41123) 2026-03-16 17:01:36 +01:00
Daan De Meyer 94a695d89a ci: Review PRs per-commit and attach comments to correct commits
Switch claude-review from reviewing the entire PR diff at once to
reviewing each commit individually via subagents. Each commit review
subagent receives the PR context, preceding commit diffs, and its own
commit diff, then returns comments tagged with the commit SHA. This
ensures review comments are attached to the correct commit via the
GitHub API rather than all pointing at HEAD.

Also add Bash(gh:*) to allowed tools so subagents can fetch per-commit
diffs via `gh api` without needing local git objects, and remove CI
analysis (needs to be delayed until CI finishes to be useful).

Co-developed-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-16 16:12:04 +01:00
Daan De Meyer 52c4aca21e ci: Revert side/subject_type change for claude review workflow
This doesn't seem to actually work, so revert the change.
2026-03-16 16:08:26 +01:00
Daan De Meyer 3a76c0959f ci: Fix several issues in claude-review workflow
Address feedback from facebook/bpfilter#472:

- Fix setFailed error message counting file-level comments (without
  line numbers) that are intentionally skipped, use inlineComments.length
  instead of comments.length
- Fix double severity prefix in inline comments: the prompt told Claude
  to prefix body with **must-fix**/etc but the post job also prepended
  "Claude: ", producing "Claude: **must-fix**: ...". Now the prompt says
  not to prefix and the post job adds "Claude **severity**: " using the
  structured severity field
- Move error tracking instructions to a top-level section after all phases
  so they apply to all runs, not just the first run
- Clarify that line is optional: use "should be" instead of "must be"
  and document that omitting line still surfaces the comment in the
  tracking comment summary
- Distinguish cancelled vs failed in tracking comment message
- Add side: "RIGHT" and subject_type: "line" to createReviewComment
  per GitHub API recommendations
- Downgrade partial inline comment posting failures to warnings; only
  fail the job when no comments at all could be posted

Co-developed-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-16 15:30:09 +01:00
Daan De Meyer a9ac5cdf18 ci: Update github-script action version to 8.0.0 in claude-review 2026-03-16 12:23:39 +01:00
Daan De Meyer b1c446a0b0 ci: Run claude-review workflow automatically on trusted PRs 2026-03-16 12:12:46 +01:00
Daan De Meyer 9e7a2793ad ci: Insist on structured output from claude-review workflow
In some cases claude is not outputting structured JSON at the end.
Let's modify the prompt a bit to hopefully mitigate the issue.
2026-03-16 11:53:40 +01:00
davidak bbd707a882 docs: document AI use disclosure consistently
The example also adds the model version to have it for reference.
2026-03-16 10:55:02 +01:00
Zbigniew Jędrzejewski-Szmek a988b9af95 ci: Fix several robustness issues in claude-review workflow (#41115)
- Use github.paginate() for listComments to handle PRs with 100+
comments
- Make line optional in review schema to allow file-level comments
- Skip createReviewComment for comments without a line number
- Fix failed count to exclude skipped file-level comments
- Pass review result via env var instead of expression injection
- Use core.warning() instead of console.log() for JSON parse failures
- Fix MARKER insertion for single-line summaries that have no newline
- Require "@claude review" instead of just "@claude" to trigger

Co-developed-by: Claude <claude@anthropic.com>
2026-03-16 09:55:50 +01:00
Daan De Meyer 7178e3829f ci: Fix several robustness issues in claude-review workflow
- Use github.paginate() for listComments to handle PRs with 100+ comments
- Make line optional in review schema to allow file-level comments
- Skip createReviewComment for comments without a line number
- Fix failed count to exclude skipped file-level comments
- Pass review result via env var instead of expression injection
- Use core.warning() instead of console.log() for JSON parse failures
- Fix MARKER insertion for single-line summaries that have no newline
- Require "@claude review" instead of just "@claude" to trigger

Co-developed-by: Claude <claude@anthropic.com>
2026-03-16 09:16:19 +01:00
Daan De Meyer 876d36f68a ci: Add full output from claude to debug intermittent failures 2026-03-15 21:47:21 +01:00
Frantisek Sumsal 6dcabd5f5e coccinelle: simplify file exclusions
Use Coccinelle's "depends on" directive to exclude files from certain
transformations. This should make them a bit simpler and possibly
faster, since we don't have to shell out to Python.

Unfortunately, this works only for file/directory exclusions. For
function and other more complex exclusions we still need to use Python,
at least for now.

Also, completely drop the file exclusion for man/ in the xsprintf
transformation, since we filter out everything under man/ before we even
run Coccinelle (in run-coccinelle.sh).
2026-03-14 23:56:53 +00:00
Luca Boccassi 1bbf72d770 meson: bump version to v260~rc4 2026-03-13 23:03:20 +00:00
Luca Boccassi 908dfa1164 NEWS: finalize place and date 2026-03-13 23:02:53 +00:00
Zbigniew Jędrzejewski-Szmek a0adf78f4d Importd: skip fifos and sockets (#41090) 2026-03-13 23:52:44 +01:00
Zbigniew Jędrzejewski-Szmek 4b4e094753 import: skip sockets and fifos when creating archives
Fixes #40239.

$ SYSTEMD_LOG_LEVEL=debug SYSTEMD_LOG_LOCATION=1 build/test-tar -c /var/tmp/tar1.tar /var/tmp/with-fifo/
src/basic/dlfcn-util.c:66: Loaded shared library 'libarchive.so.13' via dlopen().
src/shared/tar-util.c:1422: Archiving '.'...
src/basic/dlfcn-util.c:66: Loaded shared library 'libacl.so.1' via dlopen().
src/shared/tar-util.c:1152: Skipping './fifo' (fifo).
src/shared/tar-util.c:1152: Skipping './unix' (sock).
2026-03-13 18:13:19 +00:00
Zbigniew Jędrzejewski-Szmek 4f0989d42d test-tar-extract: rename and add support for creating archives
This makes it much easier to test importd code without the
surrounding machinery.
2026-03-13 17:43:51 +00:00
Zbigniew Jędrzejewski-Szmek aa8cf865b9 test-tar-extract: fix error value in messages 2026-03-13 17:43:51 +00:00
Zbigniew Jędrzejewski-Szmek 334c71eed8 shared/tar-util: wrap some long lines, normalize indentation 2026-03-13 17:43:51 +00:00
Luca Boccassi cec4f04faa test-network: improve reliability of test case for DHCPRELEASE message (#41067)
Follow-ups for #41002.
2026-03-13 14:46:30 +00:00
Luca Boccassi 54f880b02e udev: fix review mixup
The previous version in the PR changed variable and sanitized it
in place. The second version switched to skip if CCs are in the
string instead, but didn't move back to the original variable.
Because it's an existing variable, no CI caught it.

Follow-up for 16325b35fa
2026-03-13 14:20:05 +00:00
Lennart Poettering 60b72a49be update TODO 2026-03-13 14:39:43 +01:00
Lennart Poettering 1ed967364f update TODO 2026-03-13 14:37:05 +01:00
Michael Vogt 95aff47112 boot: check that ret_version is valid in tpm_log_tagged_event
In a project I'm working on I recently observed a boot failure
with the most recent version of systemd. It seems it is triggered
by bb19b61049 which fixed a bug that now leads to the function
being excuted differently. The code is missing a check if
`*ret_version` is actually valid in the `ret_measured = true`
case.
2026-03-13 12:26:23 +01:00
Zbigniew Jędrzejewski-SzmekandCopilot Autofix powered by AI e799263ff4 test-network: handle the case where dnsmasq is slow to start better
> read_dnsmasq_log_file() will raise FileNotFoundError if dnsmasq hasn’t created the
> log file yet (or if the file was just removed by stop_dnsmasq() before the restart).
> This would error the test instead of retrying.

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-03-13 12:02:07 +01:00
Luca Boccassi c681543680 homed: fix copypasta in openssl calls
decrypted_size/encrypted_size are sizes, not pointers to buffers

Reported on yeswehack.com as:
YWH-PGM9780-134

Follow-up for 70a5db5822
2026-03-13 10:23:36 +00:00
Franck Bui 651100c946 zsh: don't install _sd_machines when machined is disabled 2026-03-13 09:50:43 +00:00
Luca Boccassi cbea0e34c4 portable: avoid passing through ID/version fields to LogExtraFields= when they contain control characters
Found by Claude Code Review.

Follow-up for e8114a4f86
2026-03-12 21:53:28 +00:00
Yu Watanabe 8e764acf1e test-network: also check if DHCPRELEASE is sent on stopping networkd 2026-03-13 04:53:24 +09:00
Yu Watanabe bd061abd87 test-network: improve reliability of test case of DHCPRELEASE message 2026-03-13 04:53:20 +09:00
Yu Watanabe 67957b1464 test-network: drop duplicated definition of networkd_pid() 2026-03-13 04:44:12 +09:00
Lennart Poettering 3df88e836c man: document explicitly that ProtectHome= has no effect on non-standard homedir locations
Fixes: #41045
2026-03-12 17:57:21 +00:00
Luca Boccassi c1d4d5fd9a meson: bump version to v260~rc3 2026-03-12 16:58:12 +00:00
Luca Boccassi 2ed82970d0 NEWS: finalize place and date 2026-03-12 16:55:49 +00:00
Luca Boccassi cfe93e6341 NEWS: update contributors list 2026-03-12 16:55:41 +00:00
Luca Boccassi 92f62fa5de pcrlock: don't accept PCRs > 23 from firmware event log (#41072) 2026-03-12 16:50:54 +00:00
Dan McGregor 9ce905e35f meson: use libfido2_cflags dependency
Add the libfido2 dependency to cryptenroll and cryptsetup's
meson files. If libfido2's not installed in the default path
the build wasn't finding its headers correctly.
2026-03-12 16:02:28 +00:00
Luca Boccassi fd013bd9a9 Translations update from Fedora Weblate (#41073)
Translations update from [Fedora
Weblate](https://translate.fedoraproject.org) for
[systemd/main](https://translate.fedoraproject.org/projects/systemd/main/).



Current translation status:

![Weblate translation
status](https://translate.fedoraproject.org/widget/systemd/main/horizontal-auto.svg)
2026-03-12 14:28:05 +00:00
Sergey A. d6aa1fecc1 po: Translated using Weblate (Russian)
Currently translated at 100.0% (266 of 266 strings)

Co-authored-by: Sergey A. <Ser82-png@yandex.ru>
Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/ru/
Translation: systemd/main
2026-03-12 13:58:31 +00:00
Yaron Shahrabani 19606b5ce5 po: Translated using Weblate (Hebrew)
Currently translated at 100.0% (266 of 266 strings)

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/he/
Translation: systemd/main
2026-03-12 13:58:31 +00:00
Lennart Poettering bb19b61049 measure: figure success of measurement correctly
Found by Claude Code Review.
2026-03-12 14:43:48 +01:00
Lennart Poettering c248d6a409 pcrlock: don't accept PCRs > 23 from firmware event log
Let's harden ourselves against shitty firmware which might report an
invalid PCR.

(This is not really a security issue, more a robustness issue, after all
firmware generally comes with highest privileges and trust, even though
it might just be shit)

Fixes an issue found with Claude code review
2026-03-12 14:43:47 +01:00
Ivan Kruglov 6eab41c813 test: use --nogpgcheck instead of --no-gpgchecks in TEST-88-UPGRADE
--no-gpgchecks was introduced in 9204838724 but is only available in
dnf5. Use --nogpgcheck instead, which is supported by both dnf4 and
dnf5 (where it is an alias for --no-gpgchecks).

Fixes test failure on distros still using dnf4 (e.g. CentOS/RHEL 9).

Co-developed-by: Claude <claude@anthropic.com>
2026-03-12 13:40:05 +00:00
Zbigniew Jędrzejewski-Szmek 10a1043216 cleanups for machined/nspawn (#41060) 2026-03-12 09:39:30 +01:00
Rito Rhymes e5a6cc3a6f docs: contain image sizing and prevent overflow on mobile
`max-width: 100%` keeps images from expanding beyond
their container and creating horizontal overflow scroll
on small screens.

`height: auto` ensures the image scales proportionally
when width is adjusted.
2026-03-12 09:38:03 +01:00
Rito Rhymes f18df62e71 docs: wrap bare enum constants in inline code in JOURNAL_FILE_FORMAT 2026-03-12 09:37:24 +01:00
Zbigniew Jędrzejewski-Szmek 796a1d7616 Fix text overflow for long URLs and inline code blocks (#41064)
## Summary
Long string URLs and inline code blocks can exceed page width and cause
horizontal scroll overflow that breaks page layouts on smaller screens.
This fix ensures those long strings can wrap down as needed to preserve
the layout. The only code blocks that are affected are those that are
inline span within text paragraphs and are effectively stylized text; it
does not affect `<pre>` code blocks where fidelity is prioritized and
contained horizontal scroll is preferred.


## Before and After Screenshots

### `/TPM2_PCR_MEASUREMENTS/` code overflow

**BEFORE**
<img width="400" height="770" alt="TPM2-before"
src="https://github.com/user-attachments/assets/87da9d7a-d757-4fe0-9496-5c17ce31a14e"
/>

<br /><br />

**AFTER**
<img width="400" height="770" alt="TPM2-after"
src="https://github.com/user-attachments/assets/e48ba635-6c73-46a7-a29a-673a253fa76b"
/>

### `/PRESET/` URL overflow

**BEFORE**
<img width="400" height="776" alt="PRESET-before"
src="https://github.com/user-attachments/assets/da4a6346-c53b-4ce0-9ec8-8e58b634174e"
/>

<br /><br />

**AFTER**
<img width="400" height="776" alt="PRESET-after"
src="https://github.com/user-attachments/assets/be5fa824-4891-46ac-9f6e-08490cda8bd9"
/>
2026-03-12 09:36:32 +01:00