rbs_actionmailer
rbs_actionmailer is a RBS generator for actionmailer
Installation
Add a new entry to your Gemfile and run bundle install
:
group :development do
gem 'rbs_actionmailer', require: false
end
After the installation, please run rake task generator:
bundle exec rails g rbs_actionmailer:install
Usage
Run rbs:actionmailer:setup
task:
bundle exec rake rbs:actionmailer:setup
Then rbs_actionmailer will scan your source code and generate RBS files into
sig/actionmailer
directory.
rbs_actionmailer supports RBS::Inline style type annotations. If your mailer class has type annotation comments, they will be applied to the generated RBS:
class MyMailer < ActionMailer::Base
# @rbs user: User
def welcome(user)
end
end
rbs_actionmailer will generate the following RBS:
class MyMailer < ActionMailer::Base
def self.welcome: (User user) -> ActionMailer::MessageDelivery
def welcome: (User user) -> Mail::Message
end
Development
After checking out the repo, run bin/setup
to install dependencies. You can also
run bin/console
for an interactive prompt that will allow you to experiment.
To release a new version, update the version number in version.rb
, and then put
a git tag (ex. git tag v1.0.0
) and push it to the GitHub. Then GitHub Actions
will release a new package to rubygems.org.
Contributing
Bug reports and pull requests are welcome on GitHub at https://github.com/tk0miya/rbs_actionmailer. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the code of conduct.
License
The gem is available as open source under the terms of the MIT License.
Code of Conduct
Everyone interacting in the RbsActionmailer project's codebases, issue is expected to follow the code of conduct.