futurism 1.2.0 → 1.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (59) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +160 -116
  3. data/Gemfile.lock~ +267 -0
  4. data/README.md +26 -0
  5. data/app/assets/javascripts/futurism.min.js.map +1 -1
  6. data/app/assets/javascripts/futurism.umd.min.js.map +1 -1
  7. data/futurism.gemspec +0 -3
  8. data/futurism.gemspec~ +1 -4
  9. data/lib/futurism/engine.rb +4 -0
  10. data/lib/futurism/helpers.rb +6 -6
  11. data/lib/futurism/message_verifier.rb +2 -2
  12. data/lib/futurism/options_transformer.rb +1 -1
  13. data/lib/futurism/resolver/controller/instrumentation.rb +33 -0
  14. data/lib/futurism/resolver/controller/renderer.rb +6 -2
  15. data/lib/futurism/resolver/resources.rb +3 -3
  16. data/lib/futurism/version.rb +1 -1
  17. data/lib/futurism.rb +11 -3
  18. data/package.json +1 -1
  19. data/package.json~ +2 -2
  20. data/yarn.lock +61 -21
  21. metadata +6 -94
  22. data/test/cable/channel_test.rb +0 -319
  23. data/test/dummy/app/channels/application_cable/channel.rb +0 -4
  24. data/test/dummy/app/channels/application_cable/connection.rb +0 -4
  25. data/test/dummy/app/controllers/application_controller.rb +0 -2
  26. data/test/dummy/app/controllers/home_controller.rb +0 -6
  27. data/test/dummy/app/controllers/posts_controller.rb +0 -59
  28. data/test/dummy/app/helpers/application_helper.rb +0 -2
  29. data/test/dummy/app/helpers/posts_helper.rb +0 -2
  30. data/test/dummy/app/jobs/application_job.rb +0 -7
  31. data/test/dummy/app/models/action_item.rb +0 -2
  32. data/test/dummy/app/models/application_record.rb +0 -3
  33. data/test/dummy/app/models/post.rb +0 -2
  34. data/test/dummy/config/application.rb +0 -29
  35. data/test/dummy/config/boot.rb +0 -5
  36. data/test/dummy/config/environment.rb +0 -5
  37. data/test/dummy/config/environments/development.rb +0 -40
  38. data/test/dummy/config/environments/production.rb +0 -94
  39. data/test/dummy/config/environments/test.rb +0 -39
  40. data/test/dummy/config/initializers/application_controller_renderer.rb +0 -8
  41. data/test/dummy/config/initializers/backtrace_silencers.rb +0 -7
  42. data/test/dummy/config/initializers/content_security_policy.rb +0 -28
  43. data/test/dummy/config/initializers/cookies_serializer.rb +0 -5
  44. data/test/dummy/config/initializers/filter_parameter_logging.rb +0 -4
  45. data/test/dummy/config/initializers/inflections.rb +0 -16
  46. data/test/dummy/config/initializers/mime_types.rb +0 -4
  47. data/test/dummy/config/initializers/wrap_parameters.rb +0 -9
  48. data/test/dummy/config/puma.rb +0 -38
  49. data/test/dummy/config/routes.rb +0 -12
  50. data/test/dummy/config/spring.rb +0 -6
  51. data/test/dummy/db/migrate/20200711122838_create_posts.rb +0 -9
  52. data/test/dummy/db/migrate/2021042923813_create_action_items.rb +0 -9
  53. data/test/dummy/db/schema.rb +0 -27
  54. data/test/futurism_test.rb +0 -28
  55. data/test/helper/helper_test.rb +0 -206
  56. data/test/integration/navigation_test.rb +0 -7
  57. data/test/resolver/controller/renderer_test.rb +0 -120
  58. data/test/resolver/controller_test.rb +0 -26
  59. data/test/test_helper.rb +0 -14
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1ccfe52300a950587d804aaa4979ebe1ba9b48f3d945d1c1ab2580f8b4e6adc7
4
- data.tar.gz: 283e234ddb65fadfba97b47305ac3951fd9df5f173ff714564b379170becb493
3
+ metadata.gz: fd917c5dfa75b393fca3a9217cffbc87ac94d531f0db94fab16e67d1ae8b06bb
4
+ data.tar.gz: e9ad74b79576d47d06d79782e0cef27394a6c992ec24fd9d34ffd6844d010ad4
5
5
  SHA512:
6
- metadata.gz: f95d80439c90984025223ec802e520434079a00e84e98d7c14f79495d6b7b19d8dba072a0e26ba1e1f34c751821bce398bcbe0fed005aea4a95a8fe12d067ada
7
- data.tar.gz: 9cd61de7158bd555b31ee302d3fec6b39590b4a434ca0bd4432e14964315c20c914802822febdc693339f1cbd1c4b36d0d2a7a818d6cac9ce2b906688d1a1adb
6
+ metadata.gz: 4d14d1149ea6482ec77273a84bdd1228be7bd0381e4677353419a153036db6c11bf5c7ad61458259bfca6011cc25da51eafd20d071a3e09040a46b67c4478a01
7
+ data.tar.gz: '096aa82435866ea9d12c77a87ceec0d7d16f8d5fa4cdb6512f3fde8e749d5e01865f3ee50aaa17250da98779cdf8ca9fcb82bed8042ae58c418caef06c12b909'
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- futurism (1.2.0)
4
+ futurism (1.4.0)
5
5
  cable_ready (>= 5.0)
6
6
  rack (~> 2.0)
7
7
  rails (>= 5.2)
@@ -9,201 +9,245 @@ PATH
9
9
  GEM
10
10
  remote: https://rubygems.org/
11
11
  specs:
12
- actioncable (7.0.4.3)
13
- actionpack (= 7.0.4.3)
14
- activesupport (= 7.0.4.3)
12
+ actioncable (7.1.3.2)
13
+ actionpack (= 7.1.3.2)
14
+ activesupport (= 7.1.3.2)
15
15
  nio4r (~> 2.0)
16
16
  websocket-driver (>= 0.6.1)
17
- actionmailbox (7.0.4.3)
18
- actionpack (= 7.0.4.3)
19
- activejob (= 7.0.4.3)
20
- activerecord (= 7.0.4.3)
21
- activestorage (= 7.0.4.3)
22
- activesupport (= 7.0.4.3)
17
+ zeitwerk (~> 2.6)
18
+ actionmailbox (7.1.3.2)
19
+ actionpack (= 7.1.3.2)
20
+ activejob (= 7.1.3.2)
21
+ activerecord (= 7.1.3.2)
22
+ activestorage (= 7.1.3.2)
23
+ activesupport (= 7.1.3.2)
23
24
  mail (>= 2.7.1)
24
25
  net-imap
25
26
  net-pop
26
27
  net-smtp
27
- actionmailer (7.0.4.3)
28
- actionpack (= 7.0.4.3)
29
- actionview (= 7.0.4.3)
30
- activejob (= 7.0.4.3)
31
- activesupport (= 7.0.4.3)
28
+ actionmailer (7.1.3.2)
29
+ actionpack (= 7.1.3.2)
30
+ actionview (= 7.1.3.2)
31
+ activejob (= 7.1.3.2)
32
+ activesupport (= 7.1.3.2)
32
33
  mail (~> 2.5, >= 2.5.4)
33
34
  net-imap
34
35
  net-pop
35
36
  net-smtp
36
- rails-dom-testing (~> 2.0)
37
- actionpack (7.0.4.3)
38
- actionview (= 7.0.4.3)
39
- activesupport (= 7.0.4.3)
40
- rack (~> 2.0, >= 2.2.0)
37
+ rails-dom-testing (~> 2.2)
38
+ actionpack (7.1.3.2)
39
+ actionview (= 7.1.3.2)
40
+ activesupport (= 7.1.3.2)
41
+ nokogiri (>= 1.8.5)
42
+ racc
43
+ rack (>= 2.2.4)
44
+ rack-session (>= 1.0.1)
41
45
  rack-test (>= 0.6.3)
42
- rails-dom-testing (~> 2.0)
43
- rails-html-sanitizer (~> 1.0, >= 1.2.0)
44
- actiontext (7.0.4.3)
45
- actionpack (= 7.0.4.3)
46
- activerecord (= 7.0.4.3)
47
- activestorage (= 7.0.4.3)
48
- activesupport (= 7.0.4.3)
46
+ rails-dom-testing (~> 2.2)
47
+ rails-html-sanitizer (~> 1.6)
48
+ actiontext (7.1.3.2)
49
+ actionpack (= 7.1.3.2)
50
+ activerecord (= 7.1.3.2)
51
+ activestorage (= 7.1.3.2)
52
+ activesupport (= 7.1.3.2)
49
53
  globalid (>= 0.6.0)
50
54
  nokogiri (>= 1.8.5)
51
- actionview (7.0.4.3)
52
- activesupport (= 7.0.4.3)
55
+ actionview (7.1.3.2)
56
+ activesupport (= 7.1.3.2)
53
57
  builder (~> 3.1)
54
- erubi (~> 1.4)
55
- rails-dom-testing (~> 2.0)
56
- rails-html-sanitizer (~> 1.1, >= 1.2.0)
57
- activejob (7.0.4.3)
58
- activesupport (= 7.0.4.3)
58
+ erubi (~> 1.11)
59
+ rails-dom-testing (~> 2.2)
60
+ rails-html-sanitizer (~> 1.6)
61
+ activejob (7.1.3.2)
62
+ activesupport (= 7.1.3.2)
59
63
  globalid (>= 0.3.6)
60
- activemodel (7.0.4.3)
61
- activesupport (= 7.0.4.3)
62
- activerecord (7.0.4.3)
63
- activemodel (= 7.0.4.3)
64
- activesupport (= 7.0.4.3)
65
- activestorage (7.0.4.3)
66
- actionpack (= 7.0.4.3)
67
- activejob (= 7.0.4.3)
68
- activerecord (= 7.0.4.3)
69
- activesupport (= 7.0.4.3)
64
+ activemodel (7.1.3.2)
65
+ activesupport (= 7.1.3.2)
66
+ activerecord (7.1.3.2)
67
+ activemodel (= 7.1.3.2)
68
+ activesupport (= 7.1.3.2)
69
+ timeout (>= 0.4.0)
70
+ activestorage (7.1.3.2)
71
+ actionpack (= 7.1.3.2)
72
+ activejob (= 7.1.3.2)
73
+ activerecord (= 7.1.3.2)
74
+ activesupport (= 7.1.3.2)
70
75
  marcel (~> 1.0)
71
- mini_mime (>= 1.1.0)
72
- activesupport (7.0.4.3)
76
+ activesupport (7.1.3.2)
77
+ base64
78
+ bigdecimal
73
79
  concurrent-ruby (~> 1.0, >= 1.0.2)
80
+ connection_pool (>= 2.2.5)
81
+ drb
74
82
  i18n (>= 1.6, < 2)
75
83
  minitest (>= 5.1)
84
+ mutex_m
76
85
  tzinfo (~> 2.0)
77
- appraisal (2.4.1)
86
+ appraisal (2.5.0)
78
87
  bundler
79
88
  rake
80
89
  thor (>= 0.14.0)
81
90
  ast (2.4.2)
91
+ base64 (0.2.0)
92
+ bigdecimal (3.1.6)
82
93
  builder (3.2.4)
83
- cable_ready (5.0.0)
94
+ cable_ready (5.0.3)
84
95
  actionpack (>= 5.2)
85
96
  actionview (>= 5.2)
86
97
  activesupport (>= 5.2)
87
98
  railties (>= 5.2)
88
99
  thread-local (>= 1.1.0)
89
- coderay (1.1.3)
90
- concurrent-ruby (1.2.2)
100
+ concurrent-ruby (1.2.3)
101
+ connection_pool (2.4.1)
91
102
  crass (1.0.6)
92
- date (3.3.3)
103
+ date (3.3.4)
104
+ drb (2.2.1)
93
105
  erubi (1.12.0)
94
- globalid (1.1.0)
95
- activesupport (>= 5.0)
96
- i18n (1.12.0)
106
+ globalid (1.2.1)
107
+ activesupport (>= 6.1)
108
+ i18n (1.14.4)
97
109
  concurrent-ruby (~> 1.0)
98
- json (2.6.3)
110
+ io-console (0.7.2)
111
+ irb (1.12.0)
112
+ rdoc
113
+ reline (>= 0.4.2)
114
+ json (2.7.1)
99
115
  language_server-protocol (3.17.0.3)
100
- loofah (2.20.0)
116
+ lint_roller (1.1.0)
117
+ loofah (2.22.0)
101
118
  crass (~> 1.0.2)
102
- nokogiri (>= 1.5.9)
119
+ nokogiri (>= 1.12.0)
103
120
  mail (2.8.1)
104
121
  mini_mime (>= 0.1.1)
105
122
  net-imap
106
123
  net-pop
107
124
  net-smtp
108
- marcel (1.0.2)
109
- method_source (0.9.2)
110
- mini_mime (1.1.2)
111
- minitest (5.18.0)
112
- net-imap (0.3.4)
125
+ marcel (1.0.4)
126
+ mini_mime (1.1.5)
127
+ minitest (5.22.2)
128
+ mutex_m (0.2.0)
129
+ net-imap (0.4.10)
113
130
  date
114
131
  net-protocol
115
132
  net-pop (0.1.2)
116
133
  net-protocol
117
- net-protocol (0.2.1)
134
+ net-protocol (0.2.2)
118
135
  timeout
119
- net-smtp (0.3.3)
136
+ net-smtp (0.4.0.1)
120
137
  net-protocol
121
- nio4r (2.5.9)
122
- nokogiri (1.14.2-arm64-darwin)
138
+ nio4r (2.7.0)
139
+ nokogiri (1.16.2-arm64-darwin)
140
+ racc (~> 1.4)
141
+ nokogiri (1.16.2-x86_64-linux)
123
142
  racc (~> 1.4)
124
- parallel (1.22.1)
125
- parser (3.2.1.1)
143
+ parallel (1.24.0)
144
+ parser (3.3.0.5)
126
145
  ast (~> 2.4.1)
127
- pry (0.12.2)
128
- coderay (~> 1.1.0)
129
- method_source (~> 0.9.0)
130
- racc (1.6.2)
131
- rack (2.2.6.4)
146
+ racc
147
+ psych (5.1.2)
148
+ stringio
149
+ racc (1.7.3)
150
+ rack (2.2.8.1)
151
+ rack-session (1.0.2)
152
+ rack (< 3)
132
153
  rack-test (2.1.0)
133
154
  rack (>= 1.3)
134
- rails (7.0.4.3)
135
- actioncable (= 7.0.4.3)
136
- actionmailbox (= 7.0.4.3)
137
- actionmailer (= 7.0.4.3)
138
- actionpack (= 7.0.4.3)
139
- actiontext (= 7.0.4.3)
140
- actionview (= 7.0.4.3)
141
- activejob (= 7.0.4.3)
142
- activemodel (= 7.0.4.3)
143
- activerecord (= 7.0.4.3)
144
- activestorage (= 7.0.4.3)
145
- activesupport (= 7.0.4.3)
155
+ rackup (1.0.0)
156
+ rack (< 3)
157
+ webrick
158
+ rails (7.1.3.2)
159
+ actioncable (= 7.1.3.2)
160
+ actionmailbox (= 7.1.3.2)
161
+ actionmailer (= 7.1.3.2)
162
+ actionpack (= 7.1.3.2)
163
+ actiontext (= 7.1.3.2)
164
+ actionview (= 7.1.3.2)
165
+ activejob (= 7.1.3.2)
166
+ activemodel (= 7.1.3.2)
167
+ activerecord (= 7.1.3.2)
168
+ activestorage (= 7.1.3.2)
169
+ activesupport (= 7.1.3.2)
146
170
  bundler (>= 1.15.0)
147
- railties (= 7.0.4.3)
148
- rails-dom-testing (2.0.3)
149
- activesupport (>= 4.2.0)
171
+ railties (= 7.1.3.2)
172
+ rails-dom-testing (2.2.0)
173
+ activesupport (>= 5.0.0)
174
+ minitest
150
175
  nokogiri (>= 1.6)
151
- rails-html-sanitizer (1.5.0)
152
- loofah (~> 2.19, >= 2.19.1)
153
- railties (7.0.4.3)
154
- actionpack (= 7.0.4.3)
155
- activesupport (= 7.0.4.3)
156
- method_source
176
+ rails-html-sanitizer (1.6.0)
177
+ loofah (~> 2.21)
178
+ nokogiri (~> 1.14)
179
+ railties (7.1.3.2)
180
+ actionpack (= 7.1.3.2)
181
+ activesupport (= 7.1.3.2)
182
+ irb
183
+ rackup (>= 1.0.0)
157
184
  rake (>= 12.2)
158
- thor (~> 1.0)
159
- zeitwerk (~> 2.5)
185
+ thor (~> 1.0, >= 1.2.2)
186
+ zeitwerk (~> 2.6)
160
187
  rainbow (3.1.1)
161
- rake (13.0.6)
162
- regexp_parser (2.7.0)
163
- rexml (3.2.5)
164
- rubocop (1.48.1)
188
+ rake (13.1.0)
189
+ rdoc (6.6.2)
190
+ psych (>= 4.0.0)
191
+ regexp_parser (2.9.0)
192
+ reline (0.4.3)
193
+ io-console (~> 0.5)
194
+ rexml (3.2.6)
195
+ rubocop (1.60.2)
165
196
  json (~> 2.3)
197
+ language_server-protocol (>= 3.17.0)
166
198
  parallel (~> 1.10)
167
- parser (>= 3.2.0.0)
199
+ parser (>= 3.3.0.2)
168
200
  rainbow (>= 2.2.2, < 4.0)
169
201
  regexp_parser (>= 1.8, < 3.0)
170
202
  rexml (>= 3.2.5, < 4.0)
171
- rubocop-ast (>= 1.26.0, < 2.0)
203
+ rubocop-ast (>= 1.30.0, < 2.0)
172
204
  ruby-progressbar (~> 1.7)
173
205
  unicode-display_width (>= 2.4.0, < 3.0)
174
- rubocop-ast (1.28.0)
206
+ rubocop-ast (1.30.0)
175
207
  parser (>= 3.2.1.0)
176
- rubocop-performance (1.16.0)
177
- rubocop (>= 1.7.0, < 2.0)
178
- rubocop-ast (>= 0.4.0)
208
+ rubocop-performance (1.20.2)
209
+ rubocop (>= 1.48.1, < 2.0)
210
+ rubocop-ast (>= 1.30.0, < 2.0)
179
211
  ruby-progressbar (1.13.0)
180
- sqlite3 (1.6.1-arm64-darwin)
181
- standard (1.25.3)
212
+ sqlite3 (1.7.2-arm64-darwin)
213
+ sqlite3 (1.7.2-x86_64-linux)
214
+ standard (1.34.0)
182
215
  language_server-protocol (~> 3.17.0.2)
183
- rubocop (~> 1.48.1)
184
- rubocop-performance (~> 1.16.0)
216
+ lint_roller (~> 1.0)
217
+ rubocop (~> 1.60)
218
+ standard-custom (~> 1.0.0)
219
+ standard-performance (~> 1.3)
220
+ standard-custom (1.0.2)
221
+ lint_roller (~> 1.0)
222
+ rubocop (~> 1.50)
223
+ standard-performance (1.3.1)
224
+ lint_roller (~> 1.1)
225
+ rubocop-performance (~> 1.20.2)
185
226
  standardrb (1.0.1)
186
227
  standard
187
- thor (1.2.1)
228
+ stringio (3.1.0)
229
+ thor (1.3.1)
188
230
  thread-local (1.1.0)
189
- timeout (0.3.2)
231
+ timeout (0.4.1)
190
232
  tzinfo (2.0.6)
191
233
  concurrent-ruby (~> 1.0)
192
- unicode-display_width (2.4.2)
193
- websocket-driver (0.7.5)
234
+ unicode-display_width (2.5.0)
235
+ webrick (1.8.1)
236
+ websocket-driver (0.7.6)
194
237
  websocket-extensions (>= 0.1.0)
195
238
  websocket-extensions (0.1.5)
196
- zeitwerk (2.6.7)
239
+ zeitwerk (2.6.13)
197
240
 
198
241
  PLATFORMS
199
242
  arm64-darwin-21
243
+ arm64-darwin-22
244
+ x86_64-linux
200
245
 
201
246
  DEPENDENCIES
202
247
  appraisal
203
248
  bundler (~> 2.0)
204
249
  futurism!
205
250
  nokogiri
206
- pry (~> 0.12.2)
207
251
  rake (~> 13.0)
208
252
  sqlite3
209
253
  standardrb
data/Gemfile.lock~ ADDED
@@ -0,0 +1,267 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ futurism (1.3.0)
5
+ cable_ready (>= 5.0)
6
+ rack (~> 2.0)
7
+ rails (>= 5.2)
8
+
9
+ GEM
10
+ remote: https://rubygems.org/
11
+ specs:
12
+ actioncable (7.1.3.2)
13
+ actionpack (= 7.1.3.2)
14
+ activesupport (= 7.1.3.2)
15
+ nio4r (~> 2.0)
16
+ websocket-driver (>= 0.6.1)
17
+ zeitwerk (~> 2.6)
18
+ actionmailbox (7.1.3.2)
19
+ actionpack (= 7.1.3.2)
20
+ activejob (= 7.1.3.2)
21
+ activerecord (= 7.1.3.2)
22
+ activestorage (= 7.1.3.2)
23
+ activesupport (= 7.1.3.2)
24
+ mail (>= 2.7.1)
25
+ net-imap
26
+ net-pop
27
+ net-smtp
28
+ actionmailer (7.1.3.2)
29
+ actionpack (= 7.1.3.2)
30
+ actionview (= 7.1.3.2)
31
+ activejob (= 7.1.3.2)
32
+ activesupport (= 7.1.3.2)
33
+ mail (~> 2.5, >= 2.5.4)
34
+ net-imap
35
+ net-pop
36
+ net-smtp
37
+ rails-dom-testing (~> 2.2)
38
+ actionpack (7.1.3.2)
39
+ actionview (= 7.1.3.2)
40
+ activesupport (= 7.1.3.2)
41
+ nokogiri (>= 1.8.5)
42
+ racc
43
+ rack (>= 2.2.4)
44
+ rack-session (>= 1.0.1)
45
+ rack-test (>= 0.6.3)
46
+ rails-dom-testing (~> 2.2)
47
+ rails-html-sanitizer (~> 1.6)
48
+ actiontext (7.1.3.2)
49
+ actionpack (= 7.1.3.2)
50
+ activerecord (= 7.1.3.2)
51
+ activestorage (= 7.1.3.2)
52
+ activesupport (= 7.1.3.2)
53
+ globalid (>= 0.6.0)
54
+ nokogiri (>= 1.8.5)
55
+ actionview (7.1.3.2)
56
+ activesupport (= 7.1.3.2)
57
+ builder (~> 3.1)
58
+ erubi (~> 1.11)
59
+ rails-dom-testing (~> 2.2)
60
+ rails-html-sanitizer (~> 1.6)
61
+ activejob (7.1.3.2)
62
+ activesupport (= 7.1.3.2)
63
+ globalid (>= 0.3.6)
64
+ activemodel (7.1.3.2)
65
+ activesupport (= 7.1.3.2)
66
+ activerecord (7.1.3.2)
67
+ activemodel (= 7.1.3.2)
68
+ activesupport (= 7.1.3.2)
69
+ timeout (>= 0.4.0)
70
+ activestorage (7.1.3.2)
71
+ actionpack (= 7.1.3.2)
72
+ activejob (= 7.1.3.2)
73
+ activerecord (= 7.1.3.2)
74
+ activesupport (= 7.1.3.2)
75
+ marcel (~> 1.0)
76
+ activesupport (7.1.3.2)
77
+ base64
78
+ bigdecimal
79
+ concurrent-ruby (~> 1.0, >= 1.0.2)
80
+ connection_pool (>= 2.2.5)
81
+ drb
82
+ i18n (>= 1.6, < 2)
83
+ minitest (>= 5.1)
84
+ mutex_m
85
+ tzinfo (~> 2.0)
86
+ appraisal (2.5.0)
87
+ bundler
88
+ rake
89
+ thor (>= 0.14.0)
90
+ ast (2.4.2)
91
+ base64 (0.2.0)
92
+ bigdecimal (3.1.6)
93
+ builder (3.2.4)
94
+ cable_ready (5.0.3)
95
+ actionpack (>= 5.2)
96
+ actionview (>= 5.2)
97
+ activesupport (>= 5.2)
98
+ railties (>= 5.2)
99
+ thread-local (>= 1.1.0)
100
+ concurrent-ruby (1.2.3)
101
+ connection_pool (2.4.1)
102
+ crass (1.0.6)
103
+ date (3.3.4)
104
+ debug (1.9.1)
105
+ irb (~> 1.10)
106
+ reline (>= 0.3.8)
107
+ drb (2.2.0)
108
+ ruby2_keywords
109
+ erubi (1.12.0)
110
+ globalid (1.2.1)
111
+ activesupport (>= 6.1)
112
+ i18n (1.14.1)
113
+ concurrent-ruby (~> 1.0)
114
+ io-console (0.7.2)
115
+ irb (1.11.2)
116
+ rdoc
117
+ reline (>= 0.4.2)
118
+ json (2.7.1)
119
+ language_server-protocol (3.17.0.3)
120
+ lint_roller (1.1.0)
121
+ loofah (2.22.0)
122
+ crass (~> 1.0.2)
123
+ nokogiri (>= 1.12.0)
124
+ mail (2.8.1)
125
+ mini_mime (>= 0.1.1)
126
+ net-imap
127
+ net-pop
128
+ net-smtp
129
+ marcel (1.0.2)
130
+ mini_mime (1.1.5)
131
+ minitest (5.22.2)
132
+ mutex_m (0.2.0)
133
+ net-imap (0.4.10)
134
+ date
135
+ net-protocol
136
+ net-pop (0.1.2)
137
+ net-protocol
138
+ net-protocol (0.2.2)
139
+ timeout
140
+ net-smtp (0.4.0.1)
141
+ net-protocol
142
+ nio4r (2.7.0)
143
+ nokogiri (1.16.2-arm64-darwin)
144
+ racc (~> 1.4)
145
+ nokogiri (1.16.2-x86_64-linux)
146
+ racc (~> 1.4)
147
+ parallel (1.24.0)
148
+ parser (3.3.0.5)
149
+ ast (~> 2.4.1)
150
+ <<<<<<< HEAD
151
+ racc (1.7.3)
152
+ rack (2.2.8)
153
+ =======
154
+ racc
155
+ psych (5.1.2)
156
+ stringio
157
+ racc (1.7.3)
158
+ rack (2.2.8.1)
159
+ rack-session (1.0.2)
160
+ rack (< 3)
161
+ >>>>>>> ee72532 (fix: Set message verifier serializer to Marshal)
162
+ rack-test (2.1.0)
163
+ rack (>= 1.3)
164
+ rackup (1.0.0)
165
+ rack (< 3)
166
+ webrick
167
+ rails (7.1.3.2)
168
+ actioncable (= 7.1.3.2)
169
+ actionmailbox (= 7.1.3.2)
170
+ actionmailer (= 7.1.3.2)
171
+ actionpack (= 7.1.3.2)
172
+ actiontext (= 7.1.3.2)
173
+ actionview (= 7.1.3.2)
174
+ activejob (= 7.1.3.2)
175
+ activemodel (= 7.1.3.2)
176
+ activerecord (= 7.1.3.2)
177
+ activestorage (= 7.1.3.2)
178
+ activesupport (= 7.1.3.2)
179
+ bundler (>= 1.15.0)
180
+ railties (= 7.1.3.2)
181
+ rails-dom-testing (2.2.0)
182
+ activesupport (>= 5.0.0)
183
+ minitest
184
+ nokogiri (>= 1.6)
185
+ rails-html-sanitizer (1.6.0)
186
+ loofah (~> 2.21)
187
+ nokogiri (~> 1.14)
188
+ railties (7.1.3.2)
189
+ actionpack (= 7.1.3.2)
190
+ activesupport (= 7.1.3.2)
191
+ irb
192
+ rackup (>= 1.0.0)
193
+ rake (>= 12.2)
194
+ thor (~> 1.0, >= 1.2.2)
195
+ zeitwerk (~> 2.6)
196
+ rainbow (3.1.1)
197
+ rake (13.1.0)
198
+ rdoc (6.6.2)
199
+ psych (>= 4.0.0)
200
+ regexp_parser (2.9.0)
201
+ reline (0.4.3)
202
+ io-console (~> 0.5)
203
+ rexml (3.2.6)
204
+ rubocop (1.60.2)
205
+ json (~> 2.3)
206
+ language_server-protocol (>= 3.17.0)
207
+ parallel (~> 1.10)
208
+ parser (>= 3.3.0.2)
209
+ rainbow (>= 2.2.2, < 4.0)
210
+ regexp_parser (>= 1.8, < 3.0)
211
+ rexml (>= 3.2.5, < 4.0)
212
+ rubocop-ast (>= 1.30.0, < 2.0)
213
+ ruby-progressbar (~> 1.7)
214
+ unicode-display_width (>= 2.4.0, < 3.0)
215
+ rubocop-ast (1.30.0)
216
+ parser (>= 3.2.1.0)
217
+ rubocop-performance (1.20.2)
218
+ rubocop (>= 1.48.1, < 2.0)
219
+ rubocop-ast (>= 1.30.0, < 2.0)
220
+ ruby-progressbar (1.13.0)
221
+ ruby2_keywords (0.0.5)
222
+ sqlite3 (1.7.2-arm64-darwin)
223
+ sqlite3 (1.7.2-x86_64-linux)
224
+ standard (1.34.0)
225
+ language_server-protocol (~> 3.17.0.2)
226
+ lint_roller (~> 1.0)
227
+ rubocop (~> 1.60)
228
+ standard-custom (~> 1.0.0)
229
+ standard-performance (~> 1.3)
230
+ standard-custom (1.0.2)
231
+ lint_roller (~> 1.0)
232
+ rubocop (~> 1.50)
233
+ standard-performance (1.3.1)
234
+ lint_roller (~> 1.1)
235
+ rubocop-performance (~> 1.20.2)
236
+ standardrb (1.0.1)
237
+ standard
238
+ stringio (3.1.0)
239
+ thor (1.3.1)
240
+ thread-local (1.1.0)
241
+ timeout (0.4.1)
242
+ tzinfo (2.0.6)
243
+ concurrent-ruby (~> 1.0)
244
+ unicode-display_width (2.5.0)
245
+ webrick (1.8.1)
246
+ websocket-driver (0.7.6)
247
+ websocket-extensions (>= 0.1.0)
248
+ websocket-extensions (0.1.5)
249
+ zeitwerk (2.6.13)
250
+
251
+ PLATFORMS
252
+ arm64-darwin-21
253
+ arm64-darwin-22
254
+ x86_64-linux
255
+
256
+ DEPENDENCIES
257
+ appraisal
258
+ bundler (~> 2.0)
259
+ debug (>= 1.0.0)
260
+ futurism!
261
+ nokogiri
262
+ rake (~> 13.0)
263
+ sqlite3
264
+ standardrb
265
+
266
+ BUNDLED WITH
267
+ 2.2.32
data/README.md CHANGED
@@ -25,6 +25,7 @@ Lazy-load Rails partials via CableReady
25
25
  - [Broadcast Partials Individually](#broadcast-partials-individually)
26
26
  - [Contextual Placeholder Arguments](#contextual-placeholder-arguments)
27
27
  - [Events](#events)
28
+ - [Instrumentation](#instrumentation)
28
29
  - [Installation](#installation)
29
30
  - [Manual Installation](#manual-installation)
30
31
  - [Authentication](#authentication)
@@ -228,6 +229,31 @@ For individual models or arbitrary collections, you can pass `record` and `index
228
229
 
229
230
  Once your futurize element has been rendered, the `futurism:appeared` custom event will be called.
230
231
 
232
+ ## Instrumentation
233
+
234
+ Futurism includes support for instrumenting rendering events.
235
+
236
+ To enable ActiveSupport notifications, use the `instrumentation` option:
237
+
238
+ ```ruby
239
+ Futurism.instrumentation = true
240
+ ```
241
+
242
+ Then subscribe to the `render.futurism` event:
243
+
244
+ ```ruby
245
+ ActiveSupport::Notifications.subscribe("render.futurism") do |*args|
246
+ event = ActiveSupport::Notifications::Event.new(*args)
247
+ event.name # => "render.futurism"
248
+ event.payload[:channel] # => "Futurism::Channel" # ActionCable channel to broadcast
249
+ event.payload[:controller] # => "posts" # The controller that invokes `futurize` call
250
+ event.payload[:action] # => "show" # The action that invokes `futurize` call
251
+ event.payload[:partial] # => "posts/card" # The partial that was rendered
252
+ end
253
+ ```
254
+
255
+ This is useful for performance monitoring, specifically for tracking the source of `futurize` calls.
256
+
231
257
  ## Installation
232
258
  Add this line to your application's Gemfile:
233
259