fmrest-core 0.20.0 → 0.22.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.
- checksums.yaml +4 -4
 - data/CHANGELOG.md +6 -0
 - data/README.md +16 -26
 - data/lib/fmrest/v1/connection.rb +1 -1
 - data/lib/fmrest/v1/container_fields.rb +2 -2
 - data/lib/fmrest/v1/raise_errors.rb +1 -1
 - data/lib/fmrest/v1/type_coercer.rb +1 -1
 - data/lib/fmrest/version.rb +1 -1
 - data/lib/fmrest.rb +12 -5
 - data/lib/generators/fmrest/config/config_generator.rb +19 -0
 - data/lib/generators/fmrest/config/templates/fmrest.yml +18 -0
 - data/lib/generators/fmrest/config/templates/fmrest_initializer.rb +19 -0
 - data/lib/generators/fmrest/model/model_generator.rb +15 -0
 - data/lib/generators/fmrest/model/templates/model.rb +6 -0
 - metadata +11 -18
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            SHA256:
         
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: b7ac58128c88341bca022d6470847a1bf0ee489daf71323697e17ba103f0325f
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: 7061ed4af4f344646aa4dd4935242f00751473885302cb257283183aadbed763
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: db124b9095a6a8636e5edea83ba9b2c1517aff515336daa37cb882db1818f02f5fb6ceb2eaac7d980d433bbef2892fa708bbb1087fc9bbde1829cd22f738dd67
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: 587890573a26cc811da0a7327d4b8b3799f9f7717fb6885b4f2d8414922d48eb53cb54c3cad52050e56bc998e9ade720fe7cd835a9bd36184afbb4271f12729f
         
     | 
    
        data/CHANGELOG.md
    CHANGED
    
    
    
        data/README.md
    CHANGED
    
    | 
         @@ -3,6 +3,7 @@ 
     | 
|
| 
       3 
3 
     | 
    
         
             
            [](https://rubygems.org/gems/fmrest)
         
     | 
| 
       4 
4 
     | 
    
         
             
            
         
     | 
| 
       5 
5 
     | 
    
         
             
            [](https://rubydoc.info/github/beezwax/fmrest-ruby)
         
     | 
| 
      
 6 
     | 
    
         
            +
            [](https://beezwax.net/)
         
     | 
| 
       6 
7 
     | 
    
         | 
| 
       7 
8 
     | 
    
         
             
            A Ruby client for
         
     | 
| 
       8 
9 
     | 
    
         
             
            [FileMaker's Data API](https://help.claris.com/en/data-api-guide)
         
     | 
| 
         @@ -16,29 +17,16 @@ is natively supported by the gem. 
     | 
|
| 
       16 
17 
     | 
    
         
             
            Need Ruby or FileMaker consulting? Contact us at
         
     | 
| 
       17 
18 
     | 
    
         
             
            [Beezwax.net](https://beezwax.net/)
         
     | 
| 
       18 
19 
     | 
    
         | 
| 
       19 
     | 
    
         
            -
            ## Contents
         
     | 
| 
       20 
     | 
    
         
            -
             
     | 
| 
       21 
     | 
    
         
            -
            * [Gems](#gems)
         
     | 
| 
       22 
     | 
    
         
            -
            * [Installation](#installation)
         
     | 
| 
       23 
     | 
    
         
            -
            * [Simple example](#simple-example)
         
     | 
| 
       24 
     | 
    
         
            -
            * [Connection settings](#connection-settings)
         
     | 
| 
       25 
     | 
    
         
            -
            * [Session token store](#session-token-store)
         
     | 
| 
       26 
     | 
    
         
            -
            * [Date fields and timezones](#date-fields-and-timezones)
         
     | 
| 
       27 
     | 
    
         
            -
            * [ActiveRecord-like ORM (fmrest-spyke)](#activerecord-like-orm-fmrest-spyke)
         
     | 
| 
       28 
     | 
    
         
            -
            * [Logging](#logging)
         
     | 
| 
       29 
     | 
    
         
            -
            * [Gotchas](#gotchas)
         
     | 
| 
       30 
     | 
    
         
            -
            * [API implementation completeness table](#api-implementation-completeness-table)
         
     | 
| 
       31 
     | 
    
         
            -
            * [Supported Ruby versions](#supported-ruby-versions)
         
     | 
| 
       32 
     | 
    
         
            -
             
     | 
| 
       33 
20 
     | 
    
         
             
            ## Gems
         
     | 
| 
       34 
21 
     | 
    
         | 
| 
       35 
     | 
    
         
            -
            The `fmrest` gem is a wrapper for  
     | 
| 
      
 22 
     | 
    
         
            +
            The `fmrest` gem is a wrapper for these gems:
         
     | 
| 
       36 
23 
     | 
    
         | 
| 
       37 
24 
     | 
    
         
             
            * `fmrest-spyke`, providing an ActiveRecord-like ORM library built on top
         
     | 
| 
       38 
25 
     | 
    
         
             
              of `fmrest-core` and [Spyke](https://github.com/balvig/spyke).
         
     | 
| 
       39 
26 
     | 
    
         
             
            * `fmrest-core`, providing the core
         
     | 
| 
       40 
27 
     | 
    
         
             
              [Faraday](https://github.com/lostisland/faraday) connection builder, session
         
     | 
| 
       41 
28 
     | 
    
         
             
              management, and other core utilities.
         
     | 
| 
      
 29 
     | 
    
         
            +
            * `fmrest-rails`, providing Rails integration.
         
     | 
| 
       42 
30 
     | 
    
         | 
| 
       43 
31 
     | 
    
         
             
            In addition, the optional `fmrest-cloud` gem adds support for FileMaker Cloud.
         
     | 
| 
       44 
32 
     | 
    
         
             
            See the [main document on connecting to FileMaker
         
     | 
| 
         @@ -55,6 +43,12 @@ gem 'fmrest' 
     | 
|
| 
       55 
43 
     | 
    
         
             
            gem 'fmrest-cloud'
         
     | 
| 
       56 
44 
     | 
    
         
             
            ```
         
     | 
| 
       57 
45 
     | 
    
         | 
| 
      
 46 
     | 
    
         
            +
            If you're using Rails you can now run:
         
     | 
| 
      
 47 
     | 
    
         
            +
             
     | 
| 
      
 48 
     | 
    
         
            +
            ```
         
     | 
| 
      
 49 
     | 
    
         
            +
            rails generate fmrest:config
         
     | 
| 
      
 50 
     | 
    
         
            +
            ```
         
     | 
| 
      
 51 
     | 
    
         
            +
             
     | 
| 
       58 
52 
     | 
    
         
             
            ## Simple example
         
     | 
| 
       59 
53 
     | 
    
         | 
| 
       60 
54 
     | 
    
         
             
            ```ruby
         
     | 
| 
         @@ -124,7 +118,8 @@ to, for instance, disable SSL verification: 
     | 
|
| 
       124 
118 
     | 
    
         
             
            {
         
     | 
| 
       125 
119 
     | 
    
         
             
              host: "…",
         
     | 
| 
       126 
120 
     | 
    
         
             
              …
         
     | 
| 
       127 
     | 
    
         
            -
              ssl:  { verify: false }
         
     | 
| 
      
 121 
     | 
    
         
            +
              ssl:  { verify: false },
         
     | 
| 
      
 122 
     | 
    
         
            +
              proxy: "http://user:password@proxy.host:4321"
         
     | 
| 
       128 
123 
     | 
    
         
             
            }
         
     | 
| 
       129 
124 
     | 
    
         
             
            ```
         
     | 
| 
       130 
125 
     | 
    
         | 
| 
         @@ -135,13 +130,13 @@ You can also pass a `:log` option for basic request logging, see the section on 
     | 
|
| 
       135 
130 
     | 
    
         | 
| 
       136 
131 
     | 
    
         
             
            Option              | Description                                | Format                      | Default
         
     | 
| 
       137 
132 
     | 
    
         
             
            --------------------|--------------------------------------------|-----------------------------|--------
         
     | 
| 
       138 
     | 
    
         
            -
            `:host`             | Hostname with optional port, e.g. ` 
     | 
| 
      
 133 
     | 
    
         
            +
            `:host`             | Hostname with optional port, e.g. `example.com:9000` | String          | None
         
     | 
| 
       139 
134 
     | 
    
         
             
            `:database`         | The name of the database to connect to     | String                      | None
         
     | 
| 
       140 
135 
     | 
    
         
             
            `:username`         | A Data API-ready account                   | String                      | None
         
     | 
| 
       141 
136 
     | 
    
         
             
            `:password`         | Your password                              | String                      | None
         
     | 
| 
       142 
137 
     | 
    
         
             
            `:account_name`     | Alias of `:username`                       | String                      | None
         
     | 
| 
       143 
     | 
    
         
            -
            `:ssl`              | SSL options to be forwarded to Faraday     | Faraday SSL options 
     | 
| 
       144 
     | 
    
         
            -
            `:proxy`            | Proxy URI e.g. `http:// 
     | 
| 
      
 138 
     | 
    
         
            +
            `:ssl`              | SSL options to be forwarded to Faraday     | [Faraday SSL options](https://www.rubydoc.info/gems/faraday/Faraday/SSLOptions) hash | None
         
     | 
| 
      
 139 
     | 
    
         
            +
            `:proxy`            | Proxy URI, e.g. `http://user:password@proxy.host:4321` | String          | None
         
     | 
| 
       145 
140 
     | 
    
         
             
            `:log`              | Log JSON responses to STDOUT               | Boolean                     | `false`
         
     | 
| 
       146 
141 
     | 
    
         
             
            `:log_level`        | Which log level to log into                | Values accepted by `Logger#level=` | `:debug`
         
     | 
| 
       147 
142 
     | 
    
         
             
            `:coerce_dates`     | See section on [date fields](#date-fields-and-timezones) | Boolean \| `:hybrid` \| `:full` | `false`
         
     | 
| 
         @@ -561,13 +556,8 @@ FM Data API reference: https://help.claris.com/en/data-api-guide/ 
     | 
|
| 
       561 
556 
     | 
    
         | 
| 
       562 
557 
     | 
    
         
             
            ## Supported Ruby versions
         
     | 
| 
       563 
558 
     | 
    
         | 
| 
       564 
     | 
    
         
            -
            fmrest-ruby  
     | 
| 
       565 
     | 
    
         
            -
             
     | 
| 
       566 
     | 
    
         
            -
             
     | 
| 
       567 
     | 
    
         
            -
            * Ruby 2.5
         
     | 
| 
       568 
     | 
    
         
            -
            * Ruby 2.6
         
     | 
| 
       569 
     | 
    
         
            -
            * Ruby 2.7
         
     | 
| 
       570 
     | 
    
         
            -
            * Ruby 3.0
         
     | 
| 
      
 559 
     | 
    
         
            +
            fmrest-ruby is [tested against](https://github.com/beezwax/fmrest-ruby/actions?query=workflow%3ACI)
         
     | 
| 
      
 560 
     | 
    
         
            +
            Ruby 2.6 through 3.1.
         
     | 
| 
       571 
561 
     | 
    
         | 
| 
       572 
562 
     | 
    
         
             
            ## Gem development
         
     | 
| 
       573 
563 
     | 
    
         | 
    
        data/lib/fmrest/v1/connection.rb
    CHANGED
    
    | 
         @@ -72,7 +72,7 @@ module FmRest 
     | 
|
| 
       72 
72 
     | 
    
         
             
                      elsif is_cloud_host
         
     | 
| 
       73 
73 
     | 
    
         
             
                        conn.request :authorization, CLARIS_ID_HTTP_AUTH_TYPE, -> { Cloud::ClarisIdTokenManager.new(settings).fetch_token }
         
     | 
| 
       74 
74 
     | 
    
         
             
                      else
         
     | 
| 
       75 
     | 
    
         
            -
                        conn.request : 
     | 
| 
      
 75 
     | 
    
         
            +
                        conn.request :authorization, :basic, settings.username!, settings.password!
         
     | 
| 
       76 
76 
     | 
    
         
             
                      end
         
     | 
| 
       77 
77 
     | 
    
         | 
| 
       78 
78 
     | 
    
         
             
                      if settings.log
         
     | 
| 
         @@ -80,11 +80,11 @@ module FmRest 
     | 
|
| 
       80 
80 
     | 
    
         | 
| 
       81 
81 
     | 
    
         
             
                    connection.post do |request|
         
     | 
| 
       82 
82 
     | 
    
         
             
                      request.url container_path
         
     | 
| 
       83 
     | 
    
         
            -
                      request.headers['Content-Type'] = ::Faraday:: 
     | 
| 
      
 83 
     | 
    
         
            +
                      request.headers['Content-Type'] = ::Faraday::Multipart::Middleware.mime_type
         
     | 
| 
       84 
84 
     | 
    
         | 
| 
       85 
85 
     | 
    
         
             
                      filename = options[:filename] || filename_or_io.try(:original_filename)
         
     | 
| 
       86 
86 
     | 
    
         | 
| 
       87 
     | 
    
         
            -
                      request.body = { upload: Faraday:: 
     | 
| 
      
 87 
     | 
    
         
            +
                      request.body = { upload: Faraday::Multipart::FilePart.new(filename_or_io, content_type, filename) }
         
     | 
| 
       88 
88 
     | 
    
         
             
                    end
         
     | 
| 
       89 
89 
     | 
    
         
             
                  end
         
     | 
| 
       90 
90 
     | 
    
         | 
| 
         @@ -5,7 +5,7 @@ module FmRest 
     | 
|
| 
       5 
5 
     | 
    
         
             
                # FM Data API response middleware for raising exceptions on API response
         
     | 
| 
       6 
6 
     | 
    
         
             
                # errors
         
     | 
| 
       7 
7 
     | 
    
         
             
                #
         
     | 
| 
       8 
     | 
    
         
            -
                class RaiseErrors < Faraday:: 
     | 
| 
      
 8 
     | 
    
         
            +
                class RaiseErrors < Faraday::Middleware
         
     | 
| 
       9 
9 
     | 
    
         
             
                  # Error codes reference:
         
     | 
| 
       10 
10 
     | 
    
         
             
                  # https://help.claris.com/en/pro-help/content/error-codes.html
         
     | 
| 
       11 
11 
     | 
    
         
             
                  ERROR_RANGES = {
         
     | 
| 
         @@ -4,7 +4,7 @@ require "fmrest/string_date" 
     | 
|
| 
       4 
4 
     | 
    
         | 
| 
       5 
5 
     | 
    
         
             
            module FmRest
         
     | 
| 
       6 
6 
     | 
    
         
             
              module V1
         
     | 
| 
       7 
     | 
    
         
            -
                class TypeCoercer < Faraday:: 
     | 
| 
      
 7 
     | 
    
         
            +
                class TypeCoercer < Faraday::Middleware
         
     | 
| 
       8 
8 
     | 
    
         
             
                  # We use this date to represent a FileMaker time for consistency with
         
     | 
| 
       9 
9 
     | 
    
         
             
                  # ginjo-rfm
         
     | 
| 
       10 
10 
     | 
    
         
             
                  JULIAN_ZERO_DAY = "-4712/1/1"
         
     | 
    
        data/lib/fmrest/version.rb
    CHANGED
    
    
    
        data/lib/fmrest.rb
    CHANGED
    
    | 
         @@ -1,17 +1,18 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            # frozen_string_literal: true
         
     | 
| 
       2 
2 
     | 
    
         | 
| 
       3 
3 
     | 
    
         
             
            require "faraday"
         
     | 
| 
       4 
     | 
    
         
            -
            require " 
     | 
| 
      
 4 
     | 
    
         
            +
            require "faraday/multipart"
         
     | 
| 
       5 
5 
     | 
    
         | 
| 
       6 
6 
     | 
    
         
             
            require "fmrest/version"
         
     | 
| 
       7 
7 
     | 
    
         
             
            require "fmrest/connection_settings"
         
     | 
| 
       8 
8 
     | 
    
         
             
            require "fmrest/errors"
         
     | 
| 
       9 
9 
     | 
    
         | 
| 
       10 
10 
     | 
    
         
             
            module FmRest
         
     | 
| 
       11 
     | 
    
         
            -
              autoload :V1, 
     | 
| 
       12 
     | 
    
         
            -
              autoload :TokenStore, 
     | 
| 
       13 
     | 
    
         
            -
              autoload :Spyke, 
     | 
| 
       14 
     | 
    
         
            -
              autoload :Layout, 
     | 
| 
      
 11 
     | 
    
         
            +
              autoload :V1,                  "fmrest/v1"
         
     | 
| 
      
 12 
     | 
    
         
            +
              autoload :TokenStore,          "fmrest/token_store"
         
     | 
| 
      
 13 
     | 
    
         
            +
              autoload :Spyke,               "fmrest/spyke"
         
     | 
| 
      
 14 
     | 
    
         
            +
              autoload :Layout,              "fmrest/spyke"
         
     | 
| 
      
 15 
     | 
    
         
            +
              autoload :StringDateAwareness, "fmrest/string_date"
         
     | 
| 
       15 
16 
     | 
    
         | 
| 
       16 
17 
     | 
    
         
             
              class << self
         
     | 
| 
       17 
18 
     | 
    
         
             
                attr_accessor :token_store
         
     | 
| 
         @@ -68,3 +69,9 @@ module FmRest 
     | 
|
| 
       68 
69 
     | 
    
         
             
                end
         
     | 
| 
       69 
70 
     | 
    
         
             
              end
         
     | 
| 
       70 
71 
     | 
    
         
             
            end
         
     | 
| 
      
 72 
     | 
    
         
            +
             
     | 
| 
      
 73 
     | 
    
         
            +
            begin
         
     | 
| 
      
 74 
     | 
    
         
            +
              require "fmrest/railtie" if defined?(Rails::Railtie)
         
     | 
| 
      
 75 
     | 
    
         
            +
            # In case fmrest-rails is not installed
         
     | 
| 
      
 76 
     | 
    
         
            +
            rescue LoadError
         
     | 
| 
      
 77 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,19 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # frozen_string_literal: true
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            # This is capitalized differently (Fmrest vs FmRest) on purpose, so the
         
     | 
| 
      
 4 
     | 
    
         
            +
            # generator can be found as "fmrest:config"
         
     | 
| 
      
 5 
     | 
    
         
            +
            module Fmrest
         
     | 
| 
      
 6 
     | 
    
         
            +
              module Generators
         
     | 
| 
      
 7 
     | 
    
         
            +
                class ConfigGenerator < Rails::Generators::Base
         
     | 
| 
      
 8 
     | 
    
         
            +
                  source_root File.expand_path('templates', __dir__)
         
     | 
| 
      
 9 
     | 
    
         
            +
             
     | 
| 
      
 10 
     | 
    
         
            +
                  def copy_config_file
         
     | 
| 
      
 11 
     | 
    
         
            +
                    copy_file "fmrest.yml", "config/fmrest.yml"
         
     | 
| 
      
 12 
     | 
    
         
            +
                  end
         
     | 
| 
      
 13 
     | 
    
         
            +
             
     | 
| 
      
 14 
     | 
    
         
            +
                  def copy_initializer_file
         
     | 
| 
      
 15 
     | 
    
         
            +
                    copy_file "fmrest_initializer.rb", "config/initializers/fmrest.rb"
         
     | 
| 
      
 16 
     | 
    
         
            +
                  end
         
     | 
| 
      
 17 
     | 
    
         
            +
                end
         
     | 
| 
      
 18 
     | 
    
         
            +
              end
         
     | 
| 
      
 19 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,19 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # frozen_string_literal: true
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            # Use ActiveRecord token store
         
     | 
| 
      
 4 
     | 
    
         
            +
            FmRest.token_store = FmRest::TokenStore::ActiveRecord
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            # Use ActiveRecord token store with custom table name
         
     | 
| 
      
 7 
     | 
    
         
            +
            # FmRest.token_store = FmRest::TokenStore::ActiveRecord.new(table_name: "my_token_store")
         
     | 
| 
      
 8 
     | 
    
         
            +
             
     | 
| 
      
 9 
     | 
    
         
            +
            # Use Redis token store (requires redis gem)
         
     | 
| 
      
 10 
     | 
    
         
            +
            # FmRest.token_store = FmRest::TokenStore::Redis
         
     | 
| 
      
 11 
     | 
    
         
            +
             
     | 
| 
      
 12 
     | 
    
         
            +
            # Use Redis token store with custom prefix
         
     | 
| 
      
 13 
     | 
    
         
            +
            # FmRest.token_store = FmRest::TokenStore::Redis.new(prefix: "my-fmrest-token:")
         
     | 
| 
      
 14 
     | 
    
         
            +
             
     | 
| 
      
 15 
     | 
    
         
            +
            # Use Moneta token store (requires moneta gem)
         
     | 
| 
      
 16 
     | 
    
         
            +
            # FmRest.token_store = FmRest::TokenStore::Moneta.new(backend: )
         
     | 
| 
      
 17 
     | 
    
         
            +
             
     | 
| 
      
 18 
     | 
    
         
            +
            # Use Memory token store (not suitable for production)
         
     | 
| 
      
 19 
     | 
    
         
            +
            # FmRest.token_store = FmRest::TokenStore::Memory
         
     | 
| 
         @@ -0,0 +1,15 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # frozen_string_literal: true
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            # This is capitalized differently (Fmrest vs FmRest) on purpose, so the
         
     | 
| 
      
 4 
     | 
    
         
            +
            # generator can be found as "fmrest:config"
         
     | 
| 
      
 5 
     | 
    
         
            +
            module Fmrest
         
     | 
| 
      
 6 
     | 
    
         
            +
              module Generators
         
     | 
| 
      
 7 
     | 
    
         
            +
                class ModelGenerator < Rails::Generators::NamedBase
         
     | 
| 
      
 8 
     | 
    
         
            +
                  source_root File.expand_path('templates', __dir__)
         
     | 
| 
      
 9 
     | 
    
         
            +
             
     | 
| 
      
 10 
     | 
    
         
            +
                  def create_model_file
         
     | 
| 
      
 11 
     | 
    
         
            +
                    template "model.rb", "app/models/#{file_name}.rb"
         
     | 
| 
      
 12 
     | 
    
         
            +
                  end
         
     | 
| 
      
 13 
     | 
    
         
            +
                end
         
     | 
| 
      
 14 
     | 
    
         
            +
              end
         
     | 
| 
      
 15 
     | 
    
         
            +
            end
         
     | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,23 +1,20 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: fmrest-core
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 0. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 0.22.0
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors:
         
     | 
| 
       7 
7 
     | 
    
         
             
            - Pedro Carbajal
         
     | 
| 
       8 
8 
     | 
    
         
             
            autorequire:
         
     | 
| 
       9 
9 
     | 
    
         
             
            bindir: exe
         
     | 
| 
       10 
10 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       11 
     | 
    
         
            -
            date:  
     | 
| 
      
 11 
     | 
    
         
            +
            date: 2022-06-24 00:00:00.000000000 Z
         
     | 
| 
       12 
12 
     | 
    
         
             
            dependencies:
         
     | 
| 
       13 
13 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       14 
14 
     | 
    
         
             
              name: faraday
         
     | 
| 
       15 
15 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
       16 
16 
     | 
    
         
             
                requirements:
         
     | 
| 
       17 
17 
     | 
    
         
             
                - - ">="
         
     | 
| 
       18 
     | 
    
         
            -
                  - !ruby/object:Gem::Version
         
     | 
| 
       19 
     | 
    
         
            -
                    version: 1.8.0
         
     | 
| 
       20 
     | 
    
         
            -
                - - "<"
         
     | 
| 
       21 
18 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       22 
19 
     | 
    
         
             
                    version: '2.0'
         
     | 
| 
       23 
20 
     | 
    
         
             
              type: :runtime
         
     | 
| 
         @@ -25,31 +22,22 @@ dependencies: 
     | 
|
| 
       25 
22 
     | 
    
         
             
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
       26 
23 
     | 
    
         
             
                requirements:
         
     | 
| 
       27 
24 
     | 
    
         
             
                - - ">="
         
     | 
| 
       28 
     | 
    
         
            -
                  - !ruby/object:Gem::Version
         
     | 
| 
       29 
     | 
    
         
            -
                    version: 1.8.0
         
     | 
| 
       30 
     | 
    
         
            -
                - - "<"
         
     | 
| 
       31 
25 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       32 
26 
     | 
    
         
             
                    version: '2.0'
         
     | 
| 
       33 
27 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       34 
     | 
    
         
            -
              name:  
     | 
| 
      
 28 
     | 
    
         
            +
              name: faraday-multipart
         
     | 
| 
       35 
29 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
       36 
30 
     | 
    
         
             
                requirements:
         
     | 
| 
       37 
31 
     | 
    
         
             
                - - ">="
         
     | 
| 
       38 
32 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       39 
     | 
    
         
            -
                    version: 0 
     | 
| 
       40 
     | 
    
         
            -
                - - "<"
         
     | 
| 
       41 
     | 
    
         
            -
                  - !ruby/object:Gem::Version
         
     | 
| 
       42 
     | 
    
         
            -
                    version: '2.0'
         
     | 
| 
      
 33 
     | 
    
         
            +
                    version: '0'
         
     | 
| 
       43 
34 
     | 
    
         
             
              type: :runtime
         
     | 
| 
       44 
35 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       45 
36 
     | 
    
         
             
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
       46 
37 
     | 
    
         
             
                requirements:
         
     | 
| 
       47 
38 
     | 
    
         
             
                - - ">="
         
     | 
| 
       48 
39 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       49 
     | 
    
         
            -
                    version: 0 
     | 
| 
       50 
     | 
    
         
            -
                - - "<"
         
     | 
| 
       51 
     | 
    
         
            -
                  - !ruby/object:Gem::Version
         
     | 
| 
       52 
     | 
    
         
            -
                    version: '2.0'
         
     | 
| 
      
 40 
     | 
    
         
            +
                    version: '0'
         
     | 
| 
       53 
41 
     | 
    
         
             
            description: fmrest-core is a FileMaker Data API client built with Faraday. It handles
         
     | 
| 
       54 
42 
     | 
    
         
             
              authentication as well as providing many utilities for working with the Data API.
         
     | 
| 
       55 
43 
     | 
    
         
             
              An ORM library built on top of fmrest-core is also available.
         
     | 
| 
         @@ -89,6 +77,11 @@ files: 
     | 
|
| 
       89 
77 
     | 
    
         
             
            - lib/fmrest/v1/type_coercer.rb
         
     | 
| 
       90 
78 
     | 
    
         
             
            - lib/fmrest/v1/utils.rb
         
     | 
| 
       91 
79 
     | 
    
         
             
            - lib/fmrest/version.rb
         
     | 
| 
      
 80 
     | 
    
         
            +
            - lib/generators/fmrest/config/config_generator.rb
         
     | 
| 
      
 81 
     | 
    
         
            +
            - lib/generators/fmrest/config/templates/fmrest.yml
         
     | 
| 
      
 82 
     | 
    
         
            +
            - lib/generators/fmrest/config/templates/fmrest_initializer.rb
         
     | 
| 
      
 83 
     | 
    
         
            +
            - lib/generators/fmrest/model/model_generator.rb
         
     | 
| 
      
 84 
     | 
    
         
            +
            - lib/generators/fmrest/model/templates/model.rb
         
     | 
| 
       92 
85 
     | 
    
         
             
            homepage: https://github.com/beezwax/fmrest-ruby
         
     | 
| 
       93 
86 
     | 
    
         
             
            licenses:
         
     | 
| 
       94 
87 
     | 
    
         
             
            - MIT
         
     | 
| 
         @@ -108,7 +101,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement 
     | 
|
| 
       108 
101 
     | 
    
         
             
                - !ruby/object:Gem::Version
         
     | 
| 
       109 
102 
     | 
    
         
             
                  version: '0'
         
     | 
| 
       110 
103 
     | 
    
         
             
            requirements: []
         
     | 
| 
       111 
     | 
    
         
            -
            rubygems_version: 3. 
     | 
| 
      
 104 
     | 
    
         
            +
            rubygems_version: 3.3.3
         
     | 
| 
       112 
105 
     | 
    
         
             
            signing_key:
         
     | 
| 
       113 
106 
     | 
    
         
             
            specification_version: 4
         
     | 
| 
       114 
107 
     | 
    
         
             
            summary: FileMaker Data API client using Faraday, core library
         
     |