serviceworker-rails 0.5.5 → 0.7.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.
Files changed (59) hide show
  1. checksums.yaml +5 -5
  2. data/.github/workflows/ci.yml +66 -0
  3. data/.github/workflows/release.yml +31 -0
  4. data/.gitignore +4 -3
  5. data/.node-version +1 -0
  6. data/.rubocop.yml +18 -91
  7. data/.ruby-version +1 -0
  8. data/.standard.yml +1 -0
  9. data/CHANGELOG.md +13 -0
  10. data/Gemfile +8 -6
  11. data/Gemfile.lock +355 -0
  12. data/Guardfile +5 -3
  13. data/README.md +6 -5
  14. data/Rakefile +19 -5
  15. data/bin/_guard-core +2 -1
  16. data/bin/console +1 -0
  17. data/bin/guard +2 -1
  18. data/bin/rake +3 -1
  19. data/bin/rubocop +3 -1
  20. data/bin/setup +4 -1
  21. data/bin/standardrb +29 -0
  22. data/gemfiles/rails_7.0.gemfile +12 -0
  23. data/gemfiles/rails_7.0.gemfile.lock +324 -0
  24. data/gemfiles/rails_7.1.gemfile +12 -0
  25. data/gemfiles/rails_7.1.gemfile.lock +348 -0
  26. data/gemfiles/rails_8.0.gemfile +12 -0
  27. data/gemfiles/rails_8.0.gemfile.lock +479 -0
  28. data/gemfiles/rails_8.1.gemfile +12 -0
  29. data/gemfiles/rails_8.1.gemfile.lock +486 -0
  30. data/gemfiles/rails_8.1_rack3.gemfile +20 -0
  31. data/gemfiles/rails_8.1_rack3.gemfile.lock +485 -0
  32. data/lib/assets/images/convert.rb +4 -0
  33. data/lib/assets/images/serviceworker-rails/heart-144x144.png +0 -0
  34. data/lib/assets/images/serviceworker-rails/heart-384x384.png +0 -0
  35. data/lib/generators/serviceworker/install_generator.rb +4 -20
  36. data/lib/generators/serviceworker/templates/serviceworker-companion.js +10 -5
  37. data/lib/generators/serviceworker/templates/serviceworker.js +3 -3
  38. data/lib/generators/serviceworker/templates/serviceworker.rb +2 -0
  39. data/lib/service_worker.rb +2 -0
  40. data/lib/serviceworker/engine.rb +3 -2
  41. data/lib/serviceworker/handlers/rack_handler.rb +35 -0
  42. data/lib/serviceworker/{rails/handler.rb → handlers/sprockets_handler.rb} +14 -5
  43. data/lib/serviceworker/handlers.rb +64 -0
  44. data/lib/serviceworker/middleware.rb +16 -14
  45. data/lib/serviceworker/rails/version.rb +2 -1
  46. data/lib/serviceworker/rails.rb +2 -1
  47. data/lib/serviceworker/route.rb +28 -23
  48. data/lib/serviceworker/router.rb +9 -9
  49. data/lib/serviceworker-rails.rb +2 -1
  50. data/lib/serviceworker.rb +2 -0
  51. data/serviceworker-rails.gemspec +28 -19
  52. metadata +163 -41
  53. data/.travis.yml +0 -10
  54. data/Appraisals +0 -12
  55. data/bin/appraisal +0 -17
  56. data/gemfiles/rails_3.gemfile +0 -15
  57. data/gemfiles/rails_4.gemfile +0 -14
  58. data/gemfiles/rails_5.gemfile +0 -14
  59. data/lib/serviceworker/handler.rb +0 -22
data/Rakefile CHANGED
@@ -1,18 +1,32 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require "rubygems"
2
4
  require "bundler/setup"
3
5
  require "bundler/gem_tasks"
4
6
  require "rake/testtask"
5
- require "rubocop/rake_task"
7
+ require "standard/rake"
6
8
 
7
- APP_RAKEFILE = File.expand_path("../test/sample/Rakefile", __FILE__)
9
+ APP_RAKEFILE = File.expand_path("test/sample/Rakefile", __dir__)
8
10
  load "rails/tasks/engine.rake"
9
11
 
10
- RuboCop::RakeTask.new
11
-
12
12
  Rake::TestTask.new(:test) do |t|
13
13
  t.libs << "test"
14
14
  t.libs << "lib"
15
15
  t.test_files = FileList["test/**/*_test.rb"]
16
16
  end
17
17
 
18
- task default: [:test, :rubocop]
18
+ task default: %i[test standard]
19
+
20
+ namespace :app do
21
+ task :yarn_install do
22
+ Dir.chdir("test/sample") do
23
+ sh "yarn install"
24
+ end
25
+ end
26
+
27
+ task :yarn_install_frozen do
28
+ Dir.chdir("test/sample") do
29
+ sh "yarn install --frozen-lockfile"
30
+ end
31
+ end
32
+ end
data/bin/_guard-core CHANGED
@@ -1,5 +1,6 @@
1
1
  #!/usr/bin/env ruby
2
2
  # frozen_string_literal: true
3
+
3
4
  #
4
5
  # This file was generated by Bundler.
5
6
  #
@@ -9,7 +10,7 @@
9
10
 
10
11
  require "pathname"
11
12
  ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
12
- Pathname.new(__FILE__).realpath)
13
+ Pathname.new(__FILE__).realpath)
13
14
 
14
15
  require "rubygems"
15
16
  require "bundler/setup"
data/bin/console CHANGED
@@ -1,4 +1,5 @@
1
1
  #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
2
3
 
3
4
  require "bundler/setup"
4
5
  require "serviceworker/rails"
data/bin/guard CHANGED
@@ -1,5 +1,6 @@
1
1
  #!/usr/bin/env ruby
2
2
  # frozen_string_literal: true
3
+
3
4
  #
4
5
  # This file was generated by Bundler.
5
6
  #
@@ -9,7 +10,7 @@
9
10
 
10
11
  require "pathname"
11
12
  ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
12
- Pathname.new(__FILE__).realpath)
13
+ Pathname.new(__FILE__).realpath)
13
14
 
14
15
  require "rubygems"
15
16
  require "bundler/setup"
data/bin/rake CHANGED
@@ -1,4 +1,6 @@
1
1
  #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
2
4
  #
3
5
  # This file was generated by Bundler.
4
6
  #
@@ -8,7 +10,7 @@
8
10
 
9
11
  require "pathname"
10
12
  ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
11
- Pathname.new(__FILE__).realpath)
13
+ Pathname.new(__FILE__).realpath)
12
14
 
13
15
  require "rubygems"
14
16
  require "bundler/setup"
data/bin/rubocop CHANGED
@@ -1,4 +1,6 @@
1
1
  #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
2
4
  #
3
5
  # This file was generated by Bundler.
4
6
  #
@@ -8,7 +10,7 @@
8
10
 
9
11
  require "pathname"
10
12
  ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
11
- Pathname.new(__FILE__).realpath)
13
+ Pathname.new(__FILE__).realpath)
12
14
 
13
15
  require "rubygems"
14
16
  require "bundler/setup"
data/bin/setup CHANGED
@@ -5,4 +5,7 @@ set -vx
5
5
 
6
6
  bundle install
7
7
 
8
- # Do any other automated setup that you need to do here
8
+ BUNDLE_GEMFILE=gemfiles/rails_6.0.gemfile bundle install
9
+ BUNDLE_GEMFILE=gemfiles/rails_6.1.gemfile bundle install
10
+ BUNDLE_GEMFILE=gemfiles/rails_7.0.gemfile bundle install
11
+ BUNDLE_GEMFILE=gemfiles/rails_7.1.gemfile bundle install
data/bin/standardrb ADDED
@@ -0,0 +1,29 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ #
5
+ # This file was generated by Bundler.
6
+ #
7
+ # The application 'standardrb' is installed as part of a gem, and
8
+ # this file is here to facilitate running it.
9
+ #
10
+
11
+ require "pathname"
12
+ ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
13
+ Pathname.new(__FILE__).realpath)
14
+
15
+ bundle_binstub = File.expand_path("../bundle", __FILE__)
16
+
17
+ if File.file?(bundle_binstub)
18
+ if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/
19
+ load(bundle_binstub)
20
+ else
21
+ abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
22
+ Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
23
+ end
24
+ end
25
+
26
+ require "rubygems"
27
+ require "bundler/setup"
28
+
29
+ load Gem.bin_path("standard", "standardrb")
@@ -0,0 +1,12 @@
1
+ source "https://rubygems.org"
2
+
3
+ gem "rails", "~> 7.0.0"
4
+
5
+ group :development, :test do
6
+ gem "guard", require: false
7
+ gem "guard-minitest", require: false
8
+ gem "pry"
9
+ gem "pry-byebug", platforms: [:mri]
10
+ end
11
+
12
+ gemspec path: "../"
@@ -0,0 +1,324 @@
1
+ PATH
2
+ remote: ..
3
+ specs:
4
+ serviceworker-rails (0.7.0)
5
+ benchmark
6
+ bigdecimal
7
+ cgi
8
+ drb
9
+ logger
10
+ mutex_m
11
+ ostruct
12
+ rack (>= 2.1)
13
+ railties (>= 7.0)
14
+
15
+ GEM
16
+ remote: https://rubygems.org/
17
+ specs:
18
+ actioncable (7.0.8.4)
19
+ actionpack (= 7.0.8.4)
20
+ activesupport (= 7.0.8.4)
21
+ nio4r (~> 2.0)
22
+ websocket-driver (>= 0.6.1)
23
+ actionmailbox (7.0.8.4)
24
+ actionpack (= 7.0.8.4)
25
+ activejob (= 7.0.8.4)
26
+ activerecord (= 7.0.8.4)
27
+ activestorage (= 7.0.8.4)
28
+ activesupport (= 7.0.8.4)
29
+ mail (>= 2.7.1)
30
+ net-imap
31
+ net-pop
32
+ net-smtp
33
+ actionmailer (7.0.8.4)
34
+ actionpack (= 7.0.8.4)
35
+ actionview (= 7.0.8.4)
36
+ activejob (= 7.0.8.4)
37
+ activesupport (= 7.0.8.4)
38
+ mail (~> 2.5, >= 2.5.4)
39
+ net-imap
40
+ net-pop
41
+ net-smtp
42
+ rails-dom-testing (~> 2.0)
43
+ actionpack (7.0.8.4)
44
+ actionview (= 7.0.8.4)
45
+ activesupport (= 7.0.8.4)
46
+ rack (~> 2.0, >= 2.2.4)
47
+ rack-test (>= 0.6.3)
48
+ rails-dom-testing (~> 2.0)
49
+ rails-html-sanitizer (~> 1.0, >= 1.2.0)
50
+ actiontext (7.0.8.4)
51
+ actionpack (= 7.0.8.4)
52
+ activerecord (= 7.0.8.4)
53
+ activestorage (= 7.0.8.4)
54
+ activesupport (= 7.0.8.4)
55
+ globalid (>= 0.6.0)
56
+ nokogiri (>= 1.8.5)
57
+ actionview (7.0.8.4)
58
+ activesupport (= 7.0.8.4)
59
+ builder (~> 3.1)
60
+ erubi (~> 1.4)
61
+ rails-dom-testing (~> 2.0)
62
+ rails-html-sanitizer (~> 1.1, >= 1.2.0)
63
+ activejob (7.0.8.4)
64
+ activesupport (= 7.0.8.4)
65
+ globalid (>= 0.3.6)
66
+ activemodel (7.0.8.4)
67
+ activesupport (= 7.0.8.4)
68
+ activerecord (7.0.8.4)
69
+ activemodel (= 7.0.8.4)
70
+ activesupport (= 7.0.8.4)
71
+ activestorage (7.0.8.4)
72
+ actionpack (= 7.0.8.4)
73
+ activejob (= 7.0.8.4)
74
+ activerecord (= 7.0.8.4)
75
+ activesupport (= 7.0.8.4)
76
+ marcel (~> 1.0)
77
+ mini_mime (>= 1.1.0)
78
+ activesupport (7.0.8.4)
79
+ concurrent-ruby (~> 1.0, >= 1.0.2)
80
+ i18n (>= 1.6, < 2)
81
+ minitest (>= 5.1)
82
+ tzinfo (~> 2.0)
83
+ ast (2.4.2)
84
+ base64 (0.2.0)
85
+ benchmark (0.5.0)
86
+ bigdecimal (4.1.2)
87
+ builder (3.3.0)
88
+ byebug (13.0.0)
89
+ reline (>= 0.6.0)
90
+ cgi (0.5.1)
91
+ coderay (1.1.3)
92
+ concurrent-ruby (1.3.3)
93
+ crass (1.0.6)
94
+ date (3.5.1)
95
+ docile (1.4.0)
96
+ drb (2.2.3)
97
+ erubi (1.13.0)
98
+ ffi (1.17.4-aarch64-linux-gnu)
99
+ ffi (1.17.4-aarch64-linux-musl)
100
+ ffi (1.17.4-arm-linux-gnu)
101
+ ffi (1.17.4-arm-linux-musl)
102
+ ffi (1.17.4-arm64-darwin)
103
+ ffi (1.17.4-x86-linux-gnu)
104
+ ffi (1.17.4-x86-linux-musl)
105
+ ffi (1.17.4-x86_64-darwin)
106
+ ffi (1.17.4-x86_64-linux-gnu)
107
+ ffi (1.17.4-x86_64-linux-musl)
108
+ formatador (1.1.0)
109
+ globalid (1.2.1)
110
+ activesupport (>= 6.1)
111
+ guard (2.18.1)
112
+ formatador (>= 0.2.4)
113
+ listen (>= 2.7, < 4.0)
114
+ lumberjack (>= 1.0.12, < 2.0)
115
+ nenv (~> 0.1)
116
+ notiffany (~> 0.0)
117
+ pry (>= 0.13.0)
118
+ shellany (~> 0.0)
119
+ thor (>= 0.18.1)
120
+ guard-compat (1.2.1)
121
+ guard-minitest (2.4.6)
122
+ guard-compat (~> 1.2)
123
+ minitest (>= 3.0)
124
+ i18n (1.14.5)
125
+ concurrent-ruby (~> 1.0)
126
+ io-console (0.8.2)
127
+ json (2.7.2)
128
+ language_server-protocol (3.17.0.3)
129
+ lint_roller (1.1.0)
130
+ listen (3.9.0)
131
+ rb-fsevent (~> 0.10, >= 0.10.3)
132
+ rb-inotify (~> 0.9, >= 0.9.10)
133
+ logger (1.7.0)
134
+ loofah (2.22.0)
135
+ crass (~> 1.0.2)
136
+ nokogiri (>= 1.12.0)
137
+ lumberjack (1.2.10)
138
+ mail (2.8.1)
139
+ mini_mime (>= 0.1.1)
140
+ net-imap
141
+ net-pop
142
+ net-smtp
143
+ marcel (1.0.4)
144
+ method_source (1.1.0)
145
+ mini_mime (1.1.5)
146
+ mini_portile2 (2.8.9)
147
+ minitest (5.27.0)
148
+ mutex_m (0.2.0)
149
+ nenv (0.3.0)
150
+ net-imap (0.6.4.1)
151
+ date
152
+ net-protocol
153
+ net-pop (0.1.2)
154
+ net-protocol
155
+ net-protocol (0.2.2)
156
+ timeout
157
+ net-smtp (0.5.1)
158
+ net-protocol
159
+ nio4r (2.7.3)
160
+ nokogiri (1.19.4)
161
+ mini_portile2 (~> 2.8.2)
162
+ racc (~> 1.4)
163
+ nokogiri (1.19.4-aarch64-linux-gnu)
164
+ racc (~> 1.4)
165
+ nokogiri (1.19.4-aarch64-linux-musl)
166
+ racc (~> 1.4)
167
+ nokogiri (1.19.4-arm-linux-gnu)
168
+ racc (~> 1.4)
169
+ nokogiri (1.19.4-arm-linux-musl)
170
+ racc (~> 1.4)
171
+ nokogiri (1.19.4-arm64-darwin)
172
+ racc (~> 1.4)
173
+ nokogiri (1.19.4-x86_64-darwin)
174
+ racc (~> 1.4)
175
+ nokogiri (1.19.4-x86_64-linux-gnu)
176
+ racc (~> 1.4)
177
+ nokogiri (1.19.4-x86_64-linux-musl)
178
+ racc (~> 1.4)
179
+ notiffany (0.1.3)
180
+ nenv (~> 0.1)
181
+ shellany (~> 0.0)
182
+ ostruct (0.6.3)
183
+ parallel (1.28.0)
184
+ parser (3.3.11.1)
185
+ ast (~> 2.4.1)
186
+ racc
187
+ prism (1.9.0)
188
+ pry (0.16.0)
189
+ coderay (~> 1.1)
190
+ method_source (~> 1.0)
191
+ reline (>= 0.6.0)
192
+ pry-byebug (3.12.0)
193
+ byebug (~> 13.0)
194
+ pry (>= 0.13, < 0.17)
195
+ racc (1.8.1)
196
+ rack (2.2.9)
197
+ rack-test (2.1.0)
198
+ rack (>= 1.3)
199
+ rails (7.0.8.4)
200
+ actioncable (= 7.0.8.4)
201
+ actionmailbox (= 7.0.8.4)
202
+ actionmailer (= 7.0.8.4)
203
+ actionpack (= 7.0.8.4)
204
+ actiontext (= 7.0.8.4)
205
+ actionview (= 7.0.8.4)
206
+ activejob (= 7.0.8.4)
207
+ activemodel (= 7.0.8.4)
208
+ activerecord (= 7.0.8.4)
209
+ activestorage (= 7.0.8.4)
210
+ activesupport (= 7.0.8.4)
211
+ bundler (>= 1.15.0)
212
+ railties (= 7.0.8.4)
213
+ rails-dom-testing (2.2.0)
214
+ activesupport (>= 5.0.0)
215
+ minitest
216
+ nokogiri (>= 1.6)
217
+ rails-html-sanitizer (1.6.0)
218
+ loofah (~> 2.21)
219
+ nokogiri (~> 1.14)
220
+ railties (7.0.8.4)
221
+ actionpack (= 7.0.8.4)
222
+ activesupport (= 7.0.8.4)
223
+ method_source
224
+ rake (>= 12.2)
225
+ thor (~> 1.0)
226
+ zeitwerk (~> 2.5)
227
+ rainbow (3.1.1)
228
+ rake (13.2.1)
229
+ rb-fsevent (0.11.2)
230
+ rb-inotify (0.11.1)
231
+ ffi (~> 1.0)
232
+ regexp_parser (2.12.0)
233
+ reline (0.6.3)
234
+ io-console (~> 0.5)
235
+ rubocop (1.87.0)
236
+ json (~> 2.3)
237
+ language_server-protocol (~> 3.17.0.2)
238
+ lint_roller (~> 1.1.0)
239
+ parallel (>= 1.10)
240
+ parser (>= 3.3.0.2)
241
+ rainbow (>= 2.2.2, < 4.0)
242
+ regexp_parser (>= 2.9.3, < 3.0)
243
+ rubocop-ast (>= 1.49.0, < 2.0)
244
+ ruby-progressbar (~> 1.7)
245
+ unicode-display_width (>= 2.4.0, < 4.0)
246
+ rubocop-ast (1.49.1)
247
+ parser (>= 3.3.7.2)
248
+ prism (~> 1.7)
249
+ rubocop-performance (1.26.1)
250
+ lint_roller (~> 1.1)
251
+ rubocop (>= 1.75.0, < 2.0)
252
+ rubocop-ast (>= 1.47.1, < 2.0)
253
+ ruby-progressbar (1.13.0)
254
+ shellany (0.0.1)
255
+ simplecov (0.22.0)
256
+ docile (~> 1.1)
257
+ simplecov-html (~> 0.11)
258
+ simplecov_json_formatter (~> 0.1)
259
+ simplecov-html (0.12.3)
260
+ simplecov_json_formatter (0.1.4)
261
+ sprockets (3.7.3)
262
+ base64
263
+ concurrent-ruby (~> 1.0)
264
+ rack (> 1, < 3)
265
+ sprockets-rails (3.5.1)
266
+ actionpack (>= 6.1)
267
+ activesupport (>= 6.1)
268
+ sprockets (>= 3.0.0)
269
+ standard (1.55.0)
270
+ language_server-protocol (~> 3.17.0.2)
271
+ lint_roller (~> 1.0)
272
+ rubocop (~> 1.87.0)
273
+ standard-custom (~> 1.0.0)
274
+ standard-performance (~> 1.8)
275
+ standard-custom (1.0.2)
276
+ lint_roller (~> 1.0)
277
+ rubocop (~> 1.50)
278
+ standard-performance (1.9.0)
279
+ lint_roller (~> 1.1)
280
+ rubocop-performance (~> 1.26.0)
281
+ thor (1.3.1)
282
+ timeout (0.6.1)
283
+ tzinfo (2.0.6)
284
+ concurrent-ruby (~> 1.0)
285
+ unicode-display_width (2.5.0)
286
+ websocket-driver (0.7.6)
287
+ websocket-extensions (>= 0.1.0)
288
+ websocket-extensions (0.1.5)
289
+ zeitwerk (2.6.16)
290
+
291
+ PLATFORMS
292
+ aarch64-linux
293
+ aarch64-linux-gnu
294
+ aarch64-linux-musl
295
+ arm-linux
296
+ arm-linux-gnu
297
+ arm-linux-musl
298
+ arm64-darwin
299
+ x86-linux
300
+ x86-linux-gnu
301
+ x86-linux-musl
302
+ x86_64-darwin
303
+ x86_64-linux
304
+ x86_64-linux-gnu
305
+ x86_64-linux-musl
306
+
307
+ DEPENDENCIES
308
+ guard
309
+ guard-minitest
310
+ minitest (~> 5.0)
311
+ parallel (~> 1.27)
312
+ pry
313
+ pry-byebug
314
+ rack-test
315
+ rails (~> 7.0.0)
316
+ rake
317
+ serviceworker-rails!
318
+ simplecov
319
+ sprockets (~> 3.0)
320
+ sprockets-rails
321
+ standard
322
+
323
+ BUNDLED WITH
324
+ 2.5.16
@@ -0,0 +1,12 @@
1
+ source "https://rubygems.org"
2
+
3
+ gem "rails", "~> 7.1.0"
4
+
5
+ group :development, :test do
6
+ gem "guard", require: false
7
+ gem "guard-minitest", require: false
8
+ gem "pry"
9
+ gem "pry-byebug", platforms: [:mri]
10
+ end
11
+
12
+ gemspec path: "../"