Changelog

All notable changes to laramail are documented here.


v1.2.0

Package renamed to laramail

  • Renamed package from @impruthvi/nodemail to laramail
  • CLI command changed from npx nodemail to npx laramail
  • Config file pattern changed from nodemail.config.* to laramail.config.*
  • Queue prefix default changed from nodemail to laramail
  • Updated all internal branding, imports, and documentation
  • README restructured (1076 → 368 lines)

v1.1.6

Postinstall thank-you message

  • Added a postinstall script that displays a thank-you message after installation
  • Automatically skips in CI environments
  • Set LARAMAIL_NO_POSTINSTALL=1 environment variable to disable the message

v1.1.4

Initial postinstall script

  • Initial release of the postinstall thank-you script (superseded by v1.1.6)

v1.1.3

CLI fix

  • Fixed queue:clear CLI command to use --status/-s option instead of positional argument
  • CLI now matches documented usage: npx laramail queue:clear --status failed

v1.1.2

Queue compatibility fix

  • queue: Replace colon with underscore in queue names for BullMQ compatibility
    • BullMQ does not allow colons (:) in queue names
    • Queue names now formatted as laramail_mail instead of laramail:mail

v1.1.1

Bug fixes and test improvements

  • Type handling and error management in preview and queue commands
  • Improved async/sync handling in image embedding and priority tests
  • Added comprehensive test coverage for MailFacade, MailManager, Mailable, and QueueManager

v1.1.0

CLI Commands — powerful command-line tools for managing your email workflow.

  • CLI Commands — New CLI tool with queue management, email preview, code generation, and configuration validation.
    • queue:work — Start processing queued emails
    • queue:status — Show queue job counts and status
    • queue:clear — Clear jobs from the queue by status
    • queue:retry — Retry failed jobs in the queue
    • preview — Preview an email in your browser without sending
    • send:test — Send a test email to verify configuration
    • make:mailable — Generate a new Mailable class
    • config:check — Validate your mail configuration

v1.0.1

5 new features expanding the library's email capabilities.

  • Email Events — Listen to sending, sent, and failed lifecycle events with typed listeners.
  • Email Preview — Render emails in the browser during development without actually sending them.
  • Email Priority — Set priority headers (high, normal, low) on outgoing messages.
  • Embedded Images — Attach inline images via CID references for rich HTML emails.
  • Rate Limiting — Throttle outgoing email with per-provider rate limits and configurable strategies.

v1.0.0

Provider Failover — automatic failover chains with retries, delays, and callbacks.

  • FailoverManager class for managing provider chains
  • failover config option (global and per-mailer)
  • onFailover callback for monitoring provider switches
  • MailResponse now includes provider, failoverUsed, failoverAttempts
  • Testing utilities: MailFake.simulateFailures() / resetFailures()
  • AssertableMessage failover methods: wasFailoverUsed(), getProvider(), getFailoverAttempts(), getResponse()

See the Provider Failover docs and Migration Guide for adoption details.


Earlier Releases

VersionKey Feature
v0.7.0Markdown Mail — renderer, components, themes
v0.6.0Queue support — Bull, BullMQ, sync driver
v0.5.0Testing utilities — Mail.fake(), assertions, AssertableMessage
v0.4.0Template engines — Handlebars, EJS, Pug + Mailable classes