sapience 2.5.4 → 2.6.0

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 082583db334e5fff1d6de299a25848c22faa69dd
4
- data.tar.gz: 8ea9117a75c74bcc52c8e4339576e2fc56d87ffa
3
+ metadata.gz: 8a5f9dd9f371b22ec6c89aa5ab0beac69ab71895
4
+ data.tar.gz: fe5782b862c1ae8c97566e20923f916b50cc6548
5
5
  SHA512:
6
- metadata.gz: ecf26ed2e95a788a328c40492ef61f0fa81cdb133ae6ba4e5fa2007820f4b574fb687ddc9f173f7eec33055de7877b853e9f6341e5504eadae356da91616745b
7
- data.tar.gz: 6a085768d78deeb6495d70a0602c22f1ed8e9f6da7ae6f70539cbd35c6761e54db1de7f46ade23892ad2bfa3c2bd1c2f43952aca3daf919e34a45a37e2dbdc18
6
+ metadata.gz: bd78b0f6ac4f5c8fbd92420fad1ca86fcf8924f67d1efbffad75b6ed1eda634d1b2bcdfa8796f5fa69e01f117b5a784154050947e73f4320dc5d4e66d043175a
7
+ data.tar.gz: 65a30edca0fb6441e28349e9d14c1ab9caae09052e8da191a194612e0f7d99a23329c122d5ab228ee16f64111e1bea111a0e1edb46732f2716139ff25a186a40
data/CHANGELOG.md CHANGED
@@ -1,3 +1,7 @@
1
+ ## v2.6.0
2
+
3
+ - Add ability to reduce noise from default rails log subscribers with config option `silent_rails`
4
+
1
5
  ## v2.5.4
2
6
 
3
7
  - Add compatibility fix for concurrent-ruby library logger which expect `call` method to be defined
data/README.md CHANGED
@@ -115,6 +115,8 @@ how to configure the library according to your needs.
115
115
 
116
116
  The sapience configuration can be controlled by either a "sapience.yml" file, or a block of ruby code. Note that if you provide both, the block of ruby code will take precedence.
117
117
 
118
+ For a list of available configuration options look at class `Sapience::Configuration`
119
+
118
120
  #### Configuration by sapience.yml file
119
121
 
120
122
  Add a `config/sapience.yml` file to your application. The config file contains sections for different environments.
@@ -163,6 +165,7 @@ staging:
163
165
 
164
166
  production:
165
167
  log_level: info
168
+ silent_rails: true # make rails logging less noisy
166
169
  error_handler:
167
170
  sentry:
168
171
  dsn: <%= ENV['SENTRY_DSN'] %>
@@ -182,6 +185,7 @@ Sapience.configure(force: true) do |config|
182
185
  config.app_name = "My Application"
183
186
  config.default_level = :info
184
187
  config.backtrace_level = :error
188
+ config.silent_rails = true # make rails logging less noisy
185
189
  config.filter_parameters = %w(password password_confirmation)
186
190
  config.appenders = [
187
191
  { stream: { io: STDOUT, formatter: :color } },
@@ -60,9 +60,7 @@ module Sapience
60
60
  # logger = Sapience['test']
61
61
  # logger.info 'Hello World'
62
62
  def initialize(options = {}, &block)
63
- unless options[:io] || options[:file_name]
64
- fail ArgumentError, "missing mandatory argument :file_name or :io"
65
- end
63
+ fail ArgumentError, "missing mandatory argument :file_name or :io" unless options[:io] || options[:file_name]
66
64
 
67
65
  opts = options.dup
68
66
  if (io = opts.delete(:io))
@@ -75,7 +73,6 @@ module Sapience
75
73
  # Set the log level and formatter if supplied
76
74
  super(opts, &block)
77
75
  end
78
- # rubocop:enable AbcSize, CyclomaticComplexity, PerceivedComplexity
79
76
 
80
77
  # After forking an active process call #reopen to re-open
81
78
  # open the file handles etc to resources
@@ -87,7 +84,7 @@ module Sapience
87
84
  return unless @file_name
88
85
  ensure_folder_exist
89
86
 
90
- @log = open(@file_name, (::File::WRONLY | ::File::APPEND | ::File::CREAT))
87
+ @log = File.open(@file_name, (::File::WRONLY | ::File::APPEND | ::File::CREAT))
91
88
  # Force all log entries to write immediately without buffering
92
89
  # Allows multiple processes to write to the same log file simultaneously
93
90
  @log.sync = true
data/lib/sapience/base.rb CHANGED
@@ -237,7 +237,7 @@ module Sapience
237
237
  message = message.nil? ? result : "#{message} -- #{result}"
238
238
  elsif message.nil? && result.is_a?(Hash)
239
239
  message = result
240
- elsif payload && payload.respond_to?(:merge)
240
+ elsif payload && payload.respond_to?(:merge) # rubocop: disable Style/SafeNavigation
241
241
  payload.merge(result)
242
242
  else
243
243
  payload = result
@@ -1,4 +1,3 @@
1
- # encoding: utf-8
2
1
  # frozen_string_literal: true
3
2
 
4
3
  require "yaml"
@@ -62,9 +61,7 @@ module Sapience
62
61
 
63
62
  hash = yaml_safe_load(yaml_code, absolute_path) || {}
64
63
 
65
- unless hash.is_a?(Hash)
66
- fail(TypeError, "Malformed configuration in #{absolute_path}")
67
- end
64
+ fail(TypeError, "Malformed configuration in #{absolute_path}") unless hash.is_a?(Hash)
68
65
 
69
66
  hash
70
67
  end
@@ -7,7 +7,8 @@ module Sapience
7
7
  class Configuration
8
8
  attr_reader :default_level, :backtrace_level, :backtrace_level_index
9
9
  attr_writer :host
10
- attr_accessor :app_name, :ap_options, :appenders, :log_executor, :filter_parameters, :metrics, :error_handler
10
+ attr_accessor :app_name, :ap_options, :appenders, :log_executor, :filter_parameters,
11
+ :metrics, :error_handler, :silent_rails
11
12
 
12
13
  SUPPORTED_EXECUTORS = %i(single_thread_executor immediate_executor).freeze
13
14
  DEFAULT = {
@@ -19,6 +20,7 @@ module Sapience
19
20
  metrics: { datadog: { url: Sapience::DEFAULT_STATSD_URL } },
20
21
  error_handler: { silent: {} },
21
22
  filter_parameters: %w(password password_confirmation),
23
+ silent_rails: false,
22
24
  }.freeze
23
25
 
24
26
  # Initial default Level for all new instances of Sapience::Logger
@@ -37,6 +39,7 @@ module Sapience
37
39
  self.filter_parameters = @options[:filter_parameters]
38
40
  self.metrics = @options[:metrics]
39
41
  self.error_handler = @options[:error_handler]
42
+ self.silent_rails = @options[:silent_rails]
40
43
  end
41
44
 
42
45
  # Sets the global default log level
@@ -118,4 +121,5 @@ module Sapience
118
121
  fail InvalidLogExecutor, "#{log_executor} is unsupported. Use (#{SUPPORTED_EXECUTORS.join(", ")})"
119
122
  end
120
123
  end
124
+ # rubocop:enable ClassVars
121
125
  end
@@ -1,6 +1,4 @@
1
1
  # frozen_string_literal: true
2
- require "thread"
3
-
4
2
  class Thread
5
3
  # Returns the name of the current thread
6
4
  # Default:
@@ -38,9 +38,7 @@ module Sapience
38
38
  metrics.batch do
39
39
  metrics.increment metric_name, tags: tags
40
40
  metrics.timing("#{metric_name}.time", event.duration, tags: tags)
41
- if payload[:db_runtime]
42
- metrics.timing("#{metric_name}.time.db", payload[:db_runtime].round(10), tags: tags)
43
- end
41
+ metrics.timing("#{metric_name}.time.db", payload[:db_runtime].round(10), tags: tags) if payload[:db_runtime]
44
42
 
45
43
 
46
44
 
@@ -29,7 +29,7 @@ module Sapience
29
29
  error = catch(:error) do
30
30
  begin
31
31
  @app_response = @app.call(@env)
32
- rescue => e
32
+ rescue StandardError => e
33
33
  after_exception(e)
34
34
  raise e
35
35
  end
@@ -55,8 +55,8 @@ module Sapience
55
55
  @logger.info(parameters)
56
56
  end
57
57
 
58
- def after_exception(e)
59
- Sapience.push_tags(e.class.name, e.message)
58
+ def after_exception(exc)
59
+ Sapience.push_tags(exc.class.name, exc.message)
60
60
  @status = 500
61
61
  after
62
62
  end
data/lib/sapience/log.rb CHANGED
@@ -125,7 +125,7 @@ module Sapience
125
125
  # Returns [String, String] the file_name and line_number from the backtrace supplied
126
126
  # in either the backtrace or exception
127
127
  def file_name_and_line(short_name = false) # rubocop:disable CyclomaticComplexity
128
- return unless backtrace || (exception && exception.backtrace)
128
+ return unless backtrace || (exception && exception.backtrace) # rubocop: disable Style/SafeNavigation
129
129
  stack = backtrace || exception.backtrace
130
130
  extract_file_and_line(stack, short_name) if stack && !stack.empty?
131
131
  end
@@ -168,7 +168,7 @@ module Sapience
168
168
  # Ruby MRI supports micro seconds
169
169
  # DEPRECATED
170
170
  def formatted_time
171
- format("#{time.strftime("%Y-%m-%d %H:%M:%S")}.%06d", time.usec)
171
+ format("#{time.strftime("%Y-%m-%d %H:%M:%S")}.%06d", time.usec) # rubocop: disable Style/FormatStringToken
172
172
  end
173
173
 
174
174
  # Returns [Hash] representation of this log entry
@@ -27,5 +27,5 @@ module Sapience
27
27
  end
28
28
  end
29
29
  end
30
- # rubocop:enable TrivialAccessors
30
+
31
31
  end
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
  require "concurrent"
3
3
 
4
- # rubocop:disable ClassVars
4
+ # rubocop:disable ClassVars, Style/SafeNavigation
5
5
  module Sapience
6
6
  # Logger stores the class name to be used for all log messages so that every
7
7
  # log message written by this instance will include the class name
@@ -86,7 +86,6 @@ module Sapience
86
86
 
87
87
  # Separate appender thread responsible for reading log messages and
88
88
  # calling the appenders in it's thread
89
- # rubocop:disable LineLength
90
89
  def self.appender_thread
91
90
  @@appender_thread
92
91
  end
@@ -146,10 +145,10 @@ module Sapience
146
145
  end
147
146
  end
148
147
  end
149
- # rubocop:enable BlockNesting, AssignmentInCondition, PerceivedComplexity, CyclomaticComplexity, AbcSize, LineLength, RescueException
150
148
 
151
149
  def flush
152
150
  self.class.flush
153
151
  end
154
152
  end
155
153
  end
154
+ # rubocop:enable ClassVars, Style/SafeNavigation
@@ -28,7 +28,6 @@ module Sapience
28
28
  # tags: [String]
29
29
  # Example:
30
30
  # tag1:true
31
- # rubocop:disable CyclomaticComplexity, PerceivedComplexity
32
31
 
33
32
  def initialize(opts = {})
34
33
  options = opts.dup
@@ -39,7 +38,7 @@ module Sapience
39
38
  end
40
39
 
41
40
  def provider
42
- @_provider ||= ::Datadog::Statsd.new(@uri.host, @uri.port, dog_options)
41
+ @provider ||= ::Datadog::Statsd.new(@uri.host, @uri.port, dog_options)
43
42
  end
44
43
 
45
44
  def valid?
@@ -119,6 +118,8 @@ module Sapience
119
118
  # @example Create an Event with a custom aggregation_key
120
119
  # Sapience.metrics.event('article-published', "article #123", {aggregation_key: 'custom_aggregation_key')
121
120
 
121
+
122
+ # rubocop:disable CyclomaticComplexity, PerceivedComplexity
122
123
  def event(title, text = "", opts = {})
123
124
  return false unless valid?
124
125
  fail ArgumentError "Title must be provided" unless title
@@ -135,6 +136,7 @@ module Sapience
135
136
  title = "#{namespace_prefix}.#{title}" if namespaced_keys.include?(:title)
136
137
  provider.event(title, text, opts)
137
138
  end
139
+ # rubocop:enable CyclomaticComplexity, PerceivedComplexity
138
140
 
139
141
  def success(module_name, action, opts = {})
140
142
  increment("success", add_tags(module_name, action, opts))
@@ -72,6 +72,10 @@ module Sapience
72
72
  require "sapience/extensions/active_job/logging" if defined?(ActiveJob)
73
73
  # Replace the Bugsnag logger
74
74
  Bugsnag.configure { |config| config.logger = Sapience[Bugsnag] } if defined?(Bugsnag)
75
+
76
+ # Make rails less noisy
77
+ Silencer.remove_log_subscriptions if Sapience.config.silent_rails
78
+
75
79
  Sapience::Extensions::ActionController::LogSubscriber.attach_to :action_controller
76
80
  # Sapience::Extensions::ActiveSupport::MailerLogSubscriber.attach_to :action_mailer
77
81
  Sapience::Extensions::ActiveRecord::Notifications.use if defined?(ActiveRecord)
@@ -0,0 +1,30 @@
1
+ module Sapience
2
+ module Rails
3
+ module Silencer
4
+
5
+ # remove all rails log subscribers. Copied from project https://github.com/roidrage/lograge
6
+ def self.remove_log_subscriptions
7
+ ActiveSupport::LogSubscriber.log_subscribers.each do |subscriber|
8
+ case subscriber
9
+ when ActionView::LogSubscriber
10
+ unsubscribe(:action_view, subscriber)
11
+ when ActionController::LogSubscriber
12
+ unsubscribe(:action_controller, subscriber)
13
+ end
14
+ end
15
+ end
16
+
17
+ def self.unsubscribe(component, subscriber)
18
+ events = subscriber.public_methods(false).reject { |method| method.to_s == "call" }
19
+ events.each do |event|
20
+ ActiveSupport::Notifications.notifier.listeners_for("#{event}.#{component}").each do |listener|
21
+ if listener.instance_variable_get("@delegate") == subscriber
22
+ ActiveSupport::Notifications.unsubscribe listener
23
+ end
24
+ end
25
+ end
26
+ end
27
+
28
+ end
29
+ end
30
+ end
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
  require "sapience/rails/railtie"
3
3
  require "sapience/rails/engine"
4
+ require "sapience/rails/silencer"
4
5
 
5
6
  module Sapience
6
7
  module Rails
@@ -69,9 +69,7 @@ module Sapience
69
69
  end
70
70
 
71
71
  def self.default_options(options = {})
72
- unless environment =~ /default|rspec/
73
- warn "No configuration for environment #{environment}. Using 'default'"
74
- end
72
+ warn "No configuration for environment #{environment}. Using 'default'" unless environment =~ /default|rspec/
75
73
  options[DEFAULT_ENV]
76
74
  end
77
75
 
@@ -236,7 +234,7 @@ module Sapience
236
234
  end
237
235
 
238
236
  def self.known_appenders
239
- @_known_appenders ||= Sapience::Subscriber.descendants
237
+ @known_appenders ||= Sapience::Subscriber.descendants
240
238
  end
241
239
 
242
240
  # Examples:
@@ -466,7 +464,7 @@ module Sapience
466
464
  end
467
465
 
468
466
  def self.root
469
- @_root ||= Gem::Specification.find_by_name("sapience").gem_dir
467
+ @root ||= Gem::Specification.find_by_name("sapience").gem_dir
470
468
  end
471
469
 
472
470
  def self.app_name_builder
@@ -475,3 +473,4 @@ module Sapience
475
473
  ENV[APP_NAME]
476
474
  end
477
475
  end
476
+ # rubocop:enable ClassVars
@@ -1,4 +1,4 @@
1
1
  # frozen_string_literal: true
2
2
  module Sapience
3
- VERSION = "2.5.4"
3
+ VERSION = "2.6.0"
4
4
  end
data/sapience.gemspec CHANGED
@@ -1,6 +1,5 @@
1
- # coding: utf-8
2
1
  # frozen_string_literal: true
3
- lib = File.expand_path("../lib", __FILE__)
2
+ lib = File.expand_path("lib", __dir__)
4
3
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
5
4
  require "sapience/version"
6
5
 
@@ -27,23 +26,23 @@ Gem::Specification.new do |spec|
27
26
  spec.require_paths = ["lib"]
28
27
 
29
28
  spec.add_dependency "concurrent-ruby", "~> 1.0"
30
- spec.add_development_dependency "bundler", "~> 1.12"
31
- spec.add_development_dependency "rake", "~> 10.0"
32
- spec.add_development_dependency "rspec", "~> 3.0"
33
- spec.add_development_dependency "reevoocop"
34
- spec.add_development_dependency "fuubar"
35
- spec.add_development_dependency "simplecov"
36
- spec.add_development_dependency "simplecov-json"
37
- spec.add_development_dependency "rspec-its"
38
- spec.add_development_dependency "pry-nav"
39
- spec.add_development_dependency "sentry-raven"
40
- spec.add_development_dependency "dogstatsd-ruby", "~> 2.0"
41
- spec.add_development_dependency "rails", "~> 5.0.0.1"
42
- spec.add_development_dependency "grape"
43
29
  spec.add_development_dependency "active_model_serializers", "~> 0.10.0"
30
+ spec.add_development_dependency "appraisal"
31
+ spec.add_development_dependency "bundler", "~> 1.12"
44
32
  spec.add_development_dependency "codeclimate-test-reporter"
33
+ spec.add_development_dependency "dogstatsd-ruby", "~> 2.0"
34
+ spec.add_development_dependency "fuubar"
45
35
  spec.add_development_dependency "gem-release"
36
+ spec.add_development_dependency "grape"
46
37
  spec.add_development_dependency "memory_profiler"
38
+ spec.add_development_dependency "pry-nav"
39
+ spec.add_development_dependency "rails", "~> 5.0.0.1"
40
+ spec.add_development_dependency "rake", "~> 10.0"
41
+ spec.add_development_dependency "reevoocop"
42
+ spec.add_development_dependency "rspec", "~> 3.0"
43
+ spec.add_development_dependency "rspec-its"
47
44
  spec.add_development_dependency "rspec-prof"
48
- spec.add_development_dependency "appraisal"
45
+ spec.add_development_dependency "sentry-raven"
46
+ spec.add_development_dependency "simplecov"
47
+ spec.add_development_dependency "simplecov-json"
49
48
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sapience
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.5.4
4
+ version: 2.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mikael Henriksson
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2018-09-24 00:00:00.000000000 Z
12
+ date: 2018-10-01 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: concurrent-ruby
@@ -26,49 +26,49 @@ dependencies:
26
26
  - !ruby/object:Gem::Version
27
27
  version: '1.0'
28
28
  - !ruby/object:Gem::Dependency
29
- name: bundler
29
+ name: active_model_serializers
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
32
  - - "~>"
33
33
  - !ruby/object:Gem::Version
34
- version: '1.12'
34
+ version: 0.10.0
35
35
  type: :development
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
39
  - - "~>"
40
40
  - !ruby/object:Gem::Version
41
- version: '1.12'
41
+ version: 0.10.0
42
42
  - !ruby/object:Gem::Dependency
43
- name: rake
43
+ name: appraisal
44
44
  requirement: !ruby/object:Gem::Requirement
45
45
  requirements:
46
- - - "~>"
46
+ - - ">="
47
47
  - !ruby/object:Gem::Version
48
- version: '10.0'
48
+ version: '0'
49
49
  type: :development
50
50
  prerelease: false
51
51
  version_requirements: !ruby/object:Gem::Requirement
52
52
  requirements:
53
- - - "~>"
53
+ - - ">="
54
54
  - !ruby/object:Gem::Version
55
- version: '10.0'
55
+ version: '0'
56
56
  - !ruby/object:Gem::Dependency
57
- name: rspec
57
+ name: bundler
58
58
  requirement: !ruby/object:Gem::Requirement
59
59
  requirements:
60
60
  - - "~>"
61
61
  - !ruby/object:Gem::Version
62
- version: '3.0'
62
+ version: '1.12'
63
63
  type: :development
64
64
  prerelease: false
65
65
  version_requirements: !ruby/object:Gem::Requirement
66
66
  requirements:
67
67
  - - "~>"
68
68
  - !ruby/object:Gem::Version
69
- version: '3.0'
69
+ version: '1.12'
70
70
  - !ruby/object:Gem::Dependency
71
- name: reevoocop
71
+ name: codeclimate-test-reporter
72
72
  requirement: !ruby/object:Gem::Requirement
73
73
  requirements:
74
74
  - - ">="
@@ -82,21 +82,21 @@ dependencies:
82
82
  - !ruby/object:Gem::Version
83
83
  version: '0'
84
84
  - !ruby/object:Gem::Dependency
85
- name: fuubar
85
+ name: dogstatsd-ruby
86
86
  requirement: !ruby/object:Gem::Requirement
87
87
  requirements:
88
- - - ">="
88
+ - - "~>"
89
89
  - !ruby/object:Gem::Version
90
- version: '0'
90
+ version: '2.0'
91
91
  type: :development
92
92
  prerelease: false
93
93
  version_requirements: !ruby/object:Gem::Requirement
94
94
  requirements:
95
- - - ">="
95
+ - - "~>"
96
96
  - !ruby/object:Gem::Version
97
- version: '0'
97
+ version: '2.0'
98
98
  - !ruby/object:Gem::Dependency
99
- name: simplecov
99
+ name: fuubar
100
100
  requirement: !ruby/object:Gem::Requirement
101
101
  requirements:
102
102
  - - ">="
@@ -110,7 +110,7 @@ dependencies:
110
110
  - !ruby/object:Gem::Version
111
111
  version: '0'
112
112
  - !ruby/object:Gem::Dependency
113
- name: simplecov-json
113
+ name: gem-release
114
114
  requirement: !ruby/object:Gem::Requirement
115
115
  requirements:
116
116
  - - ">="
@@ -124,7 +124,7 @@ dependencies:
124
124
  - !ruby/object:Gem::Version
125
125
  version: '0'
126
126
  - !ruby/object:Gem::Dependency
127
- name: rspec-its
127
+ name: grape
128
128
  requirement: !ruby/object:Gem::Requirement
129
129
  requirements:
130
130
  - - ">="
@@ -138,7 +138,7 @@ dependencies:
138
138
  - !ruby/object:Gem::Version
139
139
  version: '0'
140
140
  - !ruby/object:Gem::Dependency
141
- name: pry-nav
141
+ name: memory_profiler
142
142
  requirement: !ruby/object:Gem::Requirement
143
143
  requirements:
144
144
  - - ">="
@@ -152,7 +152,7 @@ dependencies:
152
152
  - !ruby/object:Gem::Version
153
153
  version: '0'
154
154
  - !ruby/object:Gem::Dependency
155
- name: sentry-raven
155
+ name: pry-nav
156
156
  requirement: !ruby/object:Gem::Requirement
157
157
  requirements:
158
158
  - - ">="
@@ -166,35 +166,35 @@ dependencies:
166
166
  - !ruby/object:Gem::Version
167
167
  version: '0'
168
168
  - !ruby/object:Gem::Dependency
169
- name: dogstatsd-ruby
169
+ name: rails
170
170
  requirement: !ruby/object:Gem::Requirement
171
171
  requirements:
172
172
  - - "~>"
173
173
  - !ruby/object:Gem::Version
174
- version: '2.0'
174
+ version: 5.0.0.1
175
175
  type: :development
176
176
  prerelease: false
177
177
  version_requirements: !ruby/object:Gem::Requirement
178
178
  requirements:
179
179
  - - "~>"
180
180
  - !ruby/object:Gem::Version
181
- version: '2.0'
181
+ version: 5.0.0.1
182
182
  - !ruby/object:Gem::Dependency
183
- name: rails
183
+ name: rake
184
184
  requirement: !ruby/object:Gem::Requirement
185
185
  requirements:
186
186
  - - "~>"
187
187
  - !ruby/object:Gem::Version
188
- version: 5.0.0.1
188
+ version: '10.0'
189
189
  type: :development
190
190
  prerelease: false
191
191
  version_requirements: !ruby/object:Gem::Requirement
192
192
  requirements:
193
193
  - - "~>"
194
194
  - !ruby/object:Gem::Version
195
- version: 5.0.0.1
195
+ version: '10.0'
196
196
  - !ruby/object:Gem::Dependency
197
- name: grape
197
+ name: reevoocop
198
198
  requirement: !ruby/object:Gem::Requirement
199
199
  requirements:
200
200
  - - ">="
@@ -208,21 +208,21 @@ dependencies:
208
208
  - !ruby/object:Gem::Version
209
209
  version: '0'
210
210
  - !ruby/object:Gem::Dependency
211
- name: active_model_serializers
211
+ name: rspec
212
212
  requirement: !ruby/object:Gem::Requirement
213
213
  requirements:
214
214
  - - "~>"
215
215
  - !ruby/object:Gem::Version
216
- version: 0.10.0
216
+ version: '3.0'
217
217
  type: :development
218
218
  prerelease: false
219
219
  version_requirements: !ruby/object:Gem::Requirement
220
220
  requirements:
221
221
  - - "~>"
222
222
  - !ruby/object:Gem::Version
223
- version: 0.10.0
223
+ version: '3.0'
224
224
  - !ruby/object:Gem::Dependency
225
- name: codeclimate-test-reporter
225
+ name: rspec-its
226
226
  requirement: !ruby/object:Gem::Requirement
227
227
  requirements:
228
228
  - - ">="
@@ -236,7 +236,7 @@ dependencies:
236
236
  - !ruby/object:Gem::Version
237
237
  version: '0'
238
238
  - !ruby/object:Gem::Dependency
239
- name: gem-release
239
+ name: rspec-prof
240
240
  requirement: !ruby/object:Gem::Requirement
241
241
  requirements:
242
242
  - - ">="
@@ -250,7 +250,7 @@ dependencies:
250
250
  - !ruby/object:Gem::Version
251
251
  version: '0'
252
252
  - !ruby/object:Gem::Dependency
253
- name: memory_profiler
253
+ name: sentry-raven
254
254
  requirement: !ruby/object:Gem::Requirement
255
255
  requirements:
256
256
  - - ">="
@@ -264,7 +264,7 @@ dependencies:
264
264
  - !ruby/object:Gem::Version
265
265
  version: '0'
266
266
  - !ruby/object:Gem::Dependency
267
- name: rspec-prof
267
+ name: simplecov
268
268
  requirement: !ruby/object:Gem::Requirement
269
269
  requirements:
270
270
  - - ">="
@@ -278,7 +278,7 @@ dependencies:
278
278
  - !ruby/object:Gem::Version
279
279
  version: '0'
280
280
  - !ruby/object:Gem::Dependency
281
- name: appraisal
281
+ name: simplecov-json
282
282
  requirement: !ruby/object:Gem::Requirement
283
283
  requirements:
284
284
  - - ">="
@@ -374,6 +374,7 @@ files:
374
374
  - lib/sapience/rails.rb
375
375
  - lib/sapience/rails/engine.rb
376
376
  - lib/sapience/rails/railtie.rb
377
+ - lib/sapience/rails/silencer.rb
377
378
  - lib/sapience/sapience.rb
378
379
  - lib/sapience/sneakers.rb
379
380
  - lib/sapience/subscriber.rb