noe 1.7.3 → 1.7.4
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG.md +8 -0
- data/Gemfile +5 -4
- data/Gemfile.lock +16 -14
- data/Rakefile +0 -4
- data/lib/noe.rb +0 -1
- data/lib/noe/commons.rb +4 -4
- data/lib/noe/config.rb +9 -9
- data/lib/noe/go.rb +9 -9
- data/lib/noe/install.rb +15 -18
- data/lib/noe/list.rb +1 -1
- data/lib/noe/loader.rb +1 -0
- data/lib/noe/main.rb +3 -3
- data/lib/noe/prepare.rb +11 -10
- data/lib/noe/show_spec.rb +1 -1
- data/lib/noe/template.rb +25 -33
- data/lib/noe/version.rb +1 -1
- data/noe.gemspec +4 -3
- data/noe.noespec +5 -4
- data/spec/integration/go/go_spec.rb +1 -1
- data/spec/integration/spaces_spec.rb +10 -10
- data/spec/{integration/spec_helper.rb → spec_helper.rb} +1 -1
- data/spec/unit/config/new_spec.rb +4 -4
- data/spec/unit/config/templates_dir_spec.rb +6 -6
- data/spec/unit/ext/hash/methodize_spec.rb +1 -1
- data/spec/unit/ext/hash/noe_merge_spec.rb +1 -1
- data/spec/unit/noe_spec.rb +1 -1
- data/spec/unit/template/entry/infer_wlang_dialect_spec.rb +1 -1
- data/spec/unit/template/entry/relocate_spec.rb +7 -7
- data/spec/unit/template/entry/rename_one_spec.rb +5 -5
- data/tasks/gem.rake +9 -4
- data/templates/ruby/src/Rakefile +0 -4
- data/templates/ruby/src/spec/test___lower__.rb +1 -1
- data/templates/ruby/src/tasks/gem.rake +9 -4
- metadata +76 -67
- data/spec/unit/spec_helper.rb +0 -3
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,11 @@
|
|
1
|
+
# 1.7.4 / 2012-02-26
|
2
|
+
|
3
|
+
* Avoid creating the project folder if 'noe prepare' is going to fail due to unknown
|
4
|
+
template or layout.
|
5
|
+
* Enhance an error message when unknown template or layout.
|
6
|
+
* Noe uses the epath gem for easy file management. Noe's public API(s) should not be
|
7
|
+
affected at all by this change.
|
8
|
+
|
1
9
|
# 1.7.3 / 2012-02-25
|
2
10
|
|
3
11
|
* Most important changes are in default ruby skeleton, see its own CHANGELOG
|
data/Gemfile
CHANGED
@@ -2,21 +2,22 @@ source 'http://rubygems.org'
|
|
2
2
|
|
3
3
|
group :test do
|
4
4
|
gem "rake", "~> 0.9.2"
|
5
|
-
gem "rspec", "~> 2.
|
5
|
+
gem "rspec", "~> 2.9"
|
6
6
|
end
|
7
7
|
|
8
8
|
group :release do
|
9
9
|
gem "rake", "~> 0.9.2"
|
10
|
-
gem "rspec", "~> 2.
|
10
|
+
gem "rspec", "~> 2.9"
|
11
11
|
end
|
12
12
|
|
13
13
|
group :doc do
|
14
14
|
gem "yard", "~> 0.7.2"
|
15
|
-
gem "bluecloth", "~> 2.2
|
15
|
+
gem "bluecloth", "~> 2.2"
|
16
16
|
end
|
17
17
|
|
18
18
|
group :runtime do
|
19
19
|
gem "wlang", "~> 0.10.2"
|
20
20
|
gem "quickl", "~> 0.4.1"
|
21
|
-
gem "highline", "~> 1.6
|
21
|
+
gem "highline", "~> 1.6"
|
22
|
+
gem "epath", "~> 0.1.1"
|
22
23
|
end
|
data/Gemfile.lock
CHANGED
@@ -3,29 +3,31 @@ GEM
|
|
3
3
|
specs:
|
4
4
|
bluecloth (2.2.0)
|
5
5
|
diff-lcs (1.1.3)
|
6
|
-
|
7
|
-
|
6
|
+
epath (0.1.1)
|
7
|
+
highline (1.6.11)
|
8
|
+
quickl (0.4.3)
|
8
9
|
rake (0.9.2.2)
|
9
|
-
rspec (2.
|
10
|
-
rspec-core (~> 2.
|
11
|
-
rspec-expectations (~> 2.
|
12
|
-
rspec-mocks (~> 2.
|
13
|
-
rspec-core (2.
|
14
|
-
rspec-expectations (2.
|
15
|
-
diff-lcs (~> 1.1.
|
16
|
-
rspec-mocks (2.
|
10
|
+
rspec (2.9.0)
|
11
|
+
rspec-core (~> 2.9.0)
|
12
|
+
rspec-expectations (~> 2.9.0)
|
13
|
+
rspec-mocks (~> 2.9.0)
|
14
|
+
rspec-core (2.9.0)
|
15
|
+
rspec-expectations (2.9.1)
|
16
|
+
diff-lcs (~> 1.1.3)
|
17
|
+
rspec-mocks (2.9.0)
|
17
18
|
wlang (0.10.2)
|
18
|
-
yard (0.7.
|
19
|
+
yard (0.7.5)
|
19
20
|
|
20
21
|
PLATFORMS
|
21
22
|
java
|
22
23
|
ruby
|
23
24
|
|
24
25
|
DEPENDENCIES
|
25
|
-
bluecloth (~> 2.2
|
26
|
-
|
26
|
+
bluecloth (~> 2.2)
|
27
|
+
epath (~> 0.1.1)
|
28
|
+
highline (~> 1.6)
|
27
29
|
quickl (~> 0.4.1)
|
28
30
|
rake (~> 0.9.2)
|
29
|
-
rspec (~> 2.
|
31
|
+
rspec (~> 2.9)
|
30
32
|
wlang (~> 0.10.2)
|
31
33
|
yard (~> 0.7.2)
|
data/Rakefile
CHANGED
data/lib/noe.rb
CHANGED
data/lib/noe/commons.rb
CHANGED
@@ -4,7 +4,7 @@ module Noe
|
|
4
4
|
# Install options
|
5
5
|
def self.add_common_options(opt)
|
6
6
|
opt.on_tail("--version", "Show version") do
|
7
|
-
raise Quickl::Exit, "
|
7
|
+
raise Quickl::Exit, "noe #{Noe::VERSION} (c) 2011, Bernard Lambeau"
|
8
8
|
end
|
9
9
|
opt.on_tail('--help', "Show detailed help") do
|
10
10
|
raise Quickl::Help
|
@@ -21,15 +21,15 @@ module Noe
|
|
21
21
|
end
|
22
22
|
|
23
23
|
def template(name = config.default)
|
24
|
-
Template.new(
|
24
|
+
Template.new(templates_dir/name)
|
25
25
|
end
|
26
26
|
|
27
27
|
def find_noespec_file(args)
|
28
28
|
# Find spec file
|
29
29
|
spec_file = if args.size == 1
|
30
|
-
Quickl.valid_read_file!(args.first)
|
30
|
+
Path(Quickl.valid_read_file!(args.first))
|
31
31
|
else
|
32
|
-
spec_files =
|
32
|
+
spec_files = Path.glob('*.noespec')
|
33
33
|
if spec_files.size > 1
|
34
34
|
raise Noe::Error, "Ambiguous request, multiple specs: #{spec_files.join(', ')}"
|
35
35
|
end
|
data/lib/noe/config.rb
CHANGED
@@ -2,10 +2,10 @@ module Noe
|
|
2
2
|
class Config
|
3
3
|
|
4
4
|
# Path to the default configuration file
|
5
|
-
DEFAULT_CONFIG_FILE =
|
5
|
+
DEFAULT_CONFIG_FILE = Path.relative('default.yaml')
|
6
6
|
|
7
7
|
# Default configuration hash
|
8
|
-
DEFAULT_CONFIG =
|
8
|
+
DEFAULT_CONFIG = DEFAULT_CONFIG_FILE.load.merge(
|
9
9
|
'config_file' => DEFAULT_CONFIG_FILE,
|
10
10
|
'version' => Noe::VERSION)
|
11
11
|
|
@@ -22,7 +22,7 @@ module Noe
|
|
22
22
|
case arg
|
23
23
|
when Hash
|
24
24
|
super
|
25
|
-
when
|
25
|
+
when Path
|
26
26
|
__load_from_file(arg)
|
27
27
|
when NilClass
|
28
28
|
super(DEFAULT_CONFIG)
|
@@ -34,13 +34,13 @@ module Noe
|
|
34
34
|
# Loads configuration from YAML file
|
35
35
|
def self.__load_from_file(file)
|
36
36
|
# check loaded file
|
37
|
-
file =
|
38
|
-
unless
|
37
|
+
file = file.expand
|
38
|
+
unless file.file? and file.readable?
|
39
39
|
raise Noe::Error, "Not a file or not readable: #{file}"
|
40
40
|
end
|
41
41
|
|
42
42
|
# load YAML
|
43
|
-
loaded = YAML::load(
|
43
|
+
loaded = YAML::load(file.read)
|
44
44
|
unless loaded.is_a?(Hash)
|
45
45
|
raise Noe::Error, "Corrupted or invalid config file: #{file}"
|
46
46
|
end
|
@@ -50,8 +50,8 @@ module Noe
|
|
50
50
|
config = Config.new(config_hash)
|
51
51
|
|
52
52
|
# Some sanity check
|
53
|
-
templates_dir = config.templates_dir
|
54
|
-
unless
|
53
|
+
templates_dir = Path(config.templates_dir)
|
54
|
+
unless templates_dir.dir? and templates_dir.readable?
|
55
55
|
raise Noe::Error, "Invalid noe config, not a directory or unreadable: #{templates_dir}"
|
56
56
|
end
|
57
57
|
|
@@ -66,7 +66,7 @@ module Noe
|
|
66
66
|
# Returns folder where templates are located. Always returns an
|
67
67
|
# absolute path.
|
68
68
|
def templates_dir
|
69
|
-
@templates_dir ||=
|
69
|
+
@templates_dir ||= Path(config['templates-dir']).expand(file.dir)
|
70
70
|
end
|
71
71
|
|
72
72
|
# Returns expected noe's version
|
data/lib/noe/go.rb
CHANGED
@@ -127,8 +127,8 @@ module Noe
|
|
127
127
|
|
128
128
|
# Checks if one is a file and the other a directory or the inverse
|
129
129
|
def kind_clash?(entry, relocated)
|
130
|
-
(entry.file? and
|
131
|
-
(entry.directory? and
|
130
|
+
(entry.file? and relocated.directory?) or
|
131
|
+
(entry.directory? and relocated.file?)
|
132
132
|
end
|
133
133
|
|
134
134
|
def build_one_directory(entry, variables)
|
@@ -137,7 +137,7 @@ module Noe
|
|
137
137
|
todo = []
|
138
138
|
|
139
139
|
skipped = false
|
140
|
-
if
|
140
|
+
if relocated.exists?
|
141
141
|
# file exists already exists, check what can be done!
|
142
142
|
if kind_clash?(entry, relocated)
|
143
143
|
if interactive?
|
@@ -175,7 +175,7 @@ module Noe
|
|
175
175
|
todo = []
|
176
176
|
|
177
177
|
skipped = false
|
178
|
-
if
|
178
|
+
if relocated.exists?
|
179
179
|
# name clash, the file exists
|
180
180
|
if adds_only?
|
181
181
|
# file exists and we are only allowed to add new things
|
@@ -227,7 +227,7 @@ module Noe
|
|
227
227
|
|
228
228
|
# Load spec now
|
229
229
|
spec_file = find_noespec_file(args)
|
230
|
-
spec = YAML::load(
|
230
|
+
spec = YAML::load(spec_file.read)
|
231
231
|
template = template(spec['template-info']['name'])
|
232
232
|
template.merge_spec(spec)
|
233
233
|
variables = template.variables
|
@@ -272,7 +272,7 @@ module Noe
|
|
272
272
|
class MkDir < DoSomething
|
273
273
|
|
274
274
|
def run
|
275
|
-
|
275
|
+
relocated.mkdir
|
276
276
|
end
|
277
277
|
|
278
278
|
def to_s
|
@@ -284,7 +284,7 @@ module Noe
|
|
284
284
|
class Rm < DoSomething
|
285
285
|
|
286
286
|
def run
|
287
|
-
|
287
|
+
relocated.rm_rf
|
288
288
|
end
|
289
289
|
|
290
290
|
def to_s
|
@@ -296,11 +296,11 @@ module Noe
|
|
296
296
|
class FileInstantiate < DoSomething
|
297
297
|
|
298
298
|
def run
|
299
|
-
|
299
|
+
relocated.open('w') do |out|
|
300
300
|
dialect = entry.wlang_dialect
|
301
301
|
braces = entry.wlang_braces
|
302
302
|
variables.methodize!
|
303
|
-
out << WLang::file_instantiate(entry.realpath, variables, dialect, braces)
|
303
|
+
out << WLang::file_instantiate(entry.realpath.to_s, variables, dialect, braces)
|
304
304
|
end
|
305
305
|
end
|
306
306
|
|
data/lib/noe/install.rb
CHANGED
@@ -1,4 +1,3 @@
|
|
1
|
-
require 'fileutils'
|
2
1
|
module Noe
|
3
2
|
class Main
|
4
3
|
#
|
@@ -43,39 +42,37 @@ module Noe
|
|
43
42
|
if args.size > 1
|
44
43
|
raise Quickl::InvalidArgument, "Needless arguments: #{args[1..-1].join(' ')}"
|
45
44
|
end
|
46
|
-
folder = args.first ||
|
45
|
+
folder = Path(args.first || Path.home)
|
47
46
|
|
48
|
-
noerc_file =
|
49
|
-
noe_folder =
|
47
|
+
noerc_file = folder/'.noerc'
|
48
|
+
noe_folder = folder/'.noe'
|
50
49
|
|
51
50
|
# generate .noerc
|
52
|
-
if
|
51
|
+
if noerc_file.exists? and not(force)
|
53
52
|
raise Noe::Error, "#{noerc_file} already exists, use --force to override"
|
54
53
|
end
|
55
|
-
|
56
|
-
def_config =
|
57
|
-
context = { :templates_dir => noe_folder }
|
54
|
+
noerc_file.open('w') do |out|
|
55
|
+
def_config = Path.relative('config.yaml').to_s
|
56
|
+
context = { :templates_dir => noe_folder.to_s }
|
58
57
|
out << WLang::file_instantiate(def_config, context, 'wlang/active-string')
|
59
58
|
end
|
60
59
|
|
61
60
|
# generate .noe folder
|
62
|
-
unless
|
63
|
-
FileUtils.mkdir(noe_folder)
|
64
|
-
end
|
61
|
+
noe_folder.mkdir unless noe_folder.exists?
|
65
62
|
|
66
63
|
# copy default templates
|
67
|
-
tdir =
|
68
|
-
|
69
|
-
target =
|
70
|
-
if
|
71
|
-
if force
|
72
|
-
|
64
|
+
tdir = Path.relative '../../templates'
|
65
|
+
tdir.each_child do |tpl|
|
66
|
+
target = noe_folder/tpl.basename
|
67
|
+
if target.exists?
|
68
|
+
if force
|
69
|
+
target.rm_rf
|
73
70
|
else
|
74
71
|
puts "#{target} already exists, use --force to override"
|
75
72
|
next
|
76
73
|
end
|
77
74
|
end
|
78
|
-
|
75
|
+
tpl.cp_r(noe_folder)
|
79
76
|
end
|
80
77
|
|
81
78
|
# say something!
|
data/lib/noe/list.rb
CHANGED
@@ -29,7 +29,7 @@ module Noe
|
|
29
29
|
raise Quickl::InvalidArgument, "Needless argument: #{args.join(', ')}"
|
30
30
|
end
|
31
31
|
|
32
|
-
tpls =
|
32
|
+
tpls = templates_dir.glob('**').map { |tpldir| Template.new(tpldir) }
|
33
33
|
columns = [:name, :version, :layouts, :summary]
|
34
34
|
data = [ columns ] + tpls.collect{|tpl|
|
35
35
|
begin
|
data/lib/noe/loader.rb
CHANGED
data/lib/noe/main.rb
CHANGED
@@ -38,8 +38,8 @@ module Noe
|
|
38
38
|
|
39
39
|
# Finds the configuration file and loads automatically
|
40
40
|
def find_config_file
|
41
|
-
in_home =
|
42
|
-
|
41
|
+
in_home = Path.home/'.noerc'
|
42
|
+
in_home if in_home.file?
|
43
43
|
end
|
44
44
|
|
45
45
|
# Install options
|
@@ -47,7 +47,7 @@ module Noe
|
|
47
47
|
# Set a specific configuration file to use
|
48
48
|
opt.on('--config=FILE',
|
49
49
|
'Use a specific config file (defaults to ~/.noerc)') do |f|
|
50
|
-
@config_file = Quickl.valid_read_file!(f)
|
50
|
+
@config_file = Path(Quickl.valid_read_file!(f))
|
51
51
|
end
|
52
52
|
# Show backtrace on error
|
53
53
|
opt.on_tail("--backtrace",
|
data/lib/noe/prepare.rb
CHANGED
@@ -1,4 +1,3 @@
|
|
1
|
-
require 'fileutils'
|
2
1
|
module Noe
|
3
2
|
class Main
|
4
3
|
#
|
@@ -85,13 +84,16 @@ module Noe
|
|
85
84
|
end
|
86
85
|
|
87
86
|
def generate_noespec_file(where)
|
88
|
-
if
|
87
|
+
if where.exists? and not(force)
|
89
88
|
raise Noe::Error, "File #{where} already exists, remove it first or set --force."
|
90
89
|
else
|
91
90
|
tpl = template
|
92
|
-
|
93
|
-
|
94
|
-
|
91
|
+
unless (parent = where.parent).exists?
|
92
|
+
parent.mkdir_p
|
93
|
+
end
|
94
|
+
where.open('w') do |out|
|
95
|
+
context = {'template_name' => tpl.name.to_s}
|
96
|
+
out << WLang::file_instantiate(tpl.spec_layout_file(@layout).to_s, context, "wlang/active-text")
|
95
97
|
end
|
96
98
|
end
|
97
99
|
where
|
@@ -101,12 +103,11 @@ module Noe
|
|
101
103
|
pname, where = nil, nil
|
102
104
|
case args.size
|
103
105
|
when 0
|
104
|
-
pname =
|
105
|
-
where = generate_noespec_file(
|
106
|
+
pname = Path.getwd.basename
|
107
|
+
where = generate_noespec_file(pname.add_ext(".noespec"))
|
106
108
|
when 1
|
107
|
-
pname = args.first
|
108
|
-
|
109
|
-
where = generate_noespec_file(File.join(pname, "#{pname}.noespec"))
|
109
|
+
pname = Path(args.first)
|
110
|
+
where = generate_noespec_file(pname/pname.add_ext(".noespec"))
|
110
111
|
else
|
111
112
|
raise Quickl::Help unless args.size > 1
|
112
113
|
end
|
data/lib/noe/show_spec.rb
CHANGED
@@ -34,7 +34,7 @@ module Noe
|
|
34
34
|
def execute(args)
|
35
35
|
raise Quickl::Help if args.size > 1
|
36
36
|
spec_file = find_noespec_file(args)
|
37
|
-
spec = YAML::load(
|
37
|
+
spec = YAML::load(spec_file.read)
|
38
38
|
template = template(spec['template-info']['name'])
|
39
39
|
template.merge_spec(spec)
|
40
40
|
puts template.to_yaml
|
data/lib/noe/template.rb
CHANGED
@@ -16,32 +16,32 @@ module Noe
|
|
16
16
|
|
17
17
|
# Loads the template from its folder
|
18
18
|
def __load
|
19
|
-
if
|
20
|
-
@spec = YAML::load(
|
19
|
+
if spec_file.file? and spec_file.readable?
|
20
|
+
@spec = YAML::load(spec_file.read)
|
21
21
|
else
|
22
22
|
raise Noe::Error, "Unable to find template: #{spec_file}"
|
23
23
|
end
|
24
24
|
end
|
25
25
|
|
26
26
|
def spec_layout_file(layout = 'noespec')
|
27
|
-
file =
|
28
|
-
if
|
27
|
+
file = folder/"#{layout}.yaml"
|
28
|
+
if file.exists?
|
29
29
|
file
|
30
30
|
else
|
31
|
-
puts "
|
32
|
-
raise Noe::Error, "
|
31
|
+
$stderr.puts "Config file: #{file}"
|
32
|
+
raise Noe::Error, "No such file or directory: #{file}, try 'noe list'"
|
33
33
|
end
|
34
34
|
end
|
35
35
|
alias :spec_file :spec_layout_file
|
36
36
|
|
37
37
|
# Returns an array with available layout names
|
38
38
|
def layouts
|
39
|
-
|
39
|
+
folder.glob('*.yaml').map { |file| file.base.to_s }
|
40
40
|
end
|
41
41
|
|
42
42
|
# Merges another spec file inside this template
|
43
43
|
def merge_spec_file(file)
|
44
|
-
merge_spec YAML::load(
|
44
|
+
merge_spec YAML::load(spec_file.read)
|
45
45
|
end
|
46
46
|
|
47
47
|
# Merges template spec with another spec given from a Hash
|
@@ -51,7 +51,7 @@ module Noe
|
|
51
51
|
|
52
52
|
# Returns template name
|
53
53
|
def name
|
54
|
-
|
54
|
+
folder.basename
|
55
55
|
end
|
56
56
|
|
57
57
|
# Returns template summary
|
@@ -80,23 +80,18 @@ module Noe
|
|
80
80
|
|
81
81
|
# Returns path to the sources folder
|
82
82
|
def src_folder
|
83
|
-
|
84
|
-
end
|
85
|
-
|
86
|
-
# Ignore some file?
|
87
|
-
def ignore?(file)
|
88
|
-
['.', '..'].include? File.basename(file)
|
83
|
+
folder/"src"
|
89
84
|
end
|
90
85
|
|
91
86
|
# Returns an entry for a given relative path
|
92
87
|
def entry(*paths)
|
93
|
-
Entry.new(self, paths.join(File::
|
88
|
+
Entry.new(self, paths.join(File::SEPARATOR))
|
94
89
|
end
|
95
90
|
|
96
91
|
# Returns manifest Hash for a given entry
|
97
92
|
def manifest_for(entry)
|
98
93
|
manifest = spec['template-info']['manifest'] || {}
|
99
|
-
manifest[entry.path] || {
|
94
|
+
manifest[entry.path.to_s] || {
|
100
95
|
'description' => "No description for #{entry.path}",
|
101
96
|
'safe-override' => false
|
102
97
|
}
|
@@ -110,11 +105,9 @@ module Noe
|
|
110
105
|
entry = Entry.new(self, nil)
|
111
106
|
end
|
112
107
|
if entry.directory?
|
113
|
-
|
108
|
+
entry.realpath.each_child(false) do |child|
|
114
109
|
childentry = entry.child_entry(child)
|
115
|
-
|
116
|
-
visit(childentry, &block)
|
117
|
-
end
|
110
|
+
visit(childentry, &block)
|
118
111
|
end
|
119
112
|
end
|
120
113
|
end
|
@@ -139,31 +132,30 @@ module Noe
|
|
139
132
|
# Creates an entry instance
|
140
133
|
def initialize(template, path)
|
141
134
|
@template = template
|
142
|
-
@path = path
|
135
|
+
@path = Path(path)
|
143
136
|
end
|
144
137
|
|
145
138
|
# Returns real absolute path of the entry
|
146
139
|
def realpath
|
147
|
-
|
140
|
+
template.src_folder/path
|
148
141
|
end
|
149
142
|
|
150
143
|
# Returns entry name
|
151
144
|
def name
|
152
|
-
|
145
|
+
realpath.basename
|
153
146
|
end
|
154
147
|
|
155
148
|
# Relocate the path according to variables
|
156
149
|
def relocate(variables = template.variables)
|
157
|
-
path
|
158
|
-
|
159
|
-
join(File::PATH_SEPARATOR)
|
150
|
+
# path must be relative (or the initial / might be lost)
|
151
|
+
Path(*path.each_filename.map { |v| rename_one(variables, v) })
|
160
152
|
end
|
161
153
|
|
162
154
|
# Returns the target name, according to some variables
|
163
155
|
def rename_one(variables, name = self.name)
|
164
|
-
if name =~ /__([a-z]+)__/
|
156
|
+
if name.to_s =~ /__([a-z]+)__/
|
165
157
|
if x = variables[$1]
|
166
|
-
name.gsub(/__([a-z]+)__/, x)
|
158
|
+
Path(name.to_s.gsub(/__([a-z]+)__/, x))
|
167
159
|
else
|
168
160
|
raise Noe::Error, "Missing variable #{$1}"
|
169
161
|
end
|
@@ -174,17 +166,17 @@ module Noe
|
|
174
166
|
|
175
167
|
# Is the entry a file?
|
176
168
|
def file?
|
177
|
-
|
169
|
+
realpath.file?
|
178
170
|
end
|
179
171
|
|
180
172
|
# Is the entry a directory?
|
181
173
|
def directory?
|
182
|
-
|
174
|
+
realpath.directory?
|
183
175
|
end
|
184
176
|
|
185
177
|
# Builds an child entry for a given name
|
186
178
|
def child_entry(name)
|
187
|
-
template.entry(path
|
179
|
+
template.entry(path/name)
|
188
180
|
end
|
189
181
|
|
190
182
|
# Returns the hash with the manifest for this entry
|
@@ -202,7 +194,7 @@ module Noe
|
|
202
194
|
|
203
195
|
# Infers the wlang dialect to use for the entry
|
204
196
|
def self.infer_wlang_dialect(uri, default = nil)
|
205
|
-
res = case d = WLang::infer_dialect(uri)
|
197
|
+
res = case d = WLang::infer_dialect(uri.to_s)
|
206
198
|
when nil
|
207
199
|
nil
|
208
200
|
when /^wlang/
|
data/lib/noe/version.rb
CHANGED
data/noe.gemspec
CHANGED
@@ -124,12 +124,13 @@ Gem::Specification.new do |s|
|
|
124
124
|
# for each development dependency. These gems are required for developers
|
125
125
|
#
|
126
126
|
s.add_development_dependency("rake", "~> 0.9.2")
|
127
|
-
s.add_development_dependency("rspec", "~> 2.
|
127
|
+
s.add_development_dependency("rspec", "~> 2.9")
|
128
128
|
s.add_development_dependency("yard", "~> 0.7.2")
|
129
|
-
s.add_development_dependency("bluecloth", "~> 2.2
|
129
|
+
s.add_development_dependency("bluecloth", "~> 2.2")
|
130
130
|
s.add_dependency("wlang", "~> 0.10.2")
|
131
131
|
s.add_dependency("quickl", "~> 0.4.1")
|
132
|
-
s.add_dependency("highline", "~> 1.6
|
132
|
+
s.add_dependency("highline", "~> 1.6")
|
133
|
+
s.add_dependency("epath", "~> 0.1.1")
|
133
134
|
|
134
135
|
# The version of ruby required by this gem
|
135
136
|
#
|
data/noe.noespec
CHANGED
@@ -10,7 +10,7 @@ template-info:
|
|
10
10
|
variables:
|
11
11
|
lower: noe
|
12
12
|
upper: Noe
|
13
|
-
version: 1.7.
|
13
|
+
version: 1.7.4
|
14
14
|
summary:
|
15
15
|
Noe is a simple, general-purpose and extensible skeleton generator from project templates
|
16
16
|
description:
|
@@ -28,12 +28,13 @@ variables:
|
|
28
28
|
- http://revision-zero.org/noe
|
29
29
|
dependencies:
|
30
30
|
- {name: rake, version: "~> 0.9.2", groups: [test, release]}
|
31
|
-
- {name: rspec, version: "~> 2.
|
31
|
+
- {name: rspec, version: "~> 2.9", groups: [test, release]}
|
32
32
|
- {name: yard, version: "~> 0.7.2", groups: [doc ]}
|
33
|
-
- {name: bluecloth, version: "~> 2.2
|
33
|
+
- {name: bluecloth, version: "~> 2.2", groups: [doc ]}
|
34
34
|
- {name: wlang, version: "~> 0.10.2", groups: [runtime ]}
|
35
35
|
- {name: quickl, version: "~> 0.4.1", groups: [runtime ]}
|
36
|
-
- {name: highline, version: "~> 1.6
|
36
|
+
- {name: highline, version: "~> 1.6", groups: [runtime ]}
|
37
|
+
- {name: epath, version: "~> 0.1.1", groups: [runtime ]}
|
37
38
|
rake_tasks:
|
38
39
|
spec_test:
|
39
40
|
pattern: spec/**/*_spec.rb
|
@@ -1,18 +1,18 @@
|
|
1
|
-
require
|
1
|
+
require 'spec_helper'
|
2
2
|
describe 'line endings and trailing spaces' do
|
3
3
|
it 'all files should end with a single \n and have no trailing spaces' do
|
4
4
|
begin
|
5
|
-
dir =
|
6
|
-
project_dir = dir
|
7
|
-
|
5
|
+
dir = Path.relative '../fixtures'
|
6
|
+
project_dir = dir / 'test'
|
7
|
+
dir.chdir do
|
8
8
|
Noe::Main.run(%w{prepare --silent test})
|
9
9
|
end
|
10
|
-
|
11
|
-
|
10
|
+
project_dir.chdir do
|
11
|
+
(dir/'test.noespec').cp(project_dir)
|
12
12
|
Noe::Main.run(['go'])
|
13
|
-
|
14
|
-
if
|
15
|
-
contents =
|
13
|
+
Path.glob("**/*") { |file|
|
14
|
+
if file.file? and !file.empty?
|
15
|
+
contents = file.read
|
16
16
|
tail = contents[-3..-1]
|
17
17
|
contents.each_line.with_index { |line, i|
|
18
18
|
line.should match(/(?:^|\S)$/),
|
@@ -24,7 +24,7 @@ describe 'line endings and trailing spaces' do
|
|
24
24
|
}
|
25
25
|
end
|
26
26
|
ensure
|
27
|
-
|
27
|
+
project_dir.rm_r if project_dir.exist?
|
28
28
|
end
|
29
29
|
end
|
30
30
|
end
|
@@ -1,4 +1,4 @@
|
|
1
|
-
require
|
1
|
+
require 'spec_helper'
|
2
2
|
module Noe
|
3
3
|
describe "Config.new" do
|
4
4
|
|
@@ -14,7 +14,7 @@ module Noe
|
|
14
14
|
end # without argument
|
15
15
|
|
16
16
|
context 'with a hash' do
|
17
|
-
let(:hash){ {'config_file' =>
|
17
|
+
let(:hash){ {'config_file' => Path.relative("config1.yaml")} }
|
18
18
|
subject{ Config.new(hash) }
|
19
19
|
|
20
20
|
it 'should create a configuration instance' do
|
@@ -30,14 +30,14 @@ module Noe
|
|
30
30
|
context 'with an invalid file' do
|
31
31
|
|
32
32
|
it 'should raise a Noe::Error' do
|
33
|
-
file =
|
33
|
+
file = Path.relative("unexistsing.yaml")
|
34
34
|
lambda{ Config.new(file) }.should raise_error(Noe::Error)
|
35
35
|
end
|
36
36
|
|
37
37
|
end # with an invalid file
|
38
38
|
|
39
39
|
context 'with an valid file' do
|
40
|
-
let(:file){
|
40
|
+
let(:file){ Path.relative("config1.yaml") }
|
41
41
|
subject{ Config.new(file) }
|
42
42
|
|
43
43
|
it 'should create a valid configuration' do
|
@@ -1,4 +1,4 @@
|
|
1
|
-
require
|
1
|
+
require 'spec_helper'
|
2
2
|
module Noe
|
3
3
|
describe "Config#templates_dir" do
|
4
4
|
|
@@ -8,24 +8,24 @@ module Noe
|
|
8
8
|
let(:config){ Config.new }
|
9
9
|
|
10
10
|
it "should be Noe's template dir" do
|
11
|
-
subject.should ==
|
11
|
+
subject.should == $noe_root/"templates"
|
12
12
|
end
|
13
13
|
|
14
14
|
end # on default config
|
15
15
|
|
16
16
|
context 'when a relative path is used' do
|
17
|
-
let(:file) {
|
17
|
+
let(:file) { Path.relative("config1.yaml") }
|
18
18
|
let(:config){ Config.new(file) }
|
19
19
|
|
20
20
|
it "should be an absolute path" do
|
21
|
-
subject.should ==
|
21
|
+
subject.should == Path.relative("templates")
|
22
22
|
end
|
23
23
|
|
24
24
|
end # relative path
|
25
25
|
|
26
26
|
context 'when an absolute path is used' do
|
27
|
-
let(:file) {
|
28
|
-
let(:tdir) {
|
27
|
+
let(:file) { Path.relative("config1.yaml") }
|
28
|
+
let(:tdir) { Path.relative("templates") }
|
29
29
|
let(:hash) { { "config_file" => file, "templates-dir" => tdir } }
|
30
30
|
let(:config){ Config.new(hash) }
|
31
31
|
|
data/spec/unit/noe_spec.rb
CHANGED
@@ -1,9 +1,9 @@
|
|
1
|
-
require
|
1
|
+
require 'spec_helper'
|
2
2
|
module Noe
|
3
3
|
describe "Template::Entry#relocate" do
|
4
4
|
|
5
5
|
let(:template){
|
6
|
-
Template.new(
|
6
|
+
Template.new(Path.relative('../../../../templates/ruby'))
|
7
7
|
}
|
8
8
|
let(:vars){
|
9
9
|
{"lower" => "project"}
|
@@ -14,27 +14,27 @@ module Noe
|
|
14
14
|
|
15
15
|
describe "when nothing has to change" do
|
16
16
|
let(:entry){ template.entry('.gitignore') }
|
17
|
-
it{ should == ".gitignore" }
|
17
|
+
it{ should == Path(".gitignore") }
|
18
18
|
end
|
19
19
|
|
20
20
|
describe "when exactly a replacement" do
|
21
21
|
let(:entry){ template.entry("__lower__") }
|
22
|
-
it { should == "project" }
|
22
|
+
it { should == Path("project") }
|
23
23
|
end
|
24
24
|
|
25
25
|
describe "when a replacement inside something else" do
|
26
26
|
let(:entry){ template.entry("__lower___spec.rb") }
|
27
|
-
it { should == "project_spec.rb" }
|
27
|
+
it { should == Path("project_spec.rb") }
|
28
28
|
end
|
29
29
|
|
30
30
|
describe "when no replace and sub file" do
|
31
31
|
let(:entry){ template.entry("lib", "README.md") }
|
32
|
-
it { should ==
|
32
|
+
it { should == Path("lib/README.md") }
|
33
33
|
end
|
34
34
|
|
35
35
|
describe "when no replace and sub file with replacement" do
|
36
36
|
let(:entry){ template.entry("lib", "__lower__.rb") }
|
37
|
-
it { should ==
|
37
|
+
it { should == Path("lib/project.rb") }
|
38
38
|
end
|
39
39
|
|
40
40
|
end
|
@@ -1,9 +1,9 @@
|
|
1
|
-
require
|
1
|
+
require 'spec_helper'
|
2
2
|
module Noe
|
3
3
|
describe "Template::Entry#rename_one" do
|
4
4
|
|
5
5
|
let(:template){
|
6
|
-
Template.new(
|
6
|
+
Template.new(Path.relative('../../../../templates/ruby'))
|
7
7
|
}
|
8
8
|
let(:vars){
|
9
9
|
{"lower" => "project"}
|
@@ -14,17 +14,17 @@ module Noe
|
|
14
14
|
|
15
15
|
describe "when nothing has to change" do
|
16
16
|
let(:entry){ template.entry("project") }
|
17
|
-
it { should == "project" }
|
17
|
+
it { should == Path("project") }
|
18
18
|
end
|
19
19
|
|
20
20
|
describe "when exactly a replacement" do
|
21
21
|
let(:entry){ template.entry("__lower__") }
|
22
|
-
it { should == "project" }
|
22
|
+
it { should == Path("project") }
|
23
23
|
end
|
24
24
|
|
25
25
|
describe "when a replacement inside something else" do
|
26
26
|
let(:entry){ template.entry("__lower___spec.rb") }
|
27
|
-
it { should == "project_spec.rb" }
|
27
|
+
it { should == Path("project_spec.rb") }
|
28
28
|
end
|
29
29
|
|
30
30
|
end
|
data/tasks/gem.rake
CHANGED
@@ -25,13 +25,18 @@
|
|
25
25
|
#
|
26
26
|
begin
|
27
27
|
require 'rubygems/package_task'
|
28
|
-
|
28
|
+
|
29
|
+
# Dynamically load the gem spec
|
30
|
+
gemspec_file = File.expand_path('../../noe.gemspec', __FILE__)
|
31
|
+
gemspec = Kernel.eval(File.read(gemspec_file))
|
32
|
+
|
33
|
+
Gem::PackageTask.new(gemspec) do |t|
|
29
34
|
|
30
35
|
# Name of the package
|
31
|
-
t.name =
|
36
|
+
t.name = gemspec.name
|
32
37
|
|
33
38
|
# Version of the package
|
34
|
-
t.version =
|
39
|
+
t.version = gemspec.version
|
35
40
|
|
36
41
|
# Directory used to store the package files
|
37
42
|
t.package_dir = "pkg"
|
@@ -49,7 +54,7 @@ begin
|
|
49
54
|
t.need_zip = false
|
50
55
|
|
51
56
|
# List of files to be included in the package.
|
52
|
-
t.package_files =
|
57
|
+
t.package_files = gemspec.files
|
53
58
|
|
54
59
|
# Tar command for gzipped or bzip2ed archives.
|
55
60
|
t.tar_command = "tar"
|
data/templates/ruby/src/Rakefile
CHANGED
@@ -25,13 +25,18 @@
|
|
25
25
|
#
|
26
26
|
begin
|
27
27
|
require 'rubygems/package_task'
|
28
|
-
|
28
|
+
|
29
|
+
# Dynamically load the gem spec
|
30
|
+
gemspec_file = File.expand_path('../../!{lower}.gemspec', __FILE__)
|
31
|
+
gemspec = Kernel.eval(File.read(gemspec_file))
|
32
|
+
|
33
|
+
Gem::PackageTask.new(gemspec) do |t|
|
29
34
|
|
30
35
|
# Name of the package
|
31
|
-
t.name =
|
36
|
+
t.name = gemspec.name
|
32
37
|
|
33
38
|
# Version of the package
|
34
|
-
t.version =
|
39
|
+
t.version = gemspec.version
|
35
40
|
|
36
41
|
# Directory used to store the package files
|
37
42
|
t.package_dir = +{rake_tasks.gem.package_dir}
|
@@ -49,7 +54,7 @@ begin
|
|
49
54
|
t.need_zip = +{rake_tasks.gem.need_zip}
|
50
55
|
|
51
56
|
# List of files to be included in the package.
|
52
|
-
t.package_files =
|
57
|
+
t.package_files = gemspec.files
|
53
58
|
|
54
59
|
# Tar command for gzipped or bzip2ed archives.
|
55
60
|
t.tar_command = +{rake_tasks.gem.tar_command}
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: noe
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.7.
|
4
|
+
version: 1.7.4
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
12
|
+
date: 2012-04-26 00:00:00.000000000Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rake
|
16
|
-
requirement: &
|
16
|
+
requirement: &70144303386380 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
@@ -21,21 +21,21 @@ dependencies:
|
|
21
21
|
version: 0.9.2
|
22
22
|
type: :development
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70144303386380
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: rspec
|
27
|
-
requirement: &
|
27
|
+
requirement: &70144303385840 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ~>
|
31
31
|
- !ruby/object:Gem::Version
|
32
|
-
version: 2.
|
32
|
+
version: '2.9'
|
33
33
|
type: :development
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70144303385840
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: yard
|
38
|
-
requirement: &
|
38
|
+
requirement: &70144303367700 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ~>
|
@@ -43,21 +43,21 @@ dependencies:
|
|
43
43
|
version: 0.7.2
|
44
44
|
type: :development
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *70144303367700
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: bluecloth
|
49
|
-
requirement: &
|
49
|
+
requirement: &70144303367020 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ~>
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: 2.2
|
54
|
+
version: '2.2'
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *70144303367020
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: wlang
|
60
|
-
requirement: &
|
60
|
+
requirement: &70144303366320 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ~>
|
@@ -65,10 +65,10 @@ dependencies:
|
|
65
65
|
version: 0.10.2
|
66
66
|
type: :runtime
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *70144303366320
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: quickl
|
71
|
-
requirement: &
|
71
|
+
requirement: &70144303365540 !ruby/object:Gem::Requirement
|
72
72
|
none: false
|
73
73
|
requirements:
|
74
74
|
- - ~>
|
@@ -76,18 +76,29 @@ dependencies:
|
|
76
76
|
version: 0.4.1
|
77
77
|
type: :runtime
|
78
78
|
prerelease: false
|
79
|
-
version_requirements: *
|
79
|
+
version_requirements: *70144303365540
|
80
80
|
- !ruby/object:Gem::Dependency
|
81
81
|
name: highline
|
82
|
-
requirement: &
|
82
|
+
requirement: &70144303364940 !ruby/object:Gem::Requirement
|
83
83
|
none: false
|
84
84
|
requirements:
|
85
85
|
- - ~>
|
86
86
|
- !ruby/object:Gem::Version
|
87
|
-
version: 1.6
|
87
|
+
version: '1.6'
|
88
88
|
type: :runtime
|
89
89
|
prerelease: false
|
90
|
-
version_requirements: *
|
90
|
+
version_requirements: *70144303364940
|
91
|
+
- !ruby/object:Gem::Dependency
|
92
|
+
name: epath
|
93
|
+
requirement: &70144303364260 !ruby/object:Gem::Requirement
|
94
|
+
none: false
|
95
|
+
requirements:
|
96
|
+
- - ~>
|
97
|
+
- !ruby/object:Gem::Version
|
98
|
+
version: 0.1.1
|
99
|
+
type: :runtime
|
100
|
+
prerelease: false
|
101
|
+
version_requirements: *70144303364260
|
91
102
|
description: Noe is a tool that generates project skeletons from predefined templates.
|
92
103
|
A template is designed for a specific product (a ruby library, a static or dynamic
|
93
104
|
web site, ...). Noe instantiates templates and helps you maintaining your product
|
@@ -109,21 +120,21 @@ files:
|
|
109
120
|
- CHANGELOG.md
|
110
121
|
- Gemfile
|
111
122
|
- Gemfile.lock
|
112
|
-
- lib/noe/help.rb
|
113
|
-
- lib/noe/prepare.rb
|
114
|
-
- lib/noe/go.rb
|
115
|
-
- lib/noe/show_spec.rb
|
116
|
-
- lib/noe/main.rb
|
117
|
-
- lib/noe/template.rb
|
118
123
|
- lib/noe/commons.rb
|
119
|
-
- lib/noe/list.rb
|
120
|
-
- lib/noe/install.rb
|
121
124
|
- lib/noe/config.rb
|
122
|
-
- lib/noe/
|
125
|
+
- lib/noe/config.yaml
|
123
126
|
- lib/noe/default.yaml
|
124
|
-
- lib/noe/ext/hash.rb
|
125
127
|
- lib/noe/ext/array.rb
|
126
|
-
- lib/noe/
|
128
|
+
- lib/noe/ext/hash.rb
|
129
|
+
- lib/noe/go.rb
|
130
|
+
- lib/noe/help.rb
|
131
|
+
- lib/noe/install.rb
|
132
|
+
- lib/noe/list.rb
|
133
|
+
- lib/noe/loader.rb
|
134
|
+
- lib/noe/main.rb
|
135
|
+
- lib/noe/prepare.rb
|
136
|
+
- lib/noe/show_spec.rb
|
137
|
+
- lib/noe/template.rb
|
127
138
|
- lib/noe/version.rb
|
128
139
|
- lib/noe.rb
|
129
140
|
- LICENCE.md
|
@@ -132,52 +143,51 @@ files:
|
|
132
143
|
- noe.noespec
|
133
144
|
- Rakefile
|
134
145
|
- README.md
|
135
|
-
- spec/
|
136
|
-
- spec/
|
137
|
-
- spec/
|
146
|
+
- spec/fixtures/test.noespec
|
147
|
+
- spec/fixtures/typitpl/noespec.yaml
|
148
|
+
- spec/fixtures/typitpl/src/README.txt
|
138
149
|
- spec/integration/go/after_prepare/after_prepare.noespec
|
139
150
|
- spec/integration/go/after_prepare/README.md
|
140
|
-
- spec/
|
141
|
-
- spec/
|
142
|
-
- spec/
|
143
|
-
- spec/unit/template/entry/infer_wlang_dialect_spec.rb
|
151
|
+
- spec/integration/go/go_spec.rb
|
152
|
+
- spec/integration/spaces_spec.rb
|
153
|
+
- spec/spec_helper.rb
|
144
154
|
- spec/unit/config/config1.yaml
|
145
155
|
- spec/unit/config/new_spec.rb
|
146
156
|
- spec/unit/config/templates_dir_spec.rb
|
147
|
-
- spec/unit/noe_spec.rb
|
148
|
-
- spec/unit/ext/hash/noe_merge_spec.rb
|
149
157
|
- spec/unit/ext/hash/methodize_spec.rb
|
150
|
-
- spec/
|
151
|
-
- spec/
|
152
|
-
- spec/
|
158
|
+
- spec/unit/ext/hash/noe_merge_spec.rb
|
159
|
+
- spec/unit/noe_spec.rb
|
160
|
+
- spec/unit/template/entry/infer_wlang_dialect_spec.rb
|
161
|
+
- spec/unit/template/entry/relocate_spec.rb
|
162
|
+
- spec/unit/template/entry/rename_one_spec.rb
|
153
163
|
- tasks/debug_mail.rake
|
154
|
-
- tasks/
|
164
|
+
- tasks/debug_mail.txt
|
155
165
|
- tasks/gem.rake
|
156
166
|
- tasks/spec_test.rake
|
157
167
|
- tasks/unit_test.rake
|
158
|
-
- tasks/
|
159
|
-
- templates/ruby/noespec.yaml
|
168
|
+
- tasks/yard.rake
|
160
169
|
- templates/ruby/CHANGELOG.md
|
170
|
+
- templates/ruby/noespec.yaml
|
161
171
|
- templates/ruby/README.md
|
162
|
-
- templates/ruby/
|
163
|
-
- templates/ruby/src/README.md
|
164
|
-
- templates/ruby/src/Manifest.txt
|
165
|
-
- templates/ruby/src/Rakefile
|
172
|
+
- templates/ruby/short.yaml
|
166
173
|
- templates/ruby/src/__lower__.gemspec
|
167
|
-
- templates/ruby/src/
|
174
|
+
- templates/ruby/src/CHANGELOG.md
|
175
|
+
- templates/ruby/src/Gemfile
|
168
176
|
- templates/ruby/src/lib/__lower__/loader.rb
|
169
177
|
- templates/ruby/src/lib/__lower__/version.rb
|
178
|
+
- templates/ruby/src/lib/__lower__.rb
|
170
179
|
- templates/ruby/src/LICENCE.md
|
180
|
+
- templates/ruby/src/Manifest.txt
|
181
|
+
- templates/ruby/src/Rakefile
|
182
|
+
- templates/ruby/src/README.md
|
171
183
|
- templates/ruby/src/spec/spec_helper.rb
|
172
184
|
- templates/ruby/src/spec/test___lower__.rb
|
173
185
|
- templates/ruby/src/tasks/debug_mail.rake
|
174
|
-
- templates/ruby/src/tasks/
|
186
|
+
- templates/ruby/src/tasks/debug_mail.txt
|
175
187
|
- templates/ruby/src/tasks/gem.rake
|
176
188
|
- templates/ruby/src/tasks/spec_test.rake
|
177
189
|
- templates/ruby/src/tasks/unit_test.rake
|
178
|
-
- templates/ruby/src/tasks/
|
179
|
-
- templates/ruby/src/Gemfile
|
180
|
-
- templates/ruby/short.yaml
|
190
|
+
- templates/ruby/src/tasks/yard.rake
|
181
191
|
- templates/ruby/src/.travis.yml
|
182
192
|
- templates/ruby/src/.gitignore
|
183
193
|
homepage: http://github.com/blambeau/noe
|
@@ -202,27 +212,26 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
202
212
|
version: '0'
|
203
213
|
requirements: []
|
204
214
|
rubyforge_project:
|
205
|
-
rubygems_version: 1.8.
|
215
|
+
rubygems_version: 1.8.10
|
206
216
|
signing_key:
|
207
217
|
specification_version: 3
|
208
218
|
summary: Noe is a simple, general-purpose and extensible skeleton generator from project
|
209
219
|
templates
|
210
220
|
test_files:
|
211
|
-
- spec/
|
212
|
-
- spec/
|
213
|
-
- spec/
|
221
|
+
- spec/fixtures/test.noespec
|
222
|
+
- spec/fixtures/typitpl/noespec.yaml
|
223
|
+
- spec/fixtures/typitpl/src/README.txt
|
214
224
|
- spec/integration/go/after_prepare/after_prepare.noespec
|
215
225
|
- spec/integration/go/after_prepare/README.md
|
216
|
-
- spec/
|
217
|
-
- spec/
|
218
|
-
- spec/
|
219
|
-
- spec/unit/template/entry/infer_wlang_dialect_spec.rb
|
226
|
+
- spec/integration/go/go_spec.rb
|
227
|
+
- spec/integration/spaces_spec.rb
|
228
|
+
- spec/spec_helper.rb
|
220
229
|
- spec/unit/config/config1.yaml
|
221
230
|
- spec/unit/config/new_spec.rb
|
222
231
|
- spec/unit/config/templates_dir_spec.rb
|
223
|
-
- spec/unit/noe_spec.rb
|
224
|
-
- spec/unit/ext/hash/noe_merge_spec.rb
|
225
232
|
- spec/unit/ext/hash/methodize_spec.rb
|
226
|
-
- spec/
|
227
|
-
- spec/
|
228
|
-
- spec/
|
233
|
+
- spec/unit/ext/hash/noe_merge_spec.rb
|
234
|
+
- spec/unit/noe_spec.rb
|
235
|
+
- spec/unit/template/entry/infer_wlang_dialect_spec.rb
|
236
|
+
- spec/unit/template/entry/relocate_spec.rb
|
237
|
+
- spec/unit/template/entry/rename_one_spec.rb
|
data/spec/unit/spec_helper.rb
DELETED