Skip to content

Migrate all T::Struct usages to bare Ruby classes - #841

Merged
Morriar merged 13 commits into
mainfrom
at-remove-t-struct
Aug 4, 2026
Merged

Migrate all T::Struct usages to bare Ruby classes#841
Morriar merged 13 commits into
mainfrom
at-remove-t-struct

Conversation

@Morriar

@Morriar Morriar commented Jan 8, 2026

Copy link
Copy Markdown
Contributor

Also enable Sorbet/ForbidTStruct cop after that.

@Morriar Morriar self-assigned this Jan 8, 2026
@Morriar
Morriar requested a review from a team as a code owner January 8, 2026 16:27
@Morriar
Morriar force-pushed the at-remove-t-struct branch 2 times, most recently from 90bd8f6 to 80a1d36 Compare January 8, 2026 16:30

@amomchilov amomchilov left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I guess if you migrated to Data.define instead, you'd need a whole bunch of RBI files just to specify the sigs, right?

@amomchilov amomchilov changed the title Migrate all T::Struct usages to bare Ruby classes Migrate all T::Struct usages to bare Ruby classes Jan 8, 2026
@Morriar

Morriar commented Jan 8, 2026

Copy link
Copy Markdown
Contributor Author

I guess if you migrated to Data.define instead, you'd need a whole bunch of RBI files just to specify the sigs, right?

Indeed, Sorbet doesn't have a way to associate types to data fields yet.

@paracycle paracycle left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have a few minor comments, but looks good to me

Comment thread lib/spoom/sorbet/lsp/structures.rb Outdated
Comment thread lib/spoom/sorbet/lsp/structures.rb Outdated
Comment thread lib/spoom/sorbet/lsp/structures.rb Outdated
Comment thread lib/spoom/sorbet/lsp/structures.rb Outdated
Morriar added 13 commits August 4, 2026 14:19
Signed-off-by: Alexandre Terrasa <alexandre.terrasa@shopify.com>
Signed-off-by: Alexandre Terrasa <alexandre.terrasa@shopify.com>
Signed-off-by: Alexandre Terrasa <alexandre.terrasa@shopify.com>
Signed-off-by: Alexandre Terrasa <alexandre.terrasa@shopify.com>
Signed-off-by: Alexandre Terrasa <alexandre.terrasa@shopify.com>
Signed-off-by: Alexandre Terrasa <alexandre.terrasa@shopify.com>
Signed-off-by: Alexandre Terrasa <alexandre.terrasa@shopify.com>
Signed-off-by: Alexandre Terrasa <alexandre.terrasa@shopify.com>
Signed-off-by: Alexandre Terrasa <alexandre.terrasa@shopify.com>
Signed-off-by: Alexandre Terrasa <alexandre.terrasa@shopify.com>
Signed-off-by: Alexandre Terrasa <alexandre.terrasa@shopify.com>
@Morriar
Morriar force-pushed the at-remove-t-struct branch from 500c9de to 8e59d6f Compare August 4, 2026 18:25
@Morriar
Morriar merged commit a36ecc8 into main Aug 4, 2026
11 checks passed
@Morriar
Morriar deleted the at-remove-t-struct branch August 4, 2026 20:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants