We suggest everybody using MidiSmtpServer to switch at least to latest 2.3.y. or best to 3.x. The update is painless and mostly without any source code changes 😎
For upgrades from previous versions or outdated MiniSmtpServer gem you may follow the guides at Appendix Upgrade to get your code ready for the latest releases.
- New feature proxy (check issue 49)
- mkdocs update for readthedocs
- Minor fix for backwards compatibility to method
start
when not using pre_fork options.
- Add option to additional activate pre-forking workers (beta) (check issue 42)
- Adjust sleep idle time while in command and data loop to speedup processing (check issue 47)
- Mark the current default value
0.1
forio_waitreadable_sleep
as deprecated, will become0.03
in a future version. - Modify github workflow and apply testing of ruby 3.1 and ruby 3.2
- Generate updated openssl test certificates for TLS tests
- Critical fix for thread safety (check issue 39)
- Fix tests using net/smtp '>= 0.3.1'
- Enable support for certificate chain PEM files
- Enable support for Ruby 3.0
- Bound to ruby 2.6+
- New extended logging capabilities
- Updated rubocop linter and code styles
- Fix tests for Net/Smtp of Ruby 3.0 (check PR 22 on Net/Smtp)
- Fix tests for minitest 6 deprecated warnings
obj.must_equal
- New exposed active SSLContext
- Dropped deprecated method
host
- please usehosts.join(', ')
instead - Dropped deprecated method
port
- please useports.join(', ')
instead - Dropped deprecated empty wildcard
""
support on initialize - please use specific hostnames and / or ip-addresses or star wildcard"*"
only - Align tests with Rubocop style and coding enforcements
- Added
rake
tasks for testing and linting, checkoutbundle exec rake -T
- Re-defined arguments of methods
new
,join
,stop
as keyword arguments, check minor incompatibility: upgrade to 3.x - Enhance the slack recipe in cookbook for Docker usage
- Critical fix for thread safety (check issue 39)
- New hosts wildcard and interface detection
- Extended Certificates with subjectAltName
- Bound to ruby 2.3+
- Full support for
# frozen_string_literal: true
optimization - Updated rubocop linter
- Rich enhancements to tests
- New events for header inspection and addons
- New MidiSmtpServer micro homepage
- New ReadTheDocs manual
- New Recipe for Slack MTA
- Support IPv4 and IPv6 (documentation)
- Support binding of multiple ports and hosts / ip addresses
- Handle utilization of connections and processings
- Support of RFC(2)822 CR LF modes
- Support (optionally) SMTP PIPELINING extension
- Support (optionally) SMTP 8BITMIME extension
- Support (optionally) SMTP SMTPUTF8 extension
- SMTP PIPELINING, 8BITMIME and SMTPUTF8 extensions are disabled by default
- Support modification of local welcome and greeting messages
- Documentation and Links about security and email attacks
- Added implementation and integration testing
- Control and validation on incoming data see Incoming data validation
- Builtin optional support of STARTTLS encryption
- Added examples for a simple midi-smtp-server with TLS support
- Rubocop configuration and passed source code verification
- Modified examples for a simple midi-smtp-server with and without auth
- Enhanced
serve_service
(previouslystart
) - Optionally gracefully shutdown when service
stop
(default gracefully)
- Huge speed improvement on receiving large message data (1.000+ faster)
- Authentication PLAIN, LOGIN
- Safe
join
will catch and rescueInterrupt
- Modularized
- Removed dependency to GServer
- Additional events to interact with
- Use logger to log several messages from severity :debug up to :fatal