blueprinter 1.0.0 → 1.0.1
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 +3 -0
- data/lib/blueprinter/version.rb +1 -1
- data/lib/blueprinter/view_collection.rb +4 -3
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: cbfbe1f528a76df294a8a0a481287bae62501177d7ce4a61d9123b0f86b324ad
|
4
|
+
data.tar.gz: fd176efc51674471cf7626e8e88bb9bd67c7b6a4f3c9349be1f9526969abb1de
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1b8d633ae1d043fd0093a767da7bc75b37d771bbc1ea9188d28a2ae0645023f5c8cf54b20733f3d0b5d4f234df0ed017c850d3b5a2a8dae2f29f865dbd9bf6df
|
7
|
+
data.tar.gz: 8ec5c9f89365950a92ae56400898bf9b1a5b8e372905d6be66024b6f733d11b85cd23bf2374eccb0d82e21b25c377f3b67cef2514db7ffd9b378605986bb2ea7
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,6 @@
|
|
1
|
+
## 1.0.1 - 2024/01/19
|
2
|
+
* 🐛 [BUGFIX] Fixes an issue where serialization performance would become degraded when using a Blueprint that leverages transformers. See [#381](https://github.com/procore-oss/blueprinter/pull/381). Thanks to [@Pritilender](https://github.com/Pritilender).
|
3
|
+
|
1
4
|
## 1.0.0 - 2024/01/17
|
2
5
|
* 🚀 [BREAKING] Allow transformers to be included across views. See [README](https://github.com/procore-oss/blueprinter#transform-across-views), PR [#372](https://github.com/procore-oss/blueprinter/pull/372) and issue [#225](https://github.com/procore-oss/blueprinter/issues/225) for details. Note this changes the behavior of transformers which were previously only applied to the view they were defined on. Thanks to [@njbbaer](https://github.com/njbbaer) and [@bhooshiek-narendiran](https://github.com/bhooshiek-narendiran).
|
3
6
|
* 🚀 [FEATURE] Introduce extension API, with initial support for pre_render hook. See [#358](https://github.com/procore-oss/blueprinter/pull/358) for details. Thanks to [@jhollinger](https://github.com/jhollinger).
|
data/lib/blueprinter/version.rb
CHANGED
@@ -36,7 +36,7 @@ module Blueprinter
|
|
36
36
|
|
37
37
|
def transformers(view_name)
|
38
38
|
included_transformers = gather_transformers_from_included_views(view_name).reverse
|
39
|
-
all_transformers = views[:default].view_transformers
|
39
|
+
all_transformers = [*views[:default].view_transformers, *included_transformers].uniq
|
40
40
|
all_transformers.empty? ? Blueprinter.configuration.default_transformers : all_transformers
|
41
41
|
end
|
42
42
|
|
@@ -94,11 +94,12 @@ module Blueprinter
|
|
94
94
|
|
95
95
|
def gather_transformers_from_included_views(view_name)
|
96
96
|
current_view = views[view_name]
|
97
|
-
current_view.included_view_names.flat_map do |included_view_name|
|
97
|
+
already_included_transformers = current_view.included_view_names.flat_map do |included_view_name|
|
98
98
|
next [] if view_name == included_view_name
|
99
99
|
|
100
100
|
gather_transformers_from_included_views(included_view_name)
|
101
|
-
end
|
101
|
+
end
|
102
|
+
[*already_included_transformers, *current_view.view_transformers].uniq
|
102
103
|
end
|
103
104
|
end
|
104
105
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: blueprinter
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Procore Technologies, Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-01-
|
11
|
+
date: 2024-01-19 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: Blueprinter is a JSON Object Presenter for Ruby that takes business objects
|
14
14
|
and breaks them down into simple hashes and serializes them to JSON. It can be used
|
@@ -70,7 +70,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
70
70
|
- !ruby/object:Gem::Version
|
71
71
|
version: '0'
|
72
72
|
requirements: []
|
73
|
-
rubygems_version: 3.4.
|
73
|
+
rubygems_version: 3.4.19
|
74
74
|
signing_key:
|
75
75
|
specification_version: 4
|
76
76
|
summary: Simple Fast Declarative Serialization Library
|