rollbar 2.16.2 → 2.22.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (212) hide show
  1. checksums.yaml +5 -5
  2. data/.rubocop.yml +47 -0
  3. data/.travis.yml +182 -94
  4. data/Appraisals +10 -10
  5. data/Gemfile +45 -13
  6. data/README.md +20 -3
  7. data/Rakefile +0 -0
  8. data/data/rollbar.snippet.js +1 -1
  9. data/docs/configuration.md +15 -0
  10. data/gemfiles/rails30.gemfile +21 -14
  11. data/gemfiles/rails31.gemfile +21 -12
  12. data/gemfiles/rails32.gemfile +18 -8
  13. data/gemfiles/rails40.gemfile +18 -6
  14. data/gemfiles/rails41.gemfile +17 -6
  15. data/gemfiles/rails42.gemfile +24 -14
  16. data/gemfiles/rails50.gemfile +20 -11
  17. data/gemfiles/rails51.gemfile +20 -10
  18. data/gemfiles/rails52.gemfile +65 -0
  19. data/gemfiles/rails60.gemfile +67 -0
  20. data/lib/generators/rollbar/rollbar_generator.rb +1 -1
  21. data/lib/rails/rollbar_runner.rb +17 -2
  22. data/lib/rollbar.rb +2 -3
  23. data/lib/rollbar/capistrano.rb +71 -39
  24. data/lib/rollbar/capistrano3.rb +56 -1
  25. data/lib/rollbar/capistrano_tasks.rb +130 -0
  26. data/lib/rollbar/configuration.rb +95 -7
  27. data/lib/rollbar/delay/active_job.rb +17 -0
  28. data/lib/rollbar/delay/girl_friday.rb +2 -2
  29. data/lib/rollbar/delay/resque.rb +4 -6
  30. data/lib/rollbar/delay/shoryuken.rb +15 -9
  31. data/lib/rollbar/delay/sidekiq.rb +6 -8
  32. data/lib/rollbar/delay/sucker_punch.rb +17 -19
  33. data/lib/rollbar/delay/thread.rb +3 -3
  34. data/lib/rollbar/deploy.rb +90 -0
  35. data/lib/rollbar/encoding/encoder.rb +9 -9
  36. data/lib/rollbar/exception_reporter.rb +19 -5
  37. data/lib/rollbar/item.rb +62 -20
  38. data/lib/rollbar/item/backtrace.rb +4 -4
  39. data/lib/rollbar/item/frame.rb +7 -1
  40. data/lib/rollbar/item/locals.rb +56 -0
  41. data/lib/rollbar/json.rb +5 -51
  42. data/lib/rollbar/language_support.rb +4 -20
  43. data/lib/rollbar/lazy_store.rb +5 -5
  44. data/lib/rollbar/logger.rb +1 -0
  45. data/lib/rollbar/logger_proxy.rb +15 -2
  46. data/lib/rollbar/middleware/js.rb +110 -10
  47. data/lib/rollbar/middleware/js/json_value.rb +26 -0
  48. data/lib/rollbar/middleware/rack.rb +4 -1
  49. data/lib/rollbar/middleware/rails/rollbar.rb +10 -1
  50. data/lib/rollbar/notifier.rb +118 -49
  51. data/lib/rollbar/notifier/trace_with_bindings.rb +65 -0
  52. data/lib/rollbar/plugin.rb +54 -6
  53. data/lib/rollbar/plugins.rb +7 -1
  54. data/lib/rollbar/plugins/active_job.rb +5 -1
  55. data/lib/rollbar/plugins/basic_socket.rb +21 -6
  56. data/lib/rollbar/plugins/delayed_job/job_data.rb +3 -3
  57. data/lib/rollbar/plugins/delayed_job/plugin.rb +3 -3
  58. data/lib/rollbar/plugins/goalie.rb +11 -3
  59. data/lib/rollbar/plugins/rails/controller_methods.rb +17 -4
  60. data/lib/rollbar/plugins/rails/railtie_mixin.rb +7 -3
  61. data/lib/rollbar/plugins/rake.rb +2 -2
  62. data/lib/rollbar/plugins/sidekiq/plugin.rb +10 -6
  63. data/lib/rollbar/rake_tasks.rb +3 -86
  64. data/lib/rollbar/request_data_extractor.rb +35 -21
  65. data/lib/rollbar/rollbar_test.rb +147 -0
  66. data/lib/rollbar/scrubbers.rb +7 -3
  67. data/lib/rollbar/scrubbers/params.rb +38 -20
  68. data/lib/rollbar/scrubbers/url.rb +27 -13
  69. data/lib/rollbar/truncation.rb +9 -2
  70. data/lib/rollbar/truncation/min_body_strategy.rb +2 -3
  71. data/lib/rollbar/truncation/remove_any_key_strategy.rb +123 -0
  72. data/lib/rollbar/truncation/remove_extra_strategy.rb +35 -0
  73. data/lib/rollbar/truncation/remove_request_strategy.rb +21 -0
  74. data/lib/rollbar/truncation/strings_strategy.rb +3 -4
  75. data/lib/rollbar/util.rb +75 -45
  76. data/lib/rollbar/util/hash.rb +30 -6
  77. data/lib/rollbar/util/ip_anonymizer.rb +8 -7
  78. data/lib/rollbar/util/ip_obfuscator.rb +1 -1
  79. data/lib/rollbar/version.rb +1 -1
  80. data/lib/tasks/benchmark.rake +103 -0
  81. data/rollbar.gemspec +14 -8
  82. metadata +25 -277
  83. data/gemfiles/ruby_1_8_and_1_9_2.gemfile +0 -49
  84. data/lib/rollbar/json/default.rb +0 -11
  85. data/lib/rollbar/json/oj.rb +0 -16
  86. data/lib/rollbar/tasks/rollbar.cap +0 -47
  87. data/spec/cacert.pem +0 -3988
  88. data/spec/controllers/home_controller_spec.rb +0 -480
  89. data/spec/delay/sidekiq_spec.rb +0 -61
  90. data/spec/delay/sucker_punch_spec.rb +0 -25
  91. data/spec/delayed/backend/test.rb +0 -140
  92. data/spec/delayed/serialization/test.rb +0 -0
  93. data/spec/dummyapp/.gitignore +0 -73
  94. data/spec/dummyapp/Rakefile +0 -7
  95. data/spec/dummyapp/app/assets/javascripts/application.js +0 -3
  96. data/spec/dummyapp/app/assets/stylesheets/application.css.scss +0 -37
  97. data/spec/dummyapp/app/controllers/application_controller.rb +0 -3
  98. data/spec/dummyapp/app/controllers/home_controller.rb +0 -60
  99. data/spec/dummyapp/app/controllers/users_controller.rb +0 -17
  100. data/spec/dummyapp/app/helpers/.gitkeep +0 -0
  101. data/spec/dummyapp/app/mailers/.gitkeep +0 -0
  102. data/spec/dummyapp/app/models/.gitkeep +0 -0
  103. data/spec/dummyapp/app/models/book.rb +0 -5
  104. data/spec/dummyapp/app/models/post.rb +0 -9
  105. data/spec/dummyapp/app/models/user.rb +0 -9
  106. data/spec/dummyapp/app/views/devise/registrations/edit.html.erb +0 -27
  107. data/spec/dummyapp/app/views/devise/registrations/new.html.erb +0 -20
  108. data/spec/dummyapp/app/views/devise/shared/_links.html.erb +0 -25
  109. data/spec/dummyapp/app/views/home/cause_exception.html.erb +0 -1
  110. data/spec/dummyapp/app/views/home/index.html.erb +0 -4
  111. data/spec/dummyapp/app/views/home/report_exception.html.erb +0 -1
  112. data/spec/dummyapp/app/views/js/test.html.erb +0 -1
  113. data/spec/dummyapp/app/views/layouts/_messages.html.erb +0 -5
  114. data/spec/dummyapp/app/views/layouts/_navigation.html.erb +0 -21
  115. data/spec/dummyapp/app/views/layouts/application.html.erb +0 -25
  116. data/spec/dummyapp/app/views/layouts/simple.html.erb +0 -18
  117. data/spec/dummyapp/app/views/users/index.html.erb +0 -8
  118. data/spec/dummyapp/app/views/users/show.html.erb +0 -3
  119. data/spec/dummyapp/config.ru +0 -4
  120. data/spec/dummyapp/config/application.rb +0 -59
  121. data/spec/dummyapp/config/boot.rb +0 -10
  122. data/spec/dummyapp/config/database.yml +0 -25
  123. data/spec/dummyapp/config/environment.rb +0 -5
  124. data/spec/dummyapp/config/environments/development.rb +0 -37
  125. data/spec/dummyapp/config/environments/production.rb +0 -67
  126. data/spec/dummyapp/config/environments/test.rb +0 -37
  127. data/spec/dummyapp/config/initializers/backtrace_silencers.rb +0 -7
  128. data/spec/dummyapp/config/initializers/inflections.rb +0 -15
  129. data/spec/dummyapp/config/initializers/mime_types.rb +0 -5
  130. data/spec/dummyapp/config/initializers/rollbar.rb +0 -26
  131. data/spec/dummyapp/config/initializers/secret_token.rb +0 -7
  132. data/spec/dummyapp/config/initializers/session_store.rb +0 -8
  133. data/spec/dummyapp/config/initializers/wrap_parameters.rb +0 -16
  134. data/spec/dummyapp/config/locales/devise.en.yml +0 -58
  135. data/spec/dummyapp/config/locales/en.yml +0 -5
  136. data/spec/dummyapp/config/routes.rb +0 -17
  137. data/spec/dummyapp/config/secrets.yml +0 -2
  138. data/spec/dummyapp/db/migrate/20121121184652_devise_create_users.rb +0 -46
  139. data/spec/dummyapp/db/migrate/20121121184654_add_name_to_users.rb +0 -5
  140. data/spec/dummyapp/db/migrate/20161219184410_create_books.rb +0 -10
  141. data/spec/dummyapp/db/migrate/20161219185529_add_username_to_users.rb +0 -5
  142. data/spec/dummyapp/db/schema.rb +0 -41
  143. data/spec/dummyapp/db/seeds.rb +0 -12
  144. data/spec/dummyapp/lib/assets/.gitkeep +0 -0
  145. data/spec/dummyapp/public/404.html +0 -26
  146. data/spec/dummyapp/public/422.html +0 -26
  147. data/spec/dummyapp/public/500.html +0 -25
  148. data/spec/dummyapp/public/favicon.ico +0 -0
  149. data/spec/dummyapp/script/rails +0 -6
  150. data/spec/fixtures/file1 +0 -1
  151. data/spec/fixtures/file2 +0 -1
  152. data/spec/fixtures/payloads/message.json +0 -25
  153. data/spec/fixtures/payloads/sample.trace.json +0 -275
  154. data/spec/fixtures/payloads/sample.trace_chain.json +0 -530
  155. data/spec/fixtures/plugins/dummy1.rb +0 -5
  156. data/spec/fixtures/plugins/dummy2.rb +0 -5
  157. data/spec/generators/rollbar/rollbar_generator_rails30_spec.rb +0 -31
  158. data/spec/generators/rollbar/rollbar_generator_spec.rb +0 -51
  159. data/spec/requests/home_spec.rb +0 -49
  160. data/spec/rollbar/configuration_spec.rb +0 -46
  161. data/spec/rollbar/delay/delayed_job_spec.rb +0 -22
  162. data/spec/rollbar/delay/girl_friday_spec.rb +0 -41
  163. data/spec/rollbar/delay/resque_spec.rb +0 -37
  164. data/spec/rollbar/delay/thread_spec.rb +0 -27
  165. data/spec/rollbar/encoding/encoder_spec.rb +0 -63
  166. data/spec/rollbar/item/backtrace_spec.rb +0 -26
  167. data/spec/rollbar/item/frame_spec.rb +0 -267
  168. data/spec/rollbar/item_spec.rb +0 -736
  169. data/spec/rollbar/json/oj_spec.rb +0 -18
  170. data/spec/rollbar/json_spec.rb +0 -110
  171. data/spec/rollbar/lazy_store_spec.rb +0 -99
  172. data/spec/rollbar/logger_proxy_spec.rb +0 -50
  173. data/spec/rollbar/logger_spec.rb +0 -124
  174. data/spec/rollbar/middleware/js_spec.rb +0 -421
  175. data/spec/rollbar/middleware/sinatra_spec.rb +0 -197
  176. data/spec/rollbar/notifier_spec.rb +0 -56
  177. data/spec/rollbar/plugin_spec.rb +0 -209
  178. data/spec/rollbar/plugins/active_job_spec.rb +0 -38
  179. data/spec/rollbar/plugins/delayed_job/job_data_spec.rb +0 -48
  180. data/spec/rollbar/plugins/delayed_job_spec.rb +0 -129
  181. data/spec/rollbar/plugins/rack_spec.rb +0 -152
  182. data/spec/rollbar/plugins/rails_js_spec.rb +0 -19
  183. data/spec/rollbar/plugins/rake_spec.rb +0 -34
  184. data/spec/rollbar/plugins/resque/failure_spec.rb +0 -36
  185. data/spec/rollbar/plugins/sidekiq_spec.rb +0 -171
  186. data/spec/rollbar/plugins/validations_spec.rb +0 -56
  187. data/spec/rollbar/plugins_spec.rb +0 -68
  188. data/spec/rollbar/request_data_extractor_spec.rb +0 -270
  189. data/spec/rollbar/scrubbers/params_spec.rb +0 -314
  190. data/spec/rollbar/scrubbers/url_spec.rb +0 -136
  191. data/spec/rollbar/scrubbers_spec.rb +0 -31
  192. data/spec/rollbar/sidekig/clear_scope_spec.rb +0 -19
  193. data/spec/rollbar/truncation/frames_strategy_spec.rb +0 -70
  194. data/spec/rollbar/truncation/min_body_strategy_spec.rb +0 -57
  195. data/spec/rollbar/truncation/strings_strategy_spec.rb +0 -89
  196. data/spec/rollbar/truncation_spec.rb +0 -27
  197. data/spec/rollbar/util/hash_spec.rb +0 -22
  198. data/spec/rollbar/util/ip_anonymizer_spec.rb +0 -30
  199. data/spec/rollbar/util_spec.rb +0 -80
  200. data/spec/rollbar_bc_spec.rb +0 -380
  201. data/spec/rollbar_spec.rb +0 -1667
  202. data/spec/spec_helper.rb +0 -84
  203. data/spec/support/cause_exception.rb +0 -1
  204. data/spec/support/encoding_helpers.rb +0 -8
  205. data/spec/support/encodings/iso_8859_9 +0 -1
  206. data/spec/support/fixture_helpers.rb +0 -10
  207. data/spec/support/get_ip_raising.rb +0 -7
  208. data/spec/support/helpers.rb +0 -5
  209. data/spec/support/matchers.rb +0 -23
  210. data/spec/support/notifier_helpers.rb +0 -57
  211. data/spec/support/rollbar_api.rb +0 -57
  212. data/spec/support/shared_contexts.rb +0 -12
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: ef98d47074226584e6ee894d82f5a3d0c73664c9
4
- data.tar.gz: c01e80f38136f5397bb1c585fa8d31c803dee8cd
2
+ SHA256:
3
+ metadata.gz: c56a90107593b66c2be899fd4f36abe3ad657abcd0e2d822964efbc8e47efdbb
4
+ data.tar.gz: cd95d87f45d3e65f3dc499c9be88c3c18b84ccd359eda34ed2ab88e941909754
5
5
  SHA512:
6
- metadata.gz: 25a0bcec30eef59e718bad1d5857612c8938df5be9afec3b7c20251f93d11abd50f265ef1284f249202eec9d308a01ae867c737e83c86451e7bd0af717a34b71
7
- data.tar.gz: a0958ba5221c0184067b90e5aff2aa160c97d607084984a405f63542701cca7a548dc72aec5e713b613e532d3a17d28acfc65cac08cac05d85a5a655391caa03
6
+ metadata.gz: c6fe31a226014d67e1225234e408030b1e9bab112973e3a312607e26c71c98e6c64d56d7ea2163e0d1cfdd5af3755c384e15c6e11c3166f9478b384f4c0a512f
7
+ data.tar.gz: 12c63a9346dc60827b7b5765b6e63ce9d5c814fdb90c0e685952e4751669bb0f0770344830d625070cac6d656958f6bbd2862522cd7d51d1e0cae039bfd0efb5
data/.rubocop.yml CHANGED
@@ -8,9 +8,15 @@ Style/HashSyntax:
8
8
  SupportedStyles:
9
9
  - hash_rockets
10
10
 
11
+ Style/SymbolArray:
12
+ Enabled: false # %i[] syntax isn't 1.9.x compatible
13
+
11
14
  Metrics/LineLength:
12
15
  Max: 1000
13
16
 
17
+ Metrics/MethodLength:
18
+ Max: 15 # Relax slightly from the default of 10
19
+
14
20
  Style/DoubleNegation:
15
21
  Enabled: false
16
22
 
@@ -19,3 +25,44 @@ Style/Lambda:
19
25
 
20
26
  Style/EachWithObject:
21
27
  Enabled: false
28
+
29
+ Metrics/BlockLength:
30
+ ExcludedMethods: ['describe', 'context'] # RSpec DSL is expected to have long blocks.
31
+
32
+ Style/ExpandPathArguments:
33
+ Enabled: false # syntax requires Ruby >= 2.0
34
+
35
+ Gemspec/RequiredRubyVersion:
36
+ Enabled: false # rubocop compares to gemspec, yet won't allow 1.9 as minimum version
37
+
38
+ Style/Encoding:
39
+ Enabled: false # Ruby 1.9.3 needs these magic comments, e.g. # encoding: UTF-8
40
+
41
+ Style/PercentLiteralDelimiters:
42
+ PreferredDelimiters:
43
+ # rubocop switched from () to [] at some past version.
44
+ # Make sure we are consistent across all bundles/builds.
45
+ default: '[]'
46
+
47
+ Style/Documentation:
48
+ # We can enabled this if/when we want to start doing consistent class documentation.
49
+ # As is, we currently add :nodoc: if anything at all.
50
+ Enabled: false
51
+
52
+ Naming/UncommunicativeMethodParamName:
53
+ # It's possible to configure this cop to allow just about anything, but what's the point.
54
+ # The default min length of a param name is 3, but the the default whitelist includes things
55
+ # like `db` and `io`. So, short names really can be useful.
56
+ Enabled: false
57
+
58
+ Style/CaseEquality:
59
+ # The code uses `===` a lot to compare a regex to a string, but it's not clear that
60
+ # switching to `=~` is always safe, because in some cases the value could be a regex
61
+ # or a string and `str1 =~ str2` isn't valid. Whoever enables this cop should carefully
62
+ # review and test each of these.
63
+ Enabled: false
64
+
65
+ Style/FrozenStringLiteralComment:
66
+ # If we do this, it will be in its own PR. It requires adding these magic comments
67
+ # throughout the project, in order to prepare for a future Ruby 3.x.
68
+ Enabled: false
data/.travis.yml CHANGED
@@ -1,28 +1,61 @@
1
1
  sudo: false
2
+ dist: trusty
2
3
  services:
3
4
  - redis-server
4
5
  language: ruby
5
6
  # Broken bundler on travis CI - https://github.com/bundler/bundler/issues/2784
6
7
  before_install:
7
- - gem update --system 2.1.11
8
+ - gem update --system 2.7.7
8
9
  - gem --version
9
- - gem install bundler
10
+ - gem install bundler -v 1.6.1
10
11
  - bundle --version
12
+
11
13
  rvm:
12
14
  - 1.9.3
13
15
  - 2.0.0
14
16
  - 2.1.0
15
17
  - 2.2.2
16
- - jruby-18mode
17
- - jruby-19mode
18
+ - 2.3.8
19
+ - 2.4.5
20
+ - 2.5.3
21
+ - 2.6.0
22
+ - 2.6.3
18
23
  - rbx
24
+ # Travis's own rvm installer is failing on JRuby builds, TODO: reenable when fixed.
25
+ # - jruby-9.1.9.0
26
+
27
+ #
28
+ # # About legacy JRuby
29
+ #
30
+ # Legacy JRubies (jruby-18mode, jruby-19mode) have been disabled for some time by
31
+ # listing all possible targets in either the exclude or allow_failures sections.
32
+ # I have taken a look at getting them running, and have found that no valid
33
+ # combination of dependencies is possible for Rails 3.0 and higher. It appears
34
+ # Rails 2.2 is meant to work, though I haven't tried it.
35
+ #
36
+ # For Rails 3.0, it is possible to get a working bundle with all gem dependencies,
37
+ # but the JDBC adapter gem needs an earlier version of ActiveSupport, and it will
38
+ # fail at runtime.
39
+ #
40
+ # For Rails 3.1 and 3.2, Rack 1.3.x and higher require Ruby 2.x, while Rails 3.x will
41
+ # not accept any 1.2.x version of Rack. Even if this could be resolved, one would
42
+ # hit the above runtime issue amyway.
43
+ #
44
+ # # About current JRuby
45
+ #
46
+ # While current JRuby builds aim to be Ruby 2.5.x compatible, the JDBC adapter
47
+ # gem is constrained to only Rails 5.0, 5.1 and 5.2 at this time. (Old versions
48
+ # of the gem allow >= Rails 2.2, but in practice it will not work with Rails 3.0
49
+ # and higher because of the ActiveSupport issue described above.) For as long as
50
+ # the test suite relies on Rails and SqlLite, it is not possible to include
51
+ # earlier Rails for JRuby.
52
+
19
53
  jdk:
20
- - openjdk6
54
+ # These are the JDKs currently supported on Travis (Trusty - Ubuntu 14.04)
21
55
  - openjdk7
22
- - oraclejdk7
56
+ - openjdk8
23
57
  - oraclejdk8
24
- env:
25
- - ROLLBAR_SSL_CERT_FILE=/home/travis/build/rollbar/rollbar-gem/spec/cacert.pem
58
+ - oraclejdk9
26
59
  gemfile:
27
60
  - gemfiles/rails30.gemfile
28
61
  - gemfiles/rails31.gemfile
@@ -32,149 +65,200 @@ gemfile:
32
65
  - gemfiles/rails42.gemfile
33
66
  - gemfiles/rails50.gemfile
34
67
  - gemfiles/rails51.gemfile
68
+ - gemfiles/rails52.gemfile
69
+ - gemfiles/rails60.gemfile
35
70
  matrix:
36
- include:
37
- - rvm: 1.8.7
38
- gemfile: gemfiles/ruby_1_8_and_1_9_2.gemfile
39
- jdk: openjdk6
40
- - rvm: 1.9.2
41
- gemfile: gemfiles/ruby_1_8_and_1_9_2.gemfile
42
- jdk: openjdk6
71
+ include: []
72
+
43
73
  allow_failures:
44
74
  - rvm: ruby-head
45
- - rvm: jruby-18mode
46
75
  - rvm: jruby-head
76
+ # Ruby 2.6.x is still being eveluated and may have test failures
77
+ - rvm: 2.6.0
78
+ - rvm: 2.6.3
79
+ # oraclejdk9 has a dependency issue that needs to be investigated
80
+ - jdk: oraclejdk9
47
81
 
48
- # NOTE: Allowing this to fail because of some strange error in rspec-core `undefined method `example_group_finished'`.
49
- # Seems to work with oraclejdk7.
50
- - rvm: jruby-19mode
51
- jdk: openjdk7
52
82
  exclude:
53
83
  # Don't run tests for non-jruby environments with the JDK.
54
84
  # NOTE: openjdk7 is missing from these exclusions so that Travis will run at least 1 build for the given rvm.
55
- - rvm: 1.8.7
56
- jdk: openjdk6
57
- - rvm: 1.8.7
58
- jdk: oraclejdk7
59
- - rvm: 1.8.7
60
- jdk: oraclejdk8
61
- - rvm: 1.9.2
62
- jdk: openjdk6
63
- - rvm: 1.9.2
64
- jdk: oraclejdk7
65
- - rvm: 1.9.2
66
- jdk: oraclejdk8
67
- - rvm: 1.9.3
68
- jdk: openjdk6
69
85
  - rvm: 1.9.3
70
- jdk: oraclejdk7
86
+ jdk: openjdk8
71
87
  - rvm: 1.9.3
72
88
  jdk: oraclejdk8
89
+ - rvm: 1.9.3
90
+ jdk: oraclejdk9
73
91
  - rvm: 2.0.0
74
- jdk: openjdk6
75
- - rvm: 2.0.0
76
- jdk: oraclejdk7
92
+ jdk: openjdk8
77
93
  - rvm: 2.0.0
78
94
  jdk: oraclejdk8
95
+ - rvm: 2.0.0
96
+ jdk: oraclejdk9
79
97
  - rvm: 2.1.0
80
- jdk: openjdk6
81
- - rvm: 2.1.0
82
- jdk: oraclejdk7
98
+ jdk: openjdk8
83
99
  - rvm: 2.1.0
84
100
  jdk: oraclejdk8
101
+ - rvm: 2.1.0
102
+ jdk: oraclejdk9
85
103
  - rvm: 2.2.2
86
- jdk: openjdk6
104
+ jdk: openjdk8
87
105
  - rvm: 2.2.2
88
- jdk: oraclejdk7
106
+ jdk: oraclejdk8
89
107
  - rvm: 2.2.2
108
+ jdk: oraclejdk9
109
+ - rvm: 2.3.8
110
+ jdk: openjdk8
111
+ - rvm: 2.3.8
112
+ jdk: oraclejdk8
113
+ - rvm: 2.3.8
114
+ jdk: oraclejdk9
115
+ - rvm: 2.4.5
116
+ jdk: openjdk8
117
+ - rvm: 2.4.5
118
+ jdk: oraclejdk8
119
+ - rvm: 2.4.5
120
+ jdk: oraclejdk9
121
+ - rvm: 2.5.3
122
+ jdk: openjdk8
123
+ - rvm: 2.5.3
124
+ jdk: oraclejdk8
125
+ - rvm: 2.5.3
126
+ jdk: oraclejdk9
127
+ - rvm: 2.6.0
128
+ jdk: openjdk8
129
+ - rvm: 2.6.0
130
+ jdk: oraclejdk8
131
+ - rvm: 2.6.0
132
+ jdk: oraclejdk9
133
+ - rvm: 2.6.3
134
+ jdk: openjdk8
135
+ - rvm: 2.6.3
90
136
  jdk: oraclejdk8
137
+ - rvm: 2.6.3
138
+ jdk: oraclejdk9
91
139
 
92
140
  - rvm: ruby-head
93
- jdk: openjdk6
94
- - rvm: ruby-head
95
- jdk: oraclejdk7
141
+ jdk: openjdk8
96
142
  - rvm: ruby-head
97
143
  jdk: oraclejdk8
144
+ - rvm: ruby-head
145
+ jdk: oraclejdk9
98
146
  - rvm: rbx
99
- jdk: openjdk6
100
- - rvm: rbx
101
- jdk: oraclejdk7
147
+ jdk: openjdk8
102
148
  - rvm: rbx
103
149
  jdk: oraclejdk8
150
+ - rvm: rbx
151
+ jdk: oraclejdk9
104
152
 
105
- # TODO: comment as to why these are excluded
106
- - rvm: 1.8.7
107
- gemfile: gemfiles/rails31.gemfile
108
- - rvm: 1.8.7
109
- gemfile: gemfiles/rails32.gemfile
110
- - rvm: 1.8.7
111
- gemfile: gemfiles/rails40.gemfile
112
- - rvm: 1.8.7
113
- gemfile: gemfiles/rails41.gemfile
114
- - rvm: 1.8.7
115
- gemfile: gemfiles/rails42.gemfile
116
- - rvm: 1.8.7
117
- gemfile: gemfiles/rails50.gemfile
118
- - rvm: 1.8.7
119
- gemfile: gemfiles/rails51.gemfile
120
- - rvm: 1.9.2
121
- gemfile: gemfiles/rails31.gemfile
122
- - rvm: 1.9.2
123
- gemfile: gemfiles/rails32.gemfile
124
- - rvm: 1.9.2
125
- gemfile: gemfiles/rails40.gemfile
126
- - rvm: 1.9.2
127
- gemfile: gemfiles/rails41.gemfile
128
- - rvm: 1.9.2
129
- gemfile: gemfiles/rails42.gemfile
130
- - rvm: 1.9.2
131
- gemfile: gemfiles/rails50.gemfile
132
- - rvm: 1.9.2
133
- gemfile: gemfiles/rails51.gemfile
153
+ # Rails 6.x requires Ruby 2.5.0 or higher
154
+ - rvm: 2.2.2
155
+ gemfile: gemfiles/rails60.gemfile
156
+ - rvm: 2.3.8
157
+ gemfile: gemfiles/rails60.gemfile
158
+ - rvm: 2.4.5
159
+ gemfile: gemfiles/rails60.gemfile
160
+ # Rails 5.x requires Ruby 2.2.2 or higher
134
161
  - rvm: 1.9.3
135
162
  gemfile: gemfiles/rails50.gemfile
136
163
  - rvm: 1.9.3
137
164
  gemfile: gemfiles/rails51.gemfile
165
+ - rvm: 1.9.3
166
+ gemfile: gemfiles/rails52.gemfile
167
+ - rvm: 1.9.3
168
+ gemfile: gemfiles/rails60.gemfile
169
+ # Rails 5.x requires Ruby 2.2.2 or higher
138
170
  - rvm: 2.0.0
139
171
  gemfile: gemfiles/rails50.gemfile
140
172
  - rvm: 2.0.0
141
173
  gemfile: gemfiles/rails51.gemfile
174
+ - rvm: 2.0.0
175
+ gemfile: gemfiles/rails52.gemfile
176
+ - rvm: 2.0.0
177
+ gemfile: gemfiles/rails60.gemfile
178
+ # Rails 5.x requires Ruby 2.2.2 or higher
142
179
  - rvm: 2.1.0
143
180
  gemfile: gemfiles/rails50.gemfile
144
181
  - rvm: 2.1.0
145
182
  gemfile: gemfiles/rails51.gemfile
183
+ - rvm: 2.1.0
184
+ gemfile: gemfiles/rails52.gemfile
185
+ - rvm: 2.1.0
186
+ gemfile: gemfiles/rails60.gemfile
187
+ # MRI 2.2.2 supports Rails 3.2.x and higher
146
188
  - rvm: 2.2.2
147
189
  gemfile: gemfiles/rails30.gemfile
148
190
  - rvm: 2.2.2
149
191
  gemfile: gemfiles/rails31.gemfile
150
- - rvm: jruby-18mode
192
+ # MRI 2.3.x supports Rails 4.0.x and higher
193
+ - rvm: 2.3.8
151
194
  gemfile: gemfiles/rails30.gemfile
152
- - rvm: jruby-18mode
195
+ - rvm: 2.3.8
153
196
  gemfile: gemfiles/rails31.gemfile
154
- - rvm: jruby-18mode
197
+ - rvm: 2.3.8
155
198
  gemfile: gemfiles/rails32.gemfile
156
- - rvm: jruby-18mode
199
+ - rvm: 2.3.8
157
200
  gemfile: gemfiles/rails40.gemfile
158
- - rvm: jruby-18mode
201
+ - rvm: 2.3.8
159
202
  gemfile: gemfiles/rails41.gemfile
160
- - rvm: jruby-18mode
203
+ # MRI 2.4.x and higher (e.g. 2.5.x, 2.6.x, etc) supports Rails 4.2.8 and higher
204
+ # Rails lower than 4.2.8 is incompatible with Ruby 2.4 Integer class
205
+ - rvm: 2.4.5
206
+ gemfile: gemfiles/rails30.gemfile
207
+ - rvm: 2.4.5
208
+ gemfile: gemfiles/rails31.gemfile
209
+ - rvm: 2.4.5
210
+ gemfile: gemfiles/rails32.gemfile
211
+ - rvm: 2.4.5
212
+ gemfile: gemfiles/rails40.gemfile
213
+ - rvm: 2.4.5
214
+ gemfile: gemfiles/rails41.gemfile
215
+ - rvm: 2.5.3
216
+ gemfile: gemfiles/rails30.gemfile
217
+ - rvm: 2.5.3
218
+ gemfile: gemfiles/rails31.gemfile
219
+ - rvm: 2.5.3
220
+ gemfile: gemfiles/rails32.gemfile
221
+ - rvm: 2.5.3
222
+ gemfile: gemfiles/rails40.gemfile
223
+ - rvm: 2.5.3
224
+ gemfile: gemfiles/rails41.gemfile
225
+ - rvm: 2.6.0
226
+ gemfile: gemfiles/rails30.gemfile
227
+ - rvm: 2.6.0
228
+ gemfile: gemfiles/rails31.gemfile
229
+ - rvm: 2.6.0
230
+ gemfile: gemfiles/rails32.gemfile
231
+ - rvm: 2.6.0
232
+ gemfile: gemfiles/rails40.gemfile
233
+ - rvm: 2.6.0
234
+ gemfile: gemfiles/rails41.gemfile
235
+ - rvm: 2.6.0
161
236
  gemfile: gemfiles/rails42.gemfile
162
- - rvm: jruby-19mode
237
+ - rvm: 2.6.3
163
238
  gemfile: gemfiles/rails30.gemfile
164
- - rvm: jruby-19mode
239
+ - rvm: 2.6.3
165
240
  gemfile: gemfiles/rails31.gemfile
166
- - rvm: jruby-19mode
241
+ - rvm: 2.6.3
167
242
  gemfile: gemfiles/rails32.gemfile
168
- - rvm: jruby-19mode
243
+ - rvm: 2.6.3
169
244
  gemfile: gemfiles/rails40.gemfile
170
- - rvm: jruby-19mode
245
+ - rvm: 2.6.3
171
246
  gemfile: gemfiles/rails41.gemfile
172
- - rvm: jruby-19mode
247
+ - rvm: 2.6.3
248
+ gemfile: gemfiles/rails42.gemfile
249
+ # JRuby JDBC Adapter is only compatible with Rails >= 5.x
250
+ - rvm: jruby-9.1.9.0
251
+ gemfile: gemfiles/rails30.gemfile
252
+ - rvm: jruby-9.1.9.0
253
+ gemfile: gemfiles/rails31.gemfile
254
+ - rvm: jruby-9.1.9.0
255
+ gemfile: gemfiles/rails32.gemfile
256
+ - rvm: jruby-9.1.9.0
257
+ gemfile: gemfiles/rails40.gemfile
258
+ - rvm: jruby-9.1.9.0
259
+ gemfile: gemfiles/rails41.gemfile
260
+ - rvm: jruby-9.1.9.0
173
261
  gemfile: gemfiles/rails42.gemfile
174
- - rvm: jruby-19mode
175
- gemfile: gemfiles/rails50.gemfile
176
- - rvm: jruby-19mode
177
- gemfile: gemfiles/rails51.gemfile
178
262
  - rvm: rbx
179
263
  gemfile: gemfiles/rails30.gemfile
180
264
  - rvm: rbx
@@ -191,3 +275,7 @@ matrix:
191
275
  gemfile: gemfiles/rails50.gemfile
192
276
  - rvm: rbx
193
277
  gemfile: gemfiles/rails51.gemfile
278
+ - rvm: rbx
279
+ gemfile: gemfiles/rails52.gemfile
280
+ - rvm: rbx
281
+ gemfile: gemfiles/rails60.gemfile
data/Appraisals CHANGED
@@ -1,19 +1,19 @@
1
- appraise "rails30" do
2
- gem "rails", "3.0.20"
1
+ appraise 'rails30' do
2
+ gem 'rails', '3.0.20'
3
3
  end
4
4
 
5
- appraise "rails31" do
6
- gem "rails", "3.1.12"
5
+ appraise 'rails31' do
6
+ gem 'rails', '3.1.12'
7
7
  end
8
8
 
9
- appraise "rails32" do
10
- gem "rails", "3.2.21"
9
+ appraise 'rails32' do
10
+ gem 'rails', '3.2.21'
11
11
  end
12
12
 
13
- appraise "rails40" do
14
- gem "rails", "4.0.13"
13
+ appraise 'rails40' do
14
+ gem 'rails', '4.0.13'
15
15
  end
16
16
 
17
- appraise "rails41" do
18
- gem "rails", "4.1.9"
17
+ appraise 'rails41' do
18
+ gem 'rails', '4.1.9'
19
19
  end