simonmenke-gm 0.0.6 → 0.1.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.
- data/README.textile +3 -1
- data/gm_commands/config_command.rb +26 -0
- data/gm_generators/test/templates/{test/test_case.rb → test_case.rb.erb} +0 -0
- data/gm_generators/test/templates/{test/test_helper.rb → test_helper.rb.erb} +1 -0
- data/gm_generators/test/test_generator.rb +5 -2
- data/gm_passes/configatron.rb +4 -3
- data/lib/autotest/discover.rb +3 -0
- data/lib/autotest/gm.rb +34 -0
- data/lib/extentions/gem.rb +7 -6
- data/lib/gm/app.rb +5 -5
- data/lib/gm/command.rb +17 -7
- data/lib/gm/configuration_pass_queue.rb +3 -1
- data/lib/gm/dsl.rb +11 -9
- data/test/command_test.rb +103 -0
- data/test/configuration_pass_queue_test.rb +56 -0
- data/test/configuration_pass_test.rb +24 -0
- data/test/gem_extentions_test.rb +31 -0
- data/test/test_helper.rb +12 -0
- metadata +39 -28
data/README.textile
CHANGED
@@ -2,7 +2,9 @@ h1. GM (GemMake)
|
|
2
2
|
|
3
3
|
GM is a gem and gemspec builder for use with github.
|
4
4
|
|
5
|
-
For
|
5
|
+
For the documentation go to "http://simonmenke.github.com/gm":http://simonmenke.github.com/gm
|
6
|
+
|
7
|
+
For bug reports and feature requests go to "http://menke.lighthouseapp.com/projects/23688-gm":http://menke.lighthouseapp.com/projects/23688-gm
|
6
8
|
|
7
9
|
h2. Todo
|
8
10
|
|
@@ -0,0 +1,26 @@
|
|
1
|
+
|
2
|
+
module GM
|
3
|
+
|
4
|
+
class ConfigCommand < Command
|
5
|
+
|
6
|
+
desc "Edit your global configuration."
|
7
|
+
|
8
|
+
EMPTY_CONFIG = <<-EOC
|
9
|
+
author:
|
10
|
+
name:
|
11
|
+
email:
|
12
|
+
github:
|
13
|
+
username:
|
14
|
+
EOC
|
15
|
+
|
16
|
+
def run
|
17
|
+
path = File.expand_path('~/.gmrc')
|
18
|
+
unless File.exist? path
|
19
|
+
File.open(path, 'w+') { |f| f.write EMPTY_CONFIG }
|
20
|
+
end
|
21
|
+
system("$EDITOR '#{path}'")
|
22
|
+
end
|
23
|
+
|
24
|
+
end
|
25
|
+
|
26
|
+
end
|
File without changes
|
@@ -1,3 +1,4 @@
|
|
1
|
+
if defined?(RubiGen::Base)
|
1
2
|
|
2
3
|
class TestGenerator < RubiGen::Base
|
3
4
|
|
@@ -15,9 +16,11 @@ class TestGenerator < RubiGen::Base
|
|
15
16
|
m.directory ''
|
16
17
|
%w( test ).each { |path| m.directory path }
|
17
18
|
|
18
|
-
m.template "
|
19
|
-
m.template "
|
19
|
+
m.template "test_helper.rb.erb", "test/test_helper.rb" unless File.exist? "test/test_helper.rb"
|
20
|
+
m.template "test_case.rb.erb", "test/#{@file_name}_test.rb" unless @file_name.nil?
|
20
21
|
end
|
21
22
|
end
|
22
23
|
|
23
24
|
end
|
25
|
+
|
26
|
+
end # if defined?(RubiGen::Base)
|
data/gm_passes/configatron.rb
CHANGED
@@ -45,14 +45,15 @@ configuration_pass :configatron_local, :configatron_global do |s|
|
|
45
45
|
c.configure_from_yaml(File.expand_path('Gmfile'))
|
46
46
|
end
|
47
47
|
|
48
|
-
configuration_pass :configatron_normalize, :
|
48
|
+
configuration_pass :configatron_normalize, { :before => :configatron,
|
49
|
+
:after => :configatron_local } do |s|
|
49
50
|
c = configatron
|
50
51
|
|
51
|
-
if c.rubyforge.project.
|
52
|
+
if c.rubyforge.project.blank?
|
52
53
|
c.rubyforge.project = c.general.name
|
53
54
|
end
|
54
55
|
|
55
|
-
if c.github.project.
|
56
|
+
if c.github.project.blank?
|
56
57
|
c.github.project = c.general.name
|
57
58
|
end
|
58
59
|
end
|
data/lib/autotest/gm.rb
ADDED
@@ -0,0 +1,34 @@
|
|
1
|
+
require 'autotest'
|
2
|
+
|
3
|
+
class Autotest::Gm < Autotest
|
4
|
+
|
5
|
+
def initialize # :nodoc:
|
6
|
+
super
|
7
|
+
|
8
|
+
add_exception %r%^\./(?:doc|pkg)%
|
9
|
+
|
10
|
+
clear_mappings
|
11
|
+
|
12
|
+
self.add_mapping(/^lib\/.*\.rb$/) do |filename, _|
|
13
|
+
impl = File.basename(filename, '.rb')
|
14
|
+
files_matching %r%^test/#{impl}_test.rb$%
|
15
|
+
end
|
16
|
+
|
17
|
+
add_mapping %r%^test/.*rb$% do |filename, _|
|
18
|
+
filename
|
19
|
+
end
|
20
|
+
|
21
|
+
add_mapping %r%^test/test_helper.rb% do
|
22
|
+
files_matching %r%^test/.*_test\.rb$%
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
# Convert the pathname s to the name of class.
|
27
|
+
def path_to_classname(s)
|
28
|
+
sep = File::SEPARATOR
|
29
|
+
f = s.sub(/^test#{sep}/, '').sub(/\.rb$/, '').split(sep)
|
30
|
+
f = f.map { |path| path.split(/_/).map { |seg| seg.capitalize }.join }
|
31
|
+
f = f.map { |path| path =~ /Test$/ ? path : "#{path}Test" }
|
32
|
+
f.join('::')
|
33
|
+
end
|
34
|
+
end
|
data/lib/extentions/gem.rb
CHANGED
@@ -3,18 +3,19 @@ module Gem # :nodoc:
|
|
3
3
|
|
4
4
|
def self.find_recent_files(path)
|
5
5
|
specs = searcher.find_all path
|
6
|
+
|
6
7
|
specs = specs.inject({}) do |s, spec|
|
7
|
-
if s[spec.name].nil?
|
8
|
-
s[spec.name] = spec
|
9
|
-
elsif (s[spec.name] <=> spec) == -1
|
8
|
+
if s[spec.name].nil? or (spec <=> s[spec.name]) == 1
|
10
9
|
s[spec.name] = spec
|
11
10
|
end
|
12
11
|
s
|
13
|
-
end
|
12
|
+
end
|
14
13
|
|
15
|
-
specs.
|
14
|
+
specs = specs.collect do |name, spec|
|
16
15
|
searcher.matching_files spec, path
|
17
|
-
end
|
16
|
+
end
|
17
|
+
|
18
|
+
specs.flatten.compact
|
18
19
|
end
|
19
20
|
|
20
21
|
def self.find_recent_resources(path)
|
data/lib/gm/app.rb
CHANGED
@@ -12,6 +12,11 @@ module GM
|
|
12
12
|
attr_accessor :gem_file_name
|
13
13
|
|
14
14
|
def initialize # :nodoc:
|
15
|
+
reset!
|
16
|
+
end
|
17
|
+
|
18
|
+
# reset the app
|
19
|
+
def reset!
|
15
20
|
@configuration_passes = Hash.new { |h, k| h[k] = {} }
|
16
21
|
@commands = {}
|
17
22
|
end
|
@@ -65,11 +70,6 @@ module GM
|
|
65
70
|
Gem.find_recent_resources('gm_passes/*.rb').uniq.each do |path|
|
66
71
|
GM::DSL.load_pass path
|
67
72
|
end
|
68
|
-
@configuration_passes.each do |fase, passes|
|
69
|
-
passes.each do |name, pass|
|
70
|
-
pass.dependencies
|
71
|
-
end
|
72
|
-
end
|
73
73
|
end
|
74
74
|
|
75
75
|
# load all commands
|
data/lib/gm/command.rb
CHANGED
@@ -19,6 +19,7 @@ module GM
|
|
19
19
|
|
20
20
|
# load a command from a file
|
21
21
|
def self.load_command(path)
|
22
|
+
return false unless File.exist?(path)
|
22
23
|
cmd_name = File.basename(path, '.rb')
|
23
24
|
cmd_name = cmd_name.gsub(/(^|_)([a-z])/i) { |m| $2.upcase }
|
24
25
|
|
@@ -27,22 +28,27 @@ module GM
|
|
27
28
|
|
28
29
|
cmd_class = (mod.module_eval("GM::"+cmd_name) rescue nil)
|
29
30
|
|
30
|
-
return
|
31
|
+
return false if cmd_class.nil?
|
31
32
|
|
32
|
-
GM
|
33
|
+
GM.app.commands[cmd_name.to_sym] = cmd_class
|
33
34
|
end
|
34
35
|
|
35
36
|
# build a command
|
36
37
|
def self.run(cmd_name=nil, argv=ARGV)
|
37
|
-
app = GM
|
38
|
+
app = GM.app
|
39
|
+
if Array === cmd_name
|
40
|
+
argv = cmd_name
|
41
|
+
cmd_name = nil
|
42
|
+
end
|
38
43
|
cmd = self.build(cmd_name, argv)
|
39
44
|
cmd.app = app
|
40
|
-
|
45
|
+
clip = Clip(argv) do |p|
|
41
46
|
app.extra_options(p)
|
42
47
|
cmd.extra_options(p)
|
43
48
|
end
|
49
|
+
cmd.options = app.options = clip
|
44
50
|
argv.clear
|
45
|
-
argv.concat(
|
51
|
+
argv.concat(clip.remainder)
|
46
52
|
cmd.argv = argv
|
47
53
|
cmd.run
|
48
54
|
argv
|
@@ -50,11 +56,15 @@ module GM
|
|
50
56
|
|
51
57
|
# build a command
|
52
58
|
def self.build(cmd_name=nil, argv=ARGV)
|
59
|
+
if Array === cmd_name
|
60
|
+
argv = cmd_name
|
61
|
+
cmd_name = nil
|
62
|
+
end
|
53
63
|
if cmd_name.nil?
|
54
|
-
cmd_name = (argv.detect {|i|
|
64
|
+
cmd_name = (argv.detect {|i| i !~ /^--?/ } || 'help')
|
55
65
|
argv.delete(cmd_name)
|
56
66
|
end
|
57
|
-
app = GM
|
67
|
+
app = GM.app
|
58
68
|
cmd_name = "#{cmd_name}_command".camelize
|
59
69
|
cmd_class = app.commands[cmd_name.to_sym]
|
60
70
|
cmd_class ||= app.commands[:HelpCommand]
|
@@ -19,6 +19,8 @@ module GM
|
|
19
19
|
unordered_passes = @passes.values.dup
|
20
20
|
ordered_passes = []
|
21
21
|
|
22
|
+
unordered_passes.each { |pass| pass.dependencies }
|
23
|
+
|
22
24
|
dependencies = Hash.new { |h,k| h[k.to_sym] = [] }
|
23
25
|
unordered_passes.each do |pass|
|
24
26
|
dependencies[pass.name].concat pass.dependencies.dup
|
@@ -54,7 +56,7 @@ module GM
|
|
54
56
|
end
|
55
57
|
|
56
58
|
def reset!
|
57
|
-
@passes = GM
|
59
|
+
@passes = GM.app.configuration_passes[@fase.to_sym].dup
|
58
60
|
@queue = nil
|
59
61
|
end
|
60
62
|
|
data/lib/gm/dsl.rb
CHANGED
@@ -16,27 +16,29 @@ module GM
|
|
16
16
|
end
|
17
17
|
|
18
18
|
def initialization_pass(name, options={}, &proc)
|
19
|
-
|
20
|
-
@description = nil
|
19
|
+
register_pass(:initialization, name, options, &proc)
|
21
20
|
end
|
22
21
|
|
23
22
|
def configuration_pass(name, options={}, &proc)
|
24
|
-
|
25
|
-
@description = nil
|
23
|
+
register_pass(:configuration, name, options, &proc)
|
26
24
|
end
|
27
25
|
|
28
26
|
def pass(name, options={}, &proc)
|
29
|
-
|
30
|
-
@description = nil
|
27
|
+
register_pass(:normal, name, options, &proc)
|
31
28
|
end
|
32
29
|
|
33
30
|
def finalization_pass(name, options={}, &proc)
|
34
|
-
|
35
|
-
@description = nil
|
31
|
+
register_pass(:finalization, name, options, &proc)
|
36
32
|
end
|
37
33
|
|
38
34
|
def exclude_pass(name, fase=:normal)
|
39
|
-
GM
|
35
|
+
GM.app.exclude_pass(name, fase)
|
36
|
+
end
|
37
|
+
|
38
|
+
def register_pass(fase, name, options, &proc) # :nodoc:
|
39
|
+
pass = ConfigurationPass.new(name, @description, options, &proc).register(fase)
|
40
|
+
@description = nil
|
41
|
+
pass
|
40
42
|
end
|
41
43
|
end
|
42
44
|
|
@@ -0,0 +1,103 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/test_helper'
|
2
|
+
|
3
|
+
class CommandTest < Test::Unit::TestCase
|
4
|
+
|
5
|
+
before do
|
6
|
+
GM.app.reset!
|
7
|
+
end
|
8
|
+
|
9
|
+
context "load_command" do
|
10
|
+
|
11
|
+
should "return klass" do
|
12
|
+
File.expects(:exist?).with('path/to/my_command.rb').returns(true)
|
13
|
+
IO.expects(:read).with('path/to/my_command.rb').returns(%{
|
14
|
+
module GM
|
15
|
+
class MyCommand ; end
|
16
|
+
end})
|
17
|
+
klass = GM::Command.load_command('path/to/my_command.rb')
|
18
|
+
assert_equal "GM::MyCommand", klass.to_s.split('::', 2).last
|
19
|
+
end
|
20
|
+
|
21
|
+
should "return false when file doen't exist" do
|
22
|
+
File.expects(:exist?).with('path/to/my_command.rb').returns(false)
|
23
|
+
assert_equal false, GM::Command.load_command('path/to/my_command.rb')
|
24
|
+
end
|
25
|
+
|
26
|
+
should "return false when file doen't contain command" do
|
27
|
+
File.expects(:exist?).with('path/to/my_command.rb').returns(true)
|
28
|
+
IO.expects(:read).with('path/to/my_command.rb').returns(%{})
|
29
|
+
assert_equal false, GM::Command.load_command('path/to/my_command.rb')
|
30
|
+
end
|
31
|
+
|
32
|
+
end
|
33
|
+
|
34
|
+
context "build" do
|
35
|
+
|
36
|
+
should "return instance of HelpCommand not found" do
|
37
|
+
help_cmd = mock
|
38
|
+
help_cmd_class = mock
|
39
|
+
help_cmd_class.expects(:new).returns(help_cmd)
|
40
|
+
GM.app.commands[:HelpCommand] = help_cmd_class
|
41
|
+
cmd = GM::Command.build(:hello)
|
42
|
+
assert_equal help_cmd, cmd
|
43
|
+
end
|
44
|
+
|
45
|
+
should "return new command" do
|
46
|
+
hello_cmd = mock
|
47
|
+
hello_cmd_class = mock
|
48
|
+
hello_cmd_class.expects(:new).returns(hello_cmd)
|
49
|
+
GM.app.commands[:HelloCommand] = hello_cmd_class
|
50
|
+
cmd = GM::Command.build(:hello)
|
51
|
+
assert_equal hello_cmd, cmd
|
52
|
+
end
|
53
|
+
|
54
|
+
should "find command name in argv if name is nil" do
|
55
|
+
argv = %w( -v hello world )
|
56
|
+
hello_cmd = mock
|
57
|
+
hello_cmd_class = mock
|
58
|
+
hello_cmd_class.expects(:new).returns(hello_cmd)
|
59
|
+
GM.app.commands[:HelloCommand] = hello_cmd_class
|
60
|
+
cmd = GM::Command.build(argv)
|
61
|
+
assert_equal hello_cmd, cmd
|
62
|
+
end
|
63
|
+
|
64
|
+
end
|
65
|
+
|
66
|
+
context "run" do
|
67
|
+
|
68
|
+
should "run command and return remaining argv" do
|
69
|
+
argv = %w( -v p )
|
70
|
+
hello_cmd = mock('hello_command') do
|
71
|
+
expects(:run)
|
72
|
+
expects(:app=).with(GM.app)
|
73
|
+
expects(:extra_options).with() { |value| Clip::Parser === value }
|
74
|
+
expects(:options=).with() { |value| Clip::Parser === value }
|
75
|
+
expects(:argv=).with %w( p )
|
76
|
+
end
|
77
|
+
hello_cmd_class = mock('hello_command_class') do
|
78
|
+
expects(:new).returns(hello_cmd)
|
79
|
+
end
|
80
|
+
GM.app.commands[:HelloCommand] = hello_cmd_class
|
81
|
+
assert_equal %w( p ), GM::Command.run(:hello, argv)
|
82
|
+
end
|
83
|
+
|
84
|
+
should "find command name in argv if name is nil" do
|
85
|
+
argv = %w( -v hello p )
|
86
|
+
hello_cmd = mock('hello_command') do
|
87
|
+
expects(:run)
|
88
|
+
expects(:app=).with(GM.app)
|
89
|
+
expects(:extra_options).with() { |value| Clip::Parser === value }
|
90
|
+
expects(:options=).with() { |value| Clip::Parser === value }
|
91
|
+
expects(:argv=).with %w( p )
|
92
|
+
end
|
93
|
+
hello_cmd_class = mock('hello_command_class') do
|
94
|
+
expects(:new).returns(hello_cmd)
|
95
|
+
end
|
96
|
+
GM.app.commands[:HelloCommand] = hello_cmd_class
|
97
|
+
assert_equal %w( p ), GM::Command.run(argv)
|
98
|
+
end
|
99
|
+
|
100
|
+
end
|
101
|
+
|
102
|
+
|
103
|
+
end
|
@@ -0,0 +1,56 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/test_helper'
|
2
|
+
|
3
|
+
class ConfigurationPassQueueTest < Test::Unit::TestCase
|
4
|
+
|
5
|
+
include GM::DSL
|
6
|
+
|
7
|
+
before do
|
8
|
+
GM.app.reset!
|
9
|
+
pass(:pass_a) { |s| }
|
10
|
+
pass(:pass_b) { |s| }
|
11
|
+
pass(:pass_c, :before => :pass_a, :after => :pass_b) { |s| }
|
12
|
+
pass(:pass_d, :pass_a) { |s| }
|
13
|
+
end
|
14
|
+
|
15
|
+
should "find passes in app" do
|
16
|
+
queue = GM::ConfigurationPassQueue.new(:normal)
|
17
|
+
assert_equal ["pass_a", "pass_b", "pass_c", "pass_d"], queue.passes.collect{ |n,v| n.to_s}.sort
|
18
|
+
end
|
19
|
+
|
20
|
+
should "be in dependency order" do
|
21
|
+
queue = GM::ConfigurationPassQueue.new(:normal)
|
22
|
+
queue.order
|
23
|
+
assert_equal [:pass_b, :pass_c, :pass_a, :pass_d], queue.queue.collect { |pass| pass.name }
|
24
|
+
end
|
25
|
+
|
26
|
+
should "not find excluded passes in app" do
|
27
|
+
exclude_pass(:pass_d)
|
28
|
+
queue = GM::ConfigurationPassQueue.new(:normal)
|
29
|
+
assert_equal ["pass_a", "pass_b", "pass_c"], queue.passes.collect{ |n,v| n.to_s}.sort
|
30
|
+
end
|
31
|
+
|
32
|
+
context "pass_c" do
|
33
|
+
before { GM.app.configuration_passes[:normal].each { |n, p| p.dependencies } }
|
34
|
+
should "depend on pass_b" do
|
35
|
+
deps = GM.app.configuration_passes[:normal][:pass_c].dependencies
|
36
|
+
assert_equal [:pass_b], deps
|
37
|
+
end
|
38
|
+
end
|
39
|
+
|
40
|
+
context "pass_d" do
|
41
|
+
before { GM.app.configuration_passes[:normal].each { |n, p| p.dependencies } }
|
42
|
+
should "depend on pass_b" do
|
43
|
+
deps = GM.app.configuration_passes[:normal][:pass_d].dependencies
|
44
|
+
assert_equal [:pass_a], deps
|
45
|
+
end
|
46
|
+
end
|
47
|
+
|
48
|
+
context "pass_d" do
|
49
|
+
before { GM.app.configuration_passes[:normal].each { |n, p| p.dependencies } }
|
50
|
+
should "depend on pass_b" do
|
51
|
+
deps = GM.app.configuration_passes[:normal][:pass_a].dependencies
|
52
|
+
assert_equal [:pass_c], deps
|
53
|
+
end
|
54
|
+
end
|
55
|
+
|
56
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/test_helper'
|
2
|
+
|
3
|
+
class ConfigurationPassTest < Test::Unit::TestCase
|
4
|
+
|
5
|
+
include GM::DSL
|
6
|
+
|
7
|
+
should "register with the App in the correct fase" do
|
8
|
+
pass = pass(:pass) { |s| }
|
9
|
+
assert_not_nil pass
|
10
|
+
assert_equal pass, GM.app.configuration_passes[:normal][:pass]
|
11
|
+
end
|
12
|
+
|
13
|
+
should "have correct description" do
|
14
|
+
|
15
|
+
desc "my pass"
|
16
|
+
pass_a = pass(:pass_a) { |s| }
|
17
|
+
pass_b = pass(:pass_b) { |s| }
|
18
|
+
|
19
|
+
assert_equal pass_a.description, "my pass"
|
20
|
+
assert_equal pass_b.description, ""
|
21
|
+
|
22
|
+
end
|
23
|
+
|
24
|
+
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/test_helper'
|
2
|
+
|
3
|
+
class GemExtentionsTest < Test::Unit::TestCase
|
4
|
+
|
5
|
+
should "find recent files" do
|
6
|
+
gems = Gem.searcher.find_all('autotest/discover.rb')
|
7
|
+
gems = gems.inject({}) do |specs, spec|
|
8
|
+
specs[spec.name] = spec if specs[spec.name].nil? or (spec <=> specs[spec.name]) == 1
|
9
|
+
specs
|
10
|
+
end.values
|
11
|
+
paths = gems.collect do |gem|
|
12
|
+
Gem.searcher.matching_files gem, 'autotest/discover.rb'
|
13
|
+
end.flatten.compact
|
14
|
+
|
15
|
+
assert_equal paths, Gem.find_recent_files('autotest/discover.rb')
|
16
|
+
end
|
17
|
+
|
18
|
+
should "find_recent_resources" do
|
19
|
+
gems = Gem.searcher.find_all('autotest/discover.rb')
|
20
|
+
gems = gems.inject({}) do |specs, spec|
|
21
|
+
specs[spec.name] = spec if specs[spec.name].nil? or (spec <=> specs[spec.name]) == 1
|
22
|
+
specs
|
23
|
+
end.values
|
24
|
+
paths = gems.collect do |gem|
|
25
|
+
Gem.searcher.matching_files gem, 'autotest/discover.rb'
|
26
|
+
end.flatten.compact
|
27
|
+
|
28
|
+
assert_equal paths, Gem.find_recent_resources('lib/autotest/discover.rb')
|
29
|
+
end
|
30
|
+
|
31
|
+
end
|
data/test/test_helper.rb
ADDED
@@ -0,0 +1,12 @@
|
|
1
|
+
require 'test/unit'
|
2
|
+
require 'rubygems'
|
3
|
+
require 'mocha' rescue puts('please install mocha') and exit(1)
|
4
|
+
require 'context' rescue puts('please install context') and exit(1)
|
5
|
+
|
6
|
+
require File.dirname(__FILE__)+'/../lib/gm'
|
7
|
+
|
8
|
+
class Test::Unit::TestCase
|
9
|
+
|
10
|
+
# put your helpers here
|
11
|
+
|
12
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: simonmenke-gm
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0
|
4
|
+
version: 0.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Simon Menke
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2009-01-
|
12
|
+
date: 2009-01-18 00:00:00 -08:00
|
13
13
|
default_executable:
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
@@ -49,28 +49,9 @@ extensions: []
|
|
49
49
|
extra_rdoc_files: []
|
50
50
|
|
51
51
|
files:
|
52
|
-
- lib/extentions/gem.rb
|
53
|
-
- lib/gm/app.rb
|
54
|
-
- lib/gm/command.rb
|
55
|
-
- lib/gm/configuration_pass.rb
|
56
|
-
- lib/gm/configuration_pass_queue.rb
|
57
|
-
- lib/gm/dsl.rb
|
58
|
-
- lib/gm.rb
|
59
|
-
- gm_generators/bin/bin_generator.rb
|
60
|
-
- gm_generators/bin/templates/bin/bin.rb
|
61
|
-
- gm_generators/gem/gem_generator.rb
|
62
|
-
- gm_generators/gem/templates/Gmfile
|
63
|
-
- gm_generators/gem/templates/lib/module.rb
|
64
|
-
- gm_generators/gem/templates/README.textile
|
65
|
-
- gm_generators/mit_license/mit_license_generator.rb
|
66
|
-
- gm_generators/mit_license/templates/LICENSE.txt
|
67
|
-
- gm_generators/rails/rails_generator.rb
|
68
|
-
- gm_generators/rails/templates/rails/init.rb
|
69
|
-
- gm_generators/test/templates/test/test_case.rb
|
70
|
-
- gm_generators/test/templates/test/test_helper.rb
|
71
|
-
- gm_generators/test/test_generator.rb
|
72
52
|
- gm_commands/build_command.rb
|
73
53
|
- gm_commands/clean_command.rb
|
54
|
+
- gm_commands/config_command.rb
|
74
55
|
- gm_commands/create_command.rb
|
75
56
|
- gm_commands/gen_command.rb
|
76
57
|
- gm_commands/help_command.rb
|
@@ -88,23 +69,49 @@ files:
|
|
88
69
|
- gm_passes/specs.rb
|
89
70
|
- gm_passes/test.rb
|
90
71
|
- gm_generators/bin
|
72
|
+
- gm_generators/bin/bin_generator.rb
|
91
73
|
- gm_generators/bin/templates
|
92
74
|
- gm_generators/bin/templates/bin
|
75
|
+
- gm_generators/bin/templates/bin/bin.rb
|
93
76
|
- gm_generators/gem
|
77
|
+
- gm_generators/gem/gem_generator.rb
|
94
78
|
- gm_generators/gem/templates
|
79
|
+
- gm_generators/gem/templates/Gmfile
|
80
|
+
- gm_generators/gem/templates/README.textile
|
95
81
|
- gm_generators/gem/templates/lib
|
82
|
+
- gm_generators/gem/templates/lib/module.rb
|
96
83
|
- gm_generators/mit_license
|
84
|
+
- gm_generators/mit_license/mit_license_generator.rb
|
97
85
|
- gm_generators/mit_license/templates
|
86
|
+
- gm_generators/mit_license/templates/LICENSE.txt
|
98
87
|
- gm_generators/rails
|
88
|
+
- gm_generators/rails/rails_generator.rb
|
99
89
|
- gm_generators/rails/templates
|
100
90
|
- gm_generators/rails/templates/rails
|
91
|
+
- gm_generators/rails/templates/rails/init.rb
|
101
92
|
- gm_generators/test
|
102
93
|
- gm_generators/test/templates
|
103
|
-
- gm_generators/test/templates/
|
104
|
-
-
|
105
|
-
-
|
94
|
+
- gm_generators/test/templates/test_case.rb.erb
|
95
|
+
- gm_generators/test/templates/test_helper.rb.erb
|
96
|
+
- gm_generators/test/test_generator.rb
|
97
|
+
- test/command_test.rb
|
98
|
+
- test/configuration_pass_queue_test.rb
|
99
|
+
- test/configuration_pass_test.rb
|
100
|
+
- test/gem_extentions_test.rb
|
101
|
+
- test/test_helper.rb
|
106
102
|
- LICENSE.txt
|
107
103
|
- README.textile
|
104
|
+
- bin/gm
|
105
|
+
- bin/gmm
|
106
|
+
- lib/autotest/discover.rb
|
107
|
+
- lib/autotest/gm.rb
|
108
|
+
- lib/extentions/gem.rb
|
109
|
+
- lib/gm/app.rb
|
110
|
+
- lib/gm/command.rb
|
111
|
+
- lib/gm/configuration_pass.rb
|
112
|
+
- lib/gm/configuration_pass_queue.rb
|
113
|
+
- lib/gm/dsl.rb
|
114
|
+
- lib/gm.rb
|
108
115
|
has_rdoc: true
|
109
116
|
homepage: http://github.com/simonmenke/gm
|
110
117
|
post_install_message:
|
@@ -130,6 +137,10 @@ rubyforge_project: gm
|
|
130
137
|
rubygems_version: 1.2.0
|
131
138
|
signing_key:
|
132
139
|
specification_version: 2
|
133
|
-
summary:
|
134
|
-
test_files:
|
135
|
-
|
140
|
+
summary: Building gems the clean way.
|
141
|
+
test_files:
|
142
|
+
- test/command_test.rb
|
143
|
+
- test/configuration_pass_queue_test.rb
|
144
|
+
- test/configuration_pass_test.rb
|
145
|
+
- test/gem_extentions_test.rb
|
146
|
+
- test/test_helper.rb
|