wize_upgrader 0.0.5 → 0.0.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +7 -0
  2. data/lib/wize_upgrader.rb +63 -55
  3. metadata +7 -10
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 4a461e0f49e7da1a6767f07166f0f31ffa42fd91
4
+ data.tar.gz: da0b5c2aa8e764d754f0a6f8be7a01fbae975144
5
+ SHA512:
6
+ metadata.gz: ca7b3c4231103939815e1b862e72fc23253cdec38ea7c4ea68ff3f8fbb157b8d505550c2b8e35c0ae8dff9011e58c345711689a16fe6049afa8eb4368b383366
7
+ data.tar.gz: 51fc50c373f1ce3cade4073105ff2137032a670ed03a45281c26c56a5df7e8023be43d7df685367173a61e64f16f1ff9e28f2db7e0ff8ea69c645926983dc91b
@@ -1,22 +1,22 @@
1
+ # encoding: utf-8
1
2
  require 'fileutils'
2
3
  require 'active_support/inflector'
3
- require 'debugger'
4
4
 
5
5
  module Wize
6
6
  class Upgrader
7
7
  SOFT_DIR_MAPPINGS = {
8
- ".git" => ".git",
9
- ".gitignore" => ".gitignore",
10
- "script" => "bin",
11
- "db" => "db",
12
- "lib" => "lib",
13
- "spec" => "spec",
14
- "vendor" => "vendor"
8
+ '.git' => '.git',
9
+ '.gitignore' => '.gitignore',
10
+ 'script' => 'bin',
11
+ 'db' => 'db',
12
+ 'lib' => 'lib',
13
+ 'spec' => 'spec',
14
+ 'vendor' => 'vendor'
15
15
  }
16
16
  HARD_DIR_MAPPINGS = {
17
- "app" => "app",
18
- "config/locales" => "config/locales",
19
- "config/initializers" => "config/initializers"
17
+ 'app' => 'app',
18
+ 'config/locales' => 'config/locales',
19
+ 'config/initializers' => 'config/initializers'
20
20
  }
21
21
  COMMON_GEMS = [
22
22
  "gem 'jquery-rails'",
@@ -34,10 +34,10 @@ module Wize
34
34
  "gem 'rails', '3.2.15'"
35
35
  ]
36
36
  COMMON_FILES = [
37
- "config/application.yml",
38
- "config/database.yml",
39
- "config/routes.rb",
40
- "README.md"
37
+ 'config/application.yml',
38
+ 'config/database.yml',
39
+ 'config/routes.rb',
40
+ 'README.md'
41
41
  ]
42
42
 
43
43
  def initialize(old_app_name)
@@ -46,8 +46,7 @@ module Wize
46
46
  end
47
47
 
48
48
  def upgrade
49
- puts "------- UPGRADING #{ @new_name } FROM RAILS 3.2 to RAILS 4 -------"
50
-
49
+ puts "-------UPGRADING #{@new_name} FROM RAILS 3.2 to RAILS 4-------"
51
50
  begin
52
51
  rename_old
53
52
  rails_gen_new
@@ -60,10 +59,8 @@ module Wize
60
59
  rescue => e
61
60
  puts e.message
62
61
  puts e.backtrace
63
- puts "something went wrong!"
64
- ensure
65
62
  end
66
- puts "------ DONE UPGRADING! HAVE FUN ------"
63
+ puts '------ DONE UPGRADING! HAVE FUN ------'
67
64
  end
68
65
 
69
66
  def install_rspec
@@ -78,52 +75,64 @@ module Wize
78
75
  end
79
76
 
80
77
  def fix_controllers
81
- files_for("#{ @new_name }/app/controllers").each { |c| fix_controller(c) }
78
+ files_for("#{@new_name}/app/controllers").each { |c| fix_controller(c) }
82
79
  end
83
80
 
84
- def fix_controller(file)
85
- puts "fixing #{ file }"
86
- model = File.basename(file).gsub("_controller.rb", "").singularize
87
- return if attr_accessibles[model].empty?
88
-
89
- columns = attr_accessibles[model]
90
- params_block = <<-rb
81
+ def params_block(model, columns)
82
+ <<-rb
91
83
 
92
84
  private
93
85
  def #{ model }_params
94
- params.require(:#{ model }).permit(#{ columns.join(", ") })
86
+ params.require(:#{ model }).permit(#{ columns.join(', ') })
95
87
  end
96
88
  rb
89
+ end
90
+
91
+ def model_from_file_name(file_name)
92
+ File.basename(file).gsub('_controller.rb', '').singularize
93
+ end
94
+
95
+ def fix_controller(file)
96
+ model = model_from_file_name(file)
97
+ return if attr_accessibles[model].empty?
98
+
99
+ puts "fixing #{ file }"
100
+ columns = attr_accessibles[model]
97
101
 
98
102
  # find last occurance of end and replace with params_block
99
103
  ctrlr = File.read("#{ @new_name }/app/controllers/#{ file }")
100
- end_idx = ctrlr.rindex("end")
101
- puts "last index of end is #{ end_idx }"
102
- ctrlr.insert(end_idx, params_block)
104
+ end_idx = ctrlr.rindex('end')
105
+ ctrlr.insert(end_idx, params_block(model, columns))
103
106
  ctrlr.gsub!("params[:#{ model }]", "#{ model }_params")
104
107
 
105
- File.open("#{ @new_name }/app/controllers/#{ file }.tmp", "w") do |n|
108
+ File.open("#{ @new_name }/app/controllers/#{ file }.tmp", 'w') do |n|
106
109
  n.write(ctrlr)
107
110
  end
108
- `mv #{ @new_name }/app/controllers/#{ file }.tmp #{ @new_name }/app/controllers/#{ file }`
111
+ clean_up_tmp(file)
112
+ end
113
+
114
+ def clean_up_tmp(file)
115
+ from_file = "#{ @new_name }/app/controllers/#{file}.tmp"
116
+ to_file = "#{ @new_name }/app/controllers/#{file}"
117
+ `mv #{from_file} #{to_file}`
109
118
  end
110
119
 
111
120
  def fix_models
112
- puts "pulling out attr_accessible from models"
121
+ puts 'pulling out attr_accessible from models'
113
122
  files_for("#{ @new_name }/app/models").each { |m| fix_model(m) }
114
123
  end
115
124
 
116
125
  def fix_model(file)
117
- lower_model = file.gsub(".rb", "")
126
+ lower_model = file.gsub('.rb', '')
118
127
  puts "fixing #{ lower_model }"
119
- File.open("#{ @new_name }/app/models/#{ file }", "r") do |old|
120
- File.open("#{ @new_name }/app/models/#{ file }.tmp", "w") do |n|
128
+ File.open("#{ @new_name }/app/models/#{ file }", 'r') do |old|
129
+ File.open("#{ @new_name }/app/models/#{ file }.tmp", 'w') do |n|
121
130
  old.each_line do |line|
122
- if line.strip.start_with?("attr_accessible")
131
+ if line.strip.start_with?('attr_accessible')
123
132
  attr_accessibles[lower_model] += line
124
133
  .strip
125
- .gsub("attr_accessible", "")
126
- .split(",")
134
+ .gsub('attr_accessible', '')
135
+ .split(',')
127
136
  .map(&:strip)
128
137
  else
129
138
  n.write(line)
@@ -131,16 +140,16 @@ rb
131
140
  end
132
141
  end
133
142
  end
134
- puts "Found attr_accessible #{ attr_accessibles[lower_model].join(", ") }"
135
- `mv #{ @new_name }/app/models/#{ file }.tmp #{ @new_name }/app/models/#{ file }`
143
+ puts "Found attr_accessible #{attr_accessibles[lower_model].join(', ')}"
144
+ `mv #{@new_name}/app/models/#{file}.tmp #{@new_name}/app/models/#{file}`
136
145
  end
137
146
 
138
147
  def files_for(dir)
139
148
  puts "Files for: #{ dir }"
140
149
  files = []
141
150
  Dir.foreach(dir) do |node|
142
- next if node.start_with?(".")
143
- files << node if node.end_with?(".rb")
151
+ next if node.start_with?('.')
152
+ files << node if node.end_with?('.rb')
144
153
  if File.directory?("#{ dir }/#{ node }")
145
154
  sub_files = files_for("#{ dir }/#{ node }")
146
155
  sub_files.map! { |f| "#{ node }/#{ f }" }
@@ -157,7 +166,7 @@ rb
157
166
 
158
167
  def upgrade_gemfile(from, to)
159
168
  # gsub " for '
160
- File.open(to, "a") do |f|
169
+ File.open(to, 'a') do |f|
161
170
  unusual_gems(from).each do |gem|
162
171
  f.write(gem)
163
172
  end
@@ -173,10 +182,10 @@ end
173
182
  def unusual_gems(gemfile)
174
183
  old_gems = File.readlines(gemfile)
175
184
  old_gems.select! do |gem|
176
- gem.strip.start_with?("gem") && !COMMON_GEMS.include?(gem.strip)
185
+ gem.strip.start_with?('gem') && !COMMON_GEMS.include?(gem.strip)
177
186
  end
178
- puts "CHECK THE GEM GROUPS!!"
179
- puts "Special gems: "
187
+ puts 'CHECK THE GEM GROUPS!!'
188
+ puts 'Special gems: '
180
189
  old_gems
181
190
  end
182
191
 
@@ -196,22 +205,22 @@ end
196
205
  def app_name
197
206
  @app_name ||= begin
198
207
  lines = File.readlines("#{ @old_name }/config/application.rb")
199
- lines.select! { |l| l.start_with?("module") }
200
- lines.first.gsub("module", "").strip
208
+ lines.select! { |l| l.start_with?('module') }
209
+ lines.first.gsub('module', '').strip
201
210
  end
202
211
  end
203
212
 
204
213
  def copy_common_dirs
205
214
  SOFT_DIR_MAPPINGS.each do |src, dest|
206
- if Dir.exists?("#{ @new_name }/#{ dest }")
215
+ if Dir.exist?("#{ @new_name }/#{ dest }")
207
216
  `cp -rn #{ @old_name }/#{ src }/* #{ @new_name }/#{ dest }/`
208
217
  else
209
218
  `cp -r #{ @old_name }/#{ src } #{ @new_name }`
210
219
  end
211
220
  end
212
221
  HARD_DIR_MAPPINGS.each do |src, dest|
213
- next if src.include?("wrap_parameters")
214
- if Dir.exists?("#{ @new_name }/#{ dest }")
222
+ next if src.include?('wrap_parameters')
223
+ if Dir.exist?("#{ @new_name }/#{ dest }")
215
224
  `cp -r #{ @old_name }/#{ src }/* #{ @new_name }/#{ dest }/`
216
225
  else
217
226
  `cp -r #{ @old_name }/#{ src } #{ @new_name }`
@@ -226,4 +235,3 @@ end
226
235
  end
227
236
  end
228
237
  end
229
-
metadata CHANGED
@@ -1,8 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wize_upgrader
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.5
5
- prerelease:
4
+ version: 0.0.6
6
5
  platform: ruby
7
6
  authors:
8
7
  - CJ Avilla
@@ -18,32 +17,30 @@ executables:
18
17
  extensions: []
19
18
  extra_rdoc_files: []
20
19
  files:
21
- - lib/wize_upgrader.rb
22
20
  - bin/wize_upgrader
21
+ - lib/wize_upgrader.rb
23
22
  homepage: https://github.com/w1zeman1p/wize_upgrader
24
23
  licenses:
25
24
  - MIT
25
+ metadata: {}
26
26
  post_install_message:
27
27
  rdoc_options: []
28
28
  require_paths:
29
29
  - lib
30
30
  required_ruby_version: !ruby/object:Gem::Requirement
31
- none: false
32
31
  requirements:
33
- - - ! '>='
32
+ - - ">="
34
33
  - !ruby/object:Gem::Version
35
34
  version: '0'
36
35
  required_rubygems_version: !ruby/object:Gem::Requirement
37
- none: false
38
36
  requirements:
39
- - - ! '>='
37
+ - - ">="
40
38
  - !ruby/object:Gem::Version
41
39
  version: '0'
42
40
  requirements: []
43
41
  rubyforge_project:
44
- rubygems_version: 1.8.25
42
+ rubygems_version: 2.2.2
45
43
  signing_key:
46
- specification_version: 3
44
+ specification_version: 4
47
45
  summary: Upgrades rails apps from 3.2 to 4
48
46
  test_files: []
49
- has_rdoc: