Skip to content
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

2.3.1 - Puppet lint fails with 1.8.7-p371 and Puppet 3.8.0 #759

Closed
jeffmccune opened this issue Sep 27, 2017 · 9 comments
Closed

2.3.1 - Puppet lint fails with 1.8.7-p371 and Puppet 3.8.0 #759

jeffmccune opened this issue Sep 27, 2017 · 9 comments
Milestone

Comments

@jeffmccune
Copy link

jeffmccune commented Sep 27, 2017

Expected behavior: Same as 2.3.0

Actual behavior:

SyntaxError: /home/travis/.rvm/gems/ruby-1.8.7-p371/gems/puppet-lint-2.3.1/lib/puppet-lint/configuration.rb:53: undefined (?...) sequence: /^(?<option>\w+)=?$/
/home/travis/.rvm/gems/ruby-1.8.7-p371/gems/puppet-lint-2.3.1/lib/puppet-lint.rb:7:in `gem_original_require'
/home/travis/.rvm/gems/ruby-1.8.7-p371/gems/puppet-lint-2.3.1/lib/puppet-lint.rb:7:in `require'
/home/travis/.rvm/gems/ruby-1.8.7-p371/gems/puppet-lint-2.3.1/lib/puppet-lint.rb:7
/home/travis/.rvm/gems/ruby-1.8.7-p371/gems/puppet-lint-2.3.1/lib/puppet-lint/tasks/puppet-lint.rb:1:in `gem_original_require'
/home/travis/.rvm/gems/ruby-1.8.7-p371/gems/puppet-lint-2.3.1/lib/puppet-lint/tasks/puppet-lint.rb:1:in `require'
/home/travis/.rvm/gems/ruby-1.8.7-p371/gems/puppet-lint-2.3.1/lib/puppet-lint/tasks/puppet-lint.rb:1
/home/travis/.rvm/gems/ruby-1.8.7-p371/gems/puppetlabs_spec_helper-2.0.2/lib/puppetlabs_spec_helper/rake_tasks.rb:438:in `gem_original_require'
/home/travis/.rvm/gems/ruby-1.8.7-p371/gems/puppetlabs_spec_helper-2.0.2/lib/puppetlabs_spec_helper/rake_tasks.rb:438:in `require'
/home/travis/.rvm/gems/ruby-1.8.7-p371/gems/puppetlabs_spec_helper-2.0.2/lib/puppetlabs_spec_helper/rake_tasks.rb:438
/home/travis/build/acme/puppet-module-confluence/Rakefile:1:in `gem_original_require'
/home/travis/build/acme/puppet-module-confluence/Rakefile:1:in `require'
/home/travis/build/acme/puppet-module-confluence/Rakefile:1
/home/travis/.rvm/gems/ruby-1.8.7-p371/bin/ruby_executable_hooks:15
(See full trace by running task with --trace)

Using a module with a build matrix of:

---
language: ruby

rvm:
  - 1.8.7
  - 2.1.9

env:
  matrix:
    - PUPPET_GEM_VERSION="~> 3.8.0"
    - PUPPET_GEM_VERSION="~> 4"

sudo: false

# TODO: add spec tests
script: 'SPEC_OPTS="--format documentation" bundle exec rake validate lint'

matrix:
  fast_finish: true
  exclude:
    - rvm: 1.8.7
      env: PUPPET_GEM_VERSION="~> 4"
    - rvm: 2.1.9
      env: PUPPET_GEM_VERSION="~> 3.8.0"

notifications:
  email: false
@rnelson0
Copy link
Collaborator

This appears related to #754 which should be addressed in 2.3.2 (#755 and #758), can you confirm?

@dividehex
Copy link

AFAICK, this is not fixed with 2.3.2

Fetching puppet-lint 2.3.2
Installing puppet-lint 2.3.2
/home/travis/.rvm/rubies/ruby-1.8.7-p371/lib/ruby/site_ruby/1.8/rubygems/core_ext/kernel_require.rb:55:in `gem_original_require': /home/travis/.rvm/gems/ruby-1.8.7-p371/gems/puppet-lint-2.3.2/bin/../lib/puppet-lint/configuration.rb:53: undefined (?...) sequence: /^(?<option>\w+)=?$/ (SyntaxError)
	from /home/travis/.rvm/rubies/ruby-1.8.7-p371/lib/ruby/site_ruby/1.8/rubygems/core_ext/kernel_require.rb:55:in `require'
	from /home/travis/.rvm/gems/ruby-1.8.7-p371/gems/puppet-lint-2.3.2/bin/../lib/puppet-lint.rb:7
	from /home/travis/.rvm/rubies/ruby-1.8.7-p371/lib/ruby/site_ruby/1.8/rubygems/core_ext/kernel_require.rb:55:in `gem_original_require'
	from /home/travis/.rvm/rubies/ruby-1.8.7-p371/lib/ruby/site_ruby/1.8/rubygems/core_ext/kernel_require.rb:55:in `require'
	from /home/travis/.rvm/gems/ruby-1.8.7-p371/gems/puppet-lint-2.3.2/bin/puppet-lint:5
	from /home/travis/.rvm/gems/ruby-1.8.7-p371/bin/puppet-lint:23:in `load'
	from /home/travis/.rvm/gems/ruby-1.8.7-p371/bin/puppet-lint:23
	from /home/travis/.rvm/gems/ruby-1.8.7-p371/bin/ruby_executable_hooks:15

@rnelson0
Copy link
Collaborator

rnelson0 commented Sep 27, 2017

Ah, I did not noticed the Ruby 1.8.7 part. Puppet 4 AIO shipped with Ruby 2.1.9 and I would suggest using that or higher to test with Puppet 4 and Ruby 1.9.0 and higher with Puppet 3. puppet-lint itself no longer tests with Ruby 1.8.7, though.

@jeffmccune
Copy link
Author

I don't see any overlap between #754 and this issue.

@jeffmccune
Copy link
Author

Ah, I did not noticed the Ruby 1.8.7 part. Puppet 4 AIO shipped with Ruby 2.1.9 and I would suggest using that or higher to test with Puppet 4. puppet-lint itself no longer tests with Ruby 1.8.7, though.

We're testing Puppet 3.8 with 1.8.7 and exclude Puppet 4 on 1.8.7. See the exclusions in the travis matrix for the details.

@jeffmccune
Copy link
Author

puppet-lint itself no longer tests with Ruby 1.8.7, though.

It should be. Version 2 is documented as the last version supporting Ruby 1.8.

@rnelson0
Copy link
Collaborator

I see that and I'm not sure where that went awry. @rodjek will hopefully be online soon and can comment as he's more in tune with the project's direction and the changes that were removed that likely affect this issue.

@rnelson0 rnelson0 reopened this Sep 27, 2017
@jeffmccune
Copy link
Author

Thanks Rob, and thanks for helping out with puppet-lint. It's really nice you're putting your time and effort into maintaining tools so many of us rely on.

jeffmccune pushed a commit to jeffmccune/puppet-module-yum that referenced this issue Sep 27, 2017
Without this patch puppet-lint 2.3.1 results in this error in Ruby 1.8.7:

    SyntaxError: /home/travis/.rvm/gems/ruby-1.8.7-p371/gems/puppet-lint-2.3.1/lib/puppet-lint/configuration.rb:53: undefined (?...) sequence: /^(?<option>\w+)=?$/
    /home/travis/.rvm/gems/ruby-1.8.7-p371/gems/puppet-lint-2.3.1/lib/puppet-lint.rb:7:in `gem_original_require'
    /home/travis/.rvm/gems/ruby-1.8.7-p371/gems/puppet-lint-2.3.1/lib/puppet-lint.rb:7:in `require'
    /home/travis/.rvm/gems/ruby-1.8.7-p371/gems/puppet-lint-2.3.1/lib/puppet-lint.rb:7
    /home/travis/.rvm/gems/ruby-1.8.7-p371/gems/puppet-lint-2.3.1/lib/puppet-lint/tasks/puppet-lint.rb:1:in `gem_original_require'
    /home/travis/.rvm/gems/ruby-1.8.7-p371/gems/puppet-lint-2.3.1/lib/puppet-lint/tasks/puppet-lint.rb:1:in `require'
    /home/travis/.rvm/gems/ruby-1.8.7-p371/gems/puppet-lint-2.3.1/lib/puppet-lint/tasks/puppet-lint.rb:1
    /home/travis/.rvm/gems/ruby-1.8.7-p371/gems/puppetlabs_spec_helper-2.0.2/lib/puppetlabs_spec_helper/rake_tasks.rb:438:in `gem_original_require'
    /home/travis/.rvm/gems/ruby-1.8.7-p371/gems/puppetlabs_spec_helper-2.0.2/lib/puppetlabs_spec_helper/rake_tasks.rb:438:in `require'
    /home/travis/.rvm/gems/ruby-1.8.7-p371/gems/puppetlabs_spec_helper-2.0.2/lib/puppetlabs_spec_helper/rake_tasks.rb:438
    /home/travis/build/nytm/puppet-module-confluence/Rakefile:1:in `gem_original_require'
    /home/travis/build/nytm/puppet-module-confluence/Rakefile:1:in `require'
    /home/travis/build/nytm/puppet-module-confluence/Rakefile:1
    /home/travis/.rvm/gems/ruby-1.8.7-p371/bin/ruby_executable_hooks:15
    (See full trace by running task with --trace)

The issue has been filed upstream as rodjek/puppet-lint#759
@rodjek
Copy link
Owner

rodjek commented Sep 28, 2017

Gah, I read it wrong and thought we'd already deprecated 1.8.7, so I removed it from the travis matrix as it was already in the allowed_failures group. I'll get a PR to restore 1.8.7 functionality going today for a 2.3.3 release.

@rodjek rodjek added this to the 2.3.3 milestone Sep 28, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants