code-ruby 3.0.7 → 3.0.9

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: 4241e470b81d44e429887c08e62046e2f6f9a461eba2c44979d0d26891d50dc8
4
- data.tar.gz: 756f4b91f0b73841c14ad652ea28da7d1304c49f1fb0692eec4d9e18fec0d58e
3
+ metadata.gz: 3ce2fde0ad82db9c01bd5ba06cfd1b12123819422a8384783678fe02bc083453
4
+ data.tar.gz: b188d825c3e6cf728b7290fc0a4e7d2ec72d1eb22a3949854b024b47d2c1d04f
5
5
  SHA512:
6
- metadata.gz: bdd9da9845c9785447fe20c56b31c6a25b3ac511e45d015062f1536f93c6db94b01c52d5f80a8ef9f98e223d286c685eb1d47c2d2f53c5dc4f206247011415d6
7
- data.tar.gz: f6af560ee806eb0ab3636370fad3e8ec807f3e7e0825956cca5357a788b02f9eefa14dfc9ec9e5e34f050e71f2a31e635b8864d82cd371eefa93d1d04e673282
6
+ metadata.gz: 894a43bd0eddb8374bf65e266f08d1a7b99652cdafb48e1cef96e5ed168d006a6dc58b12e7e1cb9f757efad66365e6835f56cc0dedb8d184693d09304a9aafaf
7
+ data.tar.gz: 20614c5ac0f308334d20e21e2ee69e6ba283e4cb5e4bf0274f0b375fc397fc4b29569ead66ffbacbc2070cb0af66f05ae7bfc78fa2c64529d6015c09fc7ebaa0
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- code-ruby (3.0.7)
4
+ code-ruby (3.0.9)
5
5
  activesupport
6
6
  base64
7
7
  bigdecimal
data/VERSION CHANGED
@@ -1 +1 @@
1
- 3.0.7
1
+ 3.0.9
@@ -226,7 +226,7 @@ class Code
226
226
  response = http.request(request)
227
227
  rescue ::Timeout::Error, ::Errno::ETIMEDOUT
228
228
  raise ::Code::Error, "http timeout"
229
- rescue OpenSSL::SSL::SSLError, IOError, SystemCallError
229
+ rescue OpenSSL::SSL::SSLError, IOError, SystemCallError, SocketError
230
230
  raise ::Code::Error, "http error"
231
231
  end
232
232
 
data/lib/code/parser.rb CHANGED
@@ -32,37 +32,37 @@ class Code
32
32
  while
33
33
  ].freeze
34
34
 
35
- MULTI_CHAR_OPERATORS = %w[
36
- &.
37
- &&
38
- &&=
39
- **
40
- *=
41
- +=
42
- -=
43
- ..
44
- ...
45
- /=
46
- ::
47
- <<=
48
- <<
49
- <=>
50
- <=
51
- ===
52
- ==
53
- =~
54
- >=
55
- >>=
56
- >>
57
- ||=
58
- ||
59
- |=
60
- !==
61
- !=
62
- !~
63
- %=
64
- ^=
65
- =>
35
+ MULTI_CHAR_OPERATORS = [
36
+ "&.",
37
+ "&&",
38
+ "&&=",
39
+ "**",
40
+ "*=",
41
+ "+=",
42
+ "-=",
43
+ "..",
44
+ "...",
45
+ "/=",
46
+ "::",
47
+ "<<=",
48
+ "<<",
49
+ "<=>",
50
+ "<=",
51
+ "===",
52
+ "==",
53
+ "=~",
54
+ ">=",
55
+ ">>=",
56
+ ">>",
57
+ "||=",
58
+ "||",
59
+ "|=",
60
+ "!==",
61
+ "!=",
62
+ "!~",
63
+ "%=",
64
+ "^=",
65
+ "=>"
66
66
  ].sort_by(&:length).reverse.freeze
67
67
  CONTINUATION_KEYWORDS = %w[or and rescue].freeze
68
68
  POSTFIX_CONTINUATIONS = %w[. :: &.].freeze
data/lib/code-ruby.rb CHANGED
@@ -19,6 +19,7 @@ require "zeitwerk"
19
19
 
20
20
  loader = Zeitwerk::Loader.for_gem(warn_on_extra_files: false)
21
21
  loader.ignore("#{__dir__}/code-ruby.rb")
22
+ loader.ignore("#{__dir__}/code/extensions")
22
23
  loader.setup
23
24
 
24
25
  require_relative "code/extensions/word_number_comparaisons"
@@ -16,5 +16,18 @@ RSpec.describe Code::Object::Http do
16
16
  )
17
17
  end.to raise_error(Code::Error, "http error")
18
18
  end
19
+
20
+ it "wraps name resolution errors as Code::Error" do
21
+ allow_any_instance_of(Net::HTTP).to receive(:request).and_raise(
22
+ Socket::ResolutionError,
23
+ "getaddrinfo(3): Temporary failure in name resolution"
24
+ )
25
+
26
+ expect do
27
+ described_class.code_get(
28
+ Code::Object::String.new("https://api.github.com")
29
+ )
30
+ end.to raise_error(Code::Error, "http error")
31
+ end
19
32
  end
20
33
  end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ RSpec.describe Zeitwerk::Loader do
4
+ it "eager loads without treating monkey patches as Code::Extensions constants" do
5
+ expect { described_class.eager_load_all }.not_to raise_error
6
+ end
7
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: code-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.7
4
+ version: 3.0.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dorian Marié
@@ -356,6 +356,7 @@ files:
356
356
  - spec/code/type_spec.rb
357
357
  - spec/code_spec.rb
358
358
  - spec/spec_helper.rb
359
+ - spec/zeitwerk/loader_spec.rb
359
360
  homepage: https://github.com/dorianmariecom/code-ruby
360
361
  licenses:
361
362
  - MIT