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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 243ed25e84822ff06bd0b5942e1cfcc14d70aae1
4
- data.tar.gz: 4dc83e40149a0ac6dfd63d0f4b17b8e99e7b80b4
2
+ SHA256:
3
+ metadata.gz: 12509d83d332a8563759cef0b244aa92d96290f3a5578cf6a5fa7dc47a3ad889
4
+ data.tar.gz: 67f2e3b9a3120dc9627a5d8ecfab71d648ebcb4207b66b34ad1afc464e149131
5
5
  SHA512:
6
- metadata.gz: cff1dddef1938b7acc850e1dbb37a2a5f9aa2047947affccca322003fdb4c19e3182f0fc8b45c8d3a58662993e6e3729eb7e64f11abf24b24a821cb7f94b8514
7
- data.tar.gz: 71e944abfb6ef78b5637969af25173fb9a234997a0bfdbe3405d6329ece9d961adc6e38fbd30db8ce3357ae42260a8e49f234568b257e10ae1ff9388e098dc6b
6
+ metadata.gz: 5e403a748eaa88a6e7e633a62eb9fa23624200a44f4612e48770ad30c0c1cdee2f6036b97e874919eaed5f06bde4e5e3000a8532b5b994abb90ef82d00c8c20e
7
+ data.tar.gz: 245d5e89c79f3d2e8bdacedbceaf7e0e3bccda4064da5efdda1072497b946a7f82264d4ea9dd73ffae90c1a1472485ec47442c91985cd53aa2c14a7845f040ea
data/LICENSE.txt CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2014-2017 thomas morgan
1
+ Copyright (c) 2014-2023 thomas morgan
2
2
 
3
3
  MIT License
4
4
 
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
@@ -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.exists?(digest_path)
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
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module SmartAssets
2
- VERSION = '0.4.0'
4
+ VERSION = '1.0.0'
3
5
  end
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.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: 2017-06-02 00:00:00.000000000 Z
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: '4.0'
19
+ version: '6.1'
20
20
  - - "<"
21
21
  - !ruby/object:Gem::Version
22
- version: '6'
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: '4.0'
29
+ version: '6.1'
30
30
  - - "<"
31
31
  - !ruby/object:Gem::Version
32
- version: '6'
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: '2'
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: '2'
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: '1.5'
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: '1.5'
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
- post_install_message:
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
- rubyforge_project:
119
- rubygems_version: 2.6.12
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
@@ -1,18 +0,0 @@
1
- *.gem
2
- *.rbc
3
- .bundle
4
- .config
5
- .yardoc
6
- Gemfile.lock
7
- InstalledFiles
8
- _yardoc
9
- coverage
10
- doc/
11
- lib/bundler/man
12
- pkg
13
- rdoc
14
- spec/reports
15
- test/tmp
16
- test/version_tmp
17
- tmp
18
- .ruby-*
data/CHANGELOG.md DELETED
@@ -1,15 +0,0 @@
1
- #### 0.4.0
2
-
3
- - Fix Rails 5.1 compatibility
4
- - Instead of requiring static file serving to be enabled in advance, turn it on
5
- automatically.
6
-
7
-
8
- #### 0.3.0
9
-
10
- - Support Rails 5.0
11
-
12
-
13
- #### 0.2.0
14
-
15
- - Support Rails 4.2
data/Gemfile DELETED
@@ -1,4 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- # Specify your gem's dependencies in smart_assets.gemspec
4
- gemspec
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