acfs 1.7.0 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (237) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +144 -116
  3. data/README.md +19 -24
  4. data/acfs.gemspec +7 -10
  5. data/lib/acfs/collections/paginatable.rb +11 -11
  6. data/lib/acfs/configuration.rb +1 -1
  7. data/lib/acfs/errors.rb +6 -6
  8. data/lib/acfs/global.rb +2 -2
  9. data/lib/acfs/location.rb +1 -1
  10. data/lib/acfs/resource/attributes/uuid.rb +1 -1
  11. data/lib/acfs/resource/attributes.rb +1 -1
  12. data/lib/acfs/resource/dirty.rb +1 -1
  13. data/lib/acfs/resource/operational.rb +4 -4
  14. data/lib/acfs/resource/query_methods.rb +3 -3
  15. data/lib/acfs/response/status.rb +1 -1
  16. data/lib/acfs/service/middleware.rb +2 -2
  17. data/lib/acfs/singleton_resource.rb +2 -2
  18. data/lib/acfs/stub.rb +1 -1
  19. data/lib/acfs/version.rb +2 -2
  20. data/lib/acfs/yard.rb +1 -0
  21. data/spec/acfs/adapter/typhoeus_spec.rb +3 -3
  22. data/spec/acfs/configuration_spec.rb +1 -1
  23. data/spec/acfs/global_spec.rb +5 -5
  24. data/spec/acfs/location_spec.rb +1 -1
  25. data/spec/acfs/middleware/json_spec.rb +1 -1
  26. data/spec/acfs/middleware/message_pack_spec.rb +1 -1
  27. data/spec/acfs/operation_spec.rb +1 -1
  28. data/spec/acfs/resource/attributes/boolean_spec.rb +31 -31
  29. data/spec/acfs/resource/attributes/date_time_spec.rb +9 -9
  30. data/spec/acfs/resource/attributes/dict_spec.rb +10 -10
  31. data/spec/acfs/resource/attributes/float_spec.rb +11 -11
  32. data/spec/acfs/resource/attributes/integer_spec.rb +6 -6
  33. data/spec/acfs/resource/attributes/list_spec.rb +1 -1
  34. data/spec/acfs/resource/attributes/uuid_spec.rb +8 -8
  35. data/spec/acfs/resource/attributes_spec.rb +8 -8
  36. data/spec/acfs/resource/dirty_spec.rb +1 -1
  37. data/spec/acfs/resource/persistence_spec.rb +7 -7
  38. data/spec/acfs/resource/query_methods_spec.rb +1 -1
  39. data/spec/acfs/runner_spec.rb +12 -12
  40. data/spec/acfs/stub_spec.rb +13 -18
  41. data/spec/acfs_spec.rb +4 -4
  42. data/spec/spec_helper.rb +9 -5
  43. data/spec/support/hash.rb +1 -1
  44. data/vendor/bundle/ruby/3.4.0/bundler/gems/rubocop-config-67802c9d1826/LICENSE +21 -0
  45. data/vendor/bundle/ruby/3.4.0/bundler/gems/rubocop-config-67802c9d1826/README.md +23 -0
  46. data/vendor/bundle/ruby/3.4.0/bundler/gems/rubocop-config-67802c9d1826/rubocop-config.gemspec +31 -0
  47. data/vendor/bundle/ruby/3.4.0/gems/actionpack-8.0.1/CHANGELOG.md +205 -0
  48. data/vendor/bundle/ruby/3.4.0/gems/actionpack-8.0.1/MIT-LICENSE +21 -0
  49. data/vendor/bundle/ruby/3.4.0/gems/actionpack-8.0.1/README.rdoc +57 -0
  50. data/vendor/bundle/ruby/3.4.0/gems/actionview-8.0.1/CHANGELOG.md +67 -0
  51. data/vendor/bundle/ruby/3.4.0/gems/actionview-8.0.1/MIT-LICENSE +21 -0
  52. data/vendor/bundle/ruby/3.4.0/gems/actionview-8.0.1/README.rdoc +40 -0
  53. data/vendor/bundle/ruby/3.4.0/gems/activemodel-8.0.1/CHANGELOG.md +110 -0
  54. data/vendor/bundle/ruby/3.4.0/gems/activemodel-8.0.1/MIT-LICENSE +21 -0
  55. data/vendor/bundle/ruby/3.4.0/gems/activemodel-8.0.1/README.rdoc +266 -0
  56. data/vendor/bundle/ruby/3.4.0/gems/activesupport-8.0.1/CHANGELOG.md +157 -0
  57. data/vendor/bundle/ruby/3.4.0/gems/activesupport-8.0.1/MIT-LICENSE +20 -0
  58. data/vendor/bundle/ruby/3.4.0/gems/activesupport-8.0.1/README.rdoc +40 -0
  59. data/vendor/bundle/ruby/3.4.0/gems/addressable-2.8.7/CHANGELOG.md +301 -0
  60. data/vendor/bundle/ruby/3.4.0/gems/addressable-2.8.7/LICENSE.txt +202 -0
  61. data/vendor/bundle/ruby/3.4.0/gems/addressable-2.8.7/README.md +121 -0
  62. data/vendor/bundle/ruby/3.4.0/gems/addressable-2.8.7/addressable.gemspec +28 -0
  63. data/vendor/bundle/ruby/3.4.0/gems/appraisal-2.5.0/MIT-LICENSE +21 -0
  64. data/vendor/bundle/ruby/3.4.0/gems/appraisal-2.5.0/README.md +243 -0
  65. data/vendor/bundle/ruby/3.4.0/gems/appraisal-2.5.0/appraisal.gemspec +29 -0
  66. data/vendor/bundle/ruby/3.4.0/gems/base64-0.2.0/LICENSE.txt +22 -0
  67. data/vendor/bundle/ruby/3.4.0/gems/base64-0.2.0/README.md +48 -0
  68. data/vendor/bundle/ruby/3.4.0/gems/benchmark-0.4.0/README.md +138 -0
  69. data/vendor/bundle/ruby/3.4.0/gems/benchmark-0.4.0/benchmark.gemspec +32 -0
  70. data/vendor/bundle/ruby/3.4.0/gems/bigdecimal-3.1.9/LICENSE +56 -0
  71. data/vendor/bundle/ruby/3.4.0/gems/bigdecimal-3.1.9/bigdecimal.gemspec +57 -0
  72. data/vendor/bundle/ruby/3.4.0/gems/builder-3.3.0/MIT-LICENSE +20 -0
  73. data/vendor/bundle/ruby/3.4.0/gems/builder-3.3.0/README.md +258 -0
  74. data/vendor/bundle/ruby/3.4.0/gems/builder-3.3.0/builder.gemspec +49 -0
  75. data/vendor/bundle/ruby/3.4.0/gems/concurrent-ruby-1.3.5/CHANGELOG.md +603 -0
  76. data/vendor/bundle/ruby/3.4.0/gems/concurrent-ruby-1.3.5/LICENSE.txt +21 -0
  77. data/vendor/bundle/ruby/3.4.0/gems/concurrent-ruby-1.3.5/README.md +407 -0
  78. data/vendor/bundle/ruby/3.4.0/gems/connection_pool-2.5.0/LICENSE +20 -0
  79. data/vendor/bundle/ruby/3.4.0/gems/connection_pool-2.5.0/README.md +167 -0
  80. data/vendor/bundle/ruby/3.4.0/gems/connection_pool-2.5.0/connection_pool.gemspec +24 -0
  81. data/vendor/bundle/ruby/3.4.0/gems/crack-1.0.0/LICENSE +20 -0
  82. data/vendor/bundle/ruby/3.4.0/gems/crack-1.0.0/README.md +43 -0
  83. data/vendor/bundle/ruby/3.4.0/gems/crass-1.0.6/LICENSE +18 -0
  84. data/vendor/bundle/ruby/3.4.0/gems/crass-1.0.6/README.md +192 -0
  85. data/vendor/bundle/ruby/3.4.0/gems/crass-1.0.6/crass.gemspec +31 -0
  86. data/vendor/bundle/ruby/3.4.0/gems/diff-lcs-1.5.1/License.md +41 -0
  87. data/vendor/bundle/ruby/3.4.0/gems/diff-lcs-1.5.1/README.rdoc +84 -0
  88. data/vendor/bundle/ruby/3.4.0/gems/drb-2.2.1/LICENSE.txt +22 -0
  89. data/vendor/bundle/ruby/3.4.0/gems/drb-2.2.1/drb.gemspec +41 -0
  90. data/vendor/bundle/ruby/3.4.0/gems/erubi-1.13.1/CHANGELOG +111 -0
  91. data/vendor/bundle/ruby/3.4.0/gems/erubi-1.13.1/MIT-LICENSE +21 -0
  92. data/vendor/bundle/ruby/3.4.0/gems/erubi-1.13.1/README.rdoc +151 -0
  93. data/vendor/bundle/ruby/3.4.0/gems/ethon-0.16.0/CHANGELOG.md +375 -0
  94. data/vendor/bundle/ruby/3.4.0/gems/ethon-0.16.0/LICENSE +20 -0
  95. data/vendor/bundle/ruby/3.4.0/gems/ethon-0.16.0/README.md +118 -0
  96. data/vendor/bundle/ruby/3.4.0/gems/ethon-0.16.0/ethon.gemspec +26 -0
  97. data/vendor/bundle/ruby/3.4.0/gems/ffi-1.17.1-x86_64-linux-gnu/CHANGELOG.md +465 -0
  98. data/vendor/bundle/ruby/3.4.0/gems/ffi-1.17.1-x86_64-linux-gnu/LICENSE +24 -0
  99. data/vendor/bundle/ruby/3.4.0/gems/ffi-1.17.1-x86_64-linux-gnu/LICENSE.SPECS +22 -0
  100. data/vendor/bundle/ruby/3.4.0/gems/ffi-1.17.1-x86_64-linux-gnu/README.md +137 -0
  101. data/vendor/bundle/ruby/3.4.0/gems/ffi-1.17.1-x86_64-linux-gnu/ffi.gemspec +42 -0
  102. data/vendor/bundle/ruby/3.4.0/gems/hashdiff-1.1.2/LICENSE +19 -0
  103. data/vendor/bundle/ruby/3.4.0/gems/hashdiff-1.1.2/README.md +298 -0
  104. data/vendor/bundle/ruby/3.4.0/gems/hashdiff-1.1.2/changelog.md +119 -0
  105. data/vendor/bundle/ruby/3.4.0/gems/hashdiff-1.1.2/hashdiff.gemspec +39 -0
  106. data/vendor/bundle/ruby/3.4.0/gems/i18n-1.14.6/MIT-LICENSE +20 -0
  107. data/vendor/bundle/ruby/3.4.0/gems/i18n-1.14.6/README.md +127 -0
  108. data/vendor/bundle/ruby/3.4.0/gems/json-2.9.1/README.md +195 -0
  109. data/vendor/bundle/ruby/3.4.0/gems/json-2.9.1/json.gemspec +64 -0
  110. data/vendor/bundle/ruby/3.4.0/gems/logger-1.6.5/README.md +104 -0
  111. data/vendor/bundle/ruby/3.4.0/gems/logger-1.6.5/logger.gemspec +28 -0
  112. data/vendor/bundle/ruby/3.4.0/gems/loofah-2.24.0/CHANGELOG.md +591 -0
  113. data/vendor/bundle/ruby/3.4.0/gems/loofah-2.24.0/MIT-LICENSE.txt +23 -0
  114. data/vendor/bundle/ruby/3.4.0/gems/loofah-2.24.0/README.md +410 -0
  115. data/vendor/bundle/ruby/3.4.0/gems/minitest-5.25.4/README.rdoc +835 -0
  116. data/vendor/bundle/ruby/3.4.0/gems/multi_json-1.15.0/CHANGELOG.md +275 -0
  117. data/vendor/bundle/ruby/3.4.0/gems/multi_json-1.15.0/LICENSE.md +20 -0
  118. data/vendor/bundle/ruby/3.4.0/gems/multi_json-1.15.0/README.md +121 -0
  119. data/vendor/bundle/ruby/3.4.0/gems/nokogiri-1.18.1-x86_64-linux-gnu/LICENSE-DEPENDENCIES.md +2224 -0
  120. data/vendor/bundle/ruby/3.4.0/gems/nokogiri-1.18.1-x86_64-linux-gnu/LICENSE.md +9 -0
  121. data/vendor/bundle/ruby/3.4.0/gems/nokogiri-1.18.1-x86_64-linux-gnu/README.md +293 -0
  122. data/vendor/bundle/ruby/3.4.0/gems/public_suffix-6.0.1/CHANGELOG.md +491 -0
  123. data/vendor/bundle/ruby/3.4.0/gems/public_suffix-6.0.1/LICENSE.txt +22 -0
  124. data/vendor/bundle/ruby/3.4.0/gems/public_suffix-6.0.1/README.md +222 -0
  125. data/vendor/bundle/ruby/3.4.0/gems/racc-1.8.1/ChangeLog +846 -0
  126. data/vendor/bundle/ruby/3.4.0/gems/racc-1.8.1/README.ja.rdoc +58 -0
  127. data/vendor/bundle/ruby/3.4.0/gems/racc-1.8.1/README.rdoc +60 -0
  128. data/vendor/bundle/ruby/3.4.0/gems/rack-3.1.8/CHANGELOG.md +998 -0
  129. data/vendor/bundle/ruby/3.4.0/gems/rack-3.1.8/MIT-LICENSE +20 -0
  130. data/vendor/bundle/ruby/3.4.0/gems/rack-3.1.8/README.md +328 -0
  131. data/vendor/bundle/ruby/3.4.0/gems/rack-session-2.1.0/license.md +72 -0
  132. data/vendor/bundle/ruby/3.4.0/gems/rack-session-2.1.0/readme.md +47 -0
  133. data/vendor/bundle/ruby/3.4.0/gems/rack-test-2.2.0/MIT-LICENSE.txt +20 -0
  134. data/vendor/bundle/ruby/3.4.0/gems/rack-test-2.2.0/README.md +139 -0
  135. data/vendor/bundle/ruby/3.4.0/gems/rails-dom-testing-2.2.0/MIT-LICENSE +23 -0
  136. data/vendor/bundle/ruby/3.4.0/gems/rails-dom-testing-2.2.0/README.md +91 -0
  137. data/vendor/bundle/ruby/3.4.0/gems/rails-html-sanitizer-1.6.2/CHANGELOG.md +255 -0
  138. data/vendor/bundle/ruby/3.4.0/gems/rails-html-sanitizer-1.6.2/MIT-LICENSE +23 -0
  139. data/vendor/bundle/ruby/3.4.0/gems/rails-html-sanitizer-1.6.2/README.md +267 -0
  140. data/vendor/bundle/ruby/3.4.0/gems/rake-13.2.1/MIT-LICENSE +21 -0
  141. data/vendor/bundle/ruby/3.4.0/gems/rake-13.2.1/README.rdoc +155 -0
  142. data/vendor/bundle/ruby/3.4.0/gems/rake-13.2.1/rake.gemspec +101 -0
  143. data/vendor/bundle/ruby/3.4.0/gems/rake-release-1.3.0/LICENSE +21 -0
  144. data/vendor/bundle/ruby/3.4.0/gems/rake-release-1.3.0/README.md +107 -0
  145. data/vendor/bundle/ruby/3.4.0/gems/rake-release-1.3.0/rake-release.gemspec +23 -0
  146. data/vendor/bundle/ruby/3.4.0/gems/rexml-3.4.0/LICENSE.txt +22 -0
  147. data/vendor/bundle/ruby/3.4.0/gems/rexml-3.4.0/README.md +57 -0
  148. data/vendor/bundle/ruby/3.4.0/gems/rspec-3.13.0/LICENSE.md +27 -0
  149. data/vendor/bundle/ruby/3.4.0/gems/rspec-3.13.0/README.md +47 -0
  150. data/vendor/bundle/ruby/3.4.0/gems/rspec-collection_matchers-1.2.1/Changelog.md +68 -0
  151. data/vendor/bundle/ruby/3.4.0/gems/rspec-collection_matchers-1.2.1/LICENSE.txt +27 -0
  152. data/vendor/bundle/ruby/3.4.0/gems/rspec-collection_matchers-1.2.1/README.md +76 -0
  153. data/vendor/bundle/ruby/3.4.0/gems/rspec-collection_matchers-1.2.1/rspec-collection_matchers.gemspec +33 -0
  154. data/vendor/bundle/ruby/3.4.0/gems/rspec-core-3.13.2/Changelog.md +2415 -0
  155. data/vendor/bundle/ruby/3.4.0/gems/rspec-core-3.13.2/LICENSE.md +26 -0
  156. data/vendor/bundle/ruby/3.4.0/gems/rspec-core-3.13.2/README.md +389 -0
  157. data/vendor/bundle/ruby/3.4.0/gems/rspec-expectations-3.13.3/Changelog.md +1352 -0
  158. data/vendor/bundle/ruby/3.4.0/gems/rspec-expectations-3.13.3/LICENSE.md +25 -0
  159. data/vendor/bundle/ruby/3.4.0/gems/rspec-expectations-3.13.3/README.md +326 -0
  160. data/vendor/bundle/ruby/3.4.0/gems/rspec-its-2.0.0/Changelog.md +73 -0
  161. data/vendor/bundle/ruby/3.4.0/gems/rspec-its-2.0.0/LICENSE.txt +27 -0
  162. data/vendor/bundle/ruby/3.4.0/gems/rspec-its-2.0.0/README.md +104 -0
  163. data/vendor/bundle/ruby/3.4.0/gems/rspec-its-2.0.0/rspec-its.gemspec +31 -0
  164. data/vendor/bundle/ruby/3.4.0/gems/rspec-mocks-3.13.2/Changelog.md +1299 -0
  165. data/vendor/bundle/ruby/3.4.0/gems/rspec-mocks-3.13.2/LICENSE.md +25 -0
  166. data/vendor/bundle/ruby/3.4.0/gems/rspec-mocks-3.13.2/README.md +465 -0
  167. data/vendor/bundle/ruby/3.4.0/gems/rspec-support-3.13.2/Changelog.md +408 -0
  168. data/vendor/bundle/ruby/3.4.0/gems/rspec-support-3.13.2/LICENSE.md +23 -0
  169. data/vendor/bundle/ruby/3.4.0/gems/rspec-support-3.13.2/README.md +40 -0
  170. data/vendor/bundle/ruby/3.4.0/gems/securerandom-0.4.1/README.md +72 -0
  171. data/vendor/bundle/ruby/3.4.0/gems/thor-1.3.2/LICENSE.md +20 -0
  172. data/vendor/bundle/ruby/3.4.0/gems/thor-1.3.2/README.md +45 -0
  173. data/vendor/bundle/ruby/3.4.0/gems/thor-1.3.2/thor.gemspec +33 -0
  174. data/vendor/bundle/ruby/3.4.0/gems/typhoeus-1.4.1/CHANGELOG.md +410 -0
  175. data/vendor/bundle/ruby/3.4.0/gems/typhoeus-1.4.1/LICENSE +22 -0
  176. data/vendor/bundle/ruby/3.4.0/gems/typhoeus-1.4.1/README.md +588 -0
  177. data/vendor/bundle/ruby/3.4.0/gems/typhoeus-1.4.1/typhoeus.gemspec +25 -0
  178. data/vendor/bundle/ruby/3.4.0/gems/tzinfo-2.0.6/LICENSE +19 -0
  179. data/vendor/bundle/ruby/3.4.0/gems/tzinfo-2.0.6/README.md +406 -0
  180. data/vendor/bundle/ruby/3.4.0/gems/uri-1.0.2/README.md +55 -0
  181. data/vendor/bundle/ruby/3.4.0/gems/useragent-0.16.11/LICENSE +20 -0
  182. data/vendor/bundle/ruby/3.4.0/gems/useragent-0.16.11/README.md +42 -0
  183. data/vendor/bundle/ruby/3.4.0/gems/webmock-3.24.0/CHANGELOG.md +2104 -0
  184. data/vendor/bundle/ruby/3.4.0/gems/webmock-3.24.0/LICENSE +20 -0
  185. data/vendor/bundle/ruby/3.4.0/gems/webmock-3.24.0/README.md +1222 -0
  186. data/vendor/bundle/ruby/3.4.0/specifications/actionpack-8.0.1.gemspec +36 -0
  187. data/vendor/bundle/ruby/3.4.0/specifications/actionview-8.0.1.gemspec +33 -0
  188. data/vendor/bundle/ruby/3.4.0/specifications/activemodel-8.0.1.gemspec +26 -0
  189. data/vendor/bundle/ruby/3.4.0/specifications/activesupport-8.0.1.gemspec +38 -0
  190. data/vendor/bundle/ruby/3.4.0/specifications/addressable-2.8.7.gemspec +30 -0
  191. data/vendor/bundle/ruby/3.4.0/specifications/appraisal-2.5.0.gemspec +31 -0
  192. data/vendor/bundle/ruby/3.4.0/specifications/base64-0.2.0.gemspec +23 -0
  193. data/vendor/bundle/ruby/3.4.0/specifications/benchmark-0.4.0.gemspec +23 -0
  194. data/vendor/bundle/ruby/3.4.0/specifications/bigdecimal-3.1.9.gemspec +25 -0
  195. data/vendor/bundle/ruby/3.4.0/specifications/builder-3.3.0.gemspec +22 -0
  196. data/vendor/bundle/ruby/3.4.0/specifications/concurrent-ruby-1.3.5.gemspec +24 -0
  197. data/vendor/bundle/ruby/3.4.0/specifications/connection_pool-2.5.0.gemspec +28 -0
  198. data/vendor/bundle/ruby/3.4.0/specifications/crack-1.0.0.gemspec +27 -0
  199. data/vendor/bundle/ruby/3.4.0/specifications/crass-1.0.6.gemspec +27 -0
  200. data/vendor/bundle/ruby/3.4.0/specifications/diff-lcs-1.5.1.gemspec +37 -0
  201. data/vendor/bundle/ruby/3.4.0/specifications/drb-2.2.1.gemspec +22 -0
  202. data/vendor/bundle/ruby/3.4.0/specifications/erubi-1.13.1.gemspec +29 -0
  203. data/vendor/bundle/ruby/3.4.0/specifications/ethon-0.16.0.gemspec +24 -0
  204. data/vendor/bundle/ruby/3.4.0/specifications/ffi-1.17.1-x86_64-linux-gnu.gemspec +31 -0
  205. data/vendor/bundle/ruby/3.4.0/specifications/hashdiff-1.1.2.gemspec +30 -0
  206. data/vendor/bundle/ruby/3.4.0/specifications/i18n-1.14.6.gemspec +27 -0
  207. data/vendor/bundle/ruby/3.4.0/specifications/json-2.9.1.gemspec +0 -0
  208. data/vendor/bundle/ruby/3.4.0/specifications/logger-1.6.5.gemspec +22 -0
  209. data/vendor/bundle/ruby/3.4.0/specifications/loofah-2.24.0.gemspec +27 -0
  210. data/vendor/bundle/ruby/3.4.0/specifications/minitest-5.25.4.gemspec +31 -0
  211. data/vendor/bundle/ruby/3.4.0/specifications/multi_json-1.15.0.gemspec +26 -0
  212. data/vendor/bundle/ruby/3.4.0/specifications/nokogiri-1.18.1-x86_64-linux-gnu.gemspec +31 -0
  213. data/vendor/bundle/ruby/3.4.0/specifications/public_suffix-6.0.1.gemspec +24 -0
  214. data/vendor/bundle/ruby/3.4.0/specifications/racc-1.8.1.gemspec +28 -0
  215. data/vendor/bundle/ruby/3.4.0/specifications/rack-3.1.8.gemspec +31 -0
  216. data/vendor/bundle/ruby/3.4.0/specifications/rack-session-2.1.0.gemspec +30 -0
  217. data/vendor/bundle/ruby/3.4.0/specifications/rack-test-2.2.0.gemspec +29 -0
  218. data/vendor/bundle/ruby/3.4.0/specifications/rails-dom-testing-2.2.0.gemspec +28 -0
  219. data/vendor/bundle/ruby/3.4.0/specifications/rails-html-sanitizer-1.6.2.gemspec +27 -0
  220. data/vendor/bundle/ruby/3.4.0/specifications/rake-13.2.1.gemspec +26 -0
  221. data/vendor/bundle/ruby/3.4.0/specifications/rake-release-1.3.0.gemspec +26 -0
  222. data/vendor/bundle/ruby/3.4.0/specifications/rexml-3.4.0.gemspec +25 -0
  223. data/vendor/bundle/ruby/3.4.0/specifications/rspec-3.13.0.gemspec +31 -0
  224. data/vendor/bundle/ruby/3.4.0/specifications/rspec-collection_matchers-1.2.1.gemspec +27 -0
  225. data/vendor/bundle/ruby/3.4.0/specifications/rspec-core-3.13.2.gemspec +39 -0
  226. data/vendor/bundle/ruby/3.4.0/specifications/rspec-expectations-3.13.3.gemspec +33 -0
  227. data/vendor/bundle/ruby/3.4.0/specifications/rspec-its-2.0.0.gemspec +27 -0
  228. data/vendor/bundle/ruby/3.4.0/specifications/rspec-mocks-3.13.2.gemspec +33 -0
  229. data/vendor/bundle/ruby/3.4.0/specifications/rspec-support-3.13.2.gemspec +29 -0
  230. data/vendor/bundle/ruby/3.4.0/specifications/securerandom-0.4.1.gemspec +23 -0
  231. data/vendor/bundle/ruby/3.4.0/specifications/thor-1.3.2.gemspec +28 -0
  232. data/vendor/bundle/ruby/3.4.0/specifications/typhoeus-1.4.1.gemspec +24 -0
  233. data/vendor/bundle/ruby/3.4.0/specifications/tzinfo-2.0.6.gemspec +30 -0
  234. data/vendor/bundle/ruby/3.4.0/specifications/uri-1.0.2.gemspec +23 -0
  235. data/vendor/bundle/ruby/3.4.0/specifications/useragent-0.16.11.gemspec +25 -0
  236. data/vendor/bundle/ruby/3.4.0/specifications/webmock-3.24.0.gemspec +45 -0
  237. metadata +204 -67
@@ -0,0 +1,243 @@
1
+ Appraisal
2
+ =========
3
+
4
+ Find out what your Ruby gems are worth.
5
+
6
+ Synopsis
7
+ --------
8
+
9
+ Appraisal integrates with bundler and rake to test your library against
10
+ different versions of dependencies in repeatable scenarios called "appraisals."
11
+ Appraisal is designed to make it easy to check for regressions in your library
12
+ without interfering with day-to-day development using Bundler.
13
+
14
+ Installation
15
+ ------------
16
+
17
+ In your package's `.gemspec`:
18
+
19
+ s.add_development_dependency "appraisal"
20
+
21
+ Note that gems must be bundled in the global namespace. Bundling gems to a
22
+ local location or vendoring plugins is not supported. If you do not want to
23
+ pollute the global namespace, one alternative is
24
+ [RVM's Gemsets](http://rvm.io/gemsets).
25
+
26
+ Setup
27
+ -----
28
+
29
+ Setting up appraisal requires an `Appraisals` file (similar to a `Gemfile`) in
30
+ your project root, named "Appraisals" (note the case), and some slight changes
31
+ to your project's `Rakefile`.
32
+
33
+ An `Appraisals` file consists of several appraisal definitions. An appraisal
34
+ definition is simply a list of gem dependencies. For example, to test with a
35
+ few versions of Rails:
36
+
37
+ appraise "rails-3" do
38
+ gem "rails", "3.2.14"
39
+ end
40
+
41
+ appraise "rails-4" do
42
+ gem "rails", "4.0.0"
43
+ end
44
+
45
+ The dependencies in your `Appraisals` file are combined with dependencies in
46
+ your `Gemfile`, so you don't need to repeat anything that's the same for each
47
+ appraisal. If something is specified in both the Gemfile and an appraisal, the
48
+ version from the appraisal takes precedence.
49
+
50
+ Usage
51
+ -----
52
+
53
+ Once you've configured the appraisals you want to use, you need to install the
54
+ dependencies for each appraisal:
55
+
56
+ $ bundle exec appraisal install
57
+
58
+ This will resolve, install, and lock the dependencies for that appraisal using
59
+ bundler. Once you have your dependencies set up, you can run any command in a
60
+ single appraisal:
61
+
62
+ $ bundle exec appraisal rails-3 rake test
63
+
64
+ This will run `rake test` using the dependencies configured for Rails 3. You can
65
+ also run each appraisal in turn:
66
+
67
+ $ bundle exec appraisal rake test
68
+
69
+ If you want to use only the dependencies from your Gemfile, just run `rake
70
+ test` as normal. This allows you to keep running with the latest versions of
71
+ your dependencies in quick test runs, but keep running the tests in older
72
+ versions to check for regressions.
73
+
74
+ In the case that you want to run all the appraisals by default when you run
75
+ `rake`, you can override your default Rake task by put this into your Rakefile:
76
+
77
+ if !ENV["APPRAISAL_INITIALIZED"] && !ENV["TRAVIS"]
78
+ task :default => :appraisal
79
+ end
80
+
81
+ (Appraisal sets `APPRAISAL_INITIALIZED` environment variable when it runs your
82
+ process. We put a check here to ensure that `appraisal rake` command should run
83
+ your real default task, which usually is your `test` task.)
84
+
85
+ Note that this may conflict with your CI setup if you decide to split the test
86
+ into multiple processes by Appraisal and you are using `rake` to run tests by
87
+ default.
88
+
89
+ ### Commands
90
+
91
+ ```bash
92
+ appraisal clean # Remove all generated gemfiles and lockfiles from gemfiles folder
93
+ appraisal generate # Generate a gemfile for each appraisal
94
+ appraisal help [COMMAND] # Describe available commands or one specific command
95
+ appraisal install # Resolve and install dependencies for each appraisal
96
+ appraisal list # List the names of the defined appraisals
97
+ appraisal update [LIST_OF_GEMS] # Remove all generated gemfiles and lockfiles, resolve, and install dependencies again
98
+ appraisal version # Display the version and exit
99
+ ```
100
+
101
+ Under the hood
102
+ --------------
103
+
104
+ Running `appraisal install` generates a Gemfile for each appraisal by combining
105
+ your root Gemfile with the specific requirements for each appraisal. These are
106
+ stored in the `gemfiles` directory, and should be added to version control to
107
+ ensure that the same versions are always used.
108
+
109
+ When you prefix a command with `appraisal`, the command is run with the
110
+ appropriate Gemfile for that appraisal, ensuring the correct dependencies
111
+ are used.
112
+
113
+ Removing Gems using Appraisal
114
+ -------
115
+
116
+ It is common while managing multiple Gemfiles for dependencies to become deprecated and no
117
+ longer necessary, meaning they need to be removed from the Gemfile for a specific `appraisal`.
118
+ To do this, use the `remove_gem` declaration within the necessary `appraise` block in your
119
+ `Appraisals` file.
120
+
121
+ ### Example Usage
122
+
123
+ **Gemfile**
124
+ ```ruby
125
+ gem 'rails', '~> 4.2'
126
+
127
+ group :test do
128
+ gem 'rspec', '~> 4.0'
129
+ gem 'test_after_commit'
130
+ end
131
+ ```
132
+
133
+ **Appraisals**
134
+ ```ruby
135
+ appraise 'rails-5' do
136
+ gem 'rails', '~> 5.2'
137
+
138
+ group :test do
139
+ remove_gem :test_after_commit
140
+ end
141
+ end
142
+ ```
143
+
144
+ Using the `Appraisals` file defined above, this is what the resulting `Gemfile` will look like:
145
+ ```ruby
146
+ gem 'rails', '~> 5.2'
147
+
148
+ group :test do
149
+ gem 'rspec', '~> 4.0'
150
+ end
151
+ ```
152
+
153
+ Customization
154
+ -------------
155
+
156
+ It is possible to customize the generated Gemfiles by adding a `customize_gemfiles` block to
157
+ your `Appraisals` file. The block must contain a hash of key/value pairs. Currently supported
158
+ customizations include:
159
+ - heading: a string that by default adds "# This file was generated by Appraisal" to the top of each Gemfile, (the string will be commented for you)
160
+ - single_quotes: a boolean that controls if strings are single quoted in each Gemfile, defaults to false
161
+
162
+ ### Example Usage
163
+
164
+ **Appraisals**
165
+ ```ruby
166
+ customize_gemfiles do
167
+ {
168
+ single_quotes: true,
169
+ heading: <<~HEADING
170
+ frozen_string_literal: true
171
+
172
+ File has been generated by Appraisal, do NOT modify it directly!
173
+ See the conventions at https://example.com/
174
+ HEADING
175
+ }
176
+ end
177
+
178
+ appraise "rails-3" do
179
+ gem "rails", "3.2.14"
180
+ end
181
+ ```
182
+
183
+ Using the `Appraisals` file defined above, this is what the resulting `Gemfile` will look like:
184
+ ```ruby
185
+ # frozen_string_literal: true
186
+
187
+ # File has been generated by Appraisal, do NOT modify it directly!
188
+ # See the conventions at https://example.com/
189
+
190
+ gem 'rails', '3.2.14'
191
+ ```
192
+
193
+ Version Control
194
+ ---------------
195
+
196
+ When using Appraisal, we recommend you check in the Gemfiles that Appraisal
197
+ generates within the gemfiles directory, but exclude the lockfiles there
198
+ (`*.gemfile.lock`.) The Gemfiles are useful when running your tests against a
199
+ continuous integration server.
200
+
201
+ Circle CI Integration
202
+ ---------------------
203
+
204
+ In Circle CI you can override the default testing behaviour to customize your
205
+ testing. Using this feature you can configure appraisal to execute your tests.
206
+
207
+ In order to this you can put the following configuration in your circle.yml file:
208
+
209
+ ```yml
210
+ dependencies:
211
+ post:
212
+ - bundle exec appraisal install
213
+ test:
214
+ pre:
215
+ - bundle exec appraisal rake db:create
216
+ - bundle exec appraisal rake db:migrate
217
+ override:
218
+ - bundle exec appraisal rspec
219
+ ```
220
+
221
+ Notice that we are running an rspec suite. You can customize your testing
222
+ command in the `override` section and use your favourite one.
223
+
224
+ Credits
225
+ -------
226
+
227
+ ![thoughtbot](https://thoughtbot.com/thoughtbot-logo-for-readmes.svg)
228
+
229
+ Appraisal is maintained and funded by [thoughtbot, inc][thoughtbot]
230
+
231
+ Thank you to all [the contributors][contributors]
232
+
233
+ The names and logos for thoughtbot are trademarks of thoughtbot, inc.
234
+
235
+ [thoughtbot]: http://thoughtbot.com/community
236
+ [contributors]: https://github.com/thoughtbot/appraisal/contributors
237
+
238
+ License
239
+ -------
240
+
241
+ Appraisal is Copyright © 2010-2013 Joe Ferris and thoughtbot, inc. It is free
242
+ software, and may be redistributed under the terms specified in the MIT-LICENSE
243
+ file.
@@ -0,0 +1,29 @@
1
+ # -*- encoding: utf-8 -*-
2
+ $:.push File.expand_path("../lib", __FILE__)
3
+ require "appraisal/version"
4
+
5
+ Gem::Specification.new do |s|
6
+ s.name = 'appraisal'
7
+ s.version = Appraisal::VERSION.dup
8
+ s.platform = Gem::Platform::RUBY
9
+ s.authors = ['Joe Ferris', 'Prem Sichanugrist']
10
+ s.email = ['jferris@thoughtbot.com', 'prem@thoughtbot.com']
11
+ s.homepage = 'http://github.com/thoughtbot/appraisal'
12
+ s.summary = 'Find out what your Ruby gems are worth'
13
+ s.description = 'Appraisal integrates with bundler and rake to test your library against different versions of dependencies in repeatable scenarios called "appraisals."'
14
+ s.license = 'MIT'
15
+
16
+ s.files = `git ls-files`.split("\n")
17
+ s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
18
+ s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
19
+ s.require_paths = ["lib"]
20
+
21
+ s.required_ruby_version = ">= 2.3.0"
22
+
23
+ s.add_runtime_dependency('rake')
24
+ s.add_runtime_dependency('bundler')
25
+ s.add_runtime_dependency('thor', '>= 0.14.0')
26
+
27
+ s.add_development_dependency("activesupport", ">= 3.2.21")
28
+ s.add_development_dependency('rspec', '~> 3.0')
29
+ end
@@ -0,0 +1,22 @@
1
+ Copyright (C) 1993-2013 Yukihiro Matsumoto. All rights reserved.
2
+
3
+ Redistribution and use in source and binary forms, with or without
4
+ modification, are permitted provided that the following conditions
5
+ are met:
6
+ 1. Redistributions of source code must retain the above copyright
7
+ notice, this list of conditions and the following disclaimer.
8
+ 2. Redistributions in binary form must reproduce the above copyright
9
+ notice, this list of conditions and the following disclaimer in the
10
+ documentation and/or other materials provided with the distribution.
11
+
12
+ THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
13
+ ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
14
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
15
+ ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
16
+ FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
17
+ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
18
+ OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
19
+ HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
20
+ LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
21
+ OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
22
+ SUCH DAMAGE.
@@ -0,0 +1,48 @@
1
+ # Base64
2
+
3
+ The Base64 module provides for the encoding (`#encode64`, `#strict_encode64`,
4
+ `#urlsafe_encode64`) and decoding (`#decode64`, `#strict_decode64`,
5
+ `#urlsafe_decode64`) of binary data using a Base64 representation.
6
+
7
+ ## Installation
8
+
9
+ Add this line to your application's Gemfile:
10
+
11
+ ```ruby
12
+ gem 'base64'
13
+ ```
14
+
15
+ And then execute:
16
+
17
+ $ bundle install
18
+
19
+ Or install it yourself as:
20
+
21
+ $ gem install base64
22
+
23
+ ## Usage
24
+
25
+ A simple encoding and decoding.
26
+
27
+ ```ruby
28
+ require "base64"
29
+
30
+ enc = Base64.encode64('Send reinforcements')
31
+ # -> "U2VuZCByZWluZm9yY2VtZW50cw==\n"
32
+ plain = Base64.decode64(enc)
33
+ # -> "Send reinforcements"
34
+ ```
35
+
36
+ The purpose of using base64 to encode data is that it translates any
37
+ binary data into purely printable characters.
38
+
39
+ ## Development
40
+
41
+ After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake test` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
42
+
43
+ To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
44
+
45
+ ## Contributing
46
+
47
+ Bug reports and pull requests are welcome on GitHub at https://github.com/ruby/base64.
48
+
@@ -0,0 +1,138 @@
1
+ # Benchmark
2
+
3
+ The Benchmark module provides methods for benchmarking Ruby code, giving detailed reports on the time taken for each task.
4
+
5
+ ## Installation
6
+
7
+ Add this line to your application's Gemfile:
8
+
9
+ ```ruby
10
+ gem 'benchmark'
11
+ ```
12
+
13
+ And then execute:
14
+
15
+ $ bundle
16
+
17
+ Or install it yourself as:
18
+
19
+ $ gem install benchmark
20
+
21
+ ## Usage
22
+
23
+ The Benchmark module provides methods to measure and report the time used to execute Ruby code.
24
+
25
+ Measure the time to construct the string given by the expression <code>"a"*1_000_000_000</code>:
26
+
27
+ ```ruby
28
+ require 'benchmark'
29
+ puts Benchmark.measure { "a"*1_000_000_000 }
30
+ ```
31
+
32
+ On my machine (OSX 10.8.3 on i5 1.7 GHz) this generates:
33
+
34
+ ```
35
+ 0.350000 0.400000 0.750000 ( 0.835234)
36
+ ```
37
+
38
+ This report shows the user CPU time, system CPU time, the sum of the user and system CPU times, and the elapsed real time. The unit of time is seconds.
39
+
40
+ Do some experiments sequentially using the #bm method:
41
+
42
+ ```ruby
43
+ require 'benchmark'
44
+ n = 5000000
45
+ Benchmark.bm do |x|
46
+ x.report { for i in 1..n; a = "1"; end }
47
+ x.report { n.times do ; a = "1"; end }
48
+ x.report { 1.upto(n) do ; a = "1"; end }
49
+ end
50
+ ```
51
+
52
+ The result:
53
+
54
+ ```
55
+ user system total real
56
+ 1.010000 0.000000 1.010000 ( 1.014479)
57
+ 1.000000 0.000000 1.000000 ( 0.998261)
58
+ 0.980000 0.000000 0.980000 ( 0.981335)
59
+ ```
60
+
61
+ Continuing the previous example, put a label in each report:
62
+
63
+ ```ruby
64
+ require 'benchmark'
65
+ n = 5000000
66
+ Benchmark.bm(7) do |x|
67
+ x.report("for:") { for i in 1..n; a = "1"; end }
68
+ x.report("times:") { n.times do ; a = "1"; end }
69
+ x.report("upto:") { 1.upto(n) do ; a = "1"; end }
70
+ end
71
+ ```
72
+
73
+ The result:
74
+
75
+ ```
76
+ user system total real
77
+ for: 1.010000 0.000000 1.010000 ( 1.015688)
78
+ times: 1.000000 0.000000 1.000000 ( 1.003611)
79
+ upto: 1.030000 0.000000 1.030000 ( 1.028098)
80
+ ```
81
+
82
+ The times for some benchmarks depend on the order in which items are run. These differences are due to the cost of memory allocation and garbage collection. To avoid these discrepancies, the #bmbm method is provided. For example, to compare ways to sort an array of floats:
83
+
84
+ ```ruby
85
+ require 'benchmark'
86
+ array = (1..1000000).map { rand }
87
+ Benchmark.bmbm do |x|
88
+ x.report("sort!") { array.dup.sort! }
89
+ x.report("sort") { array.dup.sort }
90
+ end
91
+ ```
92
+
93
+ The result:
94
+
95
+ ```
96
+ Rehearsal -----------------------------------------
97
+ sort! 1.490000 0.010000 1.500000 ( 1.490520)
98
+ sort 1.460000 0.000000 1.460000 ( 1.463025)
99
+ -------------------------------- total: 2.960000sec
100
+ user system total real
101
+ sort! 1.460000 0.000000 1.460000 ( 1.460465)
102
+ sort 1.450000 0.010000 1.460000 ( 1.448327)
103
+ ```
104
+
105
+ Report statistics of sequential experiments with unique labels, using the #benchmark method:
106
+
107
+ ```ruby
108
+ require 'benchmark'
109
+ include Benchmark # we need the CAPTION and FORMAT constants
110
+ n = 5000000
111
+ Benchmark.benchmark(CAPTION, 7, FORMAT, ">total:", ">avg:") do |x|
112
+ tf = x.report("for:") { for i in 1..n; a = "1"; end }
113
+ tt = x.report("times:") { n.times do ; a = "1"; end }
114
+ tu = x.report("upto:") { 1.upto(n) do ; a = "1"; end }
115
+ [tf+tt+tu, (tf+tt+tu)/3]
116
+ end
117
+ ```
118
+
119
+ The result:
120
+
121
+ ```
122
+ user system total real
123
+ for: 0.950000 0.000000 0.950000 ( 0.952039)
124
+ times: 0.980000 0.000000 0.980000 ( 0.984938)
125
+ upto: 0.950000 0.000000 0.950000 ( 0.946787)
126
+ >total: 2.880000 0.000000 2.880000 ( 2.883764)
127
+ >avg: 0.960000 0.000000 0.960000 ( 0.961255)
128
+ ```
129
+
130
+ ## Development
131
+
132
+ After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake test` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
133
+
134
+ To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
135
+
136
+ ## Contributing
137
+
138
+ Bug reports and pull requests are welcome on GitHub at https://github.com/ruby/benchmark.
@@ -0,0 +1,32 @@
1
+ name = File.basename(__FILE__, ".gemspec")
2
+ version = ["lib", Array.new(name.count("-")+1, ".").join("/")].find do |dir|
3
+ break File.foreach(File.join(__dir__, dir, "#{name.tr('-', '/')}.rb")) do |line|
4
+ /^\s*VERSION\s*=\s*"(.*)"/ =~ line and break $1
5
+ end rescue nil
6
+ end
7
+
8
+ Gem::Specification.new do |spec|
9
+ spec.name = name
10
+ spec.version = version
11
+ spec.authors = ["Yukihiro Matsumoto"]
12
+ spec.email = ["matz@ruby-lang.org"]
13
+
14
+ spec.summary = %q{a performance benchmarking library}
15
+ spec.description = spec.summary
16
+ spec.homepage = "https://github.com/ruby/benchmark"
17
+ spec.licenses = ["Ruby", "BSD-2-Clause"]
18
+
19
+ spec.required_ruby_version = ">= 2.1.0"
20
+
21
+ spec.metadata["homepage_uri"] = spec.homepage
22
+ spec.metadata["source_code_uri"] = spec.homepage
23
+
24
+ # Specify which files should be added to the gem when it is released.
25
+ # The `git ls-files -z` loads the files in the RubyGem that have been added into git.
26
+ spec.files = Dir.chdir(File.expand_path('..', __FILE__)) do
27
+ `git ls-files -z 2>#{IO::NULL}`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
28
+ end
29
+ spec.bindir = "exe"
30
+ spec.executables = []
31
+ spec.require_paths = ["lib"]
32
+ end
@@ -0,0 +1,56 @@
1
+ Ruby is copyrighted free software by Yukihiro Matsumoto <matz@netlab.jp>.
2
+ You can redistribute it and/or modify it under either the terms of the
3
+ 2-clause BSDL (see the file BSDL), or the conditions below:
4
+
5
+ 1. You may make and give away verbatim copies of the source form of the
6
+ software without restriction, provided that you duplicate all of the
7
+ original copyright notices and associated disclaimers.
8
+
9
+ 2. You may modify your copy of the software in any way, provided that
10
+ you do at least ONE of the following:
11
+
12
+ a) place your modifications in the Public Domain or otherwise
13
+ make them Freely Available, such as by posting said
14
+ modifications to Usenet or an equivalent medium, or by allowing
15
+ the author to include your modifications in the software.
16
+
17
+ b) use the modified software only within your corporation or
18
+ organization.
19
+
20
+ c) give non-standard binaries non-standard names, with
21
+ instructions on where to get the original software distribution.
22
+
23
+ d) make other distribution arrangements with the author.
24
+
25
+ 3. You may distribute the software in object code or binary form,
26
+ provided that you do at least ONE of the following:
27
+
28
+ a) distribute the binaries and library files of the software,
29
+ together with instructions (in the manual page or equivalent)
30
+ on where to get the original distribution.
31
+
32
+ b) accompany the distribution with the machine-readable source of
33
+ the software.
34
+
35
+ c) give non-standard binaries non-standard names, with
36
+ instructions on where to get the original software distribution.
37
+
38
+ d) make other distribution arrangements with the author.
39
+
40
+ 4. You may modify and include the part of the software into any other
41
+ software (possibly commercial). But some files in the distribution
42
+ are not written by the author, so that they are not under these terms.
43
+
44
+ For the list of those files and their copying conditions, see the
45
+ file LEGAL.
46
+
47
+ 5. The scripts and library files supplied as input to or produced as
48
+ output from the software do not automatically fall under the
49
+ copyright of the software, but belong to whomever generated them,
50
+ and may be sold commercially, and may be aggregated with this
51
+ software.
52
+
53
+ 6. THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR
54
+ IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
55
+ WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
56
+ PURPOSE.
@@ -0,0 +1,57 @@
1
+ # coding: utf-8
2
+
3
+ name = File.basename(__FILE__, '.*')
4
+ source_version = ["", "ext/#{name}/"].find do |dir|
5
+ begin
6
+ break File.foreach(File.join(__dir__, "#{dir}#{name}.c")) {|line|
7
+ break $1.sub("-", ".") if /^#define\s+#{name.upcase}_VERSION\s+"(.+)"/o =~ line
8
+ }
9
+ rescue Errno::ENOENT
10
+ end
11
+ end or raise "can't find #{name.upcase}_VERSION"
12
+
13
+ Gem::Specification.new do |s|
14
+ s.name = name
15
+ s.version = source_version
16
+ s.authors = ["Kenta Murata", "Zachary Scott", "Shigeo Kobayashi"]
17
+ s.email = ["mrkn@mrkn.jp"]
18
+
19
+ s.summary = "Arbitrary-precision decimal floating-point number library."
20
+ s.description = "This library provides arbitrary-precision decimal floating-point number class."
21
+ s.homepage = "https://github.com/ruby/bigdecimal"
22
+ s.licenses = ["Ruby", "BSD-2-Clause"]
23
+
24
+ s.require_paths = %w[lib]
25
+ s.files = %w[
26
+ LICENSE
27
+ bigdecimal.gemspec
28
+ lib/bigdecimal.rb
29
+ lib/bigdecimal/jacobian.rb
30
+ lib/bigdecimal/ludcmp.rb
31
+ lib/bigdecimal/math.rb
32
+ lib/bigdecimal/newton.rb
33
+ lib/bigdecimal/util.rb
34
+ sample/linear.rb
35
+ sample/nlsolve.rb
36
+ sample/pi.rb
37
+ ]
38
+ if Gem::Platform === s.platform and s.platform =~ 'java' or RUBY_ENGINE == 'jruby'
39
+ s.platform = 'java'
40
+ else
41
+ s.extensions = %w[ext/bigdecimal/extconf.rb]
42
+ s.files += %w[
43
+ ext/bigdecimal/bigdecimal.c
44
+ ext/bigdecimal/bigdecimal.h
45
+ ext/bigdecimal/bits.h
46
+ ext/bigdecimal/feature.h
47
+ ext/bigdecimal/missing.c
48
+ ext/bigdecimal/missing.h
49
+ ext/bigdecimal/missing/dtoa.c
50
+ ext/bigdecimal/static_assert.h
51
+ ]
52
+ end
53
+
54
+ s.required_ruby_version = Gem::Requirement.new(">= 2.5.0")
55
+
56
+ s.metadata["changelog_uri"] = s.homepage + "/blob/master/CHANGES.md"
57
+ end
@@ -0,0 +1,20 @@
1
+ Copyright (c) 2003-2012 Jim Weirich (jim.weirich@gmail.com)
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining
4
+ a copy of this software and associated documentation files (the
5
+ "Software"), to deal in the Software without restriction, including
6
+ without limitation the rights to use, copy, modify, merge, publish,
7
+ distribute, sublicense, and/or sell copies of the Software, and to
8
+ permit persons to whom the Software is furnished to do so, subject to
9
+ the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be
12
+ included in all copies or substantial portions of the Software.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.