smart_assets 0.4.0 → 1.0.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 +5 -5
- data/LICENSE.txt +1 -1
- data/Rakefile +12 -0
- data/lib/smart_assets/rack.rb +12 -1
- data/lib/smart_assets/version.rb +3 -1
- metadata +34 -23
- data/.gitignore +0 -18
- data/CHANGELOG.md +0 -15
- data/Gemfile +0 -4
- data/smart_assets.gemspec +0 -26
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 12509d83d332a8563759cef0b244aa92d96290f3a5578cf6a5fa7dc47a3ad889
|
4
|
+
data.tar.gz: 67f2e3b9a3120dc9627a5d8ecfab71d648ebcb4207b66b34ad1afc464e149131
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5e403a748eaa88a6e7e633a62eb9fa23624200a44f4612e48770ad30c0c1cdee2f6036b97e874919eaed5f06bde4e5e3000a8532b5b994abb90ef82d00c8c20e
|
7
|
+
data.tar.gz: 245d5e89c79f3d2e8bdacedbceaf7e0e3bccda4064da5efdda1072497b946a7f82264d4ea9dd73ffae90c1a1472485ec47442c91985cd53aa2c14a7845f040ea
|
data/LICENSE.txt
CHANGED
data/Rakefile
CHANGED
@@ -1 +1,13 @@
|
|
1
|
+
require "bundler/setup"
|
2
|
+
|
1
3
|
require "bundler/gem_tasks"
|
4
|
+
require "rake/testtask"
|
5
|
+
|
6
|
+
Rake::TestTask.new(:test) do |t|
|
7
|
+
`pushd test/dummy ; rails assets:clobber assets:precompile`
|
8
|
+
t.libs << "test"
|
9
|
+
t.pattern = "test/**/*_test.rb"
|
10
|
+
t.verbose = false
|
11
|
+
end
|
12
|
+
|
13
|
+
task default: :test
|
data/lib/smart_assets/rack.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module SmartAssets
|
2
4
|
class Rack
|
3
5
|
|
@@ -13,11 +15,20 @@ module SmartAssets
|
|
13
15
|
end
|
14
16
|
|
15
17
|
digest_path = File.join(manifest.dir, digest_asset)
|
16
|
-
if File.
|
18
|
+
if File.exist?(digest_path)
|
17
19
|
env['PATH_INFO'] = "#{@prefix}/#{digest_asset}"
|
18
20
|
end
|
19
21
|
status, headers, body = @app.call(env)
|
20
22
|
if [200, 206].include?(status)
|
23
|
+
# rack 2 expects Mixed-Case headers, while rack 3 expects lower-case. rails doesn't ensure
|
24
|
+
# either one. normal controller actions use ActionDispatch::Response::Headers, which maps
|
25
|
+
# to rack 2's HeaderHash or rack 3's Headers, both of which are case-insensitive extensions
|
26
|
+
# to Hash. however, some responses (ActionDispatch::Static among them), just use Hash.
|
27
|
+
# more, Static relies on the user-configurable public_file_server.headers setting, which
|
28
|
+
# may have unpredictable casing regardless of the rails or rack version.
|
29
|
+
headers = ActionDispatch::Response::Headers[headers] if defined? ActionDispatch::Response::Headers
|
30
|
+
|
31
|
+
# keep Mixed-Case as long as supporting rails <= 7.0 or rack 2
|
21
32
|
headers['Cache-Control'] = @cache_control
|
22
33
|
headers['ETag'] ||= %("#{digest(digest_asset)}")
|
23
34
|
end
|
data/lib/smart_assets/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: smart_assets
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 1.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- thomas morgan
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-10-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -16,27 +16,27 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '
|
19
|
+
version: '6.1'
|
20
20
|
- - "<"
|
21
21
|
- !ruby/object:Gem::Version
|
22
|
-
version: '
|
22
|
+
version: '7.2'
|
23
23
|
type: :runtime
|
24
24
|
prerelease: false
|
25
25
|
version_requirements: !ruby/object:Gem::Requirement
|
26
26
|
requirements:
|
27
27
|
- - ">="
|
28
28
|
- !ruby/object:Gem::Version
|
29
|
-
version: '
|
29
|
+
version: '6.1'
|
30
30
|
- - "<"
|
31
31
|
- !ruby/object:Gem::Version
|
32
|
-
version: '
|
32
|
+
version: '7.2'
|
33
33
|
- !ruby/object:Gem::Dependency
|
34
34
|
name: sprockets-rails
|
35
35
|
requirement: !ruby/object:Gem::Requirement
|
36
36
|
requirements:
|
37
37
|
- - ">="
|
38
38
|
- !ruby/object:Gem::Version
|
39
|
-
version: '
|
39
|
+
version: '3'
|
40
40
|
- - "<"
|
41
41
|
- !ruby/object:Gem::Version
|
42
42
|
version: '4'
|
@@ -46,7 +46,7 @@ dependencies:
|
|
46
46
|
requirements:
|
47
47
|
- - ">="
|
48
48
|
- !ruby/object:Gem::Version
|
49
|
-
version: '
|
49
|
+
version: '3'
|
50
50
|
- - "<"
|
51
51
|
- !ruby/object:Gem::Version
|
52
52
|
version: '4'
|
@@ -54,16 +54,30 @@ dependencies:
|
|
54
54
|
name: bundler
|
55
55
|
requirement: !ruby/object:Gem::Requirement
|
56
56
|
requirements:
|
57
|
-
- - "
|
57
|
+
- - ">="
|
58
58
|
- !ruby/object:Gem::Version
|
59
|
-
version: '
|
59
|
+
version: '0'
|
60
60
|
type: :development
|
61
61
|
prerelease: false
|
62
62
|
version_requirements: !ruby/object:Gem::Requirement
|
63
63
|
requirements:
|
64
|
-
- - "
|
64
|
+
- - ">="
|
65
|
+
- !ruby/object:Gem::Version
|
66
|
+
version: '0'
|
67
|
+
- !ruby/object:Gem::Dependency
|
68
|
+
name: minitest-reporters
|
69
|
+
requirement: !ruby/object:Gem::Requirement
|
70
|
+
requirements:
|
71
|
+
- - ">="
|
65
72
|
- !ruby/object:Gem::Version
|
66
|
-
version: '
|
73
|
+
version: '0'
|
74
|
+
type: :development
|
75
|
+
prerelease: false
|
76
|
+
version_requirements: !ruby/object:Gem::Requirement
|
77
|
+
requirements:
|
78
|
+
- - ">="
|
79
|
+
- !ruby/object:Gem::Version
|
80
|
+
version: '0'
|
67
81
|
- !ruby/object:Gem::Dependency
|
68
82
|
name: rake
|
69
83
|
requirement: !ruby/object:Gem::Requirement
|
@@ -78,16 +92,14 @@ dependencies:
|
|
78
92
|
- - ">="
|
79
93
|
- !ruby/object:Gem::Version
|
80
94
|
version: '0'
|
81
|
-
description: Rails/Rack middleware to enable delivery of non-digest assets
|
95
|
+
description: Rails/Rack middleware to enable delivery of non-digest assets with appropriate
|
96
|
+
cache headers.
|
82
97
|
email:
|
83
98
|
- tm@iprog.com
|
84
99
|
executables: []
|
85
100
|
extensions: []
|
86
101
|
extra_rdoc_files: []
|
87
102
|
files:
|
88
|
-
- ".gitignore"
|
89
|
-
- CHANGELOG.md
|
90
|
-
- Gemfile
|
91
103
|
- LICENSE.txt
|
92
104
|
- README.md
|
93
105
|
- Rakefile
|
@@ -95,12 +107,12 @@ files:
|
|
95
107
|
- lib/smart_assets/rack.rb
|
96
108
|
- lib/smart_assets/railtie.rb
|
97
109
|
- lib/smart_assets/version.rb
|
98
|
-
- smart_assets.gemspec
|
99
110
|
homepage: https://github.com/zarqman/smart_assets
|
100
111
|
licenses:
|
101
112
|
- MIT
|
102
|
-
metadata:
|
103
|
-
|
113
|
+
metadata:
|
114
|
+
changelog_uri: https://github.com/zarqman/smart_assets/blob/master/CHANGELOG.md
|
115
|
+
post_install_message:
|
104
116
|
rdoc_options: []
|
105
117
|
require_paths:
|
106
118
|
- lib
|
@@ -115,9 +127,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
115
127
|
- !ruby/object:Gem::Version
|
116
128
|
version: '0'
|
117
129
|
requirements: []
|
118
|
-
|
119
|
-
|
120
|
-
signing_key:
|
130
|
+
rubygems_version: 3.4.10
|
131
|
+
signing_key:
|
121
132
|
specification_version: 4
|
122
133
|
summary: Rails/Rack middleware to enable delivery of non-digest assets
|
123
134
|
test_files: []
|
data/.gitignore
DELETED
data/CHANGELOG.md
DELETED
data/Gemfile
DELETED
data/smart_assets.gemspec
DELETED
@@ -1,26 +0,0 @@
|
|
1
|
-
# coding: utf-8
|
2
|
-
lib = File.expand_path('../lib', __FILE__)
|
3
|
-
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
-
require 'smart_assets/version'
|
5
|
-
|
6
|
-
Gem::Specification.new do |spec|
|
7
|
-
spec.name = "smart_assets"
|
8
|
-
spec.version = SmartAssets::VERSION
|
9
|
-
spec.authors = ["thomas morgan"]
|
10
|
-
spec.email = ["tm@iprog.com"]
|
11
|
-
spec.summary = %q{Rails/Rack middleware to enable delivery of non-digest assets}
|
12
|
-
spec.description = %q{Rails/Rack middleware to enable delivery of non-digest assets.}
|
13
|
-
spec.homepage = "https://github.com/zarqman/smart_assets"
|
14
|
-
spec.license = "MIT"
|
15
|
-
|
16
|
-
spec.files = `git ls-files -z`.split("\x0")
|
17
|
-
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
18
|
-
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
19
|
-
spec.require_paths = ["lib"]
|
20
|
-
|
21
|
-
spec.add_dependency 'rails', '>= 4.0', '< 6'
|
22
|
-
spec.add_dependency 'sprockets-rails', '>= 2', '< 4'
|
23
|
-
|
24
|
-
spec.add_development_dependency "bundler", "~> 1.5"
|
25
|
-
spec.add_development_dependency "rake"
|
26
|
-
end
|