fetty-generators 2.0.0 → 2.0.1
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/generators/fetty.rb +59 -52
- data/lib/generators/fetty/authentication/authentication_generator.rb +1 -1
- data/lib/generators/fetty/messages/messages_generator.rb +1 -1
- data/lib/generators/fetty/scaffold/scaffold_generator.rb +25 -22
- data/lib/generators/fetty/setup/setup_generator.rb +41 -31
- data/lib/generators/fetty/setup/templates/env.rb +50 -0
- data/lib/generators/fetty/views/views_generator.rb +40 -4
- metadata +6 -4
data/lib/generators/fetty.rb
CHANGED
@@ -1,8 +1,6 @@
|
|
1
|
-
require 'rubygems'
|
2
|
-
require 'rubygems/command.rb'
|
3
|
-
require 'rubygems/dependency_installer.rb'
|
4
1
|
require 'rails/generators/base'
|
5
2
|
require 'bundler'
|
3
|
+
require 'bundler/dsl'
|
6
4
|
|
7
5
|
module Fetty
|
8
6
|
module Generators
|
@@ -18,24 +16,9 @@ module Fetty
|
|
18
16
|
|
19
17
|
protected
|
20
18
|
|
21
|
-
def add_gem(
|
22
|
-
|
23
|
-
|
24
|
-
gemfile_content = File.read(gemfile)
|
25
|
-
File.open(gemfile, 'a') { |f| f.write("\n") } unless gemfile_content =~ /\n\Z/
|
26
|
-
|
27
|
-
gem name, options
|
28
|
-
|
29
|
-
if bundle_need_refresh?
|
30
|
-
install_gem(name,options)
|
31
|
-
end
|
32
|
-
end
|
33
|
-
rescue Exception => e
|
34
|
-
raise e
|
35
|
-
end
|
36
|
-
|
37
|
-
def gemfile_included?(name)
|
38
|
-
file_contains?("Gemfile",name)
|
19
|
+
def add_gem(&block)
|
20
|
+
yield
|
21
|
+
refresh_bundle
|
39
22
|
rescue Exception => e
|
40
23
|
raise e
|
41
24
|
end
|
@@ -56,6 +39,13 @@ protected
|
|
56
39
|
File.directory? path
|
57
40
|
end
|
58
41
|
|
42
|
+
def class_exists?(class_name)
|
43
|
+
klass = Rails.application.class.parent_name.constantize.const_get(class_name)
|
44
|
+
return klass.is_a?(Class)
|
45
|
+
rescue NameError
|
46
|
+
return false
|
47
|
+
end
|
48
|
+
|
59
49
|
def destroy(path)
|
60
50
|
begin
|
61
51
|
if file_exists?(path)
|
@@ -86,9 +76,13 @@ protected
|
|
86
76
|
end
|
87
77
|
|
88
78
|
def print_notes(message,notes = "notes",color = :yellow)
|
89
|
-
|
90
|
-
|
91
|
-
|
79
|
+
unless message.blank?
|
80
|
+
puts '', '='*80
|
81
|
+
say_status "#{notes}", "#{message}", color
|
82
|
+
puts '='*80, ''; sleep 0.5
|
83
|
+
else
|
84
|
+
puts "\n"
|
85
|
+
end
|
92
86
|
end
|
93
87
|
|
94
88
|
def print_usage
|
@@ -96,61 +90,65 @@ protected
|
|
96
90
|
exit
|
97
91
|
end
|
98
92
|
|
99
|
-
def
|
100
|
-
print_notes("Installing #{name}")
|
93
|
+
def install_local_gem(name,version = nil)
|
101
94
|
::Bundler.with_clean_env do
|
102
|
-
|
103
|
-
|
95
|
+
if version
|
96
|
+
`gem install #{name} -v=#{version}`
|
104
97
|
else
|
105
|
-
|
98
|
+
`gem install #{name}`
|
106
99
|
end
|
107
100
|
end
|
101
|
+
$? == 0 ? true : false
|
108
102
|
rescue Exception => e
|
109
103
|
raise e
|
110
104
|
end
|
111
105
|
|
112
|
-
def
|
113
|
-
print_notes('Refresh bundle')
|
106
|
+
def check_local_gem?(name,version = nil)
|
114
107
|
::Bundler.with_clean_env do
|
115
|
-
|
108
|
+
if version
|
109
|
+
`gem list #{name} -i -v=#{version}`
|
110
|
+
else
|
111
|
+
`gem list #{name} -i`
|
112
|
+
end
|
116
113
|
end
|
114
|
+
$? == 0 ? true : false
|
117
115
|
rescue Exception => e
|
118
116
|
raise e
|
119
117
|
end
|
120
118
|
|
121
|
-
def
|
119
|
+
def refresh_bundle
|
122
120
|
::Bundler.with_clean_env do
|
123
|
-
`bundle
|
121
|
+
`bundle`
|
124
122
|
end
|
125
|
-
$? == 0 ? false : true
|
126
123
|
rescue Exception => e
|
127
124
|
raise e
|
128
125
|
end
|
129
126
|
|
130
|
-
def
|
131
|
-
|
132
|
-
|
133
|
-
file_content = File.read(file)
|
134
|
-
file_content.include?(check_string) ? true : false
|
135
|
-
else
|
136
|
-
false
|
127
|
+
def set_application_config(&block)
|
128
|
+
inject_into_class "config/application.rb", "Application" do
|
129
|
+
yield
|
137
130
|
end
|
138
131
|
rescue Exception => e
|
139
|
-
raise e
|
132
|
+
raise e
|
140
133
|
end
|
141
134
|
|
142
135
|
def must_load_lib_directory
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
136
|
+
set_application_config do
|
137
|
+
' config.autoload_paths += %W(#{config.root}/lib)' + "\n"
|
138
|
+
end
|
139
|
+
end
|
140
|
+
|
141
|
+
def gemfile_included?(name)
|
142
|
+
::Bundler.with_clean_env do
|
143
|
+
`bundle show #{name}`
|
147
144
|
end
|
145
|
+
$?.exitstatus == 0 ? true : false
|
148
146
|
rescue Exception => e
|
149
147
|
raise e
|
150
148
|
end
|
151
149
|
|
152
150
|
def using_cancan?
|
153
|
-
gemfile_included?("cancan") &&
|
151
|
+
gemfile_included?("cancan") && class_exists?("Ability")
|
154
152
|
rescue Exception => e
|
155
153
|
raise e
|
156
154
|
end
|
@@ -174,15 +172,24 @@ protected
|
|
174
172
|
end
|
175
173
|
|
176
174
|
def using_fetty_authentication?
|
177
|
-
|
178
|
-
|
179
|
-
|
180
|
-
|
175
|
+
class_exists?("UsersController") &&
|
176
|
+
class_exists?("SessionsController") &&
|
177
|
+
class_exists?("ResetPasswordsController") &&
|
178
|
+
class_exists?("User")
|
181
179
|
rescue Exception => e
|
182
180
|
raise e
|
183
181
|
end
|
184
182
|
|
183
|
+
def check_required_gems?(*names)
|
184
|
+
names.each do |name|
|
185
|
+
return false unless gemfile_included? name
|
186
|
+
end
|
187
|
+
true
|
188
|
+
rescue Exception => e
|
189
|
+
raise e
|
190
|
+
end
|
185
191
|
|
186
192
|
end
|
187
193
|
end
|
188
194
|
end
|
195
|
+
|
@@ -16,7 +16,7 @@ module Fetty
|
|
16
16
|
else
|
17
17
|
unless using_fetty_authentication?
|
18
18
|
@orm = using_mongoid? ? 'mongoid' : 'active_record'
|
19
|
-
add_gem
|
19
|
+
add_gem { gem "bcrypt-ruby", :require => "bcrypt" }
|
20
20
|
generate_users
|
21
21
|
generate_sessions
|
22
22
|
generate_reset_passwords
|
@@ -21,7 +21,7 @@ module Fetty
|
|
21
21
|
if file_exists?(@model_path)
|
22
22
|
unless using_mongoid?
|
23
23
|
@orm = using_mongoid? ? 'mongoid' : 'active_record'
|
24
|
-
|
24
|
+
add_gem { gem "ancestry" }
|
25
25
|
copy_models_and_migrations
|
26
26
|
copy_controller_and_helper
|
27
27
|
copy_views
|
@@ -25,29 +25,32 @@ module Fetty
|
|
25
25
|
print_usage unless scaffold_name.underscore =~ /^[a-z][a-z0-9_\/]+$/ && !attributes.empty?
|
26
26
|
print_usage unless attributes.drop_while { |arg| arg.include?(':') }.count == 0
|
27
27
|
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
28
|
+
if check_required_gems? "jquery-rails", "simple_form", "kaminari", "ckeditor", "carrierwave"
|
29
|
+
@orm = using_mongoid? ? 'mongoid' : 'active_record'
|
30
|
+
|
31
|
+
setting_model_attributes
|
32
|
+
if options[:model]
|
33
|
+
generate_model
|
34
|
+
if options.migration? && !using_mongoid?
|
35
|
+
generate_migration
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
if options.controller?
|
40
|
+
setting_controller_attributes
|
41
|
+
generate_controller
|
42
|
+
generate_helper
|
43
|
+
generate_views
|
44
|
+
generate_routes
|
45
|
+
end
|
46
|
+
|
47
|
+
if options.test?
|
48
|
+
generate_test_unit if using_test_unit?
|
49
|
+
generate_specs if using_rspec?
|
50
|
+
end
|
51
|
+
else
|
52
|
+
raise "Missing gems: jquery-rails, simple_form, kaminari, ckeditor, carrierwave"
|
49
53
|
end
|
50
|
-
|
51
54
|
rescue Exception => e
|
52
55
|
print_notes(e.message,"error",:red)
|
53
56
|
end
|
@@ -28,6 +28,8 @@ module Fetty
|
|
28
28
|
end
|
29
29
|
remove_file 'public/index.html' if file_exists?('public/index.html')
|
30
30
|
remove_file 'public/images/rails.png' if file_exists?('public/images/rails.png')
|
31
|
+
print_notes("Refreshing Bundle")
|
32
|
+
refresh_bundle
|
31
33
|
rescue Exception => e
|
32
34
|
print_notes(e.message,"error",:red)
|
33
35
|
end
|
@@ -35,15 +37,18 @@ module Fetty
|
|
35
37
|
private
|
36
38
|
|
37
39
|
def setup_mongoid
|
38
|
-
add_gem
|
39
|
-
|
40
|
+
add_gem do
|
41
|
+
gem "bson_ext"
|
42
|
+
gem "mongoid"
|
43
|
+
end
|
40
44
|
generate("mongoid:config")
|
45
|
+
set_application_config { " config.mongoid.preload_models = true\n" }
|
41
46
|
rescue Exception => e
|
42
47
|
raise e
|
43
48
|
end
|
44
49
|
|
45
50
|
def setup_cancan
|
46
|
-
add_gem
|
51
|
+
add_gem { gem "cancan" }
|
47
52
|
copy_file 'ability.rb', 'app/models/ability.rb'
|
48
53
|
inject_into_class 'app/controllers/application_controller.rb', ApplicationController do
|
49
54
|
" rescue_from CanCan::AccessDenied do |exception| flash[:alert] = exception.message; redirect_to root_url end;\n"
|
@@ -51,24 +56,26 @@ private
|
|
51
56
|
rescue Exception => e
|
52
57
|
raise e
|
53
58
|
end
|
54
|
-
|
59
|
+
|
55
60
|
def setup_jquery_rails
|
56
|
-
add_gem
|
61
|
+
add_gem { gem "jquery-rails" }
|
57
62
|
generate("jquery:install")
|
58
63
|
rescue Exception => e
|
59
64
|
raise e
|
60
65
|
end
|
61
66
|
|
62
67
|
def setup_simple_form
|
63
|
-
add_gem
|
68
|
+
add_gem { gem "simple_form" }
|
64
69
|
generate("simple_form:install")
|
65
70
|
rescue Exception => e
|
66
71
|
raise e
|
67
72
|
end
|
68
73
|
|
69
74
|
def setup_carrierwave
|
70
|
-
add_gem
|
71
|
-
|
75
|
+
add_gem do
|
76
|
+
gem "mini_magick"
|
77
|
+
gem "carrierwave"
|
78
|
+
end
|
72
79
|
copy_file 'image_uploader.rb', 'app/uploaders/image_uploader.rb'
|
73
80
|
copy_file 'file_uploader.rb', 'app/uploaders/file_uploader.rb'
|
74
81
|
print_notes("carrierwave will use mini_magick by default!")
|
@@ -77,7 +84,7 @@ private
|
|
77
84
|
end
|
78
85
|
|
79
86
|
def setup_kaminari
|
80
|
-
add_gem
|
87
|
+
add_gem { gem "kaminari" }
|
81
88
|
rescue Exception => e
|
82
89
|
raise e
|
83
90
|
end
|
@@ -87,11 +94,11 @@ private
|
|
87
94
|
destroy("public/javascripts/ckeditor")
|
88
95
|
ver = ask("==> What version of CKEditor javascript files do you need? [default 3.5.4]")
|
89
96
|
if ver == "3.5.4" || ver.blank?
|
90
|
-
add_gem
|
97
|
+
add_gem { gem "ckeditor", "3.5.4" }
|
91
98
|
template "ckeditor.rb", "config/initializers/ckeditor.rb"
|
92
99
|
extract("setup/templates/ckeditor.tar.gz","public/javascripts","ckeditor")
|
93
100
|
else
|
94
|
-
add_gem
|
101
|
+
add_gem { gem "ckeditor", ver }
|
95
102
|
generate("ckeditor:base --version=#{ver}")
|
96
103
|
end
|
97
104
|
rescue Exception => e
|
@@ -99,35 +106,38 @@ private
|
|
99
106
|
end
|
100
107
|
|
101
108
|
def setup_test
|
102
|
-
|
103
|
-
|
104
|
-
group_gems = "\ngroup :development, :test do"
|
105
|
-
group_gems << "\n gem 'rspec-rails'"
|
106
|
-
group_gems << "\n gem 'capybara'"
|
107
|
-
group_gems << "\n gem 'factory_girl_rails'"
|
108
|
-
group_gems << "\n gem 'faker'"
|
109
|
-
group_gems << "\n gem 'database_cleaner'"
|
110
|
-
group_gems << "\n gem 'escape_utils'"
|
111
|
-
group_gems << "\n gem 'guard-rspec'"
|
112
|
-
group_gems << "\n if RUBY_PLATFORM =~ /darwin/i"
|
113
|
-
group_gems << "\n gem 'rb-fsevent', :require => false"
|
114
|
-
group_gems << "\n gem 'growl'"
|
115
|
-
group_gems << "\n end"
|
116
|
-
group_gems << "\nend\n"
|
109
|
+
# remove the existing install (if any)
|
110
|
+
destroy("Guardfile")
|
117
111
|
|
118
|
-
|
119
|
-
|
112
|
+
add_gem do
|
113
|
+
gem 'rspec-rails', :group => [:development, :test]
|
114
|
+
gem 'capybara', :group => [:development, :test]
|
115
|
+
gem 'factory_girl_rails', :group => [:development, :test]
|
116
|
+
gem 'faker', :group => [:development, :test]
|
117
|
+
gem 'database_cleaner', :group => [:development, :test]
|
118
|
+
gem 'escape_utils', :group => [:development, :test]
|
119
|
+
gem 'guard-rspec', :group => [:development, :test]
|
120
|
+
if RUBY_PLATFORM =~ /darwin/i
|
121
|
+
gem 'rb-fsevent', :group => [:development, :test], :require => false
|
122
|
+
gem 'growl', :group => [:development, :test]
|
123
|
+
end
|
124
|
+
end
|
120
125
|
|
121
126
|
copy_file 'escape_utils.rb', 'config/initializers/escape_utils.rb'
|
127
|
+
destroy("spec")
|
122
128
|
generate("rspec:install")
|
123
129
|
remove_file 'spec/spec_helper.rb'
|
124
|
-
template 'spec_helper.rb', 'spec/spec_helper.rb'
|
130
|
+
template 'spec_helper.rb', 'spec/spec_helper.rb', :force => true
|
125
131
|
`guard init rspec`
|
126
132
|
|
127
133
|
asking "Would you like to install Cucumber?" do
|
128
|
-
|
129
|
-
add_gem
|
134
|
+
destroy("features")
|
135
|
+
add_gem do
|
136
|
+
gem "cucumber-rails", :group => [:development, :test]
|
137
|
+
gem "guard-cucumber", :group => [:development, :test]
|
138
|
+
end
|
130
139
|
generate("cucumber:install", "--rspec", "--capybara")
|
140
|
+
template 'env.rb', 'features/support/env.rb', :force => true
|
131
141
|
`guard init cucumber`
|
132
142
|
end
|
133
143
|
|
@@ -0,0 +1,50 @@
|
|
1
|
+
# IMPORTANT: This file is generated by cucumber-rails - edit at your own peril.
|
2
|
+
# It is recommended to regenerate this file in the future when you upgrade to a
|
3
|
+
# newer version of cucumber-rails. Consider adding your own code to a new file
|
4
|
+
# instead of editing this one. Cucumber will automatically load all features/**/*.rb
|
5
|
+
# files.
|
6
|
+
|
7
|
+
require 'cucumber/rails'
|
8
|
+
|
9
|
+
# Capybara defaults to XPath selectors rather than Webrat's default of CSS3. In
|
10
|
+
# order to ease the transition to Capybara we set the default here. If you'd
|
11
|
+
# prefer to use XPath just remove this line and adjust any selectors in your
|
12
|
+
# steps to use the XPath syntax.
|
13
|
+
Capybara.default_selector = :css
|
14
|
+
|
15
|
+
# By default, any exception happening in your Rails application will bubble up
|
16
|
+
# to Cucumber so that your scenario will fail. This is a different from how
|
17
|
+
# your application behaves in the production environment, where an error page will
|
18
|
+
# be rendered instead.
|
19
|
+
#
|
20
|
+
# Sometimes we want to override this default behaviour and allow Rails to rescue
|
21
|
+
# exceptions and display an error page (just like when the app is running in production).
|
22
|
+
# Typical scenarios where you want to do this is when you test your error pages.
|
23
|
+
# There are two ways to allow Rails to rescue exceptions:
|
24
|
+
#
|
25
|
+
# 1) Tag your scenario (or feature) with @allow-rescue
|
26
|
+
#
|
27
|
+
# 2) Set the value below to true. Beware that doing this globally is not
|
28
|
+
# recommended as it will mask a lot of errors for you!
|
29
|
+
#
|
30
|
+
ActionController::Base.allow_rescue = false
|
31
|
+
|
32
|
+
# Remove/comment out the lines below if your app doesn't have a database.
|
33
|
+
# For some databases (like MongoDB and CouchDB) you may need to use :truncation instead.
|
34
|
+
begin
|
35
|
+
DatabaseCleaner.strategy = <%= using_mongoid? ? ':truncation' : ':transaction' %>
|
36
|
+
rescue NameError
|
37
|
+
raise "You need to add database_cleaner to your Gemfile (in the :test group) if you wish to use it."
|
38
|
+
end
|
39
|
+
|
40
|
+
# You may also want to configure DatabaseCleaner to use different strategies for certain features and scenarios.
|
41
|
+
# See the DatabaseCleaner documentation for details. Example:
|
42
|
+
#
|
43
|
+
# Before('@no-txn,@selenium,@culerity,@celerity,@javascript') do
|
44
|
+
# DatabaseCleaner.strategy = :truncation, {:except => %w[widgets]}
|
45
|
+
# end
|
46
|
+
#
|
47
|
+
# Before('~@no-txn', '~@selenium', '~@culerity', '~@celerity', '~@javascript') do
|
48
|
+
# DatabaseCleaner.strategy = :transaction
|
49
|
+
# end
|
50
|
+
#
|
@@ -9,11 +9,11 @@ module Fetty
|
|
9
9
|
def generate_views
|
10
10
|
case arg
|
11
11
|
when "layout"
|
12
|
-
generate_layout
|
12
|
+
generate_layout
|
13
13
|
when "erb:to:haml"
|
14
14
|
erb_to_haml
|
15
15
|
when "haml:to:erb"
|
16
|
-
haml_to_erb
|
16
|
+
haml_to_erb
|
17
17
|
end
|
18
18
|
rescue Exception => e
|
19
19
|
print_notes(e.message,"error",:red)
|
@@ -35,13 +35,49 @@ private
|
|
35
35
|
end
|
36
36
|
|
37
37
|
def erb_to_haml
|
38
|
-
|
38
|
+
asking "Are you sure want to convert all your views from ERB to HAML ?" do
|
39
|
+
# => Cycles through the views folder and searches for erb files
|
40
|
+
# prepare_convert_gems
|
41
|
+
# Dir.glob("app/views/**/*.erb").each do |file|
|
42
|
+
# puts "Convert ERB: #{file}"
|
43
|
+
# unless file_exists? file.gsub(/erb$/, "haml")
|
44
|
+
# `html2haml #{file} | cat > #{file.gsub(/erb$/, "haml")}`
|
45
|
+
# File.delete(file)
|
46
|
+
# end
|
47
|
+
# end
|
48
|
+
end
|
39
49
|
rescue Exception => e
|
40
50
|
raise e
|
41
51
|
end
|
42
52
|
|
43
53
|
def haml_to_erb
|
44
|
-
|
54
|
+
asking "Are you sure want to convert all your views from HAML to ERB ? [yes]" do
|
55
|
+
# => Cycles through the views folder and searches for haml files
|
56
|
+
end
|
57
|
+
rescue Exception => e
|
58
|
+
raise e
|
59
|
+
end
|
60
|
+
|
61
|
+
def prepare_convert_gems
|
62
|
+
# install_gem "haml-rails" unless check_installed_gem? "haml-rails"
|
63
|
+
# install_gem "hpricot" unless check_installed_gem? "hpricot"
|
64
|
+
# install_gem "ruby_parser" unless check_installed_gem? "ruby_parser"
|
65
|
+
rescue Exception => e
|
66
|
+
raise e
|
67
|
+
end
|
68
|
+
|
69
|
+
def convert_views(in_type,out_type)
|
70
|
+
# Dir["app/views/**/*.#{in_type}"].each do |file_name|
|
71
|
+
# puts "Convert #{first_type.capitalize}: #{file_name}"
|
72
|
+
# out_file_name = file_name.gsub(/#{first_type}$/, second_type)
|
73
|
+
# unless file_exists? out_file_name
|
74
|
+
# erb_string = File.open(file_name).read
|
75
|
+
# haml_string = Haml::HTML.new(erb_string, :erb => true).render
|
76
|
+
# f = File.new(haml_file_name, "w")
|
77
|
+
# f.write(haml_string)
|
78
|
+
# File.delete(file_name)
|
79
|
+
# end
|
80
|
+
# end
|
45
81
|
rescue Exception => e
|
46
82
|
raise e
|
47
83
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fetty-generators
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.1
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,9 +9,10 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2011-08-
|
12
|
+
date: 2011-08-13 00:00:00.000000000Z
|
13
13
|
dependencies: []
|
14
|
-
description:
|
14
|
+
description: This generators provide you to easily setup your Rails 3 application,
|
15
|
+
create authentication, messages, admin style scaffolding and many more
|
15
16
|
email:
|
16
17
|
- fajri82@gmail.com
|
17
18
|
executables: []
|
@@ -105,6 +106,7 @@ files:
|
|
105
106
|
- lib/generators/fetty/setup/templates/ability.rb
|
106
107
|
- lib/generators/fetty/setup/templates/ckeditor.rb
|
107
108
|
- lib/generators/fetty/setup/templates/ckeditor.tar.gz
|
109
|
+
- lib/generators/fetty/setup/templates/env.rb
|
108
110
|
- lib/generators/fetty/setup/templates/escape_utils.rb
|
109
111
|
- lib/generators/fetty/setup/templates/file_uploader.rb
|
110
112
|
- lib/generators/fetty/setup/templates/image_uploader.rb
|
@@ -148,5 +150,5 @@ rubyforge_project: fetty-generators
|
|
148
150
|
rubygems_version: 1.8.5
|
149
151
|
signing_key:
|
150
152
|
specification_version: 3
|
151
|
-
summary: Simple
|
153
|
+
summary: Simple generators to start your Rails project
|
152
154
|
test_files: []
|