raindrops RubyGem user+dev discussion/patches/pulls/bugs/help
 help / color / mirror / code / Atom feed
* Ruby 3.3 compatible release?
@ 2023-08-25  1:51 Samuel Williams
  2023-08-28  1:05 ` Eric Wong
  0 siblings, 1 reply; 3+ messages in thread
From: Samuel Williams @ 2023-08-25  1:51 UTC (permalink / raw)
  To: raindrops-public

Hi Eric,

Thanks for your continued effort to maintain and support this gem.

We are trying to clean up the `io.h` interface in Ruby 3.3 and would like to know if there is anything we can do to help with a release of Raindrops which supports the updated interface and removes usage of deprecated symbols.

I believe we’ve supplied a patch, but it is not formally released yet. Is there anything we can do to help?

Warm regards,
Samuel

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Ruby 3.3 compatible release?
  2023-08-25  1:51 Ruby 3.3 compatible release? Samuel Williams
@ 2023-08-28  1:05 ` Eric Wong
  2023-08-28 23:12   ` Samuel Williams
  0 siblings, 1 reply; 3+ messages in thread
From: Eric Wong @ 2023-08-28  1:05 UTC (permalink / raw)
  To: Samuel Williams; +Cc: raindrops-public

Samuel Williams <samuel.williams@oriontransfer.co.nz> wrote:
> Hi Eric,
> 
> Thanks for your continued effort to maintain and support this gem.

I don't hate this gem as much as the others, but it's still
uncomfortable for me to hear praise.

> We are trying to clean up the `io.h` interface in Ruby 3.3 and
> would like to know if there is anything we can do to help with
> a release of Raindrops which supports the updated interface
> and removes usage of deprecated symbols.

As I wrote in kgio-public[1] about other Ruby 3.3+ changes.

I also wonder if st.h hash table usage is on the chopping block
at some point; and I'm also somewhat tempted to replace it
anyways since I'll probably want to use some of this outside of
Ruby.

> I believe we’ve supplied a patch, but it is not formally
> released yet. Is there anything we can do to help?

If you can guarantee the Ruby doesn't introduce further
incompatibilities (the longer the guarantee, the better).


[1] https://yhbt.net/kgio-public/20230828005810.M622269@dcvr/

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Ruby 3.3 compatible release?
  2023-08-28  1:05 ` Eric Wong
@ 2023-08-28 23:12   ` Samuel Williams
  0 siblings, 0 replies; 3+ messages in thread
From: Samuel Williams @ 2023-08-28 23:12 UTC (permalink / raw)
  To: Eric Wong; +Cc: raindrops-public

> If you can guarantee the Ruby doesn't introduce further
> incompatibilities (the longer the guarantee, the better).

The plan is as follows:

- Ruby 3.3: deprecations on `struct rb_io`.
- Ruby 3.4+: remove public visibility of `struct rb_io`.

The reason for this change is to make it possible for us to change the internal details of `struct rb_io`. It’s also easier for other implementations e.g. JRuby, TruffleRuby, which don’t necessarily have the same layout and need to emulate it for native extensions.

We just merged a PR in Ruby head which amounts to:

#define HAVE_RB_IO_T

This restores the previous code path and makes Ruby 3.3 more compatible with existing code.

That being said, I think it would be great to merge the appropriate fixes which remove usage of deprecated fields in Ruby 3.3.

So to summarise, Ruby 3.3 should be compatible, but with deprecations. We don’t plan on introducing any further breaking changes until a later release (e.g 3.4 or later). If you can merge and release the appropriate patches, that would be greatly appreciated.

Warm regards,
Samuel

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2023-08-28 23:12 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-08-25  1:51 Ruby 3.3 compatible release? Samuel Williams
2023-08-28  1:05 ` Eric Wong
2023-08-28 23:12   ` Samuel Williams

Code repositories for project(s) associated with this public inbox

	https://yhbt.net/raindrops.git/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).