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

Remove Ruby 1.9.3 support



    • Epic
    • Status: Closed
    • Critical
    • Resolution: Fixed
    • None
    • PUP 6.0.0
    • None
    • None
    • Remove Ruby 1.9.3 support
    • Platform Core
    • Bug Fix
    • Puppet now requires ruby 2.3 or greater. We removed code paths for older ruby support, e.g. 1.8.7, relaxed our gem dependencies to include gems that require ruby 2 or up, and now test puppet PRs against JRuby 9k.


      Puppet maintains ruby language compatibility with MRI 1.9.3, because that is what JRuby 1.7 is compatible with. Once puppetserver drops support for JRuby 1.7, then we can remove ruby 1.9.3 support in puppet. This includes:

      1. Adding a minimum required ruby version constraint >= 2.0 to Gemfile, .gemspec, and ext/build_data.yaml
      2. Dropping 1.9.3 from the travis & appveyor test matrix
      3. Removing pins for some gem dependencies, and moving to newer versions, e.g. fast-gettext, addressable, etc.

      While we're doing this, we may want to bump the minimum ruby version to 2.2 or later. According to https://www.ruby-lang.org/en/news/2017/04/01/support-of-ruby-2-1-has-ended/, 2.1 is already EOL, 2.2 is in security maint mode and will be EOL in May 2018.

      A counterpoint to dropping support for 2.0-2.2 is that we didn't do that for bolt. In fact we started out requiring 2.1 or greater, and then relaxed constraints to 2.0 or greater, as 2.0 is the default system ruby for certain distros. But bolt could only be distributed as a gem (as opposed to a puppet-agent package), so it's not an apples to apples comparison.


        Issue Links



              Unassigned Unassigned
              ethan Ethan Brown
              0 Vote for this issue
              5 Start watching this issue



                Zendesk Support