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

ASF projects can't bundle and ship jruby9k #4603

Closed
madrob opened this issue May 10, 2017 · 2 comments
Closed

ASF projects can't bundle and ship jruby9k #4603

madrob opened this issue May 10, 2017 · 2 comments

Comments

@madrob
Copy link
Contributor

madrob commented May 10, 2017

The jruby-complete jar bundles racc/cparse-jruby.jar which is labelled as LGPL licensed. This is a problem for ASF projects and means we won't be able to redistribute you guys.

@headius mentioned that what while the original racc native ext is LGPL, the racc runtime that is shipped with MRI falls under the Ruby license. The pieces that jruby uses are ported from the Ruby part, so this should just be a notational update.

To fix this we will need to:

  1. Verify that the racc code we use is not LGPL!
  2. Update headers on the relevant source files
  3. Update COPYING

Also, would be good to file issues with tenderlove/racc for them to update their licensing to differentiate the non-LGPL bits, and another issue to release the differently licensed sources as separate gems.

headius added a commit to ruby/racc that referenced this issue May 10, 2017
Cparse.java, as a port of cparse.c, is also licensed under the terms of Ruby itself.

See jruby/jruby#4603.
@headius
Copy link
Member

headius commented May 10, 2017

Unfortunately it's not simply a notational issue. I will clarify a few items:

  • The racc runtime, which includes the C and Java extensions, is licensed under the same terms as Ruby (MIT or BSD-ish).
  • The racc compiler is licensed as LGPL.
  • When we started shipping the entire racc gem, we inadvertently pulled in the LGPL portions.

I've filed a few PRs and issues with racc to get their licensing straightened up, including splitting the non-LGPL runtime off into a separate gem. I also updated the Java ext to point out that it's Ruby-licensed, but this is purely notational; it was always licensed this way.

On the JRuby side, I'll push a commit that commits the non-LGPL pieces directly to our repository. This is a temporary situation until ruby/racc#85 happens and we can again source our racc logic from a gem. This unfortunately means committing a (very small) binary for the parser and updating COPYING to point out where it came from.

@headius headius added this to the JRuby 9.1.9.0 milestone May 10, 2017
headius added a commit that referenced this issue May 10, 2017
This is a temporary patch for #4603 until we can get
ruby/racc#85 to ship a separate non-LGPL runtime gem.
zenspider pushed a commit to ruby/racc that referenced this issue May 10, 2017
Cparse.java, as a port of cparse.c, is also licensed under the terms of Ruby itself.

See jruby/jruby#4603.
@enebo
Copy link
Member

enebo commented May 15, 2017

Sounds like there will be followup work so the non-Ruby license code can be re-added as a gem but this issue is resolved enough for us to close since we removed LGPL Racc code from master.

@enebo enebo closed this as completed May 15, 2017
headius added a commit to ruby/racc that referenced this issue Feb 6, 2019
Cparse.java, as a port of cparse.c, is also licensed under the terms of Ruby itself.

See jruby/jruby#4603.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants