> I think `Regexp.linear_time?(/(?<=(a))/)` matches in linear time. I apologize, it seems I got distracted and forgot to actually check the execution times. But this is interesting behavior. Maybe constant-size lookahead can be optim...trinistr (Alexander Bulancov)
First issue: `Regexp.linear_time?` is `false` for a positive lookahead with a capture, but `true` for a positive lookbehind: ```ruby irb(main):002> Regexp.linear_time?(/(?=(a))/) => false irb(main):003> Regexp.linear_time?(/(?<=(a))/...trinistr (Alexander Bulancov)
I've been working on some tests using `public_methods`, and was bitten by this. I think a documentation update is definitely needed. Docs shouldn't straight-up lie. Though I personally think that Module (or Class?) should just have di...trinistr (Alexander Bulancov)
I think slices always require a source buffer? If so, returning a slice will require somehow handling a buffer so it doesn't leak (though GC may take care of it?). On a related note, slices require some work on their own, there is no ...trinistr (Alexander Bulancov)
Support for `UNIXSocket` on Windows was added in #19135. Through testing in ruby/spec, I identified unexpected results in two methods: 1. `#remote_address.to_s` always returns 110 bytes, compared to `#local_address.to_s` which returns o...trinistr (Alexander Bulancov)
> Currently, offset doesn't change the buffer's size if unspecified, leading to crashes. I will be making a PR addressing this but still. The pull request in question: https://github.com/ruby/ruby/pull/15264trinistr (Alexander Bulancov)
*This was supposed to be a bug report, but it turned into a feature request halfway through.* `IO::Buffer.map` supports `size` and `offset` arguments to localize buffer to a specific part of mapped file. While `size` works fine, speci...trinistr (Alexander Bulancov)
Thank you! For more context: I'm working on IO::Buffer's specs for ruby/spec. This issue was created quite early, as I started with `.new`, and since then I've discovered a whole bunch of questionable or unclear behaviors (or just pla...trinistr (Alexander Bulancov)
Also not sure if this is intentional, but a buffer mapped from a file with `IO::Buffer::PRIVATE` is neither internal nor external: ``` IO::Buffer.map(File.open("README.md", "r+"), nil, 0, IO::Buffer::PRIVATE).external? # => false IO:...trinistr (Alexander Bulancov)