fulfil_api 0.7.1 → 0.8.0

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.
Files changed (34) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +9 -1
  3. data/.ruby-version +1 -1
  4. data/CHANGELOG.md +15 -0
  5. data/README.md +193 -2
  6. data/app/controllers/concerns/fulfil_api/authenticated.rb +43 -0
  7. data/app/controllers/concerns/fulfil_api/installation_scoped.rb +56 -0
  8. data/app/controllers/fulfil_api/application_controller.rb +31 -0
  9. data/app/controllers/fulfil_api/installations_controller.rb +111 -0
  10. data/app/models/concerns/fulfil_api/installable.rb +47 -0
  11. data/app/models/fulfil_api/installation.rb +145 -0
  12. data/config/routes.rb +9 -0
  13. data/lib/fulfil_api/circuit_open.rb +9 -0
  14. data/lib/fulfil_api/client.rb +10 -6
  15. data/lib/fulfil_api/configuration.rb +72 -8
  16. data/lib/fulfil_api/engine.rb +14 -0
  17. data/lib/fulfil_api/error/notifiable.rb +90 -0
  18. data/lib/fulfil_api/error.rb +38 -0
  19. data/lib/fulfil_api/http_error.rb +15 -0
  20. data/lib/fulfil_api/middleware/circuit_breaker.rb +44 -0
  21. data/lib/fulfil_api/middleware.rb +59 -0
  22. data/lib/fulfil_api/oauth/authorization.rb +172 -0
  23. data/lib/fulfil_api/oauth/configuration.rb +96 -0
  24. data/lib/fulfil_api/oauth/token.rb +78 -0
  25. data/lib/fulfil_api/oauth.rb +37 -0
  26. data/lib/fulfil_api/relation.rb +2 -2
  27. data/lib/fulfil_api/resource/attribute_assignable.rb +12 -12
  28. data/lib/fulfil_api/tpl_client.rb +10 -6
  29. data/lib/fulfil_api/version.rb +1 -1
  30. data/lib/fulfil_api.rb +12 -0
  31. data/lib/generators/fulfil_api/install/install_generator.rb +72 -0
  32. data/lib/generators/fulfil_api/install/templates/create_fulfil_api_installations.rb +43 -0
  33. data/lib/generators/fulfil_api/install/templates/fulfil_api.rb +38 -0
  34. metadata +49 -11
metadata CHANGED
@@ -1,29 +1,28 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fulfil_api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.1
4
+ version: 0.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stefan Vermaas
8
- autorequire:
9
8
  bindir: exe
10
9
  cert_chain: []
11
- date: 2026-08-18 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: activesupport
15
14
  requirement: !ruby/object:Gem::Requirement
16
15
  requirements:
17
- - - ">"
16
+ - - ">="
18
17
  - !ruby/object:Gem::Version
19
- version: '7'
18
+ version: '8.0'
20
19
  type: :runtime
21
20
  prerelease: false
22
21
  version_requirements: !ruby/object:Gem::Requirement
23
22
  requirements:
24
- - - ">"
23
+ - - ">="
25
24
  - !ruby/object:Gem::Version
26
- version: '7'
25
+ version: '8.0'
27
26
  - !ruby/object:Gem::Dependency
28
27
  name: faraday
29
28
  requirement: !ruby/object:Gem::Requirement
@@ -52,6 +51,20 @@ dependencies:
52
51
  - - "~>"
53
52
  - !ruby/object:Gem::Version
54
53
  version: '2.0'
54
+ - !ruby/object:Gem::Dependency
55
+ name: faraday-retry
56
+ requirement: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - "~>"
59
+ - !ruby/object:Gem::Version
60
+ version: '2.2'
61
+ type: :runtime
62
+ prerelease: false
63
+ version_requirements: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - "~>"
66
+ - !ruby/object:Gem::Version
67
+ version: '2.2'
55
68
  - !ruby/object:Gem::Dependency
56
69
  name: zeitwerk
57
70
  requirement: !ruby/object:Gem::Requirement
@@ -80,13 +93,29 @@ files:
80
93
  - LICENSE.txt
81
94
  - README.md
82
95
  - Rakefile
96
+ - app/controllers/concerns/fulfil_api/authenticated.rb
97
+ - app/controllers/concerns/fulfil_api/installation_scoped.rb
98
+ - app/controllers/fulfil_api/application_controller.rb
99
+ - app/controllers/fulfil_api/installations_controller.rb
100
+ - app/models/concerns/fulfil_api/installable.rb
101
+ - app/models/fulfil_api/installation.rb
102
+ - config/routes.rb
83
103
  - lib/fulfil_api.rb
84
104
  - lib/fulfil_api/access_token.rb
105
+ - lib/fulfil_api/circuit_open.rb
85
106
  - lib/fulfil_api/client.rb
86
107
  - lib/fulfil_api/configuration.rb
87
108
  - lib/fulfil_api/customer_shipment.rb
109
+ - lib/fulfil_api/engine.rb
88
110
  - lib/fulfil_api/error.rb
111
+ - lib/fulfil_api/error/notifiable.rb
89
112
  - lib/fulfil_api/http_error.rb
113
+ - lib/fulfil_api/middleware.rb
114
+ - lib/fulfil_api/middleware/circuit_breaker.rb
115
+ - lib/fulfil_api/oauth.rb
116
+ - lib/fulfil_api/oauth/authorization.rb
117
+ - lib/fulfil_api/oauth/configuration.rb
118
+ - lib/fulfil_api/oauth/token.rb
90
119
  - lib/fulfil_api/relation.rb
91
120
  - lib/fulfil_api/relation/batchable.rb
92
121
  - lib/fulfil_api/relation/countable.rb
@@ -104,6 +133,9 @@ files:
104
133
  - lib/fulfil_api/test_helper.rb
105
134
  - lib/fulfil_api/tpl_client.rb
106
135
  - lib/fulfil_api/version.rb
136
+ - lib/generators/fulfil_api/install/install_generator.rb
137
+ - lib/generators/fulfil_api/install/templates/create_fulfil_api_installations.rb
138
+ - lib/generators/fulfil_api/install/templates/fulfil_api.rb
107
139
  - sig/fulfil_api.rbs
108
140
  homepage: https://www.github.com/codeturebv/fulfil_api
109
141
  licenses:
@@ -113,7 +145,13 @@ metadata:
113
145
  source_code_uri: https://www.github.com/codeturebv/fulfil_api
114
146
  changelog_uri: https://www.github.com/codeturebv/fulfil_api/blob/main/CHANGELOG.md
115
147
  rubygems_mfa_required: 'true'
116
- post_install_message:
148
+ post_install_message: |+
149
+ Using fulfil_api in a Rails application? Run the install generator to set up
150
+ Fulfil's OAuth flow, then run the migration it adds:
151
+
152
+ bin/rails generate fulfil_api:install
153
+ bin/rails db:migrate
154
+
117
155
  rdoc_options: []
118
156
  require_paths:
119
157
  - lib
@@ -121,15 +159,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
121
159
  requirements:
122
160
  - - ">="
123
161
  - !ruby/object:Gem::Version
124
- version: 3.0.0
162
+ version: 3.2.0
125
163
  required_rubygems_version: !ruby/object:Gem::Requirement
126
164
  requirements:
127
165
  - - ">="
128
166
  - !ruby/object:Gem::Version
129
167
  version: '0'
130
168
  requirements: []
131
- rubygems_version: 3.5.11
132
- signing_key:
169
+ rubygems_version: 4.0.20
133
170
  specification_version: 4
134
171
  summary: A HTTP client to interact the Fulfil.io API
135
172
  test_files: []
173
+ ...