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

elixir-gettext / gettext / a851c5b2dabeaeb4481107be59c0bae74675038a-PR-437
94%
main: 94%

Build:
Build:
LAST BUILD BRANCH: extraction-merge-perf
DEFAULT BRANCH: main
Ran 15 Oct 2026 10:32AM UTC
Jobs 1
Files 19
Run time 1min
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

15 Oct 2026 10:30AM UTC coverage: 93.593% (+0.9%) from 92.72%
a851c5b2dabeaeb4481107be59c0bae74675038a-PR-437

Pull #437

github

oliver-kriska
Support umbrella and deprecated backends in mix gettext.generate

Two cases where the task silently dropped messages, found while reviewing
the previous fix:

  * In an umbrella project, each application scanned only its own BEAM
    files. mix gettext.extract compiles the whole umbrella before any
    application pops its backends from the extractor agent, so a backend
    defined in one application receives the messages of all the others.
    The task is no longer recursive: at the umbrella root it compiles the
    umbrella, loads the messages of every application (with the
    configuration the umbrella passes down to them, like Mix does) and
    only then generates each application's POT files.

  * Backends defined with the deprecated "use Gettext, otp_app: ..." only
    extracted their messages under mix gettext.extract: their generated
    macros called Gettext.Extractor.extract/6 directly, so with
    automatic_extraction enabled the backend marker was persisted but no
    messages were, and existing POT entries were pruned. All macros now go
    through Gettext.Extractor.extract_and_persist/6.

Also reenable every configured compiler (not only the Elixir one) before
compiling, name the right task in the --check-up-to-date error, validate
the domain and msgctxt of persisted entries, and document that the toggle
is compile-time configuration that does not belong in config/runtime.exs.
Pull Request #437: Add recompile-free extraction via persisted module attributes

72 of 75 new or added lines in 4 files covered. (96.0%)

745 of 796 relevant lines covered (93.59%)

36.37 hits per line

Uncovered Changes

Lines Coverage ∆ File
3
94.03
-0.76% lib/gettext/extractor.ex
Jobs
ID Job ID Ran Files Coverage
1 a851c5b2dabeaeb4481107be59c0bae74675038a-PR-437.1 15 Oct 2026 10:32AM UTC 19
93.59
GitHub Action Run
Source Files on build a851c5b2dabeaeb4481107be59c0bae74675038a-PR-437
  • Tree
  • List 19
  • Changed 4
  • Source Changed 0
  • Coverage Changed 4
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Pull Request #437
  • PR Base - main (#1B0D9E91...)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc