Bug #16040

Remove ZAML

Added by James Turnbull 10 months ago. Updated 8 months ago.

Status:ClosedStart date:08/20/2012
Priority:ImmediateDue date:
Assignee:Andrew Parker% Done:

0%

Category:plumbing
Target version:-
Affected Puppet version:2.7.0 Branch:
Keywords:ZAML

Description

We’ve recently identified that ZAML is licensed GPLv3 which is incompatible with our Apache 2.0 license.

We need to remove ZAML from the 2.7.x and 3.x.x branches expeditiously.


Related issues

Related to Puppet - Bug #2604: Ruby 1.8.1's known bad syck causes core dumps Closed 09/07/2009
Related to Puppet - Refactor #16330: Update to ZAML that is licensed under the Apache 2.0 license Closed 09/10/2012

History

#1 Updated by eric sorenson 10 months ago

  • Status changed from Unreviewed to Investigating

#2 Updated by Josh Cooper 10 months ago

Here is the email thread leading up to the ZAML code being merged. In particular Marcus claims the code is licensed under GPL 3+ and MIT: http://www.mail-archive.com/puppet-dev@googlegroups.com/msg07974.html

#3 Updated by Andrew Parker 10 months ago

Given that the main author claims on a public mailing list that it is under the MIT license, how urgent is this now?

#4 Updated by James Turnbull 10 months ago

I am speaking to Markus currently but whilst he’s stated on the mailing list it’s MIT licensed the only license file attached is GPLv3 so for the moment the problem hasn’t changed.

#5 Updated by Josh Cooper 10 months ago

Tried removing zaml and there are 130 test failures. Some tests fail because of unexpected newlines, which should be benign:

128) Pure ruby yaml implementation should convert the Object # to yaml
     Failure/Error: o.to_yaml.should == y
       expected: "--- !ruby/object {}"
            got: "--- !ruby/object {}\n\n" (using ==)

However, others seem to be significant:

109) Puppet::SimpleGraph (yaml tests) should serialize properly when used as a base class
     Failure/Error: recovered_derived = YAML.load(YAML.dump(derived))
     NoMethodError:
       undefined method `[]' for :@foo:Symbol
...
  120) Pure ruby yaml implementation should convert the Symbol :symbol to yaml
     Failure/Error: o.to_yaml.should == y
       expected: "--- !ruby/sym symbol"
            got: "--- :symbol\n" (using ==)
       Diff:
       @@ -1,2 +1,2 @@
       ---- !ruby/sym symbol
       +--- :symbol
...
126) Pure ruby yaml implementation should produce yaml for the Hash {#<Object:0x10ae70508>=>#<Object:0x10ae704e0>} that can be reconstituted
     Failure/Error: lambda { YAML.load(o.to_yaml) }.should_not raise_error
       expected no Exception, got #<ArgumentError: syntax error on line 2, col -1: `: !ruby/object {}
       
       '>

#6 Updated by Andrew Parker 9 months ago

We don’t need to remove it anymore since it has been relicensed. #16330 tracks updating to the newly licensed version.

#7 Updated by Andrew Parker 9 months ago

  • Status changed from Investigating to Closed

#8 Updated by Andrew Parker 8 months ago

  • Target version deleted (2.7.x)

Also available in: Atom PDF