-
-
Notifications
You must be signed in to change notification settings - Fork 296
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Windows Rubies - proper download URI #10
Comments
I think ideally this mapping would exist as a e.g. JSON file in https://github.com/oneclick/rubyinstaller2 When I added Windows support I noticed the latest releases all used Using the release API to find out available versions would be nice, but I'm not sure how long it'd take to enumerate all releases. It's probably quite a bit more involved. |
Using the release API would have the other advantage to pick the latest available release from RubyInstaller2 for e.g. |
The big large mapping file with all RubyInstaller releases since the ruby-1.8.7 era is here. I have some rake tasks that help me to fill the yaml file for every release, to verify integrity and to sign all binaries. Only the official release files are signed with a Microsoft trusted certificate. The procedure is described here. |
Since I'm working on this I looked at whether we can support Ruby 2.3 easily on Windows.
https://github.com/eregon/use-ruby-action/runs/397621963 Is that a known issue? Any recommendation to fix it? |
Fixed with #11. |
Depends on what is meant by 'support'. Windows Rubies 2.3 and lower use a proprietary package of MSYS for their 'devkit'. In theory, a dll is a dll, and MSYS2 and MSYS use the same msvc runtime. Re 2.3, I have tried building a few extension gems with MSYS2 devkit, and they do build and pass tests. One could download and install the old devkit, but that's kind of a pita.
Yes & yes. Sorry, forgot about this one. Rather outdated info on the issue is at https://www.appveyor.com/docs/lang/ruby/#openssl-verification One solution (only when loading Ruby 2.3) would be to add the equivalent of: ENV['X509::DEFAULT_CERT_FILE'] = 'C:/hostedtoolcache/windows/Ruby/2.7.0/x64/ssl/cert.pem' but use the logic to get the most recent path in the toolcache that you have. |
@MSP-Greg Do you mean setting |
Yes. Sorry. I had it right before I copy & pasted the actual file path... |
@MSP-Greg That works, thanks! |
Some background... Re Windows Ruby 2.3, I'm sure you noticed that the last build was 2.3.3. The people who developed the RubyInstaller/MYS system became busy with other things, and support fell apart, possibly also due to the fact that MSYS itself was losing support. So, RubyInstaller2 based on MSYS2 came into being, thanks to the work of Lars. About the same time, I was working with master and the test suites. A while ago, there was some discussion about whether to release RubyInstaller2/MSYS2 builds of 2.3, and some people did build it. I think the consensus was that having both RubyInstaller/MSYS and RubyInstaller2/MSYS2 builds (which used different compile tools) publicly available could turn into a support mess (especially for new users), so no builds were released. Also, support in terms of testing by ruby/ruby was much less that it is with newer Ruby versions. |
@eregon Could you also add RubyInstaller-head to available versions? Should I add it to the YAML file? |
@MSP-Greg Thanks for the background, good to know. I think more recent versions of Ruby 2.3 with MSYS2 would be a nice-to-have, but OTOH if nobody asks for it it's probably fine to not have them. @larskanis Currently this action doesn't support any -head version, but I'm starting to consider it. |
Thanks for update. I updated https://github.com/MSP-Greg/use-ruby-action-info/runs/397883746 and everything looks really good. If you want the code for it, feel free. I also posted another message to the Where's Ubuntu cert file? issue at https://github.com/actions/virtual-environments |
@eregon
The following line adds a suffix:
https://github.com/eregon/use-ruby-action/blob/7978ff15791e44ccfeaedff4a522ad0be7b68079/windows.js#L16
Below is a truncated GraphQL grab of the releases, you'll notice a few have a suffix of
-2
. I believe this was done when build issues, RIDK/devkit issues, etc were noticed after the original-1
release.I was waiting on this pending how things went with GitHub. I also have the flu, so I'm not big on writing code right now. I just thought I'd make you aware of it.
I don't know whether adding a json/yaml file for Windows URI mapping is a good idea, but checking for releases in the action itself seems a bit much. All my GraphQL code is Ruby; I could have it generate a json/yaml file...
The text was updated successfully, but these errors were encountered: