gem-release 2.0.0.dev.3 → 2.0.0.dev.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/README.md +59 -61
- data/lib/gem/release/cmds/bootstrap.rb +2 -2
- data/lib/gem/release/cmds/bump.rb +12 -5
- data/lib/gem/release/cmds/runner.rb +1 -1
- data/lib/gem/release/context.rb +6 -1
- data/lib/gem/release/support/gem_command.rb +0 -7
- data/lib/gem/release/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c266a1ed9b7d5a3b2f1594b0aa4a14e98faafd87
|
4
|
+
data.tar.gz: ed1b9717bc85dbf71f9adf5d17b389e2a1b26a78
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: cc5fe621e481c9aeae16e3bca40ca475a1c6d3f708c5c4ee4bf225d783e581f7a10b6f235dcf490b6d853174f2a605c1d2da9b9ef65505c0dbf0c807babb2926
|
7
|
+
data.tar.gz: 2db3a96f254bd5bda9ebfd4f6900643de49e9a921e87be4cb4410c96184a20f35d7ac907441dfb2960bf73eb0093594e5345f884f9be249e38b8cd9b29a282b7
|
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -182,13 +182,17 @@ gem_name - name of the gem (optional, will use the directory name, or all gemspe
|
|
182
182
|
### Options
|
183
183
|
|
184
184
|
```
|
185
|
-
-
|
185
|
+
-v, --version VERSION Target version: next [major|minor|patch|pre|release] or a given version number [x.x.x]
|
186
|
+
-c, --[no-]commit Create a commit after incrementing gem version
|
187
|
+
-m, --message Commit message template
|
188
|
+
--skip-ci Add the [skip ci] tag to the commit message
|
186
189
|
-p, --[no-]push Push the new commit to the git remote repository
|
187
190
|
--remote REMOTE Git remote to push to (defaults to origin)
|
188
|
-
-
|
191
|
+
-s, --sign GPG sign the commit message
|
189
192
|
-t, --tag Shortcut for running the `gem tag` command
|
190
193
|
-r, --release Shortcut for the `gem release` command
|
191
194
|
--recurse Recurse into directories that contain gemspec files
|
195
|
+
--file Full path to the version file
|
192
196
|
--pretend
|
193
197
|
```
|
194
198
|
|
@@ -334,11 +338,11 @@ version is `1.0.0`, then The tag is created using the command `git tag
|
|
334
338
|
### Setup
|
335
339
|
|
336
340
|
```
|
337
|
-
export GEM_RELEASE_PUSH=false
|
338
341
|
cd /tmp
|
339
342
|
rm -rf foo
|
340
343
|
gem bootstrap foo
|
341
|
-
|
344
|
+
cd foo
|
345
|
+
tree -a -I .git
|
342
346
|
```
|
343
347
|
|
344
348
|
### Directory structure
|
@@ -358,26 +362,28 @@ tree
|
|
358
362
|
|
359
363
|
```
|
360
364
|
# this bumps foo
|
361
|
-
cd /tmp/foo
|
362
|
-
gem bump
|
365
|
+
cd /tmp/foo; gem bump
|
363
366
|
|
364
367
|
# this also bumps foo
|
365
|
-
cd /tmp/foo
|
366
|
-
gem bump foo
|
368
|
+
cd /tmp/foo; gem bump foo
|
367
369
|
```
|
368
370
|
|
371
|
+
### Demo
|
372
|
+
|
373
|
+

|
374
|
+
|
375
|
+
|
369
376
|
## Scenario 2: Multiple gems in root
|
370
377
|
|
371
378
|
### Setup
|
372
379
|
|
373
380
|
```
|
374
|
-
export GEM_RELEASE_PUSH=false
|
375
381
|
cd /tmp
|
376
|
-
rm -rf foo
|
382
|
+
rm -rf foo bar
|
377
383
|
gem bootstrap foo
|
378
384
|
cd foo
|
379
385
|
gem bootstrap bar --dir .
|
380
|
-
tree
|
386
|
+
tree -a -I .git
|
381
387
|
```
|
382
388
|
|
383
389
|
### Directory structure
|
@@ -401,39 +407,37 @@ tree
|
|
401
407
|
|
402
408
|
```
|
403
409
|
# this bumps both foo and bar
|
404
|
-
cd /tmp/foo
|
405
|
-
gem bump --recurse
|
410
|
+
cd /tmp/foo; gem bump --recurse
|
406
411
|
|
407
412
|
# this also bumps both foo and bar
|
408
|
-
cd /tmp/foo
|
409
|
-
gem bump foo bar
|
413
|
+
cd /tmp/foo; gem bump foo bar
|
410
414
|
|
411
415
|
# this bumps foo (because it's the first gemspec found)
|
412
|
-
cd /tmp/foo
|
413
|
-
gem bump
|
416
|
+
cd /tmp/foo; gem bump
|
414
417
|
|
415
418
|
# this bumps foo
|
416
|
-
cd /tmp/foo
|
417
|
-
gem bump foo
|
419
|
+
cd /tmp/foo; gem bump foo
|
418
420
|
|
419
421
|
# this bumps bar
|
420
|
-
cd /tmp/foo
|
421
|
-
gem bump bar
|
422
|
+
cd /tmp/foo; gem bump bar
|
422
423
|
```
|
423
424
|
|
425
|
+
### Demo
|
426
|
+
|
427
|
+

|
428
|
+
|
424
429
|
## Scenario 3: Multiple gems in sub directories
|
425
430
|
|
426
431
|
### Setup
|
427
432
|
|
428
433
|
```
|
429
|
-
export GEM_RELEASE_PUSH=false
|
430
434
|
cd /tmp
|
431
435
|
rm -rf root
|
432
436
|
mkdir root
|
433
437
|
cd root
|
434
438
|
gem bootstrap foo
|
435
439
|
gem bootstrap bar
|
436
|
-
tree
|
440
|
+
tree -a -I .git
|
437
441
|
```
|
438
442
|
|
439
443
|
### Directory structure
|
@@ -462,32 +466,31 @@ tree
|
|
462
466
|
|
463
467
|
```
|
464
468
|
# this bumps both foo and bar
|
465
|
-
cd /tmp/root
|
466
|
-
gem bump --recurse
|
469
|
+
cd /tmp/root; gem bump --recurse
|
467
470
|
|
468
471
|
# this also bumps both foo and bar
|
469
|
-
cd /tmp/root
|
470
|
-
gem bump foo bar
|
472
|
+
cd /tmp/root; gem bump foo bar
|
471
473
|
|
472
474
|
# this does bumps both foo and bar
|
473
|
-
cd /tmp/root
|
474
|
-
gem bump
|
475
|
+
cd /tmp/root; gem bump
|
475
476
|
|
476
477
|
# this bumps foo
|
477
|
-
cd /tmp/root
|
478
|
-
gem bump foo
|
478
|
+
cd /tmp/root; gem bump foo
|
479
479
|
|
480
480
|
# this bumps bar
|
481
|
-
cd /tmp/root
|
482
|
-
gem bump bar
|
481
|
+
cd /tmp/root; gem bump bar
|
483
482
|
```
|
484
483
|
|
484
|
+
### Demo
|
485
|
+
|
486
|
+

|
487
|
+
|
488
|
+
|
485
489
|
## Scenario 4: Nested gem with a conventional sub directory name
|
486
490
|
|
487
491
|
### Setup
|
488
492
|
|
489
493
|
```
|
490
|
-
export GEM_RELEASE_PUSH=false
|
491
494
|
cd /tmp
|
492
495
|
rm -rf sinja
|
493
496
|
gem bootstrap sinja
|
@@ -496,7 +499,7 @@ mkdir extensions
|
|
496
499
|
cd extensions
|
497
500
|
gem bootstrap sinja-sequel
|
498
501
|
cd /tmp/sinja
|
499
|
-
tree
|
502
|
+
tree -a -I .git
|
500
503
|
```
|
501
504
|
|
502
505
|
### Directory structure
|
@@ -526,36 +529,33 @@ tree
|
|
526
529
|
|
527
530
|
```
|
528
531
|
# this bumps both sinja and sinja-sequel
|
529
|
-
cd /tmp/sinja
|
530
|
-
gem bump --recurse
|
532
|
+
cd /tmp/sinja; gem bump --recurse
|
531
533
|
|
532
534
|
# this bumps sinja
|
533
|
-
cd /tmp/sinja
|
534
|
-
gem bump
|
535
|
+
cd /tmp/sinja; gem bump
|
535
536
|
|
536
537
|
# this also bumps sinja
|
537
|
-
cd /tmp/sinja
|
538
|
-
gem bump sinja
|
538
|
+
cd /tmp/sinja; gem bump sinja
|
539
539
|
|
540
540
|
# this bumps sinja-sequel
|
541
|
-
cd /tmp/sinja
|
542
|
-
gem bump sinja-sequel
|
541
|
+
cd /tmp/sinja; gem bump sinja-sequel
|
543
542
|
|
544
543
|
# this also bumps sinja-sequel
|
545
|
-
cd /tmp/sinja/extensions/sinja-sequel
|
546
|
-
gem bump
|
544
|
+
cd /tmp/sinja/extensions/sinja-sequel; gem bump
|
547
545
|
|
548
546
|
# this also bumps sinja-sequel
|
549
|
-
cd /tmp/sinja/extensions/sinja-sequel
|
550
|
-
gem bump sinja-sequel
|
547
|
+
cd /tmp/sinja/extensions/sinja-sequel; gem bump sinja-sequel
|
551
548
|
```
|
552
549
|
|
550
|
+
### Demo
|
551
|
+
|
552
|
+

|
553
|
+
|
553
554
|
## Scenario 5: Nested gem with an irregular sub directory name
|
554
555
|
|
555
556
|
### Setup
|
556
557
|
|
557
558
|
```
|
558
|
-
export GEM_RELEASE_PUSH=false
|
559
559
|
cd /tmp
|
560
560
|
rm -rf sinja
|
561
561
|
gem bootstrap sinja
|
@@ -565,7 +565,7 @@ cd extensions
|
|
565
565
|
gem bootstrap sinja-sequel
|
566
566
|
mv sinja-sequel sequel
|
567
567
|
cd /tmp/sinja
|
568
|
-
tree
|
568
|
+
tree -a -I .git
|
569
569
|
```
|
570
570
|
|
571
571
|
### Directory structure
|
@@ -595,30 +595,28 @@ tree
|
|
595
595
|
|
596
596
|
```
|
597
597
|
# this bumps both sinja and sinja-sequel
|
598
|
-
cd /tmp/sinja
|
599
|
-
gem bump --recurse
|
598
|
+
cd /tmp/sinja; gem bump --recurse
|
600
599
|
|
601
600
|
# this bumps sinja
|
602
|
-
cd /tmp/sinja
|
603
|
-
gem bump
|
601
|
+
cd /tmp/sinja; gem bump
|
604
602
|
|
605
603
|
# this also bumps sinja
|
606
|
-
cd /tmp/sinja
|
607
|
-
gem bump sinja
|
604
|
+
cd /tmp/sinja; gem bump sinja
|
608
605
|
|
609
606
|
# this bumps sinja-sequel only
|
610
|
-
cd /tmp/sinja
|
611
|
-
gem bump sinja-sequel
|
607
|
+
cd /tmp/sinja; gem bump sinja-sequel
|
612
608
|
|
613
609
|
# this also bumps sinja-sequel only
|
614
|
-
cd /tmp/sinja/extensions/sequel
|
615
|
-
gem bump
|
610
|
+
cd /tmp/sinja/extensions/sequel; gem bump
|
616
611
|
|
617
612
|
# this also bumps sinja-sequel only
|
618
|
-
cd /tmp/sinja/extensions/sequel
|
619
|
-
gem bump sinja-sequel
|
613
|
+
cd /tmp/sinja/extensions/sequel; gem bump sinja-sequel
|
620
614
|
```
|
621
615
|
|
616
|
+
### Demo
|
617
|
+
|
618
|
+

|
619
|
+
|
622
620
|
|
623
621
|
# Development
|
624
622
|
|
@@ -95,11 +95,11 @@ module Gem
|
|
95
95
|
end
|
96
96
|
|
97
97
|
opt '--rspec', DESCR[:rspec] do |value|
|
98
|
-
(opts[:templates] ||= []) <<
|
98
|
+
(opts[:templates] ||= []) << :rspec
|
99
99
|
end
|
100
100
|
|
101
101
|
opt '--travis', DESCR[:travis] do |value|
|
102
|
-
(opts[:templates] ||= []) <<
|
102
|
+
(opts[:templates] ||= []) << :travis
|
103
103
|
end
|
104
104
|
|
105
105
|
opt '-l', '--no-license NAME', DESCR[:license] do |value|
|
@@ -45,6 +45,7 @@ module Gem
|
|
45
45
|
version: 'Target version: next [major|minor|patch|pre|release] or a given version number [x.x.x]',
|
46
46
|
commit: 'Create a commit after incrementing gem version',
|
47
47
|
message: 'Commit message template',
|
48
|
+
skip_ci: 'Add the [skip ci] tag to the commit message',
|
48
49
|
push: 'Push the new commit to the git remote repository',
|
49
50
|
remote: 'Git remote to push to (defaults to origin)',
|
50
51
|
sign: 'GPG sign the commit message',
|
@@ -56,7 +57,7 @@ module Gem
|
|
56
57
|
|
57
58
|
DEFAULTS = {
|
58
59
|
commit: true,
|
59
|
-
message: 'Bump to %{to}
|
60
|
+
message: 'Bump to %{to} %{skip_ci}',
|
60
61
|
push: false,
|
61
62
|
remote: 'origin'
|
62
63
|
}
|
@@ -65,12 +66,16 @@ module Gem
|
|
65
66
|
opts[:version] = value
|
66
67
|
end
|
67
68
|
|
69
|
+
opt '-c', '--[no-]commit', DESCR[:commit] do |value|
|
70
|
+
opts[:commit] = value
|
71
|
+
end
|
72
|
+
|
68
73
|
opt '-m', '--message', DESCR[:message] do |value|
|
69
74
|
opts[:message] = value
|
70
75
|
end
|
71
76
|
|
72
|
-
opt '
|
73
|
-
opts[:
|
77
|
+
opt '--skip-ci', DESCR[:skip_ci] do |value|
|
78
|
+
opts[:skip_ci] = value
|
74
79
|
end
|
75
80
|
|
76
81
|
opt '-p', '--[no-]push', DESCR[:push] do |value|
|
@@ -147,7 +152,7 @@ module Gem
|
|
147
152
|
|
148
153
|
def commit
|
149
154
|
cmd :git_add, version.path
|
150
|
-
cmd :git_commit, message, opts[:sign] ? '-S' : ''
|
155
|
+
cmd :git_commit, message.strip, opts[:sign] ? '-S' : ''
|
151
156
|
end
|
152
157
|
|
153
158
|
def push
|
@@ -167,7 +172,9 @@ module Gem
|
|
167
172
|
end
|
168
173
|
|
169
174
|
def message
|
170
|
-
|
175
|
+
args = version.to_h
|
176
|
+
args = args.merge(skip_ci: opts[:skip_ci] ? '[skip ci]' : '')
|
177
|
+
opts[:message] % args
|
171
178
|
end
|
172
179
|
|
173
180
|
def version
|
data/lib/gem/release/context.rb
CHANGED
@@ -46,6 +46,11 @@ module Gem
|
|
46
46
|
puts colored(:red, with_spacing(str, true))
|
47
47
|
end
|
48
48
|
|
49
|
+
def success(str)
|
50
|
+
announce(str)
|
51
|
+
puts
|
52
|
+
end
|
53
|
+
|
49
54
|
def abort(str)
|
50
55
|
error(str)
|
51
56
|
exit 1
|
@@ -66,7 +71,7 @@ module Gem
|
|
66
71
|
end
|
67
72
|
|
68
73
|
def with_spacing(str, space)
|
69
|
-
space = false if self.class.last.nil?
|
74
|
+
# space = false if self.class.last.nil?
|
70
75
|
str = "\n#{str}" if space && !self.class.last
|
71
76
|
self.class.last = space
|
72
77
|
str
|
data/lib/gem/release/version.rb
CHANGED