jeweler 2.1.1 → 2.1.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.semver +1 -1
- data/.travis.yml +5 -1
- data/ChangeLog.markdown +4 -0
- data/Gemfile +23 -23
- data/Gemfile.lock +142 -0
- data/Gemfile.orig +54 -0
- data/README.markdown +3 -0
- data/Rakefile +13 -14
- data/Rakefile.orig +88 -0
- data/features/generator/test.feature +2 -2
- data/features/step_definitions/debug_steps.rb +0 -1
- data/features/step_definitions/filesystem_steps.rb +2 -3
- data/features/step_definitions/generator_steps.rb +44 -64
- data/features/step_definitions/task_steps.rb +1 -2
- data/features/support/env.rb +21 -7
- data/jeweler.gemspec +11 -6
- data/jeweler.gemspec.orig +464 -0
- data/lib/jeweler.rb +18 -19
- data/lib/jeweler/commands/build_gem.rb +2 -2
- data/lib/jeweler/commands/check_dependencies.rb +3 -3
- data/lib/jeweler/commands/install_gem.rb +1 -1
- data/lib/jeweler/commands/release_gemspec.rb +8 -10
- data/lib/jeweler/commands/release_to_git.rb +9 -5
- data/lib/jeweler/commands/validate_gemspec.rb +5 -7
- data/lib/jeweler/commands/version/base.rb +8 -13
- data/lib/jeweler/commands/version/bump_major.rb +1 -3
- data/lib/jeweler/commands/version/bump_minor.rb +1 -2
- data/lib/jeweler/commands/version/bump_patch.rb +1 -4
- data/lib/jeweler/commands/write_gemspec.rb +4 -3
- data/lib/jeweler/gemspec_helper.rb +15 -15
- data/lib/jeweler/gemspec_helper.rb.orig +91 -0
- data/lib/jeweler/generator.rb +39 -41
- data/lib/jeweler/generator/application.rb +5 -7
- data/lib/jeweler/generator/bacon_mixin.rb +2 -4
- data/lib/jeweler/generator/github_mixin.rb +1 -3
- data/lib/jeweler/generator/micronaut_mixin.rb +3 -3
- data/lib/jeweler/generator/minitest_mixin.rb +2 -3
- data/lib/jeweler/generator/options.rb +15 -19
- data/lib/jeweler/generator/rdoc_mixin.rb +1 -1
- data/lib/jeweler/generator/riot_mixin.rb +2 -3
- data/lib/jeweler/generator/rspec_mixin.rb +2 -3
- data/lib/jeweler/generator/shindo_mixin.rb +2 -3
- data/lib/jeweler/generator/shoulda_mixin.rb +2 -3
- data/lib/jeweler/generator/testspec_mixin.rb +2 -3
- data/lib/jeweler/generator/testunit_mixin.rb +1 -3
- data/lib/jeweler/generator/yard_mixin.rb +3 -4
- data/lib/jeweler/rubyforge_tasks.rb +13 -13
- data/lib/jeweler/rubygems_dot_org_tasks.rb +3 -3
- data/lib/jeweler/rubygems_tasks.rb +3 -3
- data/lib/jeweler/specification.rb +22 -11
- data/lib/jeweler/tasks.rb +57 -57
- data/lib/jeweler/templates/bacon/flunking.rb +3 -3
- data/lib/jeweler/templates/micronaut/flunking.rb +3 -3
- data/lib/jeweler/templates/minitest/flunking.rb +1 -1
- data/lib/jeweler/templates/minitest/helper.rb +3 -3
- data/lib/jeweler/templates/riot/flunking.rb +1 -1
- data/lib/jeweler/templates/rspec/flunking.rb +3 -3
- data/lib/jeweler/templates/shindo/flunking.rb +3 -3
- data/lib/jeweler/templates/testspec/flunking.rb +3 -3
- data/lib/jeweler/version_helper.rb +18 -15
- data/test/fixtures/bar/lib/foo_the_ultimate_lib.rb +1 -1
- data/test/fixtures/existing-project-with-version-constant/Rakefile +18 -20
- data/test/fixtures/existing-project-with-version-constant/existing-project-with-version.gemspec +15 -17
- data/test/fixtures/existing-project-with-version-constant/test/existing_project_with_version_test.rb +2 -2
- data/test/fixtures/existing-project-with-version-plaintext/Rakefile +17 -19
- data/test/fixtures/existing-project-with-version-plaintext/existing-project-with-version.gemspec +15 -17
- data/test/fixtures/existing-project-with-version-plaintext/test/existing_project_with_version_test.rb +2 -2
- data/test/fixtures/existing-project-with-version-yaml/Rakefile +17 -19
- data/test/fixtures/existing-project-with-version-yaml/existing-project-with-version.gemspec +15 -17
- data/test/fixtures/existing-project-with-version-yaml/test/existing_project_with_version_test.rb +2 -2
- data/test/jeweler/commands/test_build_gem.rb +25 -28
- data/test/jeweler/commands/test_install_gem.rb +7 -7
- data/test/jeweler/commands/test_release_to_gemcutter.rb +6 -7
- data/test/jeweler/commands/test_release_to_git.rb +52 -57
- data/test/jeweler/commands/test_release_to_github.rb +112 -119
- data/test/jeweler/commands/test_validate_gemspec.rb +4 -6
- data/test/jeweler/commands/test_write_gemspec.rb +21 -24
- data/test/jeweler/commands/version/test_base.rb +9 -10
- data/test/jeweler/commands/version/test_bump_major.rb +1 -5
- data/test/jeweler/commands/version/test_bump_minor.rb +1 -2
- data/test/jeweler/commands/version/test_bump_patch.rb +1 -3
- data/test/jeweler/commands/version/test_write.rb +1 -3
- data/test/jeweler/generator/test_application.rb +22 -26
- data/test/jeweler/generator/test_options.rb +26 -27
- data/test/jeweler/test_gemspec_helper.rb +7 -7
- data/test/jeweler/test_generator.rb +31 -32
- data/test/jeweler/test_generator_initialization.rb +40 -43
- data/test/jeweler/test_generator_mixins.rb +6 -7
- data/test/jeweler/test_specification.rb +36 -43
- data/test/jeweler/test_tasks.rb +2 -3
- data/test/jeweler/test_version_helper.rb +33 -35
- data/test/shoulda_macros/jeweler_macros.rb +5 -5
- data/test/test_helper.rb +23 -25
- data/test/test_jeweler.rb +22 -25
- metadata +11 -6
data/lib/jeweler/generator.rb
CHANGED
@@ -23,12 +23,12 @@ class Jeweler
|
|
23
23
|
class NoGitHubUser < StandardError
|
24
24
|
end
|
25
25
|
class GitInitFailed < StandardError
|
26
|
-
end
|
26
|
+
end
|
27
27
|
class GitRepoCreationFailed < StandardError
|
28
28
|
end
|
29
29
|
|
30
30
|
# Generator for creating a jeweler-enabled project
|
31
|
-
class Generator
|
31
|
+
class Generator
|
32
32
|
require 'jeweler/generator/options'
|
33
33
|
require 'jeweler/generator/application'
|
34
34
|
|
@@ -49,7 +49,7 @@ class Jeweler
|
|
49
49
|
|
50
50
|
attr_accessor :target_dir, :user_name, :user_email, :summary, :homepage,
|
51
51
|
:description, :project_name, :github_username,
|
52
|
-
:repo, :should_create_remote_repo,
|
52
|
+
:repo, :should_create_remote_repo,
|
53
53
|
:testing_framework, :documentation_framework,
|
54
54
|
:should_use_cucumber, :should_use_bundler,
|
55
55
|
:should_setup_rubyforge, :should_use_reek, :should_use_roodi,
|
@@ -62,10 +62,10 @@ class Jeweler
|
|
62
62
|
extracted_directory = nil
|
63
63
|
|
64
64
|
self.project_name = options[:project_name]
|
65
|
-
if
|
65
|
+
if project_name.nil? || project_name.squeeze.strip == ''
|
66
66
|
raise NoGitHubRepoNameGiven
|
67
67
|
else
|
68
|
-
path = File.split(
|
68
|
+
path = File.split(project_name)
|
69
69
|
|
70
70
|
if path.size > 1
|
71
71
|
extracted_directory = File.join(path[0..-1])
|
@@ -74,10 +74,10 @@ class Jeweler
|
|
74
74
|
end
|
75
75
|
|
76
76
|
self.development_dependencies = []
|
77
|
-
self.testing_framework
|
77
|
+
self.testing_framework = options[:testing_framework]
|
78
78
|
self.documentation_framework = options[:documentation_framework]
|
79
79
|
begin
|
80
|
-
generator_mixin_name = "#{
|
80
|
+
generator_mixin_name = "#{testing_framework.to_s.capitalize}Mixin"
|
81
81
|
generator_mixin = self.class.const_get(generator_mixin_name)
|
82
82
|
extend generator_mixin
|
83
83
|
rescue NameError => e
|
@@ -85,14 +85,14 @@ class Jeweler
|
|
85
85
|
end
|
86
86
|
|
87
87
|
begin
|
88
|
-
generator_mixin_name = "#{
|
88
|
+
generator_mixin_name = "#{documentation_framework.to_s.capitalize}Mixin"
|
89
89
|
generator_mixin = self.class.const_get(generator_mixin_name)
|
90
90
|
extend generator_mixin
|
91
91
|
rescue NameError => e
|
92
92
|
raise ArgumentError, "Unsupported documentation framework (#{documentation_framework})"
|
93
93
|
end
|
94
94
|
|
95
|
-
self.target_dir = options[:directory] || extracted_directory ||
|
95
|
+
self.target_dir = options[:directory] || extracted_directory || project_name
|
96
96
|
|
97
97
|
self.summary = options[:summary] || 'TODO: one-line summary of your gem'
|
98
98
|
self.description = options[:description] || 'TODO: longer description of your gem'
|
@@ -102,24 +102,24 @@ class Jeweler
|
|
102
102
|
self.should_setup_rubyforge = options[:rubyforge]
|
103
103
|
self.should_use_bundler = options[:use_bundler]
|
104
104
|
|
105
|
-
development_dependencies << [
|
105
|
+
development_dependencies << ['cucumber', '>= 0'] if should_use_cucumber
|
106
106
|
|
107
|
-
# TODO make bundler optional?
|
108
|
-
development_dependencies << [
|
109
|
-
development_dependencies << [
|
110
|
-
development_dependencies << [
|
107
|
+
# TODO: make bundler optional?
|
108
|
+
development_dependencies << ['bundler', '~> 1.0']
|
109
|
+
development_dependencies << ['jeweler', "~> #{Jeweler::Version::STRING}"]
|
110
|
+
development_dependencies << ['simplecov', '>= 0']
|
111
111
|
|
112
|
-
development_dependencies << [
|
113
|
-
development_dependencies << [
|
112
|
+
development_dependencies << ['reek', '~> 1.2.8'] if should_use_reek
|
113
|
+
development_dependencies << ['roodi', '~> 2.1.0'] if should_use_roodi
|
114
114
|
|
115
115
|
self.user_name = options[:user_name]
|
116
116
|
self.user_email = options[:user_email]
|
117
117
|
self.homepage = options[:homepage]
|
118
|
-
|
118
|
+
|
119
119
|
self.git_remote = options[:git_remote]
|
120
120
|
|
121
|
-
raise NoGitUserName unless
|
122
|
-
raise NoGitUserEmail unless
|
121
|
+
raise NoGitUserName unless user_name
|
122
|
+
raise NoGitUserEmail unless user_email
|
123
123
|
|
124
124
|
extend GithubMixin
|
125
125
|
end
|
@@ -135,7 +135,7 @@ class Jeweler
|
|
135
135
|
end
|
136
136
|
|
137
137
|
def constant_name
|
138
|
-
|
138
|
+
project_name.split(/[-_]/).collect(&:capitalize).join
|
139
139
|
end
|
140
140
|
|
141
141
|
def lib_filename
|
@@ -143,11 +143,11 @@ class Jeweler
|
|
143
143
|
end
|
144
144
|
|
145
145
|
def require_name
|
146
|
-
|
146
|
+
project_name
|
147
147
|
end
|
148
148
|
|
149
149
|
def file_name_prefix
|
150
|
-
|
150
|
+
project_name.tr('-', '_')
|
151
151
|
end
|
152
152
|
|
153
153
|
def lib_dir
|
@@ -174,16 +174,15 @@ class Jeweler
|
|
174
174
|
File.join(features_dir, 'step_definitions')
|
175
175
|
end
|
176
176
|
|
177
|
-
|
177
|
+
private
|
178
178
|
|
179
179
|
def create_files
|
180
|
-
|
181
|
-
FileUtils.mkdir target_dir
|
182
|
-
else
|
180
|
+
if File.exist?(target_dir) || File.directory?(target_dir)
|
183
181
|
raise FileInTheWay, "The directory #{target_dir} already exists, aborting. Maybe move it out of the way before continuing?"
|
182
|
+
else
|
183
|
+
FileUtils.mkdir target_dir
|
184
184
|
end
|
185
185
|
|
186
|
-
|
187
186
|
output_template_in_target '.gitignore'
|
188
187
|
output_template_in_target 'Rakefile'
|
189
188
|
output_template_in_target 'Gemfile' if should_use_bundler
|
@@ -200,7 +199,6 @@ class Jeweler
|
|
200
199
|
output_template_in_target File.join(testing_framework.to_s, 'flunking.rb'),
|
201
200
|
File.join(test_dir, test_filename)
|
202
201
|
|
203
|
-
|
204
202
|
if testing_framework == :rspec
|
205
203
|
output_template_in_target File.join(testing_framework.to_s, '.rspec'),
|
206
204
|
'.rspec'
|
@@ -231,7 +229,7 @@ class Jeweler
|
|
231
229
|
final_destination = File.join(target_dir, destination)
|
232
230
|
template_result = render_template(source)
|
233
231
|
|
234
|
-
File.open(final_destination, 'w') {|file| file.write(template_result)}
|
232
|
+
File.open(final_destination, 'w') { |file| file.write(template_result) }
|
235
233
|
|
236
234
|
$stdout.puts "\tcreate\t#{destination}"
|
237
235
|
end
|
@@ -250,22 +248,22 @@ class Jeweler
|
|
250
248
|
|
251
249
|
def touch_in_target(destination)
|
252
250
|
final_destination = File.join(target_dir, destination)
|
253
|
-
FileUtils.touch
|
251
|
+
FileUtils.touch final_destination
|
254
252
|
$stdout.puts "\tcreate\t#{destination}"
|
255
253
|
end
|
256
254
|
|
257
255
|
def create_version_control
|
258
256
|
Dir.chdir(target_dir) do
|
259
257
|
begin
|
260
|
-
@repo = Git.init
|
258
|
+
@repo = Git.init
|
261
259
|
rescue Git::GitExecuteError => e
|
262
|
-
raise GitInitFailed,
|
260
|
+
raise GitInitFailed, 'Encountered an error during gitification. Maybe the repo already exists, or has already been pushed to?'
|
263
261
|
end
|
264
262
|
|
265
263
|
begin
|
266
264
|
@repo.add('.')
|
267
265
|
rescue Git::GitExecuteError => e
|
268
|
-
#raise GitAddFailed, "There was some problem adding this directory to the git changeset"
|
266
|
+
# raise GitAddFailed, "There was some problem adding this directory to the git changeset"
|
269
267
|
raise
|
270
268
|
end
|
271
269
|
|
@@ -278,26 +276,26 @@ class Jeweler
|
|
278
276
|
begin
|
279
277
|
@repo.add_remote('origin', git_remote)
|
280
278
|
rescue Git::GitExecuteError => e
|
281
|
-
puts
|
279
|
+
puts 'Encountered an error while adding origin remote. Maybe you have some weird settings in ~/.gitconfig?'
|
282
280
|
raise
|
283
281
|
end
|
284
282
|
end
|
285
283
|
end
|
286
|
-
|
284
|
+
|
287
285
|
def create_and_push_repo
|
288
|
-
puts
|
286
|
+
puts 'Please provide your Github password to create the Github repository'
|
289
287
|
begin
|
290
288
|
login = github_username
|
291
|
-
password = ask(
|
292
|
-
github = Github.new(:
|
293
|
-
github.repos.create(:
|
289
|
+
password = ask('Password: ') { |q| q.echo = false }
|
290
|
+
github = Github.new(login: login.strip, password: password.strip)
|
291
|
+
github.repos.create(name: project_name, description: summary)
|
294
292
|
rescue Github::Error::Unauthorized
|
295
|
-
puts
|
293
|
+
puts 'Wrong login/password! Please try again'
|
296
294
|
retry
|
297
295
|
rescue Github::Error::UnprocessableEntity
|
298
296
|
raise GitRepoCreationFailed, "Can't create that repo. Does it already exist?"
|
299
297
|
end
|
300
|
-
# TODO do a HEAD request to see when it's ready?
|
298
|
+
# TODO: do a HEAD request to see when it's ready?
|
301
299
|
@repo.push('origin')
|
302
300
|
end
|
303
301
|
end
|
@@ -24,7 +24,7 @@ class Jeweler
|
|
24
24
|
return 1
|
25
25
|
end
|
26
26
|
|
27
|
-
if options[:project_name].nil? || options[:project_name].squeeze.strip ==
|
27
|
+
if options[:project_name].nil? || options[:project_name].squeeze.strip == ''
|
28
28
|
$stderr.puts options.opts
|
29
29
|
return 1
|
30
30
|
end
|
@@ -34,13 +34,13 @@ class Jeweler
|
|
34
34
|
generator.run
|
35
35
|
return 0
|
36
36
|
rescue Jeweler::NoGitUserName
|
37
|
-
$stderr.puts %
|
37
|
+
$stderr.puts %{No user.name found in ~/.gitconfig. Please tell git about yourself (see http://help.github.com/git-email-settings/ for details). For example: git config --global user.name "mad voo"}
|
38
38
|
return 1
|
39
39
|
rescue Jeweler::NoGitUserEmail
|
40
|
-
$stderr.puts %
|
40
|
+
$stderr.puts %{No user.email found in ~/.gitconfig. Please tell git about yourself (see http://help.github.com/git-email-settings/ for details). For example: git config --global user.email mad.vooo@gmail.com}
|
41
41
|
return 1
|
42
42
|
rescue Jeweler::NoGitHubUser
|
43
|
-
$stderr.puts %
|
43
|
+
$stderr.puts %{Please specify --github-username or set github.user in ~/.gitconfig (see http://github.com/blog/180-local-github-config for details). For example: git config --global github.user defunkt}
|
44
44
|
return 1
|
45
45
|
rescue Jeweler::FileInTheWay
|
46
46
|
$stderr.puts "The directory #{options[:project_name]} already exists. Maybe move it out of the way before continuing?"
|
@@ -49,15 +49,13 @@ class Jeweler
|
|
49
49
|
end
|
50
50
|
|
51
51
|
def build_options(arguments)
|
52
|
-
env_opts_string = ENV['JEWELER_OPTS'] ||
|
52
|
+
env_opts_string = ENV['JEWELER_OPTS'] || ''
|
53
53
|
env_opts = Jeweler::Generator::Options.new(shellwords(env_opts_string))
|
54
54
|
argument_opts = Jeweler::Generator::Options.new(arguments)
|
55
55
|
|
56
56
|
env_opts.merge(argument_opts)
|
57
57
|
end
|
58
|
-
|
59
58
|
end
|
60
|
-
|
61
59
|
end
|
62
60
|
end
|
63
61
|
end
|
@@ -1,9 +1,8 @@
|
|
1
1
|
class Jeweler
|
2
2
|
class Generator
|
3
3
|
module BaconMixin
|
4
|
-
|
5
4
|
def self.extended(generator)
|
6
|
-
generator.development_dependencies << [
|
5
|
+
generator.development_dependencies << ['bacon', '>= 0']
|
7
6
|
end
|
8
7
|
|
9
8
|
def default_task
|
@@ -35,9 +34,8 @@ class Jeweler
|
|
35
34
|
end
|
36
35
|
|
37
36
|
def test_helper_filename
|
38
|
-
|
37
|
+
'spec_helper.rb'
|
39
38
|
end
|
40
|
-
|
41
39
|
end
|
42
40
|
end
|
43
41
|
end
|
@@ -5,9 +5,7 @@ class Jeweler
|
|
5
5
|
generator.github_username = generator.options[:github_username]
|
6
6
|
generator.should_create_remote_repo = generator.options[:create_repo]
|
7
7
|
|
8
|
-
unless generator.github_username
|
9
|
-
raise NoGitHubUser
|
10
|
-
end
|
8
|
+
raise NoGitHubUser unless generator.github_username
|
11
9
|
end
|
12
10
|
|
13
11
|
def git_remote
|
@@ -2,9 +2,9 @@ class Jeweler
|
|
2
2
|
class Generator
|
3
3
|
module MicronautMixin
|
4
4
|
def self.extended(generator)
|
5
|
-
generator.development_dependencies << [
|
5
|
+
generator.development_dependencies << ['spicycode-micronaut', '>= 0']
|
6
6
|
end
|
7
|
-
|
7
|
+
|
8
8
|
def default_task
|
9
9
|
'examples'
|
10
10
|
end
|
@@ -34,7 +34,7 @@ class Jeweler
|
|
34
34
|
end
|
35
35
|
|
36
36
|
def test_helper_filename
|
37
|
-
|
37
|
+
'example_helper.rb'
|
38
38
|
end
|
39
39
|
end
|
40
40
|
end
|
@@ -2,7 +2,7 @@ class Jeweler
|
|
2
2
|
class Generator
|
3
3
|
module MinitestMixin
|
4
4
|
def self.extended(generator)
|
5
|
-
generator.development_dependencies << [
|
5
|
+
generator.development_dependencies << ['minitest', '>= 0']
|
6
6
|
end
|
7
7
|
|
8
8
|
def default_task
|
@@ -34,9 +34,8 @@ class Jeweler
|
|
34
34
|
end
|
35
35
|
|
36
36
|
def test_helper_filename
|
37
|
-
|
37
|
+
'helper.rb'
|
38
38
|
end
|
39
|
-
|
40
39
|
end
|
41
40
|
end
|
42
41
|
end
|
@@ -17,14 +17,14 @@ class Jeweler
|
|
17
17
|
|
18
18
|
require 'optparse'
|
19
19
|
@opts = OptionParser.new do |o|
|
20
|
-
o.banner = "Usage: #{File.basename($
|
20
|
+
o.banner = "Usage: #{File.basename($PROGRAM_NAME)} [options] reponame\ne.g. #{File.basename($PROGRAM_NAME)} the-perfect-gem"
|
21
21
|
|
22
22
|
o.on('--directory [DIRECTORY]', 'specify the directory to generate into (deprecated)') do |directory|
|
23
|
-
warn
|
23
|
+
warn '--directory is deprecated and will be removed in 2.0.0. Please specify an absolute path to a directory as the last argument instead' # DEPRECATE
|
24
24
|
self[:directory] = directory
|
25
25
|
end
|
26
26
|
|
27
|
-
o.separator
|
27
|
+
o.separator ''
|
28
28
|
|
29
29
|
o.on('--rspec', 'generate rspec code examples') do
|
30
30
|
self[:testing_framework] = :rspec
|
@@ -62,7 +62,7 @@ class Jeweler
|
|
62
62
|
self[:testing_framework] = :shindo
|
63
63
|
end
|
64
64
|
|
65
|
-
o.separator
|
65
|
+
o.separator ''
|
66
66
|
|
67
67
|
o.on('--[no-]bundler', 'use bundler for managing dependencies') do |v|
|
68
68
|
self[:use_bundler] = v
|
@@ -72,7 +72,7 @@ class Jeweler
|
|
72
72
|
self[:use_cucumber] = true
|
73
73
|
end
|
74
74
|
|
75
|
-
o.separator
|
75
|
+
o.separator ''
|
76
76
|
|
77
77
|
o.on('--reek', 'generate rake task for reek') do
|
78
78
|
self[:use_reek] = true
|
@@ -82,7 +82,7 @@ class Jeweler
|
|
82
82
|
self[:use_roodi] = true
|
83
83
|
end
|
84
84
|
|
85
|
-
o.separator
|
85
|
+
o.separator ''
|
86
86
|
|
87
87
|
o.on('--summary [SUMMARY]', 'specify the summary of the project') do |summary|
|
88
88
|
self[:summary] = summary
|
@@ -92,7 +92,7 @@ class Jeweler
|
|
92
92
|
self[:description] = description
|
93
93
|
end
|
94
94
|
|
95
|
-
o.separator
|
95
|
+
o.separator ''
|
96
96
|
|
97
97
|
o.on('--user-name [USER_NAME]', "the user's name, ie that is credited in the LICENSE") do |user_name|
|
98
98
|
self[:user_name] = user_name
|
@@ -102,9 +102,9 @@ class Jeweler
|
|
102
102
|
self[:user_email] = user_email
|
103
103
|
end
|
104
104
|
|
105
|
-
o.separator
|
105
|
+
o.separator ''
|
106
106
|
|
107
|
-
o.on('--github-username [GITHUB_USERNAME]',
|
107
|
+
o.on('--github-username [GITHUB_USERNAME]', 'name of the user on GitHub to set the project up under') do |github_username|
|
108
108
|
self[:github_username] = github_username
|
109
109
|
end
|
110
110
|
|
@@ -112,7 +112,7 @@ class Jeweler
|
|
112
112
|
self[:git_remote] = git_remote
|
113
113
|
end
|
114
114
|
|
115
|
-
o.on('--homepage [HOMEPAGE]',
|
115
|
+
o.on('--homepage [HOMEPAGE]', 'the homepage for your project (defaults to the GitHub repo)') do |homepage|
|
116
116
|
self[:homepage] = homepage
|
117
117
|
end
|
118
118
|
|
@@ -120,8 +120,7 @@ class Jeweler
|
|
120
120
|
self[:create_repo] = true
|
121
121
|
end
|
122
122
|
|
123
|
-
|
124
|
-
o.separator ""
|
123
|
+
o.separator ''
|
125
124
|
|
126
125
|
o.on('--yard', 'use yard for documentation') do
|
127
126
|
self[:documentation_framework] = :yard
|
@@ -152,21 +151,18 @@ class Jeweler
|
|
152
151
|
self.class.new(@orig_args + other.orig_args)
|
153
152
|
end
|
154
153
|
|
155
|
-
|
156
154
|
# Expose git config here, so we can stub it out for test environments
|
157
155
|
def self.git_config
|
158
|
-
@git_config
|
159
|
-
|
160
|
-
|
161
|
-
|
156
|
+
@git_config ||= if Pathname.new('~/.gitconfig').expand_path.exist?
|
157
|
+
Git.global_config
|
158
|
+
else
|
159
|
+
{}
|
162
160
|
end
|
163
|
-
|
164
161
|
end
|
165
162
|
|
166
163
|
def git_config
|
167
164
|
self.class.git_config
|
168
165
|
end
|
169
|
-
|
170
166
|
end
|
171
167
|
end
|
172
168
|
end
|