active_model_serializers 0.10.10 → 0.10.14
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 +38 -1
- data/README.md +18 -19
- data/lib/active_model/serializer/collection_serializer.rb +11 -2
- data/lib/active_model/serializer/concerns/caching.rb +2 -1
- data/lib/active_model/serializer/fieldset.rb +1 -1
- data/lib/active_model/serializer/reflection.rb +4 -4
- data/lib/active_model/serializer/version.rb +1 -1
- data/lib/active_model/serializer.rb +3 -2
- data/lib/active_model_serializers/adapter/json_api/pagination_links.rb +5 -1
- data/lib/active_model_serializers/model/caching.rb +26 -0
- data/lib/tasks/rubocop.rake +6 -1
- metadata +11 -60
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a13b22c104aeac8d5b49838651108a46258086be75cb7182bdbef7f601d26a6a
|
4
|
+
data.tar.gz: 7e850d63eae10d35ff5aab27ed5dc68ae812f4abc9a73f087b43ee6e45f1daf9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: fab668ed255d0dfe2ad31b0b23209cfb2abbbcbd37812ffa4b1cbfb94990f54d1c422891a7a2559afe3df763547a25adafd1e817a9fda88303be313ecf7932de
|
7
|
+
data.tar.gz: 7938ab426800e33de45f3bf5b75f65941178fc7bf5416ac06363125cee8f66dcce53068dce1298cb40c07a90ac3348df69711e73f3e030d3b1e0b06b2a3d9f34
|
data/CHANGELOG.md
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
## 0.10.x
|
2
2
|
|
3
|
-
### [master (unreleased)](https://github.com/rails-api/active_model_serializers/compare/v0.10.
|
3
|
+
### [master (unreleased)](https://github.com/rails-api/active_model_serializers/compare/v0.10.14...0-10-stable)
|
4
4
|
|
5
5
|
Breaking changes:
|
6
6
|
|
@@ -10,6 +10,43 @@ Fixes:
|
|
10
10
|
|
11
11
|
Misc:
|
12
12
|
|
13
|
+
### [v0.10.14 (2023-10-05)](https://github.com/rails-api/active_model_serializers/compare/v0.10.13...v0.10.14)
|
14
|
+
|
15
|
+
Breaking changes:
|
16
|
+
|
17
|
+
Features:
|
18
|
+
|
19
|
+
Fixes:
|
20
|
+
- [#2427](https://github.com/rails-api/active_model_serializers/pull/2427) Fix checking of method defined or not (@y-yagi)
|
21
|
+
|
22
|
+
Misc:
|
23
|
+
- [#2453](https://github.com/rails-api/active_model_serializers/pull/2453) Update gem requirement to allow Rails 7.1 (@schinery, @mediafinger)
|
24
|
+
- [#2451](https://github.com/rails-api/active_model_serializers/pull/2451) Upgrade to Ubuntu 22.04 on Github Actions (@wasifhossain)
|
25
|
+
- [#2442](https://github.com/rails-api/active_model_serializers/pull/2442) Remove travis settings (@ohbarye)
|
26
|
+
|
27
|
+
### [v0.10.13 (2022-10-13)](https://github.com/rails-api/active_model_serializers/compare/v0.10.12...v0.10.13)
|
28
|
+
|
29
|
+
Fixes:
|
30
|
+
|
31
|
+
- [#2399](https://github.com/rails-api/active_model_serializers/pull/2399) Handles edge case where requested current_page > total_pages (@f3z0)
|
32
|
+
|
33
|
+
### [v0.10.12 (2020-12-10)](https://github.com/rails-api/active_model_serializers/compare/v0.10.11...v0.10.12)
|
34
|
+
|
35
|
+
Fixes:
|
36
|
+
|
37
|
+
- [#2398](https://github.com/rails-api/active_model_serializers/pull/2398) Update rails dependency to < 6.2 (@ritikesh)
|
38
|
+
|
39
|
+
### [v0.10.11 (2020-12-04)](https://github.com/rails-api/active_model_serializers/compare/v0.10.10...v0.10.11)
|
40
|
+
|
41
|
+
Features:
|
42
|
+
|
43
|
+
- [#2361](https://github.com/rails-api/active_model_serializers/pull/2361) Add `ActiveModelSerializers.config.use_sha1_digests` to allow customization of the hashing algorithm used for serializer caching (@alexzherdev)
|
44
|
+
|
45
|
+
Fixes:
|
46
|
+
|
47
|
+
- [#2344](https://github.com/rails-api/active_model_serializers/pull/2344) Fixes #2341 introduced since #2223 (@wasifhossain)
|
48
|
+
- [#2395](https://github.com/rails-api/active_model_serializers/pull/2395) remove explicit require for thread_safe (@ritikesh)
|
49
|
+
|
13
50
|
### [v0.10.10 (2019-07-13)](https://github.com/rails-api/active_model_serializers/compare/v0.10.9...v0.10.10)
|
14
51
|
|
15
52
|
Fixes:
|
data/README.md
CHANGED
@@ -4,8 +4,8 @@
|
|
4
4
|
<tr>
|
5
5
|
<td>Build Status</td>
|
6
6
|
<td>
|
7
|
-
<a href="https://
|
8
|
-
<a href="https://ci.appveyor.com/project/
|
7
|
+
<a href="https://github.com/rails-api/active_model_serializers/actions"><img src="https://github.com/rails-api/active_model_serializers/actions/workflows/ci.yml/badge.svg?branch=0-10-stable" alt="Build Status" ></a>
|
8
|
+
<a href="https://ci.appveyor.com/project/bf4/active-model-serializers/branch/0-10-stable"><img src="https://ci.appveyor.com/api/projects/status/x6xdjydutm54gvyt/branch/master?svg=true" alt="Build status"></a>
|
9
9
|
</td>
|
10
10
|
</tr>
|
11
11
|
<tr>
|
@@ -13,7 +13,6 @@
|
|
13
13
|
<td>
|
14
14
|
<a href="https://codeclimate.com/github/rails-api/active_model_serializers"><img src="https://codeclimate.com/github/rails-api/active_model_serializers/badges/gpa.svg" alt="Code Quality"></a>
|
15
15
|
<a href="https://codebeat.co/projects/github-com-rails-api-active_model_serializers"><img src="https://codebeat.co/badges/a9ab35fa-8b5a-4680-9d4e-a81f9a55ebcd" alt="codebeat" ></a>
|
16
|
-
<a href="https://codeclimate.com/github/rails-api/active_model_serializers/coverage"><img src="https://codeclimate.com/github/rails-api/active_model_serializers/badges/coverage.svg" alt="Test Coverage"></a>
|
17
16
|
</td>
|
18
17
|
</tr>
|
19
18
|
<tr>
|
@@ -41,7 +40,7 @@ these methods to the adapter.)
|
|
41
40
|
|
42
41
|
By default ActiveModelSerializers will use the **Attributes Adapter** (no JSON root).
|
43
42
|
But we strongly advise you to use **JsonApi Adapter**, which
|
44
|
-
follows 1.0 of the format specified in [jsonapi.org/format](
|
43
|
+
follows 1.0 of the format specified in [jsonapi.org/format](https://jsonapi.org/format).
|
45
44
|
Check how to change the adapter in the sections below.
|
46
45
|
|
47
46
|
`0.10.x` is **not** backward compatible with `0.9.x` nor `0.8.x`.
|
@@ -75,9 +74,9 @@ More information is available in the [Guides](docs) and
|
|
75
74
|
If you find a bug, please report an [Issue](https://github.com/rails-api/active_model_serializers/issues/new)
|
76
75
|
and see our [contributing guide](CONTRIBUTING.md).
|
77
76
|
|
78
|
-
If you have a question, please [post to Stack Overflow](
|
77
|
+
If you have a question, please [post to Stack Overflow](https://stackoverflow.com/questions/tagged/active-model-serializers).
|
79
78
|
|
80
|
-
If you'd like to chat, we have a [community slack](
|
79
|
+
If you'd like to chat, we have a [community slack](https://amserializers.herokuapp.com).
|
81
80
|
|
82
81
|
Thanks!
|
83
82
|
|
@@ -87,14 +86,14 @@ If you're reading this at https://github.com/rails-api/active_model_serializers
|
|
87
86
|
reading documentation for our `master`, which may include features that have not
|
88
87
|
been released yet. Please see below for the documentation relevant to you.
|
89
88
|
|
90
|
-
- [0.10 (
|
91
|
-
- [0.10.
|
92
|
-
|
93
|
-
|
89
|
+
- [0.10 (0-10-stable) Documentation](https://github.com/rails-api/active_model_serializers/tree/0-10-stable)
|
90
|
+
- [0.10.10 (latest release) Documentation](https://github.com/rails-api/active_model_serializers/tree/v0.10.10)
|
91
|
+
- [](https://www.rubydoc.info/gems/active_model_serializers/0.10.10)
|
92
|
+
- [Guides](docs)
|
94
93
|
- [0.9 (0-9-stable) Documentation](https://github.com/rails-api/active_model_serializers/tree/0-9-stable)
|
95
|
-
|
94
|
+
- [](https://www.rubydoc.info/gems/active_model_serializers/0.9.7)
|
96
95
|
- [0.8 (0-8-stable) Documentation](https://github.com/rails-api/active_model_serializers/tree/0-8-stable)
|
97
|
-
|
96
|
+
- [](https://www.rubydoc.info/gems/active_model_serializers/0.8.4)
|
98
97
|
|
99
98
|
|
100
99
|
## High-level behavior
|
@@ -171,12 +170,12 @@ The original design is also available [here](https://github.com/rails-api/active
|
|
171
170
|
|
172
171
|
### ActiveModel::Serializer
|
173
172
|
|
174
|
-
An **`ActiveModel::Serializer`** wraps a [serializable resource](https://github.com/rails/rails/blob/
|
173
|
+
An **`ActiveModel::Serializer`** wraps a [serializable resource](https://github.com/rails/rails/blob/master/activemodel/lib/active_model/serialization.rb)
|
175
174
|
and exposes an `attributes` method, among a few others.
|
176
175
|
It allows you to specify which attributes and associations should be represented in the serializatation of the resource.
|
177
176
|
It requires an adapter to transform its attributes into a JSON document; it cannot be serialized itself.
|
178
177
|
It may be useful to think of it as a
|
179
|
-
[presenter](
|
178
|
+
[presenter](https://blog.steveklabnik.com/posts/2011-09-09-better-ruby-presenters).
|
180
179
|
|
181
180
|
#### ActiveModel::CollectionSerializer
|
182
181
|
|
@@ -188,7 +187,7 @@ and, if there is no serializer, primitives.
|
|
188
187
|
The **`ActiveModelSerializers::Adapter::Base`** describes the structure of the JSON document generated from a
|
189
188
|
serializer. For example, the `Attributes` example represents each serializer as its
|
190
189
|
unmodified attributes. The `JsonApi` adapter represents the serializer as a [JSON
|
191
|
-
API](
|
190
|
+
API](https://jsonapi.org/) document.
|
192
191
|
|
193
192
|
### ActiveModelSerializers::SerializableResource
|
194
193
|
|
@@ -229,7 +228,7 @@ High-level overview:
|
|
229
228
|
- `:each_serializer` specifies the serializer for each resource in the collection.
|
230
229
|
- For a **single resource**, the `:serializer` option is the resource serializer.
|
231
230
|
- Options are partitioned in serializer options and adapter options. Keys for adapter options are specified by
|
232
|
-
[`ADAPTER_OPTION_KEYS`](
|
231
|
+
[`ADAPTER_OPTION_KEYS`](lib/active_model_serializers/serializable_resource.rb#L5).
|
233
232
|
The remaining options are serializer options.
|
234
233
|
|
235
234
|
Details:
|
@@ -254,7 +253,7 @@ Details:
|
|
254
253
|
2. `adapter_instance = ActiveModel::Serializer::Adapter.create(serializer_instance, adapter_opts)`
|
255
254
|
1. **ActiveModel::Serializer::CollectionSerializer#new**
|
256
255
|
1. If the `serializer_instance` was a `CollectionSerializer` and the `:serializer` serializer_opts
|
257
|
-
is present, then [that serializer is passed into each resource](https://github.com/rails-api/active_model_serializers/blob/
|
256
|
+
is present, then [that serializer is passed into each resource](https://github.com/rails-api/active_model_serializers/blob/0-10-stable/lib/active_model/serializer/collection_serializer.rb#L77-L79).
|
258
257
|
1. **ActiveModel::Serializer#attributes** is used by the adapter to get the attributes for
|
259
258
|
resource as defined by the serializer.
|
260
259
|
|
@@ -270,7 +269,7 @@ to know about, but not part of ActiveModelSerializers.)
|
|
270
269
|
[(code)](lib/active_model/serializer/lint.rb).
|
271
270
|
|
272
271
|
ActiveModelSerializers provides a
|
273
|
-
[`ActiveModelSerializers::Model`](
|
272
|
+
[`ActiveModelSerializers::Model`](lib/active_model_serializers/model.rb),
|
274
273
|
which is a simple serializable PORO (Plain-Old Ruby Object).
|
275
274
|
|
276
275
|
`ActiveModelSerializers::Model` may be used either as a reference implementation, or in production code.
|
@@ -298,7 +297,7 @@ ActiveModelSerializers::SerializableResource.new(MyModel.new(level: 'awesome'),
|
|
298
297
|
|
299
298
|
## Semantic Versioning
|
300
299
|
|
301
|
-
This project adheres to [semver](
|
300
|
+
This project adheres to [semver](https://semver.org/)
|
302
301
|
|
303
302
|
## Contributing
|
304
303
|
|
@@ -48,8 +48,11 @@ module ActiveModel
|
|
48
48
|
key ||= object.respond_to?(:name) ? object.name && object.name.underscore : nil
|
49
49
|
# 4. key may be nil for empty collection and no serializer option
|
50
50
|
key &&= key.pluralize
|
51
|
-
|
52
|
-
|
51
|
+
if raise_cannot_infer_root_key_error?
|
52
|
+
# 5. fail if the key cannot be determined
|
53
|
+
key || fail(CannotInferRootKeyError, 'Cannot infer root key from collection type. Please specify the root or each_serializer option, or render a JSON String')
|
54
|
+
end
|
55
|
+
key
|
53
56
|
end
|
54
57
|
# rubocop:enable Metrics/CyclomaticComplexity
|
55
58
|
|
@@ -60,12 +63,18 @@ module ActiveModel
|
|
60
63
|
object.respond_to?(:size)
|
61
64
|
end
|
62
65
|
|
66
|
+
class CannotInferRootKeyError < StandardError; end
|
67
|
+
|
63
68
|
protected
|
64
69
|
|
65
70
|
attr_reader :serializers, :options
|
66
71
|
|
67
72
|
private
|
68
73
|
|
74
|
+
def raise_cannot_infer_root_key_error?
|
75
|
+
ActiveModelSerializers.config.raise_cannot_infer_root_key_error
|
76
|
+
end
|
77
|
+
|
69
78
|
def serializers_from_resources
|
70
79
|
serializer_context_class = options.fetch(:serializer_context_class, ActiveModel::Serializer)
|
71
80
|
object.map do |resource|
|
@@ -56,7 +56,8 @@ module ActiveModel
|
|
56
56
|
def digest_caller_file(caller_line)
|
57
57
|
serializer_file_path = caller_line[CALLER_FILE]
|
58
58
|
serializer_file_contents = IO.read(serializer_file_path)
|
59
|
-
Digest::MD5
|
59
|
+
algorithm = ActiveModelSerializers.config.use_sha1_digests ? Digest::SHA1 : Digest::MD5
|
60
|
+
algorithm.hexdigest(serializer_file_contents)
|
60
61
|
rescue TypeError, Errno::ENOENT
|
61
62
|
warn <<-EOF.strip_heredoc
|
62
63
|
Cannot digest non-existent file: '#{caller_line}'.
|
@@ -87,8 +87,8 @@ module ActiveModel
|
|
87
87
|
# meta ids: ids
|
88
88
|
# end
|
89
89
|
# end
|
90
|
-
def link(name, value = nil)
|
91
|
-
options[:links][name] = block_given? ?
|
90
|
+
def link(name, value = nil, &block)
|
91
|
+
options[:links][name] = block_given? ? block : value
|
92
92
|
:nil
|
93
93
|
end
|
94
94
|
|
@@ -102,8 +102,8 @@ module ActiveModel
|
|
102
102
|
# href object.blog.id.to_s
|
103
103
|
# meta(id: object.blog.id)
|
104
104
|
# end
|
105
|
-
def meta(value = nil)
|
106
|
-
options[:meta] = block_given? ?
|
105
|
+
def meta(value = nil, &block)
|
106
|
+
options[:meta] = block_given? ? block : value
|
107
107
|
:nil
|
108
108
|
end
|
109
109
|
|
@@ -1,6 +1,5 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require 'thread_safe'
|
4
3
|
require 'jsonapi/include_directive'
|
5
4
|
require 'active_model/serializer/collection_serializer'
|
6
5
|
require 'active_model/serializer/array_serializer'
|
@@ -73,7 +72,7 @@ module ActiveModel
|
|
73
72
|
# Used to cache serializer name => serializer class
|
74
73
|
# when looked up by Serializer.get_serializer_for.
|
75
74
|
def self.serializers_cache
|
76
|
-
@serializers_cache ||=
|
75
|
+
@serializers_cache ||= Concurrent::Map.new
|
77
76
|
end
|
78
77
|
|
79
78
|
# @api private
|
@@ -147,6 +146,8 @@ module ActiveModel
|
|
147
146
|
config.jsonapi_include_toplevel_object = false
|
148
147
|
config.jsonapi_use_foreign_key_on_belongs_to_relationship = false
|
149
148
|
config.include_data_default = true
|
149
|
+
# Raise ActiveModel::Serializer::CollectionSerializer::CannotInferRootKeyError when cannot infer root key from collection type
|
150
|
+
config.raise_cannot_infer_root_key_error = true
|
150
151
|
|
151
152
|
# For configuring how serializers are found.
|
152
153
|
# This should be an array of procs.
|
@@ -55,11 +55,15 @@ module ActiveModelSerializers
|
|
55
55
|
|
56
56
|
def prev_page_url
|
57
57
|
return nil if collection.current_page == FIRST_PAGE
|
58
|
+
if collection.current_page > collection.total_pages
|
59
|
+
return url_for_page(collection.total_pages)
|
60
|
+
end
|
58
61
|
url_for_page(collection.current_page - FIRST_PAGE)
|
59
62
|
end
|
60
63
|
|
61
64
|
def next_page_url
|
62
|
-
return nil if collection.total_pages == 0 ||
|
65
|
+
return nil if collection.total_pages == 0 ||
|
66
|
+
collection.current_page >= collection.total_pages
|
63
67
|
url_for_page(collection.next_page)
|
64
68
|
end
|
65
69
|
|
@@ -0,0 +1,26 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
module ActiveModelSerializers
|
3
|
+
class Model
|
4
|
+
module Caching
|
5
|
+
extend ActiveSupport::Concern
|
6
|
+
|
7
|
+
included do
|
8
|
+
attr_writer :updated_at
|
9
|
+
attributes :id
|
10
|
+
end
|
11
|
+
|
12
|
+
# Defaults to the downcased model name and updated_at
|
13
|
+
def cache_key
|
14
|
+
ActiveSupport::Cache.expand_cache_key([
|
15
|
+
self.class.model_name.name.downcase,
|
16
|
+
"#{id}-#{updated_at.strftime('%Y%m%d%H%M%S%9N')}"
|
17
|
+
].compact)
|
18
|
+
end
|
19
|
+
|
20
|
+
# Defaults to the time the serializer file was modified.
|
21
|
+
def updated_at
|
22
|
+
defined?(@updated_at) ? @updated_at : File.mtime(__FILE__)
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
data/lib/tasks/rubocop.rake
CHANGED
@@ -31,7 +31,12 @@ else
|
|
31
31
|
]
|
32
32
|
desc 'Execute rubocop'
|
33
33
|
RuboCop::RakeTask.new(:rubocop) do |task|
|
34
|
-
task.options = [
|
34
|
+
task.options = [
|
35
|
+
('--rails' if Gem::Version.new(RuboCop::Version.version) < Gem::Version.new('0.72.0')),
|
36
|
+
'--display-cop-names',
|
37
|
+
'--display-style-guide',
|
38
|
+
['--config', RUBY_VERSION < '3.0' ? '.rubocop_v0.yml' : '.rubocop_v1.yml']
|
39
|
+
].compact
|
35
40
|
task.formatters = ['progress']
|
36
41
|
task.patterns = patterns
|
37
42
|
task.fail_on_error = true
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: active_model_serializers
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.10.
|
4
|
+
version: 0.10.14
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Steve Klabnik
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-10-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activemodel
|
@@ -17,9 +17,6 @@ dependencies:
|
|
17
17
|
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: '4.1'
|
20
|
-
- - "<"
|
21
|
-
- !ruby/object:Gem::Version
|
22
|
-
version: '6.1'
|
23
20
|
type: :runtime
|
24
21
|
prerelease: false
|
25
22
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -27,9 +24,6 @@ dependencies:
|
|
27
24
|
- - ">="
|
28
25
|
- !ruby/object:Gem::Version
|
29
26
|
version: '4.1'
|
30
|
-
- - "<"
|
31
|
-
- !ruby/object:Gem::Version
|
32
|
-
version: '6.1'
|
33
27
|
- !ruby/object:Gem::Dependency
|
34
28
|
name: actionpack
|
35
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -37,9 +31,6 @@ dependencies:
|
|
37
31
|
- - ">="
|
38
32
|
- !ruby/object:Gem::Version
|
39
33
|
version: '4.1'
|
40
|
-
- - "<"
|
41
|
-
- !ruby/object:Gem::Version
|
42
|
-
version: '6.1'
|
43
34
|
type: :runtime
|
44
35
|
prerelease: false
|
45
36
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -47,9 +38,6 @@ dependencies:
|
|
47
38
|
- - ">="
|
48
39
|
- !ruby/object:Gem::Version
|
49
40
|
version: '4.1'
|
50
|
-
- - "<"
|
51
|
-
- !ruby/object:Gem::Version
|
52
|
-
version: '6.1'
|
53
41
|
- !ruby/object:Gem::Dependency
|
54
42
|
name: railties
|
55
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -57,9 +45,6 @@ dependencies:
|
|
57
45
|
- - ">="
|
58
46
|
- !ruby/object:Gem::Version
|
59
47
|
version: '4.1'
|
60
|
-
- - "<"
|
61
|
-
- !ruby/object:Gem::Version
|
62
|
-
version: '6.1'
|
63
48
|
type: :development
|
64
49
|
prerelease: false
|
65
50
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -67,9 +52,6 @@ dependencies:
|
|
67
52
|
- - ">="
|
68
53
|
- !ruby/object:Gem::Version
|
69
54
|
version: '4.1'
|
70
|
-
- - "<"
|
71
|
-
- !ruby/object:Gem::Version
|
72
|
-
version: '6.1'
|
73
55
|
- !ruby/object:Gem::Dependency
|
74
56
|
name: minitest
|
75
57
|
requirement: !ruby/object:Gem::Requirement
|
@@ -131,9 +113,6 @@ dependencies:
|
|
131
113
|
- - ">="
|
132
114
|
- !ruby/object:Gem::Version
|
133
115
|
version: '4.1'
|
134
|
-
- - "<"
|
135
|
-
- !ruby/object:Gem::Version
|
136
|
-
version: '6.1'
|
137
116
|
type: :development
|
138
117
|
prerelease: false
|
139
118
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -141,9 +120,6 @@ dependencies:
|
|
141
120
|
- - ">="
|
142
121
|
- !ruby/object:Gem::Version
|
143
122
|
version: '4.1'
|
144
|
-
- - "<"
|
145
|
-
- !ruby/object:Gem::Version
|
146
|
-
version: '6.1'
|
147
123
|
- !ruby/object:Gem::Dependency
|
148
124
|
name: kaminari
|
149
125
|
requirement: !ruby/object:Gem::Requirement
|
@@ -182,30 +158,16 @@ dependencies:
|
|
182
158
|
name: bundler
|
183
159
|
requirement: !ruby/object:Gem::Requirement
|
184
160
|
requirements:
|
185
|
-
- - "
|
186
|
-
- !ruby/object:Gem::Version
|
187
|
-
version: '1.6'
|
188
|
-
type: :development
|
189
|
-
prerelease: false
|
190
|
-
version_requirements: !ruby/object:Gem::Requirement
|
191
|
-
requirements:
|
192
|
-
- - "~>"
|
193
|
-
- !ruby/object:Gem::Version
|
194
|
-
version: '1.6'
|
195
|
-
- !ruby/object:Gem::Dependency
|
196
|
-
name: simplecov
|
197
|
-
requirement: !ruby/object:Gem::Requirement
|
198
|
-
requirements:
|
199
|
-
- - "~>"
|
161
|
+
- - ">="
|
200
162
|
- !ruby/object:Gem::Version
|
201
|
-
version: '0
|
163
|
+
version: '0'
|
202
164
|
type: :development
|
203
165
|
prerelease: false
|
204
166
|
version_requirements: !ruby/object:Gem::Requirement
|
205
167
|
requirements:
|
206
|
-
- - "
|
168
|
+
- - ">="
|
207
169
|
- !ruby/object:Gem::Version
|
208
|
-
version: '0
|
170
|
+
version: '0'
|
209
171
|
- !ruby/object:Gem::Dependency
|
210
172
|
name: timecop
|
211
173
|
requirement: !ruby/object:Gem::Requirement
|
@@ -227,9 +189,6 @@ dependencies:
|
|
227
189
|
- - ">="
|
228
190
|
- !ruby/object:Gem::Version
|
229
191
|
version: '0.13'
|
230
|
-
- - "<"
|
231
|
-
- !ruby/object:Gem::Version
|
232
|
-
version: 0.19.1
|
233
192
|
type: :development
|
234
193
|
prerelease: false
|
235
194
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -237,9 +196,6 @@ dependencies:
|
|
237
196
|
- - ">="
|
238
197
|
- !ruby/object:Gem::Version
|
239
198
|
version: '0.13'
|
240
|
-
- - "<"
|
241
|
-
- !ruby/object:Gem::Version
|
242
|
-
version: 0.19.1
|
243
199
|
- !ruby/object:Gem::Dependency
|
244
200
|
name: json_schema
|
245
201
|
requirement: !ruby/object:Gem::Requirement
|
@@ -261,9 +217,6 @@ dependencies:
|
|
261
217
|
- - ">="
|
262
218
|
- !ruby/object:Gem::Version
|
263
219
|
version: '10.0'
|
264
|
-
- - "<"
|
265
|
-
- !ruby/object:Gem::Version
|
266
|
-
version: '12.0'
|
267
220
|
type: :development
|
268
221
|
prerelease: false
|
269
222
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -271,9 +224,6 @@ dependencies:
|
|
271
224
|
- - ">="
|
272
225
|
- !ruby/object:Gem::Version
|
273
226
|
version: '10.0'
|
274
|
-
- - "<"
|
275
|
-
- !ruby/object:Gem::Version
|
276
|
-
version: '12.0'
|
277
227
|
description: ActiveModel::Serializers allows you to generate your JSON in an object-oriented
|
278
228
|
and convention-driven manner.
|
279
229
|
email:
|
@@ -334,6 +284,7 @@ files:
|
|
334
284
|
- lib/active_model_serializers/logging.rb
|
335
285
|
- lib/active_model_serializers/lookup_chain.rb
|
336
286
|
- lib/active_model_serializers/model.rb
|
287
|
+
- lib/active_model_serializers/model/caching.rb
|
337
288
|
- lib/active_model_serializers/railtie.rb
|
338
289
|
- lib/active_model_serializers/register_jsonapi_renderer.rb
|
339
290
|
- lib/active_model_serializers/serializable_resource.rb
|
@@ -353,7 +304,7 @@ homepage: https://github.com/rails-api/active_model_serializers
|
|
353
304
|
licenses:
|
354
305
|
- MIT
|
355
306
|
metadata: {}
|
356
|
-
post_install_message:
|
307
|
+
post_install_message:
|
357
308
|
rdoc_options: []
|
358
309
|
require_paths:
|
359
310
|
- lib
|
@@ -368,8 +319,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
368
319
|
- !ruby/object:Gem::Version
|
369
320
|
version: '0'
|
370
321
|
requirements: []
|
371
|
-
rubygems_version: 3.
|
372
|
-
signing_key:
|
322
|
+
rubygems_version: 3.1.6
|
323
|
+
signing_key:
|
373
324
|
specification_version: 4
|
374
325
|
summary: Conventions-based JSON generation for Rails.
|
375
326
|
test_files: []
|