panko_serializer 0.8.3 → 0.8.5

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.
Files changed (71) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +4 -4
  3. data/ext/panko_serializer/attributes_writer/active_record.c +2 -29
  4. data/ext/panko_serializer/attributes_writer/type_cast/type_cast.c +24 -13
  5. data/lib/panko/version.rb +1 -1
  6. metadata +3 -72
  7. data/.clang-format +0 -3
  8. data/.github/dependabot.yml +0 -6
  9. data/.github/workflows/docs.yml +0 -39
  10. data/.github/workflows/lint.yml +0 -30
  11. data/.github/workflows/ruby.yml +0 -51
  12. data/.gitignore +0 -20
  13. data/.rspec +0 -2
  14. data/.rubocop.yml +0 -37
  15. data/Appraisals +0 -29
  16. data/Gemfile +0 -36
  17. data/Rakefile +0 -93
  18. data/benchmarks/BENCHMARKS.md +0 -48
  19. data/benchmarks/allocs.rb +0 -23
  20. data/benchmarks/app.rb +0 -11
  21. data/benchmarks/benchmarking_support.rb +0 -44
  22. data/benchmarks/bm_ams_0_10.rb +0 -43
  23. data/benchmarks/bm_object_writer.rb +0 -65
  24. data/benchmarks/bm_panko_json.rb +0 -60
  25. data/benchmarks/bm_panko_object.rb +0 -46
  26. data/benchmarks/bm_plain_object.rb +0 -99
  27. data/benchmarks/bm_serialization_descriptor.rb +0 -76
  28. data/benchmarks/bm_serializer_resolver.rb +0 -22
  29. data/benchmarks/bm_to_object.rb +0 -81
  30. data/benchmarks/profile.rb +0 -86
  31. data/benchmarks/sanity.rb +0 -83
  32. data/benchmarks/setup.rb +0 -56
  33. data/benchmarks/type_casts/bm_active_record.rb +0 -58
  34. data/benchmarks/type_casts/bm_panko.rb +0 -65
  35. data/benchmarks/type_casts/support.rb +0 -27
  36. data/docs/docs/associations.md +0 -107
  37. data/docs/docs/attributes.md +0 -143
  38. data/docs/docs/design-choices.md +0 -127
  39. data/docs/docs/getting-started.md +0 -70
  40. data/docs/docs/introduction.md +0 -13
  41. data/docs/docs/performance.md +0 -32
  42. data/docs/docs/response-bag.md +0 -83
  43. data/docs/docusaurus.config.js +0 -86
  44. data/docs/package-lock.json +0 -15994
  45. data/docs/package.json +0 -21
  46. data/docs/sidebars.json +0 -15
  47. data/docs/src/css/customTheme.css +0 -9
  48. data/docs/static/.DS_Store +0 -0
  49. data/docs/static/CNAME +0 -1
  50. data/docs/static/css/custom.css +0 -51
  51. data/docs/static/img/favicon.ico +0 -0
  52. data/docs/static/img/oss_logo.png +0 -0
  53. data/docs/static/img/undraw_code_review.svg +0 -1
  54. data/docs/static/img/undraw_monitor.svg +0 -1
  55. data/docs/static/img/undraw_note_list.svg +0 -1
  56. data/docs/static/img/undraw_online.svg +0 -1
  57. data/docs/static/img/undraw_open_source.svg +0 -1
  58. data/docs/static/img/undraw_operating_system.svg +0 -1
  59. data/docs/static/img/undraw_react.svg +0 -1
  60. data/docs/static/img/undraw_tweetstorm.svg +0 -1
  61. data/docs/static/img/undraw_youtube_tutorial.svg +0 -1
  62. data/docs/static/index.html +0 -14
  63. data/gemfiles/7.0.0.gemfile +0 -39
  64. data/gemfiles/7.0.0.gemfile.lock +0 -176
  65. data/gemfiles/7.1.0.gemfile +0 -39
  66. data/gemfiles/7.1.0.gemfile.lock +0 -198
  67. data/gemfiles/7.2.0.gemfile +0 -39
  68. data/gemfiles/7.2.0.gemfile.lock +0 -198
  69. data/gemfiles/8.0.0.gemfile +0 -39
  70. data/gemfiles/8.0.0.gemfile.lock +0 -219
  71. data/panko_serializer.gemspec +0 -36
@@ -1,198 +0,0 @@
1
- PATH
2
- remote: ..
3
- specs:
4
- panko_serializer (0.8.3)
5
- activesupport
6
- oj (> 3.11.0, < 4.0.0)
7
-
8
- GEM
9
- remote: https://rubygems.org/
10
- specs:
11
- actionpack (7.2.2.1)
12
- actionview (= 7.2.2.1)
13
- activesupport (= 7.2.2.1)
14
- nokogiri (>= 1.8.5)
15
- racc
16
- rack (>= 2.2.4, < 3.2)
17
- rack-session (>= 1.0.1)
18
- rack-test (>= 0.6.3)
19
- rails-dom-testing (~> 2.2)
20
- rails-html-sanitizer (~> 1.6)
21
- useragent (~> 0.16)
22
- actionview (7.2.2.1)
23
- activesupport (= 7.2.2.1)
24
- builder (~> 3.1)
25
- erubi (~> 1.11)
26
- rails-dom-testing (~> 2.2)
27
- rails-html-sanitizer (~> 1.6)
28
- active_model_serializers (0.10.14)
29
- actionpack (>= 4.1)
30
- activemodel (>= 4.1)
31
- case_transform (>= 0.2)
32
- jsonapi-renderer (>= 0.1.1.beta1, < 0.3)
33
- activemodel (7.2.2.1)
34
- activesupport (= 7.2.2.1)
35
- activerecord (7.2.2.1)
36
- activemodel (= 7.2.2.1)
37
- activesupport (= 7.2.2.1)
38
- timeout (>= 0.4.0)
39
- activesupport (7.2.2.1)
40
- base64
41
- benchmark (>= 0.3)
42
- bigdecimal
43
- concurrent-ruby (~> 1.0, >= 1.3.1)
44
- connection_pool (>= 2.2.5)
45
- drb
46
- i18n (>= 1.6, < 2)
47
- logger (>= 1.4.2)
48
- minitest (>= 5.1)
49
- securerandom (>= 0.3)
50
- tzinfo (~> 2.0, >= 2.0.5)
51
- appraisal (2.5.0)
52
- bundler
53
- rake
54
- thor (>= 0.14.0)
55
- ast (2.4.2)
56
- base64 (0.2.0)
57
- benchmark (0.4.0)
58
- benchmark-ips (2.14.0)
59
- bigdecimal (3.1.8)
60
- builder (3.3.0)
61
- byebug (11.1.3)
62
- case_transform (0.2)
63
- activesupport
64
- concurrent-ruby (1.3.4)
65
- connection_pool (2.4.1)
66
- crass (1.0.6)
67
- diff-lcs (1.5.1)
68
- drb (2.2.1)
69
- erubi (1.13.0)
70
- faker (3.5.1)
71
- i18n (>= 1.8.11, < 2)
72
- i18n (1.14.6)
73
- concurrent-ruby (~> 1.0)
74
- json (2.7.5)
75
- jsonapi-renderer (0.2.2)
76
- language_server-protocol (3.17.0.3)
77
- lint_roller (1.1.0)
78
- logger (1.6.3)
79
- loofah (2.22.0)
80
- crass (~> 1.0.2)
81
- nokogiri (>= 1.12.0)
82
- memory_profiler (1.1.0)
83
- minitest (5.25.4)
84
- nokogiri (1.16.7-arm64-darwin)
85
- racc (~> 1.4)
86
- oj (3.16.7)
87
- bigdecimal (>= 3.0)
88
- ostruct (>= 0.2)
89
- ostruct (0.6.0)
90
- parallel (1.26.3)
91
- parser (3.3.5.1)
92
- ast (~> 2.4.1)
93
- racc
94
- pg (1.5.9)
95
- racc (1.8.1)
96
- rack (3.1.8)
97
- rack-session (2.0.0)
98
- rack (>= 3.0.0)
99
- rack-test (2.1.0)
100
- rack (>= 1.3)
101
- rails-dom-testing (2.2.0)
102
- activesupport (>= 5.0.0)
103
- minitest
104
- nokogiri (>= 1.6)
105
- rails-html-sanitizer (1.6.0)
106
- loofah (~> 2.21)
107
- nokogiri (~> 1.14)
108
- rainbow (3.1.1)
109
- rake (13.2.1)
110
- rake-compiler (1.2.8)
111
- rake
112
- regexp_parser (2.9.2)
113
- rspec (3.13.0)
114
- rspec-core (~> 3.13.0)
115
- rspec-expectations (~> 3.13.0)
116
- rspec-mocks (~> 3.13.0)
117
- rspec-core (3.13.2)
118
- rspec-support (~> 3.13.0)
119
- rspec-expectations (3.13.3)
120
- diff-lcs (>= 1.2.0, < 2.0)
121
- rspec-support (~> 3.13.0)
122
- rspec-mocks (3.13.2)
123
- diff-lcs (>= 1.2.0, < 2.0)
124
- rspec-support (~> 3.13.0)
125
- rspec-support (3.13.1)
126
- rubocop (1.66.1)
127
- json (~> 2.3)
128
- language_server-protocol (>= 3.17.0)
129
- parallel (~> 1.10)
130
- parser (>= 3.3.0.2)
131
- rainbow (>= 2.2.2, < 4.0)
132
- regexp_parser (>= 2.4, < 3.0)
133
- rubocop-ast (>= 1.32.2, < 2.0)
134
- ruby-progressbar (~> 1.7)
135
- unicode-display_width (>= 2.4.0, < 3.0)
136
- rubocop-ast (1.33.0)
137
- parser (>= 3.3.1.0)
138
- rubocop-performance (1.22.1)
139
- rubocop (>= 1.48.1, < 2.0)
140
- rubocop-ast (>= 1.31.1, < 2.0)
141
- rubocop-rspec (3.2.0)
142
- rubocop (~> 1.61)
143
- ruby-progressbar (1.13.0)
144
- securerandom (0.4.0)
145
- sqlite3 (1.7.3-arm64-darwin)
146
- stackprof (0.2.26)
147
- standard (1.41.1)
148
- language_server-protocol (~> 3.17.0.2)
149
- lint_roller (~> 1.0)
150
- rubocop (~> 1.66.0)
151
- standard-custom (~> 1.0.0)
152
- standard-performance (~> 1.5)
153
- standard-custom (1.0.2)
154
- lint_roller (~> 1.0)
155
- rubocop (~> 1.50)
156
- standard-performance (1.5.0)
157
- lint_roller (~> 1.1)
158
- rubocop-performance (~> 1.22.0)
159
- terminal-table (3.0.2)
160
- unicode-display_width (>= 1.1.1, < 3)
161
- thor (1.3.2)
162
- timeout (0.4.2)
163
- tzinfo (2.0.6)
164
- concurrent-ruby (~> 1.0)
165
- unicode-display_width (2.6.0)
166
- useragent (0.16.10)
167
- vernier (1.3.0)
168
-
169
- PLATFORMS
170
- arm64-darwin
171
-
172
- DEPENDENCIES
173
- active_model_serializers (~> 0.10)
174
- activemodel (~> 7.2.0)
175
- activerecord (~> 7.2.0)
176
- activesupport (~> 7.2.0)
177
- appraisal
178
- benchmark-ips
179
- byebug
180
- faker
181
- memory_profiler
182
- panko_serializer!
183
- pg
184
- rake
185
- rake-compiler
186
- rspec (~> 3.0)
187
- rubocop
188
- rubocop-performance
189
- rubocop-rspec
190
- sqlite3 (~> 1.4)
191
- stackprof
192
- standard
193
- standard-performance
194
- terminal-table
195
- vernier
196
-
197
- BUNDLED WITH
198
- 2.5.21
@@ -1,39 +0,0 @@
1
- # This file was generated by Appraisal
2
-
3
- source "https://rubygems.org"
4
-
5
- gem "sqlite3", ">= 2.1"
6
- gem "activesupport", "~> 8.0.0"
7
- gem "activemodel", "~> 8.0.0"
8
- gem "activerecord", "~> 8.0.0", group: :test
9
-
10
- group :benchmarks do
11
- gem "vernier"
12
- gem "stackprof"
13
- gem "pg"
14
- gem "benchmark-ips"
15
- gem "active_model_serializers", "~> 0.10"
16
- gem "terminal-table"
17
- gem "memory_profiler"
18
- end
19
-
20
- group :test do
21
- gem "faker"
22
- end
23
-
24
- group :development do
25
- gem "byebug"
26
- gem "rake"
27
- gem "rspec", "~> 3.0"
28
- gem "rake-compiler"
29
- end
30
-
31
- group :development, :test do
32
- gem "rubocop"
33
- gem "standard"
34
- gem "standard-performance"
35
- gem "rubocop-performance"
36
- gem "rubocop-rspec"
37
- end
38
-
39
- gemspec path: "../"
@@ -1,219 +0,0 @@
1
- PATH
2
- remote: ..
3
- specs:
4
- panko_serializer (0.8.3)
5
- activesupport
6
- oj (> 3.11.0, < 4.0.0)
7
-
8
- GEM
9
- remote: https://rubygems.org/
10
- specs:
11
- actionpack (8.0.1)
12
- actionview (= 8.0.1)
13
- activesupport (= 8.0.1)
14
- nokogiri (>= 1.8.5)
15
- rack (>= 2.2.4)
16
- rack-session (>= 1.0.1)
17
- rack-test (>= 0.6.3)
18
- rails-dom-testing (~> 2.2)
19
- rails-html-sanitizer (~> 1.6)
20
- useragent (~> 0.16)
21
- actionview (8.0.1)
22
- activesupport (= 8.0.1)
23
- builder (~> 3.1)
24
- erubi (~> 1.11)
25
- rails-dom-testing (~> 2.2)
26
- rails-html-sanitizer (~> 1.6)
27
- active_model_serializers (0.10.14)
28
- actionpack (>= 4.1)
29
- activemodel (>= 4.1)
30
- case_transform (>= 0.2)
31
- jsonapi-renderer (>= 0.1.1.beta1, < 0.3)
32
- activemodel (8.0.1)
33
- activesupport (= 8.0.1)
34
- activerecord (8.0.1)
35
- activemodel (= 8.0.1)
36
- activesupport (= 8.0.1)
37
- timeout (>= 0.4.0)
38
- activesupport (8.0.1)
39
- base64
40
- benchmark (>= 0.3)
41
- bigdecimal
42
- concurrent-ruby (~> 1.0, >= 1.3.1)
43
- connection_pool (>= 2.2.5)
44
- drb
45
- i18n (>= 1.6, < 2)
46
- logger (>= 1.4.2)
47
- minitest (>= 5.1)
48
- securerandom (>= 0.3)
49
- tzinfo (~> 2.0, >= 2.0.5)
50
- uri (>= 0.13.1)
51
- appraisal (2.5.0)
52
- bundler
53
- rake
54
- thor (>= 0.14.0)
55
- ast (2.4.2)
56
- base64 (0.2.0)
57
- benchmark (0.4.0)
58
- benchmark-ips (2.14.0)
59
- bigdecimal (3.1.8)
60
- builder (3.3.0)
61
- byebug (11.1.3)
62
- case_transform (0.2)
63
- activesupport
64
- concurrent-ruby (1.3.4)
65
- connection_pool (2.4.1)
66
- crass (1.0.6)
67
- diff-lcs (1.5.1)
68
- drb (2.2.1)
69
- erubi (1.13.0)
70
- faker (3.5.1)
71
- i18n (>= 1.8.11, < 2)
72
- i18n (1.14.6)
73
- concurrent-ruby (~> 1.0)
74
- json (2.7.5)
75
- jsonapi-renderer (0.2.2)
76
- language_server-protocol (3.17.0.3)
77
- lint_roller (1.1.0)
78
- logger (1.6.3)
79
- loofah (2.22.0)
80
- crass (~> 1.0.2)
81
- nokogiri (>= 1.12.0)
82
- memory_profiler (1.1.0)
83
- minitest (5.25.4)
84
- nokogiri (1.16.7-aarch64-linux)
85
- racc (~> 1.4)
86
- nokogiri (1.16.7-arm-linux)
87
- racc (~> 1.4)
88
- nokogiri (1.16.7-arm64-darwin)
89
- racc (~> 1.4)
90
- nokogiri (1.16.7-x86-linux)
91
- racc (~> 1.4)
92
- nokogiri (1.16.7-x86_64-darwin)
93
- racc (~> 1.4)
94
- nokogiri (1.16.7-x86_64-linux)
95
- racc (~> 1.4)
96
- oj (3.16.7)
97
- bigdecimal (>= 3.0)
98
- ostruct (>= 0.2)
99
- ostruct (0.6.0)
100
- parallel (1.26.3)
101
- parser (3.3.5.1)
102
- ast (~> 2.4.1)
103
- racc
104
- pg (1.5.9)
105
- racc (1.8.1)
106
- rack (3.1.8)
107
- rack-session (2.0.0)
108
- rack (>= 3.0.0)
109
- rack-test (2.1.0)
110
- rack (>= 1.3)
111
- rails-dom-testing (2.2.0)
112
- activesupport (>= 5.0.0)
113
- minitest
114
- nokogiri (>= 1.6)
115
- rails-html-sanitizer (1.6.0)
116
- loofah (~> 2.21)
117
- nokogiri (~> 1.14)
118
- rainbow (3.1.1)
119
- rake (13.2.1)
120
- rake-compiler (1.2.8)
121
- rake
122
- regexp_parser (2.9.2)
123
- rspec (3.13.0)
124
- rspec-core (~> 3.13.0)
125
- rspec-expectations (~> 3.13.0)
126
- rspec-mocks (~> 3.13.0)
127
- rspec-core (3.13.2)
128
- rspec-support (~> 3.13.0)
129
- rspec-expectations (3.13.3)
130
- diff-lcs (>= 1.2.0, < 2.0)
131
- rspec-support (~> 3.13.0)
132
- rspec-mocks (3.13.2)
133
- diff-lcs (>= 1.2.0, < 2.0)
134
- rspec-support (~> 3.13.0)
135
- rspec-support (3.13.1)
136
- rubocop (1.66.1)
137
- json (~> 2.3)
138
- language_server-protocol (>= 3.17.0)
139
- parallel (~> 1.10)
140
- parser (>= 3.3.0.2)
141
- rainbow (>= 2.2.2, < 4.0)
142
- regexp_parser (>= 2.4, < 3.0)
143
- rubocop-ast (>= 1.32.2, < 2.0)
144
- ruby-progressbar (~> 1.7)
145
- unicode-display_width (>= 2.4.0, < 3.0)
146
- rubocop-ast (1.33.0)
147
- parser (>= 3.3.1.0)
148
- rubocop-performance (1.22.1)
149
- rubocop (>= 1.48.1, < 2.0)
150
- rubocop-ast (>= 1.31.1, < 2.0)
151
- rubocop-rspec (3.2.0)
152
- rubocop (~> 1.61)
153
- ruby-progressbar (1.13.0)
154
- securerandom (0.4.0)
155
- sqlite3 (2.2.0-aarch64-linux-gnu)
156
- sqlite3 (2.2.0-arm-linux-gnu)
157
- sqlite3 (2.2.0-arm64-darwin)
158
- sqlite3 (2.2.0-x86-linux-gnu)
159
- sqlite3 (2.2.0-x86_64-darwin)
160
- sqlite3 (2.2.0-x86_64-linux-gnu)
161
- stackprof (0.2.26)
162
- standard (1.41.1)
163
- language_server-protocol (~> 3.17.0.2)
164
- lint_roller (~> 1.0)
165
- rubocop (~> 1.66.0)
166
- standard-custom (~> 1.0.0)
167
- standard-performance (~> 1.5)
168
- standard-custom (1.0.2)
169
- lint_roller (~> 1.0)
170
- rubocop (~> 1.50)
171
- standard-performance (1.5.0)
172
- lint_roller (~> 1.1)
173
- rubocop-performance (~> 1.22.0)
174
- terminal-table (3.0.2)
175
- unicode-display_width (>= 1.1.1, < 3)
176
- thor (1.3.2)
177
- timeout (0.4.2)
178
- tzinfo (2.0.6)
179
- concurrent-ruby (~> 1.0)
180
- unicode-display_width (2.6.0)
181
- uri (1.0.2)
182
- useragent (0.16.10)
183
- vernier (1.3.0)
184
-
185
- PLATFORMS
186
- aarch64-linux
187
- arm-linux
188
- arm64-darwin
189
- x86-linux
190
- x86_64-darwin
191
- x86_64-linux
192
-
193
- DEPENDENCIES
194
- active_model_serializers (~> 0.10)
195
- activemodel (~> 8.0.0)
196
- activerecord (~> 8.0.0)
197
- activesupport (~> 8.0.0)
198
- appraisal
199
- benchmark-ips
200
- byebug
201
- faker
202
- memory_profiler
203
- panko_serializer!
204
- pg
205
- rake
206
- rake-compiler
207
- rspec (~> 3.0)
208
- rubocop
209
- rubocop-performance
210
- rubocop-rspec
211
- sqlite3 (>= 2.1)
212
- stackprof
213
- standard
214
- standard-performance
215
- terminal-table
216
- vernier
217
-
218
- BUNDLED WITH
219
- 2.5.21
@@ -1,36 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- lib = File.expand_path("lib", __dir__)
4
- $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
5
- require "panko/version"
6
-
7
- Gem::Specification.new do |spec|
8
- spec.name = "panko_serializer"
9
- spec.version = Panko::VERSION
10
- spec.authors = ["Yosi Attias"]
11
- spec.email = ["yosy101@gmail.com"]
12
-
13
- spec.summary = "High Performance JSON Serialization for ActiveRecord & Ruby Objects"
14
- spec.homepage = "https://panko.dev"
15
- spec.license = "MIT"
16
-
17
- spec.metadata = {
18
- "bug_tracker_uri" => "https://github.com/yosiat/panko_serializer/issues",
19
- "source_code_uri" => "https://github.com/yosiat/panko_serializer",
20
- "documentation_uri" => "https://panko.dev",
21
- "changelog_uri" => "https://github.com/yosiat/panko_serializer/releases"
22
- }
23
-
24
- spec.required_ruby_version = ">= 3.1.0"
25
-
26
- spec.files = `git ls-files -z`.split("\x0").reject do |f|
27
- f.match(%r{^(test|spec|features)/})
28
- end
29
- spec.require_paths = ["lib"]
30
-
31
- spec.extensions << "ext/panko_serializer/extconf.rb"
32
-
33
- spec.add_dependency "oj", "> 3.11.0", "< 4.0.0"
34
- spec.add_dependency "activesupport"
35
- spec.add_development_dependency "appraisal"
36
- end