Skip to content

v1.4.0

Choose a tag to compare

@MichaelSowah MichaelSowah released this 06 Feb 23:14
· 28 commits to main since this release
0afed0d

[1.4.0] - 2026-02-06

Changed

  • EmailFormatter: applyLayout() now searches custom_paths first, then falls back to the default templates path, consistent with partial and template resolution.

  • EmailFormatter: includePartial() now searches custom_paths first, then extension defaults.

  • EmailFormatter: registerDefaultTemplates() now loads built-in templates first, then overrides/extends from custom_paths.

  • Version Management: Version is now read from composer.json at runtime via EmailNotificationServiceProvider::composerVersion().

    • getVersion(), registerMeta(), and NotivaProvider::getExtensionInfo() all use composerVersion() instead of hardcoded strings.
    • Config extension_version is injected dynamically in register() from composer.json.
    • Future releases only require updating composer.json and CHANGELOG.md.

Notes

  • No breaking changes. Custom paths configured via services.mail.templates.custom_paths now consistently override built-in templates, partials, and layouts.