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

Comments

Projects
None yet
3 participants
@madrob
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 tenderlove/racc that referenced this issue May 10, 2017

Add appropriate license header to Cparse.java
Cparse.java, as a port of cparse.c, is also licensed under the terms of Ruby itself.

See jruby/jruby#4603.
@headius

This comment has been minimized.

Show comment
Hide comment
@headius

headius May 10, 2017

Member

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 tenderlove/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.

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 tenderlove/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

Unbundle racc gem and commit non-LGPL portions as in MRI.
This is a temporary patch for #4603 until we can get
tenderlove/racc#85 to ship a separate non-LGPL runtime gem.

zenspider added a commit to tenderlove/racc that referenced this issue May 10, 2017

Add appropriate license header to Cparse.java
Cparse.java, as a port of cparse.c, is also licensed under the terms of Ruby itself.

See jruby/jruby#4603.
@enebo

This comment has been minimized.

Show comment
Hide comment
@enebo

enebo May 15, 2017

Member

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.

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment