newrelic_rpm 7.0.0 → 8.8.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (320) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +3 -1
  3. data/.rubocop.yml +1941 -0
  4. data/.yardopts +1 -0
  5. data/Brewfile +10 -0
  6. data/CHANGELOG.md +431 -1
  7. data/CONTRIBUTING.md +32 -5
  8. data/DOCKER.md +167 -0
  9. data/Dockerfile +10 -0
  10. data/Guardfile +8 -8
  11. data/LICENSE +0 -6
  12. data/README.md +20 -18
  13. data/Rakefile +39 -29
  14. data/THIRD_PARTY_NOTICES.md +14 -199
  15. data/bin/mongrel_rpm +8 -9
  16. data/bin/newrelic +1 -1
  17. data/bin/nrdebug +14 -14
  18. data/docker-compose.yml +85 -0
  19. data/init.rb +0 -2
  20. data/lefthook.yml +9 -0
  21. data/lib/new_relic/agent/adaptive_sampler.rb +9 -5
  22. data/lib/new_relic/agent/agent.rb +72 -49
  23. data/lib/new_relic/agent/agent_logger.rb +15 -9
  24. data/lib/new_relic/agent/attribute_filter.rb +31 -31
  25. data/lib/new_relic/agent/attributes.rb +2 -2
  26. data/lib/new_relic/agent/audit_logger.rb +4 -0
  27. data/lib/new_relic/agent/autostart.rb +19 -17
  28. data/lib/new_relic/agent/commands/agent_command.rb +2 -2
  29. data/lib/new_relic/agent/commands/agent_command_router.rb +6 -5
  30. data/lib/new_relic/agent/commands/thread_profiler_session.rb +7 -6
  31. data/lib/new_relic/agent/configuration/default_source.rb +731 -476
  32. data/lib/new_relic/agent/configuration/dotted_hash.rb +3 -3
  33. data/lib/new_relic/agent/configuration/environment_source.rb +5 -4
  34. data/lib/new_relic/agent/configuration/event_harvest_config.rb +39 -16
  35. data/lib/new_relic/agent/configuration/high_security_source.rb +7 -7
  36. data/lib/new_relic/agent/configuration/manager.rb +74 -64
  37. data/lib/new_relic/agent/configuration/mask_defaults.rb +1 -1
  38. data/lib/new_relic/agent/configuration/security_policy_source.rb +73 -73
  39. data/lib/new_relic/agent/configuration/server_source.rb +14 -12
  40. data/lib/new_relic/agent/configuration/yaml_source.rb +26 -5
  41. data/lib/new_relic/agent/connect/request_builder.rb +14 -15
  42. data/lib/new_relic/agent/connect/response_handler.rb +0 -3
  43. data/lib/new_relic/agent/custom_event_aggregator.rb +9 -9
  44. data/lib/new_relic/agent/database/explain_plan_helpers.rb +3 -4
  45. data/lib/new_relic/agent/database/obfuscation_helpers.rb +12 -12
  46. data/lib/new_relic/agent/database/postgres_explain_obfuscator.rb +2 -2
  47. data/lib/new_relic/agent/database.rb +30 -31
  48. data/lib/new_relic/agent/datastores/metric_helper.rb +13 -11
  49. data/lib/new_relic/agent/datastores/mongo/event_formatter.rb +2 -3
  50. data/lib/new_relic/agent/datastores/mongo/metric_translator.rb +3 -5
  51. data/lib/new_relic/agent/datastores/mongo/obfuscator.rb +1 -2
  52. data/lib/new_relic/agent/datastores/mongo.rb +5 -10
  53. data/lib/new_relic/agent/datastores/redis.rb +2 -4
  54. data/lib/new_relic/agent/datastores.rb +7 -9
  55. data/lib/new_relic/agent/distributed_tracing/cross_app_payload.rb +9 -9
  56. data/lib/new_relic/agent/distributed_tracing/cross_app_tracing.rb +21 -16
  57. data/lib/new_relic/agent/distributed_tracing/distributed_trace_attributes.rb +10 -12
  58. data/lib/new_relic/agent/distributed_tracing/distributed_trace_payload.rb +42 -43
  59. data/lib/new_relic/agent/distributed_tracing/distributed_trace_transport_type.rb +3 -3
  60. data/lib/new_relic/agent/distributed_tracing/trace_context.rb +41 -43
  61. data/lib/new_relic/agent/distributed_tracing/trace_context_payload.rb +25 -25
  62. data/lib/new_relic/agent/distributed_tracing.rb +17 -18
  63. data/lib/new_relic/agent/encoding_normalizer.rb +1 -1
  64. data/lib/new_relic/agent/error_collector.rb +65 -50
  65. data/lib/new_relic/agent/error_event_aggregator.rb +1 -1
  66. data/lib/new_relic/agent/error_filter.rb +173 -0
  67. data/lib/new_relic/agent/error_trace_aggregator.rb +1 -1
  68. data/lib/new_relic/agent/event_aggregator.rb +1 -1
  69. data/lib/new_relic/agent/event_buffer.rb +6 -7
  70. data/lib/new_relic/agent/event_listener.rb +0 -1
  71. data/lib/new_relic/agent/event_loop.rb +14 -14
  72. data/lib/new_relic/agent/external.rb +1 -34
  73. data/lib/new_relic/agent/guid_generator.rb +2 -9
  74. data/lib/new_relic/agent/harvester.rb +3 -4
  75. data/lib/new_relic/agent/heap.rb +1 -3
  76. data/lib/new_relic/agent/hostname.rb +16 -10
  77. data/lib/new_relic/agent/http_clients/abstract.rb +7 -9
  78. data/lib/new_relic/agent/http_clients/curb_wrappers.rb +1 -5
  79. data/lib/new_relic/agent/http_clients/excon_wrappers.rb +4 -4
  80. data/lib/new_relic/agent/http_clients/http_rb_wrappers.rb +3 -3
  81. data/lib/new_relic/agent/http_clients/httpclient_wrappers.rb +1 -2
  82. data/lib/new_relic/agent/http_clients/net_http_wrappers.rb +8 -3
  83. data/lib/new_relic/agent/http_clients/typhoeus_wrappers.rb +2 -3
  84. data/lib/new_relic/agent/http_clients/uri_util.rb +0 -1
  85. data/lib/new_relic/agent/instrumentation/action_cable_subscriber.rb +2 -3
  86. data/lib/new_relic/agent/instrumentation/action_controller_subscriber.rb +28 -26
  87. data/lib/new_relic/agent/instrumentation/action_view_subscriber.rb +5 -7
  88. data/lib/new_relic/agent/instrumentation/active_job.rb +12 -5
  89. data/lib/new_relic/agent/instrumentation/active_merchant.rb +17 -3
  90. data/lib/new_relic/agent/instrumentation/active_record.rb +20 -18
  91. data/lib/new_relic/agent/instrumentation/active_record_helper.rb +56 -46
  92. data/lib/new_relic/agent/instrumentation/active_record_notifications.rb +28 -25
  93. data/lib/new_relic/agent/instrumentation/active_record_prepend.rb +3 -3
  94. data/lib/new_relic/agent/instrumentation/active_record_subscriber.rb +22 -16
  95. data/lib/new_relic/agent/instrumentation/active_storage.rb +1 -1
  96. data/lib/new_relic/agent/instrumentation/active_support_logger/chain.rb +23 -0
  97. data/lib/new_relic/agent/instrumentation/active_support_logger/instrumentation.rb +20 -0
  98. data/lib/new_relic/agent/instrumentation/active_support_logger/prepend.rb +12 -0
  99. data/lib/new_relic/agent/instrumentation/active_support_logger.rb +24 -0
  100. data/lib/new_relic/agent/instrumentation/acts_as_solr.rb +18 -9
  101. data/lib/new_relic/agent/instrumentation/authlogic.rb +10 -0
  102. data/lib/new_relic/agent/instrumentation/bunny/chain.rb +1 -1
  103. data/lib/new_relic/agent/instrumentation/bunny/instrumentation.rb +8 -9
  104. data/lib/new_relic/agent/instrumentation/controller_instrumentation.rb +52 -46
  105. data/lib/new_relic/agent/instrumentation/curb/chain.rb +20 -21
  106. data/lib/new_relic/agent/instrumentation/curb/instrumentation.rb +34 -38
  107. data/lib/new_relic/agent/instrumentation/curb/prepend.rb +10 -11
  108. data/lib/new_relic/agent/instrumentation/data_mapper.rb +22 -10
  109. data/lib/new_relic/agent/instrumentation/delayed_job/chain.rb +5 -7
  110. data/lib/new_relic/agent/instrumentation/delayed_job/instrumentation.rb +5 -9
  111. data/lib/new_relic/agent/instrumentation/delayed_job_instrumentation.rb +23 -4
  112. data/lib/new_relic/agent/instrumentation/excon/middleware.rb +2 -2
  113. data/lib/new_relic/agent/instrumentation/excon.rb +3 -23
  114. data/lib/new_relic/agent/instrumentation/grape/chain.rb +1 -2
  115. data/lib/new_relic/agent/instrumentation/grape/instrumentation.rb +6 -7
  116. data/lib/new_relic/agent/instrumentation/grape.rb +2 -3
  117. data/lib/new_relic/agent/instrumentation/httpclient/chain.rb +2 -3
  118. data/lib/new_relic/agent/instrumentation/httpclient/instrumentation.rb +0 -1
  119. data/lib/new_relic/agent/instrumentation/httpclient/prepend.rb +0 -2
  120. data/lib/new_relic/agent/instrumentation/httprb/chain.rb +2 -2
  121. data/lib/new_relic/agent/instrumentation/httprb/instrumentation.rb +6 -6
  122. data/lib/new_relic/agent/instrumentation/httprb/prepend.rb +1 -1
  123. data/lib/new_relic/agent/instrumentation/ignore_actions.rb +2 -3
  124. data/lib/new_relic/agent/instrumentation/logger/chain.rb +21 -0
  125. data/lib/new_relic/agent/instrumentation/logger/instrumentation.rb +58 -0
  126. data/lib/new_relic/agent/instrumentation/logger/prepend.rb +13 -0
  127. data/lib/new_relic/agent/instrumentation/logger.rb +26 -0
  128. data/lib/new_relic/agent/instrumentation/memcache/dalli.rb +7 -2
  129. data/lib/new_relic/agent/instrumentation/memcache/helper.rb +5 -1
  130. data/lib/new_relic/agent/instrumentation/memcache/prepend.rb +9 -2
  131. data/lib/new_relic/agent/instrumentation/middleware_proxy.rb +9 -10
  132. data/lib/new_relic/agent/instrumentation/middleware_tracing.rb +5 -6
  133. data/lib/new_relic/agent/instrumentation/mongo.rb +3 -141
  134. data/lib/new_relic/agent/instrumentation/mongodb_command_subscriber.rb +4 -4
  135. data/lib/new_relic/agent/instrumentation/net_http/chain.rb +3 -4
  136. data/lib/new_relic/agent/instrumentation/net_http/instrumentation.rb +5 -5
  137. data/lib/new_relic/agent/instrumentation/net_http/prepend.rb +4 -4
  138. data/lib/new_relic/agent/instrumentation/net_http.rb +7 -2
  139. data/lib/new_relic/agent/instrumentation/notifications_subscriber.rb +2 -3
  140. data/lib/new_relic/agent/instrumentation/padrino/chain.rb +23 -19
  141. data/lib/new_relic/agent/instrumentation/padrino/instrumentation.rb +3 -2
  142. data/lib/new_relic/agent/instrumentation/padrino/prepend.rb +2 -2
  143. data/lib/new_relic/agent/instrumentation/padrino.rb +2 -5
  144. data/lib/new_relic/agent/instrumentation/queue_time.rb +8 -8
  145. data/lib/new_relic/agent/instrumentation/rack/chain.rb +8 -7
  146. data/lib/new_relic/agent/instrumentation/rack/helpers.rb +2 -1
  147. data/lib/new_relic/agent/instrumentation/rack/instrumentation.rb +4 -5
  148. data/lib/new_relic/agent/instrumentation/rack/prepend.rb +2 -2
  149. data/lib/new_relic/agent/instrumentation/rack.rb +1 -1
  150. data/lib/new_relic/agent/instrumentation/rails3/action_controller.rb +11 -47
  151. data/lib/new_relic/agent/instrumentation/rails_notifications/action_cable.rb +2 -2
  152. data/lib/new_relic/agent/instrumentation/rails_notifications/action_controller.rb +0 -1
  153. data/lib/new_relic/agent/instrumentation/rainbows_instrumentation.rb +11 -0
  154. data/lib/new_relic/agent/instrumentation/rake/chain.rb +0 -5
  155. data/lib/new_relic/agent/instrumentation/rake/instrumentation.rb +6 -6
  156. data/lib/new_relic/agent/instrumentation/rake.rb +1 -1
  157. data/lib/new_relic/agent/instrumentation/redis/chain.rb +6 -6
  158. data/lib/new_relic/agent/instrumentation/redis/instrumentation.rb +2 -2
  159. data/lib/new_relic/agent/instrumentation/redis/prepend.rb +1 -1
  160. data/lib/new_relic/agent/instrumentation/redis.rb +5 -1
  161. data/lib/new_relic/agent/instrumentation/resque/chain.rb +2 -3
  162. data/lib/new_relic/agent/instrumentation/resque/helper.rb +19 -0
  163. data/lib/new_relic/agent/instrumentation/resque/instrumentation.rb +9 -7
  164. data/lib/new_relic/agent/instrumentation/resque/prepend.rb +1 -2
  165. data/lib/new_relic/agent/instrumentation/resque.rb +17 -8
  166. data/lib/new_relic/agent/instrumentation/sequel.rb +7 -9
  167. data/lib/new_relic/agent/instrumentation/sequel_helper.rb +1 -1
  168. data/lib/new_relic/agent/instrumentation/sidekiq.rb +22 -1
  169. data/lib/new_relic/agent/instrumentation/sinatra/ignorer.rb +0 -1
  170. data/lib/new_relic/agent/instrumentation/sinatra/instrumentation.rb +12 -5
  171. data/lib/new_relic/agent/instrumentation/sinatra.rb +21 -11
  172. data/lib/new_relic/agent/instrumentation/sunspot.rb +11 -1
  173. data/lib/new_relic/agent/instrumentation/thread/chain.rb +24 -0
  174. data/lib/new_relic/agent/instrumentation/thread/instrumentation.rb +27 -0
  175. data/lib/new_relic/agent/instrumentation/thread/prepend.rb +22 -0
  176. data/lib/new_relic/agent/instrumentation/thread.rb +20 -0
  177. data/lib/new_relic/agent/instrumentation/tilt/chain.rb +24 -0
  178. data/lib/new_relic/agent/instrumentation/tilt/instrumentation.rb +40 -0
  179. data/lib/new_relic/agent/instrumentation/tilt/prepend.rb +13 -0
  180. data/lib/new_relic/agent/instrumentation/tilt.rb +25 -0
  181. data/lib/new_relic/agent/instrumentation/typhoeus/chain.rb +4 -4
  182. data/lib/new_relic/agent/instrumentation/typhoeus/instrumentation.rb +3 -5
  183. data/lib/new_relic/agent/instrumentation/typhoeus/prepend.rb +1 -1
  184. data/lib/new_relic/agent/internal_agent_error.rb +1 -1
  185. data/lib/new_relic/agent/javascript_instrumentor.rb +38 -33
  186. data/lib/new_relic/agent/linking_metadata.rb +45 -0
  187. data/lib/new_relic/agent/local_log_decorator.rb +37 -0
  188. data/lib/new_relic/agent/log_event_aggregator.rb +234 -0
  189. data/lib/new_relic/agent/log_priority.rb +20 -0
  190. data/lib/new_relic/agent/logging.rb +11 -8
  191. data/lib/new_relic/agent/memory_logger.rb +1 -1
  192. data/lib/new_relic/agent/messaging.rb +46 -62
  193. data/lib/new_relic/agent/method_tracer.rb +145 -144
  194. data/lib/new_relic/agent/method_tracer_helpers.rb +82 -2
  195. data/lib/new_relic/agent/monitors/cross_app_monitor.rb +21 -13
  196. data/lib/new_relic/agent/monitors/distributed_tracing_monitor.rb +2 -2
  197. data/lib/new_relic/agent/monitors/inbound_request_monitor.rb +0 -1
  198. data/lib/new_relic/agent/monitors/synthetics_monitor.rb +4 -7
  199. data/lib/new_relic/agent/monitors.rb +1 -2
  200. data/lib/new_relic/agent/new_relic_service/encoders.rb +4 -4
  201. data/lib/new_relic/agent/new_relic_service/json_marshaller.rb +1 -1
  202. data/lib/new_relic/agent/new_relic_service/marshaller.rb +1 -1
  203. data/lib/new_relic/agent/new_relic_service/security_policy_settings.rb +4 -3
  204. data/lib/new_relic/agent/new_relic_service.rb +61 -53
  205. data/lib/new_relic/agent/noticible_error.rb +0 -2
  206. data/lib/new_relic/agent/null_logger.rb +6 -2
  207. data/lib/new_relic/agent/obfuscator.rb +6 -8
  208. data/lib/new_relic/agent/parameter_filtering.rb +16 -8
  209. data/lib/new_relic/agent/payload_metric_mapping.rb +8 -9
  210. data/lib/new_relic/agent/pipe_channel_manager.rb +15 -12
  211. data/lib/new_relic/agent/pipe_service.rb +6 -3
  212. data/lib/new_relic/agent/priority_sampled_buffer.rb +4 -7
  213. data/lib/new_relic/agent/rules_engine/replacement_rule.rb +9 -9
  214. data/lib/new_relic/agent/rules_engine/segment_terms_rule.rb +12 -12
  215. data/lib/new_relic/agent/rules_engine.rb +2 -2
  216. data/lib/new_relic/agent/sampler.rb +2 -3
  217. data/lib/new_relic/agent/sampler_collection.rb +2 -3
  218. data/lib/new_relic/agent/samplers/cpu_sampler.rb +1 -1
  219. data/lib/new_relic/agent/samplers/delayed_job_sampler.rb +10 -7
  220. data/lib/new_relic/agent/samplers/memory_sampler.rb +9 -3
  221. data/lib/new_relic/agent/samplers/vm_sampler.rb +18 -18
  222. data/lib/new_relic/agent/span_event_aggregator.rb +10 -10
  223. data/lib/new_relic/agent/span_event_primitive.rb +48 -45
  224. data/lib/new_relic/agent/sql_sampler.rb +9 -9
  225. data/lib/new_relic/agent/stats.rb +62 -37
  226. data/lib/new_relic/agent/stats_engine/gc_profiler.rb +7 -9
  227. data/lib/new_relic/agent/stats_engine/stats_hash.rb +8 -9
  228. data/lib/new_relic/agent/stats_engine.rb +7 -7
  229. data/lib/new_relic/agent/synthetics_event_aggregator.rb +1 -2
  230. data/lib/new_relic/agent/system_info.rb +22 -20
  231. data/lib/new_relic/agent/threading/agent_thread.rb +4 -5
  232. data/lib/new_relic/agent/threading/backtrace_node.rb +6 -9
  233. data/lib/new_relic/agent/threading/backtrace_service.rb +12 -13
  234. data/lib/new_relic/agent/threading/thread_profile.rb +16 -19
  235. data/lib/new_relic/agent/tracer.rb +57 -72
  236. data/lib/new_relic/agent/transaction/abstract_segment.rb +38 -10
  237. data/lib/new_relic/agent/transaction/datastore_segment.rb +7 -6
  238. data/lib/new_relic/agent/transaction/distributed_tracer.rb +8 -9
  239. data/lib/new_relic/agent/transaction/distributed_tracing.rb +21 -22
  240. data/lib/new_relic/agent/transaction/external_request_segment.rb +6 -5
  241. data/lib/new_relic/agent/transaction/message_broker_segment.rb +24 -30
  242. data/lib/new_relic/agent/transaction/request_attributes.rb +7 -7
  243. data/lib/new_relic/agent/transaction/segment.rb +6 -3
  244. data/lib/new_relic/agent/transaction/slowest_sample_buffer.rb +0 -2
  245. data/lib/new_relic/agent/transaction/trace.rb +8 -8
  246. data/lib/new_relic/agent/transaction/trace_context.rb +14 -16
  247. data/lib/new_relic/agent/transaction/trace_node.rb +16 -16
  248. data/lib/new_relic/agent/transaction/tracing.rb +9 -6
  249. data/lib/new_relic/agent/transaction/transaction_sample_buffer.rb +1 -2
  250. data/lib/new_relic/agent/transaction.rb +132 -119
  251. data/lib/new_relic/agent/transaction_error_primitive.rb +18 -16
  252. data/lib/new_relic/agent/transaction_event_aggregator.rb +7 -8
  253. data/lib/new_relic/agent/transaction_event_primitive.rb +29 -29
  254. data/lib/new_relic/agent/transaction_event_recorder.rb +1 -1
  255. data/lib/new_relic/agent/transaction_metrics.rb +8 -7
  256. data/lib/new_relic/agent/transaction_sampler.rb +0 -1
  257. data/lib/new_relic/agent/transaction_time_aggregator.rb +11 -11
  258. data/lib/new_relic/agent/utilization/aws.rb +32 -2
  259. data/lib/new_relic/agent/utilization/azure.rb +1 -1
  260. data/lib/new_relic/agent/utilization/vendor.rb +15 -2
  261. data/lib/new_relic/agent/utilization_data.rb +3 -4
  262. data/lib/new_relic/agent/vm/monotonic_gc_profiler.rb +1 -1
  263. data/lib/new_relic/agent/vm/mri_vm.rb +13 -1
  264. data/lib/new_relic/agent/vm/snapshot.rb +4 -4
  265. data/lib/new_relic/agent/worker_loop.rb +8 -10
  266. data/lib/new_relic/agent.rb +36 -41
  267. data/lib/new_relic/cli/command.rb +15 -17
  268. data/lib/new_relic/cli/commands/deployments.rb +21 -23
  269. data/lib/new_relic/cli/commands/install.rb +6 -10
  270. data/lib/new_relic/coerce.rb +5 -8
  271. data/lib/new_relic/collection_helper.rb +48 -47
  272. data/lib/new_relic/constants.rb +0 -4
  273. data/lib/new_relic/control/class_methods.rb +2 -2
  274. data/lib/new_relic/control/frameworks/external.rb +1 -1
  275. data/lib/new_relic/control/frameworks/rails.rb +5 -6
  276. data/lib/new_relic/control/frameworks/rails3.rb +2 -3
  277. data/lib/new_relic/control/frameworks/ruby.rb +2 -2
  278. data/lib/new_relic/control/frameworks/sinatra.rb +6 -0
  279. data/lib/new_relic/control/instance_methods.rb +4 -5
  280. data/lib/new_relic/control/instrumentation.rb +35 -5
  281. data/lib/new_relic/control/server_methods.rb +2 -3
  282. data/lib/new_relic/control.rb +0 -1
  283. data/lib/new_relic/dependency_detection.rb +7 -9
  284. data/lib/new_relic/environment_report.rb +16 -18
  285. data/lib/new_relic/helper.rb +45 -5
  286. data/lib/new_relic/language_support.rb +20 -2
  287. data/lib/new_relic/latest_changes.rb +2 -2
  288. data/lib/new_relic/local_environment.rb +9 -7
  289. data/lib/new_relic/metric_data.rb +6 -7
  290. data/lib/new_relic/metric_spec.rb +3 -3
  291. data/lib/new_relic/noticed_error.rb +18 -19
  292. data/lib/new_relic/rack/agent_middleware.rb +2 -2
  293. data/lib/new_relic/rack/browser_monitoring.rb +9 -9
  294. data/lib/new_relic/recipes/capistrano3.rb +11 -13
  295. data/lib/new_relic/recipes/capistrano_legacy.rb +11 -14
  296. data/lib/new_relic/supportability_helper.rb +2 -2
  297. data/lib/new_relic/traced_thread.rb +35 -0
  298. data/lib/new_relic/version.rb +5 -16
  299. data/lib/newrelic_rpm.rb +10 -34
  300. data/lib/sequel/extensions/newrelic_instrumentation.rb +4 -7
  301. data/lib/sequel/plugins/newrelic_instrumentation.rb +3 -9
  302. data/lib/tasks/all.rb +2 -2
  303. data/lib/tasks/config.html.erb +14 -25
  304. data/lib/tasks/config.rake +36 -27
  305. data/lib/tasks/multiverse.rb +4 -6
  306. data/lib/tasks/tests.rake +3 -7
  307. data/newrelic.yml +610 -3
  308. data/newrelic_rpm.gemspec +14 -14
  309. data/recipes/newrelic.rb +1 -1
  310. data/test/agent_helper.rb +98 -59
  311. metadata +69 -20
  312. data/ROADMAP.md +0 -24
  313. data/lib/new_relic/agent/datastores/mongo/statement_formatter.rb +0 -53
  314. data/lib/new_relic/agent/instrumentation/excon/connection.rb +0 -49
  315. data/lib/new_relic/agent/instrumentation/merb/controller.rb +0 -44
  316. data/lib/new_relic/agent/instrumentation/merb/errors.rb +0 -33
  317. data/lib/new_relic/agent/instrumentation/rails/action_controller.rb +0 -125
  318. data/lib/new_relic/agent/instrumentation/rails/action_web_service.rb +0 -46
  319. data/lib/new_relic/agent/supported_versions.rb +0 -275
  320. data/lib/new_relic/control/frameworks/merb.rb +0 -29
data/.rubocop.yml ADDED
@@ -0,0 +1,1941 @@
1
+ require:
2
+ - rubocop-performance
3
+
4
+ AllCops:
5
+ # Prevent RuboCop from exploding when it finds an older-than-2.4 .ruby-version
6
+ TargetRubyVersion: 2.7
7
+ Exclude: []
8
+
9
+ Bundler/DuplicatedGem:
10
+ Enabled: true
11
+ Include:
12
+ - '**/*.gemfile'
13
+ - '**/Gemfile'
14
+ - '**/gems.rb'
15
+ - '**/*.gemspec'
16
+
17
+ Bundler/GemComment:
18
+ Enabled: false
19
+
20
+ Bundler/GemFilename:
21
+ Enabled: false
22
+
23
+ Bundler/GemVersion:
24
+ Enabled: false
25
+
26
+ Bundler/InsecureProtocolSource:
27
+ Enabled: true
28
+ Include:
29
+ - '**/*.gemfile'
30
+ - '**/Gemfile'
31
+ - '**/gems.rb'
32
+
33
+ Bundler/OrderedGems:
34
+ Enabled: false
35
+
36
+ Gemspec/DateAssignment:
37
+ Enabled: true
38
+
39
+ Gemspec/DuplicatedAssignment:
40
+ Enabled: true
41
+ Include:
42
+ - '**/*.gemspec'
43
+
44
+ Gemspec/OrderedDependencies:
45
+ Enabled: false
46
+
47
+ Gemspec/RequiredRubyVersion:
48
+ Enabled: false
49
+
50
+ Gemspec/RubyVersionGlobalsUsage:
51
+ Enabled: false
52
+
53
+ Layout/AccessModifierIndentation:
54
+ Enabled: true
55
+ EnforcedStyle: indent
56
+ IndentationWidth: ~
57
+
58
+ Layout/ArgumentAlignment:
59
+ Enabled: true
60
+ EnforcedStyle: with_fixed_indentation
61
+
62
+ Layout/ArrayAlignment:
63
+ Enabled: true
64
+ EnforcedStyle: with_fixed_indentation
65
+
66
+ Layout/AssignmentIndentation:
67
+ Enabled: true
68
+ IndentationWidth: ~
69
+
70
+ Layout/BeginEndAlignment:
71
+ Enabled: true
72
+ EnforcedStyleAlignWith: start_of_line
73
+ AutoCorrect: true
74
+ Severity: warning
75
+
76
+ Layout/BlockAlignment:
77
+ Enabled: true
78
+ EnforcedStyleAlignWith: either
79
+
80
+ Layout/BlockEndNewline:
81
+ Enabled: true
82
+
83
+ Layout/CaseIndentation:
84
+ # Disabled because IndentOneStep can't be configured for one-liner cases. See:
85
+ # https://github.com/rubocop-hq/rubocop/issues/6447
86
+ Enabled: false
87
+
88
+ Layout/ClassStructure:
89
+ Enabled: false
90
+
91
+ Layout/ClosingHeredocIndentation:
92
+ Enabled: true
93
+
94
+ Layout/ClosingParenthesisIndentation:
95
+ Enabled: true
96
+
97
+ Layout/CommentIndentation:
98
+ Enabled: true
99
+
100
+ # Disabling for now
101
+ Layout/ConditionPosition:
102
+ Enabled: false
103
+
104
+ Layout/DefEndAlignment:
105
+ Enabled: true
106
+ EnforcedStyleAlignWith: start_of_line
107
+ AutoCorrect: true
108
+ Severity: warning
109
+
110
+ Layout/DotPosition:
111
+ Enabled: true
112
+ EnforcedStyle: leading
113
+
114
+ Layout/ElseAlignment:
115
+ Enabled: true
116
+
117
+ Layout/EmptyComment:
118
+ Enabled: true
119
+ AllowBorderComment: true
120
+ AllowMarginComment: true
121
+
122
+ Layout/EmptyLineAfterGuardClause:
123
+ Enabled: false
124
+
125
+ # Disabling for now
126
+ Layout/EmptyLineAfterMagicComment:
127
+ Enabled: false
128
+
129
+ Layout/EmptyLineAfterMultilineCondition:
130
+ Enabled: false
131
+
132
+ # Disabling for now
133
+ Layout/EmptyLineBetweenDefs:
134
+ Enabled: false
135
+ # AllowAdjacentOneLineDefs: false
136
+ # NumberOfEmptyLines: 1
137
+
138
+ Layout/EmptyLines:
139
+ Enabled: true
140
+
141
+ Layout/EmptyLinesAroundAccessModifier:
142
+ Enabled: true
143
+
144
+ Layout/EmptyLinesAroundArguments:
145
+ Enabled: true
146
+
147
+ Layout/EmptyLinesAroundAttributeAccessor:
148
+ Enabled: false
149
+
150
+ Layout/EmptyLinesAroundBeginBody:
151
+ Enabled: true
152
+
153
+ Layout/EmptyLinesAroundBlockBody:
154
+ Enabled: true
155
+ EnforcedStyle: no_empty_lines
156
+
157
+ Layout/EmptyLinesAroundClassBody:
158
+ Enabled: true
159
+ EnforcedStyle: no_empty_lines
160
+
161
+ Layout/EmptyLinesAroundExceptionHandlingKeywords:
162
+ Enabled: true
163
+
164
+ Layout/EmptyLinesAroundMethodBody:
165
+ Enabled: true
166
+
167
+ Layout/EmptyLinesAroundModuleBody:
168
+ Enabled: true
169
+ EnforcedStyle: no_empty_lines
170
+
171
+ Layout/EndAlignment:
172
+ Enabled: true
173
+ AutoCorrect: true
174
+ EnforcedStyleAlignWith: variable
175
+ Severity: warning
176
+
177
+ Layout/EndOfLine:
178
+ Enabled: true
179
+ EnforcedStyle: native
180
+
181
+ Layout/ExtraSpacing:
182
+ Enabled: true
183
+ AllowForAlignment: false
184
+ AllowBeforeTrailingComments: false
185
+ ForceEqualSignAlignment: false
186
+
187
+ Layout/FirstArgumentIndentation:
188
+ Enabled: true
189
+ EnforcedStyle: consistent
190
+ IndentationWidth: ~
191
+
192
+ Layout/FirstArrayElementIndentation:
193
+ Enabled: true
194
+ EnforcedStyle: consistent
195
+ IndentationWidth: ~
196
+
197
+ Layout/FirstArrayElementLineBreak:
198
+ Enabled: false
199
+
200
+ Layout/FirstHashElementIndentation:
201
+ Enabled: true
202
+ EnforcedStyle: consistent
203
+ IndentationWidth: ~
204
+
205
+ Layout/FirstHashElementLineBreak:
206
+ Enabled: false
207
+
208
+ Layout/FirstMethodArgumentLineBreak:
209
+ Enabled: false
210
+
211
+ Layout/FirstMethodParameterLineBreak:
212
+ Enabled: false
213
+
214
+ Layout/FirstParameterIndentation:
215
+ Enabled: false
216
+
217
+ Layout/HashAlignment:
218
+ Enabled: true
219
+ EnforcedHashRocketStyle: key
220
+ EnforcedColonStyle: key
221
+ EnforcedLastArgumentHashStyle: always_inspect
222
+
223
+ Layout/HeredocArgumentClosingParenthesis:
224
+ Enabled: false
225
+
226
+ # Disabling for now
227
+ Layout/HeredocIndentation:
228
+ Enabled: false
229
+
230
+ Layout/IndentationConsistency:
231
+ Enabled: true
232
+ EnforcedStyle: normal
233
+
234
+ Layout/IndentationStyle:
235
+ Enabled: true
236
+ IndentationWidth: ~
237
+
238
+ Layout/IndentationWidth:
239
+ Enabled: true
240
+ Width: 2
241
+ IgnoredPatterns: []
242
+
243
+ Layout/InitialIndentation:
244
+ Enabled: true
245
+
246
+ Layout/LeadingCommentSpace:
247
+ Enabled: true
248
+
249
+ Layout/LeadingEmptyLines:
250
+ Enabled: true
251
+
252
+ Layout/LineEndStringConcatenationIndentation:
253
+ Enabled: false
254
+
255
+ Layout/LineLength:
256
+ Enabled: false
257
+
258
+ Layout/MultilineArrayBraceLayout:
259
+ Enabled: true
260
+ EnforcedStyle: symmetrical
261
+
262
+ Layout/MultilineArrayLineBreaks:
263
+ Enabled: false
264
+
265
+ Layout/MultilineAssignmentLayout:
266
+ Enabled: false
267
+
268
+ Layout/MultilineBlockLayout:
269
+ Enabled: true
270
+
271
+ Layout/MultilineHashBraceLayout:
272
+ Enabled: true
273
+ EnforcedStyle: symmetrical
274
+
275
+ Layout/MultilineHashKeyLineBreaks:
276
+ Enabled: false
277
+
278
+ Layout/MultilineMethodArgumentLineBreaks:
279
+ Enabled: false
280
+
281
+ Layout/MultilineMethodCallBraceLayout:
282
+ Enabled: true
283
+ EnforcedStyle: symmetrical
284
+
285
+ Layout/MultilineMethodCallIndentation:
286
+ Enabled: true
287
+ EnforcedStyle: indented
288
+ IndentationWidth: ~
289
+
290
+ Layout/MultilineMethodDefinitionBraceLayout:
291
+ Enabled: true
292
+ EnforcedStyle: symmetrical
293
+
294
+ Layout/MultilineOperationIndentation:
295
+ Enabled: true
296
+ EnforcedStyle: indented
297
+ IndentationWidth: ~
298
+
299
+ Layout/ParameterAlignment:
300
+ Enabled: true
301
+ EnforcedStyle: with_fixed_indentation
302
+ IndentationWidth: ~
303
+
304
+ Layout/RedundantLineBreak:
305
+ Enabled: false
306
+
307
+ Layout/RescueEnsureAlignment:
308
+ Enabled: true
309
+
310
+ Layout/SingleLineBlockChain:
311
+ Enabled: false
312
+
313
+ Layout/SpaceAfterColon:
314
+ Enabled: true
315
+
316
+ Layout/SpaceAfterComma:
317
+ Enabled: true
318
+
319
+ Layout/SpaceAfterMethodName:
320
+ Enabled: true
321
+
322
+ Layout/SpaceAfterNot:
323
+ Enabled: true
324
+
325
+ Layout/SpaceAfterSemicolon:
326
+ Enabled: true
327
+
328
+ Layout/SpaceAroundBlockParameters:
329
+ Enabled: true
330
+ EnforcedStyleInsidePipes: no_space
331
+
332
+ Layout/SpaceAroundEqualsInParameterDefault:
333
+ Enabled: true
334
+ EnforcedStyle: space
335
+
336
+ Layout/SpaceAroundKeyword:
337
+ Enabled: true
338
+
339
+ Layout/SpaceAroundMethodCallOperator:
340
+ Enabled: true
341
+
342
+ Layout/SpaceAroundOperators:
343
+ Enabled: true
344
+ AllowForAlignment: true
345
+
346
+ Layout/SpaceBeforeBlockBraces:
347
+ Enabled: true
348
+ EnforcedStyle: space
349
+ EnforcedStyleForEmptyBraces: space
350
+
351
+ Layout/SpaceBeforeBrackets:
352
+ Enabled: false
353
+
354
+ Layout/SpaceBeforeComma:
355
+ Enabled: true
356
+
357
+ Layout/SpaceBeforeComment:
358
+ Enabled: true
359
+
360
+ Layout/SpaceBeforeFirstArg:
361
+ Enabled: true
362
+ AllowForAlignment: true
363
+
364
+ Layout/SpaceBeforeSemicolon:
365
+ Enabled: true
366
+
367
+ # Disabling for now
368
+ Layout/SpaceInLambdaLiteral:
369
+ Enabled: false
370
+ # EnforcedStyle: require_no_space
371
+
372
+ Layout/SpaceInsideArrayLiteralBrackets:
373
+ Enabled: true
374
+ EnforcedStyle: no_space
375
+ EnforcedStyleForEmptyBrackets: no_space
376
+
377
+ Layout/SpaceInsideArrayPercentLiteral:
378
+ Enabled: true
379
+
380
+ Layout/SpaceInsideBlockBraces:
381
+ Enabled: true
382
+ EnforcedStyle: space
383
+ EnforcedStyleForEmptyBraces: no_space
384
+ SpaceBeforeBlockParameters: true
385
+
386
+ Layout/SpaceInsideHashLiteralBraces:
387
+ Enabled: true
388
+ EnforcedStyle: no_space
389
+ EnforcedStyleForEmptyBraces: no_space
390
+
391
+ Layout/SpaceInsideParens:
392
+ Enabled: true
393
+ EnforcedStyle: no_space
394
+
395
+ # Disabling for now
396
+ Layout/SpaceInsidePercentLiteralDelimiters:
397
+ Enabled: false
398
+
399
+ Layout/SpaceInsideRangeLiteral:
400
+ Enabled: true
401
+
402
+ Layout/SpaceInsideReferenceBrackets:
403
+ Enabled: true
404
+ EnforcedStyle: no_space
405
+ EnforcedStyleForEmptyBrackets: no_space
406
+
407
+ Layout/SpaceInsideStringInterpolation:
408
+ Enabled: true
409
+ EnforcedStyle: no_space
410
+
411
+ Layout/TrailingEmptyLines:
412
+ Enabled: true
413
+ EnforcedStyle: final_newline
414
+
415
+ Layout/TrailingWhitespace:
416
+ Enabled: true
417
+ AllowInHeredoc: true
418
+
419
+ Lint/AmbiguousAssignment:
420
+ Enabled: true
421
+
422
+ Lint/AmbiguousBlockAssociation:
423
+ Enabled: false
424
+
425
+ # Disabling for now
426
+ Lint/AmbiguousOperator:
427
+ Enabled: false
428
+
429
+ Lint/AmbiguousOperatorPrecedence:
430
+ Enabled: false
431
+
432
+ Lint/AmbiguousRange:
433
+ Enabled: false
434
+
435
+ # Disabling for now
436
+ Lint/AmbiguousRegexpLiteral:
437
+ Enabled: false
438
+
439
+ # Disabling for now
440
+ Lint/AssignmentInCondition:
441
+ Enabled: false
442
+ # AllowSafeAssignment: true
443
+
444
+ Lint/BigDecimalNew:
445
+ Enabled: true
446
+
447
+ # Disabling for now
448
+ Lint/BinaryOperatorWithIdenticalOperands:
449
+ Enabled: false
450
+
451
+ # Disabling for now
452
+ Lint/BooleanSymbol:
453
+ Enabled: false
454
+
455
+ Lint/CircularArgumentReference:
456
+ Enabled: true
457
+
458
+ # Disabling for now
459
+ Lint/ConstantDefinitionInBlock:
460
+ Enabled: false
461
+
462
+ Lint/ConstantResolution:
463
+ Enabled: false
464
+
465
+ Lint/Debugger:
466
+ Enabled: true
467
+
468
+ # Disabling for now
469
+ Lint/DeprecatedClassMethods:
470
+ Enabled: false
471
+
472
+ Lint/DeprecatedConstants:
473
+ Enabled: true
474
+
475
+ Lint/DeprecatedOpenSSLConstant:
476
+ Enabled: true
477
+
478
+ Lint/DisjunctiveAssignmentInConstructor:
479
+ Enabled: false
480
+
481
+ Lint/DuplicateBranch:
482
+ Enabled: false
483
+
484
+ # Disabling for now
485
+ Lint/DuplicateCaseCondition:
486
+ Enabled: false
487
+
488
+ Lint/DuplicateElsifCondition:
489
+ Enabled: true
490
+
491
+ Lint/DuplicateHashKey:
492
+ Enabled: true
493
+
494
+ # Disabling for now
495
+ Lint/DuplicateMethods:
496
+ Enabled: false
497
+
498
+ Lint/DuplicateRegexpCharacterClassElement:
499
+ Enabled: true
500
+
501
+ Lint/DuplicateRequire:
502
+ Enabled: true
503
+
504
+ Lint/DuplicateRescueException:
505
+ Enabled: true
506
+
507
+ Lint/EachWithObjectArgument:
508
+ Enabled: true
509
+
510
+ Lint/ElseLayout:
511
+ Enabled: true
512
+
513
+ Lint/EmptyBlock:
514
+ Enabled: false
515
+
516
+ Lint/EmptyClass:
517
+ Enabled: false
518
+
519
+ Lint/EmptyConditionalBody:
520
+ Enabled: false
521
+
522
+ # Disabling for now
523
+ Lint/EmptyEnsure:
524
+ Enabled: false
525
+ # AutoCorrect: true
526
+
527
+ Lint/EmptyExpression:
528
+ Enabled: true
529
+
530
+ Lint/EmptyFile:
531
+ Enabled: false
532
+
533
+ Lint/EmptyInPattern:
534
+ Enabled: false
535
+
536
+ Lint/EmptyInterpolation:
537
+ Enabled: true
538
+
539
+ Lint/EmptyWhen:
540
+ Enabled: true
541
+ AllowComments: true
542
+
543
+ # Disabling for now
544
+ Lint/EnsureReturn:
545
+ Enabled: false
546
+
547
+ Lint/ErbNewArguments:
548
+ Enabled: true
549
+
550
+ Lint/FlipFlop:
551
+ Enabled: true
552
+
553
+ # Disabling for now
554
+ Lint/FloatComparison:
555
+ Enabled: false
556
+
557
+ Lint/FloatOutOfRange:
558
+ Enabled: true
559
+
560
+ Lint/FormatParameterMismatch:
561
+ Enabled: true
562
+
563
+ Lint/HashCompareByIdentity:
564
+ Enabled: false
565
+
566
+ Lint/HeredocMethodCallPosition:
567
+ Enabled: false
568
+
569
+ Lint/IdentityComparison:
570
+ Enabled: true
571
+
572
+ Lint/ImplicitStringConcatenation:
573
+ Enabled: true
574
+
575
+ # Disabling for now
576
+ Lint/IneffectiveAccessModifier:
577
+ Enabled: false
578
+
579
+ # Disabling for now
580
+ Lint/InheritException:
581
+ Enabled: false
582
+ # EnforcedStyle: runtime_error
583
+
584
+ # Disabling for now
585
+ Lint/InterpolationCheck:
586
+ Enabled: false
587
+
588
+ Lint/LambdaWithoutLiteralBlock:
589
+ Enabled: false
590
+
591
+ Lint/LiteralAsCondition:
592
+ Enabled: true
593
+
594
+ Lint/LiteralInInterpolation:
595
+ Enabled: true
596
+
597
+ Lint/Loop:
598
+ Enabled: true
599
+
600
+ Lint/MissingCopEnableDirective:
601
+ Enabled: true
602
+ MaximumRangeSize: .inf
603
+
604
+ Lint/MissingSuper:
605
+ Enabled: false
606
+
607
+ Lint/MixedRegexpCaptureTypes:
608
+ Enabled: true
609
+
610
+ Lint/MultipleComparison:
611
+ Enabled: true
612
+
613
+ # Disabling for now
614
+ Lint/NestedMethodDefinition:
615
+ Enabled: false
616
+
617
+ Lint/NestedPercentLiteral:
618
+ Enabled: true
619
+
620
+ Lint/NextWithoutAccumulator:
621
+ Enabled: true
622
+
623
+ Lint/NoReturnInBeginEndBlocks:
624
+ Enabled: false
625
+
626
+ # Disabling for now
627
+ Lint/NonDeterministicRequireOrder:
628
+ Enabled: false
629
+
630
+ # Disabling for now
631
+ Lint/NonLocalExitFromIterator:
632
+ Enabled: false
633
+
634
+ Lint/NumberConversion:
635
+ Enabled: false
636
+
637
+ Lint/NumberedParameterAssignment:
638
+ Enabled: true
639
+
640
+ Lint/OrAssignmentToConstant:
641
+ Enabled: false
642
+
643
+ Lint/OrderedMagicComments:
644
+ Enabled: true
645
+
646
+ Lint/OutOfRangeRegexpRef:
647
+ Enabled: true
648
+
649
+ # Disabling for now
650
+ Lint/ParenthesesAsGroupedExpression:
651
+ Enabled: false
652
+
653
+ Lint/PercentStringArray:
654
+ Enabled: false
655
+
656
+ Lint/PercentSymbolArray:
657
+ Enabled: true
658
+
659
+ # Disabling for now
660
+ Lint/RaiseException:
661
+ Enabled: false
662
+
663
+ Lint/RandOne:
664
+ Enabled: true
665
+
666
+ Lint/RedundantCopDisableDirective:
667
+ Enabled: true
668
+
669
+ Lint/RedundantCopEnableDirective:
670
+ Enabled: false
671
+
672
+ Lint/RedundantDirGlobSort:
673
+ Enabled: false
674
+
675
+ # Disabling for now
676
+ Lint/RedundantRequireStatement:
677
+ Enabled: false
678
+
679
+ Lint/RedundantSafeNavigation:
680
+ Enabled: false
681
+
682
+ # Disabling for now
683
+ Lint/RedundantSplatExpansion:
684
+ Enabled: false
685
+
686
+ # Disabling for now
687
+ Lint/RedundantStringCoercion:
688
+ Enabled: false
689
+
690
+ Lint/RedundantWithIndex:
691
+ Enabled: true
692
+
693
+ Lint/RedundantWithObject:
694
+ Enabled: true
695
+
696
+ Lint/RegexpAsCondition:
697
+ Enabled: true
698
+
699
+ Lint/RequireParentheses:
700
+ Enabled: true
701
+
702
+ # Disabling for now
703
+ Lint/RescueException:
704
+ Enabled: false
705
+
706
+ Lint/RescueType:
707
+ Enabled: true
708
+
709
+ Lint/ReturnInVoidContext:
710
+ Enabled: true
711
+
712
+ Lint/SafeNavigationChain:
713
+ Enabled: true
714
+ AllowedMethods:
715
+ - present?
716
+ - blank?
717
+ - presence
718
+ - try
719
+ - try!
720
+
721
+ Lint/SafeNavigationConsistency:
722
+ Enabled: true
723
+ AllowedMethods:
724
+ - present?
725
+ - blank?
726
+ - presence
727
+ - try
728
+ - try!
729
+
730
+ Lint/SafeNavigationWithEmpty:
731
+ Enabled: true
732
+
733
+ Lint/ScriptPermission:
734
+ Enabled: false
735
+
736
+ Lint/SelfAssignment:
737
+ Enabled: true
738
+
739
+ Lint/SendWithMixinArgument:
740
+ Enabled: false
741
+
742
+ # Disabling for now
743
+ Lint/ShadowedArgument:
744
+ Enabled: false
745
+ # IgnoreImplicitReferences: false
746
+
747
+ # Disabling for now
748
+ Lint/ShadowedException:
749
+ Enabled: false
750
+
751
+ Lint/ShadowingOuterLocalVariable:
752
+ Enabled: false
753
+
754
+ Lint/StructNewOverride:
755
+ Enabled: false
756
+
757
+ Lint/SuppressedException:
758
+ Enabled: false
759
+
760
+ # Disabling for now
761
+ Lint/SymbolConversion:
762
+ Enabled: false
763
+
764
+ Lint/Syntax:
765
+ Enabled: true
766
+
767
+ Lint/ToEnumArguments:
768
+ Enabled: false
769
+
770
+ Lint/ToJSON:
771
+ Enabled: false
772
+
773
+ Lint/TopLevelReturnWithArgument:
774
+ Enabled: true
775
+
776
+ Lint/TrailingCommaInAttributeDeclaration:
777
+ Enabled: true
778
+
779
+ Lint/TripleQuotes:
780
+ Enabled: true
781
+
782
+ # Disabling for now
783
+ Lint/UnderscorePrefixedVariableName:
784
+ Enabled: false
785
+
786
+ Lint/UnexpectedBlockArity:
787
+ Enabled: false
788
+
789
+ # Disabling for now
790
+ Lint/UnifiedInteger:
791
+ Enabled: false
792
+
793
+ Lint/UnmodifiedReduceAccumulator:
794
+ Enabled: false
795
+
796
+ # Disabling for now
797
+ Lint/UnreachableCode:
798
+ Enabled: false
799
+
800
+ Lint/UnreachableLoop:
801
+ Enabled: false
802
+
803
+ Lint/UnusedBlockArgument:
804
+ Enabled: false
805
+
806
+ Lint/UnusedMethodArgument:
807
+ Enabled: false
808
+
809
+ Lint/UriEscapeUnescape:
810
+ Enabled: true
811
+
812
+ Lint/UriRegexp:
813
+ Enabled: true
814
+
815
+ Lint/UselessAccessModifier:
816
+ Enabled: false
817
+
818
+ # Disabling for now
819
+ Lint/UselessAssignment:
820
+ Enabled: false
821
+
822
+ Lint/UselessMethodDefinition:
823
+ Enabled: false
824
+
825
+ Lint/UselessSetterCall:
826
+ Enabled: true
827
+
828
+ # Disabling for now
829
+ Lint/UselessTimes:
830
+ Enabled: false
831
+
832
+ # Disabling for now
833
+ Lint/Void:
834
+ Enabled: false
835
+ # CheckForMethodsWithNoSideEffects: false
836
+
837
+ Lint/IncompatibleIoSelectWithFiberScheduler:
838
+ Enabled: false
839
+
840
+ Lint/RequireRelativeSelfPath:
841
+ Enabled: true
842
+
843
+ Metrics/AbcSize:
844
+ Enabled: false
845
+
846
+ Metrics/BlockLength:
847
+ Enabled: false
848
+
849
+ Metrics/BlockNesting:
850
+ Enabled: false
851
+
852
+ Metrics/ClassLength:
853
+ Enabled: false
854
+
855
+ Metrics/CyclomaticComplexity:
856
+ Enabled: false
857
+
858
+ Metrics/MethodLength:
859
+ Enabled: false
860
+
861
+ Metrics/ModuleLength:
862
+ Enabled: false
863
+
864
+ Metrics/ParameterLists:
865
+ Enabled: false
866
+
867
+ Metrics/PerceivedComplexity:
868
+ Enabled: false
869
+
870
+ Migration/DepartmentName:
871
+ Enabled: true
872
+
873
+ Naming/AccessorMethodName:
874
+ Enabled: false
875
+
876
+ Naming/AsciiIdentifiers:
877
+ Enabled: false
878
+
879
+ # Disabling for now
880
+ Naming/BinaryOperatorParameterName:
881
+ Enabled: false
882
+
883
+ Naming/BlockParameterName:
884
+ Enabled: true
885
+ MinNameLength: 1
886
+ AllowNamesEndingInNumbers: true
887
+ AllowedNames: []
888
+ ForbiddenNames: []
889
+
890
+ Naming/ClassAndModuleCamelCase:
891
+ Enabled: true
892
+
893
+ Naming/ConstantName:
894
+ Enabled: true
895
+
896
+ Naming/FileName:
897
+ Enabled: false
898
+
899
+ Naming/HeredocDelimiterCase:
900
+ Enabled: true
901
+ EnforcedStyle: uppercase
902
+
903
+ Naming/HeredocDelimiterNaming:
904
+ Enabled: false
905
+
906
+ Naming/InclusiveLanguage:
907
+ Enabled: false
908
+
909
+ Naming/MemoizedInstanceVariableName:
910
+ Enabled: false
911
+
912
+ Naming/MethodName:
913
+ Enabled: false
914
+
915
+ Naming/MethodParameterName:
916
+ Enabled: false
917
+
918
+ Naming/PredicateName:
919
+ Enabled: false
920
+
921
+ Naming/RescuedExceptionsVariableName:
922
+ Enabled: false
923
+
924
+ Naming/VariableName:
925
+ Enabled: false
926
+ # EnforcedStyle: snake_case
927
+
928
+ Naming/VariableNumber:
929
+ Enabled: false
930
+
931
+ Performance/AncestorsInclude:
932
+ Enabled: false
933
+
934
+ Performance/ArraySemiInfiniteRangeSlice:
935
+ Enabled: false
936
+
937
+ Performance/BigDecimalWithNumericArgument:
938
+ Enabled: true
939
+
940
+ # Disabled for support of older ruby versions
941
+ Performance/BindCall:
942
+ Enabled: false
943
+
944
+ # Disabling for now
945
+ Performance/BlockGivenWithExplicitBlock:
946
+ Enabled: false
947
+
948
+ # Disabling for now
949
+ Performance/Caller:
950
+ Enabled: false
951
+
952
+ Performance/CaseWhenSplat:
953
+ Enabled: false
954
+
955
+ Performance/Casecmp:
956
+ Enabled: false
957
+
958
+ Performance/ChainArrayAllocation:
959
+ Enabled: false
960
+
961
+ Performance/CollectionLiteralInLoop:
962
+ Enabled: false
963
+
964
+ Performance/CompareWithBlock:
965
+ Enabled: true
966
+
967
+ Performance/ConcurrentMonotonicTime:
968
+ Enabled: true
969
+
970
+ # Disabling for now
971
+ Performance/ConstantRegexp:
972
+ Enabled: false
973
+
974
+ # Disabling for now
975
+ Performance/Count:
976
+ Enabled: false
977
+
978
+ Performance/DeletePrefix:
979
+ Enabled: false
980
+
981
+ Performance/DeleteSuffix:
982
+ Enabled: false
983
+
984
+ # Disabling for now
985
+ Performance/Detect:
986
+ Enabled: false
987
+
988
+ # Disabling for now
989
+ Performance/DoubleStartEndWith:
990
+ Enabled: false
991
+ # IncludeActiveSupportAliases: false
992
+
993
+ Performance/EndWith:
994
+ Enabled: true
995
+
996
+ Performance/FixedSize:
997
+ Enabled: true
998
+
999
+ Performance/FlatMap:
1000
+ Enabled: true
1001
+ EnabledForFlattenWithoutParams: false
1002
+
1003
+ # Disabling for now
1004
+ Performance/InefficientHashSearch:
1005
+ Enabled: false
1006
+ # Safe: false
1007
+
1008
+ Performance/IoReadlines:
1009
+ Enabled: false
1010
+
1011
+ Performance/MapCompact:
1012
+ Enabled: false
1013
+
1014
+ Performance/MethodObjectAsBlock:
1015
+ Enabled: false
1016
+
1017
+ Performance/OpenStruct:
1018
+ Enabled: false
1019
+
1020
+ Performance/RangeInclude:
1021
+ Enabled: true
1022
+ Safe: false
1023
+
1024
+ Performance/RedundantBlockCall:
1025
+ Enabled: false
1026
+
1027
+ Performance/RedundantEqualityComparisonBlock:
1028
+ Enabled: false
1029
+
1030
+ # Disabling for now
1031
+ Performance/RedundantMatch:
1032
+ Enabled: false
1033
+
1034
+ # Disabling for now
1035
+ Performance/RedundantMerge:
1036
+ Enabled: false
1037
+ # MaxKeyValuePairs: 2
1038
+
1039
+ Performance/RedundantSortBlock:
1040
+ Enabled: true
1041
+
1042
+ Performance/RedundantSplitRegexpArgument:
1043
+ Enabled: true
1044
+
1045
+ Performance/RedundantStringChars:
1046
+ Enabled: true
1047
+
1048
+ # Disabling for now
1049
+ Performance/RegexpMatch:
1050
+ Enabled: false
1051
+
1052
+ # Disabling for now
1053
+ Performance/ReverseEach:
1054
+ Enabled: false
1055
+
1056
+ Performance/ReverseFirst:
1057
+ Enabled: true
1058
+
1059
+ Performance/SelectMap:
1060
+ Enabled: false
1061
+
1062
+ Performance/Size:
1063
+ Enabled: true
1064
+
1065
+ Performance/SortReverse:
1066
+ Enabled: true
1067
+
1068
+ Performance/Squeeze:
1069
+ Enabled: true
1070
+
1071
+ # Disabling for now
1072
+ Performance/StartWith:
1073
+ Enabled: false
1074
+
1075
+ Performance/StringIdentifierArgument:
1076
+ Enabled: true
1077
+
1078
+ Performance/StringInclude:
1079
+ Enabled: false
1080
+
1081
+ # Disabling for now
1082
+ Performance/StringReplacement:
1083
+ Enabled: false
1084
+
1085
+ Performance/Sum:
1086
+ Enabled: false
1087
+
1088
+ Performance/TimesMap:
1089
+ Enabled: false
1090
+
1091
+ # Disabling for now
1092
+ Performance/UnfreezeString:
1093
+ Enabled: false
1094
+
1095
+ Performance/UriDefaultParser:
1096
+ Enabled: true
1097
+
1098
+ # Disabling for now
1099
+ Security/Eval:
1100
+ Enabled: false
1101
+
1102
+ # Disabling for now
1103
+ Security/JSONLoad:
1104
+ Enabled: false
1105
+ # AutoCorrect: false
1106
+ # SafeAutoCorrect: false
1107
+
1108
+ Security/MarshalLoad:
1109
+ Enabled: false
1110
+
1111
+ Security/Open:
1112
+ Enabled: true
1113
+ Safe: false
1114
+
1115
+ # Disabling for now
1116
+ Security/YAMLLoad:
1117
+ Enabled: false
1118
+ # SafeAutoCorrect: false
1119
+
1120
+ Security/IoMethods:
1121
+ Enabled: false
1122
+ Safe: false
1123
+
1124
+ # raised unrecognized cop or department
1125
+ # Standard/BlockSingleLineBraces:
1126
+ # Enabled: true
1127
+
1128
+ Style/AccessModifierDeclarations:
1129
+ Enabled: false
1130
+
1131
+ Style/AccessorGrouping:
1132
+ Enabled: false
1133
+
1134
+ # Disabling for now
1135
+ Style/Alias:
1136
+ Enabled: false
1137
+ # EnforcedStyle: prefer_alias_method
1138
+
1139
+ # Disabling for now
1140
+ Style/AndOr:
1141
+ Enabled: false
1142
+
1143
+ # Disabled for support of older ruby versions
1144
+ Style/ArgumentsForwarding:
1145
+ Enabled: false
1146
+
1147
+ Style/ArrayCoercion:
1148
+ Enabled: false
1149
+
1150
+ Style/ArrayJoin:
1151
+ Enabled: true
1152
+
1153
+ Style/AsciiComments:
1154
+ Enabled: false
1155
+
1156
+ Style/Attr:
1157
+ Enabled: true
1158
+
1159
+ Style/AutoResourceCleanup:
1160
+ Enabled: false
1161
+
1162
+ # Disabling for now
1163
+ Style/BarePercentLiterals:
1164
+ Enabled: false
1165
+ EnforcedStyle: bare_percent
1166
+
1167
+ Style/BeginBlock:
1168
+ Enabled: true
1169
+
1170
+ Style/BisectedAttrAccessor:
1171
+ Enabled: false
1172
+
1173
+ Style/BlockComments:
1174
+ Enabled: true
1175
+
1176
+ Style/BlockDelimiters:
1177
+ Enabled: false
1178
+
1179
+ Style/CaseEquality:
1180
+ Enabled: false
1181
+
1182
+ Style/CaseLikeIf:
1183
+ Enabled: false
1184
+
1185
+ Style/CharacterLiteral:
1186
+ Enabled: true
1187
+
1188
+ Style/ClassAndModuleChildren:
1189
+ Enabled: false
1190
+
1191
+ # Disabling for now
1192
+ Style/ClassCheck:
1193
+ Enabled: false
1194
+ # EnforcedStyle: is_a?
1195
+
1196
+ # Disabling for now
1197
+ Style/ClassEqualityComparison:
1198
+ Enabled: false
1199
+
1200
+ Style/ClassMethods:
1201
+ Enabled: true
1202
+
1203
+ Style/ClassMethodsDefinitions:
1204
+ Enabled: false
1205
+
1206
+ Style/ClassVars:
1207
+ Enabled: false
1208
+
1209
+ Style/CollectionCompact:
1210
+ Enabled: false
1211
+
1212
+ Style/CollectionMethods:
1213
+ Enabled: false
1214
+
1215
+ # Disabling for now
1216
+ Style/ColonMethodCall:
1217
+ Enabled: false
1218
+
1219
+ Style/ColonMethodDefinition:
1220
+ Enabled: true
1221
+
1222
+ Style/CombinableLoops:
1223
+ Enabled: false
1224
+
1225
+ # Disabling for now
1226
+ Style/CommandLiteral:
1227
+ Enabled: false
1228
+ # EnforcedStyle: mixed
1229
+ # AllowInnerBackticks: false
1230
+
1231
+ Style/CommentAnnotation:
1232
+ Enabled: false
1233
+
1234
+ Style/CommentedKeyword:
1235
+ Enabled: false
1236
+
1237
+ # Disabling for now
1238
+ Style/ConditionalAssignment:
1239
+ Enabled: false
1240
+ # EnforcedStyle: assign_to_condition
1241
+ # SingleLineConditionsOnly: true
1242
+ # IncludeTernaryExpressions: true
1243
+
1244
+ Style/ConstantVisibility:
1245
+ Enabled: false
1246
+
1247
+ Style/Copyright:
1248
+ Enabled: false
1249
+
1250
+ Style/DateTime:
1251
+ Enabled: false
1252
+
1253
+ Style/DefWithParentheses:
1254
+ Enabled: true
1255
+
1256
+ # Disabling for now
1257
+ Style/Dir:
1258
+ Enabled: false
1259
+
1260
+ Style/DisableCopsWithinSourceCodeDirective:
1261
+ Enabled: false
1262
+
1263
+ Style/DocumentDynamicEvalDefinition:
1264
+ Enabled: false
1265
+
1266
+ Style/Documentation:
1267
+ Enabled: false
1268
+
1269
+ Style/DocumentationMethod:
1270
+ Enabled: false
1271
+
1272
+ Style/DoubleCopDisableDirective:
1273
+ Enabled: false
1274
+
1275
+ Style/DoubleNegation:
1276
+ Enabled: false
1277
+
1278
+ Style/EachForSimpleLoop:
1279
+ Enabled: true
1280
+
1281
+ # Disabling for now
1282
+ Style/EachWithObject:
1283
+ Enabled: false
1284
+
1285
+ Style/EmptyBlockParameter:
1286
+ Enabled: true
1287
+
1288
+ # Disabling for now
1289
+ Style/EmptyCaseCondition:
1290
+ Enabled: false
1291
+
1292
+ Style/EmptyElse:
1293
+ Enabled: true
1294
+ EnforcedStyle: both
1295
+
1296
+ # Disabling for now
1297
+ Style/EmptyLambdaParameter:
1298
+ Enabled: false
1299
+
1300
+ # Disabling for now
1301
+ Style/EmptyLiteral:
1302
+ Enabled: false
1303
+
1304
+ # Disabling for now
1305
+ Style/EmptyMethod:
1306
+ Enabled: false
1307
+ # EnforcedStyle: expanded
1308
+
1309
+ # Disabling for now
1310
+ Style/Encoding:
1311
+ Enabled: false
1312
+
1313
+ Style/EndBlock:
1314
+ Enabled: true
1315
+ AutoCorrect: true
1316
+
1317
+ Style/EndlessMethod:
1318
+ Enabled: false
1319
+
1320
+ # Disabling for now
1321
+ Style/EvalWithLocation:
1322
+ Enabled: false
1323
+
1324
+ Style/EvenOdd:
1325
+ Enabled: false
1326
+
1327
+ Style/ExpandPathArguments:
1328
+ Enabled: false
1329
+
1330
+ Style/ExplicitBlockArgument:
1331
+ Enabled: false
1332
+
1333
+ Style/ExponentialNotation:
1334
+ Enabled: false
1335
+
1336
+ Style/FloatDivision:
1337
+ Enabled: false
1338
+
1339
+ # Disabling for now
1340
+ Style/For:
1341
+ Enabled: false
1342
+ # EnforcedStyle: each
1343
+
1344
+ Style/FormatString:
1345
+ Enabled: false
1346
+
1347
+ Style/FormatStringToken:
1348
+ Enabled: false
1349
+
1350
+ Style/FrozenStringLiteralComment:
1351
+ Enabled: false
1352
+
1353
+ # Disabling for now
1354
+ Style/GlobalStdStream:
1355
+ Enabled: false
1356
+
1357
+ # Disabling for now
1358
+ Style/GlobalVars:
1359
+ Enabled: false
1360
+ # AllowedVariables: []
1361
+
1362
+ Style/GuardClause:
1363
+ Enabled: false
1364
+
1365
+ Style/HashAsLastArrayItem:
1366
+ Enabled: false
1367
+
1368
+ # Disabling for now
1369
+ Style/HashConversion:
1370
+ Enabled: false
1371
+
1372
+ Style/HashEachMethods:
1373
+ Enabled: false
1374
+
1375
+ Style/HashExcept:
1376
+ Enabled: true
1377
+
1378
+ Style/HashLikeCase:
1379
+ Enabled: false
1380
+
1381
+ # Documentation: https://docs.rubocop.org/rubocop/cops_style.html#stylehashsyntax
1382
+ # I believe we want either hash_rockets or no_mixed_keys
1383
+ # Disabling for now
1384
+ Style/HashSyntax:
1385
+ Enabled: false
1386
+ # EnforcedStyle: ruby19_no_mixed_keys
1387
+
1388
+ Style/HashTransformKeys:
1389
+ Enabled: false
1390
+
1391
+ Style/HashTransformValues:
1392
+ Enabled: false
1393
+
1394
+ # Disabling for now
1395
+ Style/IdenticalConditionalBranches:
1396
+ Enabled: false
1397
+
1398
+ # Disabling for now
1399
+ Style/IfInsideElse:
1400
+ Enabled: false
1401
+
1402
+ Style/IfUnlessModifier:
1403
+ Enabled: false
1404
+
1405
+ Style/IfUnlessModifierOfIfUnless:
1406
+ Enabled: true
1407
+
1408
+ Style/IfWithBooleanLiteralBranches:
1409
+ Enabled: true
1410
+
1411
+ Style/IfWithSemicolon:
1412
+ Enabled: true
1413
+
1414
+ Style/ImplicitRuntimeError:
1415
+ Enabled: false
1416
+
1417
+ Style/InPatternThen:
1418
+ Enabled: false
1419
+
1420
+ # Disabling for now
1421
+ Style/InfiniteLoop:
1422
+ Enabled: false
1423
+
1424
+ Style/InlineComment:
1425
+ Enabled: false
1426
+
1427
+ Style/InverseMethods:
1428
+ Enabled: false
1429
+
1430
+ Style/IpAddresses:
1431
+ Enabled: false
1432
+
1433
+ # Disabling for now
1434
+ Style/KeywordParametersOrder:
1435
+ Enabled: false
1436
+
1437
+ Style/Lambda:
1438
+ Enabled: false
1439
+
1440
+ Style/LambdaCall:
1441
+ Enabled: true
1442
+ EnforcedStyle: call
1443
+
1444
+ # Disabling for now
1445
+ Style/LineEndConcatenation:
1446
+ Enabled: false
1447
+ # SafeAutoCorrect: false
1448
+
1449
+ Style/MethodCallWithArgsParentheses:
1450
+ Enabled: false
1451
+
1452
+ # Disabling for now
1453
+ Style/MethodCallWithoutArgsParentheses:
1454
+ Enabled: false
1455
+ IgnoredMethods: []
1456
+
1457
+ Style/MethodCalledOnDoEndBlock:
1458
+ Enabled: false
1459
+
1460
+ Style/MethodDefParentheses:
1461
+ Enabled: false
1462
+
1463
+ Style/MinMax:
1464
+ Enabled: false
1465
+
1466
+ Style/MissingElse:
1467
+ Enabled: false
1468
+
1469
+ # Disabling for now
1470
+ Style/MissingRespondToMissing:
1471
+ Enabled: false
1472
+
1473
+ # Disabling for now
1474
+ Style/MixinGrouping:
1475
+ Enabled: false
1476
+ # EnforcedStyle: separated
1477
+
1478
+ # Disabling for now
1479
+ Style/MixinUsage:
1480
+ Enabled: false
1481
+
1482
+ Style/ModuleFunction:
1483
+ Enabled: false
1484
+
1485
+ Style/MultilineBlockChain:
1486
+ Enabled: false
1487
+
1488
+ Style/MultilineIfModifier:
1489
+ Enabled: true
1490
+
1491
+ Style/MultilineIfThen:
1492
+ Enabled: true
1493
+
1494
+ Style/MultilineInPatternThen:
1495
+ Enabled: false
1496
+
1497
+ # Disabling for now
1498
+ Style/MultilineMemoization:
1499
+ Enabled: false
1500
+ # EnforcedStyle: keyword
1501
+
1502
+ Style/MultilineMethodSignature:
1503
+ Enabled: false
1504
+
1505
+ Style/MultilineTernaryOperator:
1506
+ Enabled: false
1507
+
1508
+ Style/MultilineWhenThen:
1509
+ Enabled: true
1510
+
1511
+ Style/MultipleComparison:
1512
+ Enabled: false
1513
+
1514
+ Style/MutableConstant:
1515
+ Enabled: false
1516
+
1517
+ Style/NegatedIf:
1518
+ Enabled: false
1519
+
1520
+ Style/NegatedIfElseCondition:
1521
+ Enabled: false
1522
+
1523
+ Style/NegatedUnless:
1524
+ Enabled: false
1525
+
1526
+ # Disabling for now
1527
+ Style/NegatedWhile:
1528
+ Enabled: false
1529
+
1530
+ Style/NestedModifier:
1531
+ Enabled: true
1532
+
1533
+ # Disabling for now
1534
+ Style/NestedParenthesizedCalls:
1535
+ Enabled: false
1536
+ # AllowedMethods:
1537
+ # - be
1538
+ # - be_a
1539
+ # - be_an
1540
+ # - be_between
1541
+ # - be_falsey
1542
+ # - be_kind_of
1543
+ # - be_instance_of
1544
+ # - be_truthy
1545
+ # - be_within
1546
+ # - eq
1547
+ # - eql
1548
+ # - end_with
1549
+ # - include
1550
+ # - match
1551
+ # - raise_error
1552
+ # - respond_to
1553
+ # - start_with
1554
+
1555
+ Style/NestedTernaryOperator:
1556
+ Enabled: true
1557
+
1558
+ Style/Next:
1559
+ Enabled: false
1560
+
1561
+ # Disabling for now
1562
+ Style/NilComparison:
1563
+ Enabled: false
1564
+ # EnforcedStyle: predicate
1565
+
1566
+ # Disabling for now
1567
+ Style/NilLambda:
1568
+ Enabled: false
1569
+
1570
+ # Disabling for now
1571
+ Style/NonNilCheck:
1572
+ Enabled: false
1573
+ # IncludeSemanticChanges: false
1574
+
1575
+ Style/Not:
1576
+ Enabled: true
1577
+
1578
+ # Disabling for now
1579
+ Style/NumericLiteralPrefix:
1580
+ Enabled: false
1581
+ # EnforcedOctalStyle: zero_with_o
1582
+
1583
+ Style/NumericLiterals:
1584
+ Enabled: false
1585
+
1586
+ Style/NumericPredicate:
1587
+ Enabled: false
1588
+
1589
+ Style/OneLineConditional:
1590
+ Enabled: true
1591
+
1592
+ Style/OptionHash:
1593
+ Enabled: false
1594
+
1595
+ Style/OptionalArguments:
1596
+ Enabled: true
1597
+
1598
+ Style/OptionalBooleanParameter:
1599
+ Enabled: false
1600
+
1601
+ # Disabling for now
1602
+ Style/OrAssignment:
1603
+ Enabled: false
1604
+
1605
+ Style/ParallelAssignment:
1606
+ Enabled: false
1607
+
1608
+ Style/ParenthesesAroundCondition:
1609
+ Enabled: true
1610
+ AllowSafeAssignment: true
1611
+ AllowInMultilineConditions: false
1612
+
1613
+ Style/PercentLiteralDelimiters:
1614
+ Enabled: true
1615
+ PreferredDelimiters:
1616
+ default: ()
1617
+ '%i': '[]'
1618
+ '%I': '[]'
1619
+ '%r': '{}'
1620
+ '%w': '[]'
1621
+ '%W': '[]'
1622
+
1623
+ Style/PercentQLiterals:
1624
+ Enabled: false
1625
+
1626
+ Style/PerlBackrefs:
1627
+ Enabled: false
1628
+
1629
+ Style/PreferredHashMethods:
1630
+ Enabled: false
1631
+
1632
+ # Disabling for now
1633
+ Style/Proc:
1634
+ Enabled: false
1635
+
1636
+ Style/QuotedSymbols:
1637
+ Enabled: false
1638
+
1639
+ Style/RaiseArgs:
1640
+ Enabled: false
1641
+
1642
+ Style/RandomWithOffset:
1643
+ Enabled: true
1644
+
1645
+ Style/RedundantArgument:
1646
+ Enabled: false
1647
+
1648
+ # Disabling for now
1649
+ Style/RedundantAssignment:
1650
+ Enabled: false
1651
+
1652
+ # Disabling for now
1653
+ Style/RedundantBegin:
1654
+ Enabled: false
1655
+
1656
+ Style/RedundantCapitalW:
1657
+ Enabled: false
1658
+
1659
+ Style/RedundantCondition:
1660
+ Enabled: true
1661
+
1662
+ Style/RedundantConditional:
1663
+ Enabled: true
1664
+
1665
+ Style/RedundantException:
1666
+ Enabled: true
1667
+
1668
+ Style/RedundantFetchBlock:
1669
+ Enabled: true
1670
+
1671
+ Style/RedundantFileExtensionInRequire:
1672
+ Enabled: true
1673
+
1674
+ # Disabling for now
1675
+ Style/RedundantFreeze:
1676
+ Enabled: false
1677
+
1678
+ # Disabling for now
1679
+ Style/RedundantInterpolation:
1680
+ Enabled: false
1681
+
1682
+ # Disabling for now
1683
+ Style/RedundantParentheses:
1684
+ Enabled: false
1685
+
1686
+ # Disabling for now
1687
+ Style/RedundantPercentQ:
1688
+ Enabled: false
1689
+
1690
+ Style/RedundantRegexpCharacterClass:
1691
+ Enabled: true
1692
+
1693
+ # Disabling for now
1694
+ Style/RedundantRegexpEscape:
1695
+ Enabled: false
1696
+
1697
+ # Disabling for now
1698
+ Style/RedundantReturn:
1699
+ Enabled: false
1700
+ # AllowMultipleReturnValues: false
1701
+
1702
+ # Disabling for now
1703
+ Style/RedundantSelf:
1704
+ Enabled: false
1705
+
1706
+ Style/RedundantSelfAssignment:
1707
+ Enabled: false
1708
+
1709
+ Style/RedundantSelfAssignmentBranch:
1710
+ Enabled: false
1711
+
1712
+ # Disabling for now
1713
+ Style/RedundantSort:
1714
+ Enabled: false
1715
+
1716
+ Style/RedundantSortBy:
1717
+ Enabled: true
1718
+
1719
+ Style/RegexpLiteral:
1720
+ Enabled: false
1721
+
1722
+ # Disabling for now
1723
+ Style/RescueModifier:
1724
+ Enabled: false
1725
+
1726
+ # Disabling for now
1727
+ Style/RescueStandardError:
1728
+ Enabled: false
1729
+ # EnforcedStyle: implicit
1730
+
1731
+ Style/ReturnNil:
1732
+ Enabled: false
1733
+
1734
+ # Can't use, not available in Ruby 2.2
1735
+ Style/SafeNavigation:
1736
+ Enabled: false
1737
+ # ConvertCodeThatCanStartToReturnNil: false
1738
+ # AllowedMethods:
1739
+ # - present?
1740
+ # - blank?
1741
+ # - presence
1742
+ # - try
1743
+ # - try!
1744
+
1745
+ Style/Sample:
1746
+ Enabled: true
1747
+
1748
+ Style/SelfAssignment:
1749
+ Enabled: true
1750
+
1751
+ # Disabling for now
1752
+ Style/Semicolon:
1753
+ Enabled: false
1754
+ # AllowAsExpressionSeparator: false
1755
+
1756
+ Style/Send:
1757
+ Enabled: false
1758
+
1759
+ Style/SignalException:
1760
+ Enabled: false
1761
+
1762
+ Style/SingleArgumentDig:
1763
+ Enabled: false
1764
+
1765
+ Style/SingleLineBlockParams:
1766
+ Enabled: false
1767
+
1768
+ # Disabling for now
1769
+ Style/SingleLineMethods:
1770
+ Enabled: false
1771
+ # AllowIfMethodIsEmpty: false
1772
+
1773
+ # Disabled for support of older ruby versions
1774
+ Style/SlicingWithRange:
1775
+ Enabled: false
1776
+
1777
+ Style/SoleNestedConditional:
1778
+ Enabled: false
1779
+
1780
+ Style/SpecialGlobalVars:
1781
+ Enabled: false
1782
+
1783
+ Style/StabbyLambdaParentheses:
1784
+ Enabled: true
1785
+ EnforcedStyle: require_parentheses
1786
+
1787
+ Style/StaticClass:
1788
+ Enabled: false
1789
+
1790
+ # Do we want this one? Use warn instead of STDERR.puts
1791
+ Style/StderrPuts:
1792
+ Enabled: false
1793
+
1794
+ Style/StringChars:
1795
+ Enabled: true
1796
+
1797
+ Style/StringConcatenation:
1798
+ Enabled: false
1799
+
1800
+ Style/StringHashKeys:
1801
+ Enabled: false
1802
+
1803
+ # Disabling for now
1804
+ Style/StringLiterals:
1805
+ Enabled: false
1806
+ # EnforcedStyle: double_quotes
1807
+ # ConsistentQuotesInMultiline: false
1808
+
1809
+ # Disabling for now
1810
+ Style/StringLiteralsInInterpolation:
1811
+ Enabled: false
1812
+ # EnforcedStyle: double_quotes
1813
+
1814
+ Style/StringMethods:
1815
+ Enabled: false
1816
+
1817
+ Style/Strip:
1818
+ Enabled: true
1819
+
1820
+ Style/StructInheritance:
1821
+ Enabled: false
1822
+
1823
+ Style/SwapValues:
1824
+ Enabled: false
1825
+
1826
+ Style/SymbolArray:
1827
+ Enabled: false
1828
+
1829
+ # Disabling for now
1830
+ Style/SymbolLiteral:
1831
+ Enabled: false
1832
+
1833
+ Style/SymbolProc:
1834
+ Enabled: false
1835
+
1836
+ Style/TernaryParentheses:
1837
+ Enabled: true
1838
+ EnforcedStyle: require_no_parentheses
1839
+ AllowSafeAssignment: true
1840
+
1841
+ Style/TopLevelMethodDefinition:
1842
+ Enabled: false
1843
+
1844
+ Style/TrailingBodyOnClass:
1845
+ Enabled: true
1846
+
1847
+ Style/TrailingBodyOnMethodDefinition:
1848
+ Enabled: true
1849
+
1850
+ Style/TrailingBodyOnModule:
1851
+ Enabled: true
1852
+
1853
+ Style/TrailingCommaInArguments:
1854
+ Enabled: true
1855
+ EnforcedStyleForMultiline: no_comma
1856
+
1857
+ Style/TrailingCommaInArrayLiteral:
1858
+ Enabled: true
1859
+ EnforcedStyleForMultiline: no_comma
1860
+
1861
+ Style/TrailingCommaInBlockArgs:
1862
+ Enabled: true
1863
+
1864
+ Style/TrailingCommaInHashLiteral:
1865
+ Enabled: true
1866
+ EnforcedStyleForMultiline: no_comma
1867
+
1868
+ Style/TrailingMethodEndStatement:
1869
+ Enabled: true
1870
+
1871
+ Style/TrailingUnderscoreVariable:
1872
+ Enabled: false
1873
+
1874
+ # Do we want? Performance test first
1875
+ Style/TrivialAccessors:
1876
+ Enabled: false
1877
+ # ExactNameMatch: true
1878
+ # AllowPredicates: true
1879
+ # AllowDSLWriters: false
1880
+ # IgnoreClassMethods: false
1881
+ # AllowedMethods:
1882
+ # - to_ary
1883
+ # - to_a
1884
+ # - to_c
1885
+ # - to_enum
1886
+ # - to_h
1887
+ # - to_hash
1888
+ # - to_i
1889
+ # - to_int
1890
+ # - to_io
1891
+ # - to_open
1892
+ # - to_path
1893
+ # - to_proc
1894
+ # - to_r
1895
+ # - to_regexp
1896
+ # - to_str
1897
+ # - to_s
1898
+ # - to_sym
1899
+
1900
+ Style/UnlessElse:
1901
+ Enabled: true
1902
+
1903
+ Style/UnlessLogicalOperators:
1904
+ Enabled: false
1905
+
1906
+ # Disabling for now
1907
+ Style/UnpackFirst:
1908
+ Enabled: false
1909
+
1910
+ # Disabling for now
1911
+ Style/VariableInterpolation:
1912
+ Enabled: false
1913
+
1914
+ Style/WhenThen:
1915
+ Enabled: true
1916
+
1917
+ Style/WhileUntilDo:
1918
+ Enabled: true
1919
+
1920
+ Style/WhileUntilModifier:
1921
+ Enabled: false
1922
+
1923
+ Style/WordArray:
1924
+ Enabled: false
1925
+
1926
+ # Disabling for now
1927
+ Style/YodaCondition:
1928
+ Enabled: false
1929
+ # EnforcedStyle: forbid_for_all_comparison_operators
1930
+
1931
+ Style/ZeroLengthPredicate:
1932
+ Enabled: false
1933
+
1934
+ Style/NumberedParameters:
1935
+ Enabled: false
1936
+
1937
+ Style/NumberedParametersLimit:
1938
+ Enabled: false
1939
+
1940
+ Style/SelectByRegexp:
1941
+ Enabled: false