deathsyn-seedling 0.0.1 → 0.0.5
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/CHANGELOG +62 -0
- data/LICENSE +21 -0
- data/MANIFEST +9 -0
- data/README +6 -1
- data/Rakefile +29 -3
- data/doc/LEGAL +1 -0
- data/lib/seedling.rb +16 -2
- data/lib/seedling/bin.rb +13 -15
- data/lib/seedling/extensions/inflector.rb +4 -0
- data/lib/seedling/project_creator.rb +8 -4
- data/lib/seedling/version.rb +1 -1
- data/lib/templates/core/README.seed +15 -0
- data/lib/templates/core/Rakefile.seed +25 -3
- data/lib/templates/core/lib/library.rb.seed +13 -2
- data/lib/templates/core/tasks/authors.rake +9 -6
- data/lib/templates/core/tasks/copyright.rake +32 -15
- data/lib/templates/core/tasks/yard.rake +4 -0
- data/lib/templates/sequel-postgres/spec/db_helper.rb.seed +68 -0
- data/lib/templates/sequel-postgres/tasks/schema.rake.seed +26 -0
- data/lib/templates/sequel/tasks/migrate.rake.seed +12 -0
- data/seedling.gemspec +5 -6
- data/spec/bin.rb +61 -0
- data/spec/helper.rb +5 -1
- data/spec/seedling.rb +8 -0
- data/tasks/authors.rake +13 -6
- data/tasks/bacon.rake +4 -0
- data/tasks/changelog.rake +4 -0
- data/tasks/copyright.rake +32 -15
- data/tasks/gem.rake +4 -0
- data/tasks/gem_installer.rake +4 -0
- data/tasks/install_dependencies.rake +4 -0
- data/tasks/manifest.rake +4 -0
- data/tasks/rcov.rake +4 -0
- data/tasks/release.rake +4 -0
- data/tasks/reversion.rake +4 -0
- data/tasks/setup.rake +4 -0
- data/tasks/yard.rake +5 -1
- metadata +13 -4
data/CHANGELOG
CHANGED
@@ -1,3 +1,65 @@
|
|
1
|
+
[fbb1b1a | Fri May 29 19:04:59 UTC 2009] Kevin Berry <kevin@opensourcealchemist.com>
|
2
|
+
|
3
|
+
* Flesh out Usage a bit.
|
4
|
+
|
5
|
+
[e02564f | Fri May 29 00:47:07 UTC 2009] TJ Vanderpoel <bougy.man@gmail.com>
|
6
|
+
|
7
|
+
* doh, removed the wrong parens
|
8
|
+
|
9
|
+
[da56f0c | Thu May 28 22:02:26 UTC 2009] TJ Vanderpoel <bougy.man@gmail.com>
|
10
|
+
|
11
|
+
* Added specs, for bin and seedling main module
|
12
|
+
|
13
|
+
* Added ROOT and LIBDIR as constants to main module
|
14
|
+
* Included the Pathname / extended method in main module
|
15
|
+
* Moved to autoload :VERSION for loading the library version
|
16
|
+
* Added a quiet (-q/--quite) mode for ProjectCreator (the seedling #plant handler)
|
17
|
+
* Added a README to the templates/core so the yard task works out of the box
|
18
|
+
|
19
|
+
[1a08ea1 | Wed May 27 14:35:59 UTC 2009] Kevin Berry <kevin@opensourcealchemist.com>
|
20
|
+
|
21
|
+
* Move DbHelper spec for PG to the correct tree.
|
22
|
+
|
23
|
+
[9823957 | Wed May 27 06:32:53 UTC 2009] TJ Vanderpoel <bougy.man@gmail.com>
|
24
|
+
|
25
|
+
* added db_helper and made all of the new additions seeds. TODO: make them dynamic
|
26
|
+
|
27
|
+
[c853021 | Wed May 27 06:29:15 UTC 2009] TJ Vanderpoel <bougy.man@gmail.com>
|
28
|
+
|
29
|
+
* added a couple sequel specific tasks
|
30
|
+
|
31
|
+
[0629cc5 | Wed May 27 01:53:03 UTC 2009] TJ Vanderpoel <bougy.man@gmail.com>
|
32
|
+
|
33
|
+
* added license to all of seedling files using the copyright task
|
34
|
+
|
35
|
+
[36ae042 | Wed May 27 01:46:15 UTC 2009] TJ Vanderpoel <bougy.man@gmail.com>
|
36
|
+
|
37
|
+
* prettied up the license
|
38
|
+
|
39
|
+
[fa6bb1b | Wed May 27 01:11:46 UTC 2009] TJ Vanderpoel <bougy.man@gmail.com>
|
40
|
+
|
41
|
+
* updated AUTHORS file
|
42
|
+
|
43
|
+
[3c08a96 | Wed May 27 01:11:04 UTC 2009] TJ Vanderpoel <bougy.man@gmail.com>
|
44
|
+
|
45
|
+
* updated authors for more consistent reporting
|
46
|
+
|
47
|
+
[a984ef8 | Wed May 27 01:05:35 UTC 2009] TJ Vanderpoel <bougy.man@gmail.com>
|
48
|
+
|
49
|
+
* added yard task to template task director, and updated authors.rake
|
50
|
+
|
51
|
+
[81f6a82 | Mon May 25 21:29:48 UTC 2009] Kevin Berry <KevinBerry@nrs.us>
|
52
|
+
|
53
|
+
* Close quote on yard,rake
|
54
|
+
|
55
|
+
[1808642 | Tue May 19 03:37:25 UTC 2009] TJ Vanderpoel <bougy.man@gmail.com>
|
56
|
+
|
57
|
+
* added rake tasks to documentation
|
58
|
+
|
59
|
+
[db34e4f | Thu May 14 17:30:32 UTC 2009] Kevin Berry <kevin@opensourcealchemist.com>
|
60
|
+
|
61
|
+
* Correct Rakefile for project name, update manifest, authors.
|
62
|
+
|
1
63
|
[27deb65 | Thu May 14 15:30:14 UTC 2009] Kevin Berry <kevin@opensourcealchemist.com>
|
2
64
|
|
3
65
|
* Version 0.0.1
|
data/LICENSE
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
# Copyright (c) 2008-2009 The Rubyists, LLC (effortless systems) <rubyists@rubyists.com>
|
2
|
+
# Distributed under the terms of the MIT license.
|
3
|
+
# See the LICENSE file that accompanied this software for the full MIT License text
|
4
|
+
#
|
5
|
+
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
|
+
# of this software and associated documentation files (the "Software"), to deal
|
7
|
+
# in the Software without restriction, including without limitation the rights
|
8
|
+
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
9
|
+
# copies of the Software, and to permit persons to whom the Software is
|
10
|
+
# furnished to do so, subject to the following conditions:
|
11
|
+
#
|
12
|
+
# The above copyright notice and this permission notice shall be included in
|
13
|
+
# all copies or substantial portions of the Software.
|
14
|
+
#
|
15
|
+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
16
|
+
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
17
|
+
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
18
|
+
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
19
|
+
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
20
|
+
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
21
|
+
# THE SOFTWARE.
|
data/MANIFEST
CHANGED
@@ -1,14 +1,17 @@
|
|
1
1
|
AUTHORS
|
2
2
|
CHANGELOG
|
3
|
+
LICENSE
|
3
4
|
MANIFEST
|
4
5
|
README
|
5
6
|
Rakefile
|
6
7
|
bin/seedling
|
8
|
+
doc/LEGAL
|
7
9
|
lib/seedling.rb
|
8
10
|
lib/seedling/bin.rb
|
9
11
|
lib/seedling/extensions/inflector.rb
|
10
12
|
lib/seedling/project_creator.rb
|
11
13
|
lib/seedling/version.rb
|
14
|
+
lib/templates/core/README.seed
|
12
15
|
lib/templates/core/Rakefile.seed
|
13
16
|
lib/templates/core/lib/library.rb.seed
|
14
17
|
lib/templates/core/lib/library/version.rb.seed
|
@@ -25,8 +28,14 @@ lib/templates/core/tasks/rcov.rake
|
|
25
28
|
lib/templates/core/tasks/release.rake
|
26
29
|
lib/templates/core/tasks/reversion.rake
|
27
30
|
lib/templates/core/tasks/setup.rake.seed
|
31
|
+
lib/templates/core/tasks/yard.rake
|
32
|
+
lib/templates/sequel-postgres/spec/db_helper.rb.seed
|
33
|
+
lib/templates/sequel-postgres/tasks/schema.rake.seed
|
34
|
+
lib/templates/sequel/tasks/migrate.rake.seed
|
28
35
|
seedling.gemspec
|
36
|
+
spec/bin.rb
|
29
37
|
spec/helper.rb
|
38
|
+
spec/seedling.rb
|
30
39
|
tasks/authors.rake
|
31
40
|
tasks/bacon.rake
|
32
41
|
tasks/changelog.rake
|
data/README
CHANGED
data/Rakefile
CHANGED
@@ -1,3 +1,7 @@
|
|
1
|
+
# Copyright (c) 2008-2009 The Rubyists, LLC (effortless systems) <rubyists@rubyists.com>
|
2
|
+
# Distributed under the terms of the MIT license.
|
3
|
+
# See the LICENSE file that accompanied this software for the full MIT License text
|
4
|
+
#
|
1
5
|
begin; require 'rubygems'; rescue LoadError; end
|
2
6
|
|
3
7
|
require 'rake'
|
@@ -14,10 +18,32 @@ PROJECT_SPECS = FileList[
|
|
14
18
|
PROJECT_MODULE = 'Seedling'
|
15
19
|
PROJECT_README = 'README'
|
16
20
|
#PROJECT_RUBYFORGE_GROUP_ID = 3034
|
17
|
-
|
18
|
-
|
19
|
-
|
21
|
+
PROJECT_COPYRIGHT_SUMMARY = [
|
22
|
+
"# Copyright (c) 2008-#{Time.now.year} The Rubyists, LLC (effortless systems) <rubyists@rubyists.com>",
|
23
|
+
"# Distributed under the terms of the MIT license.",
|
24
|
+
"# See the LICENSE file that accompanied this software for the full MIT License text",
|
25
|
+
"#"
|
20
26
|
]
|
27
|
+
PROJECT_COPYRIGHT = PROJECT_COPYRIGHT_SUMMARY + [
|
28
|
+
"# Permission is hereby granted, free of charge, to any person obtaining a copy",
|
29
|
+
'# of this software and associated documentation files (the "Software"), to deal',
|
30
|
+
"# in the Software without restriction, including without limitation the rights",
|
31
|
+
"# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell",
|
32
|
+
"# copies of the Software, and to permit persons to whom the Software is",
|
33
|
+
"# furnished to do so, subject to the following conditions:",
|
34
|
+
"#",
|
35
|
+
"# The above copyright notice and this permission notice shall be included in",
|
36
|
+
"# all copies or substantial portions of the Software.",
|
37
|
+
"#",
|
38
|
+
'# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR',
|
39
|
+
"# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,",
|
40
|
+
"# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE",
|
41
|
+
"# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER",
|
42
|
+
"# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,",
|
43
|
+
"# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN",
|
44
|
+
"# THE SOFTWARE."
|
45
|
+
]
|
46
|
+
|
21
47
|
|
22
48
|
# To release the monthly version do:
|
23
49
|
# $ PROJECT_VERSION=2009.03 rake release
|
data/doc/LEGAL
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
LICENSE
|
data/lib/seedling.rb
CHANGED
@@ -1,5 +1,19 @@
|
|
1
|
+
# Copyright (c) 2008-2009 The Rubyists, LLC (effortless systems) <rubyists@rubyists.com>
|
2
|
+
# Distributed under the terms of the MIT license.
|
3
|
+
# See the LICENSE file that accompanied this software for the full MIT License text
|
4
|
+
#
|
1
5
|
require "pathname"
|
2
|
-
|
6
|
+
require "date"
|
7
|
+
|
8
|
+
class Pathname
|
9
|
+
def /(other)
|
10
|
+
join(other.to_s)
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
$LOAD_PATH.unshift((Pathname(__FILE__).dirname).expand_path.to_s)
|
3
15
|
module Seedling
|
16
|
+
autoload :VERSION, "seedling/version"
|
17
|
+
ROOT = (Pathname($LOAD_PATH.first)/"..").expand_path unless Seedling.const_defined?("ROOT")
|
18
|
+
LIBDIR = ROOT/:lib
|
4
19
|
end
|
5
|
-
require "seedling/version"
|
data/lib/seedling/bin.rb
CHANGED
@@ -1,3 +1,7 @@
|
|
1
|
+
# Copyright (c) 2008-2009 The Rubyists, LLC (effortless systems) <rubyists@rubyists.com>
|
2
|
+
# Distributed under the terms of the MIT license.
|
3
|
+
# See the LICENSE file that accompanied this software for the full MIT License text
|
4
|
+
#
|
1
5
|
#!/usr/bin/env ruby
|
2
6
|
require 'optparse'
|
3
7
|
require "seedling/extensions/inflector"
|
@@ -41,13 +45,9 @@ module Seedling
|
|
41
45
|
puts Seedling::VERSION
|
42
46
|
exit
|
43
47
|
when /^$/
|
44
|
-
|
45
|
-
puts cmd.usage
|
46
|
-
exit 1
|
48
|
+
raise "Must supply a valid command\n\n" + cmd.usage
|
47
49
|
else
|
48
|
-
|
49
|
-
puts cmd.usage
|
50
|
-
exit 1
|
50
|
+
raise "invalid arguments #{args.join(" ")}\n\n" + cmd.usage
|
51
51
|
end
|
52
52
|
end # }}}
|
53
53
|
|
@@ -110,7 +110,7 @@ module Seedling
|
|
110
110
|
def plant_options(opts = {})
|
111
111
|
@plant_opts ||= OptionParser.new do |o|
|
112
112
|
o.banner = "Planting Options"
|
113
|
-
o.on("-
|
113
|
+
o.on("-sSUMMARY", "--summary SUMMARY", "Short description of this project") { |yn| opts[:summary] = yn }
|
114
114
|
o.on("-dDESCRIPTION", "--description DESCRIPTION", "Longer description (Default: summary)") { |des| opts[:description] = des }
|
115
115
|
o.on("-lLIBNAME", "--libname LIBNAME", "Library name (Default: path specifcation)") { |libname| opts[:lib_name] = libname }
|
116
116
|
o.on("-gDOCGENERATOR", "--doc-generator DOCGENERATOR", "Preferred documentation generator (Default: yard)") { |docgenerator| opts[:doc_generator] = docgenerator }
|
@@ -120,28 +120,26 @@ module Seedling
|
|
120
120
|
|
121
121
|
o.separator ""
|
122
122
|
o.separator "Author Options"
|
123
|
-
o.on("-
|
123
|
+
o.on("-aAUTHOR", "--author AUTHOR", "Author's Name") { |yn| opts[:author_name] = yn }
|
124
124
|
o.on("-eEMAIL", "--email EMAIL", "Author's Email") { |yn| opts[:author_email] = yn }
|
125
125
|
o.on("-uURL", "--url URL", "Project URL/homepage") { |url| opts[:project_url] = url }
|
126
126
|
|
127
127
|
o.separator ""
|
128
128
|
o.separator "Directory Creation Options"
|
129
129
|
o.on("-f", "--force", "Force creation if dir already exists") { |yn| opts[:force] = true }
|
130
|
-
o.on("-
|
130
|
+
o.on("-A", "--amend", "Update a tree") { |yn| opts[:amend] = true }
|
131
|
+
o.on("-q", "--quiet", "Don't show output of tree creation") { |yn| opts[:interactive] = false }
|
131
132
|
end
|
132
133
|
end
|
133
134
|
|
134
135
|
def plant(command) # {{{
|
135
136
|
plant_options(o = {}).parse!(ARGV)
|
136
|
-
|
137
|
-
|
138
|
-
exit 1
|
137
|
+
if ARGV.size > 1
|
138
|
+
raise "Invalid options given: #{ARGV.join(" ")}\n\n" + usage
|
139
139
|
end
|
140
140
|
project_root = ARGV.shift
|
141
141
|
if project_root.nil?
|
142
|
-
|
143
|
-
puts usage
|
144
|
-
exit 1
|
142
|
+
raise "Must supply a valid directory to install your project, you gave none.\n\n" + usage
|
145
143
|
end
|
146
144
|
o[:lib_name] ||= Pathname.new(project_root).basename.to_s.classify
|
147
145
|
o[:lib_name_u] ||= o[:lib_name].underscore
|
@@ -1,3 +1,7 @@
|
|
1
|
+
# Copyright (c) 2008-2009 The Rubyists, LLC (effortless systems) <rubyists@rubyists.com>
|
2
|
+
# Distributed under the terms of the MIT license.
|
3
|
+
# See the LICENSE file that accompanied this software for the full MIT License text
|
4
|
+
#
|
1
5
|
# Add inflection methods to String, which allows the easy transformation of
|
2
6
|
# words from singular to plural,class names to table names, modularized class
|
3
7
|
# names to ones without, and class names to foreign keys.
|
@@ -1,3 +1,7 @@
|
|
1
|
+
# Copyright (c) 2008-2009 The Rubyists, LLC (effortless systems) <rubyists@rubyists.com>
|
2
|
+
# Distributed under the terms of the MIT license.
|
3
|
+
# See the LICENSE file that accompanied this software for the full MIT License text
|
4
|
+
#
|
1
5
|
# Copyright (c) The Rubyists, LLC.
|
2
6
|
# Released under the terms of the MIT License
|
3
7
|
#
|
@@ -19,7 +23,7 @@ module Seedling
|
|
19
23
|
|
20
24
|
def initialize(pot, options = {})
|
21
25
|
@pot, @options = Pathname.new(pot), options
|
22
|
-
|
26
|
+
@interactive = @options.keys.include?(:interactive) ? @options[:interactive] : true
|
23
27
|
end
|
24
28
|
|
25
29
|
def target
|
@@ -47,7 +51,7 @@ module Seedling
|
|
47
51
|
def create
|
48
52
|
got_proto?
|
49
53
|
|
50
|
-
puts
|
54
|
+
puts("Found proto at: %p, proceeding...\n\n" % proto) if @interactive
|
51
55
|
mkdir(relate('/')) if create_root?
|
52
56
|
proceed
|
53
57
|
end
|
@@ -70,13 +74,13 @@ module Seedling
|
|
70
74
|
exists = File.directory?(dir)
|
71
75
|
return if exists and amend?
|
72
76
|
return if exists and not force?
|
73
|
-
puts
|
77
|
+
puts("mkdir(%p)" % dir) if @interactive
|
74
78
|
FileUtils.mkdir_p(dir)
|
75
79
|
end
|
76
80
|
|
77
81
|
def copy(from, to)
|
78
82
|
return unless copy_check(to)
|
79
|
-
puts
|
83
|
+
puts("copy(%p, %p)" % [from, to]) if @interactive
|
80
84
|
FileUtils.cp(from, to)
|
81
85
|
post_process(to)
|
82
86
|
end
|
data/lib/seedling/version.rb
CHANGED
@@ -14,10 +14,32 @@ PROJECT_SPECS = FileList[
|
|
14
14
|
PROJECT_MODULE = '<%= @options[:lib_name] %>'
|
15
15
|
PROJECT_README = 'README'
|
16
16
|
#PROJECT_RUBYFORGE_GROUP_ID = 3034
|
17
|
-
|
18
|
-
"#
|
19
|
-
|
17
|
+
PROJECT_COPYRIGHT_SUMMARY = [
|
18
|
+
"# Copyright (c) 2008-#{Time.now.year} The Rubyists, LLC (effortless systems) <rubyists@rubyists.com>",
|
19
|
+
"# Distributed under the terms of the MIT license.",
|
20
|
+
"# See the LICENSE file which accompanies this software for the full text",
|
21
|
+
"#"
|
20
22
|
]
|
23
|
+
PROJECT_COPYRIGHT = PROJECT_COPYRIGHT_SUMMARY + [
|
24
|
+
"# Permission is hereby granted, free of charge, to any person obtaining a copy",
|
25
|
+
'# of this software and associated documentation files (the "Software"), to deal',
|
26
|
+
"# in the Software without restriction, including without limitation the rights",
|
27
|
+
"# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell",
|
28
|
+
"# copies of the Software, and to permit persons to whom the Software is",
|
29
|
+
"# furnished to do so, subject to the following conditions:",
|
30
|
+
"#",
|
31
|
+
"# The above copyright notice and this permission notice shall be included in",
|
32
|
+
"# all copies or substantial portions of the Software.",
|
33
|
+
"#",
|
34
|
+
'# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR',
|
35
|
+
"# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,",
|
36
|
+
"# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE",
|
37
|
+
"# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER",
|
38
|
+
"# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,",
|
39
|
+
"# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN",
|
40
|
+
"# THE SOFTWARE."
|
41
|
+
]
|
42
|
+
|
21
43
|
|
22
44
|
# To release the monthly version do:
|
23
45
|
# $ PROJECT_VERSION=2009.03 rake release
|
@@ -1,5 +1,16 @@
|
|
1
1
|
require "pathname"
|
2
|
-
$LOAD_PATH.unshift(
|
2
|
+
$LOAD_PATH.unshift(File.expand_path("../", __FILE__))
|
3
|
+
|
4
|
+
# Allows for pathnames to be easily added to
|
5
|
+
class Pathname
|
6
|
+
def /(other)
|
7
|
+
join(other.to_s)
|
8
|
+
end
|
9
|
+
end
|
10
|
+
|
11
|
+
# <%= @options[:summary] %>
|
3
12
|
module <%= @options[:lib_name] %>
|
13
|
+
autoload :VERSION, "<%= @options[:lib_name_u] %>/version"
|
14
|
+
ROOT = Pathname($LOAD_PATH.first) unless <%= @options[:lib_name] %>.const_defined?("ROOT")
|
15
|
+
LIBDIR = ROOT/:lib unless <%= @options[:lib_name] %>.const_defined?("LIBDIR")
|
4
16
|
end
|
5
|
-
require "<%= @options[:lib_name_u] %>/version"
|
@@ -7,13 +7,16 @@ task :authors do
|
|
7
7
|
authors = Hash.new(0)
|
8
8
|
|
9
9
|
`git shortlog -nse`.scan(/(\d+)\s(.+)\s<(.*)>$/) do |count, name, email|
|
10
|
+
# Examples of mappping, replace with your own or comment this out/delete it
|
10
11
|
case name
|
11
|
-
when
|
12
|
-
name, email = "TJ Vanderpoel", "
|
13
|
-
when /
|
14
|
-
name, email = "
|
15
|
-
when
|
16
|
-
name, email = "
|
12
|
+
when /^(?:bougyman$|TJ Vanderpoel)/
|
13
|
+
name, email = "TJ Vanderpoel", "tj@rubyists.com"
|
14
|
+
when /^(?:manveru$|Michael Fellinger)/
|
15
|
+
name, email = "Michael Fellinger", "mf@rubyists.com"
|
16
|
+
when /^(?:deathsyn$|Kevin Berry)/
|
17
|
+
name, email = "Kevin Berry", "kb@rubyists.com"
|
18
|
+
when /^(?:(?:jayson|thedonvaughn|jvaughn)$|Jayson Vaughn)/
|
19
|
+
name, email = "Jayson Vaughn", "jv@rubyists.com"
|
17
20
|
end
|
18
21
|
|
19
22
|
authors[[name, email]] += count.to_i
|
@@ -1,21 +1,38 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
1
|
+
# Copyright (c) 2008-2009 The Rubyists, LLC (effortless systems) <rubyists@rubyists.com>
|
2
|
+
# Distributed under the terms of the MIT license.
|
3
|
+
# See the LICENSE file that accompanied this software for the full MIT License text
|
4
|
+
#
|
5
|
+
require "pathname"
|
6
|
+
task :legal do
|
7
|
+
license = Pathname("LICENSE")
|
8
|
+
license.open("w+") do |f|
|
9
|
+
f.puts PROJECT_COPYRIGHT
|
10
|
+
end unless license.file? and license.read == PROJECT_COPYRIGHT
|
11
|
+
doc = Pathname("doc/LEGAL")
|
12
|
+
doc.open("w+") do |f|
|
13
|
+
f.puts "LICENSE"
|
14
|
+
end unless doc.file?
|
15
|
+
end
|
16
|
+
|
17
|
+
desc "add copyright summary to all .rb files in the distribution"
|
18
|
+
task :copyright => [:legal] do
|
19
|
+
doc = Pathname("doc/LEGAL")
|
20
|
+
ignore = doc.readlines.
|
21
|
+
select { |line| line.strip!; Pathname(line).file? }.
|
22
|
+
map { |file| Pathname(file).expand_path }
|
6
23
|
|
7
|
-
puts "adding copyright to files that don't have it currently"
|
8
|
-
puts
|
24
|
+
puts "adding copyright summary to files that don't have it currently"
|
25
|
+
puts PROJECT_COPYRIGHT_SUMMARY
|
9
26
|
puts
|
10
27
|
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
puts
|
28
|
+
(Pathname.glob('{controller,model,app,lib,test,spec}/**/*{.rb}') +
|
29
|
+
Pathname.glob("tasks/*.rake") +
|
30
|
+
Pathname.glob("Rakefile")).each do |file|
|
31
|
+
next if ignore.include? file.expand_path
|
32
|
+
lines = file.readlines.map{ |l| l.chomp }
|
33
|
+
unless lines.first(PROJECT_COPYRIGHT_SUMMARY.size) == PROJECT_COPYRIGHT_SUMMARY
|
34
|
+
oldlines = file.readlines
|
35
|
+
file.open("w+") { |f| f.puts PROJECT_COPYRIGHT_SUMMARY + oldlines }
|
19
36
|
end
|
20
37
|
end
|
21
38
|
end
|
@@ -0,0 +1,68 @@
|
|
1
|
+
# Copyright (c) 2008-2009 The Rubyists, LLC (effortless systems) <rubyists@rubyists.com>
|
2
|
+
# Distributed under the terms of the MIT license.
|
3
|
+
# The full text can be found in the LICENSE file included with this software
|
4
|
+
#
|
5
|
+
begin
|
6
|
+
require "sequel"
|
7
|
+
rescue LoadError
|
8
|
+
require "rubygems"
|
9
|
+
require "sequel"
|
10
|
+
end
|
11
|
+
require "logger"
|
12
|
+
ENV["PGHOST"] = PGHOST = "/tmp"
|
13
|
+
ENV["PGPORT"] = PGPORT = "5433"
|
14
|
+
SHM = "/dev/shm"
|
15
|
+
ENV['PGDATA'] = PGDATA = "#{SHM}/fxc"
|
16
|
+
DB_LOG = Logger.new("/tmp/fxc_spec.log")
|
17
|
+
|
18
|
+
def runcmd(command)
|
19
|
+
IO.popen(command) do |sout|
|
20
|
+
out = sout.read.strip
|
21
|
+
out.each_line { |l| DB_LOG.info(l) }
|
22
|
+
end
|
23
|
+
$? == 0
|
24
|
+
end
|
25
|
+
|
26
|
+
def startdb
|
27
|
+
return true if runcmd %{pg_ctl status -o "-k /tmp"}
|
28
|
+
DB_LOG.info "Starting DB"
|
29
|
+
runcmd %{pg_ctl start -w -o "-k /tmp" -l /tmp/fxcdb.log}
|
30
|
+
end
|
31
|
+
|
32
|
+
def stopdb
|
33
|
+
DB_LOG.info "Stopping DB"
|
34
|
+
if runcmd %{pg_ctl status -o "-k /tmp"}
|
35
|
+
runcmd %{pg_ctl stop -w -o "-k /tmp"}
|
36
|
+
else
|
37
|
+
true
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
def initdb
|
42
|
+
raise "#{SHM} not found!" unless File.directory?(SHM)
|
43
|
+
return true if File.directory?(PGDATA)
|
44
|
+
runcmd %{initdb}
|
45
|
+
end
|
46
|
+
|
47
|
+
def createdb
|
48
|
+
runcmd %{dropdb fxc}
|
49
|
+
runcmd %{createdb fxc}
|
50
|
+
end
|
51
|
+
|
52
|
+
begin
|
53
|
+
raise "initdb failed" unless initdb
|
54
|
+
raise "startdb failed" unless startdb
|
55
|
+
raise "createdb failed" unless createdb
|
56
|
+
rescue RuntimeError => e
|
57
|
+
$stderr.puts "\n<<<Error>>> #{e}, do you have the postgres tools in your path?"
|
58
|
+
exit 1
|
59
|
+
end
|
60
|
+
|
61
|
+
DB = Sequel.postgres("fxc", :user => ENV["USER"], :host => PGHOST, :port => PGPORT)
|
62
|
+
require 'sequel/extensions/migration'
|
63
|
+
require File.expand_path('../../lib/fxc', __FILE__)
|
64
|
+
|
65
|
+
# go to latest migration
|
66
|
+
Sequel::Migrator.apply(DB, FXC::MIGRATION_ROOT)
|
67
|
+
|
68
|
+
require FXC::SPEC_HELPER_PATH/:helper
|
@@ -0,0 +1,26 @@
|
|
1
|
+
task :test_db do
|
2
|
+
require "lib/fxc"
|
3
|
+
require FXC::ROOT/:spec/:db_helper
|
4
|
+
end
|
5
|
+
|
6
|
+
desc "Dump the test schema"
|
7
|
+
task :schema, :format, :needs => [:test_db] do |t,args|
|
8
|
+
args.with_defaults(:format => "html")
|
9
|
+
descs = DB.tables.inject([]) do |arr, table|
|
10
|
+
arr << "\\dd #{table};\\d+ #{table}"
|
11
|
+
end
|
12
|
+
commands = descs.join(";")
|
13
|
+
if args.format.to_s == "html"
|
14
|
+
f = File.open("doc/schema.html","w+")
|
15
|
+
command = %Q{echo '\\H #{commands}'|PGDATA=#{ENV['PGDATA']} PGHOST=#{ENV['PGHOST']} PGPORT=#{ENV['PGPORT']} psql fxc|tail -n +2}
|
16
|
+
else
|
17
|
+
command = %Q{echo '#{commands}'|PGDATA=#{ENV['PGDATA']} PGHOST=#{ENV['PGHOST']} PGPORT=#{ENV['PGPORT']} psql fxc}
|
18
|
+
f = $stdout
|
19
|
+
end
|
20
|
+
f.puts %x{#{command}}
|
21
|
+
unless f == $stdout
|
22
|
+
f.close
|
23
|
+
puts "Saved doc/schema.html"
|
24
|
+
end
|
25
|
+
|
26
|
+
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
# Copyright (c) 2008-2009 The Rubyists, LLC (effortless systems) <rubyists@rubyists.com>
|
2
|
+
# Distributed under the terms of the MIT license.
|
3
|
+
# The full text can be found in the LICENSE file included with this software
|
4
|
+
#
|
5
|
+
require File.expand_path("../../lib/fxc", __FILE__)
|
6
|
+
require FXC::ROOT/:model/:init
|
7
|
+
|
8
|
+
desc "migrate to latest version of db"
|
9
|
+
task :migrate do
|
10
|
+
migrator = "sequel '#{DB.uri}' -E -m #{FXC::MIGRATION_ROOT}"
|
11
|
+
puts %x{#{migrator}}
|
12
|
+
end
|
data/seedling.gemspec
CHANGED
@@ -2,17 +2,16 @@
|
|
2
2
|
|
3
3
|
Gem::Specification.new do |s|
|
4
4
|
s.name = %q{seedling}
|
5
|
-
s.version = "0.0.
|
5
|
+
s.version = "0.0.5"
|
6
6
|
|
7
7
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
8
8
|
s.authors = ["Kevin Berry"]
|
9
|
-
s.date = %q{2009-05-
|
9
|
+
s.date = %q{2009-05-29}
|
10
10
|
s.default_executable = %q{seedling}
|
11
11
|
s.description = %q{A lightweight tool to create new ruby library trees, with helpers to make gemming and maintaining a breeze.}
|
12
12
|
s.email = %q{deathsyn@gmail.com}
|
13
13
|
s.executables = ["seedling"]
|
14
|
-
s.files = ["AUTHORS", "CHANGELOG", "MANIFEST", "README", "Rakefile", "bin/seedling", "lib/seedling.rb", "lib/seedling/bin.rb", "lib/seedling/extensions/inflector.rb", "lib/seedling/project_creator.rb", "lib/seedling/version.rb", "lib/templates/core/Rakefile.seed", "lib/templates/core/lib/library.rb.seed", "lib/templates/core/lib/library/version.rb.seed", "lib/templates/core/spec/helper.rb.seed", "lib/templates/core/tasks/authors.rake", "lib/templates/core/tasks/bacon.rake", "lib/templates/core/tasks/changelog.rake", "lib/templates/core/tasks/copyright.rake", "lib/templates/core/tasks/gem.rake", "lib/templates/core/tasks/gem_installer.rake", "lib/templates/core/tasks/install_dependencies.rake", "lib/templates/core/tasks/manifest.rake", "lib/templates/core/tasks/rcov.rake", "lib/templates/core/tasks/release.rake", "lib/templates/core/tasks/reversion.rake", "lib/templates/core/tasks/setup.rake.seed", "seedling.gemspec", "spec/helper.rb", "tasks/authors.rake", "tasks/bacon.rake", "tasks/changelog.rake", "tasks/copyright.rake", "tasks/gem.rake", "tasks/gem_installer.rake", "tasks/install_dependencies.rake", "tasks/manifest.rake", "tasks/rcov.rake", "tasks/release.rake", "tasks/reversion.rake", "tasks/setup.rake", "tasks/yard.rake"]
|
15
|
-
s.has_rdoc = true
|
14
|
+
s.files = ["AUTHORS", "CHANGELOG", "LICENSE", "MANIFEST", "README", "Rakefile", "bin/seedling", "doc/LEGAL", "lib/seedling.rb", "lib/seedling/bin.rb", "lib/seedling/extensions/inflector.rb", "lib/seedling/project_creator.rb", "lib/seedling/version.rb", "lib/templates/core/README.seed", "lib/templates/core/Rakefile.seed", "lib/templates/core/lib/library.rb.seed", "lib/templates/core/lib/library/version.rb.seed", "lib/templates/core/spec/helper.rb.seed", "lib/templates/core/tasks/authors.rake", "lib/templates/core/tasks/bacon.rake", "lib/templates/core/tasks/changelog.rake", "lib/templates/core/tasks/copyright.rake", "lib/templates/core/tasks/gem.rake", "lib/templates/core/tasks/gem_installer.rake", "lib/templates/core/tasks/install_dependencies.rake", "lib/templates/core/tasks/manifest.rake", "lib/templates/core/tasks/rcov.rake", "lib/templates/core/tasks/release.rake", "lib/templates/core/tasks/reversion.rake", "lib/templates/core/tasks/setup.rake.seed", "lib/templates/core/tasks/yard.rake", "lib/templates/sequel-postgres/spec/db_helper.rb.seed", "lib/templates/sequel-postgres/tasks/schema.rake.seed", "lib/templates/sequel/tasks/migrate.rake.seed", "seedling.gemspec", "spec/bin.rb", "spec/helper.rb", "spec/seedling.rb", "tasks/authors.rake", "tasks/bacon.rake", "tasks/changelog.rake", "tasks/copyright.rake", "tasks/gem.rake", "tasks/gem_installer.rake", "tasks/install_dependencies.rake", "tasks/manifest.rake", "tasks/rcov.rake", "tasks/release.rake", "tasks/reversion.rake", "tasks/setup.rake", "tasks/yard.rake"]
|
16
15
|
s.homepage = %q{http://github.com/deathsyn/seedling}
|
17
16
|
s.post_install_message = %q{============================================================
|
18
17
|
|
@@ -23,12 +22,12 @@ Begin by planting your ruby project with
|
|
23
22
|
============================================================}
|
24
23
|
s.require_paths = ["lib"]
|
25
24
|
s.rubyforge_project = %q{seedling}
|
26
|
-
s.rubygems_version = %q{1.3.
|
25
|
+
s.rubygems_version = %q{1.3.3}
|
27
26
|
s.summary = %q{A lightweight tool to create new ruby library trees, with helpers to make gemming and maintaining a breeze.}
|
28
27
|
|
29
28
|
if s.respond_to? :specification_version then
|
30
29
|
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
31
|
-
s.specification_version =
|
30
|
+
s.specification_version = 3
|
32
31
|
|
33
32
|
if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
|
34
33
|
else
|
data/spec/bin.rb
ADDED
@@ -0,0 +1,61 @@
|
|
1
|
+
require File.expand_path("../helper", __FILE__)
|
2
|
+
require "tempfile"
|
3
|
+
require Seedling::ROOT/:lib/:seedling/:bin
|
4
|
+
|
5
|
+
describe "Seedling::Bin::Cmd" do
|
6
|
+
@tmpdir = if $DEBUG
|
7
|
+
dir = Dir.tmpdir + "/seedling_spec_#{Time.now.to_i}"
|
8
|
+
Dir.mkdir(dir)
|
9
|
+
Pathname(dir)
|
10
|
+
else
|
11
|
+
Pathname(Dir.mktmpdir)
|
12
|
+
end
|
13
|
+
@seedling_bin = "#{Seedling::ROOT/:bin/:seedling}"
|
14
|
+
before do
|
15
|
+
Dir.chdir @tmpdir
|
16
|
+
(@tmpdir/:the_tree).rmtree if (@tmpdir/:the_tree).directory?
|
17
|
+
end
|
18
|
+
|
19
|
+
it "Should raise and show usage when called with no command is given" do
|
20
|
+
lambda { Seedling::Bin::Cmd.run }.should.raise(RuntimeError).
|
21
|
+
message.should.match /^Must supply a valid command\n\n#{Seedling::Bin::Cmd.new.usage}/
|
22
|
+
end
|
23
|
+
|
24
|
+
it "Should raise and show usage when asked to plant but no target is given" do
|
25
|
+
lambda { Seedling::Bin::Cmd.run(["plant"]) }.should.raise(RuntimeError).
|
26
|
+
message.should.match /^"Must supply a valid directory to install your project, you gave none.\n\n#{Seedling::Bin::Cmd.new.usage}/
|
27
|
+
end
|
28
|
+
|
29
|
+
it "Should plant a new tree (no extra arguments)" do
|
30
|
+
Seedling::Bin::Cmd.run(["plant", "the_tree", "-q"])
|
31
|
+
(@tmpdir/:the_tree).directory?.should.be.true
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
describe "Seedling Planted Tree" do
|
36
|
+
@tmpdir = if $DEBUG
|
37
|
+
dir = Dir.tmpdir + "/seedling_spec_#{Time.now.to_i}"
|
38
|
+
Dir.mkdir(dir)
|
39
|
+
Pathname(dir)
|
40
|
+
else
|
41
|
+
Pathname(Dir.mktmpdir)
|
42
|
+
end
|
43
|
+
|
44
|
+
before do
|
45
|
+
Dir.chdir @tmpdir
|
46
|
+
(@tmpdir/:the_tree).rmtree if (@tmpdir/:the_tree).directory?
|
47
|
+
end
|
48
|
+
|
49
|
+
it "Should allow loading the lib on a newly planted tree" do
|
50
|
+
Seedling::Bin::Cmd.run(["plant", "the_tree", "-q"])
|
51
|
+
lambda { require @tmpdir/:the_tree/:lib/:the_tree }.should.not.raise LoadError
|
52
|
+
Object.const_defined?("TheTree").should.be.true
|
53
|
+
end
|
54
|
+
|
55
|
+
it "Should place a spec/helper.rb in place which passes one spec" do
|
56
|
+
Seedling::Bin::Cmd.run(["plant", "the_tree", "-q"])
|
57
|
+
output = %x{bacon #{@tmpdir/:the_tree/:spec/:helper}.rb }
|
58
|
+
$?.should.equal 0
|
59
|
+
output.should.match /1 specifications \(1 requirements\), 0 failures, 0 errors/m
|
60
|
+
end
|
61
|
+
end
|
data/spec/helper.rb
CHANGED
@@ -1,3 +1,7 @@
|
|
1
|
+
# Copyright (c) 2008-2009 The Rubyists, LLC (effortless systems) <rubyists@rubyists.com>
|
2
|
+
# Distributed under the terms of the MIT license.
|
3
|
+
# See the LICENSE file that accompanied this software for the full MIT License text
|
4
|
+
#
|
1
5
|
require "pathname"
|
2
6
|
begin
|
3
7
|
require "bacon"
|
@@ -20,7 +24,7 @@ end
|
|
20
24
|
Bacon.summary_on_exit
|
21
25
|
|
22
26
|
describe "Spec Helper" do
|
23
|
-
it "Should bring our library namespace in" do
|
27
|
+
it "Should bring our library namespace in (remove this test once you have your own)" do
|
24
28
|
Seedling.should == Seedling
|
25
29
|
end
|
26
30
|
end
|
data/spec/seedling.rb
ADDED
data/tasks/authors.rake
CHANGED
@@ -1,3 +1,7 @@
|
|
1
|
+
# Copyright (c) 2008-2009 The Rubyists, LLC (effortless systems) <rubyists@rubyists.com>
|
2
|
+
# Distributed under the terms of the MIT license.
|
3
|
+
# See the LICENSE file that accompanied this software for the full MIT License text
|
4
|
+
#
|
1
5
|
# Once git has a fix for the glibc in handling .mailmap and another fix for
|
2
6
|
# allowing empty mail address to be mapped in .mailmap we won't have to handle
|
3
7
|
# them manually.
|
@@ -7,13 +11,16 @@ task :authors do
|
|
7
11
|
authors = Hash.new(0)
|
8
12
|
|
9
13
|
`git shortlog -nse`.scan(/(\d+)\s(.+)\s<(.*)>$/) do |count, name, email|
|
14
|
+
# Examples of mappping, replace with your own or comment this out/delete it
|
10
15
|
case name
|
11
|
-
when
|
12
|
-
name, email = "TJ Vanderpoel", "
|
13
|
-
when /
|
14
|
-
name, email = "
|
15
|
-
when
|
16
|
-
name, email = "
|
16
|
+
when /^(?:bougyman$|TJ Vanderpoel)/
|
17
|
+
name, email = "TJ Vanderpoel", "tj@rubyists.com"
|
18
|
+
when /^(?:manveru$|Michael Fellinger)/
|
19
|
+
name, email = "Michael Fellinger", "mf@rubyists.com"
|
20
|
+
when /^(?:deathsyn$|Kevin Berry)/
|
21
|
+
name, email = "Kevin Berry", "kb@rubyists.com"
|
22
|
+
when /^(?:(?:jayson|thedonvaughn|jvaughn)$|Jayson Vaughn)/
|
23
|
+
name, email = "Jayson Vaughn", "jv@rubyists.com"
|
17
24
|
end
|
18
25
|
|
19
26
|
authors[[name, email]] += count.to_i
|
data/tasks/bacon.rake
CHANGED
@@ -1,3 +1,7 @@
|
|
1
|
+
# Copyright (c) 2008-2009 The Rubyists, LLC (effortless systems) <rubyists@rubyists.com>
|
2
|
+
# Distributed under the terms of the MIT license.
|
3
|
+
# See the LICENSE file that accompanied this software for the full MIT License text
|
4
|
+
#
|
1
5
|
desc 'Run all bacon specs with pretty output'
|
2
6
|
task :bacon => :install_dependencies do
|
3
7
|
require 'open3'
|
data/tasks/changelog.rake
CHANGED
@@ -1,3 +1,7 @@
|
|
1
|
+
# Copyright (c) 2008-2009 The Rubyists, LLC (effortless systems) <rubyists@rubyists.com>
|
2
|
+
# Distributed under the terms of the MIT license.
|
3
|
+
# See the LICENSE file that accompanied this software for the full MIT License text
|
4
|
+
#
|
1
5
|
desc 'update changelog'
|
2
6
|
task :changelog do
|
3
7
|
File.open('CHANGELOG', 'w+') do |changelog|
|
data/tasks/copyright.rake
CHANGED
@@ -1,21 +1,38 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
1
|
+
# Copyright (c) 2008-2009 The Rubyists, LLC (effortless systems) <rubyists@rubyists.com>
|
2
|
+
# Distributed under the terms of the MIT license.
|
3
|
+
# See the LICENSE file that accompanied this software for the full MIT License text
|
4
|
+
#
|
5
|
+
require "pathname"
|
6
|
+
task :legal do
|
7
|
+
license = Pathname("LICENSE")
|
8
|
+
license.open("w+") do |f|
|
9
|
+
f.puts PROJECT_COPYRIGHT
|
10
|
+
end unless license.file? and license.read == PROJECT_COPYRIGHT
|
11
|
+
doc = Pathname("doc/LEGAL")
|
12
|
+
doc.open("w+") do |f|
|
13
|
+
f.puts "LICENSE"
|
14
|
+
end unless doc.file?
|
15
|
+
end
|
16
|
+
|
17
|
+
desc "add copyright summary to all .rb files in the distribution"
|
18
|
+
task :copyright => [:legal] do
|
19
|
+
doc = Pathname("doc/LEGAL")
|
20
|
+
ignore = doc.readlines.
|
21
|
+
select { |line| line.strip!; Pathname(line).file? }.
|
22
|
+
map { |file| Pathname(file).expand_path }
|
6
23
|
|
7
|
-
puts "adding copyright to files that don't have it currently"
|
8
|
-
puts
|
24
|
+
puts "adding copyright summary to files that don't have it currently"
|
25
|
+
puts PROJECT_COPYRIGHT_SUMMARY
|
9
26
|
puts
|
10
27
|
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
puts
|
28
|
+
(Pathname.glob('{controller,model,app,lib,test,spec}/**/*{.rb}') +
|
29
|
+
Pathname.glob("tasks/*.rake") +
|
30
|
+
Pathname.glob("Rakefile")).each do |file|
|
31
|
+
next if ignore.include? file.expand_path
|
32
|
+
lines = file.readlines.map{ |l| l.chomp }
|
33
|
+
unless lines.first(PROJECT_COPYRIGHT_SUMMARY.size) == PROJECT_COPYRIGHT_SUMMARY
|
34
|
+
oldlines = file.readlines
|
35
|
+
file.open("w+") { |f| f.puts PROJECT_COPYRIGHT_SUMMARY + oldlines }
|
19
36
|
end
|
20
37
|
end
|
21
38
|
end
|
data/tasks/gem.rake
CHANGED
@@ -1,3 +1,7 @@
|
|
1
|
+
# Copyright (c) 2008-2009 The Rubyists, LLC (effortless systems) <rubyists@rubyists.com>
|
2
|
+
# Distributed under the terms of the MIT license.
|
3
|
+
# See the LICENSE file that accompanied this software for the full MIT License text
|
4
|
+
#
|
1
5
|
require 'rake/gempackagetask'
|
2
6
|
|
3
7
|
desc "make a gemspec"
|
data/tasks/gem_installer.rake
CHANGED
@@ -1,3 +1,7 @@
|
|
1
|
+
# Copyright (c) 2008-2009 The Rubyists, LLC (effortless systems) <rubyists@rubyists.com>
|
2
|
+
# Distributed under the terms of the MIT license.
|
3
|
+
# See the LICENSE file that accompanied this software for the full MIT License text
|
4
|
+
#
|
1
5
|
task :gem_installer do
|
2
6
|
class GemInstaller
|
3
7
|
def initialize(options = {}, &block)
|
@@ -1,3 +1,7 @@
|
|
1
|
+
# Copyright (c) 2008-2009 The Rubyists, LLC (effortless systems) <rubyists@rubyists.com>
|
2
|
+
# Distributed under the terms of the MIT license.
|
3
|
+
# See the LICENSE file that accompanied this software for the full MIT License text
|
4
|
+
#
|
1
5
|
desc 'install dependencies'
|
2
6
|
task :install_dependencies => [:gem_installer] do
|
3
7
|
GemInstaller.new do
|
data/tasks/manifest.rake
CHANGED
@@ -1,3 +1,7 @@
|
|
1
|
+
# Copyright (c) 2008-2009 The Rubyists, LLC (effortless systems) <rubyists@rubyists.com>
|
2
|
+
# Distributed under the terms of the MIT license.
|
3
|
+
# See the LICENSE file that accompanied this software for the full MIT License text
|
4
|
+
#
|
1
5
|
desc 'update manifest'
|
2
6
|
task :manifest do
|
3
7
|
File.open('MANIFEST', 'w+'){|io| io.puts(*GEMSPEC.files) }
|
data/tasks/rcov.rake
CHANGED
@@ -1,3 +1,7 @@
|
|
1
|
+
# Copyright (c) 2008-2009 The Rubyists, LLC (effortless systems) <rubyists@rubyists.com>
|
2
|
+
# Distributed under the terms of the MIT license.
|
3
|
+
# See the LICENSE file that accompanied this software for the full MIT License text
|
4
|
+
#
|
1
5
|
desc 'code coverage'
|
2
6
|
task :rcov => :clean do
|
3
7
|
specs = PROJECT_SPECS
|
data/tasks/release.rake
CHANGED
@@ -1,3 +1,7 @@
|
|
1
|
+
# Copyright (c) 2008-2009 The Rubyists, LLC (effortless systems) <rubyists@rubyists.com>
|
2
|
+
# Distributed under the terms of the MIT license.
|
3
|
+
# See the LICENSE file that accompanied this software for the full MIT License text
|
4
|
+
#
|
1
5
|
namespace :release do
|
2
6
|
task :all => [:release_github, :release_rubyforge]
|
3
7
|
|
data/tasks/reversion.rake
CHANGED
@@ -1,3 +1,7 @@
|
|
1
|
+
# Copyright (c) 2008-2009 The Rubyists, LLC (effortless systems) <rubyists@rubyists.com>
|
2
|
+
# Distributed under the terms of the MIT license.
|
3
|
+
# See the LICENSE file that accompanied this software for the full MIT License text
|
4
|
+
#
|
1
5
|
desc "update version.rb"
|
2
6
|
task :reversion do
|
3
7
|
File.open("lib/#{GEMSPEC.name}/version.rb", 'w+') do |file|
|
data/tasks/setup.rake
CHANGED
@@ -1,3 +1,7 @@
|
|
1
|
+
# Copyright (c) 2008-2009 The Rubyists, LLC (effortless systems) <rubyists@rubyists.com>
|
2
|
+
# Distributed under the terms of the MIT license.
|
3
|
+
# See the LICENSE file that accompanied this software for the full MIT License text
|
4
|
+
#
|
1
5
|
desc 'install all possible dependencies'
|
2
6
|
task :setup => :gem_installer do
|
3
7
|
GemInstaller.new do
|
data/tasks/yard.rake
CHANGED
@@ -1,4 +1,8 @@
|
|
1
|
+
# Copyright (c) 2008-2009 The Rubyists, LLC (effortless systems) <rubyists@rubyists.com>
|
2
|
+
# Distributed under the terms of the MIT license.
|
3
|
+
# See the LICENSE file that accompanied this software for the full MIT License text
|
4
|
+
#
|
1
5
|
desc 'Generate YARD documentation'
|
2
6
|
task :yard => :clean do
|
3
|
-
sh("yardoc -o ydoc --protected -r #{PROJECT_README}")
|
7
|
+
sh("yardoc -o ydoc --protected -r #{PROJECT_README} lib/**/*.rb tasks/*.rake")
|
4
8
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: deathsyn-seedling
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Kevin Berry
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2009-05-
|
12
|
+
date: 2009-05-29 00:00:00 -07:00
|
13
13
|
default_executable: seedling
|
14
14
|
dependencies: []
|
15
15
|
|
@@ -24,15 +24,18 @@ extra_rdoc_files: []
|
|
24
24
|
files:
|
25
25
|
- AUTHORS
|
26
26
|
- CHANGELOG
|
27
|
+
- LICENSE
|
27
28
|
- MANIFEST
|
28
29
|
- README
|
29
30
|
- Rakefile
|
30
31
|
- bin/seedling
|
32
|
+
- doc/LEGAL
|
31
33
|
- lib/seedling.rb
|
32
34
|
- lib/seedling/bin.rb
|
33
35
|
- lib/seedling/extensions/inflector.rb
|
34
36
|
- lib/seedling/project_creator.rb
|
35
37
|
- lib/seedling/version.rb
|
38
|
+
- lib/templates/core/README.seed
|
36
39
|
- lib/templates/core/Rakefile.seed
|
37
40
|
- lib/templates/core/lib/library.rb.seed
|
38
41
|
- lib/templates/core/lib/library/version.rb.seed
|
@@ -49,8 +52,14 @@ files:
|
|
49
52
|
- lib/templates/core/tasks/release.rake
|
50
53
|
- lib/templates/core/tasks/reversion.rake
|
51
54
|
- lib/templates/core/tasks/setup.rake.seed
|
55
|
+
- lib/templates/core/tasks/yard.rake
|
56
|
+
- lib/templates/sequel-postgres/spec/db_helper.rb.seed
|
57
|
+
- lib/templates/sequel-postgres/tasks/schema.rake.seed
|
58
|
+
- lib/templates/sequel/tasks/migrate.rake.seed
|
52
59
|
- seedling.gemspec
|
60
|
+
- spec/bin.rb
|
53
61
|
- spec/helper.rb
|
62
|
+
- spec/seedling.rb
|
54
63
|
- tasks/authors.rake
|
55
64
|
- tasks/bacon.rake
|
56
65
|
- tasks/changelog.rake
|
@@ -64,7 +73,7 @@ files:
|
|
64
73
|
- tasks/reversion.rake
|
65
74
|
- tasks/setup.rake
|
66
75
|
- tasks/yard.rake
|
67
|
-
has_rdoc:
|
76
|
+
has_rdoc: false
|
68
77
|
homepage: http://github.com/deathsyn/seedling
|
69
78
|
post_install_message: |-
|
70
79
|
============================================================
|
@@ -95,7 +104,7 @@ requirements: []
|
|
95
104
|
rubyforge_project: seedling
|
96
105
|
rubygems_version: 1.2.0
|
97
106
|
signing_key:
|
98
|
-
specification_version:
|
107
|
+
specification_version: 3
|
99
108
|
summary: A lightweight tool to create new ruby library trees, with helpers to make gemming and maintaining a breeze.
|
100
109
|
test_files: []
|
101
110
|
|