appmap 0.102.0 → 0.102.2

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
  SHA256:
3
- metadata.gz: 1df97ff2f7c62ce830193389327e102a89798678350dbc653aecc98157e502cb
4
- data.tar.gz: ff14a72537014f549a5094b592a6dd28e9a6658679e0c411529d7c4c12491822
3
+ metadata.gz: 7535028ffd94cccfeb167a51005d03d3eb49bdab5e987d08eaaa41040f2ead72
4
+ data.tar.gz: 1e447679a5a3b0b690d9db333e4150e28c84c5bc0556f221a959331c16ac259f
5
5
  SHA512:
6
- metadata.gz: 21781f0d7b9d61d72cd6b442b1105a1eabd19ba07ccca62bb8fd5acaede9e6db2a3cf5594a80c1270ff574d977b709c22031a12a88361cd36fe3013e5238cb03
7
- data.tar.gz: bcc9fd8526da90172d0f7f159a1c4a61a0245e70d1d800f38b98e1d13f0a35ee26898c064107a0de5eb3f7d11d1eecf98c12df1f14a4c37cb72582a1a6bdcf1d
6
+ metadata.gz: 9356f03158736805234225c0a0368317658b4d2ad821ca67cb9c2582f5d7ada84a0c36edbbc71a26dab37509bcbc79c3e8bdaa16b64a76468702ccea068d4068
7
+ data.tar.gz: 592abd7344c26dbd07a6137aa99bf5b8ba21020569b796b6dcecb06a27a8bc24bb5079f9992d85cb6ebb9c43ab2d05690361dc1bc0e5c9dea52d78594290ebc6
data/CHANGELOG.md CHANGED
@@ -1,3 +1,17 @@
1
+ ## [0.102.2](https://github.com/getappmap/appmap-ruby/compare/v0.102.1...v0.102.2) (2023-11-07)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * Don't emit invalid HTTP status ([d30fb06](https://github.com/getappmap/appmap-ruby/commit/d30fb06223c6e30e0681c4fac2a9f8824d3c035f)), closes [/github.com/rails/rails/blob/febd21da3438d190f0c6ce296a114baee983d1e1/actioncable/lib/action_cable/connection/client_socket.rb#L71C23-L71C23](https://github.com//github.com/rails/rails/blob/febd21da3438d190f0c6ce296a114baee983d1e1/actioncable/lib/action_cable/connection/client_socket.rb/issues/L71C23-L71C23) [/github.com/faye/websocket-driver-ruby/blob/58d4ed742749dfb3b4f568df36a5365088361220/lib/websocket/driver/draft76.rb#L61](https://github.com//github.com/faye/websocket-driver-ruby/blob/58d4ed742749dfb3b4f568df36a5365088361220/lib/websocket/driver/draft76.rb/issues/L61)
7
+
8
+ ## [0.102.1](https://github.com/getappmap/appmap-ruby/compare/v0.102.0...v0.102.1) (2023-07-25)
9
+
10
+
11
+ ### Bug Fixes
12
+
13
+ * Guard access to the :size method ([e0b53b2](https://github.com/getappmap/appmap-ruby/commit/e0b53b23d46f8467884c5c387a9081d98cb7cca7)), closes [#341](https://github.com/getappmap/appmap-ruby/issues/341)
14
+
1
15
  # [0.102.0](https://github.com/getappmap/appmap-ruby/compare/v0.101.0...v0.102.0) (2023-07-18)
2
16
 
3
17
 
data/appmap.gemspec CHANGED
@@ -40,7 +40,7 @@ Gem::Specification.new do |spec|
40
40
  spec.add_development_dependency 'rake', '>= 12.3.3'
41
41
  spec.add_development_dependency 'rake-compiler'
42
42
  spec.add_development_dependency 'rdoc'
43
- spec.add_development_dependency 'rubocop', '~> 1.36'
43
+ spec.add_development_dependency 'standardrb', "~> 1.0"
44
44
 
45
45
  # Testing
46
46
  spec.add_development_dependency 'climate_control'
@@ -76,12 +76,18 @@ module AppMap
76
76
  class << self
77
77
  def build_from_invocation(parent_id, return_value, elapsed, response, event: HTTPServerResponse.new)
78
78
  event ||= HTTPServerResponse.new
79
- event.status = response[:status] || response.status
79
+
80
+ status = response[:status] || response.status
81
+ event.status = status if valid_http_status?(status)
80
82
  event.headers = (response[:headers] || response.headers).dup
81
83
  AppMap::Event::MethodReturn.build_from_invocation parent_id, return_value, nil, elapsed: elapsed, event: event, parameter_schema: true
82
84
  end
83
85
  end
84
86
 
87
+ def self.valid_http_status?(status)
88
+ status.is_a?(Integer) && status >= 100 && status < 600
89
+ end
90
+
85
91
  def to_h
86
92
  super.tap do |h|
87
93
  h[:http_server_response] = {
@@ -7,7 +7,7 @@ module AppMap
7
7
 
8
8
  def detect_size(value)
9
9
  # Don't risk calling #size on things like data-access objects, which can and will issue queries for this information.
10
- if value.is_a?(Array) || value.is_a?(Hash)
10
+ if (value.is_a?(Array) || value.is_a?(Hash)) && value.respond_to?(:size)
11
11
  value.size
12
12
  end
13
13
  end
@@ -3,7 +3,7 @@
3
3
  module AppMap
4
4
  URL = 'https://github.com/applandinc/appmap-ruby'
5
5
 
6
- VERSION = '0.102.0'
6
+ VERSION = '0.102.2'
7
7
 
8
8
  APPMAP_FORMAT_VERSION = '1.12.0'
9
9
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: appmap
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.102.0
4
+ version: 0.102.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kevin Gilpin
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-07-18 00:00:00.000000000 Z
11
+ date: 2023-11-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: method_source
@@ -151,19 +151,19 @@ dependencies:
151
151
  - !ruby/object:Gem::Version
152
152
  version: '0'
153
153
  - !ruby/object:Gem::Dependency
154
- name: rubocop
154
+ name: standardrb
155
155
  requirement: !ruby/object:Gem::Requirement
156
156
  requirements:
157
157
  - - "~>"
158
158
  - !ruby/object:Gem::Version
159
- version: '1.36'
159
+ version: '1.0'
160
160
  type: :development
161
161
  prerelease: false
162
162
  version_requirements: !ruby/object:Gem::Requirement
163
163
  requirements:
164
164
  - - "~>"
165
165
  - !ruby/object:Gem::Version
166
- version: '1.36'
166
+ version: '1.0'
167
167
  - !ruby/object:Gem::Dependency
168
168
  name: climate_control
169
169
  requirement: !ruby/object:Gem::Requirement
@@ -324,7 +324,6 @@ files:
324
324
  - ".nvmrc"
325
325
  - ".rbenv-gemsets"
326
326
  - ".releaserc.yml"
327
- - ".rubocop.yml"
328
327
  - ".ruby-version"
329
328
  - ".rufo"
330
329
  - ".travis.yml"
data/.rubocop.yml DELETED
@@ -1,52 +0,0 @@
1
- AllCops:
2
- NewCops: enable
3
-
4
- # The gem is automatically pushed by CI
5
- Gemspec/RequireMFA:
6
- Enabled: false
7
-
8
- Layout/ArrayAlignment:
9
- EnforcedStyle: with_fixed_indentation
10
-
11
- Layout/CaseIndentation:
12
- EnforcedStyle: end
13
-
14
- Layout/FirstArgumentIndentation:
15
- EnforcedStyle: consistent
16
-
17
- Layout/FirstArrayElementIndentation:
18
- EnforcedStyle: consistent
19
-
20
- Layout/SpaceInsideArrayLiteralBrackets:
21
- Enabled: false
22
-
23
- # We have squiggly heredocs
24
- Layout/HeredocIndentation:
25
- Enabled: false
26
-
27
- Layout/LineLength:
28
- Max: 120
29
-
30
- Metrics/BlockLength:
31
- AllowedMethods:
32
- - describe
33
- - it
34
- - context
35
-
36
- Style/MultilineBlockChain:
37
- Enabled: false
38
-
39
- Style/NumericPredicate:
40
- Enabled: false
41
-
42
- Style/AndOr:
43
- Enabled: false
44
-
45
- Style/HashEachMethods:
46
- Enabled: true
47
-
48
- Style/HashTransformKeys:
49
- Enabled: true
50
-
51
- Style/HashTransformValues:
52
- Enabled: true