crapi 1.0.0 → 1.0.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: '075697a77cf82734a58523c8c65c8395d754ad3e7a0a41648a5d33228e62b77e'
4
- data.tar.gz: c5368393dd38933dd3e10ee4bb23dfc809e5ab023dbdccfa50a882d23fdf41a6
3
+ metadata.gz: 582aaf5aaa9df6c582205b77f18d8597178ce1b18444a7eb9e744f3c2c08e861
4
+ data.tar.gz: d8efdc1519117a8d6fafe9a8d6a7dd0900191ab845d01c1add645c11ba5bc880
5
5
  SHA512:
6
- metadata.gz: 9340c8ec96dd620bcd6e41388af546e2adb5b01edc331209d2f541f6229e396caece559911bbbb16879d2cd53b1ca3bf2af5cf0dbfb28ed2b5525a2892a6408a
7
- data.tar.gz: c72ae40ed2ca9b4bcaef675e4e8326dc33e4764b9c577a10fddfbdbc52653e4458f386e363f4c5d42e04c033eb8782ca5bef0071cfd2d67f65c208a028d6130e
6
+ metadata.gz: b1119b534ab3d730c915c5cc0c01b9c24f63ec4f6fd1cf2f94e53b2312ce23cb293b1302f0a40c4948f46ed4f05848b65eb39c9ccf932b0ed5059bb4f4827426
7
+ data.tar.gz: af59a4845a5af3b2d33801bf49df0c8a914b8f7a13febaaa64114ab2d77aec021ed098dfe1ec4eaa0abb76fa70f44403ebcabf7896b1f09e37a7371501099a7e
data/.circleci/config.yml CHANGED
@@ -2,12 +2,12 @@
2
2
  #
3
3
  # Check https://circleci.com/docs/2.0/language-ruby/ for more details
4
4
  #
5
- version: 2
5
+ version: 2.1
6
6
  jobs:
7
7
  build:
8
8
  docker:
9
9
  # specify the version you desire here
10
- - image: cimg/ruby:3.0
10
+ - image: cimg/ruby:3.4
11
11
 
12
12
  # Specify service dependencies here if necessary
13
13
  # CircleCI maintains a library of pre-built images
@@ -23,7 +23,7 @@ jobs:
23
23
  - restore_cache:
24
24
  keys:
25
25
  - v1-dependencies-{{ checksum "Gemfile.lock" }}
26
- # fallback to using the latest cache if no exact match is found
26
+ # fall back to using the latest cache if no exact match is found
27
27
  - v1-dependencies
28
28
 
29
29
  - run:
@@ -34,7 +34,8 @@ jobs:
34
34
  - run:
35
35
  name: install dependencies
36
36
  command: |
37
- bundle install --jobs=4 --retry=3 --path vendor/bundle
37
+ bundle config set path vendor/bundle
38
+ bundle install --jobs=$(nproc) --retry=3
38
39
 
39
40
  - save_cache:
40
41
  paths:
data/.gitignore CHANGED
@@ -9,3 +9,6 @@
9
9
 
10
10
  # rspec failure tracking
11
11
  .rspec_status
12
+
13
+ # don't commit gem builds
14
+ crapi-*.gem
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 3.0
1
+ 3.4
data/Gemfile.lock CHANGED
@@ -1,80 +1,106 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- crapi (0.1.3)
5
- activesupport (>= 6.0, < 7.1)
4
+ crapi (1.0.0)
5
+ activesupport (>= 6.1.0, < 9)
6
6
 
7
7
  GEM
8
8
  remote: https://rubygems.org/
9
9
  specs:
10
- activesupport (7.0.4)
11
- concurrent-ruby (~> 1.0, >= 1.0.2)
10
+ activesupport (8.1.3)
11
+ base64
12
+ bigdecimal
13
+ concurrent-ruby (~> 1.0, >= 1.3.1)
14
+ connection_pool (>= 2.2.5)
15
+ drb
12
16
  i18n (>= 1.6, < 2)
17
+ json
18
+ logger (>= 1.4.2)
13
19
  minitest (>= 5.1)
14
- tzinfo (~> 2.0)
15
- addressable (2.8.1)
16
- public_suffix (>= 2.0.2, < 6.0)
17
- ast (2.4.2)
18
- concurrent-ruby (1.1.10)
19
- crack (0.4.5)
20
+ securerandom (>= 0.3)
21
+ tzinfo (~> 2.0, >= 2.0.5)
22
+ uri (>= 0.13.1)
23
+ addressable (2.9.0)
24
+ public_suffix (>= 2.0.2, < 8.0)
25
+ ast (2.4.3)
26
+ base64 (0.3.0)
27
+ bigdecimal (4.1.2)
28
+ concurrent-ruby (1.3.7)
29
+ connection_pool (3.0.2)
30
+ crack (1.0.1)
31
+ bigdecimal
20
32
  rexml
21
- diff-lcs (1.5.0)
22
- hashdiff (1.0.1)
23
- i18n (1.12.0)
33
+ diff-lcs (1.6.2)
34
+ drb (2.2.3)
35
+ hashdiff (1.2.1)
36
+ i18n (1.15.2)
24
37
  concurrent-ruby (~> 1.0)
25
- json (2.6.3)
26
- minitest (5.16.3)
27
- parallel (1.22.1)
28
- parser (3.1.3.0)
38
+ json (2.20.0)
39
+ language_server-protocol (3.17.0.6)
40
+ lint_roller (1.1.0)
41
+ logger (1.7.0)
42
+ minitest (6.0.6)
43
+ drb (~> 2.0)
44
+ prism (~> 1.5)
45
+ parallel (2.1.0)
46
+ parser (3.3.11.1)
29
47
  ast (~> 2.4.1)
30
- public_suffix (5.0.1)
48
+ racc
49
+ prism (1.9.0)
50
+ public_suffix (7.0.5)
51
+ racc (1.8.1)
31
52
  rainbow (3.1.1)
32
- regexp_parser (2.6.1)
33
- rexml (3.2.5)
34
- rspec (3.12.0)
35
- rspec-core (~> 3.12.0)
36
- rspec-expectations (~> 3.12.0)
37
- rspec-mocks (~> 3.12.0)
38
- rspec-core (3.12.0)
39
- rspec-support (~> 3.12.0)
40
- rspec-expectations (3.12.1)
53
+ regexp_parser (2.12.0)
54
+ rexml (3.4.4)
55
+ rspec (3.13.2)
56
+ rspec-core (~> 3.13.0)
57
+ rspec-expectations (~> 3.13.0)
58
+ rspec-mocks (~> 3.13.0)
59
+ rspec-core (3.13.6)
60
+ rspec-support (~> 3.13.0)
61
+ rspec-expectations (3.13.5)
41
62
  diff-lcs (>= 1.2.0, < 2.0)
42
- rspec-support (~> 3.12.0)
43
- rspec-mocks (3.12.1)
63
+ rspec-support (~> 3.13.0)
64
+ rspec-mocks (3.13.8)
44
65
  diff-lcs (>= 1.2.0, < 2.0)
45
- rspec-support (~> 3.12.0)
46
- rspec-support (3.12.0)
66
+ rspec-support (~> 3.13.0)
67
+ rspec-support (3.13.7)
47
68
  rspec_junit_formatter (0.6.0)
48
69
  rspec-core (>= 2, < 4, != 2.12.0)
49
- rubocop (1.41.1)
70
+ rubocop (1.88.1)
50
71
  json (~> 2.3)
51
- parallel (~> 1.10)
52
- parser (>= 3.1.2.1)
72
+ language_server-protocol (~> 3.17.0.2)
73
+ lint_roller (~> 1.1.0)
74
+ parallel (>= 1.10)
75
+ parser (>= 3.3.0.2)
53
76
  rainbow (>= 2.2.2, < 4.0)
54
- regexp_parser (>= 1.8, < 3.0)
55
- rexml (>= 3.2.5, < 4.0)
56
- rubocop-ast (>= 1.23.0, < 2.0)
77
+ regexp_parser (>= 2.9.3, < 3.0)
78
+ rubocop-ast (>= 1.49.0, < 2.0)
57
79
  ruby-progressbar (~> 1.7)
58
- unicode-display_width (>= 1.4.0, < 3.0)
59
- rubocop-ast (1.24.1)
60
- parser (>= 3.1.1.0)
61
- ruby-progressbar (1.11.0)
62
- tzinfo (2.0.5)
80
+ unicode-display_width (>= 2.4.0, < 4.0)
81
+ rubocop-ast (1.50.0)
82
+ parser (>= 3.3.7.2)
83
+ prism (~> 1.7)
84
+ ruby-progressbar (1.13.0)
85
+ securerandom (0.4.1)
86
+ tzinfo (2.0.6)
63
87
  concurrent-ruby (~> 1.0)
64
- unicode-display_width (2.3.0)
65
- webmock (3.18.1)
88
+ unicode-display_width (3.2.0)
89
+ unicode-emoji (~> 4.1)
90
+ unicode-emoji (4.2.0)
91
+ uri (1.1.1)
92
+ webmock (3.26.2)
66
93
  addressable (>= 2.8.0)
67
94
  crack (>= 0.3.2)
68
95
  hashdiff (>= 0.4.0, < 2.0.0)
69
- webrick (1.7.0)
70
- yard (0.9.28)
71
- webrick (~> 1.7.0)
96
+ yard (0.9.44)
72
97
 
73
98
  PLATFORMS
99
+ ruby
74
100
  x86_64-linux
75
101
 
76
102
  DEPENDENCIES
77
- bundler (~> 2)
103
+ bundler (~> 4)
78
104
  crapi!
79
105
  rspec (~> 3)
80
106
  rspec_junit_formatter
@@ -82,5 +108,50 @@ DEPENDENCIES
82
108
  webmock
83
109
  yard
84
110
 
111
+ CHECKSUMS
112
+ activesupport (8.1.3) sha256=21a5e0dfbd4c3ddd9e1317ec6a4d782fa226e7867dc70b0743acda81a1dca20e
113
+ addressable (2.9.0) sha256=7fdf6ac3660f7f4e867a0838be3f6cf722ace541dd97767fa42bc6cfa980c7af
114
+ ast (2.4.3) sha256=954615157c1d6a382bc27d690d973195e79db7f55e9765ac7c481c60bdb4d383
115
+ base64 (0.3.0) sha256=27337aeabad6ffae05c265c450490628ef3ebd4b67be58257393227588f5a97b
116
+ bigdecimal (4.1.2) sha256=53d217666027eab4280346fba98e7d5b66baaae1b9c3c1c0ffe89d48188a3fbd
117
+ bundler (4.0.14) sha256=d09a0a965cf772266a7e49e83610be7c2f4e49e61134c42a56804bb383cc24b8
118
+ concurrent-ruby (1.3.7) sha256=4412caec3a5ea2e5fdc52076724c071a81f2c0593d83b2ac8cbb8ca63b3151b0
119
+ connection_pool (3.0.2) sha256=33fff5ba71a12d2aa26cb72b1db8bba2a1a01823559fb01d29eb74c286e62e0a
120
+ crack (1.0.1) sha256=ff4a10390cd31d66440b7524eb1841874db86201d5b70032028553130b6d4c7e
121
+ crapi (1.0.0)
122
+ diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962
123
+ drb (2.2.3) sha256=0b00d6fdb50995fe4a45dea13663493c841112e4068656854646f418fda13373
124
+ hashdiff (1.2.1) sha256=9c079dbc513dfc8833ab59c0c2d8f230fa28499cc5efb4b8dd276cf931457cd1
125
+ i18n (1.15.2) sha256=00f9eb62412fe593b2a65a97daa75300d37abb8f7202ec748e94b6d46a9dd1b5
126
+ json (2.20.0) sha256=9362bc6e55a952b056abf9167cf053358181c904cb70cd6eee0808ea830fc32b
127
+ language_server-protocol (3.17.0.6) sha256=5ef2c0c138f8267e1bc631d3328347d354f96724b0af22f2c79516120443b7f0
128
+ lint_roller (1.1.0) sha256=2c0c845b632a7d172cb849cc90c1bce937a28c5c8ccccb50dfd46a485003cc87
129
+ logger (1.7.0) sha256=196edec7cc44b66cfb40f9755ce11b392f21f7967696af15d274dde7edff0203
130
+ minitest (6.0.6) sha256=153ea36d1d987a62942382b61075745042a2b3123b1cd48f4c3675af9cc7d6f1
131
+ parallel (2.1.0) sha256=b35258865c2e31134c5ecb708beaaf6772adf9d5efae28e93e99260877b09356
132
+ parser (3.3.11.1) sha256=d17ace7aabe3e72c3cc94043714be27cc6f852f104d81aa284c2281aecc65d54
133
+ prism (1.9.0) sha256=7b530c6a9f92c24300014919c9dcbc055bf4cdf51ec30aed099b06cd6674ef85
134
+ public_suffix (7.0.5) sha256=1a8bb08f1bbea19228d3bed6e5ed908d1cb4f7c2726d18bd9cadf60bc676f623
135
+ racc (1.8.1) sha256=4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f
136
+ rainbow (3.1.1) sha256=039491aa3a89f42efa1d6dec2fc4e62ede96eb6acd95e52f1ad581182b79bc6a
137
+ regexp_parser (2.12.0) sha256=35a916a1d63190ab5c9009457136ae5f3c0c7512d60291d0d1378ba18ce08ebb
138
+ rexml (3.4.4) sha256=19e0a2c3425dfbf2d4fc1189747bdb2f849b6c5e74180401b15734bc97b5d142
139
+ rspec (3.13.2) sha256=206284a08ad798e61f86d7ca3e376718d52c0bc944626b2349266f239f820587
140
+ rspec-core (3.13.6) sha256=a8823c6411667b60a8bca135364351dda34cd55e44ff94c4be4633b37d828b2d
141
+ rspec-expectations (3.13.5) sha256=33a4d3a1d95060aea4c94e9f237030a8f9eae5615e9bd85718fe3a09e4b58836
142
+ rspec-mocks (3.13.8) sha256=086ad3d3d17533f4237643de0b5c42f04b66348c28bf6b9c2d3f4a3b01af1d47
143
+ rspec-support (3.13.7) sha256=0640e5570872aafefd79867901deeeeb40b0c9875a36b983d85f54fb7381c47c
144
+ rspec_junit_formatter (0.6.0) sha256=40dde674e6ae4e6cc0ff560da25497677e34fefd2338cc467a8972f602b62b15
145
+ rubocop (1.88.1) sha256=726af773d6bc169ed3ff852f3ca020b7c58d39c34e7a8d879a8e0147cc994f26
146
+ rubocop-ast (1.50.0) sha256=b9ca88300da0803ee222ad20cdb30494c0a784eed06fdc35d254b06d662788db
147
+ ruby-progressbar (1.13.0) sha256=80fc9c47a9b640d6834e0dc7b3c94c9df37f08cb072b7761e4a71e22cff29b33
148
+ securerandom (0.4.1) sha256=cc5193d414a4341b6e225f0cb4446aceca8e50d5e1888743fac16987638ea0b1
149
+ tzinfo (2.0.6) sha256=8daf828cc77bcf7d63b0e3bdb6caa47e2272dcfaf4fbfe46f8c3a9df087a829b
150
+ unicode-display_width (3.2.0) sha256=0cdd96b5681a5949cdbc2c55e7b420facae74c4aaf9a9815eee1087cb1853c42
151
+ unicode-emoji (4.2.0) sha256=519e69150f75652e40bf736106cfbc8f0f73aa3fb6a65afe62fefa7f80b0f80f
152
+ uri (1.1.1) sha256=379fa58d27ffb1387eaada68c749d1426738bd0f654d812fcc07e7568f5c57c6
153
+ webmock (3.26.2) sha256=774556f2ea6371846cca68c01769b2eac0d134492d21f6d0ab5dd643965a4c90
154
+ yard (0.9.44) sha256=eb087e9b631ccd887b049f303d489963945452d5e2a7eb49a5a74a7cf6887f28
155
+
85
156
  BUNDLED WITH
86
- 2.3.24
157
+ 4.0.14
data/README.md CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
  # CrAPI
6
6
 
7
- CrAPI is yet another <u>Cr</u>ud <u>API</u> client wrapper. Yes, there is no shortage of these out there, but no other API wrapper gem (that I could find) provided the kind of functionality you get from the CrAPI::Proxy class, which is really the biggest benefit here.
7
+ CrAPI is yet another **Cr**ud **API** client wrapper. Yes, there is no shortage of these out there, but no other API wrapper gem (that I could find) provided the kind of functionality you get from the CrAPI::Proxy class, which is really the biggest benefit here.
8
8
 
9
9
  **CrAPI::Client** will connect to the target system and handily provides a base path for you (because some APIs and services have a path that is always part of every request), **CrAPI::Proxy** lets you add to the root client's base path or default set of headers without having to create any new connections.
10
10
 
@@ -84,7 +84,7 @@ v3.get('data') # GETs /api/data with the v3 header.
84
84
 
85
85
  ---
86
86
 
87
- [Consult the repo docs for the full CrAPI documentation.](http://nestor-custodio.github.io/crapi/CrAPI.html)
87
+ [Consult the repo docs for the full CrAPI documentation.](https://nestor-custodio.github.io/crapi/CrAPI.html)
88
88
 
89
89
 
90
90
  ## Feature Roadmap / Future Development
data/crapi.gemspec CHANGED
@@ -3,26 +3,26 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
3
3
  require 'crapi/version'
4
4
 
5
5
  Gem::Specification.new do |spec|
6
- spec.required_ruby_version = ['>= 3.0', '< 3.2']
6
+ spec.required_ruby_version = ['>= 3']
7
7
 
8
8
  spec.name = 'crapi'
9
9
  spec.version = CrAPI::VERSION
10
10
  spec.authors = ['Nestor Custodio']
11
- spec.email = ['sakimorix@gmail.com']
11
+ spec.email = ['nestor@custodio.org']
12
12
 
13
- spec.summary = 'A simple API client with built-in segment/header proxy support. "... It could be better." ™️'
13
+ spec.summary = 'A simple API client with built-in segment/header proxy support.'
14
14
  spec.homepage = 'https://github.com/nestor-custodio/crapi'
15
15
  spec.license = 'MIT'
16
16
 
17
- spec.files = `git ls-files -z`.split("\x0").reject { |filename| filename.start_with? 'test/' }
17
+ spec.files = `git ls-files -z`.split("\x0").reject { |filename| filename.start_with? 'spec/' }
18
18
  spec.executables = []
19
19
  spec.require_paths = ['lib']
20
20
 
21
21
  spec.metadata['rubygems_mfa_required'] = 'true'
22
22
 
23
- spec.add_dependency 'activesupport', ['>= 6.0', '< 7.1']
23
+ spec.add_dependency 'activesupport', ['>= 6.1.0', '< 9']
24
24
 
25
- spec.add_development_dependency 'bundler', '~> 2'
25
+ spec.add_development_dependency 'bundler', '~> 4'
26
26
  spec.add_development_dependency 'rspec', '~> 3'
27
27
  spec.add_development_dependency 'rspec_junit_formatter'
28
28
  spec.add_development_dependency 'rubocop'
@@ -6,13 +6,13 @@
6
6
  <title>
7
7
  Exception: CrAPI::ArgumentError
8
8
 
9
- &mdash; Documentation by YARD 0.9.28
9
+ &mdash; Documentation by YARD 0.9.44
10
10
 
11
11
  </title>
12
12
 
13
- <link rel="stylesheet" href="../css/style.css" type="text/css" />
13
+ <link rel="stylesheet" href="../css/style.css" type="text/css">
14
14
 
15
- <link rel="stylesheet" href="../css/common.css" type="text/css" />
15
+ <link rel="stylesheet" href="../css/common.css" type="text/css">
16
16
 
17
17
  <script type="text/javascript">
18
18
  pathId = "CrAPI::ArgumentError";
@@ -27,6 +27,8 @@
27
27
 
28
28
  </head>
29
29
  <body>
30
+ <div id="main_progress" aria-hidden="true"></div>
31
+
30
32
  <div class="nav_wrap">
31
33
  <iframe id="nav" src="../class_list.html?1"></iframe>
32
34
  <div id="resizer"></div>
@@ -98,7 +100,8 @@
98
100
 
99
101
  <dl>
100
102
  <dt>Defined in:</dt>
101
- <dd>lib/crapi/errors.rb</dd>
103
+ <dd>lib/crapi/errors.rb
104
+ </dd>
102
105
  </dl>
103
106
 
104
107
  </div>
@@ -107,7 +110,6 @@
107
110
  <div class="discussion">
108
111
  <p>An error relating to missing, invalid, or incompatible method arguments.</p>
109
112
 
110
-
111
113
  </div>
112
114
  </div>
113
115
  <div class="tags">
@@ -128,15 +130,16 @@
128
130
 
129
131
 
130
132
 
133
+
131
134
 
132
135
  </div>
133
136
 
134
137
  <div id="footer">
135
- Generated on Mon Jan 2 15:16:45 2023 by
138
+ Generated on Sun Jul 5 14:46:38 2026 by
136
139
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
137
- 0.9.28 (ruby-3.0.4).
140
+ 0.9.44 (ruby-3.4.8).
138
141
  </div>
139
142
 
140
143
  </div>
141
144
  </body>
142
- </html>
145
+ </html>
@@ -6,13 +6,13 @@
6
6
  <title>
7
7
  Exception: CrAPI::BadHttpResponseError
8
8
 
9
- &mdash; Documentation by YARD 0.9.28
9
+ &mdash; Documentation by YARD 0.9.44
10
10
 
11
11
  </title>
12
12
 
13
- <link rel="stylesheet" href="../css/style.css" type="text/css" />
13
+ <link rel="stylesheet" href="../css/style.css" type="text/css">
14
14
 
15
- <link rel="stylesheet" href="../css/common.css" type="text/css" />
15
+ <link rel="stylesheet" href="../css/common.css" type="text/css">
16
16
 
17
17
  <script type="text/javascript">
18
18
  pathId = "CrAPI::BadHttpResponseError";
@@ -27,6 +27,8 @@
27
27
 
28
28
  </head>
29
29
  <body>
30
+ <div id="main_progress" aria-hidden="true"></div>
31
+
30
32
  <div class="nav_wrap">
31
33
  <iframe id="nav" src="../class_list.html?1"></iframe>
32
34
  <div id="resizer"></div>
@@ -98,7 +100,8 @@
98
100
 
99
101
  <dl>
100
102
  <dt>Defined in:</dt>
101
- <dd>lib/crapi/errors.rb</dd>
103
+ <dd>lib/crapi/errors.rb
104
+ </dd>
102
105
  </dl>
103
106
 
104
107
  </div>
@@ -107,7 +110,6 @@
107
110
  <div class="discussion">
108
111
  <p>An error relating to a 4XX/5XX HTTP response code.</p>
109
112
 
110
-
111
113
  </div>
112
114
  </div>
113
115
  <div class="tags">
@@ -128,15 +130,16 @@
128
130
 
129
131
 
130
132
 
133
+
131
134
 
132
135
  </div>
133
136
 
134
137
  <div id="footer">
135
- Generated on Mon Jan 2 15:16:45 2023 by
138
+ Generated on Sun Jul 5 14:46:38 2026 by
136
139
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
137
- 0.9.28 (ruby-3.0.4).
140
+ 0.9.44 (ruby-3.4.8).
138
141
  </div>
139
142
 
140
143
  </div>
141
144
  </body>
142
- </html>
145
+ </html>