intent: notify languageFrom localizes only the attached print - the mail's subject/body and its multilingual placeholders ({escalation.wording}) stay in the default language
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 48/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- java
- Domain
- internationalization
Research direction
Start by reading NotificationIntent and the notify handling that generates OverdueInvoiceRemindersJob; the issue identifies these as the entry points but gives no file paths or tests. Trace how language and languageFrom reach attached-print rendering, then inspect how multilingual _LANG overlays are read. Done means the whole mail uses the selected language for placeholders and translated subject/body text, with the stated fallbacks.
Written by the indexing model from the issue text.
Description
What happens
A notify: block with languageFrom: (e.g. a dunning schedule, languageFrom: Language.code) renders the attached print in the record's language, but the mail around it does not follow:
- the authored
subject:/body:text is emitted as a Java string literal in the generated job (OverdueInvoiceRemindersJob), with no i18n key, so it is always the intent's (English) text; - a placeholder that reads a multilingual row -
{escalation.wording}/{escalation.name}of anescalate:ladder over amultilingual: truesetting, or{SentMethod.name}-style hops - is read through the repository in the job's default locale, so the<ENTITY>_LANGoverlay (which the seed already fills, e.g.SALES_INVOICES_REMINDER_LEVEL_LANG.Wording) is never applied.
Result (BusinessIntents base-sales-invoices#72, 14.88.0 and 14.90.0): a Bulgarian customer receives an English dunning sentence around a Bulgarian invoice PDF, although the Bulgarian wording is in the database.
Ask
When languageFrom: (or language:) is declared on a notify, resolve the WHOLE mail in that language:
- the multilingual placeholders (
{escalation.*},{<relation>.name}over a multilingual target) read the overlay row for that language, falling back to the base row; - the authored subject/body get an i18n key (like
checks.*messages do) so a module can shipi18n/bg-BGtext for them, falling back to the authored text.
NotificationIntent has no knob for this on v14.88.0 or v14.90.0 (language/languageFrom are documented as the attach render language only).
Filed from BusinessIntents base-sales-invoices#72 (pre-train wave 2026-10-17). The module side is ready: the bg wording is seeded into the _LANG table.
- Dominant language
- Java
- Stars
- 278
- Forks
- 97
- Avg merge
- 18h 57m
- Merged PRs (30d)
- 249
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from eclipse-dirigible/dirigible
-
Difficulty 2/5 1-3 hours Newbie friendliness 80/100
eclipse-dirigible/dirigible#7958 ·
Maintainers usually reply within 1 day
-
intent: a create-from without fromStatus answers 200 on a missing or unknown source id (no 400/404)Open
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
eclipse-dirigible/dirigible#7945 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
eclipse-dirigible/dirigible#7891 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
eclipse-dirigible/dirigible#6538 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
eclipse-dirigible/dirigible#4812 ·
Maintainers usually reply within 1 day
All issues in eclipse-dirigible/dirigible
Similar issues
-
Optimize consumer version heatmap aggregation to avoid repeated scansPossibly taken @praykaria31 claimed this today. Opentype/enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Apicurio/apicurio-registry#10662 · 1 comment ·
Maintainers usually reply within 1 day
-
a:false-positive
Difficulty 2/5 1-3 hours Newbie friendliness 77/100
Maintainers usually reply within 1 day
-
status: waiting-for-triage
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
spring-projects/spring-boot#52347 ·
Maintainers usually reply within 2 days
-
bug untriaged
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
opensearch-project/opensearch-migrations#3480 ·
Maintainers usually reply within 2 days
-
[Bug] Certificate expiry sorting can reverse UTC order across a viewer daylight-saving gapPossibly taken A pull request linked to this issue is open or already merged. Open
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
apache/rocketmq-dashboard#7318 ·
Maintainers usually reply within 3 days