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

elixir-gettext / gettext
93%
main: 93%

Build:
Build:
LAST BUILD BRANCH: extract-from-attributes
DEFAULT BRANCH: main
Repo Added 17 Dec 2022 08:08AM UTC
Token HFyBNncfSvuOnEA0SjM0SpLlmUWqNQX4Z regen
Build 226 Last
Files 19
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

LAST BUILD ON BRANCH extract-from-attributes
branch: SELECT
CHANGE BRANCH
x
Sync Branches
  • No branch selected
  • abdelhalim97/add-put_locale!
  • al/1.18
  • al/ci
  • al/deprecate-plural-forms
  • al/expo-plural
  • al/new-backend-docs
  • al/no-recompilation
  • al/refactor
  • al/release
  • al/use-gettext-backend
  • ci-bump-elixir-1.19-otp-28
  • code-coverage
  • dependabot/github_actions/actions/checkout-5.0.0
  • dependabot/github_actions/actions/checkout-6.0.0
  • dependabot/github_actions/actions/checkout-6.0.1
  • dependabot/github_actions/actions/checkout-6.0.2
  • dependabot/github_actions/actions/checkout-6.0.3
  • dependabot/github_actions/erlef/setup-beam-1.20.2
  • dependabot/github_actions/erlef/setup-beam-1.20.4
  • dependabot/github_actions/erlef/setup-beam-1.21.0
  • dependabot/github_actions/erlef/setup-beam-1.24.0
  • deprecation_message
  • extract-from-attributes
  • extract_force_compile
  • fix-concatenation-of-sigils
  • fix-nofile
  • fix-typos
  • fix/elixir-1.20-warnings
  • fix/extract-timeout
  • improve-docs
  • introduce_initial_top_comments_via_messages_struct
  • jm/ci_deps_check_locked
  • jm/conflicting_plural_message_400
  • jm/default_header
  • jm/deps-update
  • jm/dialyzer-setup
  • jm/extend_plural_interface
  • jm/extract_merge_always
  • jm/flaky_test_mix_cache
  • jm/gh-workflow-updates
  • jm/legalese
  • jm/mention-igniter-changelog
  • jm/metadata-stripping
  • jm/plural_mod_function_fix
  • jm/release/v0.23.2
  • jm/singular_plural_uniq
  • jv-erase-manifest-unless-on-upcoming-elixir
  • jv-fix-redefining
  • keep_custom_flags_option
  • main
  • msg_sort_iodata
  • parallel-locale-merge
  • previous_messages
  • refs/pull/376/merge
  • release/v0.22.2
  • release/v0.27.0
  • runtime-gettext
  • sort_by_msgid_case_insensitive
  • test_up_to_date
  • tiny_fix

16 Jun 2026 03:45PM UTC coverage: 92.886% (+0.2%) from 92.693%
c357fcaaa9175b9df4a1505b672edd85c1e17d7d-PR-437

Pull #437

github

oliver-kriska
Move recompile-free extraction to its own gettext.extract_from_attributes task

Following Jose's review on PR #437, split the attribute-based extraction out
of the --from-attributes flag into a dedicated mix gettext.extract_from_attributes
task. The two extraction modes are now separate code paths that share only the
POT merge/fuse and output steps via Mix.Tasks.Gettext.Extract.process/3.

Also drop the incremental_compile/0 reenable dance. The new task does a plain
mix compile (a no-op when the project is already compiled), since by the time it
reads the persisted attributes the project is already compiled and up to date.
Pull Request #437: Add recompile-free extraction via persisted module attributes

52 of 55 new or added lines in 5 files covered. (94.55%)

692 of 745 relevant lines covered (92.89%)

31.83 hits per line

Relevant lines Covered
Build:
Build:
745 RELEVANT LINES 692 COVERED LINES
31.83 HITS PER LINE
Source Files on main
  • Tree
  • List 19
  • Changed 4
  • Source Changed 0
  • Coverage Changed 4
Coverage ∆ File Lines Relevant Covered Missed Hits/Line

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
c357fcaa... extract-from-attributes Move recompile-free extraction to its own gettext.extract_from_attributes task Following Jose's review on PR #437, split the attribute-based extraction out of the --from-attributes flag into a dedicated mix gettext.extract_from_attributes task. T... Pull #437 16 Jun 2026 03:47PM UTC oliver-kriska github
92.89
11ae3cd2... extract-from-attributes Move recompile-free extraction to its own gettext.extract_from_attributes task Following Jose's review on PR #437, split the attribute-based extraction out of the --from-attributes flag into a dedicated mix gettext.extract_from_attributes task. T... Pull #437 16 Jun 2026 03:34PM UTC oliver-kriska github
92.9
d27c40cd... extract-from-attributes Add recompile-free extraction via persisted module attributes mix gettext.extract discovers messages by force-recompiling the whole project, because extraction happens during gettext macro expansion and the results only live in the extractor agen... Pull #437 16 Jun 2026 05:09AM UTC oliver-kriska github
92.85
3cf00655... main Parallelize locale merging in mix gettext.merge (#436) Benchmark on a 16-locale / 11-domain Phoenix app (160 PO files, ~4,700 msgids, Elixir 1.20.1 / OTP 29, Apple Silicon): mix gettext.merge priv/gettext --no-fuzzy before: 9.4s wall (5... push 10 Jun 2026 02:21PM UTC web-flow github
92.69
888917e1... parallel-locale-merge Parallelize locale merging in mix gettext.merge mix gettext.merge processes locales sequentially, but each locale's merge is fully independent: every locale task writes only to its own <pot_dir>/<locale>/LC_MESSAGES/*.po files, the POT files at t... Pull #436 10 Jun 2026 02:10PM UTC oliver-kriska github
92.69
7d09152f... main Bump actions/checkout from 6.0.2 to 6.0.3 (#435) Bumps [actions/checkout](https://github.com/actions/checkout) from 6.0.2 to 6.0.3. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/... push 03 Jun 2026 11:52AM UTC web-flow github
92.67
b7a27c93... dependabot/github_actions/actions/checkout-6.0.3 Bump actions/checkout from 6.0.2 to 6.0.3 Bumps [actions/checkout](https://github.com/actions/checkout) from 6.0.2 to 6.0.3. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/ma... Pull #435 03 Jun 2026 11:49AM UTC web-flow github
92.67
dda4d508... ci-bump-elixir-1.19-otp-28 Reformat for Elixir 1.19 formatter Pull #434 02 Jun 2026 07:29AM UTC whatyouhide github
92.1
3163e3cb... main Use Kernel.ParallelCompiler.pmap/2 instead of async/await (#433) - Switch parallel PO compilation from async/await to pmap (requires Elixir ~> 1.16). - Remove unused put_locale guard and ensure_empty_msgstr!/1. - Move preferred_cli_env to cli/0 c... push 02 Jun 2026 07:25AM UTC web-flow github
92.67
449e7e6b... fix/elixir-1.20-warnings Use Kernel.ParallelCompiler.pmap/2 instead of async/await - Switch parallel PO compilation from async/await to pmap (requires Elixir ~> 1.16). - Remove unused put_locale guard and ensure_empty_msgstr!/1. - Move preferred_cli_env to cli/0 callback. Pull #433 02 Jun 2026 07:09AM UTC gilbertwong96 github
92.67
See All Builds (147)

Badge your Repo: gettext

We detected this repo isn’t badged! Grab the embed code to the right, add it to your repo to show off your code coverage, and when the badge is live hit the refresh button to remove this message.

Could not find badge in README.

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

Refresh
  • Settings
  • Repo on GitHub
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