Skip to content

Releases: Shopify/tapioca

v0.9.3

19 Aug 20:43

Choose a tag to compare

What's Changed

🐛 Bug Fixes

Full Changelog: v0.9.2...v0.9.3

v0.9.2

19 Jul 18:01
38e482f

Choose a tag to compare

What's Changed

✨ Enhancements

🐛 Bug Fixes

  • Fix crash on realpath call on non-existing paths by @Morriar in #1063

🛠 Other Changes

New Contributors

Full Changelog: v0.9.1...v0.9.2

v0.9.1

14 Jul 18:58
b1f4a7b

Choose a tag to compare

What's Changed

✨ Enhancements

🐛 Bug Fixes

🛠 Other Changes

New Contributors

Full Changelog: v0.9.0...v0.9.1

v0.9.0

07 Jul 17:54
22ceb13

Choose a tag to compare

What's Changed

🚧 Breaking Changes

✨ Enhancements

  • Use --config and --postrequire when calling the init command by @Morriar in #957
  • Handle multiple annotations repositories by @Morriar in #955
  • Add --environment flag to dsl/gem commands by @paracycle in #979
  • Support authentication for private annotations repositories by @Morriar in #963
  • Check-shims command also look inside the sorbet/rbi/annotations directory by @Morriar in #991
  • Read private repo credentials from a the netrc file by @Morriar in #990
  • Also check sorbet/rbi/todo.rbi for duplicated shims when running the check-shims command by @Morriar in #992
  • Add --typed-overrides option to the annotations command by @Morriar in #999
  • Provide a meaningful help for HTTP errors when fetching annotations by @Morriar in #1008
  • Compile RBIs for foreign constants by @egiurleo in #903
  • Properly attribute mixin locations by @egiurleo in #1010
  • Filter out mixins that weren't performed in current gem by @egiurleo in #1012
  • Disable mixin tracking when we do includes for probing by @paracycle in #1019
  • Support for activerecord-typedstore v1.5.0 by @etiennebarrie in #976

🐛 Bug Fixes

  • Fix type variable patch to respect references to late defined types by @paracycle in #944
  • Skip debug and fakefs gems by @st0012 in #947
  • Better name validation for methods and parameters by @Morriar in #987
  • Fix type of column_type parameter for handle_unknown_type method by @paracycle in #997
  • Filter engines in application directory so they are not loaded by @wildmaples in #995
  • Dsl::Compilers::ActiveRecordRelations: fix #find_sole_by, #sole by @kivikakk in #1007
  • Use default Gemfile path instead of Rails root when listing engines by @vinistock in #1018
  • Fix Rails engine symbol loading by @paracycle in #1028
  • Do not mark constants as seen before generating RBI for them by @Morriar in #1040
  • Fix command documentation for check-shims by @Morriar in #956
  • Protobuf: Initializer, getter and setter for optional fields with message subtype should be nilable by @andrewn617 in #966
  • ActiveModel DateTime Attribute is a Time, not a DateTime by @louissobel in #1036
  • Use T.untyped safe nilability by @paracycle in #1035

🛠 Other Changes

New Contributors

Full Changelog: v0.8.0...v0.9.0

v0.8.3

28 Jun 17:54
cbc001b

Choose a tag to compare

What's Changed

This release fixes a bug introduced in 0.8.2 when using Tapioca to generate gem RBIs for non Rails applications.

🐛 Bug Fixes

  • Use default gemfile path instead of Rails root when listing engines #1018

Full Changelog: v0.8.2...v0.8.3

v0.8.2

27 Jun 19:22
6ff117f

Choose a tag to compare

What's Changed

This release includes a bug fix to filter engines defined in the application's directory so that they are not loaded during gem RBI generation.

🐛 Bug Fixes

Filter engines in application directory so they are not loaded #995

Full Changelog: v0.8.1...v0.8.2

v0.8.1

30 May 13:50
a899608

Choose a tag to compare

What's Changed

This is a small bug-fix release that changes how Tapioca does backward compatible type_member/type_template processing so that it respects references to not-yet-declared types in the blocks passed to those methods.

🐛 Bug Fixes

  • Fix type variable patch to respect references to late defined types by @paracycle in #944

Full Changelog: v0.8.0...v0.8.1

v0.7.3

30 May 15:05
277ffb1

Choose a tag to compare

What's Changed

This is a small bug-fix release that changes how Tapioca does backward compatible type_member/type_template processing so that it respects references to not-yet-declared types in the blocks passed to those methods.

🐛 Bug Fixes

  • Fix type variable patch to respect references to late defined types by @paracycle in #944

Full Changelog: v0.7.2...v0.7.3

v0.8.0

13 May 23:21
36395b6

Choose a tag to compare

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 as require: false as well. This allows you to not have to add a lot of entries to the require.rb file manually.
  • Tapioca now generates a sorbet/config file which ignores vendor/ 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

New Contributors

Full Changelog: v0.7.2...v0.8.0

v0.7.2

29 Apr 20:19
d5ff67d

Choose a tag to compare

What's Changed

🐛 Bug Fixes

Full Changelog: v0.7.1...v0.7.2