milestoner 13.0.0 → 13.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f9080930766c79dade52fb1a18ef208467f34653f5112d520de3d72a4137fa0d
4
- data.tar.gz: 8bf86c1f4372b950916ace4536254c9da1a9cc4844789bb8354c60b559206050
3
+ metadata.gz: 385e5d0b4e170347a0baf5fd578b135a4c2c7dc68df17e4a7d670089fbe3815c
4
+ data.tar.gz: 513811b29a9d94179e1ed8c40ef7641f0ab232be20a3524eacb2894517c8aaf3
5
5
  SHA512:
6
- metadata.gz: 69dc87b3e7e87763d69ea640b0c07a5e34190e1c49352746c2ce56fa9c275c6286f48bb1b723548d3eb6fec0fb593c10156a74efd5efe1df8b5143562bfd40fd
7
- data.tar.gz: c579595cfc8a2d3c3a7ba56e5fa40536fa146f63ceb59a3720c7a519cf6375196223ce6cbf598300f3f1d022b113d9470f3a5e4805571d16e521433c549d4491
6
+ metadata.gz: 8f076b0f1431661b0266f7fe74202d795e3766d85c9eba47b34fb7f51854283dfe8b9f87de2ea149b6ce76be1da655b9ade5d120b25243ceb6293121394770dd
7
+ data.tar.gz: 5d6a387307c7d48c724ac55ecea9014fc29dda94eed9592b805edd717fd8f1425d0692a78799474a2588a3e3a79fc777778334a9c1c2758d4ff21e2753584204
checksums.yaml.gz.sig CHANGED
Binary file
data/README.adoc CHANGED
@@ -4,13 +4,6 @@
4
4
 
5
5
  = Milestoner
6
6
 
7
- [link=http://badge.fury.io/rb/milestoner]
8
- image::https://badge.fury.io/rb/milestoner.svg[Gem Version]
9
- [link=https://www.alchemists.io/projects/code_quality]
10
- image::https://img.shields.io/badge/code_style-alchemists-brightgreen.svg[Alchemists Style Guide]
11
- [link=https://circleci.com/gh/bkuhlmann/milestoner]
12
- image::https://circleci.com/gh/bkuhlmann/milestoner.svg?style=svg[Circle CI Status]
13
-
14
7
  Milestoner is a command line interface for crafting Git repository tags (milestones) using semantic
15
8
  versions. Each milestone is a summary of all commits made since the last milestone. You can use
16
9
  Milestoner to inspect what is currently unreleased or create a new release via a single command. By
@@ -196,35 +189,17 @@ To test, run:
196
189
  bundle exec spec
197
190
  ----
198
191
 
199
- == Versioning
200
-
201
- Read link:https://semver.org[Semantic Versioning] for details. Briefly, it means:
202
-
203
- * Major (X.y.z) - Incremented for any backwards incompatible public API changes.
204
- * Minor (x.Y.z) - Incremented for new, backwards compatible, public API enhancements/fixes.
205
- * Patch (x.y.Z) - Incremented for small, backwards compatible, bug fixes.
206
-
207
- == Code of Conduct
208
-
209
- Please note that this project is released with a link:CODE_OF_CONDUCT.adoc[CODE OF CONDUCT]. By
210
- participating in this project you agree to abide by its terms.
211
-
212
- == Contributions
213
-
214
- Read link:CONTRIBUTING.adoc[CONTRIBUTING] for details.
215
-
216
- == Community
192
+ == link:https://www.alchemists.io/policies/license[License]
217
193
 
218
- Feel free to link:https://www.alchemists.io/community[join the commmunity] for discussions related
219
- to this project and much more.
194
+ == link:https://www.alchemists.io/policies/security[Security]
220
195
 
221
- == License
196
+ == link:https://www.alchemists.io/policies/code_of_conduct[Code of Conduct]
222
197
 
223
- Read link:LICENSE.adoc[LICENSE] for details.
198
+ == link:https://www.alchemists.io/policies/contributions[Contributions]
224
199
 
225
- == Changes
200
+ == link:https://www.alchemists.io/projects/milestoner/versions[Versions]
226
201
 
227
- Read link:CHANGES.adoc[CHANGES] for details.
202
+ == link:https://www.alchemists.io/community[Community]
228
203
 
229
204
  == Credits
230
205
 
data/exe/milestoner CHANGED
@@ -3,5 +3,4 @@
3
3
 
4
4
  require "milestoner"
5
5
 
6
- Process.setproctitle Milestoner::Identity::VERSION_LABEL
7
6
  Milestoner::CLI::Shell.new.call ARGV
@@ -13,13 +13,16 @@ module Milestoner
13
13
  class Core
14
14
  def self.call(...) = new(...).call
15
15
 
16
- def initialize configuration = Configuration::Loader.call, client: Parser::CLIENT
16
+ def initialize configuration = Configuration::Loader.call,
17
+ client: Parser::CLIENT,
18
+ container: Container
17
19
  @configuration = configuration
18
20
  @client = client
21
+ @container = container
19
22
  end
20
23
 
21
24
  def call arguments = []
22
- client.banner = "#{Identity::LABEL} - #{Identity::SUMMARY}"
25
+ client.banner = specification.labeled_summary
23
26
  client.separator "\nUSAGE:\n"
24
27
  collate
25
28
  client.parse arguments
@@ -28,7 +31,7 @@ module Milestoner
28
31
 
29
32
  private
30
33
 
31
- attr_reader :configuration, :client
34
+ attr_reader :configuration, :client, :container
32
35
 
33
36
  def collate = private_methods.sort.grep(/add_/).each { |method| __send__ method }
34
37
 
@@ -71,6 +74,8 @@ module Milestoner
71
74
  configuration.merge! action_help: true
72
75
  end
73
76
  end
77
+
78
+ def specification = container[__method__]
74
79
  end
75
80
  end
76
81
  end
@@ -31,7 +31,7 @@ module Milestoner
31
31
  in action_config: Symbol => action then config action
32
32
  in action_publish: true then publish configuration
33
33
  in action_status: true then status
34
- in action_version: true then logger.info Identity::VERSION_LABEL
34
+ in action_version: true then logger.info { specification.labeled_version }
35
35
  else usage
36
36
  end
37
37
  end
@@ -44,6 +44,8 @@ module Milestoner
44
44
 
45
45
  def usage = logger.unknown { parser.to_s }
46
46
 
47
+ def specification = container[__method__]
48
+
47
49
  def logger = container[__method__]
48
50
  end
49
51
  end
@@ -14,7 +14,7 @@ module Milestoner
14
14
  using Refinements::Structs
15
15
 
16
16
  DEFAULTS = YAML.load_file(Pathname(__dir__).join("defaults.yml")).freeze
17
- CLIENT = Runcom::Config.new "#{Identity::NAME}/configuration.yml", defaults: DEFAULTS
17
+ CLIENT = Runcom::Config.new "milestoner/configuration.yml", defaults: DEFAULTS
18
18
 
19
19
  def self.call = new.call
20
20
 
@@ -4,6 +4,7 @@ require "dry-container"
4
4
  require "git_plus"
5
5
  require "logger"
6
6
  require "pastel"
7
+ require "spek"
7
8
 
8
9
  module Milestoner
9
10
  # Provides a global gem container for injection into other objects.
@@ -11,6 +12,7 @@ module Milestoner
11
12
  extend Dry::Container::Mixin
12
13
 
13
14
  register(:configuration) { Configuration::Loader.call }
15
+ register(:specification) { Spek::Loader.call "#{__dir__}/../../milestoner.gemspec" }
14
16
  register(:colorizer) { Pastel.new enabled: $stdout.tty? }
15
17
  register(:kernel) { Kernel }
16
18
 
@@ -0,0 +1,38 @@
1
+ # frozen_string_literal: true
2
+
3
+ Gem::Specification.new do |spec|
4
+ spec.name = "milestoner"
5
+ spec.version = "13.3.0"
6
+ spec.authors = ["Brooke Kuhlmann"]
7
+ spec.email = ["brooke@alchemists.io"]
8
+ spec.homepage = "https://www.alchemists.io/projects/milestoner"
9
+ spec.summary = "A command line interface for crafting Git semantically versioned repository tags."
10
+ spec.license = "Hippocratic-3.0"
11
+
12
+ spec.metadata = {
13
+ "bug_tracker_uri" => "https://github.com/bkuhlmann/milestoner/issues",
14
+ "changelog_uri" => "https://www.alchemists.io/projects/milestoner/versions",
15
+ "documentation_uri" => "https://www.alchemists.io/projects/milestoner",
16
+ "label" => "Milestoner",
17
+ "rubygems_mfa_required" => "true",
18
+ "source_code_uri" => "https://github.com/bkuhlmann/milestoner"
19
+ }
20
+
21
+ spec.signing_key = Gem.default_key_path
22
+ spec.cert_chain = [Gem.default_cert_path]
23
+
24
+ spec.required_ruby_version = "~> 3.1"
25
+ spec.add_dependency "dry-container", "~> 0.8"
26
+ spec.add_dependency "git_plus", "~> 1.1"
27
+ spec.add_dependency "pastel", "~> 0.8"
28
+ spec.add_dependency "refinements", "~> 9.2"
29
+ spec.add_dependency "runcom", "~> 8.2"
30
+ spec.add_dependency "spek", "~> 0.0"
31
+ spec.add_dependency "versionaire", "~> 10.0"
32
+ spec.add_dependency "zeitwerk", "~> 2.5"
33
+
34
+ spec.bindir = "exe"
35
+ spec.executables << "milestoner"
36
+ spec.extra_rdoc_files = Dir["README*", "LICENSE*"]
37
+ spec.files = Dir["*.gemspec", "lib/**/*"]
38
+ end
data.tar.gz.sig CHANGED
Binary file
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: 13.0.0
4
+ version: 13.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brooke Kuhlmann
@@ -28,7 +28,7 @@ cert_chain:
28
28
  lkHilIrX69jq8wMPpBhlaw2mRmeSL50Wv5u6xVBvOHhXFSP1crXM95vfLhLyRYod
29
29
  W2A=
30
30
  -----END CERTIFICATE-----
31
- date: 2021-12-29 00:00:00.000000000 Z
31
+ date: 2022-02-12 00:00:00.000000000 Z
32
32
  dependencies:
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: dry-container
@@ -50,14 +50,14 @@ dependencies:
50
50
  requirements:
51
51
  - - "~>"
52
52
  - !ruby/object:Gem::Version
53
- version: '1.0'
53
+ version: '1.1'
54
54
  type: :runtime
55
55
  prerelease: false
56
56
  version_requirements: !ruby/object:Gem::Requirement
57
57
  requirements:
58
58
  - - "~>"
59
59
  - !ruby/object:Gem::Version
60
- version: '1.0'
60
+ version: '1.1'
61
61
  - !ruby/object:Gem::Dependency
62
62
  name: pastel
63
63
  requirement: !ruby/object:Gem::Requirement
@@ -78,28 +78,42 @@ dependencies:
78
78
  requirements:
79
79
  - - "~>"
80
80
  - !ruby/object:Gem::Version
81
- version: '9.0'
81
+ version: '9.2'
82
82
  type: :runtime
83
83
  prerelease: false
84
84
  version_requirements: !ruby/object:Gem::Requirement
85
85
  requirements:
86
86
  - - "~>"
87
87
  - !ruby/object:Gem::Version
88
- version: '9.0'
88
+ version: '9.2'
89
89
  - !ruby/object:Gem::Dependency
90
90
  name: runcom
91
91
  requirement: !ruby/object:Gem::Requirement
92
92
  requirements:
93
93
  - - "~>"
94
94
  - !ruby/object:Gem::Version
95
- version: '8.0'
95
+ version: '8.2'
96
96
  type: :runtime
97
97
  prerelease: false
98
98
  version_requirements: !ruby/object:Gem::Requirement
99
99
  requirements:
100
100
  - - "~>"
101
101
  - !ruby/object:Gem::Version
102
- version: '8.0'
102
+ version: '8.2'
103
+ - !ruby/object:Gem::Dependency
104
+ name: spek
105
+ requirement: !ruby/object:Gem::Requirement
106
+ requirements:
107
+ - - "~>"
108
+ - !ruby/object:Gem::Version
109
+ version: '0.0'
110
+ type: :runtime
111
+ prerelease: false
112
+ version_requirements: !ruby/object:Gem::Requirement
113
+ requirements:
114
+ - - "~>"
115
+ - !ruby/object:Gem::Version
116
+ version: '0.0'
103
117
  - !ruby/object:Gem::Dependency
104
118
  name: versionaire
105
119
  requirement: !ruby/object:Gem::Requirement
@@ -155,18 +169,19 @@ files:
155
169
  - lib/milestoner/configuration/loader.rb
156
170
  - lib/milestoner/container.rb
157
171
  - lib/milestoner/error.rb
158
- - lib/milestoner/identity.rb
159
172
  - lib/milestoner/presenters/commit.rb
160
173
  - lib/milestoner/tags/creator.rb
161
174
  - lib/milestoner/tags/publisher.rb
162
175
  - lib/milestoner/tags/pusher.rb
176
+ - milestoner.gemspec
163
177
  homepage: https://www.alchemists.io/projects/milestoner
164
178
  licenses:
165
179
  - Hippocratic-3.0
166
180
  metadata:
167
181
  bug_tracker_uri: https://github.com/bkuhlmann/milestoner/issues
168
- changelog_uri: https://www.alchemists.io/projects/milestoner/changes.html
182
+ changelog_uri: https://www.alchemists.io/projects/milestoner/versions
169
183
  documentation_uri: https://www.alchemists.io/projects/milestoner
184
+ label: Milestoner
170
185
  rubygems_mfa_required: 'true'
171
186
  source_code_uri: https://github.com/bkuhlmann/milestoner
172
187
  post_install_message:
@@ -184,9 +199,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
184
199
  - !ruby/object:Gem::Version
185
200
  version: '0'
186
201
  requirements: []
187
- rubygems_version: 3.3.4
202
+ rubygems_version: 3.3.7
188
203
  signing_key:
189
204
  specification_version: 4
190
- summary: A command line interface for crafting Git repository tags using semantic
191
- versions.
205
+ summary: A command line interface for crafting Git semantically versioned repository
206
+ tags.
192
207
  test_files: []
metadata.gz.sig CHANGED
Binary file
@@ -1,12 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Milestoner
4
- # Gem identity information.
5
- module Identity
6
- NAME = "milestoner"
7
- LABEL = "Milestoner"
8
- VERSION = "13.0.0"
9
- VERSION_LABEL = "#{LABEL} #{VERSION}".freeze
10
- SUMMARY = "A command line interface for crafting Git repository tags using semantic versions."
11
- end
12
- end