Tags: standardgalactic/sorbet
Tags
Add single package rbi tests that include test packages (sorbet#5406)
Handle symbols from child packages in single-package rbi generation (s… …orbet#5393) * Move import metadata tracking into a custom type * Update test outputs for rbi-gen-single now that stubbing is better * Address comments * Format
Recover from mismatched def/class/end (sorbet#5383) * Make stmts a delimited_node_list * wip * Factor out helper function * defn_indent * defs_indent * class_indent * Add some comments * wip: Something is broken with newline_s * truncateBeginBody -> truncateBodyStmt * Use lineBreaks instead of newline_s It looked like the do_nl action was happening too eagerly in certain cases. For example: class Foo end The lexer seemed to be running the `do_nl` action for the `tCONSTANT(Foo)` token before calling `emit` for the `kCLASS` token. I think that this is "working as intended" because the current use of the `newline_s` rule seems to be that it's only guaranteed to have the right thing in it when we're right about to emit a `tNL` token, and we don't actually do that for the newline between `kCLASS` and `tCONSTANT` in this case. So what would happen instead was that the computed `lineStart` value for the `kCLASS` token would take on a value **greater** than its own `beginPos`. * Fix class_weird_newline_indent test * test for module_indent * Add error assertions * Some existing tests improve * Move findLineBreaks into common It seems benign enough to put there. * Update some comments * redundant include
Decouple rename.cc (sorbet#5401) * Move Renamer and utility functions out of rename.cc * Empty commit to trigger CI * Explicitly mention call_sites.h * Fix tests * Move all top-level things into Renamer class * Renamer -> AbstractRenamer * call_sites/call_sites.* -> AbstractRenamer.* Co-authored-by: Jake Zimmerman <zimmerman.jake@gmail.com>
Debugging notes for required params after optional params error (sorb… …et#5403) I spent a bunch of time today debugging an error I was seeing on a Rails 7 app, where we were getting this error and it was pointing here: https://github.com/rails/rails/blob/2459c20afb508c987347f52148210d874a9af4fa/activerecord/lib/active_record/persistence.rb#L405 Eventually, with the help of @jeffcarbs and @paracycle I tracked it down to a `def self.update!` in an Active Record model. This method had a `sig { void }` but it seems like for some reason the names matching still triggered this error. I'm not sure how to fix that or if it's even a bug, but I thought some debugging notes might help the next person to come across it.
Reject subclassing subclasses of T::Enum (sorbet#5400)
Remove unused function (sorbet#5399)
pass `NameRef` by value in `getCompletionItemForLocalName` (sorbet#5396)
Merge-race, remove unnecessary test (sorbet#5394)
PreviousNext