michael_taylor_sdk 1.0.2 → 1.0.3
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 +4 -4
- data/.rubocop.yml +10 -0
- data/.ruby-version +1 -1
- data/Gemfile +9 -4
- data/Gemfile.lock +45 -31
- data/LICENSE.txt +1 -1
- data/design.md +18 -18
- data/lib/michael_taylor_sdk/api_paths/movies.rb +1 -0
- data/lib/michael_taylor_sdk/errors.rb +1 -1
- data/lib/michael_taylor_sdk/version.rb +1 -1
- data/lib/michael_taylor_sdk.rb +0 -1
- data/michael_taylor_sdk.gemspec +0 -6
- metadata +3 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e8b30e7ccf6f6bcc18a63d8b787177de07471fd211875f9eb6ef70ededcda393
|
4
|
+
data.tar.gz: '08e0c2cd9ca02dfe355a4f65badd24e9a634fbe8f0ca699d21d3abe978293836'
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d39d2fde766489ddd234a1d2109a0584aa6f57cd4b283e70dcd93e69ead8902e777dfd436888262a74eb533f0f9a2d48e37ea06d0c215fa46cc8fec3476387f7
|
7
|
+
data.tar.gz: a517a4361b6b0cd34b69763acfaba649570696d63dbaddf2ddce08b60ea7f31e09b7179256b50316473aad61ba2655ce9af4c5da5ccf526a6567bfd9346f1a8b
|
data/.rubocop.yml
CHANGED
@@ -1,3 +1,7 @@
|
|
1
|
+
plugins:
|
2
|
+
- rubocop-rspec
|
3
|
+
- rubocop-rake
|
4
|
+
|
1
5
|
AllCops:
|
2
6
|
TargetRubyVersion: 3.0
|
3
7
|
NewCops: enable
|
@@ -35,3 +39,9 @@ Metrics/BlockLength:
|
|
35
39
|
Metrics/MethodLength:
|
36
40
|
Exclude:
|
37
41
|
- spec/**/*.rb
|
42
|
+
|
43
|
+
RSpec/ExampleLength:
|
44
|
+
Enabled: false
|
45
|
+
|
46
|
+
RSpec/MultipleExpectations:
|
47
|
+
Enabled: false
|
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
3.2
|
1
|
+
3.4.2
|
data/Gemfile
CHANGED
@@ -2,11 +2,16 @@
|
|
2
2
|
|
3
3
|
source "https://rubygems.org"
|
4
4
|
|
5
|
-
# Specify your gem's dependencies in michael_taylor_sdk.gemspec
|
6
5
|
gemspec
|
7
6
|
|
8
|
-
|
7
|
+
group :test, :development do
|
8
|
+
gem "rake", "~> 13.2"
|
9
9
|
|
10
|
-
gem "rspec", "~> 3.
|
10
|
+
gem "rspec", "~> 3.13"
|
11
11
|
|
12
|
-
gem "rubocop", "~> 1.
|
12
|
+
gem "rubocop", "~> 1.72"
|
13
|
+
|
14
|
+
gem "rubocop-rake", "~> 0.7.1"
|
15
|
+
|
16
|
+
gem "rubocop-rspec", "~> 3.5"
|
17
|
+
end
|
data/Gemfile.lock
CHANGED
@@ -1,57 +1,71 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
michael_taylor_sdk (1.0.
|
4
|
+
michael_taylor_sdk (1.0.3)
|
5
5
|
|
6
6
|
GEM
|
7
7
|
remote: https://rubygems.org/
|
8
8
|
specs:
|
9
9
|
ast (2.4.2)
|
10
|
-
diff-lcs (1.
|
11
|
-
json (2.
|
12
|
-
|
13
|
-
|
10
|
+
diff-lcs (1.6.0)
|
11
|
+
json (2.10.1)
|
12
|
+
language_server-protocol (3.17.0.4)
|
13
|
+
lint_roller (1.1.0)
|
14
|
+
parallel (1.26.3)
|
15
|
+
parser (3.3.7.1)
|
14
16
|
ast (~> 2.4.1)
|
17
|
+
racc
|
18
|
+
racc (1.8.1)
|
15
19
|
rainbow (3.1.1)
|
16
|
-
rake (13.
|
17
|
-
regexp_parser (2.
|
18
|
-
|
19
|
-
|
20
|
-
rspec-
|
21
|
-
rspec-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
rspec-expectations (3.12.2)
|
20
|
+
rake (13.2.1)
|
21
|
+
regexp_parser (2.10.0)
|
22
|
+
rspec (3.13.0)
|
23
|
+
rspec-core (~> 3.13.0)
|
24
|
+
rspec-expectations (~> 3.13.0)
|
25
|
+
rspec-mocks (~> 3.13.0)
|
26
|
+
rspec-core (3.13.3)
|
27
|
+
rspec-support (~> 3.13.0)
|
28
|
+
rspec-expectations (3.13.3)
|
26
29
|
diff-lcs (>= 1.2.0, < 2.0)
|
27
|
-
rspec-support (~> 3.
|
28
|
-
rspec-mocks (3.
|
30
|
+
rspec-support (~> 3.13.0)
|
31
|
+
rspec-mocks (3.13.2)
|
29
32
|
diff-lcs (>= 1.2.0, < 2.0)
|
30
|
-
rspec-support (~> 3.
|
31
|
-
rspec-support (3.
|
32
|
-
rubocop (1.
|
33
|
+
rspec-support (~> 3.13.0)
|
34
|
+
rspec-support (3.13.2)
|
35
|
+
rubocop (1.72.2)
|
33
36
|
json (~> 2.3)
|
37
|
+
language_server-protocol (~> 3.17.0.2)
|
38
|
+
lint_roller (~> 1.1.0)
|
34
39
|
parallel (~> 1.10)
|
35
|
-
parser (>= 3.
|
40
|
+
parser (>= 3.3.0.2)
|
36
41
|
rainbow (>= 2.2.2, < 4.0)
|
37
|
-
regexp_parser (>=
|
38
|
-
|
39
|
-
rubocop-ast (>= 1.26.0, < 2.0)
|
42
|
+
regexp_parser (>= 2.9.3, < 3.0)
|
43
|
+
rubocop-ast (>= 1.38.0, < 2.0)
|
40
44
|
ruby-progressbar (~> 1.7)
|
41
|
-
unicode-display_width (>= 2.4.0, <
|
42
|
-
rubocop-ast (1.
|
43
|
-
parser (>= 3.
|
45
|
+
unicode-display_width (>= 2.4.0, < 4.0)
|
46
|
+
rubocop-ast (1.38.0)
|
47
|
+
parser (>= 3.3.1.0)
|
48
|
+
rubocop-rake (0.7.1)
|
49
|
+
lint_roller (~> 1.1)
|
50
|
+
rubocop (>= 1.72.1)
|
51
|
+
rubocop-rspec (3.5.0)
|
52
|
+
lint_roller (~> 1.1)
|
53
|
+
rubocop (~> 1.72, >= 1.72.1)
|
44
54
|
ruby-progressbar (1.13.0)
|
45
|
-
unicode-display_width (
|
55
|
+
unicode-display_width (3.1.4)
|
56
|
+
unicode-emoji (~> 4.0, >= 4.0.4)
|
57
|
+
unicode-emoji (4.0.4)
|
46
58
|
|
47
59
|
PLATFORMS
|
48
60
|
x86_64-linux
|
49
61
|
|
50
62
|
DEPENDENCIES
|
51
63
|
michael_taylor_sdk!
|
52
|
-
rake (~> 13.
|
53
|
-
rspec (~> 3.
|
54
|
-
rubocop (~> 1.
|
64
|
+
rake (~> 13.2)
|
65
|
+
rspec (~> 3.13)
|
66
|
+
rubocop (~> 1.72)
|
67
|
+
rubocop-rake (~> 0.7.1)
|
68
|
+
rubocop-rspec (~> 3.5)
|
55
69
|
|
56
70
|
BUNDLED WITH
|
57
71
|
2.4.6
|
data/LICENSE.txt
CHANGED
data/design.md
CHANGED
@@ -1,18 +1,18 @@
|
|
1
|
-
This SDK is designed around a pipeline that transforms an SDK method call
|
2
|
-
into an HTTP request and transforms the response into an easy to use result.
|
3
|
-
Each pipeline stage is defined under the pipeline directory.
|
4
|
-
|
5
|
-
Each pipeline stage is designed to have a simple transformation on the input and/or output.
|
6
|
-
* paginate add pagination parameters to the input and adds the returned pagination properties into the output
|
7
|
-
* filter adds query parameters to the input for queries like name=Movie Name
|
8
|
-
* json converts the output from a string to a Ruby Hash by parsing the string as JSON
|
9
|
-
* response_body pulls the body from the HTTP response and ensures it is present and not empty
|
10
|
-
* set_path adds the path information that will later be appended to the base URL
|
11
|
-
* retry runs a retry strategy to attempt to resolve server errors
|
12
|
-
* raise_http_errors converts the HTTP response classes into errors for 4XX and 5XX response codes
|
13
|
-
* get_request is the final stage that makes the HTTP request
|
14
|
-
|
15
|
-
The main SDK object has methods that provide access to the API paths. These are defined under the api_paths directory.
|
16
|
-
Currently there is just `.movies` but it could be expanded to include other paths like `.books` or `.characters`
|
17
|
-
by adding new subclasses of MichaelTaylorSdk::ApiPaths::Base. These subclasses only need to define the main path used
|
18
|
-
in the API and any custom queries that abstract away complexity from the user by adding filters or combining related calls.
|
1
|
+
This SDK is designed around a pipeline that transforms an SDK method call
|
2
|
+
into an HTTP request and transforms the response into an easy to use result.
|
3
|
+
Each pipeline stage is defined under the pipeline directory.
|
4
|
+
|
5
|
+
Each pipeline stage is designed to have a simple transformation on the input and/or output.
|
6
|
+
* paginate add pagination parameters to the input and adds the returned pagination properties into the output
|
7
|
+
* filter adds query parameters to the input for queries like name=Movie Name
|
8
|
+
* json converts the output from a string to a Ruby Hash by parsing the string as JSON
|
9
|
+
* response_body pulls the body from the HTTP response and ensures it is present and not empty
|
10
|
+
* set_path adds the path information that will later be appended to the base URL
|
11
|
+
* retry runs a retry strategy to attempt to resolve server errors
|
12
|
+
* raise_http_errors converts the HTTP response classes into errors for 4XX and 5XX response codes
|
13
|
+
* get_request is the final stage that makes the HTTP request
|
14
|
+
|
15
|
+
The main SDK object has methods that provide access to the API paths. These are defined under the api_paths directory.
|
16
|
+
Currently there is just `.movies` but it could be expanded to include other paths like `.books` or `.characters`
|
17
|
+
by adding new subclasses of MichaelTaylorSdk::ApiPaths::Base. These subclasses only need to define the main path used
|
18
|
+
in the API and any custom queries that abstract away complexity from the user by adding filters or combining related calls.
|
data/lib/michael_taylor_sdk.rb
CHANGED
data/michael_taylor_sdk.gemspec
CHANGED
@@ -26,10 +26,4 @@ Gem::Specification.new do |spec|
|
|
26
26
|
spec.bindir = "exe"
|
27
27
|
spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
|
28
28
|
spec.require_paths = ["lib"]
|
29
|
-
|
30
|
-
# Uncomment to register a new dependency of your gem
|
31
|
-
# spec.add_dependency "example-gem", "~> 1.0"
|
32
|
-
|
33
|
-
# For more information and examples about making a new gem, check out our
|
34
|
-
# guide at: https://bundler.io/guides/creating_gem.html
|
35
29
|
end
|
metadata
CHANGED
@@ -1,16 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: michael_taylor_sdk
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Michael Taylor
|
8
|
-
autorequire:
|
9
8
|
bindir: exe
|
10
9
|
cert_chain: []
|
11
|
-
date:
|
10
|
+
date: 2025-02-21 00:00:00.000000000 Z
|
12
11
|
dependencies: []
|
13
|
-
description:
|
14
12
|
email:
|
15
13
|
- mwtaylor@users.noreply.github.com
|
16
14
|
executables: []
|
@@ -53,7 +51,6 @@ licenses:
|
|
53
51
|
metadata:
|
54
52
|
rubygems_mfa_required: 'true'
|
55
53
|
github_repo: https://github.com/mwtaylor/MichaelTaylor-SDK
|
56
|
-
post_install_message:
|
57
54
|
rdoc_options: []
|
58
55
|
require_paths:
|
59
56
|
- lib
|
@@ -68,8 +65,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
68
65
|
- !ruby/object:Gem::Version
|
69
66
|
version: '0'
|
70
67
|
requirements: []
|
71
|
-
rubygems_version: 3.
|
72
|
-
signing_key:
|
68
|
+
rubygems_version: 3.6.2
|
73
69
|
specification_version: 4
|
74
70
|
summary: SDK for the Lord of the Rings API
|
75
71
|
test_files: []
|