v0.8.0
What's Changed
This release is aimed at removing some of the pain points of working with Tapioca. Towards that goal, the headline features added are:
- Tapioca now automatically checks and corrects RBI strictness to work around mismatched method definitions. This allows you to not have to reach for
typed_overrides
manually. - Tapioca now requires gems from the
Gemfile
that are marked asrequire: false
as well. This allows you to not have to add a lot of entries to therequire.rb
file manually. - Tapioca now generates a
sorbet/config
file which ignoresvendor/
directory. - Tapioca now generates the documentation of methods/constants in the generated RBI file by default.
- Tapioca now allows you to check your shim RBI files against gem/DSL RBIs and Sorbet payload RBIs to find shim definitions that are no longer needed.
- Tapioca now includes a prototype of the
annotate
command to fetch signature/type annotation RBI files from remote sources. This command is in its early stages and will be improved in future releases, but we would love to hear what you think about it.
We also have an updated README, a cute new logo and documentation for how to create your own DSL compilers. 🎉
✨ Enhancements
- Prototype: Add
annotations
command by @Morriar in #930 - Check generated RBI files for correctness by @Morriar in #842
- Make DSL generation also autocorrect the gems RBI strictnesses by @Morriar in #837
- Need less entries in
require.rb
by @paracycle in #818 - Set default if
factory
prop is set by @jeffcarbs in #833 - Add
tapioca/dsl
entrypoint for custom DSL compilers by @paracycle in #844 - Always ignore the
vendor/
directory form the sorbet/config by @Morriar in #848 - Check duplicates between shims and Sorbet's RBI payload by @Morriar in #879
- Fairer queueing for parallel workers in RBI generation by @egiurleo in #889
- Validate config values for arrays and hashes by @Morriar in #898
- More effectively determine method ownership for RBI generation by @egiurleo in #896
- Add descriptive message for unexpected DSL exceptions by @paracycle in #913
- Enable documentation generation by default by @Morriar in #920
- Add support for :oneof fields on protobuf messages by @andrewn617 in #929
🐛 Bug Fixes
- Explicitly load descendants patch in ActiveSupport by @KaanOzkan in #924
🛠 Other Changes
- Improve README by @Morriar in #917
- Add README entry for creating custom DSL compilers by @Morriar in #921
New Contributors
- @egiurleo made their first contribution in #889
- @andrewn617 made their first contribution in #929
Full Changelog: v0.7.2...v0.8.0