tapioca
tapioca copied to clipboard
The swiss army knife of RBI generation
### Motivation This fixes a crash I was seeing with the Dotenv gem. They use [ActiveSupport::Deprecation::DeprecatedConstantProxy](https://api.rubyonrails.org/classes/ActiveSupport/Deprecation/DeprecatedConstantProxy.html) for their old Railtie module so it blows up if anything touches it (since...
Referencing [this page](https://github.com/Shopify/tapioca/blob/main/manual/compiler_activerecordcolumns.md). I'm wondering if we could create a new mixed option that is between nilable and untyped. If the only reason we mark columns as 'untyped' is non-nil...
## Description Tapioca's compiled type signature for `ActiveJob::Base.perform_now` essentially uses the same as `ActiveJob::Base#perform`. However, this is not fully representative of the behaviour because `.perform_now` will return the exception that...
### Motivation This PR addresses #1347 which aims to show a message when trying to run `tapioca gem` on a ignored gem. ### Implementation I have added a skipped gems...
When saving a file that contains a constant that cannot be processed by any DSL compilers, the add-on errors. The error is rescued and nothing actually happens, but it prints...
When we moved to RBS comment annotations, the `Tapioca::Dsl::Compiler` base class lost the `extend T::Generic`. This is a breaking change because most custom compilers out there just use `type_member` directly...
## Motivation ### Current implementation The current implementation has a few issues: 1. Relies on git, which is an external tool and not at all required to use Tapioca 2....