Feature #20775
openGemify win32-registry, win32-sspi and win32-resolv
Description
Many libraries bundled with ruby have been gemified and were separated into it's own repository.
Not so far the 3 win32 libraries: https://github.com/ruby/ruby/tree/master/ext/win32/lib/win32
- win32/registry
- win32/resolv
- win32/sspi
win32-registry¶
I started with win32/registry in https://github.com/larskanis/win32-registry
- separate all commit into it's own repository,
- make it a gem,
- add proper test cases to verify the core functions,
- add a GHA workflow to run the tests,
- add a single commit to change to consistent UTF-8 string output (see https://bugs.ruby-lang.org/issues/20774)
My intention is that the repository can be moved to https://github.com/ruby/win32-registry and can be integrated it into ruby.
However I think win32/registry
should permanently stay a bundled gem, since the registry access is a core functionality on Windows, so it should always be in the core ruby distribution.
win32-sspi¶
Regarding win32/sspi
I doubt that anyone is using this library.
It was completely broken since ruby-3.0 until some days ago due to this fix: https://github.com/ruby/ruby/commit/fc2f196cb8542a81bf271cdb90e0189c54321103
Nevertheless it makes sense to gemify it and to move it to it's own repository.
I use a massively extended version of this file at work, maybe this can be included then.
IMHO there's no need to keep it in the ruby distribution.
win32-resolv¶
I don't have a strong opinion reg. win32/resolv
and never had a reason to use this platform dependent API instead of the cross platform functions in the socket
library.
Maybe it had a use in the past.
Updated by nobu (Nobuyoshi Nakada) about 1 month ago
win32/sspi¶
I'd propose to just drop it.
It has been unmaintained for years, not only A
you mentioned (e.g., Fixnum
), but no body noticed it.
win32/resolve¶
it is included in ruby/resolv already.
https://github.com/ruby/resolv/pull/54
Updated by hsbt (Hiroshi SHIBATA) about 1 month ago ยท Edited
- Status changed from Open to Assigned
- Assignee set to hsbt (Hiroshi SHIBATA)
win32-registry
I agreed your proposal.
@nobu (Nobuyoshi Nakada) Do you have any concern?
win32-sspi
I'm +1 to @nobu's opinion. we should remove it from ruby/ruby
.
win32-resolv
As nobu said, we already bundled it to resolv gem.
Updated by hsbt (Hiroshi SHIBATA) about 1 month ago
My intention is that the repository can be moved to https://github.com/ruby/win32-registry and can be integrated it into ruby.
Can you add my GitHub account (hsbt) to that repository as admin? After that, I will transfer to under the Ruby org.
Updated by hsbt (Hiroshi SHIBATA) about 1 month ago
@larskanis (Lars Kanis) Thanks to invite me for https://github.com/larskanis/win32-registry. But I can't see Settings
tab yet. Can you make me admin
of that repository?
I consider to extract net-http-sspi
from win32/sspi
with nobu because win32/sspi
only called by net-http
.
Updated by larskanis (Lars Kanis) about 1 month ago
@hsbt (Hiroshi SHIBATA) I had to move the repository to an organization, in order to give you admin access. The new address is: https://github.com/oneclick/win32-registry
Updated by hsbt (Hiroshi SHIBATA) about 1 month ago
Thanks! I transferred it to https://github.com/ruby/win32-registry. I keep you as admin on ruby/win32-registry.
Updated by nobu (Nobuyoshi Nakada) about 1 month ago
The test file in https://github.com/larskanis/win32-registry seems quite different from the one in ruby/ruby.
Is it intentional?
Updated by larskanis (Lars Kanis) about 1 month ago
The test file in https://github.com/larskanis/win32-registry seems quite different from the one in ruby/ruby.
Oh this is new! I created the win32-registry repository 10 months ago, when your test wasn't written. So I wrote my own. I'll merge them.
Updated by larskanis (Lars Kanis) about 1 month ago
I opened a pull request to merge nobu's and my tests together: https://github.com/ruby/win32-registry/pull/3
@hsbt (Hiroshi SHIBATA) You left me as the only maintainer for win32-registry. Is it expected that I maintain this library from now on?
How about the integration into ruby/ruby - do I have to do anything to support this?
I'm new to maintaining an official ruby stdlib library, so please tell me if I do anything wrong.
Updated by hsbt (Hiroshi SHIBATA) about 1 month ago
I prepared to sync ruby/ruby
and ruby/win32-registry
.
I found some question for your changes. Can you look https://github.com/ruby/win32-registry/pull/5 ?
Updated by hsbt (Hiroshi SHIBATA) 28 days ago
I and @nobu (Nobuyoshi Nakada) removed win32-sspi
from ruby repository.
https://github.com/ruby/ruby/pull/11829
We will do minimum maintenance win32-sspi library at https://github.com/ruby/win32-sspi.