Jake Zimmerman
Jake Zimmerman
We have a policy of testing changes to Sorbet against Stripe's codebase before merging them. I've kicked off a test run for the current PR. When the build finishes, I'll...
We have a policy of testing changes to Sorbet against Stripe's codebase before merging them. I've kicked off a test run for the current PR. When the build finishes, I'll...
While the changes here seem to mostly be good, it adds quite a bit of complexity, and the original motivation I had was to solve #7741 which I ended up...
> I think this is related to #96 I am not yet convinced they are the same bug, so I think we should leave them both open.
Another test case: [→ View on sorbet.run](https://sorbet.run/#%23%20typed%3A%20true%0Aextend%20T%3A%3ASig%0A%0Axs%20%3D%20T.let%28%5B%5D%2C%20T%3A%3AArray%5BInteger%5D%29%0Ahas_more%20%3D%20T.let%28true%2C%20T%3A%3ABoolean%29%0A%0Ai%20%3D%200%0Awhile%20has_more%0A%20%20xs.concat%28%5Bi%5D%29%0A%20%20if%20i%20%3E%3D%205%0A%20%20%20%20has_more%20%3D%20false%0A%20%20end%0Aend%0A%0Axs.each%20do%20%7Cx%7C%0A%20%20print%20x%0Aend) ```ruby # typed: true extend T::Sig xs = T.let([], T::Array[Integer]) has_more = T.let(true, T::Boolean) i = 0 while has_more xs.concat([i]) if i >=...
We have a policy of testing changes to Sorbet against Stripe's codebase before merging them. I've kicked off a test run for the current PR. When the build finishes, I'll...
We have a policy of testing changes to Sorbet against Stripe's codebase before merging them. I've kicked off a test run for the current PR. When the build finishes, I'll...
We have a policy of testing changes to Sorbet against Stripe's codebase before merging them. I've kicked off a test run for the current PR. When the build finishes, I'll...
I definitely don’t like swallowing all deserialization errors: if the user gave us an array with stuff in it, or an object with fields we weren’t expecting, probably the user...