trusty-cms 7.2 → 8.1.0
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/Gemfile +2 -2
- data/Gemfile.lock +131 -136
- data/app/helpers/admin/pages_helper.rb +16 -5
- data/config/application.rb +1 -1
- data/lib/trusty_cms/available_locales.rb +1 -1
- data/lib/trusty_cms/setup.rb +1 -1
- data/lib/trusty_cms/task_support.rb +2 -2
- data/lib/trusty_cms/version.rb +1 -1
- data/spec/controllers/admin/pages_controller_spec.rb +21 -16
- data/spec/dummy/config/application.rb +6 -0
- data/spec/helpers/admin/pages_helper_spec.rb +30 -0
- data/spec/spec_helper.rb +3 -3
- data/trusty_cms.gemspec +5 -4
- data/yarn.lock +3 -3
- metadata +40 -20
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: '09a975dbfdff3498fab3bcc60a600da1b0da0a5f0129f0d70df7b9db6bb1b1cc'
|
|
4
|
+
data.tar.gz: f6be37f3b4528ec731cf84640a125b7ef01bc9ab62e075f0f4a2c6a049723fd1
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 023a11dd1d3377191a5f4bdb80490b452a8c789f89a637c90f96163e11a2a5b9f283b59e08cbd7fea89a656fd1523194a2dd85a08e41b757bfbd1e06aca96181
|
|
7
|
+
data.tar.gz: 3f0bd848d25abc30b4dffc21f3d504ff187710bf460e7fd902071f1fe81100a905689f2ad6eacd7135313052ac0d3265d9ee5835a6db10eed4024a2c7db140bb
|
data/Gemfile
CHANGED
|
@@ -19,9 +19,9 @@ group :development, :test do
|
|
|
19
19
|
gem 'factory_bot_rails', '6.5.1'
|
|
20
20
|
gem 'file_validators'
|
|
21
21
|
gem 'jsbundling-rails', '~> 1.3'
|
|
22
|
-
gem 'launchy', '~> 3.
|
|
22
|
+
gem 'launchy', '~> 3.1.1'
|
|
23
23
|
gem 'mysql2'
|
|
24
|
-
gem 'paper_trail', '~>
|
|
24
|
+
gem 'paper_trail', '~> 17.0.0'
|
|
25
25
|
gem 'paper_trail-association_tracking', '~> 2.3.0'
|
|
26
26
|
gem 'poltergeist', '~> 1.18.1'
|
|
27
27
|
gem 'pry-byebug'
|
data/Gemfile.lock
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
trusty-cms (
|
|
4
|
+
trusty-cms (8.1.0)
|
|
5
5
|
RedCloth (= 4.3.4)
|
|
6
6
|
activestorage-validator
|
|
7
7
|
acts_as_list (>= 0.9.5, < 1.3.0)
|
|
@@ -15,21 +15,22 @@ PATH
|
|
|
15
15
|
diffy
|
|
16
16
|
drb
|
|
17
17
|
execjs (~> 2.7)
|
|
18
|
-
haml (
|
|
19
|
-
haml-rails (
|
|
18
|
+
haml (>= 6.3, < 7.4)
|
|
19
|
+
haml-rails (>= 2.1, < 4.0)
|
|
20
20
|
highline (>= 1.7.8, < 3.2.0)
|
|
21
21
|
image_processing
|
|
22
22
|
kraken-io
|
|
23
|
+
mini_magick (~> 5.0)
|
|
23
24
|
mini_racer
|
|
24
25
|
mutex_m
|
|
25
26
|
mysql2
|
|
26
|
-
paper_trail (~>
|
|
27
|
+
paper_trail (~> 17.0.0)
|
|
27
28
|
paper_trail-association_tracking (>= 2.2.1, < 2.4.0)
|
|
28
29
|
psych (= 5.4.0)
|
|
29
30
|
rack (>= 2.0.1, < 3.2.0)
|
|
30
31
|
rack-cache (~> 1.7)
|
|
31
32
|
radius (~> 0.8)
|
|
32
|
-
rails (
|
|
33
|
+
rails (~> 8.1.0)
|
|
33
34
|
rake (< 14.0)
|
|
34
35
|
ransack (~> 4.2.1)
|
|
35
36
|
rdoc (>= 5.1, < 9.0)
|
|
@@ -46,81 +47,82 @@ GEM
|
|
|
46
47
|
remote: https://rubygems.org/
|
|
47
48
|
specs:
|
|
48
49
|
RedCloth (4.3.4)
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
50
|
+
action_text-trix (2.1.19)
|
|
51
|
+
railties
|
|
52
|
+
actioncable (8.1.3.1)
|
|
53
|
+
actionpack (= 8.1.3.1)
|
|
54
|
+
activesupport (= 8.1.3.1)
|
|
52
55
|
nio4r (~> 2.0)
|
|
53
56
|
websocket-driver (>= 0.6.1)
|
|
54
57
|
zeitwerk (~> 2.6)
|
|
55
|
-
actionmailbox (
|
|
56
|
-
actionpack (=
|
|
57
|
-
activejob (=
|
|
58
|
-
activerecord (=
|
|
59
|
-
activestorage (=
|
|
60
|
-
activesupport (=
|
|
58
|
+
actionmailbox (8.1.3.1)
|
|
59
|
+
actionpack (= 8.1.3.1)
|
|
60
|
+
activejob (= 8.1.3.1)
|
|
61
|
+
activerecord (= 8.1.3.1)
|
|
62
|
+
activestorage (= 8.1.3.1)
|
|
63
|
+
activesupport (= 8.1.3.1)
|
|
61
64
|
mail (>= 2.8.0)
|
|
62
|
-
actionmailer (
|
|
63
|
-
actionpack (=
|
|
64
|
-
actionview (=
|
|
65
|
-
activejob (=
|
|
66
|
-
activesupport (=
|
|
65
|
+
actionmailer (8.1.3.1)
|
|
66
|
+
actionpack (= 8.1.3.1)
|
|
67
|
+
actionview (= 8.1.3.1)
|
|
68
|
+
activejob (= 8.1.3.1)
|
|
69
|
+
activesupport (= 8.1.3.1)
|
|
67
70
|
mail (>= 2.8.0)
|
|
68
71
|
rails-dom-testing (~> 2.2)
|
|
69
|
-
actionpack (
|
|
70
|
-
actionview (=
|
|
71
|
-
activesupport (=
|
|
72
|
-
cgi
|
|
72
|
+
actionpack (8.1.3.1)
|
|
73
|
+
actionview (= 8.1.3.1)
|
|
74
|
+
activesupport (= 8.1.3.1)
|
|
73
75
|
nokogiri (>= 1.8.5)
|
|
74
|
-
|
|
75
|
-
rack (>= 2.2.4, < 3.3)
|
|
76
|
+
rack (>= 2.2.4)
|
|
76
77
|
rack-session (>= 1.0.1)
|
|
77
78
|
rack-test (>= 0.6.3)
|
|
78
79
|
rails-dom-testing (~> 2.2)
|
|
79
80
|
rails-html-sanitizer (~> 1.6)
|
|
80
81
|
useragent (~> 0.16)
|
|
81
|
-
actiontext (
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
82
|
+
actiontext (8.1.3.1)
|
|
83
|
+
action_text-trix (~> 2.1.15)
|
|
84
|
+
actionpack (= 8.1.3.1)
|
|
85
|
+
activerecord (= 8.1.3.1)
|
|
86
|
+
activestorage (= 8.1.3.1)
|
|
87
|
+
activesupport (= 8.1.3.1)
|
|
86
88
|
globalid (>= 0.6.0)
|
|
87
89
|
nokogiri (>= 1.8.5)
|
|
88
|
-
actionview (
|
|
89
|
-
activesupport (=
|
|
90
|
+
actionview (8.1.3.1)
|
|
91
|
+
activesupport (= 8.1.3.1)
|
|
90
92
|
builder (~> 3.1)
|
|
91
|
-
cgi
|
|
92
93
|
erubi (~> 1.11)
|
|
93
94
|
rails-dom-testing (~> 2.2)
|
|
94
95
|
rails-html-sanitizer (~> 1.6)
|
|
95
|
-
activejob (
|
|
96
|
-
activesupport (=
|
|
96
|
+
activejob (8.1.3.1)
|
|
97
|
+
activesupport (= 8.1.3.1)
|
|
97
98
|
globalid (>= 0.3.6)
|
|
98
|
-
activemodel (
|
|
99
|
-
activesupport (=
|
|
100
|
-
activerecord (
|
|
101
|
-
activemodel (=
|
|
102
|
-
activesupport (=
|
|
99
|
+
activemodel (8.1.3.1)
|
|
100
|
+
activesupport (= 8.1.3.1)
|
|
101
|
+
activerecord (8.1.3.1)
|
|
102
|
+
activemodel (= 8.1.3.1)
|
|
103
|
+
activesupport (= 8.1.3.1)
|
|
103
104
|
timeout (>= 0.4.0)
|
|
104
|
-
activestorage (
|
|
105
|
-
actionpack (=
|
|
106
|
-
activejob (=
|
|
107
|
-
activerecord (=
|
|
108
|
-
activesupport (=
|
|
105
|
+
activestorage (8.1.3.1)
|
|
106
|
+
actionpack (= 8.1.3.1)
|
|
107
|
+
activejob (= 8.1.3.1)
|
|
108
|
+
activerecord (= 8.1.3.1)
|
|
109
|
+
activesupport (= 8.1.3.1)
|
|
109
110
|
marcel (~> 1.0)
|
|
110
|
-
activestorage-validator (0.
|
|
111
|
-
rails (>=
|
|
112
|
-
activesupport (
|
|
111
|
+
activestorage-validator (0.8.0)
|
|
112
|
+
rails (>= 7.2.0)
|
|
113
|
+
activesupport (8.1.3.1)
|
|
113
114
|
base64
|
|
114
|
-
benchmark (>= 0.3)
|
|
115
115
|
bigdecimal
|
|
116
116
|
concurrent-ruby (~> 1.0, >= 1.3.1)
|
|
117
117
|
connection_pool (>= 2.2.5)
|
|
118
118
|
drb
|
|
119
119
|
i18n (>= 1.6, < 2)
|
|
120
|
+
json
|
|
120
121
|
logger (>= 1.4.2)
|
|
121
|
-
minitest (>= 5.1
|
|
122
|
+
minitest (>= 5.1)
|
|
122
123
|
securerandom (>= 0.3)
|
|
123
124
|
tzinfo (~> 2.0, >= 2.0.5)
|
|
125
|
+
uri (>= 0.13.1)
|
|
124
126
|
acts_as_list (1.2.6)
|
|
125
127
|
activerecord (>= 6.1)
|
|
126
128
|
activesupport (>= 6.1)
|
|
@@ -130,7 +132,6 @@ GEM
|
|
|
130
132
|
public_suffix (>= 2.0.2, < 8.0)
|
|
131
133
|
base64 (0.3.0)
|
|
132
134
|
bcrypt (3.1.22)
|
|
133
|
-
benchmark (0.5.0)
|
|
134
135
|
bigdecimal (4.1.2)
|
|
135
136
|
builder (3.3.0)
|
|
136
137
|
byebug (13.0.0)
|
|
@@ -144,7 +145,6 @@ GEM
|
|
|
144
145
|
rack-test (>= 0.6.3)
|
|
145
146
|
regexp_parser (>= 1.5, < 3.0)
|
|
146
147
|
xpath (~> 3.2)
|
|
147
|
-
cgi (0.5.2)
|
|
148
148
|
childprocess (5.1.0)
|
|
149
149
|
logger (~> 1.5)
|
|
150
150
|
chunky_png (1.4.0)
|
|
@@ -158,13 +158,13 @@ GEM
|
|
|
158
158
|
ssrf_filter (~> 1.5)
|
|
159
159
|
csso-rails (0.9.0)
|
|
160
160
|
execjs (>= 1)
|
|
161
|
-
csv (3.3.
|
|
161
|
+
csv (3.3.6)
|
|
162
162
|
database_cleaner (2.1.0)
|
|
163
163
|
database_cleaner-active_record (>= 2, < 3)
|
|
164
|
-
database_cleaner-active_record (2.2.
|
|
164
|
+
database_cleaner-active_record (2.2.2)
|
|
165
165
|
activerecord (>= 5.a)
|
|
166
|
-
database_cleaner-core (~> 2.0
|
|
167
|
-
database_cleaner-core (2.0
|
|
166
|
+
database_cleaner-core (~> 2.0)
|
|
167
|
+
database_cleaner-core (2.1.0)
|
|
168
168
|
date (3.5.1)
|
|
169
169
|
delocalize (1.2.0)
|
|
170
170
|
rails (>= 2)
|
|
@@ -181,52 +181,50 @@ GEM
|
|
|
181
181
|
rotp (~> 6.0)
|
|
182
182
|
diff-lcs (1.6.2)
|
|
183
183
|
diffy (3.4.4)
|
|
184
|
-
docile (1.4.1)
|
|
185
184
|
drb (2.2.3)
|
|
186
|
-
erb (6.0.
|
|
185
|
+
erb (6.0.7)
|
|
187
186
|
erubi (1.13.1)
|
|
188
|
-
execjs (2.10.
|
|
187
|
+
execjs (2.10.1)
|
|
189
188
|
factory_bot (6.6.0)
|
|
190
189
|
activesupport (>= 6.1.0)
|
|
191
190
|
factory_bot_rails (6.5.1)
|
|
192
191
|
factory_bot (~> 6.5)
|
|
193
192
|
railties (>= 6.1.0)
|
|
194
|
-
ffi (1.17.
|
|
195
|
-
ffi (1.17.
|
|
196
|
-
ffi (1.17.
|
|
197
|
-
ffi (1.17.
|
|
198
|
-
ffi (1.17.
|
|
199
|
-
ffi (1.17.
|
|
200
|
-
ffi (1.17.
|
|
201
|
-
ffi (1.17.
|
|
202
|
-
ffi (1.17.
|
|
203
|
-
ffi (1.17.
|
|
193
|
+
ffi (1.17.4-aarch64-linux-gnu)
|
|
194
|
+
ffi (1.17.4-aarch64-linux-musl)
|
|
195
|
+
ffi (1.17.4-arm-linux-gnu)
|
|
196
|
+
ffi (1.17.4-arm-linux-musl)
|
|
197
|
+
ffi (1.17.4-arm64-darwin)
|
|
198
|
+
ffi (1.17.4-x86-linux-gnu)
|
|
199
|
+
ffi (1.17.4-x86-linux-musl)
|
|
200
|
+
ffi (1.17.4-x86_64-darwin)
|
|
201
|
+
ffi (1.17.4-x86_64-linux-gnu)
|
|
202
|
+
ffi (1.17.4-x86_64-linux-musl)
|
|
204
203
|
file_validators (3.0.0)
|
|
205
204
|
activemodel (>= 3.2)
|
|
206
205
|
mime-types (>= 1.0)
|
|
207
206
|
globalid (1.4.0)
|
|
208
207
|
activesupport (>= 6.1)
|
|
209
|
-
haml (
|
|
208
|
+
haml (7.3.0)
|
|
209
|
+
prism (>= 1.1.0)
|
|
210
210
|
temple (>= 0.8.2)
|
|
211
211
|
thor
|
|
212
212
|
tilt
|
|
213
|
-
haml-rails (
|
|
213
|
+
haml-rails (3.1.0)
|
|
214
214
|
actionpack (>= 5.1)
|
|
215
215
|
activesupport (>= 5.1)
|
|
216
216
|
haml (>= 4.0.6)
|
|
217
217
|
railties (>= 5.1)
|
|
218
218
|
highline (3.1.2)
|
|
219
219
|
reline
|
|
220
|
-
httparty (0.
|
|
220
|
+
httparty (0.24.2)
|
|
221
221
|
csv
|
|
222
222
|
mini_mime (>= 1.0.0)
|
|
223
223
|
multi_xml (>= 0.5.2)
|
|
224
224
|
i18n (1.15.2)
|
|
225
225
|
concurrent-ruby (~> 1.0)
|
|
226
|
-
image_processing (
|
|
227
|
-
|
|
228
|
-
ruby-vips (>= 2.0.17, < 3)
|
|
229
|
-
io-console (0.8.2)
|
|
226
|
+
image_processing (2.0.2)
|
|
227
|
+
io-console (0.9.2)
|
|
230
228
|
irb (1.18.0)
|
|
231
229
|
pp (>= 0.6.0)
|
|
232
230
|
prism (>= 1.3.0)
|
|
@@ -234,22 +232,23 @@ GEM
|
|
|
234
232
|
reline (>= 0.4.2)
|
|
235
233
|
jsbundling-rails (1.3.1)
|
|
236
234
|
railties (>= 6.0.0)
|
|
237
|
-
json (2.
|
|
235
|
+
json (2.21.2)
|
|
238
236
|
kraken-io (0.1.3)
|
|
239
237
|
activesupport
|
|
240
238
|
httparty
|
|
241
239
|
json
|
|
242
240
|
multipart-post
|
|
243
|
-
launchy (3.
|
|
241
|
+
launchy (3.1.1)
|
|
244
242
|
addressable (~> 2.8)
|
|
245
243
|
childprocess (~> 5.0)
|
|
246
|
-
|
|
247
|
-
libv8-node (
|
|
248
|
-
libv8-node (
|
|
249
|
-
libv8-node (
|
|
250
|
-
libv8-node (
|
|
251
|
-
libv8-node (
|
|
252
|
-
libv8-node (
|
|
244
|
+
logger (~> 1.6)
|
|
245
|
+
libv8-node (24.12.0.1)
|
|
246
|
+
libv8-node (24.12.0.1-aarch64-linux)
|
|
247
|
+
libv8-node (24.12.0.1-aarch64-linux-musl)
|
|
248
|
+
libv8-node (24.12.0.1-arm64-darwin)
|
|
249
|
+
libv8-node (24.12.0.1-x86_64-darwin)
|
|
250
|
+
libv8-node (24.12.0.1-x86_64-linux)
|
|
251
|
+
libv8-node (24.12.0.1-x86_64-linux-musl)
|
|
253
252
|
logger (1.7.0)
|
|
254
253
|
loofah (2.25.2)
|
|
255
254
|
crass (~> 1.0.2)
|
|
@@ -261,23 +260,27 @@ GEM
|
|
|
261
260
|
net-pop
|
|
262
261
|
net-smtp
|
|
263
262
|
marcel (1.2.1)
|
|
264
|
-
matrix (0.4.
|
|
263
|
+
matrix (0.4.3)
|
|
265
264
|
method_source (1.1.0)
|
|
266
|
-
mime-types (3.
|
|
265
|
+
mime-types (3.7.0)
|
|
266
|
+
logger
|
|
267
|
+
mime-types-data (~> 3.2025, >= 3.2025.0507)
|
|
268
|
+
mime-types-data (3.2026.0701)
|
|
269
|
+
mini_magick (5.3.2)
|
|
267
270
|
logger
|
|
268
|
-
mime-types-data (~> 3.2015)
|
|
269
|
-
mime-types-data (3.2024.1105)
|
|
270
|
-
mini_magick (4.13.2)
|
|
271
271
|
mini_mime (1.1.5)
|
|
272
272
|
mini_portile2 (2.8.9)
|
|
273
|
-
mini_racer (0.
|
|
274
|
-
libv8-node (~>
|
|
275
|
-
minitest (
|
|
273
|
+
mini_racer (0.21.4)
|
|
274
|
+
libv8-node (~> 24.12.0.1)
|
|
275
|
+
minitest (6.0.6)
|
|
276
|
+
drb (~> 2.0)
|
|
277
|
+
prism (~> 1.5)
|
|
276
278
|
multi_xml (0.9.1)
|
|
277
279
|
bigdecimal (>= 3.1, < 5)
|
|
278
280
|
multipart-post (2.4.1)
|
|
279
281
|
mutex_m (0.3.0)
|
|
280
|
-
mysql2 (0.5.
|
|
282
|
+
mysql2 (0.5.7)
|
|
283
|
+
bigdecimal
|
|
281
284
|
net-imap (0.6.6)
|
|
282
285
|
date
|
|
283
286
|
net-protocol
|
|
@@ -308,8 +311,8 @@ GEM
|
|
|
308
311
|
nokogiri (1.19.4-x86_64-linux-musl)
|
|
309
312
|
racc (~> 1.4)
|
|
310
313
|
orm_adapter (0.5.0)
|
|
311
|
-
paper_trail (
|
|
312
|
-
activerecord (>=
|
|
314
|
+
paper_trail (17.0.0)
|
|
315
|
+
activerecord (>= 7.1)
|
|
313
316
|
request_store (~> 1.4)
|
|
314
317
|
paper_trail-association_tracking (2.3.0)
|
|
315
318
|
paper_trail (>= 12.0)
|
|
@@ -344,20 +347,20 @@ GEM
|
|
|
344
347
|
rackup (2.3.1)
|
|
345
348
|
rack (>= 3)
|
|
346
349
|
radius (0.8.0)
|
|
347
|
-
rails (
|
|
348
|
-
actioncable (=
|
|
349
|
-
actionmailbox (=
|
|
350
|
-
actionmailer (=
|
|
351
|
-
actionpack (=
|
|
352
|
-
actiontext (=
|
|
353
|
-
actionview (=
|
|
354
|
-
activejob (=
|
|
355
|
-
activemodel (=
|
|
356
|
-
activerecord (=
|
|
357
|
-
activestorage (=
|
|
358
|
-
activesupport (=
|
|
350
|
+
rails (8.1.3.1)
|
|
351
|
+
actioncable (= 8.1.3.1)
|
|
352
|
+
actionmailbox (= 8.1.3.1)
|
|
353
|
+
actionmailer (= 8.1.3.1)
|
|
354
|
+
actionpack (= 8.1.3.1)
|
|
355
|
+
actiontext (= 8.1.3.1)
|
|
356
|
+
actionview (= 8.1.3.1)
|
|
357
|
+
activejob (= 8.1.3.1)
|
|
358
|
+
activemodel (= 8.1.3.1)
|
|
359
|
+
activerecord (= 8.1.3.1)
|
|
360
|
+
activestorage (= 8.1.3.1)
|
|
361
|
+
activesupport (= 8.1.3.1)
|
|
359
362
|
bundler (>= 1.15.0)
|
|
360
|
-
railties (=
|
|
363
|
+
railties (= 8.1.3.1)
|
|
361
364
|
rails-dom-testing (2.3.0)
|
|
362
365
|
activesupport (>= 5.0.0)
|
|
363
366
|
minitest
|
|
@@ -367,10 +370,9 @@ GEM
|
|
|
367
370
|
nokogiri (>= 1.15.7, != 1.16.7, != 1.16.6, != 1.16.5, != 1.16.4, != 1.16.3, != 1.16.2, != 1.16.1, != 1.16.0.rc1, != 1.16.0)
|
|
368
371
|
rails-observers (0.1.5)
|
|
369
372
|
activemodel (>= 4.0)
|
|
370
|
-
railties (
|
|
371
|
-
actionpack (=
|
|
372
|
-
activesupport (=
|
|
373
|
-
cgi
|
|
373
|
+
railties (8.1.3.1)
|
|
374
|
+
actionpack (= 8.1.3.1)
|
|
375
|
+
activesupport (= 8.1.3.1)
|
|
374
376
|
irb (~> 1.13)
|
|
375
377
|
rackup (>= 1.0.0)
|
|
376
378
|
rake (>= 12.2)
|
|
@@ -382,7 +384,7 @@ GEM
|
|
|
382
384
|
activerecord (>= 6.1.5)
|
|
383
385
|
activesupport (>= 6.1.5)
|
|
384
386
|
i18n
|
|
385
|
-
rbs (4.1.
|
|
387
|
+
rbs (4.1.3)
|
|
386
388
|
logger
|
|
387
389
|
prism (>= 1.6.0)
|
|
388
390
|
tsort
|
|
@@ -391,8 +393,8 @@ GEM
|
|
|
391
393
|
prism (>= 1.6.0)
|
|
392
394
|
rbs (>= 4.0.0)
|
|
393
395
|
tsort
|
|
394
|
-
regexp_parser (2.
|
|
395
|
-
reline (0.
|
|
396
|
+
regexp_parser (2.12.0)
|
|
397
|
+
reline (0.7.0)
|
|
396
398
|
io-console (~> 0.5)
|
|
397
399
|
request_store (1.7.0)
|
|
398
400
|
rack (>= 1.4)
|
|
@@ -410,12 +412,12 @@ GEM
|
|
|
410
412
|
chunky_png (~> 1.0)
|
|
411
413
|
rqrcode_core (~> 2.0)
|
|
412
414
|
rqrcode_core (2.1.0)
|
|
413
|
-
rspec-core (3.13.
|
|
415
|
+
rspec-core (3.13.6)
|
|
414
416
|
rspec-support (~> 3.13.0)
|
|
415
417
|
rspec-expectations (3.13.5)
|
|
416
418
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
417
419
|
rspec-support (~> 3.13.0)
|
|
418
|
-
rspec-mocks (3.13.
|
|
420
|
+
rspec-mocks (3.13.8)
|
|
419
421
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
420
422
|
rspec-support (~> 3.13.0)
|
|
421
423
|
rspec-rails (7.1.1)
|
|
@@ -426,12 +428,9 @@ GEM
|
|
|
426
428
|
rspec-expectations (~> 3.13)
|
|
427
429
|
rspec-mocks (~> 3.13)
|
|
428
430
|
rspec-support (~> 3.13)
|
|
429
|
-
rspec-support (3.13.
|
|
431
|
+
rspec-support (3.13.7)
|
|
430
432
|
rspec_junit_formatter (0.6.0)
|
|
431
433
|
rspec-core (>= 2, < 4, != 2.12.0)
|
|
432
|
-
ruby-vips (2.2.2)
|
|
433
|
-
ffi (~> 1.12)
|
|
434
|
-
logger
|
|
435
434
|
sass-rails (6.0.0)
|
|
436
435
|
sassc-rails (~> 2.1, >= 2.1.1)
|
|
437
436
|
sassc (2.4.0)
|
|
@@ -443,15 +442,11 @@ GEM
|
|
|
443
442
|
sprockets-rails
|
|
444
443
|
tilt
|
|
445
444
|
securerandom (0.4.1)
|
|
446
|
-
simplecov (0.
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
simplecov_json_formatter (~> 0.1)
|
|
450
|
-
simplecov-html (0.13.1)
|
|
451
|
-
simplecov-lcov (0.8.0)
|
|
452
|
-
simplecov_json_formatter (0.1.4)
|
|
453
|
-
sprockets (4.2.1)
|
|
445
|
+
simplecov (1.0.3)
|
|
446
|
+
simplecov-lcov (0.9.0)
|
|
447
|
+
sprockets (4.2.2)
|
|
454
448
|
concurrent-ruby (~> 1.0)
|
|
449
|
+
logger
|
|
455
450
|
rack (>= 2.2.4, < 4)
|
|
456
451
|
sprockets-rails (3.5.2)
|
|
457
452
|
actionpack (>= 6.1)
|
|
@@ -460,9 +455,9 @@ GEM
|
|
|
460
455
|
ssrf_filter (1.5.0)
|
|
461
456
|
stringex (2.8.6)
|
|
462
457
|
stringio (3.2.0)
|
|
463
|
-
temple (0.10.
|
|
458
|
+
temple (0.10.6)
|
|
464
459
|
thor (1.5.0)
|
|
465
|
-
tilt (2.
|
|
460
|
+
tilt (2.8.0)
|
|
466
461
|
timeout (0.6.1)
|
|
467
462
|
trustygems (0.2.1)
|
|
468
463
|
rake
|
|
@@ -471,7 +466,7 @@ GEM
|
|
|
471
466
|
concurrent-ruby (~> 1.0)
|
|
472
467
|
uglifier (4.2.1)
|
|
473
468
|
execjs (>= 0.3.0, < 3)
|
|
474
|
-
uri (1.
|
|
469
|
+
uri (1.1.1)
|
|
475
470
|
useragent (0.16.11)
|
|
476
471
|
warden (1.2.9)
|
|
477
472
|
rack (>= 2.0.9)
|
|
@@ -482,7 +477,7 @@ GEM
|
|
|
482
477
|
will_paginate (4.0.1)
|
|
483
478
|
xpath (3.2.0)
|
|
484
479
|
nokogiri (~> 1.8)
|
|
485
|
-
zeitwerk (2.8.
|
|
480
|
+
zeitwerk (2.8.3)
|
|
486
481
|
|
|
487
482
|
PLATFORMS
|
|
488
483
|
aarch64-linux
|
|
@@ -504,9 +499,9 @@ DEPENDENCIES
|
|
|
504
499
|
factory_bot_rails (= 6.5.1)
|
|
505
500
|
file_validators
|
|
506
501
|
jsbundling-rails (~> 1.3)
|
|
507
|
-
launchy (~> 3.
|
|
502
|
+
launchy (~> 3.1.1)
|
|
508
503
|
mysql2
|
|
509
|
-
paper_trail (~>
|
|
504
|
+
paper_trail (~> 17.0.0)
|
|
510
505
|
paper_trail-association_tracking (~> 2.3.0)
|
|
511
506
|
poltergeist (~> 1.18.1)
|
|
512
507
|
pry-byebug
|
|
@@ -19,11 +19,22 @@ module Admin::PagesHelper
|
|
|
19
19
|
end
|
|
20
20
|
|
|
21
21
|
def parent_page_options(current_site, page)
|
|
22
|
-
parent_pages =
|
|
23
|
-
parent_pages.
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
22
|
+
parent_pages = Page.parent_pages(current_site.homepage_id).to_a
|
|
23
|
+
parent_pages << page.parent if page.parent && parent_pages.exclude?(page.parent)
|
|
24
|
+
# A page can never be its own parent. For a site's root page this would
|
|
25
|
+
# otherwise set parent_id to itself and create an infinite loop in the tree.
|
|
26
|
+
parent_pages.reject! { |p| p.id == page.id }
|
|
27
|
+
# The root (top) page of a site must have no parent, so give it a blank
|
|
28
|
+
# option. Without one the browser submits the first option on save, which
|
|
29
|
+
# gives the root page a parent and breaks the whole site.
|
|
30
|
+
return options_for_select([[t('select.none'), '']], '') if root_page?(current_site, page)
|
|
31
|
+
|
|
32
|
+
options = parent_pages.map { |p| [p.title, p.id] }
|
|
33
|
+
options_for_select(options, page.parent.id)
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
def root_page?(current_site, page)
|
|
37
|
+
page.id.present? && page.id == current_site.homepage_id
|
|
27
38
|
end
|
|
28
39
|
|
|
29
40
|
def revert_confirmation_message(version)
|
data/config/application.rb
CHANGED
|
@@ -5,7 +5,7 @@ module TrustyCms::AvailableLocales
|
|
|
5
5
|
available_locales = {}
|
|
6
6
|
TrustyCms.configuration.i18n.load_path.each do |path|
|
|
7
7
|
if File.exist?(path) && path !~ /_available_tags/
|
|
8
|
-
locale_yaml = YAML.load_file(path)
|
|
8
|
+
locale_yaml = YAML.load_file(path, aliases: true)
|
|
9
9
|
stem = File.basename(path, '.yml')
|
|
10
10
|
if locale_yaml[stem] && lang = locale_yaml[stem]['this_file_language']
|
|
11
11
|
available_locales[lang] = stem
|
data/lib/trusty_cms/setup.rb
CHANGED
|
@@ -3,7 +3,7 @@ module TrustyCms
|
|
|
3
3
|
class << self
|
|
4
4
|
def establish_connection
|
|
5
5
|
unless ActiveRecord::Base.connected?
|
|
6
|
-
connection_hash = YAML.load_file("#{Rails.root}/config/database.yml").to_hash
|
|
6
|
+
connection_hash = YAML.load_file("#{Rails.root}/config/database.yml", aliases: true).to_hash
|
|
7
7
|
env_connection = connection_hash[Rails.env]
|
|
8
8
|
ActiveRecord::Base.establish_connection(env_connection)
|
|
9
9
|
end
|
|
@@ -23,7 +23,7 @@ module TrustyCms
|
|
|
23
23
|
begin
|
|
24
24
|
TrustyCms::Config.transaction do
|
|
25
25
|
TrustyCms::Config.delete_all if clear
|
|
26
|
-
configs = YAML.load(YAML.load_file(path))
|
|
26
|
+
configs = YAML.load(YAML.load_file(path), aliases: true)
|
|
27
27
|
configs.each do |key, value|
|
|
28
28
|
c = TrustyCms::Config.find_or_initialize_by_key(key)
|
|
29
29
|
c.value = value
|
data/lib/trusty_cms/version.rb
CHANGED
|
@@ -116,18 +116,27 @@ RSpec.describe Admin::PagesController, type: :controller do
|
|
|
116
116
|
end
|
|
117
117
|
|
|
118
118
|
describe 'GET #search' do
|
|
119
|
-
|
|
120
|
-
|
|
119
|
+
# The suite-wide stub returns nil, which the real Page.current_site can't do:
|
|
120
|
+
# the multi-site extension defines it as `@current_site ||= Site.default`, and
|
|
121
|
+
# Site.default ends in a catchall it creates. #search is the one action that
|
|
122
|
+
# reads it, so stub it faithfully here and let the fallback actually run.
|
|
123
|
+
let(:site) { create(:site) }
|
|
121
124
|
|
|
122
|
-
|
|
125
|
+
before { allow(Page).to receive(:current_site).and_return(site) }
|
|
126
|
+
|
|
127
|
+
it 'falls back to the current site when no site_id is given' do
|
|
128
|
+
create(:page, title: 'Findable', slug: 'findable', parent: home, site_id: site.id)
|
|
129
|
+
|
|
130
|
+
get :search, params: { search: { query: 'Findable' } }
|
|
123
131
|
|
|
124
132
|
expect(response).to have_http_status(:ok)
|
|
133
|
+
expect(controller.instance_variable_get(:@site_id)).to eq(site.id)
|
|
125
134
|
titles = controller.instance_variable_get(:@pages).map(&:title)
|
|
126
135
|
expect(titles).to include('Findable')
|
|
127
136
|
end
|
|
128
137
|
|
|
129
138
|
it 'does not run a query when none is given' do
|
|
130
|
-
get :search
|
|
139
|
+
get :search
|
|
131
140
|
expect(controller.instance_variable_get(:@pages)).to be_nil
|
|
132
141
|
end
|
|
133
142
|
end
|
|
@@ -142,21 +151,17 @@ RSpec.describe Admin::PagesController, type: :controller do
|
|
|
142
151
|
end
|
|
143
152
|
|
|
144
153
|
describe 'PUT #restore' do
|
|
145
|
-
#
|
|
146
|
-
#
|
|
147
|
-
#
|
|
148
|
-
|
|
149
|
-
# a timestamp in its versioned state raises Psych::DisallowedClass. Page
|
|
150
|
-
# restore is effectively broken until paper_trail's serializer is configured
|
|
151
|
-
# with permitted classes (e.g. via ActiveRecord::Base.yaml_column_permitted_classes
|
|
152
|
-
# or a custom serializer). Characterizing current behavior.
|
|
153
|
-
it 'currently fails to reify a versioned page (Psych safe-load blocker)' do
|
|
154
|
+
# reify YAML-loads the stored version under Psych 4+ safe-load, which needs
|
|
155
|
+
# ActiveSupport::TimeWithZone (and friends) in
|
|
156
|
+
# ActiveRecord.yaml_column_permitted_classes — configured in the dummy app.
|
|
157
|
+
it 'reifies the prior version and redirects to edit' do
|
|
154
158
|
page = create(:page, title: 'V1', parent: home)
|
|
155
159
|
PaperTrail.request(whodunnit: admin.id.to_s) { page.update!(title: 'V2') }
|
|
156
160
|
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
161
|
+
put :restore, params: { id: page.id, version_index: 1 }
|
|
162
|
+
|
|
163
|
+
expect(response).to redirect_to(edit_admin_page_path(page))
|
|
164
|
+
expect(page.reload.title).to eq('V1')
|
|
160
165
|
end
|
|
161
166
|
end
|
|
162
167
|
end
|
|
@@ -41,6 +41,7 @@ module TrustyCms
|
|
|
41
41
|
|
|
42
42
|
config.encoding = 'utf-8'
|
|
43
43
|
config.time_zone = 'UTC'
|
|
44
|
+
|
|
44
45
|
# Skip frameworks you're not going to use (only works if using vendor/rails).
|
|
45
46
|
# To use Rails without a database, you must remove the Active Record framework
|
|
46
47
|
# config.frameworks -= [ :action_mailer ]
|
|
@@ -119,6 +120,11 @@ module TrustyCms
|
|
|
119
120
|
end
|
|
120
121
|
end
|
|
121
122
|
|
|
123
|
+
config.active_record.yaml_column_permitted_classes = [
|
|
124
|
+
Symbol, Date, Time, ActiveSupport::TimeWithZone, ActiveSupport::TimeZone,
|
|
125
|
+
ActiveSupport::HashWithIndifferentAccess, BigDecimal
|
|
126
|
+
]
|
|
127
|
+
|
|
122
128
|
config.to_prepare do
|
|
123
129
|
extension_loader.deactivate_extensions
|
|
124
130
|
extension_loader.load_extensions
|
|
@@ -72,6 +72,36 @@ describe Admin::PagesHelper, type: :helper do
|
|
|
72
72
|
expect(html).to include('Home')
|
|
73
73
|
expect(html).to include("value=\"#{home.id}\"")
|
|
74
74
|
end
|
|
75
|
+
|
|
76
|
+
it 'offers a blank parent option for the site root page' do
|
|
77
|
+
home = FactoryBot.create(:home, title: 'Home')
|
|
78
|
+
current_site = double('Site', homepage_id: home.id)
|
|
79
|
+
allow(Page).to receive(:parent_pages).with(home.id).and_return([home])
|
|
80
|
+
|
|
81
|
+
html = helper.parent_page_options(current_site, home)
|
|
82
|
+
expect(html).to include('<option selected="selected" value=""><none></option>')
|
|
83
|
+
end
|
|
84
|
+
|
|
85
|
+
it 'never lists the root page as a candidate for its own parent' do
|
|
86
|
+
home = FactoryBot.create(:home, title: 'Home')
|
|
87
|
+
current_site = double('Site', homepage_id: home.id)
|
|
88
|
+
allow(Page).to receive(:parent_pages).with(home.id).and_return([home])
|
|
89
|
+
|
|
90
|
+
html = helper.parent_page_options(current_site, home)
|
|
91
|
+
|
|
92
|
+
expect(html).not_to include("value=\"#{home.id}\"")
|
|
93
|
+
end
|
|
94
|
+
|
|
95
|
+
it 'does not offer a blank parent option for non-root pages' do
|
|
96
|
+
home = FactoryBot.create(:home, title: 'Home')
|
|
97
|
+
child = FactoryBot.create(:page, title: 'Child', slug: 'child', parent: home)
|
|
98
|
+
current_site = double('Site', homepage_id: home.id)
|
|
99
|
+
allow(Page).to receive(:parent_pages).with(home.id).and_return([home])
|
|
100
|
+
|
|
101
|
+
html = helper.parent_page_options(current_site, child)
|
|
102
|
+
|
|
103
|
+
expect(html).not_to include('<option value="">')
|
|
104
|
+
end
|
|
75
105
|
end
|
|
76
106
|
|
|
77
107
|
describe '#revert_confirmation_message' do
|
data/spec/spec_helper.rb
CHANGED
|
@@ -13,9 +13,9 @@ SimpleCov::Formatter::LcovFormatter.config do |config|
|
|
|
13
13
|
end
|
|
14
14
|
|
|
15
15
|
SimpleCov.configure do
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
16
|
+
skip %r{^/lib/generators/}
|
|
17
|
+
skip 'lib/trusty_cms/setup.rb'
|
|
18
|
+
skip %r{/templates/} # generated-app boilerplate
|
|
19
19
|
end
|
|
20
20
|
|
|
21
21
|
SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter.new([
|
data/trusty_cms.gemspec
CHANGED
|
@@ -37,21 +37,22 @@ a general purpose content management system--not merely a blogging engine.'
|
|
|
37
37
|
s.add_dependency 'diffy'
|
|
38
38
|
s.add_dependency 'drb'
|
|
39
39
|
s.add_dependency 'execjs', '~> 2.7'
|
|
40
|
-
s.add_dependency 'haml', '
|
|
41
|
-
s.add_dependency 'haml-rails', '
|
|
40
|
+
s.add_dependency 'haml', '>= 6.3', '< 7.4'
|
|
41
|
+
s.add_dependency 'haml-rails', '>= 2.1', '< 4.0'
|
|
42
42
|
s.add_dependency 'highline', '>= 1.7.8', '< 3.2.0'
|
|
43
43
|
s.add_dependency 'image_processing'
|
|
44
44
|
s.add_dependency 'kraken-io'
|
|
45
|
+
s.add_dependency 'mini_magick', '~> 5.0'
|
|
45
46
|
s.add_dependency 'mini_racer'
|
|
46
47
|
s.add_dependency 'mutex_m'
|
|
47
48
|
s.add_dependency 'mysql2'
|
|
48
|
-
s.add_dependency 'paper_trail', '~>
|
|
49
|
+
s.add_dependency 'paper_trail', '~> 17.0.0'
|
|
49
50
|
s.add_dependency 'paper_trail-association_tracking', '>= 2.2.1', '< 2.4.0'
|
|
50
51
|
s.add_dependency 'psych', '5.4.0'
|
|
51
52
|
s.add_dependency 'rack', '>= 2.0.1', '< 3.2.0'
|
|
52
53
|
s.add_dependency 'rack-cache', '~> 1.7'
|
|
53
54
|
s.add_dependency 'radius', '~> 0.8'
|
|
54
|
-
s.add_dependency 'rails', '
|
|
55
|
+
s.add_dependency 'rails', '~> 8.1.0'
|
|
55
56
|
s.add_dependency 'rake', '< 14.0'
|
|
56
57
|
s.add_dependency 'ransack', '~> 4.2.1'
|
|
57
58
|
s.add_dependency 'rdoc', '>= 5.1', '< 9.0'
|
data/yarn.lock
CHANGED
|
@@ -1671,9 +1671,9 @@ fast-glob@^3.2.5, fast-glob@^3.2.9:
|
|
|
1671
1671
|
micromatch "^4.0.8"
|
|
1672
1672
|
|
|
1673
1673
|
fast-uri@^3.0.1:
|
|
1674
|
-
version "3.1.
|
|
1675
|
-
resolved "https://registry.yarnpkg.com/fast-uri/-/fast-uri-3.1.
|
|
1676
|
-
integrity sha512-
|
|
1674
|
+
version "3.1.5"
|
|
1675
|
+
resolved "https://registry.yarnpkg.com/fast-uri/-/fast-uri-3.1.5.tgz#610f37419a030270430cecd68d74e3d4d96725d0"
|
|
1676
|
+
integrity sha512-gHwA1O9LDIcKunMKhObS/HimwtehO1nPUECKAu5TpKgaO19fcWEl4bliWe1jWxVFvIXztJjjQ4L8XQ1EU9f7Jw==
|
|
1677
1677
|
|
|
1678
1678
|
fastest-levenshtein@^1.0.12:
|
|
1679
1679
|
version "1.0.16"
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: trusty-cms
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version:
|
|
4
|
+
version: 8.1.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- TrustyCms CMS dev team
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-
|
|
11
|
+
date: 2026-09-16 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: activestorage-validator
|
|
@@ -194,30 +194,42 @@ dependencies:
|
|
|
194
194
|
name: haml
|
|
195
195
|
requirement: !ruby/object:Gem::Requirement
|
|
196
196
|
requirements:
|
|
197
|
-
- - "
|
|
197
|
+
- - ">="
|
|
198
198
|
- !ruby/object:Gem::Version
|
|
199
|
-
version: 6.3
|
|
199
|
+
version: '6.3'
|
|
200
|
+
- - "<"
|
|
201
|
+
- !ruby/object:Gem::Version
|
|
202
|
+
version: '7.4'
|
|
200
203
|
type: :runtime
|
|
201
204
|
prerelease: false
|
|
202
205
|
version_requirements: !ruby/object:Gem::Requirement
|
|
203
206
|
requirements:
|
|
204
|
-
- - "
|
|
207
|
+
- - ">="
|
|
208
|
+
- !ruby/object:Gem::Version
|
|
209
|
+
version: '6.3'
|
|
210
|
+
- - "<"
|
|
205
211
|
- !ruby/object:Gem::Version
|
|
206
|
-
version:
|
|
212
|
+
version: '7.4'
|
|
207
213
|
- !ruby/object:Gem::Dependency
|
|
208
214
|
name: haml-rails
|
|
209
215
|
requirement: !ruby/object:Gem::Requirement
|
|
210
216
|
requirements:
|
|
211
|
-
- - "
|
|
217
|
+
- - ">="
|
|
212
218
|
- !ruby/object:Gem::Version
|
|
213
219
|
version: '2.1'
|
|
220
|
+
- - "<"
|
|
221
|
+
- !ruby/object:Gem::Version
|
|
222
|
+
version: '4.0'
|
|
214
223
|
type: :runtime
|
|
215
224
|
prerelease: false
|
|
216
225
|
version_requirements: !ruby/object:Gem::Requirement
|
|
217
226
|
requirements:
|
|
218
|
-
- - "
|
|
227
|
+
- - ">="
|
|
219
228
|
- !ruby/object:Gem::Version
|
|
220
229
|
version: '2.1'
|
|
230
|
+
- - "<"
|
|
231
|
+
- !ruby/object:Gem::Version
|
|
232
|
+
version: '4.0'
|
|
221
233
|
- !ruby/object:Gem::Dependency
|
|
222
234
|
name: highline
|
|
223
235
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -266,6 +278,20 @@ dependencies:
|
|
|
266
278
|
- - ">="
|
|
267
279
|
- !ruby/object:Gem::Version
|
|
268
280
|
version: '0'
|
|
281
|
+
- !ruby/object:Gem::Dependency
|
|
282
|
+
name: mini_magick
|
|
283
|
+
requirement: !ruby/object:Gem::Requirement
|
|
284
|
+
requirements:
|
|
285
|
+
- - "~>"
|
|
286
|
+
- !ruby/object:Gem::Version
|
|
287
|
+
version: '5.0'
|
|
288
|
+
type: :runtime
|
|
289
|
+
prerelease: false
|
|
290
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
291
|
+
requirements:
|
|
292
|
+
- - "~>"
|
|
293
|
+
- !ruby/object:Gem::Version
|
|
294
|
+
version: '5.0'
|
|
269
295
|
- !ruby/object:Gem::Dependency
|
|
270
296
|
name: mini_racer
|
|
271
297
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -314,14 +340,14 @@ dependencies:
|
|
|
314
340
|
requirements:
|
|
315
341
|
- - "~>"
|
|
316
342
|
- !ruby/object:Gem::Version
|
|
317
|
-
version:
|
|
343
|
+
version: 17.0.0
|
|
318
344
|
type: :runtime
|
|
319
345
|
prerelease: false
|
|
320
346
|
version_requirements: !ruby/object:Gem::Requirement
|
|
321
347
|
requirements:
|
|
322
348
|
- - "~>"
|
|
323
349
|
- !ruby/object:Gem::Version
|
|
324
|
-
version:
|
|
350
|
+
version: 17.0.0
|
|
325
351
|
- !ruby/object:Gem::Dependency
|
|
326
352
|
name: paper_trail-association_tracking
|
|
327
353
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -408,22 +434,16 @@ dependencies:
|
|
|
408
434
|
name: rails
|
|
409
435
|
requirement: !ruby/object:Gem::Requirement
|
|
410
436
|
requirements:
|
|
411
|
-
- - "
|
|
412
|
-
- !ruby/object:Gem::Version
|
|
413
|
-
version: '7.2'
|
|
414
|
-
- - "<"
|
|
437
|
+
- - "~>"
|
|
415
438
|
- !ruby/object:Gem::Version
|
|
416
|
-
version:
|
|
439
|
+
version: 8.1.0
|
|
417
440
|
type: :runtime
|
|
418
441
|
prerelease: false
|
|
419
442
|
version_requirements: !ruby/object:Gem::Requirement
|
|
420
443
|
requirements:
|
|
421
|
-
- - "
|
|
422
|
-
- !ruby/object:Gem::Version
|
|
423
|
-
version: '7.2'
|
|
424
|
-
- - "<"
|
|
444
|
+
- - "~>"
|
|
425
445
|
- !ruby/object:Gem::Version
|
|
426
|
-
version:
|
|
446
|
+
version: 8.1.0
|
|
427
447
|
- !ruby/object:Gem::Dependency
|
|
428
448
|
name: rake
|
|
429
449
|
requirement: !ruby/object:Gem::Requirement
|