scarecrow 0.0.1
Sign up to get free protection for your applications and to get access to all the features.
- data/Manifest +21 -0
- data/README.rdoc +16 -0
- data/Rakefile +12 -0
- data/bin/scarecrow +15 -0
- data/lib/scarecrow.rb +56 -0
- data/lib/scarecrow/generator.rb +42 -0
- data/lib/scarecrow/generators/application.rb +27 -0
- data/lib/scarecrow/generators/application/Rakefile +8 -0
- data/lib/scarecrow/urlmap.rb +33 -0
- data/pkg/scarecrow-0.0.1.gem +0 -0
- data/pkg/scarecrow-0.0.1.tar.gz +0 -0
- data/pkg/scarecrow-0.0.1/Manifest +21 -0
- data/pkg/scarecrow-0.0.1/README.rdoc +16 -0
- data/pkg/scarecrow-0.0.1/Rakefile +12 -0
- data/pkg/scarecrow-0.0.1/bin/scarecrow +15 -0
- data/pkg/scarecrow-0.0.1/lib/scarecrow.rb +56 -0
- data/pkg/scarecrow-0.0.1/lib/scarecrow/generator.rb +42 -0
- data/pkg/scarecrow-0.0.1/lib/scarecrow/generators/application.rb +27 -0
- data/pkg/scarecrow-0.0.1/lib/scarecrow/generators/application/Rakefile +8 -0
- data/pkg/scarecrow-0.0.1/lib/scarecrow/urlmap.rb +33 -0
- data/pkg/scarecrow-0.0.1/scarecrow.gemspec +33 -0
- data/scarecrow.gemspec +33 -0
- metadata +87 -0
data/Manifest
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
Manifest
|
2
|
+
README.rdoc
|
3
|
+
Rakefile
|
4
|
+
bin/scarecrow
|
5
|
+
lib/scarecrow.rb
|
6
|
+
lib/scarecrow/generator.rb
|
7
|
+
lib/scarecrow/generators/application.rb
|
8
|
+
lib/scarecrow/generators/application/Rakefile
|
9
|
+
lib/scarecrow/urlmap.rb
|
10
|
+
pkg/scarecrow-0.0.1.gem
|
11
|
+
pkg/scarecrow-0.0.1.tar.gz
|
12
|
+
pkg/scarecrow-0.0.1/Manifest
|
13
|
+
pkg/scarecrow-0.0.1/README.rdoc
|
14
|
+
pkg/scarecrow-0.0.1/Rakefile
|
15
|
+
pkg/scarecrow-0.0.1/bin/scarecrow
|
16
|
+
pkg/scarecrow-0.0.1/lib/scarecrow.rb
|
17
|
+
pkg/scarecrow-0.0.1/lib/scarecrow/generator.rb
|
18
|
+
pkg/scarecrow-0.0.1/lib/scarecrow/generators/application.rb
|
19
|
+
pkg/scarecrow-0.0.1/lib/scarecrow/generators/application/Rakefile
|
20
|
+
pkg/scarecrow-0.0.1/lib/scarecrow/urlmap.rb
|
21
|
+
pkg/scarecrow-0.0.1/scarecrow.gemspec
|
data/README.rdoc
ADDED
@@ -0,0 +1,16 @@
|
|
1
|
+
= Scarecrow
|
2
|
+
|
3
|
+
Scarecrow is a simple web framework based on Sinatra.
|
4
|
+
|
5
|
+
== Installation
|
6
|
+
|
7
|
+
Use RubyGem as usual
|
8
|
+
|
9
|
+
$ gem install hackenporsche-scarecrow
|
10
|
+
or
|
11
|
+
$ sudo gem install hackenporsche-scarecrow
|
12
|
+
|
13
|
+
|
14
|
+
Make sure you have Github in your RubyGem sources (if not use the following)
|
15
|
+
|
16
|
+
$ sudo gem source -a http://gems.github.com/
|
data/Rakefile
ADDED
@@ -0,0 +1,12 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'rake'
|
3
|
+
require 'echoe'
|
4
|
+
|
5
|
+
Echoe.new("scarecrow", "0.0.1") do |config|
|
6
|
+
config.description = "A simple web framework for Ruby based on Sinatra"
|
7
|
+
config.url = "http://github.com/hackenporsche/scarecrow"
|
8
|
+
config.author = "hackenporsche"
|
9
|
+
config.email = "sin3141592@gmail.com"
|
10
|
+
config.ignore_pattern = ["tmp"]
|
11
|
+
config.development_dependencies = []
|
12
|
+
end
|
data/bin/scarecrow
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require 'rubygems'
|
4
|
+
require 'scarecrow/generator'
|
5
|
+
|
6
|
+
def main
|
7
|
+
if ARGV.length == 0
|
8
|
+
puts "Usage: scarecrow APPNAME"
|
9
|
+
exit 1
|
10
|
+
end
|
11
|
+
puts "Create new application called #{ARGV.first}"
|
12
|
+
Scarecrow::Generator.generate(:application, {:appname => ARGV.first})
|
13
|
+
end
|
14
|
+
|
15
|
+
main
|
data/lib/scarecrow.rb
ADDED
@@ -0,0 +1,56 @@
|
|
1
|
+
require "erb"
|
2
|
+
|
3
|
+
# Add useful methods to standard classes
|
4
|
+
|
5
|
+
class File
|
6
|
+
def self.cut_extension(path)
|
7
|
+
path[0..path.length - File.extname(path).length - 1]
|
8
|
+
end
|
9
|
+
end
|
10
|
+
|
11
|
+
class String
|
12
|
+
def camelcase
|
13
|
+
(self.split("_").map { |part| part.capitalize }).join("")
|
14
|
+
end
|
15
|
+
|
16
|
+
def upcase?
|
17
|
+
self == self.upcase
|
18
|
+
end
|
19
|
+
|
20
|
+
def downcase?
|
21
|
+
self == self.downcase
|
22
|
+
end
|
23
|
+
|
24
|
+
def to_classobj
|
25
|
+
Kernel.const_get(self)
|
26
|
+
end
|
27
|
+
|
28
|
+
def to_presenter
|
29
|
+
(self.camelcase + "Presenter").to_classobj
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
class Presenter
|
34
|
+
def render(locals, template)
|
35
|
+
path = File.join("views", presenter_name, template + ".html.erb")
|
36
|
+
ERB.new(open(path).read).result
|
37
|
+
end
|
38
|
+
|
39
|
+
def presenter_name
|
40
|
+
class_name = self.class.to_s
|
41
|
+
if class_name.end_with?("Presenter")
|
42
|
+
name = class_name[0..class_name.length - "Presenter".length - 1]
|
43
|
+
else
|
44
|
+
name = class_name[0..class_name.length - 1]
|
45
|
+
end
|
46
|
+
result = name[0..0].downcase
|
47
|
+
name[1..name.length - 1].each_char do |char|
|
48
|
+
if char.upcase?
|
49
|
+
result += "_#{char.downcase}"
|
50
|
+
else
|
51
|
+
result += char
|
52
|
+
end
|
53
|
+
end
|
54
|
+
result
|
55
|
+
end
|
56
|
+
end
|
@@ -0,0 +1,42 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'ftools'
|
3
|
+
|
4
|
+
module Scarecrow
|
5
|
+
module Generator
|
6
|
+
def self.generate(structure, args)
|
7
|
+
structure = structure.to_s
|
8
|
+
require "scarecrow/generators/#{structure}"
|
9
|
+
obj = get_structure_object(structure)
|
10
|
+
create_folders(obj.needed_folders(args))
|
11
|
+
create_files(structure, obj.needed_files(args), args)
|
12
|
+
end
|
13
|
+
|
14
|
+
def self.create_folders(folders)
|
15
|
+
folders.each do |folder|
|
16
|
+
puts "\tcreate #{folder}"
|
17
|
+
Dir.mkdir(folder)
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
def self.create_files(structure, files, args)
|
22
|
+
path = "scarecrow/generators/#{structure}"
|
23
|
+
obj = get_structure_object(structure)
|
24
|
+
files.each do |file|
|
25
|
+
puts "\tcreate #{args[:appname]}/#{file}"
|
26
|
+
File.copy(File.join(obj.path, file),
|
27
|
+
File.join(args[:appname], file))
|
28
|
+
if obj.apply_template?
|
29
|
+
apply_template(file)
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
def self.apply_template(file)
|
35
|
+
end
|
36
|
+
|
37
|
+
def self.get_structure_object(structure)
|
38
|
+
# obj = Kernel.const_get(structure.downcase.capitalize)
|
39
|
+
Scarecrow::Generator.const_get(structure.downcase.capitalize)
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
@@ -0,0 +1,27 @@
|
|
1
|
+
require "rubygems"
|
2
|
+
require "scarecrow"
|
3
|
+
require "scarecrow/generator"
|
4
|
+
|
5
|
+
module Scarecrow
|
6
|
+
module Generator
|
7
|
+
class Application
|
8
|
+
def self.needed_folders(args)
|
9
|
+
["presenters", "views", "models", "config"].map do |folder|
|
10
|
+
File.join(args[:appname], folder)
|
11
|
+
end.unshift(args[:appname])
|
12
|
+
end
|
13
|
+
|
14
|
+
def self.needed_files(args)
|
15
|
+
["Rakefile"]
|
16
|
+
end
|
17
|
+
|
18
|
+
def self.apply_template?
|
19
|
+
false
|
20
|
+
end
|
21
|
+
|
22
|
+
def self.path
|
23
|
+
File.cut_extension(__FILE__)
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
class UrlMap
|
2
|
+
def self.configure(&block)
|
3
|
+
urlmap = UrlMap.new
|
4
|
+
block.call urlmap
|
5
|
+
end
|
6
|
+
|
7
|
+
def resource(class_name)
|
8
|
+
require "presenters/#{class_name}"
|
9
|
+
obj = class_name.to_s.to_presenter.new
|
10
|
+
routes = [{:route => "",
|
11
|
+
:method => "get",
|
12
|
+
:action => "index"},
|
13
|
+
{:route => "show",
|
14
|
+
:method => "get",
|
15
|
+
:action => "show"}]
|
16
|
+
routes.each do |route|
|
17
|
+
block = Proc.new { obj.method(route[:action]).call }
|
18
|
+
url = "/#{class_name}"
|
19
|
+
if route[:route] != ""
|
20
|
+
url << "/#{route[:route]}"
|
21
|
+
else
|
22
|
+
url << "/?"
|
23
|
+
end
|
24
|
+
send route[:method], url, &block
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
def connect(route, class_name, action, method = "get")
|
29
|
+
obj = class_name.to_s.to_presenter.new
|
30
|
+
block = Proc.new { obj.send action }
|
31
|
+
send method, route, &block
|
32
|
+
end
|
33
|
+
end
|
Binary file
|
Binary file
|
@@ -0,0 +1,21 @@
|
|
1
|
+
Manifest
|
2
|
+
README.rdoc
|
3
|
+
Rakefile
|
4
|
+
bin/scarecrow
|
5
|
+
lib/scarecrow.rb
|
6
|
+
lib/scarecrow/generator.rb
|
7
|
+
lib/scarecrow/generators/application.rb
|
8
|
+
lib/scarecrow/generators/application/Rakefile
|
9
|
+
lib/scarecrow/urlmap.rb
|
10
|
+
pkg/scarecrow-0.0.1.gem
|
11
|
+
pkg/scarecrow-0.0.1.tar.gz
|
12
|
+
pkg/scarecrow-0.0.1/Manifest
|
13
|
+
pkg/scarecrow-0.0.1/README.rdoc
|
14
|
+
pkg/scarecrow-0.0.1/Rakefile
|
15
|
+
pkg/scarecrow-0.0.1/bin/scarecrow
|
16
|
+
pkg/scarecrow-0.0.1/lib/scarecrow.rb
|
17
|
+
pkg/scarecrow-0.0.1/lib/scarecrow/generator.rb
|
18
|
+
pkg/scarecrow-0.0.1/lib/scarecrow/generators/application.rb
|
19
|
+
pkg/scarecrow-0.0.1/lib/scarecrow/generators/application/Rakefile
|
20
|
+
pkg/scarecrow-0.0.1/lib/scarecrow/urlmap.rb
|
21
|
+
pkg/scarecrow-0.0.1/scarecrow.gemspec
|
@@ -0,0 +1,16 @@
|
|
1
|
+
= Scarecrow
|
2
|
+
|
3
|
+
Scarecrow is a simple web framework based on Sinatra.
|
4
|
+
|
5
|
+
== Installation
|
6
|
+
|
7
|
+
Use RubyGem as usual
|
8
|
+
|
9
|
+
$ gem install hackenporsche-scarecrow
|
10
|
+
or
|
11
|
+
$ sudo gem install hackenporsche-scarecrow
|
12
|
+
|
13
|
+
|
14
|
+
Make sure you have Github in your RubyGem sources (if not use the following)
|
15
|
+
|
16
|
+
$ sudo gem source -a http://gems.github.com/
|
@@ -0,0 +1,12 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'rake'
|
3
|
+
require 'echoe'
|
4
|
+
|
5
|
+
Echoe.new("scarecrow", "0.0.1") do |config|
|
6
|
+
config.description = "A simple web framework for Ruby based on Sinatra"
|
7
|
+
config.url = "http://github.com/hackenporsche/scarecrow"
|
8
|
+
config.author = "hackenporsche"
|
9
|
+
config.email = "sin3141592@gmail.com"
|
10
|
+
config.ignore_pattern = ["tmp"]
|
11
|
+
config.development_dependencies = []
|
12
|
+
end
|
@@ -0,0 +1,15 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require 'rubygems'
|
4
|
+
require 'scarecrow/generator'
|
5
|
+
|
6
|
+
def main
|
7
|
+
if ARGV.length == 0
|
8
|
+
puts "Usage: scarecrow APPNAME"
|
9
|
+
exit 1
|
10
|
+
end
|
11
|
+
puts "Create new application called #{ARGV.first}"
|
12
|
+
Scarecrow::Generator.generate(:application, {:appname => ARGV.first})
|
13
|
+
end
|
14
|
+
|
15
|
+
main
|
@@ -0,0 +1,56 @@
|
|
1
|
+
require "erb"
|
2
|
+
|
3
|
+
# Add useful methods to standard classes
|
4
|
+
|
5
|
+
class File
|
6
|
+
def self.cut_extension(path)
|
7
|
+
path[0..path.length - File.extname(path).length - 1]
|
8
|
+
end
|
9
|
+
end
|
10
|
+
|
11
|
+
class String
|
12
|
+
def camelcase
|
13
|
+
(self.split("_").map { |part| part.capitalize }).join("")
|
14
|
+
end
|
15
|
+
|
16
|
+
def upcase?
|
17
|
+
self == self.upcase
|
18
|
+
end
|
19
|
+
|
20
|
+
def downcase?
|
21
|
+
self == self.downcase
|
22
|
+
end
|
23
|
+
|
24
|
+
def to_classobj
|
25
|
+
Kernel.const_get(self)
|
26
|
+
end
|
27
|
+
|
28
|
+
def to_presenter
|
29
|
+
(self.camelcase + "Presenter").to_classobj
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
class Presenter
|
34
|
+
def render(locals, template)
|
35
|
+
path = File.join("views", presenter_name, template + ".html.erb")
|
36
|
+
ERB.new(open(path).read).result
|
37
|
+
end
|
38
|
+
|
39
|
+
def presenter_name
|
40
|
+
class_name = self.class.to_s
|
41
|
+
if class_name.end_with?("Presenter")
|
42
|
+
name = class_name[0..class_name.length - "Presenter".length - 1]
|
43
|
+
else
|
44
|
+
name = class_name[0..class_name.length - 1]
|
45
|
+
end
|
46
|
+
result = name[0..0].downcase
|
47
|
+
name[1..name.length - 1].each_char do |char|
|
48
|
+
if char.upcase?
|
49
|
+
result += "_#{char.downcase}"
|
50
|
+
else
|
51
|
+
result += char
|
52
|
+
end
|
53
|
+
end
|
54
|
+
result
|
55
|
+
end
|
56
|
+
end
|
@@ -0,0 +1,42 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'ftools'
|
3
|
+
|
4
|
+
module Scarecrow
|
5
|
+
module Generator
|
6
|
+
def self.generate(structure, args)
|
7
|
+
structure = structure.to_s
|
8
|
+
require "scarecrow/generators/#{structure}"
|
9
|
+
obj = get_structure_object(structure)
|
10
|
+
create_folders(obj.needed_folders(args))
|
11
|
+
create_files(structure, obj.needed_files(args), args)
|
12
|
+
end
|
13
|
+
|
14
|
+
def self.create_folders(folders)
|
15
|
+
folders.each do |folder|
|
16
|
+
puts "\tcreate #{folder}"
|
17
|
+
Dir.mkdir(folder)
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
def self.create_files(structure, files, args)
|
22
|
+
path = "scarecrow/generators/#{structure}"
|
23
|
+
obj = get_structure_object(structure)
|
24
|
+
files.each do |file|
|
25
|
+
puts "\tcreate #{args[:appname]}/#{file}"
|
26
|
+
File.copy(File.join(obj.path, file),
|
27
|
+
File.join(args[:appname], file))
|
28
|
+
if obj.apply_template?
|
29
|
+
apply_template(file)
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
def self.apply_template(file)
|
35
|
+
end
|
36
|
+
|
37
|
+
def self.get_structure_object(structure)
|
38
|
+
# obj = Kernel.const_get(structure.downcase.capitalize)
|
39
|
+
Scarecrow::Generator.const_get(structure.downcase.capitalize)
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
@@ -0,0 +1,27 @@
|
|
1
|
+
require "rubygems"
|
2
|
+
require "scarecrow"
|
3
|
+
require "scarecrow/generator"
|
4
|
+
|
5
|
+
module Scarecrow
|
6
|
+
module Generator
|
7
|
+
class Application
|
8
|
+
def self.needed_folders(args)
|
9
|
+
["presenters", "views", "models", "config"].map do |folder|
|
10
|
+
File.join(args[:appname], folder)
|
11
|
+
end.unshift(args[:appname])
|
12
|
+
end
|
13
|
+
|
14
|
+
def self.needed_files(args)
|
15
|
+
["Rakefile"]
|
16
|
+
end
|
17
|
+
|
18
|
+
def self.apply_template?
|
19
|
+
false
|
20
|
+
end
|
21
|
+
|
22
|
+
def self.path
|
23
|
+
File.cut_extension(__FILE__)
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
class UrlMap
|
2
|
+
def self.configure(&block)
|
3
|
+
urlmap = UrlMap.new
|
4
|
+
block.call urlmap
|
5
|
+
end
|
6
|
+
|
7
|
+
def resource(class_name)
|
8
|
+
require "presenters/#{class_name}"
|
9
|
+
obj = class_name.to_s.to_presenter.new
|
10
|
+
routes = [{:route => "",
|
11
|
+
:method => "get",
|
12
|
+
:action => "index"},
|
13
|
+
{:route => "show",
|
14
|
+
:method => "get",
|
15
|
+
:action => "show"}]
|
16
|
+
routes.each do |route|
|
17
|
+
block = Proc.new { obj.method(route[:action]).call }
|
18
|
+
url = "/#{class_name}"
|
19
|
+
if route[:route] != ""
|
20
|
+
url << "/#{route[:route]}"
|
21
|
+
else
|
22
|
+
url << "/?"
|
23
|
+
end
|
24
|
+
send route[:method], url, &block
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
def connect(route, class_name, action, method = "get")
|
29
|
+
obj = class_name.to_s.to_presenter.new
|
30
|
+
block = Proc.new { obj.send action }
|
31
|
+
send method, route, &block
|
32
|
+
end
|
33
|
+
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
|
3
|
+
Gem::Specification.new do |s|
|
4
|
+
s.name = %q{scarecrow}
|
5
|
+
s.version = "0.0.1"
|
6
|
+
|
7
|
+
s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
|
8
|
+
s.authors = ["hackenporsche"]
|
9
|
+
s.date = %q{2009-10-09}
|
10
|
+
s.default_executable = %q{scarecrow}
|
11
|
+
s.description = %q{A simple web framework for Ruby based on Sinatra}
|
12
|
+
s.email = %q{sin3141592@gmail.com}
|
13
|
+
s.executables = ["scarecrow"]
|
14
|
+
s.extra_rdoc_files = ["README.rdoc", "bin/scarecrow", "lib/scarecrow.rb", "lib/scarecrow/generator.rb", "lib/scarecrow/generators/application.rb", "lib/scarecrow/generators/application/Rakefile", "lib/scarecrow/urlmap.rb"]
|
15
|
+
s.files = ["Manifest", "README.rdoc", "Rakefile", "bin/scarecrow", "lib/scarecrow.rb", "lib/scarecrow/generator.rb", "lib/scarecrow/generators/application.rb", "lib/scarecrow/generators/application/Rakefile", "lib/scarecrow/urlmap.rb", "scarecrow.gemspec"]
|
16
|
+
s.has_rdoc = true
|
17
|
+
s.homepage = %q{http://github.com/hackenporsche/scarecrow}
|
18
|
+
s.rdoc_options = ["--line-numbers", "--inline-source", "--title", "Scarecrow", "--main", "README.rdoc"]
|
19
|
+
s.require_paths = ["lib"]
|
20
|
+
s.rubyforge_project = %q{scarecrow}
|
21
|
+
s.rubygems_version = %q{1.3.2}
|
22
|
+
s.summary = %q{A simple web framework for Ruby based on Sinatra}
|
23
|
+
|
24
|
+
if s.respond_to? :specification_version then
|
25
|
+
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
26
|
+
s.specification_version = 3
|
27
|
+
|
28
|
+
if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
|
29
|
+
else
|
30
|
+
end
|
31
|
+
else
|
32
|
+
end
|
33
|
+
end
|
data/scarecrow.gemspec
ADDED
@@ -0,0 +1,33 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
|
3
|
+
Gem::Specification.new do |s|
|
4
|
+
s.name = %q{scarecrow}
|
5
|
+
s.version = "0.0.1"
|
6
|
+
|
7
|
+
s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
|
8
|
+
s.authors = ["hackenporsche"]
|
9
|
+
s.date = %q{2009-10-12}
|
10
|
+
s.default_executable = %q{scarecrow}
|
11
|
+
s.description = %q{A simple web framework for Ruby based on Sinatra}
|
12
|
+
s.email = %q{sin3141592@gmail.com}
|
13
|
+
s.executables = ["scarecrow"]
|
14
|
+
s.extra_rdoc_files = ["README.rdoc", "bin/scarecrow", "lib/scarecrow.rb", "lib/scarecrow/generator.rb", "lib/scarecrow/generators/application.rb", "lib/scarecrow/generators/application/Rakefile", "lib/scarecrow/urlmap.rb"]
|
15
|
+
s.files = ["Manifest", "README.rdoc", "Rakefile", "bin/scarecrow", "lib/scarecrow.rb", "lib/scarecrow/generator.rb", "lib/scarecrow/generators/application.rb", "lib/scarecrow/generators/application/Rakefile", "lib/scarecrow/urlmap.rb", "pkg/scarecrow-0.0.1.gem", "pkg/scarecrow-0.0.1.tar.gz", "pkg/scarecrow-0.0.1/Manifest", "pkg/scarecrow-0.0.1/README.rdoc", "pkg/scarecrow-0.0.1/Rakefile", "pkg/scarecrow-0.0.1/bin/scarecrow", "pkg/scarecrow-0.0.1/lib/scarecrow.rb", "pkg/scarecrow-0.0.1/lib/scarecrow/generator.rb", "pkg/scarecrow-0.0.1/lib/scarecrow/generators/application.rb", "pkg/scarecrow-0.0.1/lib/scarecrow/generators/application/Rakefile", "pkg/scarecrow-0.0.1/lib/scarecrow/urlmap.rb", "pkg/scarecrow-0.0.1/scarecrow.gemspec", "scarecrow.gemspec"]
|
16
|
+
s.has_rdoc = true
|
17
|
+
s.homepage = %q{http://github.com/hackenporsche/scarecrow}
|
18
|
+
s.rdoc_options = ["--line-numbers", "--inline-source", "--title", "Scarecrow", "--main", "README.rdoc"]
|
19
|
+
s.require_paths = ["lib"]
|
20
|
+
s.rubyforge_project = %q{scarecrow}
|
21
|
+
s.rubygems_version = %q{1.3.2}
|
22
|
+
s.summary = %q{A simple web framework for Ruby based on Sinatra}
|
23
|
+
|
24
|
+
if s.respond_to? :specification_version then
|
25
|
+
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
26
|
+
s.specification_version = 3
|
27
|
+
|
28
|
+
if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
|
29
|
+
else
|
30
|
+
end
|
31
|
+
else
|
32
|
+
end
|
33
|
+
end
|
metadata
ADDED
@@ -0,0 +1,87 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: scarecrow
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- hackenporsche
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
|
12
|
+
date: 2009-10-12 00:00:00 +02:00
|
13
|
+
default_executable: scarecrow
|
14
|
+
dependencies: []
|
15
|
+
|
16
|
+
description: A simple web framework for Ruby based on Sinatra
|
17
|
+
email: sin3141592@gmail.com
|
18
|
+
executables:
|
19
|
+
- scarecrow
|
20
|
+
extensions: []
|
21
|
+
|
22
|
+
extra_rdoc_files:
|
23
|
+
- README.rdoc
|
24
|
+
- bin/scarecrow
|
25
|
+
- lib/scarecrow.rb
|
26
|
+
- lib/scarecrow/generator.rb
|
27
|
+
- lib/scarecrow/generators/application.rb
|
28
|
+
- lib/scarecrow/generators/application/Rakefile
|
29
|
+
- lib/scarecrow/urlmap.rb
|
30
|
+
files:
|
31
|
+
- Manifest
|
32
|
+
- README.rdoc
|
33
|
+
- Rakefile
|
34
|
+
- bin/scarecrow
|
35
|
+
- lib/scarecrow.rb
|
36
|
+
- lib/scarecrow/generator.rb
|
37
|
+
- lib/scarecrow/generators/application.rb
|
38
|
+
- lib/scarecrow/generators/application/Rakefile
|
39
|
+
- lib/scarecrow/urlmap.rb
|
40
|
+
- pkg/scarecrow-0.0.1.gem
|
41
|
+
- pkg/scarecrow-0.0.1.tar.gz
|
42
|
+
- pkg/scarecrow-0.0.1/Manifest
|
43
|
+
- pkg/scarecrow-0.0.1/README.rdoc
|
44
|
+
- pkg/scarecrow-0.0.1/Rakefile
|
45
|
+
- pkg/scarecrow-0.0.1/bin/scarecrow
|
46
|
+
- pkg/scarecrow-0.0.1/lib/scarecrow.rb
|
47
|
+
- pkg/scarecrow-0.0.1/lib/scarecrow/generator.rb
|
48
|
+
- pkg/scarecrow-0.0.1/lib/scarecrow/generators/application.rb
|
49
|
+
- pkg/scarecrow-0.0.1/lib/scarecrow/generators/application/Rakefile
|
50
|
+
- pkg/scarecrow-0.0.1/lib/scarecrow/urlmap.rb
|
51
|
+
- pkg/scarecrow-0.0.1/scarecrow.gemspec
|
52
|
+
- scarecrow.gemspec
|
53
|
+
has_rdoc: true
|
54
|
+
homepage: http://github.com/hackenporsche/scarecrow
|
55
|
+
licenses: []
|
56
|
+
|
57
|
+
post_install_message:
|
58
|
+
rdoc_options:
|
59
|
+
- --line-numbers
|
60
|
+
- --inline-source
|
61
|
+
- --title
|
62
|
+
- Scarecrow
|
63
|
+
- --main
|
64
|
+
- README.rdoc
|
65
|
+
require_paths:
|
66
|
+
- lib
|
67
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
68
|
+
requirements:
|
69
|
+
- - ">="
|
70
|
+
- !ruby/object:Gem::Version
|
71
|
+
version: "0"
|
72
|
+
version:
|
73
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
74
|
+
requirements:
|
75
|
+
- - ">="
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: "1.2"
|
78
|
+
version:
|
79
|
+
requirements: []
|
80
|
+
|
81
|
+
rubyforge_project: scarecrow
|
82
|
+
rubygems_version: 1.3.2
|
83
|
+
signing_key:
|
84
|
+
specification_version: 3
|
85
|
+
summary: A simple web framework for Ruby based on Sinatra
|
86
|
+
test_files: []
|
87
|
+
|