You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@grails.apache.org by GitBox <gi...@apache.org> on 2026/10/02 14:44:14 UTC
[GH] (grails-core/fix/15933-override-to-from-addresses): Workflow run "Licensing - RAT Report" failed!
The GitHub Actions job "Licensing - RAT Report" on grails-core.git/fix/15933-override-to-from-addresses has failed.
Run started by GitHub user ruthst00 (triggered by ruthst00).
Head commit for run:
dcab76df0a4a962a72de89237a8805e7f16a4195 / ruthes00 <ru...@gmail.com>
Split `grails.mail.overrideAddress` into separate to/from overrides.
Four documentation files now reflect the new `overrideToAddress` and `overrideFromAddress` mail plugin properties:
1. grails-doc/src/en/guide/mail/mailConfiguration.adoc — "Overriding Addresses" section documents all three properties with YAML examples and precedence rules.
2. grails-doc/src/en/guide/mail/mailTesting.adoc — "Using an Override Address" section was expanded into two sub-sections: "Overriding All Addresses" (the existing `overrideAddress`) and "Overriding Recipients and Sender Independently" (the new `overrideToAddress` / `overrideFromAddress`), each with a `application-test.yml` example.
3. grails-doc/src/en/guide/upgrading/upgrading80x.adoc — New section 80 covers the change for applications upgrading from Grails 7.
4. .agents/skills/grails-8-upgrade/SKILL.md — Concise checklist entry added for AI agents performing Grails 8 upgrades.
Three new Spock feature methods were added to `grails-mail/src/test/groovy/grails/plugins/mail/MailMessageBuilderSpec.groovy`, each pinning a previously untested behavioral decision in `MailMessageBuilder`:
1. "Test that overrideToAddress replaces cc and bcc recipients" — Confirms that `toDestinationAddresses()` is called for `cc()` and `bcc()` as well as `to()`, so `overrideToAddress` replaces every recipient address in all three fields, while `from` is left untouched.
2. "Test that overrideAddress overrides the explicit from address (backward-compatibility contract)" — Documents that when only `overrideAddress` is configured (no separate `overrideFromAddress`), it is promoted to `overrideFromAddress` in the constructor and therefore replaces an explicit `from` call in the DSL. This is the backward-compatibility contract that was previously implicit.
3. "Test that replyTo and envelopeFrom are not affected by overrideFromAddress or overrideAddress" — Explicitly asserts that `replyTo` and `envelopeFrom` pass through unchanged even when both `overrideAddress` and `overrideFromAddress` are set, making this a documented decision rather than an accident. (The `envelopeFrom` field is stored on the builder and applied at send time via `SMTPMessage`, so it is intentionally not subject to address overrides.)
All 23 tests in `MailMessageBuilderSpec` pass, and `codeStyle` reports no violations for the module.
Report URL: https://github.com/apache/grails-core/actions/runs/36926982668
With regards,
GitHub Actions via GitBox