acfs 1.7.0 → 2.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +144 -116
- data/README.md +19 -24
- data/acfs.gemspec +7 -10
- data/lib/acfs/collections/paginatable.rb +11 -11
- data/lib/acfs/configuration.rb +1 -1
- data/lib/acfs/errors.rb +6 -6
- data/lib/acfs/global.rb +2 -2
- data/lib/acfs/location.rb +1 -1
- data/lib/acfs/resource/attributes/uuid.rb +1 -1
- data/lib/acfs/resource/attributes.rb +1 -1
- data/lib/acfs/resource/dirty.rb +1 -1
- data/lib/acfs/resource/operational.rb +4 -4
- data/lib/acfs/resource/query_methods.rb +3 -3
- data/lib/acfs/response/status.rb +1 -1
- data/lib/acfs/service/middleware.rb +2 -2
- data/lib/acfs/singleton_resource.rb +2 -2
- data/lib/acfs/stub.rb +1 -1
- data/lib/acfs/version.rb +2 -2
- data/lib/acfs/yard.rb +1 -0
- data/spec/acfs/adapter/typhoeus_spec.rb +3 -3
- data/spec/acfs/configuration_spec.rb +1 -1
- data/spec/acfs/global_spec.rb +5 -5
- data/spec/acfs/location_spec.rb +1 -1
- data/spec/acfs/middleware/json_spec.rb +1 -1
- data/spec/acfs/middleware/message_pack_spec.rb +1 -1
- data/spec/acfs/operation_spec.rb +1 -1
- data/spec/acfs/resource/attributes/boolean_spec.rb +31 -31
- data/spec/acfs/resource/attributes/date_time_spec.rb +9 -9
- data/spec/acfs/resource/attributes/dict_spec.rb +10 -10
- data/spec/acfs/resource/attributes/float_spec.rb +11 -11
- data/spec/acfs/resource/attributes/integer_spec.rb +6 -6
- data/spec/acfs/resource/attributes/list_spec.rb +1 -1
- data/spec/acfs/resource/attributes/uuid_spec.rb +8 -8
- data/spec/acfs/resource/attributes_spec.rb +8 -8
- data/spec/acfs/resource/dirty_spec.rb +1 -1
- data/spec/acfs/resource/persistence_spec.rb +7 -7
- data/spec/acfs/resource/query_methods_spec.rb +1 -1
- data/spec/acfs/runner_spec.rb +12 -12
- data/spec/acfs/stub_spec.rb +13 -18
- data/spec/acfs_spec.rb +4 -4
- data/spec/spec_helper.rb +9 -5
- data/spec/support/hash.rb +1 -1
- data/vendor/bundle/ruby/3.4.0/bundler/gems/rubocop-config-67802c9d1826/LICENSE +21 -0
- data/vendor/bundle/ruby/3.4.0/bundler/gems/rubocop-config-67802c9d1826/README.md +23 -0
- data/vendor/bundle/ruby/3.4.0/bundler/gems/rubocop-config-67802c9d1826/rubocop-config.gemspec +31 -0
- data/vendor/bundle/ruby/3.4.0/gems/actionpack-8.0.1/CHANGELOG.md +205 -0
- data/vendor/bundle/ruby/3.4.0/gems/actionpack-8.0.1/MIT-LICENSE +21 -0
- data/vendor/bundle/ruby/3.4.0/gems/actionpack-8.0.1/README.rdoc +57 -0
- data/vendor/bundle/ruby/3.4.0/gems/actionview-8.0.1/CHANGELOG.md +67 -0
- data/vendor/bundle/ruby/3.4.0/gems/actionview-8.0.1/MIT-LICENSE +21 -0
- data/vendor/bundle/ruby/3.4.0/gems/actionview-8.0.1/README.rdoc +40 -0
- data/vendor/bundle/ruby/3.4.0/gems/activemodel-8.0.1/CHANGELOG.md +110 -0
- data/vendor/bundle/ruby/3.4.0/gems/activemodel-8.0.1/MIT-LICENSE +21 -0
- data/vendor/bundle/ruby/3.4.0/gems/activemodel-8.0.1/README.rdoc +266 -0
- data/vendor/bundle/ruby/3.4.0/gems/activesupport-8.0.1/CHANGELOG.md +157 -0
- data/vendor/bundle/ruby/3.4.0/gems/activesupport-8.0.1/MIT-LICENSE +20 -0
- data/vendor/bundle/ruby/3.4.0/gems/activesupport-8.0.1/README.rdoc +40 -0
- data/vendor/bundle/ruby/3.4.0/gems/addressable-2.8.7/CHANGELOG.md +301 -0
- data/vendor/bundle/ruby/3.4.0/gems/addressable-2.8.7/LICENSE.txt +202 -0
- data/vendor/bundle/ruby/3.4.0/gems/addressable-2.8.7/README.md +121 -0
- data/vendor/bundle/ruby/3.4.0/gems/addressable-2.8.7/addressable.gemspec +28 -0
- data/vendor/bundle/ruby/3.4.0/gems/appraisal-2.5.0/MIT-LICENSE +21 -0
- data/vendor/bundle/ruby/3.4.0/gems/appraisal-2.5.0/README.md +243 -0
- data/vendor/bundle/ruby/3.4.0/gems/appraisal-2.5.0/appraisal.gemspec +29 -0
- data/vendor/bundle/ruby/3.4.0/gems/base64-0.2.0/LICENSE.txt +22 -0
- data/vendor/bundle/ruby/3.4.0/gems/base64-0.2.0/README.md +48 -0
- data/vendor/bundle/ruby/3.4.0/gems/benchmark-0.4.0/README.md +138 -0
- data/vendor/bundle/ruby/3.4.0/gems/benchmark-0.4.0/benchmark.gemspec +32 -0
- data/vendor/bundle/ruby/3.4.0/gems/bigdecimal-3.1.9/LICENSE +56 -0
- data/vendor/bundle/ruby/3.4.0/gems/bigdecimal-3.1.9/bigdecimal.gemspec +57 -0
- data/vendor/bundle/ruby/3.4.0/gems/builder-3.3.0/MIT-LICENSE +20 -0
- data/vendor/bundle/ruby/3.4.0/gems/builder-3.3.0/README.md +258 -0
- data/vendor/bundle/ruby/3.4.0/gems/builder-3.3.0/builder.gemspec +49 -0
- data/vendor/bundle/ruby/3.4.0/gems/concurrent-ruby-1.3.5/CHANGELOG.md +603 -0
- data/vendor/bundle/ruby/3.4.0/gems/concurrent-ruby-1.3.5/LICENSE.txt +21 -0
- data/vendor/bundle/ruby/3.4.0/gems/concurrent-ruby-1.3.5/README.md +407 -0
- data/vendor/bundle/ruby/3.4.0/gems/connection_pool-2.5.0/LICENSE +20 -0
- data/vendor/bundle/ruby/3.4.0/gems/connection_pool-2.5.0/README.md +167 -0
- data/vendor/bundle/ruby/3.4.0/gems/connection_pool-2.5.0/connection_pool.gemspec +24 -0
- data/vendor/bundle/ruby/3.4.0/gems/crack-1.0.0/LICENSE +20 -0
- data/vendor/bundle/ruby/3.4.0/gems/crack-1.0.0/README.md +43 -0
- data/vendor/bundle/ruby/3.4.0/gems/crass-1.0.6/LICENSE +18 -0
- data/vendor/bundle/ruby/3.4.0/gems/crass-1.0.6/README.md +192 -0
- data/vendor/bundle/ruby/3.4.0/gems/crass-1.0.6/crass.gemspec +31 -0
- data/vendor/bundle/ruby/3.4.0/gems/diff-lcs-1.5.1/License.md +41 -0
- data/vendor/bundle/ruby/3.4.0/gems/diff-lcs-1.5.1/README.rdoc +84 -0
- data/vendor/bundle/ruby/3.4.0/gems/drb-2.2.1/LICENSE.txt +22 -0
- data/vendor/bundle/ruby/3.4.0/gems/drb-2.2.1/drb.gemspec +41 -0
- data/vendor/bundle/ruby/3.4.0/gems/erubi-1.13.1/CHANGELOG +111 -0
- data/vendor/bundle/ruby/3.4.0/gems/erubi-1.13.1/MIT-LICENSE +21 -0
- data/vendor/bundle/ruby/3.4.0/gems/erubi-1.13.1/README.rdoc +151 -0
- data/vendor/bundle/ruby/3.4.0/gems/ethon-0.16.0/CHANGELOG.md +375 -0
- data/vendor/bundle/ruby/3.4.0/gems/ethon-0.16.0/LICENSE +20 -0
- data/vendor/bundle/ruby/3.4.0/gems/ethon-0.16.0/README.md +118 -0
- data/vendor/bundle/ruby/3.4.0/gems/ethon-0.16.0/ethon.gemspec +26 -0
- data/vendor/bundle/ruby/3.4.0/gems/ffi-1.17.1-x86_64-linux-gnu/CHANGELOG.md +465 -0
- data/vendor/bundle/ruby/3.4.0/gems/ffi-1.17.1-x86_64-linux-gnu/LICENSE +24 -0
- data/vendor/bundle/ruby/3.4.0/gems/ffi-1.17.1-x86_64-linux-gnu/LICENSE.SPECS +22 -0
- data/vendor/bundle/ruby/3.4.0/gems/ffi-1.17.1-x86_64-linux-gnu/README.md +137 -0
- data/vendor/bundle/ruby/3.4.0/gems/ffi-1.17.1-x86_64-linux-gnu/ffi.gemspec +42 -0
- data/vendor/bundle/ruby/3.4.0/gems/hashdiff-1.1.2/LICENSE +19 -0
- data/vendor/bundle/ruby/3.4.0/gems/hashdiff-1.1.2/README.md +298 -0
- data/vendor/bundle/ruby/3.4.0/gems/hashdiff-1.1.2/changelog.md +119 -0
- data/vendor/bundle/ruby/3.4.0/gems/hashdiff-1.1.2/hashdiff.gemspec +39 -0
- data/vendor/bundle/ruby/3.4.0/gems/i18n-1.14.6/MIT-LICENSE +20 -0
- data/vendor/bundle/ruby/3.4.0/gems/i18n-1.14.6/README.md +127 -0
- data/vendor/bundle/ruby/3.4.0/gems/json-2.9.1/README.md +195 -0
- data/vendor/bundle/ruby/3.4.0/gems/json-2.9.1/json.gemspec +64 -0
- data/vendor/bundle/ruby/3.4.0/gems/logger-1.6.5/README.md +104 -0
- data/vendor/bundle/ruby/3.4.0/gems/logger-1.6.5/logger.gemspec +28 -0
- data/vendor/bundle/ruby/3.4.0/gems/loofah-2.24.0/CHANGELOG.md +591 -0
- data/vendor/bundle/ruby/3.4.0/gems/loofah-2.24.0/MIT-LICENSE.txt +23 -0
- data/vendor/bundle/ruby/3.4.0/gems/loofah-2.24.0/README.md +410 -0
- data/vendor/bundle/ruby/3.4.0/gems/minitest-5.25.4/README.rdoc +835 -0
- data/vendor/bundle/ruby/3.4.0/gems/multi_json-1.15.0/CHANGELOG.md +275 -0
- data/vendor/bundle/ruby/3.4.0/gems/multi_json-1.15.0/LICENSE.md +20 -0
- data/vendor/bundle/ruby/3.4.0/gems/multi_json-1.15.0/README.md +121 -0
- data/vendor/bundle/ruby/3.4.0/gems/nokogiri-1.18.1-x86_64-linux-gnu/LICENSE-DEPENDENCIES.md +2224 -0
- data/vendor/bundle/ruby/3.4.0/gems/nokogiri-1.18.1-x86_64-linux-gnu/LICENSE.md +9 -0
- data/vendor/bundle/ruby/3.4.0/gems/nokogiri-1.18.1-x86_64-linux-gnu/README.md +293 -0
- data/vendor/bundle/ruby/3.4.0/gems/public_suffix-6.0.1/CHANGELOG.md +491 -0
- data/vendor/bundle/ruby/3.4.0/gems/public_suffix-6.0.1/LICENSE.txt +22 -0
- data/vendor/bundle/ruby/3.4.0/gems/public_suffix-6.0.1/README.md +222 -0
- data/vendor/bundle/ruby/3.4.0/gems/racc-1.8.1/ChangeLog +846 -0
- data/vendor/bundle/ruby/3.4.0/gems/racc-1.8.1/README.ja.rdoc +58 -0
- data/vendor/bundle/ruby/3.4.0/gems/racc-1.8.1/README.rdoc +60 -0
- data/vendor/bundle/ruby/3.4.0/gems/rack-3.1.8/CHANGELOG.md +998 -0
- data/vendor/bundle/ruby/3.4.0/gems/rack-3.1.8/MIT-LICENSE +20 -0
- data/vendor/bundle/ruby/3.4.0/gems/rack-3.1.8/README.md +328 -0
- data/vendor/bundle/ruby/3.4.0/gems/rack-session-2.1.0/license.md +72 -0
- data/vendor/bundle/ruby/3.4.0/gems/rack-session-2.1.0/readme.md +47 -0
- data/vendor/bundle/ruby/3.4.0/gems/rack-test-2.2.0/MIT-LICENSE.txt +20 -0
- data/vendor/bundle/ruby/3.4.0/gems/rack-test-2.2.0/README.md +139 -0
- data/vendor/bundle/ruby/3.4.0/gems/rails-dom-testing-2.2.0/MIT-LICENSE +23 -0
- data/vendor/bundle/ruby/3.4.0/gems/rails-dom-testing-2.2.0/README.md +91 -0
- data/vendor/bundle/ruby/3.4.0/gems/rails-html-sanitizer-1.6.2/CHANGELOG.md +255 -0
- data/vendor/bundle/ruby/3.4.0/gems/rails-html-sanitizer-1.6.2/MIT-LICENSE +23 -0
- data/vendor/bundle/ruby/3.4.0/gems/rails-html-sanitizer-1.6.2/README.md +267 -0
- data/vendor/bundle/ruby/3.4.0/gems/rake-13.2.1/MIT-LICENSE +21 -0
- data/vendor/bundle/ruby/3.4.0/gems/rake-13.2.1/README.rdoc +155 -0
- data/vendor/bundle/ruby/3.4.0/gems/rake-13.2.1/rake.gemspec +101 -0
- data/vendor/bundle/ruby/3.4.0/gems/rake-release-1.3.0/LICENSE +21 -0
- data/vendor/bundle/ruby/3.4.0/gems/rake-release-1.3.0/README.md +107 -0
- data/vendor/bundle/ruby/3.4.0/gems/rake-release-1.3.0/rake-release.gemspec +23 -0
- data/vendor/bundle/ruby/3.4.0/gems/rexml-3.4.0/LICENSE.txt +22 -0
- data/vendor/bundle/ruby/3.4.0/gems/rexml-3.4.0/README.md +57 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-3.13.0/LICENSE.md +27 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-3.13.0/README.md +47 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-collection_matchers-1.2.1/Changelog.md +68 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-collection_matchers-1.2.1/LICENSE.txt +27 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-collection_matchers-1.2.1/README.md +76 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-collection_matchers-1.2.1/rspec-collection_matchers.gemspec +33 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-core-3.13.2/Changelog.md +2415 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-core-3.13.2/LICENSE.md +26 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-core-3.13.2/README.md +389 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-expectations-3.13.3/Changelog.md +1352 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-expectations-3.13.3/LICENSE.md +25 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-expectations-3.13.3/README.md +326 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-its-2.0.0/Changelog.md +73 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-its-2.0.0/LICENSE.txt +27 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-its-2.0.0/README.md +104 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-its-2.0.0/rspec-its.gemspec +31 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-mocks-3.13.2/Changelog.md +1299 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-mocks-3.13.2/LICENSE.md +25 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-mocks-3.13.2/README.md +465 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-support-3.13.2/Changelog.md +408 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-support-3.13.2/LICENSE.md +23 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-support-3.13.2/README.md +40 -0
- data/vendor/bundle/ruby/3.4.0/gems/securerandom-0.4.1/README.md +72 -0
- data/vendor/bundle/ruby/3.4.0/gems/thor-1.3.2/LICENSE.md +20 -0
- data/vendor/bundle/ruby/3.4.0/gems/thor-1.3.2/README.md +45 -0
- data/vendor/bundle/ruby/3.4.0/gems/thor-1.3.2/thor.gemspec +33 -0
- data/vendor/bundle/ruby/3.4.0/gems/typhoeus-1.4.1/CHANGELOG.md +410 -0
- data/vendor/bundle/ruby/3.4.0/gems/typhoeus-1.4.1/LICENSE +22 -0
- data/vendor/bundle/ruby/3.4.0/gems/typhoeus-1.4.1/README.md +588 -0
- data/vendor/bundle/ruby/3.4.0/gems/typhoeus-1.4.1/typhoeus.gemspec +25 -0
- data/vendor/bundle/ruby/3.4.0/gems/tzinfo-2.0.6/LICENSE +19 -0
- data/vendor/bundle/ruby/3.4.0/gems/tzinfo-2.0.6/README.md +406 -0
- data/vendor/bundle/ruby/3.4.0/gems/uri-1.0.2/README.md +55 -0
- data/vendor/bundle/ruby/3.4.0/gems/useragent-0.16.11/LICENSE +20 -0
- data/vendor/bundle/ruby/3.4.0/gems/useragent-0.16.11/README.md +42 -0
- data/vendor/bundle/ruby/3.4.0/gems/webmock-3.24.0/CHANGELOG.md +2104 -0
- data/vendor/bundle/ruby/3.4.0/gems/webmock-3.24.0/LICENSE +20 -0
- data/vendor/bundle/ruby/3.4.0/gems/webmock-3.24.0/README.md +1222 -0
- data/vendor/bundle/ruby/3.4.0/specifications/actionpack-8.0.1.gemspec +36 -0
- data/vendor/bundle/ruby/3.4.0/specifications/actionview-8.0.1.gemspec +33 -0
- data/vendor/bundle/ruby/3.4.0/specifications/activemodel-8.0.1.gemspec +26 -0
- data/vendor/bundle/ruby/3.4.0/specifications/activesupport-8.0.1.gemspec +38 -0
- data/vendor/bundle/ruby/3.4.0/specifications/addressable-2.8.7.gemspec +30 -0
- data/vendor/bundle/ruby/3.4.0/specifications/appraisal-2.5.0.gemspec +31 -0
- data/vendor/bundle/ruby/3.4.0/specifications/base64-0.2.0.gemspec +23 -0
- data/vendor/bundle/ruby/3.4.0/specifications/benchmark-0.4.0.gemspec +23 -0
- data/vendor/bundle/ruby/3.4.0/specifications/bigdecimal-3.1.9.gemspec +25 -0
- data/vendor/bundle/ruby/3.4.0/specifications/builder-3.3.0.gemspec +22 -0
- data/vendor/bundle/ruby/3.4.0/specifications/concurrent-ruby-1.3.5.gemspec +24 -0
- data/vendor/bundle/ruby/3.4.0/specifications/connection_pool-2.5.0.gemspec +28 -0
- data/vendor/bundle/ruby/3.4.0/specifications/crack-1.0.0.gemspec +27 -0
- data/vendor/bundle/ruby/3.4.0/specifications/crass-1.0.6.gemspec +27 -0
- data/vendor/bundle/ruby/3.4.0/specifications/diff-lcs-1.5.1.gemspec +37 -0
- data/vendor/bundle/ruby/3.4.0/specifications/drb-2.2.1.gemspec +22 -0
- data/vendor/bundle/ruby/3.4.0/specifications/erubi-1.13.1.gemspec +29 -0
- data/vendor/bundle/ruby/3.4.0/specifications/ethon-0.16.0.gemspec +24 -0
- data/vendor/bundle/ruby/3.4.0/specifications/ffi-1.17.1-x86_64-linux-gnu.gemspec +31 -0
- data/vendor/bundle/ruby/3.4.0/specifications/hashdiff-1.1.2.gemspec +30 -0
- data/vendor/bundle/ruby/3.4.0/specifications/i18n-1.14.6.gemspec +27 -0
- data/vendor/bundle/ruby/3.4.0/specifications/json-2.9.1.gemspec +0 -0
- data/vendor/bundle/ruby/3.4.0/specifications/logger-1.6.5.gemspec +22 -0
- data/vendor/bundle/ruby/3.4.0/specifications/loofah-2.24.0.gemspec +27 -0
- data/vendor/bundle/ruby/3.4.0/specifications/minitest-5.25.4.gemspec +31 -0
- data/vendor/bundle/ruby/3.4.0/specifications/multi_json-1.15.0.gemspec +26 -0
- data/vendor/bundle/ruby/3.4.0/specifications/nokogiri-1.18.1-x86_64-linux-gnu.gemspec +31 -0
- data/vendor/bundle/ruby/3.4.0/specifications/public_suffix-6.0.1.gemspec +24 -0
- data/vendor/bundle/ruby/3.4.0/specifications/racc-1.8.1.gemspec +28 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rack-3.1.8.gemspec +31 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rack-session-2.1.0.gemspec +30 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rack-test-2.2.0.gemspec +29 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rails-dom-testing-2.2.0.gemspec +28 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rails-html-sanitizer-1.6.2.gemspec +27 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rake-13.2.1.gemspec +26 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rake-release-1.3.0.gemspec +26 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rexml-3.4.0.gemspec +25 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rspec-3.13.0.gemspec +31 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rspec-collection_matchers-1.2.1.gemspec +27 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rspec-core-3.13.2.gemspec +39 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rspec-expectations-3.13.3.gemspec +33 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rspec-its-2.0.0.gemspec +27 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rspec-mocks-3.13.2.gemspec +33 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rspec-support-3.13.2.gemspec +29 -0
- data/vendor/bundle/ruby/3.4.0/specifications/securerandom-0.4.1.gemspec +23 -0
- data/vendor/bundle/ruby/3.4.0/specifications/thor-1.3.2.gemspec +28 -0
- data/vendor/bundle/ruby/3.4.0/specifications/typhoeus-1.4.1.gemspec +24 -0
- data/vendor/bundle/ruby/3.4.0/specifications/tzinfo-2.0.6.gemspec +30 -0
- data/vendor/bundle/ruby/3.4.0/specifications/uri-1.0.2.gemspec +23 -0
- data/vendor/bundle/ruby/3.4.0/specifications/useragent-0.16.11.gemspec +25 -0
- data/vendor/bundle/ruby/3.4.0/specifications/webmock-3.24.0.gemspec +45 -0
- metadata +204 -67
@@ -0,0 +1,195 @@
|
|
1
|
+
# JSON implementation for Ruby
|
2
|
+
|
3
|
+
[![CI](https://github.com/ruby/json/actions/workflows/ci.yml/badge.svg)](https://github.com/ruby/json/actions/workflows/ci.yml)
|
4
|
+
|
5
|
+
## Description
|
6
|
+
|
7
|
+
This is an implementation of the JSON specification according to RFC 7159
|
8
|
+
http://www.ietf.org/rfc/rfc7159.txt .
|
9
|
+
|
10
|
+
The JSON generator generate UTF-8 character sequences by default.
|
11
|
+
If an :ascii\_only option with a true value is given, they escape all
|
12
|
+
non-ASCII and control characters with \uXXXX escape sequences, and support
|
13
|
+
UTF-16 surrogate pairs in order to be able to generate the whole range of
|
14
|
+
unicode code points.
|
15
|
+
|
16
|
+
All strings, that are to be encoded as JSON strings, should be UTF-8 byte
|
17
|
+
sequences on the Ruby side. To encode raw binary strings, that aren't UTF-8
|
18
|
+
encoded, please use the to\_json\_raw\_object method of String (which produces
|
19
|
+
an object, that contains a byte array) and decode the result on the receiving
|
20
|
+
endpoint.
|
21
|
+
|
22
|
+
## Installation
|
23
|
+
|
24
|
+
Install the gem and add to the application's Gemfile by executing:
|
25
|
+
|
26
|
+
$ bundle add json
|
27
|
+
|
28
|
+
If bundler is not being used to manage dependencies, install the gem by executing:
|
29
|
+
|
30
|
+
$ gem install json
|
31
|
+
|
32
|
+
## Usage
|
33
|
+
|
34
|
+
To use JSON you can
|
35
|
+
|
36
|
+
```ruby
|
37
|
+
require 'json'
|
38
|
+
```
|
39
|
+
|
40
|
+
Now you can parse a JSON document into a ruby data structure by calling
|
41
|
+
|
42
|
+
```ruby
|
43
|
+
JSON.parse(document)
|
44
|
+
```
|
45
|
+
|
46
|
+
If you want to generate a JSON document from a ruby data structure call
|
47
|
+
```ruby
|
48
|
+
JSON.generate(data)
|
49
|
+
```
|
50
|
+
|
51
|
+
You can also use the `pretty_generate` method (which formats the output more
|
52
|
+
verbosely and nicely) or `fast_generate` (which doesn't do any of the security
|
53
|
+
checks generate performs, e. g. nesting deepness checks).
|
54
|
+
|
55
|
+
## Handling arbitrary types
|
56
|
+
|
57
|
+
> [!CAUTION]
|
58
|
+
> You should never use `JSON.unsafe_load` nor `JSON.parse(str, create_additions: true)` to parse untrusted user input,
|
59
|
+
> as it can lead to remote code execution vulnerabilities.
|
60
|
+
|
61
|
+
To create a JSON document from a ruby data structure, you can call
|
62
|
+
`JSON.generate` like that:
|
63
|
+
|
64
|
+
```ruby
|
65
|
+
json = JSON.generate [1, 2, {"a"=>3.141}, false, true, nil, 4..10]
|
66
|
+
# => "[1,2,{\"a\":3.141},false,true,null,\"4..10\"]"
|
67
|
+
```
|
68
|
+
|
69
|
+
To get back a ruby data structure from a JSON document, you have to call
|
70
|
+
JSON.parse on it:
|
71
|
+
|
72
|
+
```ruby
|
73
|
+
JSON.parse json
|
74
|
+
# => [1, 2, {"a"=>3.141}, false, true, nil, "4..10"]
|
75
|
+
```
|
76
|
+
|
77
|
+
Note, that the range from the original data structure is a simple
|
78
|
+
string now. The reason for this is, that JSON doesn't support ranges
|
79
|
+
or arbitrary classes. In this case the json library falls back to call
|
80
|
+
`Object#to_json`, which is the same as `#to_s.to_json`.
|
81
|
+
|
82
|
+
It's possible to add JSON support serialization to arbitrary classes by
|
83
|
+
simply implementing a more specialized version of the `#to_json method`, that
|
84
|
+
should return a JSON object (a hash converted to JSON with `#to_json`) like
|
85
|
+
this (don't forget the `*a` for all the arguments):
|
86
|
+
|
87
|
+
```ruby
|
88
|
+
class Range
|
89
|
+
def to_json(*a)
|
90
|
+
{
|
91
|
+
'json_class' => self.class.name, # = 'Range'
|
92
|
+
'data' => [ first, last, exclude_end? ]
|
93
|
+
}.to_json(*a)
|
94
|
+
end
|
95
|
+
end
|
96
|
+
```
|
97
|
+
|
98
|
+
The hash key `json_class` is the class, that will be asked to deserialise the
|
99
|
+
JSON representation later. In this case it's `Range`, but any namespace of
|
100
|
+
the form `A::B` or `::A::B` will do. All other keys are arbitrary and can be
|
101
|
+
used to store the necessary data to configure the object to be deserialised.
|
102
|
+
|
103
|
+
If the key `json_class` is found in a JSON object, the JSON parser checks
|
104
|
+
if the given class responds to the `json_create` class method. If so, it is
|
105
|
+
called with the JSON object converted to a Ruby hash. So a range can
|
106
|
+
be deserialised by implementing `Range.json_create` like this:
|
107
|
+
|
108
|
+
```ruby
|
109
|
+
class Range
|
110
|
+
def self.json_create(o)
|
111
|
+
new(*o['data'])
|
112
|
+
end
|
113
|
+
end
|
114
|
+
```
|
115
|
+
|
116
|
+
Now it possible to serialise/deserialise ranges as well:
|
117
|
+
|
118
|
+
```ruby
|
119
|
+
json = JSON.generate [1, 2, {"a"=>3.141}, false, true, nil, 4..10]
|
120
|
+
# => "[1,2,{\"a\":3.141},false,true,null,{\"json_class\":\"Range\",\"data\":[4,10,false]}]"
|
121
|
+
JSON.parse json
|
122
|
+
# => [1, 2, {"a"=>3.141}, false, true, nil, 4..10]
|
123
|
+
json = JSON.generate [1, 2, {"a"=>3.141}, false, true, nil, 4..10]
|
124
|
+
# => "[1,2,{\"a\":3.141},false,true,null,{\"json_class\":\"Range\",\"data\":[4,10,false]}]"
|
125
|
+
JSON.unsafe_load json
|
126
|
+
# => [1, 2, {"a"=>3.141}, false, true, nil, 4..10]
|
127
|
+
```
|
128
|
+
|
129
|
+
`JSON.generate` always creates the shortest possible string representation of a
|
130
|
+
ruby data structure in one line. This is good for data storage or network
|
131
|
+
protocols, but not so good for humans to read. Fortunately there's also
|
132
|
+
`JSON.pretty_generate` (or `JSON.pretty_generate`) that creates a more readable
|
133
|
+
output:
|
134
|
+
|
135
|
+
```ruby
|
136
|
+
puts JSON.pretty_generate([1, 2, {"a"=>3.141}, false, true, nil, 4..10])
|
137
|
+
[
|
138
|
+
1,
|
139
|
+
2,
|
140
|
+
{
|
141
|
+
"a": 3.141
|
142
|
+
},
|
143
|
+
false,
|
144
|
+
true,
|
145
|
+
null,
|
146
|
+
{
|
147
|
+
"json_class": "Range",
|
148
|
+
"data": [
|
149
|
+
4,
|
150
|
+
10,
|
151
|
+
false
|
152
|
+
]
|
153
|
+
}
|
154
|
+
]
|
155
|
+
```
|
156
|
+
|
157
|
+
There are also the methods `Kernel#j` for generate, and `Kernel#jj` for
|
158
|
+
`pretty_generate` output to the console, that work analogous to Core Ruby's `p` and
|
159
|
+
the `pp` library's `pp` methods.
|
160
|
+
|
161
|
+
## Development
|
162
|
+
|
163
|
+
### Release
|
164
|
+
|
165
|
+
Update the `lib/json/version.rb` file.
|
166
|
+
|
167
|
+
```
|
168
|
+
rbenv shell 2.6.5
|
169
|
+
rake build
|
170
|
+
gem push pkg/json-2.3.0.gem
|
171
|
+
|
172
|
+
rbenv shell jruby-9.2.9.0
|
173
|
+
rake build
|
174
|
+
gem push pkg/json-2.3.0-java.gem
|
175
|
+
```
|
176
|
+
|
177
|
+
## Author
|
178
|
+
|
179
|
+
Florian Frank <mailto:flori@ping.de>
|
180
|
+
|
181
|
+
## License
|
182
|
+
|
183
|
+
Ruby License, see https://www.ruby-lang.org/en/about/license.txt.
|
184
|
+
|
185
|
+
## Download
|
186
|
+
|
187
|
+
The latest version of this library can be downloaded at
|
188
|
+
|
189
|
+
* https://rubygems.org/gems/json
|
190
|
+
|
191
|
+
Online Documentation should be located at
|
192
|
+
|
193
|
+
* https://www.rubydoc.info/gems/json
|
194
|
+
|
195
|
+
[Ragel]: http://www.colm.net/open-source/ragel/
|
@@ -0,0 +1,64 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
version = File.foreach(File.join(__dir__, "lib/json/version.rb")) do |line|
|
4
|
+
/^\s*VERSION\s*=\s*'(.*)'/ =~ line and break $1
|
5
|
+
end rescue nil
|
6
|
+
|
7
|
+
spec = Gem::Specification.new do |s|
|
8
|
+
java_ext = Gem::Platform === s.platform && s.platform =~ 'java' || RUBY_ENGINE == 'jruby'
|
9
|
+
|
10
|
+
s.name = "json"
|
11
|
+
s.version = version
|
12
|
+
|
13
|
+
s.summary = "JSON Implementation for Ruby"
|
14
|
+
s.homepage = "https://ruby.github.io/json"
|
15
|
+
s.metadata = {
|
16
|
+
'bug_tracker_uri' => 'https://github.com/ruby/json/issues',
|
17
|
+
'changelog_uri' => 'https://github.com/ruby/json/blob/master/CHANGES.md',
|
18
|
+
'documentation_uri' => 'https://ruby.github.io/json/doc/index.html',
|
19
|
+
'homepage_uri' => s.homepage,
|
20
|
+
'source_code_uri' => 'https://github.com/ruby/json',
|
21
|
+
'wiki_uri' => 'https://github.com/ruby/json/wiki'
|
22
|
+
}
|
23
|
+
|
24
|
+
s.required_ruby_version = Gem::Requirement.new(">= 2.7")
|
25
|
+
|
26
|
+
if java_ext
|
27
|
+
s.description = "A JSON implementation as a JRuby extension."
|
28
|
+
s.author = "Daniel Luz"
|
29
|
+
s.email = "dev+ruby@mernen.com"
|
30
|
+
else
|
31
|
+
s.description = "This is a JSON implementation as a Ruby extension in C."
|
32
|
+
s.authors = ["Florian Frank"]
|
33
|
+
s.email = "flori@ping.de"
|
34
|
+
end
|
35
|
+
|
36
|
+
s.licenses = ["Ruby"]
|
37
|
+
|
38
|
+
s.extra_rdoc_files = ["README.md"]
|
39
|
+
s.rdoc_options = ["--title", "JSON implementation for Ruby", "--main", "README.md"]
|
40
|
+
|
41
|
+
s.files = [
|
42
|
+
"CHANGES.md",
|
43
|
+
"COPYING",
|
44
|
+
"BSDL",
|
45
|
+
"LEGAL",
|
46
|
+
"README.md",
|
47
|
+
"json.gemspec",
|
48
|
+
*Dir["lib/**/*.rb"],
|
49
|
+
]
|
50
|
+
|
51
|
+
if java_ext
|
52
|
+
s.platform = 'java'
|
53
|
+
s.files += Dir["lib/json/ext/**/*.jar"]
|
54
|
+
else
|
55
|
+
s.extensions = Dir["ext/json/**/extconf.rb"]
|
56
|
+
s.files += Dir["ext/json/**/*.{c,h,rl}"]
|
57
|
+
end
|
58
|
+
end
|
59
|
+
|
60
|
+
if RUBY_ENGINE == 'jruby' && $0 == __FILE__
|
61
|
+
Gem::Builder.new(spec).build
|
62
|
+
else
|
63
|
+
spec
|
64
|
+
end
|
@@ -0,0 +1,104 @@
|
|
1
|
+
# Logger
|
2
|
+
|
3
|
+
Logger is a simple but powerful logging utility to output messages in your Ruby program.
|
4
|
+
|
5
|
+
Logger has the following features:
|
6
|
+
|
7
|
+
* Print messages to different levels such as `info` and `error`
|
8
|
+
* Auto-rolling of log files
|
9
|
+
* Setting the format of log messages
|
10
|
+
* Specifying a program name in conjunction with the message
|
11
|
+
|
12
|
+
## Installation
|
13
|
+
|
14
|
+
Add this line to your application's Gemfile:
|
15
|
+
|
16
|
+
```ruby
|
17
|
+
gem 'logger'
|
18
|
+
```
|
19
|
+
|
20
|
+
And then execute:
|
21
|
+
|
22
|
+
$ bundle
|
23
|
+
|
24
|
+
Or install it yourself as:
|
25
|
+
|
26
|
+
$ gem install logger
|
27
|
+
|
28
|
+
## Usage
|
29
|
+
|
30
|
+
### Simple Example
|
31
|
+
|
32
|
+
```ruby
|
33
|
+
require 'logger'
|
34
|
+
|
35
|
+
# Create a Logger that prints to STDOUT
|
36
|
+
log = Logger.new(STDOUT)
|
37
|
+
log.debug("Created Logger")
|
38
|
+
|
39
|
+
log.info("Program finished")
|
40
|
+
|
41
|
+
# Create a Logger that prints to STDERR
|
42
|
+
error_log = Logger.new(STDERR)
|
43
|
+
error_log = error_log.error("fatal error")
|
44
|
+
```
|
45
|
+
|
46
|
+
## Development
|
47
|
+
|
48
|
+
After checking out the repo, run the following to install dependencies.
|
49
|
+
|
50
|
+
```
|
51
|
+
$ bin/setup
|
52
|
+
```
|
53
|
+
|
54
|
+
Then, run the tests as:
|
55
|
+
|
56
|
+
```
|
57
|
+
$ rake test
|
58
|
+
```
|
59
|
+
|
60
|
+
To install this gem onto your local machine, run
|
61
|
+
|
62
|
+
```
|
63
|
+
$ rake install
|
64
|
+
```
|
65
|
+
|
66
|
+
To release a new version, update the version number in `lib/logger/version.rb`, and then run
|
67
|
+
|
68
|
+
```
|
69
|
+
$ rake release
|
70
|
+
```
|
71
|
+
|
72
|
+
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).
|
73
|
+
|
74
|
+
## Advanced Development
|
75
|
+
|
76
|
+
### Run tests of a specific file
|
77
|
+
|
78
|
+
```
|
79
|
+
$ ruby test/logger/test_logger.rb
|
80
|
+
```
|
81
|
+
|
82
|
+
### Run tests filtering test methods by a name
|
83
|
+
|
84
|
+
`--name` option is available as:
|
85
|
+
|
86
|
+
```
|
87
|
+
$ ruby test/logger/test_logger.rb --name test_lshift
|
88
|
+
```
|
89
|
+
|
90
|
+
### Publish documents to GitHub Pages
|
91
|
+
|
92
|
+
```
|
93
|
+
$ rake gh-pages
|
94
|
+
```
|
95
|
+
|
96
|
+
Then, git commit and push the generated HTMLs onto `gh-pages` branch.
|
97
|
+
|
98
|
+
## Contributing
|
99
|
+
|
100
|
+
Bug reports and pull requests are welcome on GitHub at https://github.com/ruby/logger.
|
101
|
+
|
102
|
+
## License
|
103
|
+
|
104
|
+
The gem is available as open source under the terms of the [BSD-2-Clause](BSDL).
|
@@ -0,0 +1,28 @@
|
|
1
|
+
begin
|
2
|
+
require_relative "lib/logger/version"
|
3
|
+
rescue LoadError # Fallback to load version file in ruby core repository
|
4
|
+
require_relative "version"
|
5
|
+
end
|
6
|
+
|
7
|
+
Gem::Specification.new do |spec|
|
8
|
+
spec.name = "logger"
|
9
|
+
spec.version = Logger::VERSION
|
10
|
+
spec.authors = ["Naotoshi Seo", "SHIBATA Hiroshi"]
|
11
|
+
spec.email = ["sonots@gmail.com", "hsbt@ruby-lang.org"]
|
12
|
+
|
13
|
+
spec.summary = %q{Provides a simple logging utility for outputting messages.}
|
14
|
+
spec.description = %q{Provides a simple logging utility for outputting messages.}
|
15
|
+
spec.homepage = "https://github.com/ruby/logger"
|
16
|
+
spec.licenses = ["Ruby", "BSD-2-Clause"]
|
17
|
+
|
18
|
+
# Specify which files should be added to the gem when it is released.
|
19
|
+
# The `git ls-files -z` loads the files in the RubyGem that have been added into git.
|
20
|
+
spec.files = Dir.chdir(File.expand_path('..', __FILE__)) do
|
21
|
+
`git ls-files -z 2>#{IO::NULL}`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
22
|
+
end
|
23
|
+
spec.require_paths = ["lib"]
|
24
|
+
|
25
|
+
spec.required_ruby_version = ">= 2.5.0"
|
26
|
+
|
27
|
+
spec.metadata["changelog_uri"] = spec.homepage + "/releases"
|
28
|
+
end
|