Bug #9203

Change namespace for semver.rb

Added by darix . 9 months ago. Updated 9 months ago.

Status:Accepted Start date:08/25/2011
Priority:High Due date:
Assignee:- % Done:

0%

Category:API
Target version:2.7.x
Affected Puppet version:2.7.3 Branch:
Keywords:
Votes: 0

Description

  1. your copy of the file differs from https://github.com/flazz/semver/blob/master/lib/semver.rb

wouldnt it be better to move the changed copy into the puppet namespace to avoid problems when people require semver and expect to get the gem version?

  1. I couldnt find a reference to the license of the file neither in the “upstream” git nor in your copy.

  2. shouldnt the readme mention that you include code from https://github.com/flazz/semver

  3. how about depending on the gem instead of copying the code?

History

Updated by James Turnbull 9 months ago

  • Status changed from Unreviewed to Needs Decision
  • Assignee set to Nigel Kersten
  • Priority changed from Normal to Urgent

Updated by Michael Stahnke 9 months ago

Thank you for bringing this to our attention. We are looking into it currently.

Updated by Daniel Pittman 9 months ago

darix . wrote:

  1. your copy of the file differs from https://github.com/flazz/semver/blob/master/lib/semver.rb wouldnt it be better to move the changed copy into the puppet namespace to avoid problems when people require semver and expect to get the gem version?

It does differ; given the conflict it should be in a different namespace. Thanks for the heads-up there.

  1. I couldnt find a reference to the license of the file neither in the “upstream” git nor in your copy.

It comes under the same license as the rest of the Puppet code, because…

  1. shouldnt the readme mention that you include code from https://github.com/flazz/semver

…we wrote that implementation from scratch, rather than importing the upstream code. Thus the differences between the upstream version and ours.

  1. how about depending on the gem instead of copying the code?

We will talk about that, but we generally don’t like to either vendor gems, or depend on their being installed down in the Puppet agent, to keep overhead low for getting Puppet running out on a system. That said, we shouldn’t be causing conflicts with upstream code.

After a quick review, we absolutely shouldn’t be importing that upstream. Their code supports version comparison, but also delivers a whole suite of other features around git versioning, etc, that we don’t need. We should simply rename our version to something inside the Puppet namespace, as we should have when the code initially got merged.

Updated by Nigel Kersten 9 months ago

  • Subject changed from Potential problems with newly included semver.rb to Change namespace for semver.rb

ok, so the targeted action here is to change the namespace of our semver.rb so we don’t conflict with upstream imports.

Updated by Nigel Kersten 9 months ago

  • Status changed from Needs Decision to Accepted
  • Assignee deleted (Nigel Kersten)
  • Priority changed from Urgent to High

Also available in: Atom PDF