veracode 1.1.5 → 1.1.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 37b1dcba1a6fdef908b9fa09163803ffa0ba23628ff38df4332fd493563e6188
4
- data.tar.gz: 5f483a6af098af454f785f676f6f7903f4b05aefef51a202cc0e5fd7ae779a97
3
+ metadata.gz: 5cd6b5054a777beb3edbe568783105295ef5d2aba60403bc80afee04a53b3348
4
+ data.tar.gz: 3c47c2749ce2038a316571e9f529b47ad0f19bdb3dcf45658783ad38e8783cfe
5
5
  SHA512:
6
- metadata.gz: b8bc512ac4a431b7f77dabd12b4a703fbc93faf112db48d0c5782c3555a6f113ce0cbbaab25db645807ab5cae83afd28faf9acf80b31137dba784a885e7d69ca
7
- data.tar.gz: 3b5e57faad8593402d64558d77750abaf498efe30654e14a8a17ca1646868b60ec455cc077cd886d109a1fafb80672e4aa74cc79f13124df849cf279101e675d
6
+ metadata.gz: 0240d159fe34cb8516a19b1ec8e5cb0920dd5dcd777606a2dc7ce3553367d925424781f42a99e1a5b65d297a45a16a3196cb35db019673d51c45921e0abbd117
7
+ data.tar.gz: ec7c3e0a1d0f3350c6cdd6f10f5c7200469598a05ccee43453ac432082894ea7be8ee203531159045048bfebb383679f5694db38554ee85fbd4753e766cea360
@@ -1,4 +1,4 @@
1
1
  module Veracode
2
- VERSION = '1.1.5'
2
+ VERSION = '1.1.6'
3
3
  ARCHIVE_VERSION = '2020-06-29'
4
4
  end
data/lib/veracode.rb CHANGED
@@ -292,6 +292,7 @@ module Veracode
292
292
 
293
293
  def self.safe_name(o)
294
294
  begin
295
+ restore_original_class_method(o)
295
296
  case
296
297
  when o == ActiveSupport::TimeWithZone
297
298
  "ActiveSupport::TimeWithZone"
@@ -317,6 +318,23 @@ module Veracode
317
318
  "Veracode" #should result in this being dropped from the archive since we can't get a safe name for it
318
319
  end
319
320
  end
321
+
322
+ # Some Ruby devs override the `class` method.
323
+ # This is bad practice but is still done sometimes.
324
+ # For example: https://github.com/faker-ruby/faker/blob/v2.2.1/lib/faker/games/heroes_of_the_storm.rb#L11-L13
325
+ # This messes with our ability to get the class name.
326
+ # So we detect this and if it is overriden we restore the original method from `Kernel`
327
+ def self.restore_original_class_method(obj)
328
+ original_class_method = Kernel.instance_method(:class)
329
+
330
+ class_method_owner = obj.method(:class).owner
331
+
332
+ if class_method_owner != Kernel
333
+ obj.define_singleton_method(:class) do
334
+ original_class_method.bind(self).call
335
+ end
336
+ end
337
+ end
320
338
 
321
339
  def self.quote(o)
322
340
  o.to_s.dump
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: veracode
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.5
4
+ version: 1.1.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Veracode
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-03-16 00:00:00.000000000 Z
11
+ date: 2024-03-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rubyzip