logster 2.3.0 → 2.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -18,14 +18,14 @@
18
18
  "test": "ember test"
19
19
  },
20
20
  "devDependencies": {
21
- "@ember/jquery": "^0.5.2",
21
+ "jquery": "3.4.1",
22
22
  "@ember/optional-features": "^0.6.3",
23
23
  "broccoli-asset-rev": "^2.7.0",
24
- "ember-ajax": "^3.1.0",
25
- "ember-cli": "~3.5.0",
24
+ "ember-ajax": "^5.0.0",
25
+ "ember-cli": "~3.8.2",
26
26
  "ember-cli-app-version": "^3.2.0",
27
- "ember-cli-babel": "^6.16.0",
28
- "ember-cli-dependency-checker": "^3.0.0",
27
+ "ember-cli-babel": "^7.1.2",
28
+ "ember-cli-dependency-checker": "^3.1.0",
29
29
  "ember-cli-eslint": "^4.2.3",
30
30
  "ember-cli-htmlbars": "^3.0.0",
31
31
  "ember-cli-htmlbars-inline-precompile": "^1.0.3",
@@ -33,14 +33,14 @@
33
33
  "ember-cli-sri": "^2.1.1",
34
34
  "ember-cli-template-lint": "^1.0.0-beta.1",
35
35
  "ember-cli-uglify": "^2.1.0",
36
- "ember-data": "~3.5.0",
36
+ "ember-data": "~3.8.0",
37
37
  "ember-export-application-global": "^2.0.0",
38
38
  "ember-font-awesome": "^4.0.0-rc.4",
39
39
  "ember-load-initializers": "^1.1.0",
40
40
  "ember-maybe-import-regenerator": "^0.1.6",
41
41
  "ember-qunit": "^3.4.1",
42
42
  "ember-resolver": "^5.0.1",
43
- "ember-source": "~3.5.0",
43
+ "ember-source": "~3.8.0",
44
44
  "ember-welcome-page": "^3.2.0",
45
45
  "eslint-plugin-ember": "^5.2.0",
46
46
  "loader.js": "^4.7.0",
@@ -35,7 +35,7 @@ module Logster
35
35
  when Regexp
36
36
  message.to_s =~ pattern
37
37
  when String
38
- message.to_s =~ Regexp.new(pattern, Regexp::IGNORECASE)
38
+ message.to_s =~ Regexp.new(Regexp.escape(pattern), Regexp::IGNORECASE)
39
39
  when Hash
40
40
  if Hash === message
41
41
  compare_hash(message, pattern)
@@ -73,6 +73,10 @@ module Logster
73
73
  msg
74
74
  end
75
75
 
76
+ def env=(env)
77
+ @env = self.class.scrub_params(env)
78
+ end
79
+
76
80
  def self.hostname
77
81
  @hostname ||= `hostname`.strip! rescue "<unknown>"
78
82
  end
@@ -203,6 +207,23 @@ module Logster
203
207
  end
204
208
  end
205
209
 
210
+ def self.scrub_params(params)
211
+ if Array === params
212
+ params.map! { |p| scrub_params(p) }
213
+ params
214
+ elsif Hash === params
215
+ params.each do |k, v|
216
+ params[k] = scrub_params(v)
217
+ end
218
+ params
219
+ elsif String === params
220
+ scrubbed = params.scrub if !params.valid_encoding?
221
+ scrubbed || params
222
+ else
223
+ params
224
+ end
225
+ end
226
+
206
227
  protected
207
228
 
208
229
  def get_timestamp
@@ -1,3 +1,3 @@
1
1
  module Logster
2
- VERSION = "2.3.0"
2
+ VERSION = "2.3.1"
3
3
  end
@@ -4,11 +4,11 @@ require 'logster/ignore_pattern'
4
4
  class TestIgnorePattern < Minitest::Test
5
5
 
6
6
  def test_string_message_pattern
7
- msg = Logster::Message.new(Logger::WARN, "test", "my error")
7
+ msg = Logster::Message.new(Logger::WARN, "test", "my error (oh no!)")
8
8
  msg_frog = Logster::Message.new(Logger::WARN, "test", "a frog")
9
9
  msg_nil = Logster::Message.new(Logger::WARN, "test", nil)
10
10
 
11
- pattern = Logster::IgnorePattern.new("ERROR")
11
+ pattern = Logster::IgnorePattern.new("my error (")
12
12
 
13
13
  assert pattern.matches? msg
14
14
  assert !pattern.matches?(msg_frog)
@@ -76,6 +76,24 @@ class TestMessage < MiniTest::Test
76
76
  assert_equal(msg1.count, 15 + 13)
77
77
  end
78
78
 
79
+ def test_messages_with_bad_encoding_dont_break_logster
80
+ hash = {
81
+ severity: 0,
82
+ progname: "test",
83
+ message: "invalid encoding",
84
+ env: {
85
+ a: "bad_value",
86
+ b: ["bad_value"]
87
+ }
88
+ }
89
+ json = hash.to_json.gsub("bad_value", "45\xC0\xBE")
90
+ message = Logster::Message.from_json(json)
91
+ message.to_json # test failure would be this raising exception
92
+
93
+ message.env = JSON.parse(json)["env"]
94
+ message.to_json
95
+ end
96
+
79
97
  def test_populate_from_env_works_on_array
80
98
  msg = Logster::Message.new(0, '', 'test', 10)
81
99
  hash = { "custom_key" => "key" }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: logster
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.3.0
4
+ version: 2.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - UI for viewing logs in Rack
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-03-26 00:00:00.000000000 Z
11
+ date: 2019-08-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler