• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

agama-project / agama / 17383261552
54%
master: 75%

Build:
Build:
LAST BUILD BRANCH: fix-l10n-reload
DEFAULT BRANCH: master
Ran 01 Sep 2025 04:47PM UTC
Jobs 3
Files 1150
Run time 3min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

01 Sep 2025 04:44PM UTC coverage: 64.288% (-11.9%) from 76.198%
17383261552

push

github

web-flow
[SLE-16] Fixed creating the web/agama.pot file (bsc#1248817) (#2692)

## Problem

- https://bugzilla.suse.com/show_bug.cgi?id=1248817
- Some translated texts are missing in the generated POT file

## Details

The problem is with plural texts which have arguments placed on multiple
lines. Example:

```js
n_(
  "The following partition will be created.",
  "The following partitions will be created.",
  num,
);
```

It turned out that the problem is caused by the trailing comma after the
last argument. After removing the trailing comma the texts are extracted
to the POT file correctly.

## Solution

The script which calls `xgettext` to extract the translatable string
into the POT file uses the `--keyword=n_:1,2,3t` option. That tells the
xgettext parser to consider the `n_()` function as a gettext call
function.

The problem is that the `3t` option tells xgettext to extract the texts
only if the `n_()` call has exactly 3 parameters. With that additional
trailing comma the call has technically 4 parameters, even though the
4th argument is not defined.

From the [xgettext
documentation](https://www.gnu.org/software/gettext/manual/html_node/xgettext-Invocation.html):
> If *keywordspec* is of the form *‘id:…,totalnumargst’*, xgettext
recognizes this argument specification only if the number of actual
arguments is equal to *totalnumargs*.

## Notes

- Actually I copied these `xgettext` options from the [Cockpit xgettext
invocation](https://github.com/cockpit-project/cockpit/blob/c4e1cd89b/po/Makefile.am#L13).
They need it to distinguish the plural form from the plural form with
context which uses 4 arguments. We do not support contexts so we do not
have to care about the number of arguments.
- Additionally the script ignores the `po-converter.js` file which is
used for converting the *.po files to target *.js files. It does not
contain any translatable texts and it not included in the built Agama
files, but the xgettext parser i... (continued)

2228 of 3993 branches covered (55.8%)

Branch coverage included in aggregate %.

25306 of 38836 relevant lines covered (65.16%)

50.47 hits per line

Subprojects
ID Flag name Job ID Ran Files Coverage
3 web 17383261552.3 01 Sep 2025 04:47PM UTC 574
68.62
GitHub Action Run
3 service 17265242806.3 27 Aug 2025 11:33AM UTC 390
88.51
GitHub Action Run
1 rust 17294966794.1 28 Aug 2025 12:03PM UTC 186
21.98
GitHub Action Run
Source Files on build 17383261552
  • Tree
  • List 1150
  • Changed 1
  • Source Changed 1
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #17383261552
  • fa8beea8 on github
  • Prev Build on SLE-16 (#17294966794)
  • Next Build on SLE-16 (#17387216069)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc