fmrest 0.10.1 → 0.13.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (50) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +2 -0
  3. data/CHANGELOG.md +36 -0
  4. data/README.md +193 -761
  5. metadata +71 -98
  6. data/.gitignore +0 -26
  7. data/.rspec +0 -3
  8. data/.travis.yml +0 -5
  9. data/Gemfile +0 -3
  10. data/Rakefile +0 -6
  11. data/fmrest.gemspec +0 -38
  12. data/lib/fmrest.rb +0 -29
  13. data/lib/fmrest/errors.rb +0 -28
  14. data/lib/fmrest/spyke.rb +0 -21
  15. data/lib/fmrest/spyke/base.rb +0 -23
  16. data/lib/fmrest/spyke/container_field.rb +0 -59
  17. data/lib/fmrest/spyke/model.rb +0 -36
  18. data/lib/fmrest/spyke/model/associations.rb +0 -82
  19. data/lib/fmrest/spyke/model/attributes.rb +0 -171
  20. data/lib/fmrest/spyke/model/auth.rb +0 -35
  21. data/lib/fmrest/spyke/model/connection.rb +0 -74
  22. data/lib/fmrest/spyke/model/container_fields.rb +0 -25
  23. data/lib/fmrest/spyke/model/global_fields.rb +0 -40
  24. data/lib/fmrest/spyke/model/http.rb +0 -37
  25. data/lib/fmrest/spyke/model/orm.rb +0 -212
  26. data/lib/fmrest/spyke/model/serialization.rb +0 -91
  27. data/lib/fmrest/spyke/model/uri.rb +0 -30
  28. data/lib/fmrest/spyke/portal.rb +0 -55
  29. data/lib/fmrest/spyke/relation.rb +0 -359
  30. data/lib/fmrest/spyke/spyke_formatter.rb +0 -273
  31. data/lib/fmrest/spyke/validation_error.rb +0 -25
  32. data/lib/fmrest/string_date.rb +0 -220
  33. data/lib/fmrest/token_store.rb +0 -6
  34. data/lib/fmrest/token_store/active_record.rb +0 -74
  35. data/lib/fmrest/token_store/base.rb +0 -25
  36. data/lib/fmrest/token_store/memory.rb +0 -26
  37. data/lib/fmrest/token_store/moneta.rb +0 -41
  38. data/lib/fmrest/token_store/redis.rb +0 -45
  39. data/lib/fmrest/v1.rb +0 -21
  40. data/lib/fmrest/v1/connection.rb +0 -91
  41. data/lib/fmrest/v1/container_fields.rb +0 -114
  42. data/lib/fmrest/v1/dates.rb +0 -81
  43. data/lib/fmrest/v1/paths.rb +0 -47
  44. data/lib/fmrest/v1/raise_errors.rb +0 -57
  45. data/lib/fmrest/v1/token_session.rb +0 -142
  46. data/lib/fmrest/v1/token_store/active_record.rb +0 -13
  47. data/lib/fmrest/v1/token_store/memory.rb +0 -13
  48. data/lib/fmrest/v1/type_coercer.rb +0 -192
  49. data/lib/fmrest/v1/utils.rb +0 -95
  50. data/lib/fmrest/version.rb +0 -5
metadata CHANGED
@@ -1,83 +1,71 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fmrest
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.10.1
4
+ version: 0.13.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Pedro Carbajal
8
8
  autorequire:
9
- bindir: exe
9
+ bindir: bin
10
10
  cert_chain: []
11
- date: 2020-08-15 00:00:00.000000000 Z
11
+ date: 2021-02-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: faraday
14
+ name: fmrest-core
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ">="
18
- - !ruby/object:Gem::Version
19
- version: 0.9.0
20
- - - "<"
17
+ - - '='
21
18
  - !ruby/object:Gem::Version
22
- version: '2.0'
19
+ version: 0.13.1
23
20
  type: :runtime
24
21
  prerelease: false
25
22
  version_requirements: !ruby/object:Gem::Requirement
26
23
  requirements:
27
- - - ">="
24
+ - - '='
28
25
  - !ruby/object:Gem::Version
29
- version: 0.9.0
30
- - - "<"
31
- - !ruby/object:Gem::Version
32
- version: '2.0'
26
+ version: 0.13.1
33
27
  - !ruby/object:Gem::Dependency
34
- name: faraday_middleware
28
+ name: fmrest-spyke
35
29
  requirement: !ruby/object:Gem::Requirement
36
30
  requirements:
37
- - - ">="
38
- - !ruby/object:Gem::Version
39
- version: 0.9.1
40
- - - "<"
31
+ - - '='
41
32
  - !ruby/object:Gem::Version
42
- version: '2.0'
33
+ version: 0.13.1
43
34
  type: :runtime
44
35
  prerelease: false
45
36
  version_requirements: !ruby/object:Gem::Requirement
46
37
  requirements:
47
- - - ">="
48
- - !ruby/object:Gem::Version
49
- version: 0.9.1
50
- - - "<"
38
+ - - '='
51
39
  - !ruby/object:Gem::Version
52
- version: '2.0'
40
+ version: 0.13.1
53
41
  - !ruby/object:Gem::Dependency
54
42
  name: bundler
55
43
  requirement: !ruby/object:Gem::Requirement
56
44
  requirements:
57
- - - ">="
45
+ - - "~>"
58
46
  - !ruby/object:Gem::Version
59
- version: '0'
47
+ version: 2.2.0
60
48
  type: :development
61
49
  prerelease: false
62
50
  version_requirements: !ruby/object:Gem::Requirement
63
51
  requirements:
64
- - - ">="
52
+ - - "~>"
65
53
  - !ruby/object:Gem::Version
66
- version: '0'
54
+ version: 2.2.0
67
55
  - !ruby/object:Gem::Dependency
68
56
  name: rake
69
57
  requirement: !ruby/object:Gem::Requirement
70
58
  requirements:
71
- - - ">="
59
+ - - "~>"
72
60
  - !ruby/object:Gem::Version
73
- version: '0'
61
+ version: '13.0'
74
62
  type: :development
75
63
  prerelease: false
76
64
  version_requirements: !ruby/object:Gem::Requirement
77
65
  requirements:
78
- - - ">="
66
+ - - "~>"
79
67
  - !ruby/object:Gem::Version
80
- version: '0'
68
+ version: '13.0'
81
69
  - !ruby/object:Gem::Dependency
82
70
  name: rspec
83
71
  requirement: !ruby/object:Gem::Requirement
@@ -93,7 +81,7 @@ dependencies:
93
81
  - !ruby/object:Gem::Version
94
82
  version: '3.0'
95
83
  - !ruby/object:Gem::Dependency
96
- name: spyke
84
+ name: webmock
97
85
  requirement: !ruby/object:Gem::Requirement
98
86
  requirements:
99
87
  - - ">="
@@ -107,7 +95,7 @@ dependencies:
107
95
  - !ruby/object:Gem::Version
108
96
  version: '0'
109
97
  - !ruby/object:Gem::Dependency
110
- name: webmock
98
+ name: rexml
111
99
  requirement: !ruby/object:Gem::Requirement
112
100
  requirements:
113
101
  - - ">="
@@ -135,7 +123,7 @@ dependencies:
135
123
  - !ruby/object:Gem::Version
136
124
  version: '0'
137
125
  - !ruby/object:Gem::Dependency
138
- name: activerecord
126
+ name: yard
139
127
  requirement: !ruby/object:Gem::Requirement
140
128
  requirements:
141
129
  - - ">="
@@ -149,7 +137,7 @@ dependencies:
149
137
  - !ruby/object:Gem::Version
150
138
  version: '0'
151
139
  - !ruby/object:Gem::Dependency
152
- name: sqlite3
140
+ name: yard-activesupport-concern
153
141
  requirement: !ruby/object:Gem::Requirement
154
142
  requirements:
155
143
  - - ">="
@@ -163,35 +151,35 @@ dependencies:
163
151
  - !ruby/object:Gem::Version
164
152
  version: '0'
165
153
  - !ruby/object:Gem::Dependency
166
- name: mock_redis
154
+ name: activerecord
167
155
  requirement: !ruby/object:Gem::Requirement
168
156
  requirements:
169
- - - ">="
157
+ - - "~>"
170
158
  - !ruby/object:Gem::Version
171
- version: '0'
159
+ version: '6.0'
172
160
  type: :development
173
161
  prerelease: false
174
162
  version_requirements: !ruby/object:Gem::Requirement
175
163
  requirements:
176
- - - ">="
164
+ - - "~>"
177
165
  - !ruby/object:Gem::Version
178
- version: '0'
166
+ version: '6.0'
179
167
  - !ruby/object:Gem::Dependency
180
- name: moneta
168
+ name: sqlite3
181
169
  requirement: !ruby/object:Gem::Requirement
182
170
  requirements:
183
- - - ">="
171
+ - - "~>"
184
172
  - !ruby/object:Gem::Version
185
- version: '0'
173
+ version: 1.4.0
186
174
  type: :development
187
175
  prerelease: false
188
176
  version_requirements: !ruby/object:Gem::Requirement
189
177
  requirements:
190
- - - ">="
178
+ - - "~>"
191
179
  - !ruby/object:Gem::Version
192
- version: '0'
180
+ version: 1.4.0
193
181
  - !ruby/object:Gem::Dependency
194
- name: yard
182
+ name: mock_redis
195
183
  requirement: !ruby/object:Gem::Requirement
196
184
  requirements:
197
185
  - - ">="
@@ -205,7 +193,7 @@ dependencies:
205
193
  - !ruby/object:Gem::Version
206
194
  version: '0'
207
195
  - !ruby/object:Gem::Dependency
208
- name: yard-activesupport-concern
196
+ name: moneta
209
197
  requirement: !ruby/object:Gem::Requirement
210
198
  requirements:
211
199
  - - ">="
@@ -218,68 +206,52 @@ dependencies:
218
206
  - - ">="
219
207
  - !ruby/object:Gem::Version
220
208
  version: '0'
221
- description: FileMaker Data API client using Faraday, with optional ActiveRecord-like
222
- ORM based on Spyke
209
+ description: 'fmrest is just a wrapper for two other gems: fmrest-core and fmrest-spyke.'
223
210
  email:
224
211
  - pedro_c@beezwax.net
225
212
  executables: []
226
213
  extensions: []
227
214
  extra_rdoc_files: []
228
215
  files:
229
- - ".gitignore"
230
- - ".rspec"
231
- - ".travis.yml"
232
216
  - ".yardopts"
233
217
  - CHANGELOG.md
234
- - Gemfile
235
218
  - LICENSE.txt
236
219
  - README.md
237
- - Rakefile
238
- - fmrest.gemspec
239
- - lib/fmrest.rb
240
- - lib/fmrest/errors.rb
241
- - lib/fmrest/spyke.rb
242
- - lib/fmrest/spyke/base.rb
243
- - lib/fmrest/spyke/container_field.rb
244
- - lib/fmrest/spyke/model.rb
245
- - lib/fmrest/spyke/model/associations.rb
246
- - lib/fmrest/spyke/model/attributes.rb
247
- - lib/fmrest/spyke/model/auth.rb
248
- - lib/fmrest/spyke/model/connection.rb
249
- - lib/fmrest/spyke/model/container_fields.rb
250
- - lib/fmrest/spyke/model/global_fields.rb
251
- - lib/fmrest/spyke/model/http.rb
252
- - lib/fmrest/spyke/model/orm.rb
253
- - lib/fmrest/spyke/model/serialization.rb
254
- - lib/fmrest/spyke/model/uri.rb
255
- - lib/fmrest/spyke/portal.rb
256
- - lib/fmrest/spyke/relation.rb
257
- - lib/fmrest/spyke/spyke_formatter.rb
258
- - lib/fmrest/spyke/validation_error.rb
259
- - lib/fmrest/string_date.rb
260
- - lib/fmrest/token_store.rb
261
- - lib/fmrest/token_store/active_record.rb
262
- - lib/fmrest/token_store/base.rb
263
- - lib/fmrest/token_store/memory.rb
264
- - lib/fmrest/token_store/moneta.rb
265
- - lib/fmrest/token_store/redis.rb
266
- - lib/fmrest/v1.rb
267
- - lib/fmrest/v1/connection.rb
268
- - lib/fmrest/v1/container_fields.rb
269
- - lib/fmrest/v1/dates.rb
270
- - lib/fmrest/v1/paths.rb
271
- - lib/fmrest/v1/raise_errors.rb
272
- - lib/fmrest/v1/token_session.rb
273
- - lib/fmrest/v1/token_store/active_record.rb
274
- - lib/fmrest/v1/token_store/memory.rb
275
- - lib/fmrest/v1/type_coercer.rb
276
- - lib/fmrest/v1/utils.rb
277
- - lib/fmrest/version.rb
278
220
  homepage: https://github.com/beezwax/fmrest-ruby
279
221
  licenses:
280
222
  - MIT
281
223
  metadata: {}
282
- post_install_message:
224
+ post_install_message: |+
225
+ =======================================
226
+ Notes on upgrading from fmrest < 0.13
227
+ =======================================
228
+
229
+ From v0.13 onward fmrest becomes a wrapper for two other gems: fmrest-core and
230
+ fmrest-spyke.
231
+
232
+ If you're using FmRest::Spyke::Base in your project then you no
233
+ longer need to explicitly include spyke in your Gemfile, as it's now a hard
234
+ dependency of fmrest-spyke.
235
+
236
+ If you're not using FmRest::Spyke::Base and just want to use the Faraday
237
+ connection you may want to change your Gemfile to depend on fmrest-core
238
+ instead, to avoid including spyke as an useless dependency in your project.
239
+
240
+ =======================================
241
+ Notes on upgrading from fmrest < 0.12
242
+ =======================================
243
+
244
+ There's a small breaking change in fmrest 0.12 that will most likely not affect
245
+ you, but you may want to be aware of:
246
+
247
+ Previous to this version the record ID on an FmRest::Spyke::Base instance could
248
+ be set with `id=`. This caused problems in cases where a FileMaker layout had a
249
+ field named `id`, so `id=` got renamed to `__record_id=`. Setting the record ID
250
+ by hand however isn't something useful or that should be done at all, so it's
251
+ very unlikely that this change will affect your existing code at all.
252
+
253
+ Thanks for using fmrest-ruby!
254
+
283
255
  rdoc_options: []
284
256
  require_paths:
285
257
  - lib
@@ -297,5 +269,6 @@ requirements: []
297
269
  rubygems_version: 3.0.6
298
270
  signing_key:
299
271
  specification_version: 4
300
- summary: FileMaker Data API client using Faraday
272
+ summary: FileMaker Data API client
301
273
  test_files: []
274
+ ...
data/.gitignore DELETED
@@ -1,26 +0,0 @@
1
- *.gem
2
- *.rbc
3
- .bundle
4
- .config
5
- .yardoc
6
- Gemfile.lock
7
- InstalledFiles
8
- _yardoc
9
- coverage
10
- doc/
11
- lib/bundler/man
12
- pkg
13
- rdoc
14
- spec/reports
15
- test/tmp
16
- test/version_tmp
17
- tmp
18
- *.bundle
19
- *.so
20
- *.o
21
- *.a
22
- mkmf.log
23
- spec/db/*
24
-
25
- # rspec failure tracking
26
- .rspec_status
data/.rspec DELETED
@@ -1,3 +0,0 @@
1
- --format documentation
2
- --color
3
- --require spec_helper
data/.travis.yml DELETED
@@ -1,5 +0,0 @@
1
- sudo: false
2
- language: ruby
3
- rvm:
4
- - 2.3.3
5
- before_install: gem install bundler -v 1.16.1
data/Gemfile DELETED
@@ -1,3 +0,0 @@
1
- source "https://rubygems.org"
2
-
3
- gemspec
data/Rakefile DELETED
@@ -1,6 +0,0 @@
1
- require "bundler/gem_tasks"
2
- require "rspec/core/rake_task"
3
-
4
- RSpec::Core::RakeTask.new(:spec)
5
-
6
- task :default => :spec
data/fmrest.gemspec DELETED
@@ -1,38 +0,0 @@
1
- lib = File.expand_path("../lib", __FILE__)
2
- $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
3
- require "fmrest/version"
4
-
5
- Gem::Specification.new do |spec|
6
- spec.name = "fmrest"
7
- spec.version = FmRest::VERSION
8
- spec.authors = ["Pedro Carbajal"]
9
- spec.email = ["pedro_c@beezwax.net"]
10
-
11
- spec.summary = %q{FileMaker Data API client using Faraday}
12
- spec.description = %q{FileMaker Data API client using Faraday, with optional ActiveRecord-like ORM based on Spyke}
13
- spec.homepage = "https://github.com/beezwax/fmrest-ruby"
14
- spec.license = "MIT"
15
-
16
- spec.files = `git ls-files -z`.split("\x0").reject do |f|
17
- f.match(%r{^(test|spec|features|bin)/})
18
- end
19
- spec.bindir = "exe"
20
- spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
21
- spec.require_paths = ["lib"]
22
-
23
- spec.add_dependency 'faraday', '>= 0.9.0', '< 2.0'
24
- spec.add_dependency 'faraday_middleware', '>= 0.9.1', '< 2.0'
25
-
26
- spec.add_development_dependency "bundler"
27
- spec.add_development_dependency "rake"
28
- spec.add_development_dependency "rspec", "~> 3.0"
29
- spec.add_development_dependency "spyke"
30
- spec.add_development_dependency "webmock"
31
- spec.add_development_dependency "pry-byebug"
32
- spec.add_development_dependency "activerecord", ENV["ACTIVE_RECORD_VERSION"]
33
- spec.add_development_dependency "sqlite3", ENV["SQLITE3_VERSION"]
34
- spec.add_development_dependency "mock_redis"
35
- spec.add_development_dependency "moneta"
36
- spec.add_development_dependency "yard"
37
- spec.add_development_dependency "yard-activesupport-concern"
38
- end
data/lib/fmrest.rb DELETED
@@ -1,29 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "faraday"
4
- require "faraday_middleware"
5
-
6
- require "fmrest/version"
7
- require "fmrest/v1"
8
-
9
- module FmRest
10
- class << self
11
- attr_accessor :token_store
12
-
13
- attr_writer :default_connection_settings
14
-
15
- def default_connection_settings
16
- @default_connection_settings || {}
17
- end
18
-
19
- def config=(connection_hash)
20
- warn "[DEPRECATION] `FmRest.config=` is deprecated, use `FmRest.default_connection_settings=` instead"
21
- self.default_connection_settings = connection_hash
22
- end
23
-
24
- def config
25
- warn "[DEPRECATION] `FmRest.config` is deprecated, use `FmRest.default_connection_settings` instead"
26
- default_connection_settings
27
- end
28
- end
29
- end
data/lib/fmrest/errors.rb DELETED
@@ -1,28 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module FmRest
4
- class Error < StandardError; end
5
-
6
- class APIError < Error
7
- attr_reader :code
8
-
9
- def initialize(code, message = nil)
10
- @code = code
11
- super("FileMaker Data API responded with error #{code}: #{message}")
12
- end
13
- end
14
-
15
- class APIError::UnknownError < APIError; end # error code -1
16
- class APIError::ResourceMissingError < APIError; end # error codes 100..199
17
- class APIError::RecordMissingError < APIError::ResourceMissingError; end
18
- class APIError::AccountError < APIError; end # error codes 200..299
19
- class APIError::LockError < APIError; end # error codes 300..399
20
- class APIError::ParameterError < APIError; end # error codes 400..499
21
- class APIError::NoMatchingRecordsError < APIError::ParameterError; end
22
- class APIError::ValidationError < APIError; end # error codes 500..599
23
- class APIError::SystemError < APIError; end # error codes 800..899
24
- class APIError::ScriptError < APIError; end # error codes 1200..1299
25
- class APIError::ODBCError < APIError; end # error codes 1400..1499
26
-
27
- class ContainerFieldError < Error; end
28
- end