Uh oh!
There was an error while loading. Please reload this page.
jruby support - #21
Conversation
ahorek
commented
Jun 13, 2021
I've fixed false positive failures with |
hsbt
commented
Jun 14, 2021
@knu Can you review this? I prefer to merge JRuby implementation to this repository. |
knu
left a comment
There was a problem hiding this comment.
Thanks for the PR, I think this is the way to go!
Uh oh!
There was an error while loading. Please reload this page.
| ext/digest/sha2/extconf.rb | ||
| ] | ||
| if RUBY_ENGINE == 'jruby' |
There was a problem hiding this comment.
Use Gem::Platform for --platform option of gem build.
| ifRUBY_ENGINE =='jruby' | |
| ifGem::Platform === spec.platformandspec.platform =~ 'java' |
There was a problem hiding this comment.
thanks! should we change it here as well? https://github.com/ruby/psych/blob/master/psych.gemspec#L51
Uh oh!
There was an error while loading. Please reload this page.
| "ext/digest/bubblebabble/bubblebabble.c", "ext/digest/bubblebabble/extconf.rb", "ext/digest/defs.h", | ||
| "ext/digest/bubblebabble/bubblebabble.c", "ext/digest/bubblebabble/extconf.rb", "ext/digest/bubblebabble/lib/bubblebabble.rb", "ext/digest/defs.h", | ||
| "ext/digest/digest.c", "ext/digest/digest.h", "ext/digest/digest_conf.rb", "ext/digest/extconf.rb", | ||
| "ext/digest/md5/extconf.rb", "ext/digest/md5/md5.c", "ext/digest/md5/md5.h", "ext/digest/md5/md5cc.h", | ||
| "ext/digest/md5/md5init.c", "ext/digest/rmd160/extconf.rb", "ext/digest/rmd160/rmd160.c", | ||
| "ext/digest/rmd160/rmd160.h", "ext/digest/rmd160/rmd160init.c", "ext/digest/sha1/extconf.rb", | ||
| "ext/digest/sha1/sha1.c", "ext/digest/sha1/sha1.h", "ext/digest/sha1/sha1cc.h", | ||
| "ext/digest/md5/md5init.c", "ext/digest/md5/lib/md5.rb", "ext/digest/rmd160/extconf.rb", "ext/digest/rmd160/rmd160.c", | ||
| "ext/digest/rmd160/rmd160.h", "ext/digest/rmd160/rmd160init.c", "ext/digest/rmd160/lib/rmd160.rb", "ext/digest/sha1/extconf.rb", | ||
| "ext/digest/sha1/sha1.c", "ext/digest/sha1/sha1.h", "ext/digest/sha1/sha1cc.h", "ext/digest/sha1/lib/sha1.rb", |
There was a problem hiding this comment.
These added files should be inside if RUBY_ENGINE == 'jruby' block.
There was a problem hiding this comment.
java sources don't have to be part of a released gem, so I removed them instead
60bfe18 to
b0cdf61Comparerhenium
commented
Jun 14, 2021
JRuby's digest is licensed under EPL 2.0/GPL 2.0/LGPL 2.1 unlike MRI's. To my understanding it can't simply be relicensed under Ruby's/2-clause BSDL, so that has to be reflected in the I feel it's also worth mentioning in README that files under |
hsbt
commented
Jun 14, 2021
Can we switch the license in gemspec each platforms? |
0df8176 to
dbc83dbCompareahorek
commented
Jun 14, 2021
done! |
headius
commented
Jun 14, 2021
I will review quick as well but looks most of the issues have been addressed. If it would be better for us to relicense we can try to contact past contributors and get permission, but it would take some time. |
headius
commented
Jun 14, 2021
Committers to the Digest library in JRuby, as far back as 2006, before which only Ola contributed to it: Charles Oliver Nutter |
headius
left a comment
There was a problem hiding this comment.
Mostly build plumbing but the changes look fine to me.
headius
commented
Jun 14, 2021
@ahorek Have you tested this gem with a build of JRuby that does not include our built-in version? If that works then I think this is ready to go. |
ahorek
commented
Jun 14, 2021
@headius yes, I tested it together with jruby/jruby#6719 standard build jruby build as suggested by @nobu we can build a Java version directly from CRuby, but it doesn't work the opposite way, on JRuby the Java platform is forced, so you won't be able to build a version for CRuby on JRuby. |
I happily grant permission to relicense code I contributed. |
headius
commented
Jun 30, 2021
I think we should go ahead and merge this with the license disclaimer. If we really want to relicense open a separate issue and ping the folks I mentioned above for permission. Since only one replied here, it may take a little work to chase everyone down. |
I'm fine with re-licensing all code I contributed to JRuby to Ruby's/2-clause BSDL. |
👍 I consent to my contributions being relicensed under the Ruby license and the BSD 2-clause license. |
enebo
commented
Jul 1, 2021
I am fine with relicensing all code to Ruby's/2-clause BSDL. |
headius
commented
Jul 1, 2021
I consent to my contributions being relicensed under the Ruby license and the BSD 2-clause license. |
kubum
commented
Jul 1, 2021
Sorry for not coming back earlier. I am happy for this code to be in. The fragment I added in 2015 as part of the jruby/jruby#3238 PR, in fact, is just a mere port of an |
olabiniV2
commented
Jul 2, 2021
Hi everyone. I am Ola Bini - the owner of the @olabini account - which I'm currently locked out of. If any legal issues arise, I'm willing to provide offline government identification if necessary, to support this agreement. I consent to my contributions being relicensed under the Ruby license and the BSD 2-clause license. |
chrisseaton
commented
Jul 2, 2021
Happy. |
nobu
commented
Sep 6, 2021
I think |
knu
commented
Sep 6, 2021
The autoloading stuff should be moved there, but common parts can stay there. |
knu
commented
Sep 6, 2021
But I think I can and should do that myself, because I'll need to modify the import script (to ruby/ruby) anyway. |
nobu
commented
Sep 7, 2021
My proposal is to make JRuby libraries into a separate directory from the libraries under |
ahorek
commented
Sep 7, 2021
I agree with your proposal @nobu thanks for your help. |
headius
commented
Sep 7, 2021
JRuby does not have a separate source dir for .rb files associated with extensions. If |
nobu
commented
Sep 13, 2021
That directory is for scripts to be installed by |
knu
commented
Sep 14, 2021
OK, I'll take this! Thanks to all the contributors who agreed with the license change! |
ahorek
commented
Sep 23, 2021
I've merged Nobu's changes and rebased against the current master. I think it should be ready. |
knu
commented
Sep 28, 2021
I just pushed #25 which should include the core parts of this PR while avoiding dynamic library file generation. Please look into it and leave any comments. |
knu
commented
Sep 30, 2021
Thank you all for your cooperation. This work has been merged, and I'll be working on a new gem release shortly. |
headius
commented
Sep 30, 2021
@knu Thank you! If possible, could you push a prerelease gem that we can run through JRuby CI, to ensure it is working properly? |
knu
commented
Sep 30, 2021
@headius Sure! I've pushed 3.1.0.pre0. https://rubygems.org/gems/digest/versions/3.1.0.pre0 |
ahorek
commented
Sep 30, 2021
knu
commented
Sep 30, 2021
Argh, |
knu
commented
Sep 30, 2021
headius
commented
Sep 30, 2021
@knu Thank goodness for prerelease gems! I will test this on our 3.0 dev branch now. |
headius
commented
Sep 30, 2021
Looking good so far but I need to modify our build to copy the ext lib files for JRuby into our standard lib directory. Once I know everything is installing properly, I will let you know. |
headius
commented
Sep 30, 2021
@knu I believe it is working! You may go ahead and release 3.1.0. |
knu
commented
Oct 1, 2021
@headius Thank you! |
implements #20