Skip to content
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

Add Ruby 2.4 #351

Closed
wants to merge 2 commits into from
Closed

Add Ruby 2.4 #351

wants to merge 2 commits into from

Conversation

vais
Copy link

@vais vais commented Dec 26, 2016

Fixes #350

As it stands, Ruby 2.4.0 must be compiled as follows:

rake ruby24 NOTK=true

Is there a better way to specify that ruby24 must always be compiled without tcl/tk support since that has been removed in Ruby 2.4?

Other notes:

  • All GUIDs were generated using SecureRandom.uuid. Is this an acceptable way to do it? I.e. I believe these are meaningless, random numbers for use by the installer, etc. so any true GUID would be OK.
  • After the build I ran ruby/spec against it and all specs are passing. Yey!

@Azolo
Copy link
Member

Azolo commented Dec 26, 2016

All GUIDs were generated using SecureRandom.uuid. Is this an acceptable way to do it? I.e. I believe these are meaningless, random numbers for use by the installer, etc. so any true GUID would be OK.

Probably, it's too late for me to try and read to figure out, but I do know there are some differences, albeit small differences.

https://www.quora.com/What-is-the-difference-between-UUID-and-GUID/answer/Eric-Bowersox?srid=uqts7

@vais
Copy link
Author

vais commented Dec 26, 2016

@Azolo no problem, but how do you usually generate these?

@daniel-rikowski
Copy link

The Inno Setup compiler can do this: Tools -> Generate GUID or press Shift-Ctrl-G

@Azolo
Copy link
Member

Azolo commented Dec 26, 2016

@luislavena
Copy link
Member

luislavena commented Dec 27, 2016

@vais

Is there a better way to specify that ruby24 must always be compiled without tcl/tk support since that has been removed in Ruby 2.4?

Use configure_options. If TK is not a dependency defined then shouldn't be a problem.

@luislavena
Copy link
Member

@vais

After the build I ran ruby/spec against it and all specs are passing.

What are the results of make check?

@vais
Copy link
Author

vais commented Dec 27, 2016

@daniel-rikowski thanks, but I don't have Inno Setup handy, more of a NSIS guy :)
@Azolo just pushed another commit with GUIDs generated using the online tool you recommended.
@luislavena I already removed :tcl and :tk from the Ruby24 dependencies array, but that alone does not do the trick - I believe the culprit is this line. I'm not sure how to leverage configure_options to work around that...

@vais
Copy link
Author

vais commented Dec 27, 2016

@luislavena

What are the results of make check?

Oops, not so good, please see this gist: rake interpreter:ruby24:check

@daniel-rikowski
Copy link

thanks, but I don't have Inno Setup handy, more of a NSIS guy :)

No problem, I just mentioned that because Inno Setup is a requirement for RubyInstaller. But with guidgen.com you'll get your GUID with even less mouse clicks 😄

@Azolo
Copy link
Member

Azolo commented Dec 28, 2016

I already removed :tcl and :tk from the Ruby24 dependencies array, but that alone does not do the trick - I believe the culprit is this line.

@vais Ahh, yes. The post-build tasks.
Hmmm, I made an attempt to refactor them once and it was worse. Let me think about it.

@MSP-Greg
Copy link

@Azolo, @vais

Would the following be correct? I'm running tests on ruby trunk (2.5.0), so I can't test...

if !ENV["NOTK"] && RubyInstaller.const_get(package.short_version).include?(:tk)

@luislavena
Copy link
Member

@MSP-Greg that suggestion looks good.

@MSP-Greg
Copy link

@luislavena Just to be clear (it may not be needed), should a similar test be placed around the following code in dependencies.rb?

@MSP-Greg
Copy link

@luislavena disregard code suggestion in prev post, what was I thinking...

if !ENV["NOTK"] && RubyInstaller.const_get("Ruby#{package.number}")[:dependencies].include?(:tk)

As to additional housekeeping, should the 'trunk option' be removed? Maybe in another PR with 2.4 and 2.5...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants