json_serializers 2.0.3
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 +7 -0
- data/CHANGELOG.md +61 -0
- data/README.md +699 -0
- data/lib/json_serializers/compat.rb +66 -0
- data/lib/json_serializers/controller_serialization.rb +32 -0
- data/lib/json_serializers/json_string_encoder.rb +41 -0
- data/lib/json_serializers/json_value.rb +34 -0
- data/lib/json_serializers/memo.rb +20 -0
- data/lib/json_serializers/serializer.rb +726 -0
- data/lib/json_serializers/setup.rb +31 -0
- data/lib/json_serializers/sugar.rb +17 -0
- data/lib/json_serializers/version.rb +5 -0
- data/lib/json_serializers.rb +6 -0
- metadata +61 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 829e876c75ea6ff4f5beeae718c4c27ca94a2b403ba362a4c48a1627652a1c2c
|
4
|
+
data.tar.gz: 1a2b9244118cce4467e1b0a63ac35fbb6166461f30f59d95a5abb8eca2d0c79b
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 17dba6268e2a51fa44a8ae4c27e179c263aa7bd83d59b9006ee9daca06de0ee44187cb38c559177c95dbd0337b56140c4058f940c7a512c85d73589e0442797d
|
7
|
+
data.tar.gz: 5b7592cce5be6e7c04ee8ebe17bd80511f44ca97f04f8332238fa54d2fbfa9cff70e99b9c20a8355a2afdb83cc96e716f0e9d20f8ee4e3fb0ac9f118ccd47720
|
data/CHANGELOG.md
ADDED
@@ -0,0 +1,61 @@
|
|
1
|
+
## Oj Serializers 2.0.3 (2023-04-19)
|
2
|
+
|
3
|
+
### Features ✨
|
4
|
+
|
5
|
+
- [Allow `key` and `unless` in AMS-compat mode](https://github.com/ElMassimo/oj_serializers/commit/5050710e199651cc2c0e9d9d6395f2c2ac9b1875)
|
6
|
+
|
7
|
+
### Fixes 🐞
|
8
|
+
|
9
|
+
- [Allow using `active_model_serializers` in associations](https://github.com/ElMassimo/oj_serializers/commit/501ed4014b564e6f103d2f52d15832fe6706d6a8)
|
10
|
+
|
11
|
+
## Oj Serializers 2.0.2 (2023-04-02)
|
12
|
+
|
13
|
+
### Features ✨
|
14
|
+
|
15
|
+
- [Automatically remove `?` when using `transform_keys :camelize`](https://github.com/ElMassimo/oj_serializers/commit/79758a0)
|
16
|
+
|
17
|
+
### Fixes 🐞
|
18
|
+
|
19
|
+
- [Error when defining attributes with options](https://github.com/ElMassimo/oj_serializers/commit/680ab47)
|
20
|
+
|
21
|
+
## Oj Serializers 2.0.1 (2023-04-02)
|
22
|
+
|
23
|
+
### Features ✨
|
24
|
+
|
25
|
+
- [Automatically mark `id` as an identifier (rendered first)](https://github.com/ElMassimo/oj_serializers/commit/c4c6de7)
|
26
|
+
- [Fail on typos in attribute and association options](https://github.com/ElMassimo/oj_serializers/commit/afd80ac)
|
27
|
+
|
28
|
+
### Fixes 🐞
|
29
|
+
|
30
|
+
- [Aliased attributes should be sorted by the output key](https://github.com/ElMassimo/oj_serializers/commit/fc6f4c1)
|
31
|
+
|
32
|
+
## [Oj Serializers 2.0.0 (2023-03-27)](https://github.com/ElMassimo/oj_serializers/pull/9)
|
33
|
+
|
34
|
+
### Features ✨
|
35
|
+
|
36
|
+
- Improved performance (20% to 40% faster than v1)
|
37
|
+
- Added `render_as_hash` to efficiently build a Hash from the serializer
|
38
|
+
- `transform_keys :camelize`: a built-in setting to convert keys, in a way that does not affect runtime performance
|
39
|
+
- `sort_keys_by :name`: allows to sort the response alphabetically, without affecting runtime performance
|
40
|
+
- `render` shortcut, unifying `one` and `many`
|
41
|
+
- `attribute` as an easier approach to define serializer attributes
|
42
|
+
|
43
|
+
### Breaking Changes
|
44
|
+
|
45
|
+
Since returning a `Hash` is more convenient than returning a `Oj::StringWriter`, and performance is comparable, `default_format :hash` is now the default.
|
46
|
+
|
47
|
+
The previous APIs will still be available as `one_as_json` and `many_as_json`, as well as `default_format :json` to make the library work like in version 1.
|
48
|
+
|
49
|
+
## Oj Serializers 1.0.2 (2023-03-01) ##
|
50
|
+
|
51
|
+
* [fix: avoid freezing `ALLOWED_INSTANCE_VARIABLES`](https://github.com/ElMassimo/oj_serializers/commit/ade0302)
|
52
|
+
|
53
|
+
|
54
|
+
## Oj Serializers 1.0.1 (2023-03-01) ##
|
55
|
+
|
56
|
+
* [fix: avoid caching instances of reloaded classes in development](https://github.com/ElMassimo/oj_serializers/commit/0bd928d64d159926acf6b4d57e3f08b12f6931ce)
|
57
|
+
|
58
|
+
|
59
|
+
## Oj Serializers 1.0.0 (2020-11-05) ##
|
60
|
+
|
61
|
+
* Initial Release.
|