rollbar 3.2.0 → 3.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (77) hide show
  1. checksums.yaml +4 -4
  2. data/.github/pull_request_template.md +15 -6
  3. data/.github/workflows/ci.yml +15 -29
  4. data/.rubocop.yml +84 -34
  5. data/Gemfile +12 -16
  6. data/gemfiles/rails30.gemfile +9 -12
  7. data/gemfiles/rails31.gemfile +9 -12
  8. data/gemfiles/rails32.gemfile +2 -5
  9. data/gemfiles/rails40.gemfile +1 -4
  10. data/gemfiles/rails41.gemfile +1 -5
  11. data/gemfiles/rails42.gemfile +3 -9
  12. data/gemfiles/rails50.gemfile +7 -11
  13. data/gemfiles/rails51.gemfile +6 -10
  14. data/gemfiles/rails52.gemfile +7 -9
  15. data/gemfiles/rails60.gemfile +5 -8
  16. data/gemfiles/rails61.gemfile +6 -8
  17. data/gemfiles/rails70.gemfile +52 -0
  18. data/lib/generators/rollbar/rollbar_generator.rb +18 -14
  19. data/lib/generators/rollbar/templates/{initializer.rb → initializer.erb} +0 -0
  20. data/lib/rails/rollbar_runner.rb +12 -5
  21. data/lib/rollbar/capistrano.rb +16 -8
  22. data/lib/rollbar/capistrano3.rb +8 -2
  23. data/lib/rollbar/capistrano_tasks.rb +16 -7
  24. data/lib/rollbar/configuration.rb +113 -91
  25. data/lib/rollbar/delay/shoryuken.rb +4 -3
  26. data/lib/rollbar/delay/sidekiq.rb +3 -1
  27. data/lib/rollbar/delay/sucker_punch.rb +1 -2
  28. data/lib/rollbar/delay/thread.rb +3 -2
  29. data/lib/rollbar/deploy.rb +6 -7
  30. data/lib/rollbar/encoding/encoder.rb +7 -3
  31. data/lib/rollbar/exception_reporter.rb +17 -8
  32. data/lib/rollbar/item/backtrace.rb +10 -8
  33. data/lib/rollbar/item/frame.rb +6 -5
  34. data/lib/rollbar/item/locals.rb +5 -1
  35. data/lib/rollbar/item.rb +47 -38
  36. data/lib/rollbar/json.rb +1 -1
  37. data/lib/rollbar/lazy_store.rb +1 -3
  38. data/lib/rollbar/logger.rb +2 -0
  39. data/lib/rollbar/logger_proxy.rb +3 -1
  40. data/lib/rollbar/middleware/js/json_value.rb +15 -5
  41. data/lib/rollbar/middleware/js.rb +32 -21
  42. data/lib/rollbar/middleware/rack/builder.rb +3 -3
  43. data/lib/rollbar/middleware/rack/test_session.rb +3 -3
  44. data/lib/rollbar/middleware/rack.rb +4 -4
  45. data/lib/rollbar/middleware/rails/rollbar.rb +9 -6
  46. data/lib/rollbar/middleware/rails/show_exceptions.rb +8 -4
  47. data/lib/rollbar/notifier/trace_with_bindings.rb +13 -3
  48. data/lib/rollbar/notifier.rb +179 -133
  49. data/lib/rollbar/plugin.rb +8 -8
  50. data/lib/rollbar/plugins/active_job.rb +11 -2
  51. data/lib/rollbar/plugins/delayed_job/plugin.rb +10 -3
  52. data/lib/rollbar/plugins/goalie.rb +27 -16
  53. data/lib/rollbar/plugins/rails/controller_methods.rb +18 -14
  54. data/lib/rollbar/plugins/rails/railtie30.rb +2 -1
  55. data/lib/rollbar/plugins/rails/railtie32.rb +2 -1
  56. data/lib/rollbar/plugins/rails/railtie_mixin.rb +2 -2
  57. data/lib/rollbar/plugins/rails.rb +5 -2
  58. data/lib/rollbar/plugins/rake.rb +2 -1
  59. data/lib/rollbar/plugins/sidekiq/plugin.rb +7 -6
  60. data/lib/rollbar/plugins/thread.rb +1 -1
  61. data/lib/rollbar/plugins/validations.rb +3 -1
  62. data/lib/rollbar/rake_tasks.rb +0 -1
  63. data/lib/rollbar/request_data_extractor.rb +38 -17
  64. data/lib/rollbar/rollbar_test.rb +3 -1
  65. data/lib/rollbar/scrubbers/params.rb +13 -7
  66. data/lib/rollbar/scrubbers/url.rb +37 -17
  67. data/lib/rollbar/scrubbers.rb +1 -1
  68. data/lib/rollbar/truncation/remove_any_key_strategy.rb +4 -1
  69. data/lib/rollbar/truncation/remove_extra_strategy.rb +3 -1
  70. data/lib/rollbar/util/hash.rb +14 -7
  71. data/lib/rollbar/util/ip_anonymizer.rb +1 -1
  72. data/lib/rollbar/util.rb +19 -13
  73. data/lib/rollbar/version.rb +1 -1
  74. data/lib/rollbar.rb +12 -7
  75. data/lib/tasks/benchmark.rake +2 -1
  76. data/rollbar.gemspec +3 -1
  77. metadata +4 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 425ed5a051e9393cad69cf84b7d074daf3f2d07a57b28e64946f04254bb60cbe
4
- data.tar.gz: bcf8046e12ccff28c5dab1e32c40cf5d5fee74a7b02602bc4a4735ff21306480
3
+ metadata.gz: 898aba48030cbc9188c24d90690293f5059d06d21ea0761554f48b9ceb807874
4
+ data.tar.gz: 37c571e1b393777a03d11079c443a01b561391652b6a7e5fb1ed6064f0a69754
5
5
  SHA512:
6
- metadata.gz: 64480f75431290bd39ba433f6c692ec86c0a727c8f3d4a95998b129786c5d368463e18d0f62ba3b4425a0fd468d612e67be1df0655bd1f72cc3615efeec84ed6
7
- data.tar.gz: 8dfc0039125069aea04cb466a8de1674ffa16d9325d5fc54c3daea5265d62a2dbb29d227f9d48599c6233152b90ff60f4e015a5dd8a805c31c51222c96fcf3bc
6
+ metadata.gz: 92de62decca92c82e7db0f1c0d4ef525141e0e9e64418fa465a671c5571206312dcd5ed675b7c1e6a9c40cf714c684eabdfdd5648efd30d39ea0f9c073206dbb
7
+ data.tar.gz: cd5d1bd81a5514686ad7ae72cc2c1aca30a09580fb57dbbb518ec37353ad94a8719594b6fd53d1620bd742fab6e96772a3cd8106d98510f3fed249de838f5c01
@@ -1,14 +1,23 @@
1
1
  ## Description of the change
2
2
 
3
- > Description here
3
+ > Please include a summary of the change and which issues are fixed.
4
+ > Please also include relevant motivation and context.
5
+
4
6
  ## Type of change
7
+
5
8
  - [ ] Bug fix (non-breaking change that fixes an issue)
6
9
  - [ ] New feature (non-breaking change that adds functionality)
7
10
  - [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
11
+ - [ ] Maintenance
12
+ - [ ] New release
8
13
 
9
14
  ## Related issues
10
15
 
11
- > Fix [#1]()
16
+ > Shortcut stories and GitHub issues (delete irrelevant)
17
+
18
+ - Fix [SC-]
19
+ - Fix #1
20
+
12
21
  ## Checklists
13
22
 
14
23
  ### Development
@@ -17,9 +26,9 @@
17
26
  - [ ] The code changed/added as part of this pull request has been covered with tests
18
27
  - [ ] All tests related to the changed code pass in development
19
28
 
20
- ### Code review
29
+ ### Code review
21
30
 
22
- - [ ] This pull request has a descriptive title and information useful to a reviewer. There may be a screenshot or screencast attached
23
- - [ ] "Ready for review" label attached to the PR and reviewers mentioned in a comment
31
+ - [ ] This pull request has a descriptive title and information useful to a reviewer. There may be a screenshot or screencast attached
32
+ - [ ] "Ready for review" label attached to the PR and reviewers assigned
33
+ - [ ] Issue from task tracker has a link to this pull request
24
34
  - [ ] Changes have been reviewed by at least one other engineer
25
- - [ ] Issue from task tracker has a link to this pull request
@@ -11,42 +11,26 @@ jobs:
11
11
  runs-on: ubuntu-18.04
12
12
  strategy:
13
13
  matrix:
14
- ruby-version: [2.2.10, 2.3.0, 2.3.8, 2.4.5, 2.5.3, 2.6.0, 2.6.6, 2.7.2]
14
+ ruby-version: [2.5.3, 2.6.0, 2.6.6, 2.7.2]
15
15
  gemfile:
16
- - gemfiles/rails42.gemfile
17
16
  - gemfiles/rails50.gemfile
18
17
  - gemfiles/rails51.gemfile
19
18
  - gemfiles/rails52.gemfile
20
19
  - gemfiles/rails60.gemfile
21
20
  - gemfiles/rails61.gemfile
22
- exclude:
23
- - gemfile: gemfiles/rails42.gemfile
24
- ruby-version: 2.7.2
25
- - gemfile: gemfiles/rails42.gemfile
26
- ruby-version: 2.6.0
21
+ include:
22
+ - gemfile: gemfiles/rails70.gemfile
23
+ ruby-version: 3.1.1
24
+ - gemfile: gemfiles/rails70.gemfile
25
+ ruby-version: 3.0.3
26
+ - gemfile: gemfiles/rails61.gemfile
27
+ ruby-version: 3.0.3
27
28
  - gemfile: gemfiles/rails42.gemfile
28
- ruby-version: 2.6.6
29
+ ruby-version: 2.4.5
29
30
  - gemfile: gemfiles/rails42.gemfile
30
- ruby-version: 2.7.2
31
- - gemfile: gemfiles/rails52.gemfile
32
- ruby-version: 2.2.10
33
- - gemfile: gemfiles/rails60.gemfile
34
- ruby-version: 2.2.10
35
- - gemfile: gemfiles/rails60.gemfile
36
- ruby-version: 2.3.0
37
- - gemfile: gemfiles/rails60.gemfile
38
31
  ruby-version: 2.3.8
39
- - gemfile: gemfiles/rails60.gemfile
40
- ruby-version: 2.4.5
41
- - gemfile: gemfiles/rails61.gemfile
32
+ - gemfile: gemfiles/rails42.gemfile
42
33
  ruby-version: 2.2.10
43
- - gemfile: gemfiles/rails61.gemfile
44
- ruby-version: 2.3.0
45
- - gemfile: gemfiles/rails61.gemfile
46
- ruby-version: 2.3.8
47
- - gemfile: gemfiles/rails61.gemfile
48
- ruby-version: 2.4.5
49
- include:
50
34
  - gemfile: gemfiles/rails41.gemfile
51
35
  ruby-version: 2.3.0
52
36
  - gemfile: gemfiles/rails41.gemfile
@@ -67,8 +51,6 @@ jobs:
67
51
  ruby-version: 2.0.0
68
52
  - gemfile: gemfiles/rails30.gemfile
69
53
  ruby-version: 2.0.0
70
- - gemfile: gemfiles/rails61.gemfile
71
- ruby-version: 3.0.0
72
54
 
73
55
  steps:
74
56
  - uses: actions/checkout@v2
@@ -115,4 +97,8 @@ jobs:
115
97
  bundle install --jobs 4 --retry 3
116
98
 
117
99
  - name: Rspec
118
- run: bundle exec rspec
100
+ run: |
101
+ export BUNDLE_GEMFILE=${{ matrix.gemfile }}
102
+ bundle config path vendor/bundle
103
+ bundle config gemfile ${{ matrix.gemfile }}
104
+ bundle exec rspec
data/.rubocop.yml CHANGED
@@ -4,51 +4,40 @@ AllCops:
4
4
  Exclude:
5
5
  - 'vendor/**/*'
6
6
  - 'gemfiles/vendor/**/*'
7
+ - 'spec/dummyapp/**/*'
8
+ - 'spec/tmp/**/*'
9
+ TargetRubyVersion: 2.5 # This is the minimum allowed for current rubocop
7
10
 
8
- Style/HashSyntax:
9
- EnforcedStyle: hash_rockets
10
- SupportedStyles:
11
- - hash_rockets
12
-
13
- Style/SymbolArray:
14
- Enabled: false # %i[] syntax isn't 1.9.x compatible
15
-
16
- Metrics/LineLength:
17
- Max: 1000
18
-
19
- Metrics/MethodLength:
20
- Max: 15 # Relax slightly from the default of 10
11
+ Gemspec/RequiredRubyVersion:
12
+ Enabled: false # rubocop compares to gemspec, yet won't allow 1.9 as minimum version
21
13
 
22
- Style/DoubleNegation:
14
+ Layout/HeredocIndentation:
15
+ # When enabled, forces either squiggly syntax (not available until 2.3),
16
+ # or external packages that we don't want as dependencies.
23
17
  Enabled: false
24
18
 
25
- Style/Lambda:
19
+ Layout/LineLength:
20
+ Max: 90
21
+
22
+ Lint/ConstantDefinitionInBlock:
23
+ # We routinely update existing class definitions in conditional blocks.
26
24
  Enabled: false
27
25
 
28
- Style/EachWithObject:
26
+ Lint/SendWithMixinArgument:
27
+ # Object#include is still a private method in Ruby 2.0.
29
28
  Enabled: false
30
29
 
31
30
  Metrics/BlockLength:
32
- ExcludedMethods: ['describe', 'context'] # RSpec DSL is expected to have long blocks.
33
-
34
- Style/ExpandPathArguments:
35
- Enabled: false # syntax requires Ruby >= 2.0
31
+ # RSpec DSL is expected to have long blocks.
32
+ IgnoredMethods: ['describe', 'context', 'it', 'shared_examples']
36
33
 
37
- Gemspec/RequiredRubyVersion:
38
- Enabled: false # rubocop compares to gemspec, yet won't allow 1.9 as minimum version
39
-
40
- Style/Encoding:
41
- Enabled: false # Ruby 1.9.3 needs these magic comments, e.g. # encoding: UTF-8
42
-
43
- Style/PercentLiteralDelimiters:
44
- PreferredDelimiters:
45
- # rubocop switched from () to [] at some past version.
46
- # Make sure we are consistent across all bundles/builds.
47
- default: '[]'
34
+ Metrics/MethodLength:
35
+ Max: 15 # Relax slightly from the default of 10
48
36
 
49
- Style/Documentation:
50
- # We can enabled this if/when we want to start doing consistent class documentation.
51
- # As is, we currently add :nodoc: if anything at all.
37
+ Metrics/ParameterLists:
38
+ # We currently don't have limits on the number of method arguments, except as
39
+ # they contribute to the complexity metric. If method complexity is in bounds,
40
+ # we allow any number of arguments.
52
41
  Enabled: false
53
42
 
54
43
  Naming/MethodParameterName:
@@ -57,6 +46,9 @@ Naming/MethodParameterName:
57
46
  # like `db` and `io`. So, short names really can be useful.
58
47
  Enabled: false
59
48
 
49
+ Style/BracesAroundHashParameters:
50
+ EnforcedStyle: braces
51
+
60
52
  Style/CaseEquality:
61
53
  # The code uses `===` a lot to compare a regex to a string, but it's not clear that
62
54
  # switching to `=~` is always safe, because in some cases the value could be a regex
@@ -64,15 +56,73 @@ Style/CaseEquality:
64
56
  # review and test each of these.
65
57
  Enabled: false
66
58
 
59
+ Style/Documentation:
60
+ # We can enabled this if/when we want to start doing consistent class documentation.
61
+ # As is, we currently add :nodoc: if anything at all.
62
+ Enabled: false
63
+
64
+ Style/DoubleNegation:
65
+ Enabled: false
66
+
67
+ Style/EachWithObject:
68
+ Enabled: false
69
+
70
+ Style/Encoding:
71
+ Enabled: false # Ruby 1.9.3 needs these magic comments, e.g. # encoding: UTF-8
72
+
73
+ Style/ExpandPathArguments:
74
+ Enabled: false # syntax requires Ruby >= 2.0
75
+
67
76
  Style/FrozenStringLiteralComment:
68
77
  # If we do this, it will be in its own PR. It requires adding these magic comments
69
78
  # throughout the project, in order to prepare for a future Ruby 3.x.
70
79
  Enabled: false
71
80
 
81
+ Style/HashSyntax:
82
+ EnforcedStyle: hash_rockets
83
+ SupportedStyles:
84
+ - hash_rockets
85
+
86
+ Style/HashTransformKeys:
87
+ # Hash#transform_keys isn't available until Ruby 2.5
88
+ Enabled: false
89
+
90
+ Style/Lambda:
91
+ Enabled: false
92
+
93
+ Style/NumericPredicate:
94
+ # Numbers used in comparison expressions are often more readable and consistent
95
+ # than using predicate methods. e.g.
96
+ # major > 0 && minor > 8
97
+ # is more readable than
98
+ # major.positive? && minor > 8
99
+ Enabled: false
100
+
101
+ Style/OptionalBooleanParameter:
102
+ # We don't yet generally use keyword arguments. Ruby < 2.1 doesn't support
103
+ # required kayword arguments. And satifying this rule would change the calling
104
+ # convention only for these specific optional boolean arguments.
105
+ # This rule should be enabled when the project is updated to use keyword
106
+ # arguments in general.
107
+ Enabled: false
108
+
109
+ Style/PercentLiteralDelimiters:
110
+ PreferredDelimiters:
111
+ # rubocop switched from () to [] at some past version.
112
+ # Make sure we are consistent across all bundles/builds.
113
+ default: '[]'
114
+
115
+ Style/RedundantBegin:
116
+ # Ruby < 2.5 needs begin/end inside blocks when using rescue
117
+ Enabled: false
118
+
72
119
  Style/SafeNavigation:
73
120
  # Not available in Ruby < 2.3.
74
121
  Enabled: false
75
122
 
123
+ Style/SymbolArray:
124
+ Enabled: false # %i[] syntax isn't 1.9.x compatible
125
+
76
126
  #
77
127
  # Performance cops are opt in, and `Enabled: true` is always required.
78
128
  # Full list is here: https://github.com/rubocop-hq/rubocop-performance/tree/master/lib/rubocop/cop/performance
data/Gemfile CHANGED
@@ -1,4 +1,6 @@
1
- # This file was generated by Appraisal
1
+ # This Gemfile is compatible with Ruby 2.5.0 or greater. To test with
2
+ # earlier Rubies, use the appropriate Gemfile from the ./gemfiles/ dir.
3
+ ruby '>= 2.5.0'
2
4
 
3
5
  source 'https://rubygems.org'
4
6
 
@@ -11,7 +13,7 @@ ENV['CURRENT_GEMFILE'] ||= __FILE__
11
13
 
12
14
  is_jruby = defined?(JRUBY_VERSION) || (defined?(RUBY_ENGINE) && RUBY_ENGINE == 'jruby')
13
15
 
14
- GEMFILE_RAILS_VERSION = '~> 6.1.3'.freeze
16
+ GEMFILE_RAILS_VERSION = '~> 6.1.5'.freeze
15
17
  gem 'activerecord-jdbcsqlite3-adapter', :platform => :jruby
16
18
  gem 'appraisal'
17
19
  gem 'jruby-openssl', :platform => :jruby
@@ -20,30 +22,25 @@ gem 'rake'
20
22
  if GEMFILE_RAILS_VERSION < '6.0'
21
23
  gem 'rspec-rails', '~> 3.4'
22
24
  else
23
- gem 'rspec-rails', '~> 4.0.2' # rubocop:disable Bundler/DuplicatedGem
25
+ gem 'rspec-rails', '~> 4.0.2'
24
26
  end
25
27
 
26
28
  if GEMFILE_RAILS_VERSION < '6.0'
27
29
  gem 'sqlite3', '< 1.4.0', :platform => [:ruby, :mswin, :mingw]
28
30
  else
29
- gem 'sqlite3', '~> 1.4', :platform => [:ruby, :mswin, :mingw] # rubocop:disable Bundler/DuplicatedGem
31
+ gem 'sqlite3', '~> 1.4', :platform => [:ruby, :mswin, :mingw]
30
32
  end
31
33
 
32
- if RUBY_VERSION < '2.2.2'
33
- gem 'sidekiq', '~> 2.13.0'
34
- else
35
- gem 'sidekiq', '>= 2.13.0' # rubocop:disable Bundler/DuplicatedGem
36
- end
34
+ gem 'sidekiq', '>= 6.4.0'
37
35
 
38
36
  platforms :rbx do
39
37
  gem 'minitest'
40
38
  gem 'racc'
41
39
  gem 'rubinius-developer_tools'
42
- gem 'rubysl', '~> 2.0' if RUBY_VERSION.start_with?('2') # rubysl doesn't yet support Ruby 3.x
40
+ gem 'rubysl', '~> 2.0' if RUBY_VERSION.start_with?('2')
43
41
  end
44
42
 
45
43
  gem 'capistrano', :require => false
46
- gem 'codacy-coverage'
47
44
  gem 'shoryuken'
48
45
  gem 'simplecov'
49
46
  gem 'sucker_punch', '~> 2.0'
@@ -58,21 +55,20 @@ gem 'aws-sdk-sqs'
58
55
  if GEMFILE_RAILS_VERSION >= '5.2'
59
56
  gem 'database_cleaner'
60
57
  elsif GEMFILE_RAILS_VERSION.between?('5.0', '5.2')
61
- gem 'database_cleaner', '~> 1.8.4' # rubocop:disable Bundler/DuplicatedGem
58
+ gem 'database_cleaner', '~> 1.8.4'
62
59
  elsif GEMFILE_RAILS_VERSION < '5.0'
63
- gem 'database_cleaner', '~> 1.0.0' # rubocop:disable Bundler/DuplicatedGem
60
+ gem 'database_cleaner', '~> 1.0.0'
64
61
  end
65
62
 
66
63
  if GEMFILE_RAILS_VERSION < '6.0'
67
64
  gem 'delayed_job', :require => false
68
65
  else
69
- gem 'delayed_job', '~> 4.1', :require => false # rubocop:disable Bundler/DuplicatedGem
66
+ gem 'delayed_job', '~> 4.1', :require => false
70
67
  end
71
68
  gem 'generator_spec'
72
- gem 'girl_friday', '>= 0.11.1'
73
69
  gem 'redis'
74
70
  gem 'resque', '< 2.0.0'
75
- gem 'rubocop', '~> 0.93.0', :require => false
71
+ gem 'rubocop', '1.15.0', :require => false # pin specific version, update manually
76
72
  gem 'rubocop-performance', :require => false
77
73
  gem 'secure_headers', '~> 6.3.2', :require => false
78
74
  gem 'sinatra'
@@ -2,18 +2,16 @@ require 'rubygems/version'
2
2
 
3
3
  source 'https://rubygems.org'
4
4
 
5
- is_jruby = defined?(JRUBY_VERSION) || (defined?(RUBY_ENGINE) && 'jruby' == RUBY_ENGINE)
6
-
7
- gem 'sqlite3', '< 1.4.0', :platform => [:ruby, :mswin, :mingw]
8
- gem 'jruby-openssl', :platform => :jruby
9
5
  gem 'activerecord-jdbcsqlite3-adapter', :platform => :jruby
10
- gem 'rails', '~> 3.0.20'
11
6
  gem 'hitimes', '< 1.2.2'
7
+ gem 'jruby-openssl', :platform => :jruby
12
8
  gem 'mixlib-shellout', '<= 2.0.0'
13
9
  gem 'net-ssh', '<= 3.1.1'
14
10
  gem 'public_suffix', '<= 2.0.5'
11
+ gem 'rails', '~> 3.0.20'
15
12
  gem 'rake', '< 11'
16
13
  gem 'rspec-rails', '>= 2.14.0'
14
+ gem 'sqlite3', '< 1.4.0', :platform => [:ruby, :mswin, :mingw]
17
15
 
18
16
  if RUBY_VERSION < '2.2.2'
19
17
  gem 'sidekiq', '~> 2.13.0'
@@ -31,23 +29,22 @@ end
31
29
 
32
30
  gem 'capistrano', :require => false
33
31
  gem 'rexml', '<= 3.2.4'
34
- gem 'sucker_punch', '~> 2.0'
35
32
  gem 'shoryuken'
36
- gem 'codacy-coverage'
37
33
  gem 'simplecov', '<= 0.17.1'
34
+ gem 'sucker_punch', '~> 2.0'
38
35
 
39
- gem 'sinatra'
40
- gem 'delayed_job', :require => false
41
- gem 'redis', '<= 3.3.5'
42
- gem 'redis-namespace', '<= 1.5.0'
43
36
  gem 'database_cleaner', '~> 1.0.0'
37
+ gem 'delayed_job', :require => false
44
38
  gem 'genspec', '>= 0.2.8'
45
39
  gem 'girl_friday', '>= 0.11.1'
40
+ gem 'redis', '<= 3.3.5'
41
+ gem 'redis-namespace', '<= 1.5.0'
46
42
  gem 'rspec-command'
43
+ gem 'sinatra'
47
44
 
48
45
  gem 'webmock', :require => false
49
46
 
50
- gem 'resque', '< 2.0.0'
51
47
  gem 'aws-sdk-sqs'
48
+ gem 'resque', '< 2.0.0'
52
49
 
53
50
  gemspec :path => '../'
@@ -2,17 +2,15 @@ require 'rubygems/version'
2
2
 
3
3
  source 'https://rubygems.org'
4
4
 
5
- is_jruby = defined?(JRUBY_VERSION) || (defined?(RUBY_ENGINE) && 'jruby' == RUBY_ENGINE)
6
-
7
- gem 'sqlite3', '< 1.4.0', :platform => [:ruby, :mswin, :mingw]
8
- gem 'jruby-openssl', :platform => :jruby
9
5
  gem 'activerecord-jdbcsqlite3-adapter', :platform => :jruby
6
+ gem 'jruby-openssl', :platform => :jruby
10
7
  gem 'mixlib-shellout', '<= 2.0.0'
11
8
  gem 'net-ssh', '<= 3.1.1'
12
9
  gem 'public_suffix', '<= 2.0.5'
13
10
  gem 'rails', '~> 3.1.12'
14
- gem 'rspec-rails', '~> 3.4'
15
11
  gem 'rake', '< 11'
12
+ gem 'rspec-rails', '~> 3.4'
13
+ gem 'sqlite3', '< 1.4.0', :platform => [:ruby, :mswin, :mingw]
16
14
 
17
15
  if RUBY_VERSION < '2.2.2'
18
16
  gem 'sidekiq', '~> 2.13.0'
@@ -30,24 +28,23 @@ end
30
28
 
31
29
  gem 'capistrano', :require => false
32
30
  gem 'rexml', '<= 3.2.4'
33
- gem 'sucker_punch'
34
31
  gem 'shoryuken'
35
- gem 'codacy-coverage'
36
32
  gem 'simplecov', '<= 0.17.1'
33
+ gem 'sucker_punch'
37
34
 
38
- gem 'sinatra'
35
+ gem 'database_cleaner'
39
36
  gem 'delayed_job', :require => false
37
+ gem 'generator_spec'
38
+ gem 'girl_friday'
40
39
  gem 'rack-cache', '<= 1.9.0'
41
40
  gem 'redis', '<= 3.3.5'
42
41
  gem 'redis-namespace', '<= 1.5.0'
43
- gem 'database_cleaner'
44
- gem 'girl_friday'
45
- gem 'generator_spec'
46
42
  gem 'rspec-command'
43
+ gem 'sinatra'
47
44
 
48
45
  gem 'webmock', :require => false
49
46
 
50
- gem 'resque', '< 2.0.0'
51
47
  gem 'aws-sdk-sqs'
48
+ gem 'resque', '< 2.0.0'
52
49
 
53
50
  gemspec :path => '../'
@@ -2,8 +2,6 @@ require 'rubygems/version'
2
2
 
3
3
  source 'https://rubygems.org'
4
4
 
5
- is_jruby = defined?(JRUBY_VERSION) || (defined?(RUBY_ENGINE) && 'jruby' == RUBY_ENGINE)
6
-
7
5
  gem 'activerecord-jdbcsqlite3-adapter', :platform => :jruby
8
6
  gem 'jruby-openssl', :platform => :jruby
9
7
  gem 'mixlib-shellout', '<= 2.0.0'
@@ -32,10 +30,9 @@ end
32
30
 
33
31
  gem 'capistrano', :require => false
34
32
  gem 'rexml', '<= 3.2.4'
35
- gem 'sucker_punch', '~> 2.0'
36
33
  gem 'shoryuken'
37
- gem 'codacy-coverage'
38
34
  gem 'simplecov', '<= 0.17.1'
35
+ gem 'sucker_punch', '~> 2.0'
39
36
 
40
37
  gem 'delayed_job', :require => false
41
38
  gem 'redis', '<= 3.3.5'
@@ -49,7 +46,7 @@ gem 'rspec-command'
49
46
 
50
47
  gem 'webmock', :require => false
51
48
 
52
- gem 'resque', '< 2.0.0'
53
49
  gem 'aws-sdk-sqs'
50
+ gem 'resque', '< 2.0.0'
54
51
 
55
52
  gemspec :path => '../'
@@ -2,8 +2,6 @@ require 'rubygems/version'
2
2
 
3
3
  source 'https://rubygems.org'
4
4
 
5
- is_jruby = defined?(JRUBY_VERSION) || (defined?(RUBY_ENGINE) && 'jruby' == RUBY_ENGINE)
6
-
7
5
  gem 'activerecord-jdbcsqlite3-adapter', :platform => :jruby
8
6
  gem 'jruby-openssl', :platform => :jruby
9
7
  gem 'mixlib-shellout', '<= 2.0.0'
@@ -31,11 +29,10 @@ platforms :rbx do
31
29
  end
32
30
 
33
31
  gem 'capistrano', :require => false
34
- gem 'sucker_punch', '~> 2.0'
35
32
  gem 'json', '~> 2.0'
36
33
  gem 'shoryuken'
37
- gem 'codacy-coverage'
38
34
  gem 'simplecov', '<= 0.17.1'
35
+ gem 'sucker_punch', '~> 2.0'
39
36
 
40
37
  gem 'delayed_job', :require => false
41
38
  gem 'redis', '<= 3.3.5'
@@ -2,8 +2,6 @@ require 'rubygems/version'
2
2
 
3
3
  source 'https://rubygems.org'
4
4
 
5
- is_jruby = defined?(JRUBY_VERSION) || (defined?(RUBY_ENGINE) && 'jruby' == RUBY_ENGINE)
6
-
7
5
  gem 'activerecord-jdbcsqlite3-adapter', :platform => :jruby
8
6
  gem 'jruby-openssl', :platform => :jruby
9
7
  gem 'mixlib-shellout', '<= 2.0.0'
@@ -28,10 +26,9 @@ platforms :rbx do
28
26
  end
29
27
 
30
28
  gem 'capistrano', :require => false
31
- gem 'sucker_punch', '~> 2.0'
32
29
  gem 'shoryuken'
33
- gem 'codacy-coverage'
34
30
  gem 'simplecov', '<= 0.17.1'
31
+ gem 'sucker_punch', '~> 2.0'
35
32
 
36
33
  gem 'delayed_job', :require => false
37
34
  gem 'redis', '<= 3.3.5'
@@ -46,7 +43,6 @@ gem 'rspec-command'
46
43
 
47
44
  gem 'webmock', :require => false
48
45
 
49
- gem 'resque'
50
46
  gem 'aws-sdk-sqs'
51
47
 
52
48
  gemspec :path => '../'
@@ -2,9 +2,6 @@ require 'rubygems/version'
2
2
 
3
3
  source 'https://rubygems.org'
4
4
 
5
- is_jruby = defined?(JRUBY_VERSION) || (defined?(RUBY_ENGINE) && 'jruby' == RUBY_ENGINE)
6
- is_not_jruby = !is_jruby
7
-
8
5
  gem 'activerecord-jdbcsqlite3-adapter', :platform => :jruby
9
6
  gem 'jruby-openssl', :platform => :jruby
10
7
  gem 'net-ssh', '<= 3.1.1'
@@ -21,9 +18,7 @@ platforms :rbx do
21
18
  gem 'rubysl', '~> 2.0' unless RUBY_VERSION.start_with?('1')
22
19
  end
23
20
 
24
- if RUBY_VERSION < '2.0.0'
25
- gem 'json', '1.8.6'
26
- end
21
+ gem 'json', '1.8.6' if RUBY_VERSION < '2.0.0'
27
22
 
28
23
  if RUBY_VERSION < '2.2.2'
29
24
  gem 'sidekiq', '~> 2.13.0'
@@ -38,17 +33,16 @@ gem 'database_cleaner', '~> 1.0.0'
38
33
  gem 'delayed_job', :require => false
39
34
  gem 'generator_spec'
40
35
  gem 'girl_friday', '>= 0.11.1'
41
- gem 'rspec-command'
42
36
  gem 'redis', '<= 3.3.5'
43
37
  gem 'resque'
38
+ gem 'rspec-command'
44
39
  gem 'sinatra'
45
40
 
46
41
  gem 'nokogiri', '~> 1.6.0' if Gem::Version.new(RUBY_VERSION) <= Gem::Version.new('2.0')
47
42
 
43
+ gem 'simplecov', '<= 0.17.1'
48
44
  gem 'sucker_punch', '~> 2.0'
49
45
  gem 'webmock', :require => false
50
- gem 'codacy-coverage'
51
- gem 'simplecov', '<= 0.17.1'
52
46
 
53
47
  gem 'aws-sdk-sqs'
54
48
 
@@ -2,7 +2,7 @@ require 'rubygems/version'
2
2
 
3
3
  source 'https://rubygems.org'
4
4
 
5
- is_jruby = defined?(JRUBY_VERSION) || (defined?(RUBY_ENGINE) && 'jruby' == RUBY_ENGINE)
5
+ is_jruby = defined?(JRUBY_VERSION) || (defined?(RUBY_ENGINE) && RUBY_ENGINE == 'jruby')
6
6
 
7
7
  gem 'activerecord-jdbcsqlite3-adapter', :platform => :jruby
8
8
  gem 'jruby-openssl', :platform => :jruby
@@ -12,10 +12,10 @@ gem 'rails', '~> 5.0.7'
12
12
  gem 'sqlite3', '< 1.4.0', :platform => [:ruby, :mswin, :mingw]
13
13
 
14
14
  gem 'rspec-core', '~> 3.5.0.beta3'
15
- gem 'rspec-rails', '~> 3.5.0.beta3'
16
- gem 'rspec-support', '~> 3.5.0.beta3'
17
15
  gem 'rspec-expectations', '~> 3.5.0.beta3'
18
16
  gem 'rspec-mocks', '~> 3.5.0.beta3'
17
+ gem 'rspec-rails', '~> 3.5.0.beta3'
18
+ gem 'rspec-support', '~> 3.5.0.beta3'
19
19
 
20
20
  gem 'rake'
21
21
 
@@ -25,27 +25,23 @@ platforms :rbx do
25
25
  gem 'minitest'
26
26
  gem 'racc'
27
27
  gem 'rubinius-developer_tools'
28
- gem 'rubysl', '~> 2.0' if RUBY_VERSION.start_with?('2') # rubysl doesn't yet support Ruby 3.x
28
+ gem 'rubysl', '~> 2.0' if RUBY_VERSION.start_with?('2')
29
29
  end
30
30
 
31
31
  gem 'capistrano', :require => false
32
- gem 'sucker_punch', '~> 2.0'
33
- gem 'codacy-coverage'
34
32
  gem 'simplecov', '<= 0.17.1'
33
+ gem 'sucker_punch', '~> 2.0'
35
34
 
36
- if Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.3')
37
- gem 'rack', '2.1.2'
38
- end
35
+ gem 'rack', '2.1.2' if Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.3')
39
36
 
40
37
  # We need last sinatra that uses rack 2.1.x
41
- gem 'sinatra', :git => 'https://github.com/sinatra/sinatra', :tag => 'v2.0.8'
42
38
  gem 'database_cleaner', '~> 1.8.4'
43
39
  gem 'delayed_job', :require => false
44
40
  gem 'generator_spec'
45
- gem 'girl_friday', '>= 0.11.1'
46
41
  gem 'redis', '<= 3.3.5'
47
42
  gem 'resque'
48
43
  gem 'secure_headers', '~> 6.3.2', :require => false
44
+ gem 'sinatra', :git => 'https://github.com/sinatra/sinatra', :tag => 'v2.0.8'
49
45
 
50
46
  unless is_jruby
51
47
  # JRuby doesn't support fork, which is required for this test helper.