milestoner 4.0.0 → 4.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -0
- data/bin/milestoner +1 -1
- data/lib/milestoner.rb +3 -1
- data/lib/milestoner/cli.rb +20 -14
- data/lib/milestoner/git/config.rb +30 -0
- data/lib/milestoner/git/kit.rb +20 -0
- data/lib/milestoner/identity.rb +1 -1
- data/lib/milestoner/pusher.rb +1 -1
- data/lib/milestoner/tagger.rb +1 -1
- data/lib/tasks/reek.rake +8 -0
- metadata +41 -11
- metadata.gz.sig +0 -0
- data/lib/milestoner/git.rb +0 -18
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 85a7f734aae088512876d9b105effac0a4d2efbb
|
4
|
+
data.tar.gz: 079fda114d2e4387968720a2af157f97ac5afc78
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0421316c25c9b1f09ce4f1850b9c647315870b744f7328d4dae947d8323f0379ab27efdb60300cca4dcc83dc38b99867856004f0b11cde036016a1a971c14307
|
7
|
+
data.tar.gz: 9a773778f8c2d7f2ca23f488673607a6914f846fd6e6d9c4872190cbbf438e92ffe7eb1dd9a3f21094e30e6a83664c1144453107b602fe626ae404baf8520247
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data.tar.gz.sig
CHANGED
Binary file
|
data/bin/milestoner
CHANGED
data/lib/milestoner.rb
CHANGED
@@ -3,7 +3,9 @@
|
|
3
3
|
require "milestoner/errors/base"
|
4
4
|
require "milestoner/errors/duplicate_tag"
|
5
5
|
require "milestoner/errors/git"
|
6
|
-
require "milestoner/git"
|
6
|
+
require "milestoner/git/config"
|
7
|
+
require "milestoner/git/kit"
|
8
|
+
require "milestoner/cli"
|
7
9
|
require "milestoner/identity"
|
8
10
|
require "milestoner/publisher"
|
9
11
|
require "milestoner/pusher"
|
data/lib/milestoner/cli.rb
CHANGED
@@ -1,6 +1,5 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require "yaml"
|
4
3
|
require "thor"
|
5
4
|
require "thor/actions"
|
6
5
|
require "thor_plus/actions"
|
@@ -14,8 +13,8 @@ module Milestoner
|
|
14
13
|
|
15
14
|
package_name Identity.version_label
|
16
15
|
|
17
|
-
def self.
|
18
|
-
{
|
16
|
+
def self.configuration
|
17
|
+
Runcom::Configuration.new file_name: Identity.file_name, defaults: {
|
19
18
|
version: "0.1.0",
|
20
19
|
git_commit_prefixes: %w[Fixed Added Updated Removed Refactored],
|
21
20
|
git_tag_sign: false
|
@@ -25,9 +24,8 @@ module Milestoner
|
|
25
24
|
# rubocop:disable Metrics/AbcSize
|
26
25
|
def initialize args = [], options = {}, config = {}
|
27
26
|
super args, options, config
|
28
|
-
@
|
29
|
-
|
30
|
-
commit_prefixes: configuration.to_h[:git_commit_prefixes]
|
27
|
+
@tagger = Tagger.new self.class.configuration.to_h[:version],
|
28
|
+
commit_prefixes: self.class.configuration.to_h[:git_commit_prefixes]
|
31
29
|
@pusher = Pusher.new
|
32
30
|
@publisher = Publisher.new tagger: tagger, pusher: pusher
|
33
31
|
end
|
@@ -43,7 +41,7 @@ module Milestoner
|
|
43
41
|
desc "-t, [--tag=VERSION]", "Tag local repository with new version."
|
44
42
|
map %w[-t --tag] => :tag
|
45
43
|
method_option :sign, aliases: "-s", desc: "Sign tag with GPG key.", type: :boolean, default: false
|
46
|
-
def tag version = configuration.to_h[:version]
|
44
|
+
def tag version = self.class.configuration.to_h[:version]
|
47
45
|
tagger.create version, sign: sign_tag?(options[:sign])
|
48
46
|
say "Repository tagged: #{tagger.version_label}."
|
49
47
|
rescue StandardError => exception
|
@@ -62,7 +60,7 @@ module Milestoner
|
|
62
60
|
desc "-P, [--publish=VERSION]", "Tag and push milestone to remote repository."
|
63
61
|
map %w[-P --publish] => :publish
|
64
62
|
method_option :sign, aliases: "-s", desc: "Sign tag with GPG key.", type: :boolean, default: false
|
65
|
-
def publish version = configuration.to_h[:version]
|
63
|
+
def publish version = self.class.configuration.to_h[:version]
|
66
64
|
publisher.publish version, sign: sign_tag?(options[:sign])
|
67
65
|
info "Repository tagged and pushed: #{tagger.version_label}."
|
68
66
|
info "Milestone published!"
|
@@ -70,13 +68,21 @@ module Milestoner
|
|
70
68
|
error exception.message
|
71
69
|
end
|
72
70
|
|
73
|
-
desc "-c, [--config]",
|
71
|
+
desc "-c, [--config]", %(Manage gem configuration ("#{configuration.computed_path}").)
|
74
72
|
map %w[-c --config] => :config
|
75
|
-
method_option :edit,
|
76
|
-
|
73
|
+
method_option :edit,
|
74
|
+
aliases: "-e",
|
75
|
+
desc: "Edit gem configuration.",
|
76
|
+
type: :boolean, default: false
|
77
|
+
method_option :info,
|
78
|
+
aliases: "-i",
|
79
|
+
desc: "Print gem configuration.",
|
80
|
+
type: :boolean, default: false
|
77
81
|
def config
|
78
|
-
|
79
|
-
|
82
|
+
path = self.class.configuration.computed_path
|
83
|
+
|
84
|
+
if options.edit? then `#{editor} #{path}`
|
85
|
+
elsif options.info? then say(path)
|
80
86
|
else help(:config)
|
81
87
|
end
|
82
88
|
end
|
@@ -98,7 +104,7 @@ module Milestoner
|
|
98
104
|
attr_reader :configuration, :tagger, :pusher, :publisher
|
99
105
|
|
100
106
|
def sign_tag? sign
|
101
|
-
sign | configuration.to_h[:git_tag_sign]
|
107
|
+
sign | self.class.configuration.to_h[:git_tag_sign]
|
102
108
|
end
|
103
109
|
end
|
104
110
|
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "open3"
|
4
|
+
|
5
|
+
module Milestoner
|
6
|
+
module Git
|
7
|
+
# A lightweight Git Config wrapper.
|
8
|
+
class Config
|
9
|
+
def initialize shell: Open3
|
10
|
+
@shell = shell
|
11
|
+
end
|
12
|
+
|
13
|
+
def get key
|
14
|
+
shell.capture3 "git config --get #{key}"
|
15
|
+
end
|
16
|
+
|
17
|
+
def set key, value
|
18
|
+
shell.capture3 %(git config --add #{key} "#{value}")
|
19
|
+
end
|
20
|
+
|
21
|
+
def value key
|
22
|
+
get(key).first.chomp
|
23
|
+
end
|
24
|
+
|
25
|
+
private
|
26
|
+
|
27
|
+
attr_reader :shell
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Milestoner
|
4
|
+
module Git
|
5
|
+
# A lightweight Git wrapper.
|
6
|
+
class Kit
|
7
|
+
def supported?
|
8
|
+
File.exist? File.join(Dir.pwd, ".git")
|
9
|
+
end
|
10
|
+
|
11
|
+
def commits?
|
12
|
+
system "git log > /dev/null 2>&1"
|
13
|
+
end
|
14
|
+
|
15
|
+
def remote?
|
16
|
+
system "git config remote.origin.url"
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
data/lib/milestoner/identity.rb
CHANGED
data/lib/milestoner/pusher.rb
CHANGED
data/lib/milestoner/tagger.rb
CHANGED
@@ -13,7 +13,7 @@ module Milestoner
|
|
13
13
|
|
14
14
|
def_delegator :version, :label, :version_label
|
15
15
|
|
16
|
-
def initialize version = "0.1.0", commit_prefixes: [], git: Git.new
|
16
|
+
def initialize version = "0.1.0", commit_prefixes: [], git: Git::Kit.new
|
17
17
|
@version = Versionaire::Version version
|
18
18
|
@commit_prefixes = commit_prefixes
|
19
19
|
@git = git
|
data/lib/tasks/reek.rake
ADDED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: milestoner
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.
|
4
|
+
version: 4.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Brooke Kuhlmann
|
@@ -30,7 +30,7 @@ cert_chain:
|
|
30
30
|
n/LUZ1dKhIHzfKx1B4+TEIefArObGfkLIDM8+Dq1RX7TF1k81Men7iu4MgE9bYBn
|
31
31
|
3dE+xI3FdB5gWcdWxdtgRCmWjtXeYYyb4z6NQQ==
|
32
32
|
-----END CERTIFICATE-----
|
33
|
-
date: 2016-11-
|
33
|
+
date: 2016-11-13 00:00:00.000000000 Z
|
34
34
|
dependencies:
|
35
35
|
- !ruby/object:Gem::Dependency
|
36
36
|
name: thor
|
@@ -52,42 +52,42 @@ dependencies:
|
|
52
52
|
requirements:
|
53
53
|
- - "~>"
|
54
54
|
- !ruby/object:Gem::Version
|
55
|
-
version: '4.
|
55
|
+
version: '4.1'
|
56
56
|
type: :runtime
|
57
57
|
prerelease: false
|
58
58
|
version_requirements: !ruby/object:Gem::Requirement
|
59
59
|
requirements:
|
60
60
|
- - "~>"
|
61
61
|
- !ruby/object:Gem::Version
|
62
|
-
version: '4.
|
62
|
+
version: '4.1'
|
63
63
|
- !ruby/object:Gem::Dependency
|
64
64
|
name: runcom
|
65
65
|
requirement: !ruby/object:Gem::Requirement
|
66
66
|
requirements:
|
67
67
|
- - "~>"
|
68
68
|
- !ruby/object:Gem::Version
|
69
|
-
version: '0.
|
69
|
+
version: '0.3'
|
70
70
|
type: :runtime
|
71
71
|
prerelease: false
|
72
72
|
version_requirements: !ruby/object:Gem::Requirement
|
73
73
|
requirements:
|
74
74
|
- - "~>"
|
75
75
|
- !ruby/object:Gem::Version
|
76
|
-
version: '0.
|
76
|
+
version: '0.3'
|
77
77
|
- !ruby/object:Gem::Dependency
|
78
78
|
name: versionaire
|
79
79
|
requirement: !ruby/object:Gem::Requirement
|
80
80
|
requirements:
|
81
81
|
- - "~>"
|
82
82
|
- !ruby/object:Gem::Version
|
83
|
-
version: '2.
|
83
|
+
version: '2.1'
|
84
84
|
type: :runtime
|
85
85
|
prerelease: false
|
86
86
|
version_requirements: !ruby/object:Gem::Requirement
|
87
87
|
requirements:
|
88
88
|
- - "~>"
|
89
89
|
- !ruby/object:Gem::Version
|
90
|
-
version: '2.
|
90
|
+
version: '2.1'
|
91
91
|
- !ruby/object:Gem::Dependency
|
92
92
|
name: rake
|
93
93
|
requirement: !ruby/object:Gem::Requirement
|
@@ -102,6 +102,20 @@ dependencies:
|
|
102
102
|
- - "~>"
|
103
103
|
- !ruby/object:Gem::Version
|
104
104
|
version: '11.0'
|
105
|
+
- !ruby/object:Gem::Dependency
|
106
|
+
name: gemsmith
|
107
|
+
requirement: !ruby/object:Gem::Requirement
|
108
|
+
requirements:
|
109
|
+
- - "~>"
|
110
|
+
- !ruby/object:Gem::Version
|
111
|
+
version: '8.0'
|
112
|
+
type: :development
|
113
|
+
prerelease: false
|
114
|
+
version_requirements: !ruby/object:Gem::Requirement
|
115
|
+
requirements:
|
116
|
+
- - "~>"
|
117
|
+
- !ruby/object:Gem::Version
|
118
|
+
version: '8.0'
|
105
119
|
- !ruby/object:Gem::Dependency
|
106
120
|
name: pry
|
107
121
|
requirement: !ruby/object:Gem::Requirement
|
@@ -242,6 +256,20 @@ dependencies:
|
|
242
256
|
- - "~>"
|
243
257
|
- !ruby/object:Gem::Version
|
244
258
|
version: '0.0'
|
259
|
+
- !ruby/object:Gem::Dependency
|
260
|
+
name: reek
|
261
|
+
requirement: !ruby/object:Gem::Requirement
|
262
|
+
requirements:
|
263
|
+
- - "~>"
|
264
|
+
- !ruby/object:Gem::Version
|
265
|
+
version: '4.5'
|
266
|
+
type: :development
|
267
|
+
prerelease: false
|
268
|
+
version_requirements: !ruby/object:Gem::Requirement
|
269
|
+
requirements:
|
270
|
+
- - "~>"
|
271
|
+
- !ruby/object:Gem::Version
|
272
|
+
version: '4.5'
|
245
273
|
- !ruby/object:Gem::Dependency
|
246
274
|
name: rubocop
|
247
275
|
requirement: !ruby/object:Gem::Requirement
|
@@ -262,14 +290,14 @@ dependencies:
|
|
262
290
|
requirements:
|
263
291
|
- - "~>"
|
264
292
|
- !ruby/object:Gem::Version
|
265
|
-
version: '0
|
293
|
+
version: '1.0'
|
266
294
|
type: :development
|
267
295
|
prerelease: false
|
268
296
|
version_requirements: !ruby/object:Gem::Requirement
|
269
297
|
requirements:
|
270
298
|
- - "~>"
|
271
299
|
- !ruby/object:Gem::Version
|
272
|
-
version: '0
|
300
|
+
version: '1.0'
|
273
301
|
description:
|
274
302
|
email:
|
275
303
|
- brooke@alchemists.io
|
@@ -288,11 +316,13 @@ files:
|
|
288
316
|
- lib/milestoner/errors/base.rb
|
289
317
|
- lib/milestoner/errors/duplicate_tag.rb
|
290
318
|
- lib/milestoner/errors/git.rb
|
291
|
-
- lib/milestoner/git.rb
|
319
|
+
- lib/milestoner/git/config.rb
|
320
|
+
- lib/milestoner/git/kit.rb
|
292
321
|
- lib/milestoner/identity.rb
|
293
322
|
- lib/milestoner/publisher.rb
|
294
323
|
- lib/milestoner/pusher.rb
|
295
324
|
- lib/milestoner/tagger.rb
|
325
|
+
- lib/tasks/reek.rake
|
296
326
|
- lib/tasks/rspec.rake
|
297
327
|
- lib/tasks/rubocop.rake
|
298
328
|
homepage: https://github.com/bkuhlmann/milestoner
|
metadata.gz.sig
CHANGED
Binary file
|
data/lib/milestoner/git.rb
DELETED
@@ -1,18 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module Milestoner
|
4
|
-
# A lightweight Git wrapper.
|
5
|
-
class Git
|
6
|
-
def supported?
|
7
|
-
File.exist? File.join(Dir.pwd, ".git")
|
8
|
-
end
|
9
|
-
|
10
|
-
def commits?
|
11
|
-
system "git log > /dev/null 2>&1"
|
12
|
-
end
|
13
|
-
|
14
|
-
def remote?
|
15
|
-
system "git config remote.origin.url"
|
16
|
-
end
|
17
|
-
end
|
18
|
-
end
|