v3.0.0.rc1
Pre-release
Pre-release
Added
- Include
hanami-mailerin the defaultGemfile, include sample mailer env vars in.env, and generate a baseMailerclass for the app and each slice (app/mailer.rbandmailer.rbin slices). Usehanami new --skip-mailerto opt out. (@timriley in #420, #425) - Add
generate mailercommand. (@timriley in #426) - Add
i18ngem to the defaultGemfile, and generate a placeholderconfig/i18n/en.ymlfor the app and each generated slice. (@timriley in #409) - Add
--nameoption tohanami new, to specify a custom module namespace while using the positional argument as the directory path. For example,hanami new my_bookshelf --name=bookshelfcreates the app inmy_bookshelf/withBookshelfas the module name. (@aaronmallen in #387) - Add
--testoption tohanami newto specify which test framework to use. Supportsrspec(default) andminitest. (@timriley in #399) - Add
generate providercommand. (@timriley in #419) - Add
--template-engineoption tohanami generateandhanami newto specify which template engine should be used for generated template files. Supportserb,hamlandslim. (@katafrakt in #280, #389, #390) - Add
--forceoption to all generators (except migration), which will override existing files instead of exiting early (@katafrakt in #397)
Changed
- In generated
Gemfile, depend on dry-validation rather than hanami-validations. Hanami Validations will no longer be used; Hanami Action now checks for Dry Validation directly. (@timriley in #401) - In generated
package.json, includeesbuildas a direct dependency.esbuildis now a peer dependency ofhanami-assets, which requires the app to depend on it directly. (@timriley in #428) - Check for the hanami-action gem rather than hanami-controller (now retired) across various commands. (@cllns in #402)
- Include rouge gem in generated
Gemfileto enable SQL syntax highlighting in logs. (@kyleplump in #405) - When
--gem-source=gem.coopis used, Hanami and Dry gems are installed from their respective namespaces on gem.coop (@katafrakt in #424) - Require Puma 7.1 or later, and remove unneeded
preload_app!in generatedconfig/puma.rb. Preloading is now enabled by default in Puma's cluster mode. (@joshuay03 in #372) - In generated
.env, include a link the guide explaining how these files are loaded. (@timriley in #425) - In generated files, update all guides.hanamirb.org links to hanakai.org. (@yosangwon in #407)
- Require dry-cli 1.4 or later, allowing for simplified argument handling in hanami-rspec callback methods. (@timriley in #408)
- Link to new hanakai.org site in generated
README.md. (@katafrakt in #423) - Require Ruby 3.3 or newer.
Fixed
- Skip generating duplicate routes when running
generate action. (@sandbergja in #417) - Don't overwrite libpq ENV vars with empty strings derived from certain DATABASE_URLs. (@StantonMatt in #414)
- Remove duplicate text in
middlewareandroutescommand usage output. (@katafrakt in #406