Nathan Froyd
Nathan Froyd
Without this, you can't write something like: ```rust fn read_slice_ref>(r: &mut R) -> Option
### Motivation This is 15-20% faster on Sorbet's benchmark suite, though admittedly it's already the slow path. ### Test plan See included automated tests.
### Motivation Turns out this way is ~10% faster (!). ### Test plan See included automated tests.
### Motivation Symbolic links in git repositories are just weird, CI is green without this, and people should be using `./bazel` instead. ### Test plan See included automated tests.
#### Input [→ View on sorbet.run](https://sorbet.run/#%23%20typed%3A%20true%0Aextend%20T%3A%3ASig%0A%0A%0Aclass%20Foo%20%3C%20T%3A%3AStruct%0A%20%20extend%20T%3A%3ASig%0A%20%20sig%20%7B%20returns%28String%29%20%7D%0A%20%20def%20self.thing%0A%20%20%20%20%22thing%22%0A%20%20end%0A%0A%20%20self.thing%0A%20%20prop%20%3Agreeting%2C%20String%2C%20default%3A%20self.thing%0Aend) ```ruby # typed: true extend T::Sig class Foo < T::Struct extend T::Sig sig { returns(String) } def self.thing "thing" end self.thing prop :greeting, String,...
### Motivation I think this solves some issues that users has with changing things through VSCode itself, rather than the extension? Or do we instead have to listen for changes...
### Description of the bug: We use `--build_event_json_file` to watch for target completion events and run some post-processing on the produced files in tandem with Bazel running. With Bazel 6.3.2,...
YARP provides precise location information for any number of things in its AST, which is great! But each of those locations on a 64-bit platform costs 16 bytes, which means...
#### Input [→ View on sorbet.run](https://sorbet.run/#%23%20typed%3A%20true%0Aclass%20Outer%0A%20%20class%20Inner%0A%20%20%20%20class%20Nested%0A%20%20%20%20%20%20class%20Namespace%0A%20%20%20%20%20%20%20%20class%20Division%0A%20%20%20%20%20%20%20%20%20%20class%20Mine%20%3C%20T%3A%3AEnum%0A%20%20%20%20%20%20%20%20%20%20%20%20enums%20do%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20First%20%3D%20new%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20Second%20%3D%20new%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20Third%20%3D%20new%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20Fourth%20%3D%20new%0A%20%20%20%20%20%20%20%20%20%20%20%20end%0A%20%20%20%20%20%20%20%20%20%20end%0A%20%20%20%20%20%20%20%20end%0A%20%20%20%20%20%20end%0A%20%20%20%20end%0A%20%20end%0Aend%0A%0Aclass%20Toplevel%0A%20%20extend%20T%3A%3ASig%0A%0A%20%20sig%20%7Bparams%28e%3A%20Outer%3A%3AInner%3A%3ANested%3A%3ANamespace%3A%3ADivision%3A%3AMine%29.void%7D%0A%20%20def%20func%28e%29%0A%20%20end%0Aend%0A%0AToplevel.new.func%28%29%0A%23%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%5E%20completion%20should%20know%20that%20we%20take%20enums%20and%20autocomplete%20enum%20values%0A%23%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20or%20at%20the%20very%20least%20the%20enum%20class%20itself) ```ruby # typed: true class Outer class Inner class Nested class Namespace class Division class Mine < T::Enum enums do First = new Second...
We are seeing intermittent hangs in various tests at Stripe when using Ruby 3.3.1 that involve subprocesses: one process is stuck waiting for a child process to complete, while the...