linner 0.2.0 → 0.3.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/CHANGELOG +4 -0
- data/Gemfile.lock +8 -1
- data/lib/linner/asset.rb +29 -5
- data/lib/linner/command.rb +5 -4
- data/lib/linner/compressor.rb +2 -2
- data/lib/linner/environment.rb +14 -2
- data/lib/linner/helper.rb +8 -4
- data/lib/linner/notifier.rb +1 -1
- data/lib/linner/template.rb +22 -12
- data/lib/linner/templates/config.yml +4 -6
- data/lib/linner/version.rb +1 -1
- data/lib/linner/wrapper.rb +4 -0
- data/lib/linner.rb +49 -31
- data/linner.gemspec +1 -0
- data/spec/linner/asset_spec.rb +13 -10
- data/spec/linner/environment_spec.rb +12 -21
- data/spec/linner/helper_spec.rb +14 -16
- data/spec/linner/template_spec.rb +6 -20
- data/spec/linner/wrapper_spec.rb +7 -5
- data/vendor/config.default.yml +17 -22
- data/{lib/linner/templates/vendor/commonjs.js → vendor/require_definition.js} +0 -0
- metadata +18 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ef15c34cce7a178f1dccea701490a4ebd35f098e
|
4
|
+
data.tar.gz: c1005af018772e5356d511df2dcda0ed4b20f28f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f0027951a49e9b5b3b634988aa318b6d75cb25d69510e0bf30a9207f3e6b972692694736fc2df85163baafd31e2a2cb6575f2cd0d429ba53bedcf8cf65cb2c93
|
7
|
+
data.tar.gz: 9372867370f3d80267dd95792426ef83bc7c6ff7df11fa15d9d05297c3bf6e308473def78f5dbe30290b64fa99b57c13ada21f90c5d79e1f1c8072d2ea770b0f
|
data/CHANGELOG
ADDED
data/Gemfile.lock
CHANGED
@@ -1,8 +1,9 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
linner (0.
|
4
|
+
linner (0.2.0)
|
5
5
|
coffee-script (~> 2.2)
|
6
|
+
compass (~> 0.12.2)
|
6
7
|
cssminify (~> 1.0.2)
|
7
8
|
listen (~> 1.2)
|
8
9
|
multi_json (~> 1.7)
|
@@ -15,15 +16,21 @@ PATH
|
|
15
16
|
GEM
|
16
17
|
remote: https://rubygems.org/
|
17
18
|
specs:
|
19
|
+
chunky_png (1.2.8)
|
18
20
|
coffee-script (2.2.0)
|
19
21
|
coffee-script-source
|
20
22
|
execjs
|
21
23
|
coffee-script-source (1.6.3)
|
24
|
+
compass (0.12.2)
|
25
|
+
chunky_png (~> 1.2)
|
26
|
+
fssm (>= 0.2.7)
|
27
|
+
sass (~> 3.1)
|
22
28
|
cssminify (1.0.2)
|
23
29
|
diff-lcs (1.2.4)
|
24
30
|
execjs (1.4.0)
|
25
31
|
multi_json (~> 1.0)
|
26
32
|
ffi (1.9.0)
|
33
|
+
fssm (0.2.10)
|
27
34
|
listen (1.2.2)
|
28
35
|
rb-fsevent (>= 0.9.3)
|
29
36
|
rb-inotify (>= 0.9)
|
data/lib/linner/asset.rb
CHANGED
@@ -5,19 +5,43 @@ module Linner
|
|
5
5
|
|
6
6
|
def initialize(path)
|
7
7
|
@path = path
|
8
|
-
|
8
|
+
if File.exist? @path
|
9
|
+
@mtime ||= File.mtime(path).to_i
|
10
|
+
end
|
11
|
+
end
|
12
|
+
|
13
|
+
def mtime
|
14
|
+
@mtime
|
15
|
+
end
|
16
|
+
|
17
|
+
def content
|
18
|
+
return @content if @content
|
19
|
+
source = begin
|
9
20
|
File.exist?(path) ? Tilt.new(path, :default_encoding => "UTF-8").render : ""
|
10
21
|
rescue RuntimeError
|
11
22
|
File.read(path)
|
12
23
|
end
|
24
|
+
if wrappable?
|
25
|
+
@content = wrap(source)
|
26
|
+
else
|
27
|
+
@content = source
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
def wrap(source)
|
32
|
+
Wrapper.wrap(logical_path.chomp(File.extname logical_path), source)
|
33
|
+
end
|
34
|
+
|
35
|
+
def javascript?
|
36
|
+
Tilt[path] and Tilt[path].default_mime_type == "application/javascript"
|
13
37
|
end
|
14
38
|
|
15
|
-
def
|
16
|
-
|
39
|
+
def stylesheet?
|
40
|
+
Tilt[path] and Tilt[path].default_mime_type == "text/css"
|
17
41
|
end
|
18
42
|
|
19
43
|
def wrappable?
|
20
|
-
!!(
|
44
|
+
!!(self.javascript? and !Linner.env.modules_ignored.include?(@path))
|
21
45
|
end
|
22
46
|
|
23
47
|
def write
|
@@ -32,7 +56,7 @@ module Linner
|
|
32
56
|
end
|
33
57
|
|
34
58
|
def logical_path
|
35
|
-
@logical_path ||= @path.gsub(/#{Linner.
|
59
|
+
@logical_path ||= @path.gsub(/#{Linner.env.paths.join("\/|")}/, "")
|
36
60
|
end
|
37
61
|
end
|
38
62
|
end
|
data/lib/linner/command.rb
CHANGED
@@ -17,8 +17,9 @@ module Linner
|
|
17
17
|
|
18
18
|
desc "build", "build assets"
|
19
19
|
def build
|
20
|
+
Linner.compile = true
|
20
21
|
Notifier.info do
|
21
|
-
Linner.perform
|
22
|
+
Linner.perform
|
22
23
|
end
|
23
24
|
end
|
24
25
|
|
@@ -45,7 +46,7 @@ module Linner
|
|
45
46
|
|
46
47
|
desc "clean", "clean assets"
|
47
48
|
def clean
|
48
|
-
FileUtils.rm_rf Dir.glob("#{
|
49
|
+
FileUtils.rm_rf Dir.glob("#{env.public_folder}/*")
|
49
50
|
end
|
50
51
|
|
51
52
|
desc "new", "create the skeleton of project"
|
@@ -54,9 +55,9 @@ module Linner
|
|
54
55
|
chmod("#{name}/bin/server", 0755)
|
55
56
|
end
|
56
57
|
|
57
|
-
|
58
|
+
private
|
58
59
|
def env
|
59
|
-
Linner.
|
60
|
+
Linner.env
|
60
61
|
end
|
61
62
|
end
|
62
63
|
end
|
data/lib/linner/compressor.rb
CHANGED
@@ -5,9 +5,9 @@ module Linner
|
|
5
5
|
class Compressor
|
6
6
|
|
7
7
|
def self.compress(asset)
|
8
|
-
if
|
8
|
+
if asset.javascript?
|
9
9
|
Uglifier.compile asset.content, comments: "none"
|
10
|
-
elsif
|
10
|
+
elsif asset.stylesheet?
|
11
11
|
CSSminify.new.compress asset.content
|
12
12
|
end
|
13
13
|
end
|
data/lib/linner/environment.rb
CHANGED
@@ -9,6 +9,10 @@ module Linner
|
|
9
9
|
@env = @convension.rmerge!(@env)
|
10
10
|
end
|
11
11
|
|
12
|
+
def paths
|
13
|
+
groups.map { |group| group["paths"] }.flatten.uniq
|
14
|
+
end
|
15
|
+
|
12
16
|
%w(app test vendor public).each do |method|
|
13
17
|
define_method("#{method}_folder") do
|
14
18
|
@env["paths"][method]
|
@@ -19,12 +23,20 @@ module Linner
|
|
19
23
|
@env["notification"]
|
20
24
|
end
|
21
25
|
|
26
|
+
def modules_ignored
|
27
|
+
Dir.glob(@env["modules"]["ignored"])
|
28
|
+
end
|
29
|
+
|
22
30
|
def wrapper
|
23
31
|
@env["modules"]["wrapper"]
|
24
32
|
end
|
25
33
|
|
26
|
-
def
|
27
|
-
@env["
|
34
|
+
def definition
|
35
|
+
File.join public_folder, @env["modules"]["definition"]
|
36
|
+
end
|
37
|
+
|
38
|
+
def groups
|
39
|
+
@env["groups"].values
|
28
40
|
end
|
29
41
|
end
|
30
42
|
end
|
data/lib/linner/helper.rb
CHANGED
@@ -8,13 +8,17 @@ module Linner
|
|
8
8
|
end
|
9
9
|
|
10
10
|
module Order
|
11
|
-
def order_by(
|
12
|
-
|
13
|
-
|
11
|
+
def order_by(ary)
|
12
|
+
ary << "..." if not ary.include? "..."
|
13
|
+
order_ary = ary.inject([[]]) do |a, x|
|
14
|
+
x != "..." ? a.last << x : a<< []; a
|
15
|
+
end
|
16
|
+
order_by_before(self, order_ary.first)
|
17
|
+
order_by_after(self, order_ary.last)
|
14
18
|
self
|
15
19
|
end
|
16
20
|
|
17
|
-
|
21
|
+
private
|
18
22
|
def order_by_before(list, before)
|
19
23
|
before.reverse.each do |f|
|
20
24
|
if i = list.index {|x| x =~ /#{f}/i}
|
data/lib/linner/notifier.rb
CHANGED
@@ -11,7 +11,7 @@ module Linner
|
|
11
11
|
|
12
12
|
def error(message)
|
13
13
|
puts message = "👻 : #{message}!"
|
14
|
-
if Linner.
|
14
|
+
if Linner.env.notification && TerminalNotifier.available?
|
15
15
|
TerminalNotifier.notify message, :title => 'Linner'
|
16
16
|
end
|
17
17
|
end
|
data/lib/linner/template.rb
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
require "tilt"
|
2
2
|
require "sass"
|
3
|
+
require "compass"
|
3
4
|
require "coffee_script"
|
4
5
|
|
5
6
|
module Tilt
|
@@ -11,21 +12,30 @@ module Tilt
|
|
11
12
|
self.default_mime_type = 'text/css'
|
12
13
|
end
|
13
14
|
|
14
|
-
|
15
|
-
|
16
|
-
end
|
15
|
+
class CompassSassTemplate < SassTemplate
|
16
|
+
self.default_mime_type = 'text/css'
|
17
17
|
|
18
|
-
|
19
|
-
|
18
|
+
private
|
19
|
+
def sass_options
|
20
|
+
super.merge(Linner.sass_engine_options)
|
21
|
+
end
|
22
|
+
end
|
20
23
|
|
21
|
-
|
22
|
-
|
23
|
-
Tilt[path].default_mime_type == "application/javascript"
|
24
|
-
end
|
24
|
+
class CompassScssTemplate < CompassSassTemplate
|
25
|
+
self.default_mime_type = 'text/css'
|
25
26
|
|
26
|
-
|
27
|
-
|
28
|
-
|
27
|
+
private
|
28
|
+
def sass_options
|
29
|
+
super.merge(:syntax => :scss)
|
29
30
|
end
|
30
31
|
end
|
32
|
+
|
33
|
+
register CSSTemplate, "css"
|
34
|
+
register JavascriptTemplate, "js"
|
35
|
+
|
36
|
+
register CompassSassTemplate, "sass"
|
37
|
+
prefer CompassSassTemplate
|
38
|
+
|
39
|
+
register CompassScssTemplate, "scss"
|
40
|
+
prefer CompassScssTemplate
|
31
41
|
end
|
@@ -1,15 +1,13 @@
|
|
1
1
|
paths:
|
2
2
|
public: "public"
|
3
|
-
|
3
|
+
groups:
|
4
4
|
scripts:
|
5
5
|
concat:
|
6
6
|
"scripts/app.js": "app/**/*.{js,coffee}"
|
7
7
|
"scripts/vendor.js": "vendor/**/*.{js,coffee}"
|
8
8
|
order:
|
9
|
-
|
10
|
-
|
11
|
-
after:
|
12
|
-
- "vendor/commonjs.js"
|
9
|
+
- "vendor/jquery-1.10.2.js"
|
10
|
+
- "..."
|
13
11
|
styles:
|
14
12
|
concat:
|
15
13
|
"styles/app.css": "app/styles/**/[a-z]*.{css,scss,sass}"
|
@@ -20,5 +18,5 @@ files:
|
|
20
18
|
copy:
|
21
19
|
"/": "app/views/**/*.{html,hbs}"
|
22
20
|
modules:
|
23
|
-
wrapper: "
|
21
|
+
wrapper: "cmd"
|
24
22
|
notification: true
|
data/lib/linner/version.rb
CHANGED
data/lib/linner/wrapper.rb
CHANGED
data/lib/linner.rb
CHANGED
@@ -11,6 +11,8 @@ require "linner/environment"
|
|
11
11
|
module Linner
|
12
12
|
extend self
|
13
13
|
|
14
|
+
attr_accessor :compile
|
15
|
+
|
14
16
|
def root
|
15
17
|
@root ||= Pathname('.').expand_path
|
16
18
|
end
|
@@ -19,52 +21,68 @@ module Linner
|
|
19
21
|
@cache ||= {}
|
20
22
|
end
|
21
23
|
|
22
|
-
def
|
24
|
+
def env
|
23
25
|
@env ||= Environment.new root.join("config.yml")
|
24
26
|
end
|
25
27
|
|
26
|
-
def
|
27
|
-
|
28
|
-
|
29
|
-
|
28
|
+
def compile?
|
29
|
+
@compile
|
30
|
+
end
|
31
|
+
|
32
|
+
def sass_engine_options
|
33
|
+
@options ||= Compass.configuration.to_sass_engine_options
|
34
|
+
env.paths.each do |load_path|
|
35
|
+
@options[:load_paths] << Sass::Importers::Filesystem.new(load_path)
|
30
36
|
end
|
37
|
+
@options
|
31
38
|
end
|
32
39
|
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
matches
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
dest.content << content
|
51
|
-
end
|
52
|
-
dest.compress if compile
|
40
|
+
def perform(*asset)
|
41
|
+
env.groups.each do |config|
|
42
|
+
concat(config) if config["concat"]
|
43
|
+
copy(config) if config["copy"]
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
47
|
+
private
|
48
|
+
def concat(config)
|
49
|
+
config["concat"].each_with_index do |pair, index|
|
50
|
+
dest, pattern, order = pair.first, pair.last, config["order"]||[]
|
51
|
+
matches = Dir.glob(pattern).order_by(order)
|
52
|
+
next if matches.select {|p| cache_miss? p}.empty?
|
53
|
+
dest = Asset.new(File.join env.public_folder, dest)
|
54
|
+
definition = Wrapper.definition if dest.path == env.definition
|
55
|
+
dest.content = matches.inject(definition || "") {|s, m| s << cache[m].content}
|
56
|
+
dest.compress if compile?
|
53
57
|
dest.write
|
54
58
|
end
|
55
59
|
end
|
56
60
|
|
57
61
|
def copy(config)
|
58
|
-
config["copy"].each do |dest,
|
59
|
-
Dir.glob(
|
60
|
-
|
61
|
-
next if cache[path] == mtime
|
62
|
-
cache[path] = mtime
|
62
|
+
config["copy"].each do |dest, pattern|
|
63
|
+
Dir.glob(pattern).each do |path|
|
64
|
+
next if not cache_miss?(path)
|
63
65
|
logical_path = Asset.new(path).logical_path
|
64
|
-
dest_path = File.join(
|
66
|
+
dest_path = File.join(env.public_folder, dest, logical_path)
|
65
67
|
FileUtils.mkdir_p File.dirname(dest_path)
|
66
68
|
FileUtils.cp_r path, dest_path
|
67
69
|
end
|
68
70
|
end
|
69
71
|
end
|
72
|
+
|
73
|
+
def cache_miss?(path)
|
74
|
+
asset = Asset.new(path)
|
75
|
+
if asset.stylesheet? and Tilt[path] != Tilt::CSSTemplate
|
76
|
+
partials = Sass::Engine.for_file(path, sass_engine_options).dependencies.map{|m| m.options[:filename]}
|
77
|
+
cache_missed = partials.select do |partial|
|
78
|
+
partial_asset = Asset.new(partial)
|
79
|
+
(cache[partial] and cache[partial].mtime == partial_asset.mtime) ? false : cache[partial] = partial_asset
|
80
|
+
end
|
81
|
+
unless cache_missed.empty?
|
82
|
+
cache[path] = asset
|
83
|
+
return true
|
84
|
+
end
|
85
|
+
end
|
86
|
+
(cache[path] and cache[path].mtime == asset.mtime) ? false : cache[path] = asset
|
87
|
+
end
|
70
88
|
end
|
data/linner.gemspec
CHANGED
@@ -23,6 +23,7 @@ Gem::Specification.new do |spec|
|
|
23
23
|
spec.add_dependency "sass", "~> 3.2"
|
24
24
|
spec.add_dependency "listen", "~> 1.2"
|
25
25
|
spec.add_dependency "uglifier", "~> 2.1"
|
26
|
+
spec.add_dependency "compass", "~> 0.12.2"
|
26
27
|
spec.add_dependency "multi_json", "~> 1.7"
|
27
28
|
spec.add_dependency "cssminify", "~> 1.0.2"
|
28
29
|
spec.add_dependency "coffee-script", "~> 2.2"
|
data/spec/linner/asset_spec.rb
CHANGED
@@ -3,19 +3,22 @@ require "spec_helper"
|
|
3
3
|
describe Asset do
|
4
4
|
|
5
5
|
before(:each) do
|
6
|
-
@
|
6
|
+
@script_asset = Asset.new("app/scripts/app.js")
|
7
|
+
@style_asset = Asset.new("app/styles/app.css")
|
7
8
|
end
|
8
9
|
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
end
|
10
|
+
it "should be return right logical_path" do
|
11
|
+
@script_asset.logical_path.should == "app.js"
|
12
|
+
@style_asset.logical_path.should == "app.css"
|
13
13
|
end
|
14
14
|
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
15
|
+
it "should be javascript" do
|
16
|
+
@script_asset.javascript?.should be_true
|
17
|
+
@style_asset.stylesheet?.should be_true
|
18
|
+
end
|
19
|
+
|
20
|
+
it "should wrapperable" do
|
21
|
+
@script_asset.wrappable?.should be_true
|
22
|
+
@style_asset.wrappable?.should be_false
|
20
23
|
end
|
21
24
|
end
|
@@ -3,29 +3,20 @@ require "spec_helper"
|
|
3
3
|
describe Environment do
|
4
4
|
before(:each) do
|
5
5
|
@env = Environment.new(root.join "config.yml")
|
6
|
+
@ary = ["app/scripts", "app/styles", "app/images", "app/views"]
|
6
7
|
end
|
7
8
|
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
it "should equals default config" do
|
17
|
-
@env.notification.should be_true
|
18
|
-
@env.wrapper.should == "CMD"
|
19
|
-
@env.files.should respond_to(:each)
|
20
|
-
end
|
9
|
+
it "should equals default path folder" do
|
10
|
+
@env.paths.should =~ @ary
|
11
|
+
@env.app_folder.should == "app"
|
12
|
+
@env.test_folder.should == "test"
|
13
|
+
@env.vendor_folder.should == "vendor"
|
14
|
+
@env.public_folder.should == "public"
|
15
|
+
end
|
21
16
|
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
file["order"]["before"].should respond_to(:each)
|
27
|
-
file["order"]["after"].should respond_to(:each)
|
28
|
-
end
|
29
|
-
end
|
17
|
+
it "should equals default config" do
|
18
|
+
@env.notification.should be_true
|
19
|
+
@env.wrapper.should == "cmd"
|
20
|
+
@env.groups.should respond_to(:each)
|
30
21
|
end
|
31
22
|
end
|
data/spec/linner/helper_spec.rb
CHANGED
@@ -5,24 +5,22 @@ describe Array do
|
|
5
5
|
@array = %w[app.js jquery.js bootstrap.css reset.css vendor.js]
|
6
6
|
end
|
7
7
|
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
end
|
8
|
+
it "won't change when before and after are empty array" do
|
9
|
+
@array.order_by([]).should =~ @array
|
10
|
+
end
|
12
11
|
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
12
|
+
it "will change by before items" do
|
13
|
+
@array.order_by(["jquery.js", "vendor.js"])
|
14
|
+
@array.should =~ %w[jquery.js vendor.js app.js bootstrap.css reset.css]
|
15
|
+
end
|
17
16
|
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
17
|
+
it "will change by after items" do
|
18
|
+
@array.order_by(["...", "reset.css", "bootstrap.css"])
|
19
|
+
@array.should =~ %w[app.js jquery.js vendor.js reset.css bootstrap.css]
|
20
|
+
end
|
22
21
|
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
end
|
22
|
+
it "will change by before and after items" do
|
23
|
+
@array.order_by(["jquery.js", "vendor.js", "...", "reset.css", "bootstrap.css"])
|
24
|
+
@array.should =~ %w[jquery.js vendor.js app.js reset.css bootstrap.css]
|
27
25
|
end
|
28
26
|
end
|
@@ -1,26 +1,12 @@
|
|
1
1
|
require "spec_helper"
|
2
2
|
|
3
|
-
describe Template do
|
3
|
+
describe "Template" do
|
4
4
|
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
Tilt["app.js"].should == Tilt::JavascriptTemplate
|
9
|
-
end
|
10
|
-
|
11
|
-
it "should be css template" do
|
12
|
-
Tilt["app.css"].should == Tilt::CSSTemplate
|
13
|
-
end
|
14
|
-
|
15
|
-
it "should tempalte for script" do
|
16
|
-
Template.template_for_script?("app.js").should be_true
|
17
|
-
Template.template_for_script?("app.coffee").should be_true
|
18
|
-
end
|
5
|
+
it "should be javascript tempalate" do
|
6
|
+
Tilt["app.js"].should == Tilt::JavascriptTemplate
|
7
|
+
end
|
19
8
|
|
20
|
-
|
21
|
-
|
22
|
-
Template.template_for_style?("app.sass").should be_true
|
23
|
-
Template.template_for_style?("app.scss").should be_true
|
24
|
-
end
|
9
|
+
it "should be css template" do
|
10
|
+
Tilt["app.css"].should == Tilt::CSSTemplate
|
25
11
|
end
|
26
12
|
end
|
data/spec/linner/wrapper_spec.rb
CHANGED
@@ -13,10 +13,12 @@ describe Wrapper do
|
|
13
13
|
";}});\n"
|
14
14
|
end
|
15
15
|
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
16
|
+
it "should wrapped by wrapper" do
|
17
|
+
script = Wrapper.wrap(@name, @script)
|
18
|
+
script.should eq @expected_script
|
19
|
+
end
|
20
|
+
|
21
|
+
it "should has definition" do
|
22
|
+
Wrapper.definition.should_not be_nil
|
21
23
|
end
|
22
24
|
end
|
data/vendor/config.default.yml
CHANGED
@@ -3,32 +3,27 @@ paths:
|
|
3
3
|
test: "test"
|
4
4
|
vendor: "vendor"
|
5
5
|
public: "public"
|
6
|
-
|
6
|
+
|
7
|
+
groups:
|
7
8
|
scripts:
|
8
|
-
|
9
|
-
|
9
|
+
paths:
|
10
|
+
- "app/scripts"
|
10
11
|
order:
|
11
|
-
|
12
|
-
|
13
|
-
after: []
|
12
|
+
- "vendor/jquery-1.10.2.js"
|
13
|
+
- "..."
|
14
14
|
styles:
|
15
|
-
|
16
|
-
|
17
|
-
order:
|
18
|
-
before: []
|
19
|
-
after: []
|
15
|
+
paths:
|
16
|
+
- "app/styles"
|
20
17
|
images:
|
21
|
-
|
22
|
-
|
23
|
-
order:
|
24
|
-
before: []
|
25
|
-
after: []
|
18
|
+
paths:
|
19
|
+
- "app/images"
|
26
20
|
views:
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
before: []
|
31
|
-
after: []
|
21
|
+
paths:
|
22
|
+
- "app/views"
|
23
|
+
|
32
24
|
modules:
|
33
|
-
wrapper: "
|
25
|
+
wrapper: "cmd"
|
26
|
+
ignored: "vendor/**/*"
|
27
|
+
definition: "scripts/app.js"
|
28
|
+
|
34
29
|
notification: true
|
File without changes
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: linner
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Saito
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-07
|
11
|
+
date: 2013-08-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: thor
|
@@ -80,6 +80,20 @@ dependencies:
|
|
80
80
|
- - ~>
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: '2.1'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: compass
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - ~>
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: 0.12.2
|
90
|
+
type: :runtime
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - ~>
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: 0.12.2
|
83
97
|
- !ruby/object:Gem::Dependency
|
84
98
|
name: multi_json
|
85
99
|
requirement: !ruby/object:Gem::Requirement
|
@@ -188,6 +202,7 @@ extra_rdoc_files: []
|
|
188
202
|
files:
|
189
203
|
- .gitignore
|
190
204
|
- .rspec
|
205
|
+
- CHANGELOG
|
191
206
|
- Gemfile
|
192
207
|
- Gemfile.lock
|
193
208
|
- LICENSE
|
@@ -209,7 +224,6 @@ files:
|
|
209
224
|
- lib/linner/templates/bin/server
|
210
225
|
- lib/linner/templates/config.yml
|
211
226
|
- lib/linner/templates/test/.gitkeep
|
212
|
-
- lib/linner/templates/vendor/commonjs.js
|
213
227
|
- lib/linner/templates/vendor/jquery-1.10.2.js
|
214
228
|
- lib/linner/version.rb
|
215
229
|
- lib/linner/wrapper.rb
|
@@ -224,6 +238,7 @@ files:
|
|
224
238
|
- spec/spec_helper.rb
|
225
239
|
- vendor/config.default.yml
|
226
240
|
- vendor/livereload.js
|
241
|
+
- vendor/require_definition.js
|
227
242
|
homepage: https://github.com/saitowu/linner
|
228
243
|
licenses:
|
229
244
|
- MIT
|