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

agama-project / agama / 18904457360 / 3 – web
64%
master: 81%

Build:
Build:
LAST BUILD BRANCH: disconnect_not_bound_devices
DEFAULT BRANCH: master
Ran 29 Oct 2025 10:19AM UTC
Files 578
Run time 19s
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

29 Oct 2025 10:16AM UTC coverage: 68.533% (+0.003%) from 68.53%
web – 18904457360.3

push

github

web-flow
Use a new gettext for extracting the texts from web sources (#2748)

## Problem

- Some translatable texts are no extracted to the resulting POT file
- https://bugzilla.suse.com/show_bug.cgi?id=1250059

## Details

- The problem is that the we are using the C language parser for the
Typescript files with React components. The C parser works just by
coincidence and some valid Javascript or Typescript constructs are not
parsed properly.
- In this case the missing translations are caused by using single
quotes (') for strings. In C they are used for single characters and not
for strings so they are completely ignored.

## Solution

- The latest GNU Gettext natively supports the "tsx" file format which
is exactly what we need! :+1:
- Unfortunately SLE-16 and Leap 16.0 contain an older version which does
not support that format. For that reason I defined a new container in
the `devel/xgettext` subdirectory which contains the latest gettext from
the openSUSE Tumbleweed distribution. That can be used instead of the
locally installed gettext.
- To make it easier I created a bunch of scripts for building, running
and using the container. Instead of the `build_pot` simply run the
`build_pot_container` script, it will build and use the new container
for creating the resulting POT file.

## Result

<details>
<summary>The built POT file contains these new texts</summary>

```diff
+#. TRANSLATORS: %s will be replaced with the network ssid
+#. TRANSLATORS: %s will be replaced with connection id
+#: src/components/network/WifiNetworkPage.tsx:44
+#: src/components/network/WiredConnectionPage.tsx:43
+#, javascript-format
+msgid "\"%s\" does not exist or is no longer available."
+msgstr ""

+#. TRANSLATORS: %s will be replaced with connection id
+#: src/components/network/WifiNetworkPage.tsx:44
+#: src/components/network/WiredConnectionPage.tsx:43
+#, javascript-format
+msgid "\"%s\" does not exist or is no longer available."
+msgstr ""

+#. TRANSLATORS: %s will be repl... (continued)

2228 of 4007 branches covered (55.6%)

Branch coverage included in aggregate %.

11970 of 16710 relevant lines covered (71.63%)

71.62 hits per line

Source Files on job web - 18904457360.3
  • Tree
  • List 578
  • Changed 3
  • Source Changed 2
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Build 18904457360
  • 3cf88c24 on github
  • Prev Job for on SLE-16 (#18593178882.3)
  • Next Job for on SLE-16 (#19066361771.)
  • 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