Uploaded image for project: 'Puppet'
  1. Puppet
  2. PUP-5962

Restore monkey patch to Symbol

    XMLWordPrintable

Details

    • Bug
    • Status: Closed
    • Normal
    • Resolution: Fixed
    • None
    • PUP 4.4.0
    • None
    • None
    • 1
    • Client 2016-03-09
    • Not Needed
    • This restores the existing behavior in 4.3.x, so there is no change from end user perspective.

    Description

      It pains me immensely to pen a ticket summary like this one, but c'est la vie.

      Backstory:

      • back in 2011, for http://projects.puppetlabs.com/issues/5466, we added a monkey patch to add a <=> method to Symbol to allow sorting
      • in 2012, as part of cleanup the monkey patch was made conditional on whether that version of Ruby already had a <=> method for Symbol. As it turns out, ruby 1.8.7 lacks that method, but ruby 1.9.3+ have that method (but a different implementation than our monkey patch).
      • in PUP-4330, we vendored the plist gem into puppet. This gem happens to include much the same patch (but without the conditional logic).
      • in PUP-1455 (not yet released), we unvendored the plist gem, thus effectively removing that monkey patch for all rubies currently supported.

      This broke one spec test in the puppet-server test suite, which was how this was discovered. However, given how low-level this is, the potential for breakage in modules seems pretty high, so the prudent approach here is to restore the monkey patch.

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              kylo Kylo Ginsberg
              Votes:
              0 Vote for this issue
              Watchers:
              7 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Zendesk Support