alchemrest 3.1.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 (245) hide show
  1. checksums.yaml +7 -0
  2. data/.rspec +3 -0
  3. data/.rubocop.yml +22 -0
  4. data/.rubocop_todo.yml +242 -0
  5. data/.ruby-version +1 -0
  6. data/Appraisals +19 -0
  7. data/Gemfile +6 -0
  8. data/Gemfile.lock +378 -0
  9. data/Rakefile +29 -0
  10. data/alchemrest.gemspec +71 -0
  11. data/coach.yml +5 -0
  12. data/examples/bank_api/client.rb +31 -0
  13. data/examples/bank_api/data/account.rb +21 -0
  14. data/examples/bank_api/data/ach.rb +16 -0
  15. data/examples/bank_api/data/business_account.rb +22 -0
  16. data/examples/bank_api/data/card.rb +21 -0
  17. data/examples/bank_api/data/check.rb +19 -0
  18. data/examples/bank_api/data/product.rb +20 -0
  19. data/examples/bank_api/data/transaction.rb +49 -0
  20. data/examples/bank_api/data/user.rb +27 -0
  21. data/examples/bank_api/factories.rb +68 -0
  22. data/examples/bank_api/graph_visualization.rb +45 -0
  23. data/examples/bank_api/positive_interest_string.rb +33 -0
  24. data/examples/bank_api/requests/delete_user.rb +17 -0
  25. data/examples/bank_api/requests/get_business_account.rb +24 -0
  26. data/examples/bank_api/requests/get_products.rb +12 -0
  27. data/examples/bank_api/requests/get_transactions.rb +34 -0
  28. data/examples/bank_api/requests/get_user.rb +19 -0
  29. data/examples/bank_api/requests/post_transaction.rb +20 -0
  30. data/examples/bank_api/requests/update_user.rb +28 -0
  31. data/examples/bank_api/root.rb +52 -0
  32. data/examples/bank_api.rb +33 -0
  33. data/gemfiles/faraday_2.gemfile +9 -0
  34. data/gemfiles/faraday_2.gemfile.lock +363 -0
  35. data/gemfiles/rails_7_0.gemfile.lock +341 -0
  36. data/gemfiles/rails_7_2.gemfile +9 -0
  37. data/gemfiles/rails_7_2.gemfile.lock +384 -0
  38. data/gemfiles/rails_8_0.gemfile +9 -0
  39. data/gemfiles/rails_8_0.gemfile.lock +385 -0
  40. data/lib/alchemrest/circuit_breaker.rb +84 -0
  41. data/lib/alchemrest/client/configuration/connection.rb +83 -0
  42. data/lib/alchemrest/client/configuration.rb +89 -0
  43. data/lib/alchemrest/client.rb +48 -0
  44. data/lib/alchemrest/cop.rb +8 -0
  45. data/lib/alchemrest/data/capture_configuration.rb +77 -0
  46. data/lib/alchemrest/data/field.rb +36 -0
  47. data/lib/alchemrest/data/graph.rb +40 -0
  48. data/lib/alchemrest/data/record.rb +60 -0
  49. data/lib/alchemrest/data/schema.rb +80 -0
  50. data/lib/alchemrest/data.rb +9 -0
  51. data/lib/alchemrest/endpoint_definition.rb +47 -0
  52. data/lib/alchemrest/error.rb +122 -0
  53. data/lib/alchemrest/factory_bot.rb +64 -0
  54. data/lib/alchemrest/faraday_middleware/external_api_instrumentation.rb +24 -0
  55. data/lib/alchemrest/faraday_middleware/json_parser.rb +30 -0
  56. data/lib/alchemrest/faraday_middleware/kill_switch.rb +22 -0
  57. data/lib/alchemrest/faraday_middleware/underscore_response.rb +24 -0
  58. data/lib/alchemrest/hash_path.rb +81 -0
  59. data/lib/alchemrest/http_request.rb +75 -0
  60. data/lib/alchemrest/kill_switch/adapters.rb +88 -0
  61. data/lib/alchemrest/kill_switch.rb +31 -0
  62. data/lib/alchemrest/railtie.rb +25 -0
  63. data/lib/alchemrest/request/endpoint.rb +29 -0
  64. data/lib/alchemrest/request/returns.rb +46 -0
  65. data/lib/alchemrest/request.rb +80 -0
  66. data/lib/alchemrest/request_definition/builder.rb +13 -0
  67. data/lib/alchemrest/request_definition.rb +26 -0
  68. data/lib/alchemrest/response/pipeline/extract_payload.rb +64 -0
  69. data/lib/alchemrest/response/pipeline/final.rb +11 -0
  70. data/lib/alchemrest/response/pipeline/omit.rb +46 -0
  71. data/lib/alchemrest/response/pipeline/sanitize.rb +59 -0
  72. data/lib/alchemrest/response/pipeline/transform.rb +26 -0
  73. data/lib/alchemrest/response/pipeline/was_successful.rb +29 -0
  74. data/lib/alchemrest/response/pipeline.rb +71 -0
  75. data/lib/alchemrest/response.rb +73 -0
  76. data/lib/alchemrest/response_captured_handler.rb +68 -0
  77. data/lib/alchemrest/result/halt.rb +15 -0
  78. data/lib/alchemrest/result/try_helpers.rb +16 -0
  79. data/lib/alchemrest/result.rb +128 -0
  80. data/lib/alchemrest/root.rb +77 -0
  81. data/lib/alchemrest/transforms/base_to_type_transform_registry.rb +42 -0
  82. data/lib/alchemrest/transforms/constrainable.rb +41 -0
  83. data/lib/alchemrest/transforms/constraint/block.rb +22 -0
  84. data/lib/alchemrest/transforms/constraint/greater_than.rb +19 -0
  85. data/lib/alchemrest/transforms/constraint/greater_than_or_eq.rb +19 -0
  86. data/lib/alchemrest/transforms/constraint/in_list.rb +19 -0
  87. data/lib/alchemrest/transforms/constraint/is_instance_of.rb +19 -0
  88. data/lib/alchemrest/transforms/constraint/is_uuid.rb +19 -0
  89. data/lib/alchemrest/transforms/constraint/less_than.rb +19 -0
  90. data/lib/alchemrest/transforms/constraint/less_than_or_eq.rb +19 -0
  91. data/lib/alchemrest/transforms/constraint/matches_regex.rb +19 -0
  92. data/lib/alchemrest/transforms/constraint/max_length.rb +19 -0
  93. data/lib/alchemrest/transforms/constraint/min_length.rb +19 -0
  94. data/lib/alchemrest/transforms/constraint.rb +17 -0
  95. data/lib/alchemrest/transforms/constraint_builder/for_number.rb +25 -0
  96. data/lib/alchemrest/transforms/constraint_builder/for_string.rb +21 -0
  97. data/lib/alchemrest/transforms/constraint_builder.rb +15 -0
  98. data/lib/alchemrest/transforms/date_transform.rb +30 -0
  99. data/lib/alchemrest/transforms/enum.rb +52 -0
  100. data/lib/alchemrest/transforms/epoch_time.rb +32 -0
  101. data/lib/alchemrest/transforms/from_chain.rb +15 -0
  102. data/lib/alchemrest/transforms/from_number/to_type_transform_registry.rb +18 -0
  103. data/lib/alchemrest/transforms/from_number.rb +47 -0
  104. data/lib/alchemrest/transforms/from_string/to_type_transform_registry.rb +17 -0
  105. data/lib/alchemrest/transforms/from_string.rb +36 -0
  106. data/lib/alchemrest/transforms/from_type/empty_to_type_transform_registry.rb +14 -0
  107. data/lib/alchemrest/transforms/from_type.rb +64 -0
  108. data/lib/alchemrest/transforms/iso_time.rb +58 -0
  109. data/lib/alchemrest/transforms/json_number.rb +26 -0
  110. data/lib/alchemrest/transforms/loose_hash.rb +96 -0
  111. data/lib/alchemrest/transforms/money_transform.rb +42 -0
  112. data/lib/alchemrest/transforms/number.rb +27 -0
  113. data/lib/alchemrest/transforms/output_type.rb +65 -0
  114. data/lib/alchemrest/transforms/to_decimal.rb +22 -0
  115. data/lib/alchemrest/transforms/to_type/from_string_to_time_selector.rb +29 -0
  116. data/lib/alchemrest/transforms/to_type/transforms_selector.rb +61 -0
  117. data/lib/alchemrest/transforms/to_type.rb +86 -0
  118. data/lib/alchemrest/transforms/typed.rb +32 -0
  119. data/lib/alchemrest/transforms/union.rb +44 -0
  120. data/lib/alchemrest/transforms/with_constraint.rb +26 -0
  121. data/lib/alchemrest/transforms.rb +93 -0
  122. data/lib/alchemrest/url_builder/encoders.rb +39 -0
  123. data/lib/alchemrest/url_builder/options.rb +33 -0
  124. data/lib/alchemrest/url_builder.rb +31 -0
  125. data/lib/alchemrest/version.rb +5 -0
  126. data/lib/alchemrest/webmock_helpers.rb +27 -0
  127. data/lib/alchemrest.rb +159 -0
  128. data/lib/generators/alchemrest/kill_switch_migration_generator.rb +27 -0
  129. data/lib/generators/alchemrest/templates/kill_switch_migration.rb.erb +17 -0
  130. data/lib/rubocop/cop/alchemrest/define_request_using_with_params.rb +53 -0
  131. data/lib/rubocop/cop/alchemrest/endpoint_definition_using_generic_params.rb +55 -0
  132. data/lib/rubocop/cop/alchemrest/request_hash_returning_block.rb +54 -0
  133. data/lib/rubocop/cop/alchemrest/time_transform_with_no_zone.rb +56 -0
  134. data/lib/tapioca/dsl/compilers/alchemrest_data.rb +84 -0
  135. data/lib/tapioca/dsl/compilers/alchemrest_root.rb +68 -0
  136. data/mutant.yml +16 -0
  137. data/rbi/alchemrest/result.rbi +80 -0
  138. data/rbi/alchemrest.rbi +246 -0
  139. data/sorbet/config +5 -0
  140. data/sorbet/rbi/gems/.gitattributes +1 -0
  141. data/sorbet/rbi/gems/abstract_type@0.0.7.rbi +41 -0
  142. data/sorbet/rbi/gems/actionpack@8.0.4.rbi +11733 -0
  143. data/sorbet/rbi/gems/actionview@8.0.4.rbi +6560 -0
  144. data/sorbet/rbi/gems/activemodel@8.0.4.rbi +2891 -0
  145. data/sorbet/rbi/gems/activesupport@8.0.4.rbi +9621 -0
  146. data/sorbet/rbi/gems/adamantium@0.2.0.rbi +144 -0
  147. data/sorbet/rbi/gems/addressable@2.8.7.rbi +779 -0
  148. data/sorbet/rbi/gems/anima@0.3.2.rbi +103 -0
  149. data/sorbet/rbi/gems/ast@2.4.2.rbi +107 -0
  150. data/sorbet/rbi/gems/base64@0.3.0.rbi +52 -0
  151. data/sorbet/rbi/gems/benchmark@0.5.0.rbi +153 -0
  152. data/sorbet/rbi/gems/bigdecimal@3.3.1.rbi +77 -0
  153. data/sorbet/rbi/gems/builder@3.3.0.rbi +9 -0
  154. data/sorbet/rbi/gems/circuitbox@2.0.0.rbi +297 -0
  155. data/sorbet/rbi/gems/concord@0.1.6.rbi +51 -0
  156. data/sorbet/rbi/gems/concurrent-ruby@1.3.5.rbi +4716 -0
  157. data/sorbet/rbi/gems/connection_pool@2.5.4.rbi +9 -0
  158. data/sorbet/rbi/gems/crack@1.0.0.rbi +110 -0
  159. data/sorbet/rbi/gems/crass@1.0.6.rbi +294 -0
  160. data/sorbet/rbi/gems/date@3.4.1.rbi +58 -0
  161. data/sorbet/rbi/gems/drb@2.2.3.rbi +639 -0
  162. data/sorbet/rbi/gems/equalizer@0.0.11.rbi +38 -0
  163. data/sorbet/rbi/gems/erubi@1.13.1.rbi +85 -0
  164. data/sorbet/rbi/gems/factory_bot@6.5.0.rbi +1529 -0
  165. data/sorbet/rbi/gems/faraday-em_http@1.0.0.rbi +181 -0
  166. data/sorbet/rbi/gems/faraday-em_synchrony@1.0.1.rbi +120 -0
  167. data/sorbet/rbi/gems/faraday-excon@1.1.0.rbi +128 -0
  168. data/sorbet/rbi/gems/faraday-httpclient@1.0.1.rbi +123 -0
  169. data/sorbet/rbi/gems/faraday-multipart@1.2.0.rbi +190 -0
  170. data/sorbet/rbi/gems/faraday-net_http@1.0.2.rbi +140 -0
  171. data/sorbet/rbi/gems/faraday-net_http_persistent@1.2.0.rbi +116 -0
  172. data/sorbet/rbi/gems/faraday-patron@1.0.0.rbi +119 -0
  173. data/sorbet/rbi/gems/faraday-rack@1.0.0.rbi +113 -0
  174. data/sorbet/rbi/gems/faraday-retry@1.0.3.rbi +149 -0
  175. data/sorbet/rbi/gems/faraday@1.10.5.rbi +1620 -0
  176. data/sorbet/rbi/gems/hansi@0.2.1.rbi +9 -0
  177. data/sorbet/rbi/gems/hashdiff@1.1.2.rbi +174 -0
  178. data/sorbet/rbi/gems/i18n@1.14.7.rbi +1328 -0
  179. data/sorbet/rbi/gems/ice_nine@0.11.2.rbi +145 -0
  180. data/sorbet/rbi/gems/io-console@0.8.0.rbi +9 -0
  181. data/sorbet/rbi/gems/json@2.9.1.rbi +282 -0
  182. data/sorbet/rbi/gems/language_server-protocol@3.17.0.3.rbi +8057 -0
  183. data/sorbet/rbi/gems/logger@1.7.0.rbi +260 -0
  184. data/sorbet/rbi/gems/loofah@2.24.0.rbi +571 -0
  185. data/sorbet/rbi/gems/memoizable@0.4.2.rbi +131 -0
  186. data/sorbet/rbi/gems/memosa@0.8.2.rbi +185 -0
  187. data/sorbet/rbi/gems/minitest@5.26.0.rbi +824 -0
  188. data/sorbet/rbi/gems/money@6.19.0.rbi +815 -0
  189. data/sorbet/rbi/gems/morpher@0.4.2.rbi +388 -0
  190. data/sorbet/rbi/gems/mprelude@0.1.0.rbi +140 -0
  191. data/sorbet/rbi/gems/multi_json@1.15.0.rbi +180 -0
  192. data/sorbet/rbi/gems/multipart-post@2.4.1.rbi +154 -0
  193. data/sorbet/rbi/gems/mustermann-contrib@3.0.3.rbi +9 -0
  194. data/sorbet/rbi/gems/mustermann@3.0.3.rbi +809 -0
  195. data/sorbet/rbi/gems/netrc@0.11.0.rbi +112 -0
  196. data/sorbet/rbi/gems/nokogiri@1.19.1.rbi +3412 -0
  197. data/sorbet/rbi/gems/parallel@1.26.3.rbi +234 -0
  198. data/sorbet/rbi/gems/parser@3.3.7.0.rbi +4877 -0
  199. data/sorbet/rbi/gems/pp@0.6.2.rbi +176 -0
  200. data/sorbet/rbi/gems/prettyprint@0.2.0.rbi +155 -0
  201. data/sorbet/rbi/gems/prism@1.5.1.rbi +26368 -0
  202. data/sorbet/rbi/gems/procto@0.0.3.rbi +9 -0
  203. data/sorbet/rbi/gems/psych@5.2.3.rbi +806 -0
  204. data/sorbet/rbi/gems/public_suffix@6.0.1.rbi +267 -0
  205. data/sorbet/rbi/gems/racc@1.8.1.rbi +120 -0
  206. data/sorbet/rbi/gems/rack-session@2.1.1.rbi +458 -0
  207. data/sorbet/rbi/gems/rack-test@2.2.0.rbi +405 -0
  208. data/sorbet/rbi/gems/rack@3.1.14.rbi +2774 -0
  209. data/sorbet/rbi/gems/rackup@2.2.1.rbi +132 -0
  210. data/sorbet/rbi/gems/rails-dom-testing@2.2.0.rbi +266 -0
  211. data/sorbet/rbi/gems/rails-html-sanitizer@1.6.2.rbi +545 -0
  212. data/sorbet/rbi/gems/railties@8.0.4.rbi +2150 -0
  213. data/sorbet/rbi/gems/rainbow@3.1.1.rbi +333 -0
  214. data/sorbet/rbi/gems/rake@13.2.1.rbi +2054 -0
  215. data/sorbet/rbi/gems/rbi@0.2.3.rbi +3961 -0
  216. data/sorbet/rbi/gems/rdoc@6.13.1.rbi +6784 -0
  217. data/sorbet/rbi/gems/regexp_parser@2.11.3.rbi +3020 -0
  218. data/sorbet/rbi/gems/reline@0.6.0.rbi +9 -0
  219. data/sorbet/rbi/gems/rexml@3.4.2.rbi +1777 -0
  220. data/sorbet/rbi/gems/rubocop-ast@1.38.0.rbi +5293 -0
  221. data/sorbet/rbi/gems/rubocop@1.71.1.rbi +31846 -0
  222. data/sorbet/rbi/gems/ruby-progressbar@1.13.0.rbi +980 -0
  223. data/sorbet/rbi/gems/ruby2_keywords@0.0.5.rbi +9 -0
  224. data/sorbet/rbi/gems/securerandom@0.4.1.rbi +33 -0
  225. data/sorbet/rbi/gems/sentry-ruby@5.22.1.rbi +3782 -0
  226. data/sorbet/rbi/gems/spoom@1.5.1.rbi +4321 -0
  227. data/sorbet/rbi/gems/stringio@3.1.2.rbi +9 -0
  228. data/sorbet/rbi/gems/tapioca@0.16.8.rbi +3399 -0
  229. data/sorbet/rbi/gems/thor@1.3.2.rbi +2012 -0
  230. data/sorbet/rbi/gems/thread_safe@0.3.6.rbi +711 -0
  231. data/sorbet/rbi/gems/timeout@0.4.4.rbi +80 -0
  232. data/sorbet/rbi/gems/tsort@0.2.0.rbi +50 -0
  233. data/sorbet/rbi/gems/tzinfo@2.0.6.rbi +1677 -0
  234. data/sorbet/rbi/gems/unicode-display_width@2.6.0.rbi +62 -0
  235. data/sorbet/rbi/gems/uri@1.1.0.rbi +760 -0
  236. data/sorbet/rbi/gems/useragent@0.16.11.rbi +9 -0
  237. data/sorbet/rbi/gems/webmock@3.24.0.rbi +1362 -0
  238. data/sorbet/rbi/gems/yard-sorbet@0.9.0.rbi +345 -0
  239. data/sorbet/rbi/gems/yard@0.9.37.rbi +8795 -0
  240. data/sorbet/rbi/gems/zeitwerk@2.7.1.rbi +589 -0
  241. data/sorbet/tapioca/config.yml +45 -0
  242. data/sorbet/tapioca/require.rb +8 -0
  243. data/sorbet/tapioca/sorbet/rbi/dsl/.gitattributes +1 -0
  244. data/sorbet/tapioca/sorbet/rbi/dsl/active_support/callbacks.rbi +23 -0
  245. metadata +737 -0
metadata ADDED
@@ -0,0 +1,737 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: alchemrest
3
+ version: !ruby/object:Gem::Version
4
+ version: 3.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Andrew Swerlick
8
+ - James Boyer
9
+ autorequire:
10
+ bindir: exe
11
+ cert_chain: []
12
+ date: 2026-03-02 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: activerecord
16
+ requirement: !ruby/object:Gem::Requirement
17
+ requirements:
18
+ - - ">="
19
+ - !ruby/object:Gem::Version
20
+ version: '7.2'
21
+ - - "<"
22
+ - !ruby/object:Gem::Version
23
+ version: '8.1'
24
+ type: :runtime
25
+ prerelease: false
26
+ version_requirements: !ruby/object:Gem::Requirement
27
+ requirements:
28
+ - - ">="
29
+ - !ruby/object:Gem::Version
30
+ version: '7.2'
31
+ - - "<"
32
+ - !ruby/object:Gem::Version
33
+ version: '8.1'
34
+ - !ruby/object:Gem::Dependency
35
+ name: activesupport
36
+ requirement: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '7.2'
41
+ - - "<"
42
+ - !ruby/object:Gem::Version
43
+ version: '8.1'
44
+ type: :runtime
45
+ prerelease: false
46
+ version_requirements: !ruby/object:Gem::Requirement
47
+ requirements:
48
+ - - ">="
49
+ - !ruby/object:Gem::Version
50
+ version: '7.2'
51
+ - - "<"
52
+ - !ruby/object:Gem::Version
53
+ version: '8.1'
54
+ - !ruby/object:Gem::Dependency
55
+ name: circuitbox
56
+ requirement: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - "~>"
59
+ - !ruby/object:Gem::Version
60
+ version: 2.0.0
61
+ type: :runtime
62
+ prerelease: false
63
+ version_requirements: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - "~>"
66
+ - !ruby/object:Gem::Version
67
+ version: 2.0.0
68
+ - !ruby/object:Gem::Dependency
69
+ name: faraday
70
+ requirement: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - ">="
73
+ - !ruby/object:Gem::Version
74
+ version: '1.10'
75
+ - - "<"
76
+ - !ruby/object:Gem::Version
77
+ version: '3.0'
78
+ type: :runtime
79
+ prerelease: false
80
+ version_requirements: !ruby/object:Gem::Requirement
81
+ requirements:
82
+ - - ">="
83
+ - !ruby/object:Gem::Version
84
+ version: '1.10'
85
+ - - "<"
86
+ - !ruby/object:Gem::Version
87
+ version: '3.0'
88
+ - !ruby/object:Gem::Dependency
89
+ name: memosa
90
+ requirement: !ruby/object:Gem::Requirement
91
+ requirements:
92
+ - - ">="
93
+ - !ruby/object:Gem::Version
94
+ version: 0.8.2
95
+ type: :runtime
96
+ prerelease: false
97
+ version_requirements: !ruby/object:Gem::Requirement
98
+ requirements:
99
+ - - ">="
100
+ - !ruby/object:Gem::Version
101
+ version: 0.8.2
102
+ - !ruby/object:Gem::Dependency
103
+ name: money
104
+ requirement: !ruby/object:Gem::Requirement
105
+ requirements:
106
+ - - ">="
107
+ - !ruby/object:Gem::Version
108
+ version: '6.0'
109
+ type: :runtime
110
+ prerelease: false
111
+ version_requirements: !ruby/object:Gem::Requirement
112
+ requirements:
113
+ - - ">="
114
+ - !ruby/object:Gem::Version
115
+ version: '6.0'
116
+ - !ruby/object:Gem::Dependency
117
+ name: morpher
118
+ requirement: !ruby/object:Gem::Requirement
119
+ requirements:
120
+ - - ">="
121
+ - !ruby/object:Gem::Version
122
+ version: 0.4.1
123
+ type: :runtime
124
+ prerelease: false
125
+ version_requirements: !ruby/object:Gem::Requirement
126
+ requirements:
127
+ - - ">="
128
+ - !ruby/object:Gem::Version
129
+ version: 0.4.1
130
+ - !ruby/object:Gem::Dependency
131
+ name: multi_json
132
+ requirement: !ruby/object:Gem::Requirement
133
+ requirements:
134
+ - - "~>"
135
+ - !ruby/object:Gem::Version
136
+ version: '1.0'
137
+ type: :runtime
138
+ prerelease: false
139
+ version_requirements: !ruby/object:Gem::Requirement
140
+ requirements:
141
+ - - "~>"
142
+ - !ruby/object:Gem::Version
143
+ version: '1.0'
144
+ - !ruby/object:Gem::Dependency
145
+ name: mustermann-contrib
146
+ requirement: !ruby/object:Gem::Requirement
147
+ requirements:
148
+ - - ">="
149
+ - !ruby/object:Gem::Version
150
+ version: '1.0'
151
+ type: :runtime
152
+ prerelease: false
153
+ version_requirements: !ruby/object:Gem::Requirement
154
+ requirements:
155
+ - - ">="
156
+ - !ruby/object:Gem::Version
157
+ version: '1.0'
158
+ - !ruby/object:Gem::Dependency
159
+ name: railties
160
+ requirement: !ruby/object:Gem::Requirement
161
+ requirements:
162
+ - - ">="
163
+ - !ruby/object:Gem::Version
164
+ version: '7.2'
165
+ - - "<"
166
+ - !ruby/object:Gem::Version
167
+ version: '8.1'
168
+ type: :runtime
169
+ prerelease: false
170
+ version_requirements: !ruby/object:Gem::Requirement
171
+ requirements:
172
+ - - ">="
173
+ - !ruby/object:Gem::Version
174
+ version: '7.2'
175
+ - - "<"
176
+ - !ruby/object:Gem::Version
177
+ version: '8.1'
178
+ - !ruby/object:Gem::Dependency
179
+ name: sentry-ruby
180
+ requirement: !ruby/object:Gem::Requirement
181
+ requirements:
182
+ - - ">="
183
+ - !ruby/object:Gem::Version
184
+ version: '0'
185
+ type: :runtime
186
+ prerelease: false
187
+ version_requirements: !ruby/object:Gem::Requirement
188
+ requirements:
189
+ - - ">="
190
+ - !ruby/object:Gem::Version
191
+ version: '0'
192
+ - !ruby/object:Gem::Dependency
193
+ name: sorbet-runtime
194
+ requirement: !ruby/object:Gem::Requirement
195
+ requirements:
196
+ - - ">="
197
+ - !ruby/object:Gem::Version
198
+ version: 0.5.0
199
+ type: :runtime
200
+ prerelease: false
201
+ version_requirements: !ruby/object:Gem::Requirement
202
+ requirements:
203
+ - - ">="
204
+ - !ruby/object:Gem::Version
205
+ version: 0.5.0
206
+ - !ruby/object:Gem::Dependency
207
+ name: activemodel
208
+ requirement: !ruby/object:Gem::Requirement
209
+ requirements:
210
+ - - ">="
211
+ - !ruby/object:Gem::Version
212
+ version: '0'
213
+ type: :development
214
+ prerelease: false
215
+ version_requirements: !ruby/object:Gem::Requirement
216
+ requirements:
217
+ - - ">="
218
+ - !ruby/object:Gem::Version
219
+ version: '0'
220
+ - !ruby/object:Gem::Dependency
221
+ name: appraisal
222
+ requirement: !ruby/object:Gem::Requirement
223
+ requirements:
224
+ - - ">="
225
+ - !ruby/object:Gem::Version
226
+ version: '0'
227
+ type: :development
228
+ prerelease: false
229
+ version_requirements: !ruby/object:Gem::Requirement
230
+ requirements:
231
+ - - ">="
232
+ - !ruby/object:Gem::Version
233
+ version: '0'
234
+ - !ruby/object:Gem::Dependency
235
+ name: betterlint
236
+ requirement: !ruby/object:Gem::Requirement
237
+ requirements:
238
+ - - ">="
239
+ - !ruby/object:Gem::Version
240
+ version: '0'
241
+ type: :development
242
+ prerelease: false
243
+ version_requirements: !ruby/object:Gem::Requirement
244
+ requirements:
245
+ - - ">="
246
+ - !ruby/object:Gem::Version
247
+ version: '0'
248
+ - !ruby/object:Gem::Dependency
249
+ name: combustion
250
+ requirement: !ruby/object:Gem::Requirement
251
+ requirements:
252
+ - - ">="
253
+ - !ruby/object:Gem::Version
254
+ version: '0'
255
+ type: :development
256
+ prerelease: false
257
+ version_requirements: !ruby/object:Gem::Requirement
258
+ requirements:
259
+ - - ">="
260
+ - !ruby/object:Gem::Version
261
+ version: '0'
262
+ - !ruby/object:Gem::Dependency
263
+ name: factory_bot
264
+ requirement: !ruby/object:Gem::Requirement
265
+ requirements:
266
+ - - ">="
267
+ - !ruby/object:Gem::Version
268
+ version: '0'
269
+ type: :development
270
+ prerelease: false
271
+ version_requirements: !ruby/object:Gem::Requirement
272
+ requirements:
273
+ - - ">="
274
+ - !ruby/object:Gem::Version
275
+ version: '0'
276
+ - !ruby/object:Gem::Dependency
277
+ name: moneta
278
+ requirement: !ruby/object:Gem::Requirement
279
+ requirements:
280
+ - - ">="
281
+ - !ruby/object:Gem::Version
282
+ version: '0'
283
+ type: :development
284
+ prerelease: false
285
+ version_requirements: !ruby/object:Gem::Requirement
286
+ requirements:
287
+ - - ">="
288
+ - !ruby/object:Gem::Version
289
+ version: '0'
290
+ - !ruby/object:Gem::Dependency
291
+ name: mutant-rspec
292
+ requirement: !ruby/object:Gem::Requirement
293
+ requirements:
294
+ - - "~>"
295
+ - !ruby/object:Gem::Version
296
+ version: 0.13.4
297
+ type: :development
298
+ prerelease: false
299
+ version_requirements: !ruby/object:Gem::Requirement
300
+ requirements:
301
+ - - "~>"
302
+ - !ruby/object:Gem::Version
303
+ version: 0.13.4
304
+ - !ruby/object:Gem::Dependency
305
+ name: pg
306
+ requirement: !ruby/object:Gem::Requirement
307
+ requirements:
308
+ - - ">="
309
+ - !ruby/object:Gem::Version
310
+ version: '0'
311
+ type: :development
312
+ prerelease: false
313
+ version_requirements: !ruby/object:Gem::Requirement
314
+ requirements:
315
+ - - ">="
316
+ - !ruby/object:Gem::Version
317
+ version: '0'
318
+ - !ruby/object:Gem::Dependency
319
+ name: pry
320
+ requirement: !ruby/object:Gem::Requirement
321
+ requirements:
322
+ - - ">="
323
+ - !ruby/object:Gem::Version
324
+ version: '0'
325
+ type: :development
326
+ prerelease: false
327
+ version_requirements: !ruby/object:Gem::Requirement
328
+ requirements:
329
+ - - ">="
330
+ - !ruby/object:Gem::Version
331
+ version: '0'
332
+ - !ruby/object:Gem::Dependency
333
+ name: rake
334
+ requirement: !ruby/object:Gem::Requirement
335
+ requirements:
336
+ - - "~>"
337
+ - !ruby/object:Gem::Version
338
+ version: '13.0'
339
+ type: :development
340
+ prerelease: false
341
+ version_requirements: !ruby/object:Gem::Requirement
342
+ requirements:
343
+ - - "~>"
344
+ - !ruby/object:Gem::Version
345
+ version: '13.0'
346
+ - !ruby/object:Gem::Dependency
347
+ name: rspec
348
+ requirement: !ruby/object:Gem::Requirement
349
+ requirements:
350
+ - - "~>"
351
+ - !ruby/object:Gem::Version
352
+ version: '3.0'
353
+ type: :development
354
+ prerelease: false
355
+ version_requirements: !ruby/object:Gem::Requirement
356
+ requirements:
357
+ - - "~>"
358
+ - !ruby/object:Gem::Version
359
+ version: '3.0'
360
+ - !ruby/object:Gem::Dependency
361
+ name: rspec_junit_formatter
362
+ requirement: !ruby/object:Gem::Requirement
363
+ requirements:
364
+ - - ">="
365
+ - !ruby/object:Gem::Version
366
+ version: '0'
367
+ type: :development
368
+ prerelease: false
369
+ version_requirements: !ruby/object:Gem::Requirement
370
+ requirements:
371
+ - - ">="
372
+ - !ruby/object:Gem::Version
373
+ version: '0'
374
+ - !ruby/object:Gem::Dependency
375
+ name: rubocop
376
+ requirement: !ruby/object:Gem::Requirement
377
+ requirements:
378
+ - - ">="
379
+ - !ruby/object:Gem::Version
380
+ version: '0'
381
+ type: :development
382
+ prerelease: false
383
+ version_requirements: !ruby/object:Gem::Requirement
384
+ requirements:
385
+ - - ">="
386
+ - !ruby/object:Gem::Version
387
+ version: '0'
388
+ - !ruby/object:Gem::Dependency
389
+ name: rubocop-rspec
390
+ requirement: !ruby/object:Gem::Requirement
391
+ requirements:
392
+ - - ">="
393
+ - !ruby/object:Gem::Version
394
+ version: '0'
395
+ type: :development
396
+ prerelease: false
397
+ version_requirements: !ruby/object:Gem::Requirement
398
+ requirements:
399
+ - - ">="
400
+ - !ruby/object:Gem::Version
401
+ version: '0'
402
+ - !ruby/object:Gem::Dependency
403
+ name: sorbet
404
+ requirement: !ruby/object:Gem::Requirement
405
+ requirements:
406
+ - - ">="
407
+ - !ruby/object:Gem::Version
408
+ version: '0'
409
+ type: :development
410
+ prerelease: false
411
+ version_requirements: !ruby/object:Gem::Requirement
412
+ requirements:
413
+ - - ">="
414
+ - !ruby/object:Gem::Version
415
+ version: '0'
416
+ - !ruby/object:Gem::Dependency
417
+ name: tapioca
418
+ requirement: !ruby/object:Gem::Requirement
419
+ requirements:
420
+ - - ">="
421
+ - !ruby/object:Gem::Version
422
+ version: 0.16.6
423
+ type: :development
424
+ prerelease: false
425
+ version_requirements: !ruby/object:Gem::Requirement
426
+ requirements:
427
+ - - ">="
428
+ - !ruby/object:Gem::Version
429
+ version: 0.16.6
430
+ - !ruby/object:Gem::Dependency
431
+ name: timecop
432
+ requirement: !ruby/object:Gem::Requirement
433
+ requirements:
434
+ - - ">="
435
+ - !ruby/object:Gem::Version
436
+ version: '0'
437
+ type: :development
438
+ prerelease: false
439
+ version_requirements: !ruby/object:Gem::Requirement
440
+ requirements:
441
+ - - ">="
442
+ - !ruby/object:Gem::Version
443
+ version: '0'
444
+ - !ruby/object:Gem::Dependency
445
+ name: webmock
446
+ requirement: !ruby/object:Gem::Requirement
447
+ requirements:
448
+ - - ">="
449
+ - !ruby/object:Gem::Version
450
+ version: '0'
451
+ type: :development
452
+ prerelease: false
453
+ version_requirements: !ruby/object:Gem::Requirement
454
+ requirements:
455
+ - - ">="
456
+ - !ruby/object:Gem::Version
457
+ version: '0'
458
+ description: "\n Betterment's library for building robust, reliable, performant
459
+ integrations with\n third party apis, with a focus on making APIs work with the
460
+ rest of your domain layer\n not against it.\n "
461
+ email:
462
+ - andrew.swerlick@betterment.com
463
+ - james.boyer@betterment.com
464
+ executables: []
465
+ extensions: []
466
+ extra_rdoc_files: []
467
+ files:
468
+ - ".rspec"
469
+ - ".rubocop.yml"
470
+ - ".rubocop_todo.yml"
471
+ - ".ruby-version"
472
+ - Appraisals
473
+ - Gemfile
474
+ - Gemfile.lock
475
+ - Rakefile
476
+ - alchemrest.gemspec
477
+ - coach.yml
478
+ - examples/bank_api.rb
479
+ - examples/bank_api/client.rb
480
+ - examples/bank_api/data/account.rb
481
+ - examples/bank_api/data/ach.rb
482
+ - examples/bank_api/data/business_account.rb
483
+ - examples/bank_api/data/card.rb
484
+ - examples/bank_api/data/check.rb
485
+ - examples/bank_api/data/product.rb
486
+ - examples/bank_api/data/transaction.rb
487
+ - examples/bank_api/data/user.rb
488
+ - examples/bank_api/factories.rb
489
+ - examples/bank_api/graph_visualization.rb
490
+ - examples/bank_api/positive_interest_string.rb
491
+ - examples/bank_api/requests/delete_user.rb
492
+ - examples/bank_api/requests/get_business_account.rb
493
+ - examples/bank_api/requests/get_products.rb
494
+ - examples/bank_api/requests/get_transactions.rb
495
+ - examples/bank_api/requests/get_user.rb
496
+ - examples/bank_api/requests/post_transaction.rb
497
+ - examples/bank_api/requests/update_user.rb
498
+ - examples/bank_api/root.rb
499
+ - gemfiles/faraday_2.gemfile
500
+ - gemfiles/faraday_2.gemfile.lock
501
+ - gemfiles/rails_7_0.gemfile.lock
502
+ - gemfiles/rails_7_2.gemfile
503
+ - gemfiles/rails_7_2.gemfile.lock
504
+ - gemfiles/rails_8_0.gemfile
505
+ - gemfiles/rails_8_0.gemfile.lock
506
+ - lib/alchemrest.rb
507
+ - lib/alchemrest/circuit_breaker.rb
508
+ - lib/alchemrest/client.rb
509
+ - lib/alchemrest/client/configuration.rb
510
+ - lib/alchemrest/client/configuration/connection.rb
511
+ - lib/alchemrest/cop.rb
512
+ - lib/alchemrest/data.rb
513
+ - lib/alchemrest/data/capture_configuration.rb
514
+ - lib/alchemrest/data/field.rb
515
+ - lib/alchemrest/data/graph.rb
516
+ - lib/alchemrest/data/record.rb
517
+ - lib/alchemrest/data/schema.rb
518
+ - lib/alchemrest/endpoint_definition.rb
519
+ - lib/alchemrest/error.rb
520
+ - lib/alchemrest/factory_bot.rb
521
+ - lib/alchemrest/faraday_middleware/external_api_instrumentation.rb
522
+ - lib/alchemrest/faraday_middleware/json_parser.rb
523
+ - lib/alchemrest/faraday_middleware/kill_switch.rb
524
+ - lib/alchemrest/faraday_middleware/underscore_response.rb
525
+ - lib/alchemrest/hash_path.rb
526
+ - lib/alchemrest/http_request.rb
527
+ - lib/alchemrest/kill_switch.rb
528
+ - lib/alchemrest/kill_switch/adapters.rb
529
+ - lib/alchemrest/railtie.rb
530
+ - lib/alchemrest/request.rb
531
+ - lib/alchemrest/request/endpoint.rb
532
+ - lib/alchemrest/request/returns.rb
533
+ - lib/alchemrest/request_definition.rb
534
+ - lib/alchemrest/request_definition/builder.rb
535
+ - lib/alchemrest/response.rb
536
+ - lib/alchemrest/response/pipeline.rb
537
+ - lib/alchemrest/response/pipeline/extract_payload.rb
538
+ - lib/alchemrest/response/pipeline/final.rb
539
+ - lib/alchemrest/response/pipeline/omit.rb
540
+ - lib/alchemrest/response/pipeline/sanitize.rb
541
+ - lib/alchemrest/response/pipeline/transform.rb
542
+ - lib/alchemrest/response/pipeline/was_successful.rb
543
+ - lib/alchemrest/response_captured_handler.rb
544
+ - lib/alchemrest/result.rb
545
+ - lib/alchemrest/result/halt.rb
546
+ - lib/alchemrest/result/try_helpers.rb
547
+ - lib/alchemrest/root.rb
548
+ - lib/alchemrest/transforms.rb
549
+ - lib/alchemrest/transforms/base_to_type_transform_registry.rb
550
+ - lib/alchemrest/transforms/constrainable.rb
551
+ - lib/alchemrest/transforms/constraint.rb
552
+ - lib/alchemrest/transforms/constraint/block.rb
553
+ - lib/alchemrest/transforms/constraint/greater_than.rb
554
+ - lib/alchemrest/transforms/constraint/greater_than_or_eq.rb
555
+ - lib/alchemrest/transforms/constraint/in_list.rb
556
+ - lib/alchemrest/transforms/constraint/is_instance_of.rb
557
+ - lib/alchemrest/transforms/constraint/is_uuid.rb
558
+ - lib/alchemrest/transforms/constraint/less_than.rb
559
+ - lib/alchemrest/transforms/constraint/less_than_or_eq.rb
560
+ - lib/alchemrest/transforms/constraint/matches_regex.rb
561
+ - lib/alchemrest/transforms/constraint/max_length.rb
562
+ - lib/alchemrest/transforms/constraint/min_length.rb
563
+ - lib/alchemrest/transforms/constraint_builder.rb
564
+ - lib/alchemrest/transforms/constraint_builder/for_number.rb
565
+ - lib/alchemrest/transforms/constraint_builder/for_string.rb
566
+ - lib/alchemrest/transforms/date_transform.rb
567
+ - lib/alchemrest/transforms/enum.rb
568
+ - lib/alchemrest/transforms/epoch_time.rb
569
+ - lib/alchemrest/transforms/from_chain.rb
570
+ - lib/alchemrest/transforms/from_number.rb
571
+ - lib/alchemrest/transforms/from_number/to_type_transform_registry.rb
572
+ - lib/alchemrest/transforms/from_string.rb
573
+ - lib/alchemrest/transforms/from_string/to_type_transform_registry.rb
574
+ - lib/alchemrest/transforms/from_type.rb
575
+ - lib/alchemrest/transforms/from_type/empty_to_type_transform_registry.rb
576
+ - lib/alchemrest/transforms/iso_time.rb
577
+ - lib/alchemrest/transforms/json_number.rb
578
+ - lib/alchemrest/transforms/loose_hash.rb
579
+ - lib/alchemrest/transforms/money_transform.rb
580
+ - lib/alchemrest/transforms/number.rb
581
+ - lib/alchemrest/transforms/output_type.rb
582
+ - lib/alchemrest/transforms/to_decimal.rb
583
+ - lib/alchemrest/transforms/to_type.rb
584
+ - lib/alchemrest/transforms/to_type/from_string_to_time_selector.rb
585
+ - lib/alchemrest/transforms/to_type/transforms_selector.rb
586
+ - lib/alchemrest/transforms/typed.rb
587
+ - lib/alchemrest/transforms/union.rb
588
+ - lib/alchemrest/transforms/with_constraint.rb
589
+ - lib/alchemrest/url_builder.rb
590
+ - lib/alchemrest/url_builder/encoders.rb
591
+ - lib/alchemrest/url_builder/options.rb
592
+ - lib/alchemrest/version.rb
593
+ - lib/alchemrest/webmock_helpers.rb
594
+ - lib/generators/alchemrest/kill_switch_migration_generator.rb
595
+ - lib/generators/alchemrest/templates/kill_switch_migration.rb.erb
596
+ - lib/rubocop/cop/alchemrest/define_request_using_with_params.rb
597
+ - lib/rubocop/cop/alchemrest/endpoint_definition_using_generic_params.rb
598
+ - lib/rubocop/cop/alchemrest/request_hash_returning_block.rb
599
+ - lib/rubocop/cop/alchemrest/time_transform_with_no_zone.rb
600
+ - lib/tapioca/dsl/compilers/alchemrest_data.rb
601
+ - lib/tapioca/dsl/compilers/alchemrest_root.rb
602
+ - mutant.yml
603
+ - rbi/alchemrest.rbi
604
+ - rbi/alchemrest/result.rbi
605
+ - sorbet/config
606
+ - sorbet/rbi/gems/.gitattributes
607
+ - sorbet/rbi/gems/abstract_type@0.0.7.rbi
608
+ - sorbet/rbi/gems/actionpack@8.0.4.rbi
609
+ - sorbet/rbi/gems/actionview@8.0.4.rbi
610
+ - sorbet/rbi/gems/activemodel@8.0.4.rbi
611
+ - sorbet/rbi/gems/activesupport@8.0.4.rbi
612
+ - sorbet/rbi/gems/adamantium@0.2.0.rbi
613
+ - sorbet/rbi/gems/addressable@2.8.7.rbi
614
+ - sorbet/rbi/gems/anima@0.3.2.rbi
615
+ - sorbet/rbi/gems/ast@2.4.2.rbi
616
+ - sorbet/rbi/gems/base64@0.3.0.rbi
617
+ - sorbet/rbi/gems/benchmark@0.5.0.rbi
618
+ - sorbet/rbi/gems/bigdecimal@3.3.1.rbi
619
+ - sorbet/rbi/gems/builder@3.3.0.rbi
620
+ - sorbet/rbi/gems/circuitbox@2.0.0.rbi
621
+ - sorbet/rbi/gems/concord@0.1.6.rbi
622
+ - sorbet/rbi/gems/concurrent-ruby@1.3.5.rbi
623
+ - sorbet/rbi/gems/connection_pool@2.5.4.rbi
624
+ - sorbet/rbi/gems/crack@1.0.0.rbi
625
+ - sorbet/rbi/gems/crass@1.0.6.rbi
626
+ - sorbet/rbi/gems/date@3.4.1.rbi
627
+ - sorbet/rbi/gems/drb@2.2.3.rbi
628
+ - sorbet/rbi/gems/equalizer@0.0.11.rbi
629
+ - sorbet/rbi/gems/erubi@1.13.1.rbi
630
+ - sorbet/rbi/gems/factory_bot@6.5.0.rbi
631
+ - sorbet/rbi/gems/faraday-em_http@1.0.0.rbi
632
+ - sorbet/rbi/gems/faraday-em_synchrony@1.0.1.rbi
633
+ - sorbet/rbi/gems/faraday-excon@1.1.0.rbi
634
+ - sorbet/rbi/gems/faraday-httpclient@1.0.1.rbi
635
+ - sorbet/rbi/gems/faraday-multipart@1.2.0.rbi
636
+ - sorbet/rbi/gems/faraday-net_http@1.0.2.rbi
637
+ - sorbet/rbi/gems/faraday-net_http_persistent@1.2.0.rbi
638
+ - sorbet/rbi/gems/faraday-patron@1.0.0.rbi
639
+ - sorbet/rbi/gems/faraday-rack@1.0.0.rbi
640
+ - sorbet/rbi/gems/faraday-retry@1.0.3.rbi
641
+ - sorbet/rbi/gems/faraday@1.10.5.rbi
642
+ - sorbet/rbi/gems/hansi@0.2.1.rbi
643
+ - sorbet/rbi/gems/hashdiff@1.1.2.rbi
644
+ - sorbet/rbi/gems/i18n@1.14.7.rbi
645
+ - sorbet/rbi/gems/ice_nine@0.11.2.rbi
646
+ - sorbet/rbi/gems/io-console@0.8.0.rbi
647
+ - sorbet/rbi/gems/json@2.9.1.rbi
648
+ - sorbet/rbi/gems/language_server-protocol@3.17.0.3.rbi
649
+ - sorbet/rbi/gems/logger@1.7.0.rbi
650
+ - sorbet/rbi/gems/loofah@2.24.0.rbi
651
+ - sorbet/rbi/gems/memoizable@0.4.2.rbi
652
+ - sorbet/rbi/gems/memosa@0.8.2.rbi
653
+ - sorbet/rbi/gems/minitest@5.26.0.rbi
654
+ - sorbet/rbi/gems/money@6.19.0.rbi
655
+ - sorbet/rbi/gems/morpher@0.4.2.rbi
656
+ - sorbet/rbi/gems/mprelude@0.1.0.rbi
657
+ - sorbet/rbi/gems/multi_json@1.15.0.rbi
658
+ - sorbet/rbi/gems/multipart-post@2.4.1.rbi
659
+ - sorbet/rbi/gems/mustermann-contrib@3.0.3.rbi
660
+ - sorbet/rbi/gems/mustermann@3.0.3.rbi
661
+ - sorbet/rbi/gems/netrc@0.11.0.rbi
662
+ - sorbet/rbi/gems/nokogiri@1.19.1.rbi
663
+ - sorbet/rbi/gems/parallel@1.26.3.rbi
664
+ - sorbet/rbi/gems/parser@3.3.7.0.rbi
665
+ - sorbet/rbi/gems/pp@0.6.2.rbi
666
+ - sorbet/rbi/gems/prettyprint@0.2.0.rbi
667
+ - sorbet/rbi/gems/prism@1.5.1.rbi
668
+ - sorbet/rbi/gems/procto@0.0.3.rbi
669
+ - sorbet/rbi/gems/psych@5.2.3.rbi
670
+ - sorbet/rbi/gems/public_suffix@6.0.1.rbi
671
+ - sorbet/rbi/gems/racc@1.8.1.rbi
672
+ - sorbet/rbi/gems/rack-session@2.1.1.rbi
673
+ - sorbet/rbi/gems/rack-test@2.2.0.rbi
674
+ - sorbet/rbi/gems/rack@3.1.14.rbi
675
+ - sorbet/rbi/gems/rackup@2.2.1.rbi
676
+ - sorbet/rbi/gems/rails-dom-testing@2.2.0.rbi
677
+ - sorbet/rbi/gems/rails-html-sanitizer@1.6.2.rbi
678
+ - sorbet/rbi/gems/railties@8.0.4.rbi
679
+ - sorbet/rbi/gems/rainbow@3.1.1.rbi
680
+ - sorbet/rbi/gems/rake@13.2.1.rbi
681
+ - sorbet/rbi/gems/rbi@0.2.3.rbi
682
+ - sorbet/rbi/gems/rdoc@6.13.1.rbi
683
+ - sorbet/rbi/gems/regexp_parser@2.11.3.rbi
684
+ - sorbet/rbi/gems/reline@0.6.0.rbi
685
+ - sorbet/rbi/gems/rexml@3.4.2.rbi
686
+ - sorbet/rbi/gems/rubocop-ast@1.38.0.rbi
687
+ - sorbet/rbi/gems/rubocop@1.71.1.rbi
688
+ - sorbet/rbi/gems/ruby-progressbar@1.13.0.rbi
689
+ - sorbet/rbi/gems/ruby2_keywords@0.0.5.rbi
690
+ - sorbet/rbi/gems/securerandom@0.4.1.rbi
691
+ - sorbet/rbi/gems/sentry-ruby@5.22.1.rbi
692
+ - sorbet/rbi/gems/spoom@1.5.1.rbi
693
+ - sorbet/rbi/gems/stringio@3.1.2.rbi
694
+ - sorbet/rbi/gems/tapioca@0.16.8.rbi
695
+ - sorbet/rbi/gems/thor@1.3.2.rbi
696
+ - sorbet/rbi/gems/thread_safe@0.3.6.rbi
697
+ - sorbet/rbi/gems/timeout@0.4.4.rbi
698
+ - sorbet/rbi/gems/tsort@0.2.0.rbi
699
+ - sorbet/rbi/gems/tzinfo@2.0.6.rbi
700
+ - sorbet/rbi/gems/unicode-display_width@2.6.0.rbi
701
+ - sorbet/rbi/gems/uri@1.1.0.rbi
702
+ - sorbet/rbi/gems/useragent@0.16.11.rbi
703
+ - sorbet/rbi/gems/webmock@3.24.0.rbi
704
+ - sorbet/rbi/gems/yard-sorbet@0.9.0.rbi
705
+ - sorbet/rbi/gems/yard@0.9.37.rbi
706
+ - sorbet/rbi/gems/zeitwerk@2.7.1.rbi
707
+ - sorbet/tapioca/config.yml
708
+ - sorbet/tapioca/require.rb
709
+ - sorbet/tapioca/sorbet/rbi/dsl/.gitattributes
710
+ - sorbet/tapioca/sorbet/rbi/dsl/active_support/callbacks.rbi
711
+ homepage: https://github.com/Betterment/alchemrest
712
+ licenses:
713
+ - MIT
714
+ metadata:
715
+ rubygems_mfa_required: 'true'
716
+ changelog_uri: https://github.com/Betterment/alchemrest/CHANGELOG.md
717
+ post_install_message:
718
+ rdoc_options: []
719
+ require_paths:
720
+ - lib
721
+ required_ruby_version: !ruby/object:Gem::Requirement
722
+ requirements:
723
+ - - ">="
724
+ - !ruby/object:Gem::Version
725
+ version: '3.2'
726
+ required_rubygems_version: !ruby/object:Gem::Requirement
727
+ requirements:
728
+ - - ">="
729
+ - !ruby/object:Gem::Version
730
+ version: '0'
731
+ requirements: []
732
+ rubygems_version: 3.4.10
733
+ signing_key:
734
+ specification_version: 4
735
+ summary: A library to help you transform third party api's into a set of classes and
736
+ models designed to work nicely with your domain.
737
+ test_files: []