zassets 0.2.7 → 0.2.8
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 +7 -0
- data/README.md +390 -39
- data/lib/zassets/config.rb +18 -5
- data/lib/zassets/version.rb +1 -1
- metadata +62 -136
- data/.gitignore +0 -3
- data/Gemfile +0 -5
- data/Guardfile +0 -12
- data/LICENSE +0 -23
- data/Rakefile +0 -7
- data/features/builder/build.feature +0 -14
- data/features/builder/manifest.feature +0 -13
- data/features/cli/default_action.feature +0 -5
- data/features/cli/usage.feature +0 -8
- data/features/cli/version.feature +0 -5
- data/features/config/file.feature +0 -10
- data/features/config/paths.feature +0 -11
- data/features/engines/coffee.feature +0 -16
- data/features/engines/sass.feature +0 -28
- data/features/server/handler.feature +0 -13
- data/features/server/interrupt.feature +0 -6
- data/features/server/logging.feature +0 -7
- data/features/server/public_file.feature +0 -18
- data/features/server/static_files.feature +0 -15
- data/features/step_definitions/builder_steps.rb +0 -41
- data/features/step_definitions/config_steps.rb +0 -8
- data/features/step_definitions/manifest_steps.rb +0 -7
- data/features/step_definitions/server_steps.rb +0 -49
- data/features/support/env.rb +0 -3
- data/features/support/env_aruba.rb +0 -16
- data/features/support/env_cucumber-doc_string.rb +0 -23
- data/features/support/env_server.rb +0 -91
- data/spec/fixtures/assets/app.js +0 -1
- data/spec/fixtures/config/zassets.yaml +0 -1
- data/spec/fixtures/public/hello.txt +0 -1
- data/spec/fixtures/public/index.html +0 -1
- data/spec/spec_helper.rb +0 -3
- data/spec/support/fixtures_helpers.rb +0 -13
- data/spec/zassets-plugins-dummy.rb +0 -17
- data/spec/zassets/builder_spec.rb +0 -52
- data/spec/zassets/cli_spec.rb +0 -158
- data/spec/zassets/config_spec.rb +0 -139
- data/spec/zassets/memory_file_spec.rb +0 -46
- data/spec/zassets/server_spec.rb +0 -116
- data/spec/zassets/sprockets_env_spec.rb +0 -44
- data/zassets.gemspec +0 -30
data/lib/zassets/config.rb
CHANGED
@@ -33,10 +33,7 @@ module ZAssets
|
|
33
33
|
|
34
34
|
def load_options(filepath = DEFAULT_CONFIG_PATH)
|
35
35
|
return {} unless options = YAML.load_file(filepath)
|
36
|
-
options
|
37
|
-
options[(key.to_sym rescue key) || key] = options.delete(key)
|
38
|
-
end
|
39
|
-
options
|
36
|
+
symbolize_keys options
|
40
37
|
end
|
41
38
|
|
42
39
|
def default_config_file?
|
@@ -63,9 +60,25 @@ module ZAssets
|
|
63
60
|
|
64
61
|
private
|
65
62
|
|
63
|
+
def symbolize_keys(hash)
|
64
|
+
case hash
|
65
|
+
when Hash
|
66
|
+
Hash[hash.map do |k, v|
|
67
|
+
[k.respond_to?(:to_sym) ? k.to_sym : k, symbolize_keys(v)]
|
68
|
+
end]
|
69
|
+
when Enumerable
|
70
|
+
hash.map { |v| symbolize_keys v }
|
71
|
+
else
|
72
|
+
hash
|
73
|
+
end
|
74
|
+
end
|
75
|
+
|
66
76
|
def load_plugins!
|
67
77
|
@options[:plugins].each do |plugin|
|
68
|
-
require
|
78
|
+
require 'zassets-plugins-%s' % case plugin
|
79
|
+
when Hash then plugin[:name]
|
80
|
+
when Symbol, String then plugin
|
81
|
+
end
|
69
82
|
end
|
70
83
|
|
71
84
|
::ZAssets.const_defined? :Plugins
|
data/lib/zassets/version.rb
CHANGED
metadata
CHANGED
@@ -1,212 +1,165 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: zassets
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
5
|
-
prerelease:
|
4
|
+
version: 0.2.8
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Thibault Jouan
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date:
|
11
|
+
date: 2015-05-03 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
|
-
name:
|
14
|
+
name: coffee-script
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
|
-
- - ~>
|
17
|
+
- - "~>"
|
20
18
|
- !ruby/object:Gem::Version
|
21
|
-
version: 2.
|
19
|
+
version: '2.2'
|
22
20
|
type: :runtime
|
23
21
|
prerelease: false
|
24
22
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
23
|
requirements:
|
27
|
-
- - ~>
|
24
|
+
- - "~>"
|
28
25
|
- !ruby/object:Gem::Version
|
29
|
-
version: 2.
|
26
|
+
version: '2.2'
|
30
27
|
- !ruby/object:Gem::Dependency
|
31
|
-
name:
|
28
|
+
name: execjs
|
32
29
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
30
|
requirements:
|
35
|
-
- - ~>
|
31
|
+
- - "~>"
|
36
32
|
- !ruby/object:Gem::Version
|
37
|
-
version: 2.
|
33
|
+
version: '2.0'
|
38
34
|
type: :runtime
|
39
35
|
prerelease: false
|
40
36
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
37
|
requirements:
|
43
|
-
- - ~>
|
38
|
+
- - "~>"
|
44
39
|
- !ruby/object:Gem::Version
|
45
|
-
version: 2.
|
40
|
+
version: '2.0'
|
46
41
|
- !ruby/object:Gem::Dependency
|
47
|
-
name:
|
42
|
+
name: puma
|
48
43
|
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
44
|
requirements:
|
51
|
-
- - ~>
|
45
|
+
- - "~>"
|
52
46
|
- !ruby/object:Gem::Version
|
53
|
-
version:
|
47
|
+
version: '2.6'
|
54
48
|
type: :runtime
|
55
49
|
prerelease: false
|
56
50
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
51
|
requirements:
|
59
|
-
- - ~>
|
52
|
+
- - "~>"
|
60
53
|
- !ruby/object:Gem::Version
|
61
|
-
version:
|
54
|
+
version: '2.6'
|
62
55
|
- !ruby/object:Gem::Dependency
|
63
|
-
name:
|
56
|
+
name: sass
|
64
57
|
requirement: !ruby/object:Gem::Requirement
|
65
|
-
none: false
|
66
58
|
requirements:
|
67
|
-
- - ~>
|
59
|
+
- - "~>"
|
68
60
|
- !ruby/object:Gem::Version
|
69
|
-
version:
|
61
|
+
version: '3.2'
|
70
62
|
type: :runtime
|
71
63
|
prerelease: false
|
72
64
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
-
none: false
|
74
65
|
requirements:
|
75
|
-
- - ~>
|
66
|
+
- - "~>"
|
76
67
|
- !ruby/object:Gem::Version
|
77
|
-
version:
|
68
|
+
version: '3.2'
|
78
69
|
- !ruby/object:Gem::Dependency
|
79
|
-
name:
|
70
|
+
name: sprockets
|
80
71
|
requirement: !ruby/object:Gem::Requirement
|
81
|
-
none: false
|
82
72
|
requirements:
|
83
|
-
- - ~>
|
73
|
+
- - "~>"
|
84
74
|
- !ruby/object:Gem::Version
|
85
|
-
version: 2.
|
75
|
+
version: '2.10'
|
86
76
|
type: :runtime
|
87
77
|
prerelease: false
|
88
78
|
version_requirements: !ruby/object:Gem::Requirement
|
89
|
-
none: false
|
90
79
|
requirements:
|
91
|
-
- - ~>
|
80
|
+
- - "~>"
|
92
81
|
- !ruby/object:Gem::Version
|
93
|
-
version: 2.
|
82
|
+
version: '2.10'
|
94
83
|
- !ruby/object:Gem::Dependency
|
95
|
-
name:
|
84
|
+
name: aruba
|
96
85
|
requirement: !ruby/object:Gem::Requirement
|
97
|
-
none: false
|
98
86
|
requirements:
|
99
|
-
- - ~>
|
87
|
+
- - "~>"
|
100
88
|
- !ruby/object:Gem::Version
|
101
|
-
version:
|
89
|
+
version: '0.5'
|
102
90
|
type: :development
|
103
91
|
prerelease: false
|
104
92
|
version_requirements: !ruby/object:Gem::Requirement
|
105
|
-
none: false
|
106
93
|
requirements:
|
107
|
-
- - ~>
|
94
|
+
- - "~>"
|
108
95
|
- !ruby/object:Gem::Version
|
109
|
-
version:
|
96
|
+
version: '0.5'
|
110
97
|
- !ruby/object:Gem::Dependency
|
111
98
|
name: cucumber
|
112
99
|
requirement: !ruby/object:Gem::Requirement
|
113
|
-
none: false
|
114
100
|
requirements:
|
115
|
-
- - ~>
|
101
|
+
- - "~>"
|
116
102
|
- !ruby/object:Gem::Version
|
117
|
-
version:
|
103
|
+
version: '2.0'
|
118
104
|
type: :development
|
119
105
|
prerelease: false
|
120
106
|
version_requirements: !ruby/object:Gem::Requirement
|
121
|
-
none: false
|
122
107
|
requirements:
|
123
|
-
- - ~>
|
108
|
+
- - "~>"
|
124
109
|
- !ruby/object:Gem::Version
|
125
|
-
version:
|
110
|
+
version: '2.0'
|
126
111
|
- !ruby/object:Gem::Dependency
|
127
|
-
name:
|
112
|
+
name: httparty
|
128
113
|
requirement: !ruby/object:Gem::Requirement
|
129
|
-
none: false
|
130
114
|
requirements:
|
131
|
-
- - ~>
|
115
|
+
- - "~>"
|
132
116
|
- !ruby/object:Gem::Version
|
133
|
-
version: 0.
|
117
|
+
version: '0.12'
|
134
118
|
type: :development
|
135
119
|
prerelease: false
|
136
120
|
version_requirements: !ruby/object:Gem::Requirement
|
137
|
-
none: false
|
138
121
|
requirements:
|
139
|
-
- - ~>
|
122
|
+
- - "~>"
|
140
123
|
- !ruby/object:Gem::Version
|
141
|
-
version: 0.
|
124
|
+
version: '0.12'
|
142
125
|
- !ruby/object:Gem::Dependency
|
143
|
-
name:
|
126
|
+
name: rake
|
144
127
|
requirement: !ruby/object:Gem::Requirement
|
145
|
-
none: false
|
146
128
|
requirements:
|
147
|
-
- -
|
129
|
+
- - ">="
|
148
130
|
- !ruby/object:Gem::Version
|
149
|
-
version: 0
|
131
|
+
version: '0'
|
150
132
|
type: :development
|
151
133
|
prerelease: false
|
152
134
|
version_requirements: !ruby/object:Gem::Requirement
|
153
|
-
none: false
|
154
135
|
requirements:
|
155
|
-
- -
|
136
|
+
- - ">="
|
156
137
|
- !ruby/object:Gem::Version
|
157
|
-
version: 0
|
138
|
+
version: '0'
|
158
139
|
- !ruby/object:Gem::Dependency
|
159
|
-
name:
|
140
|
+
name: rspec
|
160
141
|
requirement: !ruby/object:Gem::Requirement
|
161
|
-
none: false
|
162
142
|
requirements:
|
163
|
-
- -
|
143
|
+
- - "~>"
|
164
144
|
- !ruby/object:Gem::Version
|
165
|
-
version: '
|
145
|
+
version: '3.2'
|
166
146
|
type: :development
|
167
147
|
prerelease: false
|
168
148
|
version_requirements: !ruby/object:Gem::Requirement
|
169
|
-
none: false
|
170
149
|
requirements:
|
171
|
-
- -
|
150
|
+
- - "~>"
|
172
151
|
- !ruby/object:Gem::Version
|
173
|
-
version: '
|
152
|
+
version: '3.2'
|
174
153
|
description: Assets server and builder
|
175
154
|
email: tj@a13.fr
|
176
155
|
executables:
|
177
156
|
- zassets
|
178
157
|
extensions: []
|
179
|
-
extra_rdoc_files:
|
158
|
+
extra_rdoc_files:
|
159
|
+
- README.md
|
180
160
|
files:
|
181
|
-
- .gitignore
|
182
|
-
- Gemfile
|
183
|
-
- Guardfile
|
184
|
-
- LICENSE
|
185
161
|
- README.md
|
186
|
-
- Rakefile
|
187
162
|
- bin/zassets
|
188
|
-
- features/builder/build.feature
|
189
|
-
- features/builder/manifest.feature
|
190
|
-
- features/cli/default_action.feature
|
191
|
-
- features/cli/usage.feature
|
192
|
-
- features/cli/version.feature
|
193
|
-
- features/config/file.feature
|
194
|
-
- features/config/paths.feature
|
195
|
-
- features/engines/coffee.feature
|
196
|
-
- features/engines/sass.feature
|
197
|
-
- features/server/handler.feature
|
198
|
-
- features/server/interrupt.feature
|
199
|
-
- features/server/logging.feature
|
200
|
-
- features/server/public_file.feature
|
201
|
-
- features/server/static_files.feature
|
202
|
-
- features/step_definitions/builder_steps.rb
|
203
|
-
- features/step_definitions/config_steps.rb
|
204
|
-
- features/step_definitions/manifest_steps.rb
|
205
|
-
- features/step_definitions/server_steps.rb
|
206
|
-
- features/support/env.rb
|
207
|
-
- features/support/env_aruba.rb
|
208
|
-
- features/support/env_cucumber-doc_string.rb
|
209
|
-
- features/support/env_server.rb
|
210
163
|
- lib/zassets.rb
|
211
164
|
- lib/zassets/builder.rb
|
212
165
|
- lib/zassets/cli.rb
|
@@ -216,55 +169,28 @@ files:
|
|
216
169
|
- lib/zassets/server.rb
|
217
170
|
- lib/zassets/sprockets_env.rb
|
218
171
|
- lib/zassets/version.rb
|
219
|
-
- spec/fixtures/assets/app.js
|
220
|
-
- spec/fixtures/config/zassets.yaml
|
221
|
-
- spec/fixtures/public/hello.txt
|
222
|
-
- spec/fixtures/public/index.html
|
223
|
-
- spec/spec_helper.rb
|
224
|
-
- spec/support/fixtures_helpers.rb
|
225
|
-
- spec/zassets-plugins-dummy.rb
|
226
|
-
- spec/zassets/builder_spec.rb
|
227
|
-
- spec/zassets/cli_spec.rb
|
228
|
-
- spec/zassets/config_spec.rb
|
229
|
-
- spec/zassets/memory_file_spec.rb
|
230
|
-
- spec/zassets/server_spec.rb
|
231
|
-
- spec/zassets/sprockets_env_spec.rb
|
232
|
-
- zassets.gemspec
|
233
172
|
homepage: https://rubygems.org/gems/zassets
|
234
|
-
licenses:
|
173
|
+
licenses:
|
174
|
+
- BSD-3-Clause
|
175
|
+
metadata: {}
|
235
176
|
post_install_message:
|
236
177
|
rdoc_options: []
|
237
178
|
require_paths:
|
238
179
|
- lib
|
239
180
|
required_ruby_version: !ruby/object:Gem::Requirement
|
240
|
-
none: false
|
241
181
|
requirements:
|
242
|
-
- -
|
182
|
+
- - ">="
|
243
183
|
- !ruby/object:Gem::Version
|
244
184
|
version: '0'
|
245
185
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
246
|
-
none: false
|
247
186
|
requirements:
|
248
|
-
- -
|
187
|
+
- - ">="
|
249
188
|
- !ruby/object:Gem::Version
|
250
189
|
version: '0'
|
251
190
|
requirements: []
|
252
191
|
rubyforge_project:
|
253
|
-
rubygems_version:
|
192
|
+
rubygems_version: 2.4.5
|
254
193
|
signing_key:
|
255
|
-
specification_version:
|
256
|
-
summary:
|
257
|
-
test_files:
|
258
|
-
- spec/fixtures/assets/app.js
|
259
|
-
- spec/fixtures/config/zassets.yaml
|
260
|
-
- spec/fixtures/public/hello.txt
|
261
|
-
- spec/fixtures/public/index.html
|
262
|
-
- spec/spec_helper.rb
|
263
|
-
- spec/support/fixtures_helpers.rb
|
264
|
-
- spec/zassets-plugins-dummy.rb
|
265
|
-
- spec/zassets/builder_spec.rb
|
266
|
-
- spec/zassets/cli_spec.rb
|
267
|
-
- spec/zassets/config_spec.rb
|
268
|
-
- spec/zassets/memory_file_spec.rb
|
269
|
-
- spec/zassets/server_spec.rb
|
270
|
-
- spec/zassets/sprockets_env_spec.rb
|
194
|
+
specification_version: 4
|
195
|
+
summary: Assets server and builder
|
196
|
+
test_files: []
|
data/.gitignore
DELETED
data/Gemfile
DELETED
data/Guardfile
DELETED
@@ -1,12 +0,0 @@
|
|
1
|
-
guard :cucumber, cli: '--format pretty --quiet' do
|
2
|
-
watch(%r{\Afeatures/.+\.feature\z})
|
3
|
-
watch(%r{\Afeatures/support/.+\.rb\z}) { 'features' }
|
4
|
-
watch(%r{\Afeatures/step_definitions/.+_steps\.rb\z}) { 'features' }
|
5
|
-
end
|
6
|
-
|
7
|
-
guard :rspec do
|
8
|
-
watch(%r{\Aspec/.+_spec\.rb\z})
|
9
|
-
watch(%r{\Alib/(.+)\.rb\z}) { |m| "spec/#{m[1]}_spec.rb" }
|
10
|
-
|
11
|
-
watch(%r{\Aspec/support/.+\.rb\z}) { 'spec' }
|
12
|
-
end
|
data/LICENSE
DELETED
@@ -1,23 +0,0 @@
|
|
1
|
-
Copyright 2012 Thibault Jouan. All rights reserved.
|
2
|
-
|
3
|
-
Redistribution and use in source and binary forms, with or without
|
4
|
-
modification, are permitted provided that the following conditions are met:
|
5
|
-
* Redistributions of source code must retain the above copyright notice, this
|
6
|
-
list of conditions and the following disclaimer.
|
7
|
-
* Redistributions in binary form must reproduce the above copyright notice,
|
8
|
-
this list of conditions and the following disclaimer in the documentation
|
9
|
-
and/or other materials provided with the distribution.
|
10
|
-
* Neither the name of the software nor the names of its contributors may be
|
11
|
-
used to endorse or promote products derived from this software without
|
12
|
-
specific prior written permission.
|
13
|
-
|
14
|
-
THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS "AS IS" AND ANY
|
15
|
-
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
16
|
-
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
17
|
-
DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE FOR ANY
|
18
|
-
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
19
|
-
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
20
|
-
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
21
|
-
ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
22
|
-
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
23
|
-
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
data/Rakefile
DELETED
@@ -1,14 +0,0 @@
|
|
1
|
-
Feature: Builder
|
2
|
-
|
3
|
-
Scenario: builds assets
|
4
|
-
Given this config file:
|
5
|
-
"""
|
6
|
-
paths:
|
7
|
-
- app
|
8
|
-
build:
|
9
|
-
- app.js
|
10
|
-
"""
|
11
|
-
And a file named "app/app.js" with "some_content"
|
12
|
-
When I build
|
13
|
-
Then the built file "public/assets/app-*.js" must exist
|
14
|
-
And the built file "public/assets/app-*.js" must contain "some_content"
|
@@ -1,13 +0,0 @@
|
|
1
|
-
Feature: Manifest
|
2
|
-
|
3
|
-
Scenario: builds a manifests of built assets
|
4
|
-
Given this config file:
|
5
|
-
"""
|
6
|
-
paths:
|
7
|
-
- app
|
8
|
-
build:
|
9
|
-
- app.js
|
10
|
-
"""
|
11
|
-
And an empty file named "app/app.js"
|
12
|
-
When I build
|
13
|
-
Then the manifest should include build path for "app.js"
|