milestoner 16.2.0 → 17.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (87) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +1 -1
  3. data/README.adoc +274 -47
  4. data/lib/milestoner/builders/container.rb +15 -0
  5. data/lib/milestoner/builders/import.rb +9 -0
  6. data/lib/milestoner/builders/stream.rb +29 -0
  7. data/lib/milestoner/builders/web.rb +41 -0
  8. data/lib/milestoner/cli/actions/build/format.rb +24 -0
  9. data/lib/milestoner/cli/actions/build/label.rb +26 -0
  10. data/lib/milestoner/cli/actions/build/layout.rb +36 -0
  11. data/lib/milestoner/cli/actions/build/root.rb +25 -0
  12. data/lib/milestoner/cli/actions/build/version.rb +31 -0
  13. data/lib/milestoner/cli/actions/cache/create.rb +35 -0
  14. data/lib/milestoner/cli/actions/cache/delete.rb +34 -0
  15. data/lib/milestoner/cli/actions/cache/find.rb +34 -0
  16. data/lib/milestoner/cli/actions/cache/info.rb +29 -0
  17. data/lib/milestoner/cli/actions/cache/list.rb +33 -0
  18. data/lib/milestoner/cli/actions/publish.rb +9 -5
  19. data/lib/milestoner/cli/commands/build.rb +55 -0
  20. data/lib/milestoner/cli/commands/cache.rb +27 -0
  21. data/lib/milestoner/cli/shell.rb +3 -2
  22. data/lib/milestoner/commits/categorizer.rb +21 -29
  23. data/lib/milestoner/commits/collector.rb +18 -0
  24. data/lib/milestoner/commits/enricher.rb +52 -0
  25. data/lib/milestoner/commits/enrichers/author.rb +26 -0
  26. data/lib/milestoner/commits/enrichers/body.rb +28 -0
  27. data/lib/milestoner/commits/enrichers/colleague.rb +33 -0
  28. data/lib/milestoner/commits/enrichers/container.rb +25 -0
  29. data/lib/milestoner/commits/enrichers/format.rb +23 -0
  30. data/lib/milestoner/commits/enrichers/import.rb +11 -0
  31. data/lib/milestoner/commits/enrichers/issue.rb +28 -0
  32. data/lib/milestoner/commits/enrichers/milestone.rb +24 -0
  33. data/lib/milestoner/commits/enrichers/note.rb +28 -0
  34. data/lib/milestoner/commits/enrichers/review.rb +23 -0
  35. data/lib/milestoner/commits/enrichers/uri.rb +14 -0
  36. data/lib/milestoner/commits/versioner.rb +48 -0
  37. data/lib/milestoner/configuration/contract.rb +29 -3
  38. data/lib/milestoner/configuration/defaults.yml +31 -8
  39. data/lib/milestoner/configuration/model.rb +24 -1
  40. data/lib/milestoner/configuration/transformers/build/root.rb +21 -0
  41. data/lib/milestoner/configuration/transformers/build/template_paths.rb +35 -0
  42. data/lib/milestoner/configuration/transformers/citations/description.rb +37 -0
  43. data/lib/milestoner/configuration/transformers/citations/label.rb +37 -0
  44. data/lib/milestoner/configuration/transformers/gems/description.rb +36 -0
  45. data/lib/milestoner/configuration/transformers/gems/label.rb +36 -0
  46. data/lib/milestoner/configuration/transformers/gems/name.rb +36 -0
  47. data/lib/milestoner/configuration/transformers/gems/uri.rb +36 -0
  48. data/lib/milestoner/configuration/transformers/project/author.rb +33 -0
  49. data/lib/milestoner/configuration/transformers/project/generator.rb +28 -0
  50. data/lib/milestoner/configuration/transformers/project/label.rb +23 -0
  51. data/lib/milestoner/configuration/transformers/project/name.rb +19 -0
  52. data/lib/milestoner/configuration/transformers/project/version.rb +31 -0
  53. data/lib/milestoner/configuration/transformers/uri/avatar.rb +21 -0
  54. data/lib/milestoner/configuration/transformers/uri/commit.rb +24 -0
  55. data/lib/milestoner/configuration/transformers/uri/profile.rb +21 -0
  56. data/lib/milestoner/configuration/transformers/uri/review.rb +24 -0
  57. data/lib/milestoner/configuration/transformers/uri/tracker.rb +24 -0
  58. data/lib/milestoner/container.rb +51 -9
  59. data/lib/milestoner/models/commit.rb +42 -0
  60. data/lib/milestoner/models/link.rb +12 -0
  61. data/lib/milestoner/models/user.rb +12 -0
  62. data/lib/milestoner/renderers/asciidoc.rb +20 -0
  63. data/lib/milestoner/renderers/markdown.rb +20 -0
  64. data/lib/milestoner/renderers/universal.rb +26 -0
  65. data/lib/milestoner/tags/creator.rb +31 -23
  66. data/lib/milestoner/tags/publisher.rb +5 -5
  67. data/lib/milestoner/tags/pusher.rb +9 -3
  68. data/lib/milestoner/templates/layouts/page.html.erb +29 -0
  69. data/lib/milestoner/templates/layouts/page.stream.erb +1 -0
  70. data/lib/milestoner/templates/milestones/_avatar.html.erb +5 -0
  71. data/lib/milestoner/templates/milestones/_commit.html.erb +104 -0
  72. data/lib/milestoner/templates/milestones/_commit.stream.erb +1 -0
  73. data/lib/milestoner/templates/milestones/_icon.html.erb +6 -0
  74. data/lib/milestoner/templates/milestones/_profile.html.erb +5 -0
  75. data/lib/milestoner/templates/milestones/show.html.erb +46 -0
  76. data/lib/milestoner/templates/milestones/show.stream.erb +5 -0
  77. data/lib/milestoner/templates/public/page.css.erb +356 -0
  78. data/lib/milestoner/views/context.rb +25 -0
  79. data/lib/milestoner/views/milestones/show.rb +46 -0
  80. data/lib/milestoner/views/parts/commit.rb +85 -0
  81. data/lib/milestoner.rb +4 -2
  82. data/milestoner.gemspec +17 -11
  83. data.tar.gz.sig +0 -0
  84. metadata +172 -23
  85. metadata.gz.sig +0 -0
  86. data/lib/milestoner/cli/actions/status.rb +0 -37
  87. data/lib/milestoner/presenters/commit.rb +0 -36
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: 16.2.0
4
+ version: 17.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brooke Kuhlmann
@@ -35,22 +35,50 @@ cert_chain:
35
35
  3n5C8/6Zh9DYTkpcwPSuIfAga6wf4nXc9m6JAw8AuMLaiWN/r/2s4zJsUHYERJEu
36
36
  gZGm4JqtuSg8pYjPeIJxS960owq+SfuC+jxqmRA54BisFCv/0VOJi7tiJVY=
37
37
  -----END CERTIFICATE-----
38
- date: 2023-10-16 00:00:00.000000000 Z
38
+ date: 2024-01-06 00:00:00.000000000 Z
39
39
  dependencies:
40
+ - !ruby/object:Gem::Dependency
41
+ name: asciidoctor
42
+ requirement: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - "~>"
45
+ - !ruby/object:Gem::Version
46
+ version: '2.0'
47
+ type: :runtime
48
+ prerelease: false
49
+ version_requirements: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - "~>"
52
+ - !ruby/object:Gem::Version
53
+ version: '2.0'
54
+ - !ruby/object:Gem::Dependency
55
+ name: cff
56
+ requirement: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - "~>"
59
+ - !ruby/object:Gem::Version
60
+ version: '1.1'
61
+ type: :runtime
62
+ prerelease: false
63
+ version_requirements: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - "~>"
66
+ - !ruby/object:Gem::Version
67
+ version: '1.1'
40
68
  - !ruby/object:Gem::Dependency
41
69
  name: cogger
42
70
  requirement: !ruby/object:Gem::Requirement
43
71
  requirements:
44
72
  - - "~>"
45
73
  - !ruby/object:Gem::Version
46
- version: '0.12'
74
+ version: '0.15'
47
75
  type: :runtime
48
76
  prerelease: false
49
77
  version_requirements: !ruby/object:Gem::Requirement
50
78
  requirements:
51
79
  - - "~>"
52
80
  - !ruby/object:Gem::Version
53
- version: '0.12'
81
+ version: '0.15'
54
82
  - !ruby/object:Gem::Dependency
55
83
  name: dry-container
56
84
  requirement: !ruby/object:Gem::Requirement
@@ -99,44 +127,100 @@ dependencies:
99
127
  requirements:
100
128
  - - "~>"
101
129
  - !ruby/object:Gem::Version
102
- version: '0.2'
130
+ version: '1.0'
103
131
  type: :runtime
104
132
  prerelease: false
105
133
  version_requirements: !ruby/object:Gem::Requirement
106
134
  requirements:
107
135
  - - "~>"
108
136
  - !ruby/object:Gem::Version
109
- version: '0.2'
137
+ version: '1.0'
110
138
  - !ruby/object:Gem::Dependency
111
139
  name: gitt
112
140
  requirement: !ruby/object:Gem::Requirement
113
141
  requirements:
114
142
  - - "~>"
115
143
  - !ruby/object:Gem::Version
116
- version: '2.0'
144
+ version: '3.0'
117
145
  type: :runtime
118
146
  prerelease: false
119
147
  version_requirements: !ruby/object:Gem::Requirement
120
148
  requirements:
121
149
  - - "~>"
122
150
  - !ruby/object:Gem::Version
123
- version: '2.0'
151
+ version: '3.0'
152
+ - !ruby/object:Gem::Dependency
153
+ name: hanami-view
154
+ requirement: !ruby/object:Gem::Requirement
155
+ requirements:
156
+ - - "~>"
157
+ - !ruby/object:Gem::Version
158
+ version: 2.1.0.rc2
159
+ type: :runtime
160
+ prerelease: false
161
+ version_requirements: !ruby/object:Gem::Requirement
162
+ requirements:
163
+ - - "~>"
164
+ - !ruby/object:Gem::Version
165
+ version: 2.1.0.rc2
124
166
  - !ruby/object:Gem::Dependency
125
167
  name: infusible
126
168
  requirement: !ruby/object:Gem::Requirement
127
169
  requirements:
128
170
  - - "~>"
129
171
  - !ruby/object:Gem::Version
130
- version: '2.2'
172
+ version: '3.0'
173
+ type: :runtime
174
+ prerelease: false
175
+ version_requirements: !ruby/object:Gem::Requirement
176
+ requirements:
177
+ - - "~>"
178
+ - !ruby/object:Gem::Version
179
+ version: '3.0'
180
+ - !ruby/object:Gem::Dependency
181
+ name: lode
182
+ requirement: !ruby/object:Gem::Requirement
183
+ requirements:
184
+ - - "~>"
185
+ - !ruby/object:Gem::Version
186
+ version: '1.0'
187
+ type: :runtime
188
+ prerelease: false
189
+ version_requirements: !ruby/object:Gem::Requirement
190
+ requirements:
191
+ - - "~>"
192
+ - !ruby/object:Gem::Version
193
+ version: '1.0'
194
+ - !ruby/object:Gem::Dependency
195
+ name: redcarpet
196
+ requirement: !ruby/object:Gem::Requirement
197
+ requirements:
198
+ - - "~>"
199
+ - !ruby/object:Gem::Version
200
+ version: '3.6'
131
201
  type: :runtime
132
202
  prerelease: false
133
203
  version_requirements: !ruby/object:Gem::Requirement
134
204
  requirements:
135
205
  - - "~>"
136
206
  - !ruby/object:Gem::Version
137
- version: '2.2'
207
+ version: '3.6'
138
208
  - !ruby/object:Gem::Dependency
139
209
  name: refinements
210
+ requirement: !ruby/object:Gem::Requirement
211
+ requirements:
212
+ - - "~>"
213
+ - !ruby/object:Gem::Version
214
+ version: '12.0'
215
+ type: :runtime
216
+ prerelease: false
217
+ version_requirements: !ruby/object:Gem::Requirement
218
+ requirements:
219
+ - - "~>"
220
+ - !ruby/object:Gem::Version
221
+ version: '12.0'
222
+ - !ruby/object:Gem::Dependency
223
+ name: runcom
140
224
  requirement: !ruby/object:Gem::Requirement
141
225
  requirements:
142
226
  - - "~>"
@@ -150,61 +234,61 @@ dependencies:
150
234
  - !ruby/object:Gem::Version
151
235
  version: '11.0'
152
236
  - !ruby/object:Gem::Dependency
153
- name: runcom
237
+ name: sanitize
154
238
  requirement: !ruby/object:Gem::Requirement
155
239
  requirements:
156
240
  - - "~>"
157
241
  - !ruby/object:Gem::Version
158
- version: '10.0'
242
+ version: '6.1'
159
243
  type: :runtime
160
244
  prerelease: false
161
245
  version_requirements: !ruby/object:Gem::Requirement
162
246
  requirements:
163
247
  - - "~>"
164
248
  - !ruby/object:Gem::Version
165
- version: '10.0'
249
+ version: '6.1'
166
250
  - !ruby/object:Gem::Dependency
167
251
  name: sod
168
252
  requirement: !ruby/object:Gem::Requirement
169
253
  requirements:
170
254
  - - "~>"
171
255
  - !ruby/object:Gem::Version
172
- version: '0.0'
256
+ version: '0.4'
173
257
  type: :runtime
174
258
  prerelease: false
175
259
  version_requirements: !ruby/object:Gem::Requirement
176
260
  requirements:
177
261
  - - "~>"
178
262
  - !ruby/object:Gem::Version
179
- version: '0.0'
263
+ version: '0.4'
180
264
  - !ruby/object:Gem::Dependency
181
265
  name: spek
182
266
  requirement: !ruby/object:Gem::Requirement
183
267
  requirements:
184
268
  - - "~>"
185
269
  - !ruby/object:Gem::Version
186
- version: '2.0'
270
+ version: '3.0'
187
271
  type: :runtime
188
272
  prerelease: false
189
273
  version_requirements: !ruby/object:Gem::Requirement
190
274
  requirements:
191
275
  - - "~>"
192
276
  - !ruby/object:Gem::Version
193
- version: '2.0'
277
+ version: '3.0'
194
278
  - !ruby/object:Gem::Dependency
195
279
  name: versionaire
196
280
  requirement: !ruby/object:Gem::Requirement
197
281
  requirements:
198
282
  - - "~>"
199
283
  - !ruby/object:Gem::Version
200
- version: '12.0'
284
+ version: '13.0'
201
285
  type: :runtime
202
286
  prerelease: false
203
287
  version_requirements: !ruby/object:Gem::Requirement
204
288
  requirements:
205
289
  - - "~>"
206
290
  - !ruby/object:Gem::Version
207
- version: '12.0'
291
+ version: '13.0'
208
292
  - !ruby/object:Gem::Dependency
209
293
  name: zeitwerk
210
294
  requirement: !ruby/object:Gem::Requirement
@@ -233,20 +317,85 @@ files:
233
317
  - README.adoc
234
318
  - exe/milestoner
235
319
  - lib/milestoner.rb
320
+ - lib/milestoner/builders/container.rb
321
+ - lib/milestoner/builders/import.rb
322
+ - lib/milestoner/builders/stream.rb
323
+ - lib/milestoner/builders/web.rb
324
+ - lib/milestoner/cli/actions/build/format.rb
325
+ - lib/milestoner/cli/actions/build/label.rb
326
+ - lib/milestoner/cli/actions/build/layout.rb
327
+ - lib/milestoner/cli/actions/build/root.rb
328
+ - lib/milestoner/cli/actions/build/version.rb
329
+ - lib/milestoner/cli/actions/cache/create.rb
330
+ - lib/milestoner/cli/actions/cache/delete.rb
331
+ - lib/milestoner/cli/actions/cache/find.rb
332
+ - lib/milestoner/cli/actions/cache/info.rb
333
+ - lib/milestoner/cli/actions/cache/list.rb
236
334
  - lib/milestoner/cli/actions/publish.rb
237
- - lib/milestoner/cli/actions/status.rb
335
+ - lib/milestoner/cli/commands/build.rb
336
+ - lib/milestoner/cli/commands/cache.rb
238
337
  - lib/milestoner/cli/shell.rb
239
338
  - lib/milestoner/commits/categorizer.rb
339
+ - lib/milestoner/commits/collector.rb
340
+ - lib/milestoner/commits/enricher.rb
341
+ - lib/milestoner/commits/enrichers/author.rb
342
+ - lib/milestoner/commits/enrichers/body.rb
343
+ - lib/milestoner/commits/enrichers/colleague.rb
344
+ - lib/milestoner/commits/enrichers/container.rb
345
+ - lib/milestoner/commits/enrichers/format.rb
346
+ - lib/milestoner/commits/enrichers/import.rb
347
+ - lib/milestoner/commits/enrichers/issue.rb
348
+ - lib/milestoner/commits/enrichers/milestone.rb
349
+ - lib/milestoner/commits/enrichers/note.rb
350
+ - lib/milestoner/commits/enrichers/review.rb
351
+ - lib/milestoner/commits/enrichers/uri.rb
352
+ - lib/milestoner/commits/versioner.rb
240
353
  - lib/milestoner/configuration/contract.rb
241
354
  - lib/milestoner/configuration/defaults.yml
242
355
  - lib/milestoner/configuration/model.rb
356
+ - lib/milestoner/configuration/transformers/build/root.rb
357
+ - lib/milestoner/configuration/transformers/build/template_paths.rb
358
+ - lib/milestoner/configuration/transformers/citations/description.rb
359
+ - lib/milestoner/configuration/transformers/citations/label.rb
360
+ - lib/milestoner/configuration/transformers/gems/description.rb
361
+ - lib/milestoner/configuration/transformers/gems/label.rb
362
+ - lib/milestoner/configuration/transformers/gems/name.rb
363
+ - lib/milestoner/configuration/transformers/gems/uri.rb
364
+ - lib/milestoner/configuration/transformers/project/author.rb
365
+ - lib/milestoner/configuration/transformers/project/generator.rb
366
+ - lib/milestoner/configuration/transformers/project/label.rb
367
+ - lib/milestoner/configuration/transformers/project/name.rb
368
+ - lib/milestoner/configuration/transformers/project/version.rb
369
+ - lib/milestoner/configuration/transformers/uri/avatar.rb
370
+ - lib/milestoner/configuration/transformers/uri/commit.rb
371
+ - lib/milestoner/configuration/transformers/uri/profile.rb
372
+ - lib/milestoner/configuration/transformers/uri/review.rb
373
+ - lib/milestoner/configuration/transformers/uri/tracker.rb
243
374
  - lib/milestoner/container.rb
244
375
  - lib/milestoner/error.rb
245
376
  - lib/milestoner/import.rb
246
- - lib/milestoner/presenters/commit.rb
377
+ - lib/milestoner/models/commit.rb
378
+ - lib/milestoner/models/link.rb
379
+ - lib/milestoner/models/user.rb
380
+ - lib/milestoner/renderers/asciidoc.rb
381
+ - lib/milestoner/renderers/markdown.rb
382
+ - lib/milestoner/renderers/universal.rb
247
383
  - lib/milestoner/tags/creator.rb
248
384
  - lib/milestoner/tags/publisher.rb
249
385
  - lib/milestoner/tags/pusher.rb
386
+ - lib/milestoner/templates/layouts/page.html.erb
387
+ - lib/milestoner/templates/layouts/page.stream.erb
388
+ - lib/milestoner/templates/milestones/_avatar.html.erb
389
+ - lib/milestoner/templates/milestones/_commit.html.erb
390
+ - lib/milestoner/templates/milestones/_commit.stream.erb
391
+ - lib/milestoner/templates/milestones/_icon.html.erb
392
+ - lib/milestoner/templates/milestones/_profile.html.erb
393
+ - lib/milestoner/templates/milestones/show.html.erb
394
+ - lib/milestoner/templates/milestones/show.stream.erb
395
+ - lib/milestoner/templates/public/page.css.erb
396
+ - lib/milestoner/views/context.rb
397
+ - lib/milestoner/views/milestones/show.rb
398
+ - lib/milestoner/views/parts/commit.rb
250
399
  - milestoner.gemspec
251
400
  homepage: https://alchemists.io/projects/milestoner
252
401
  licenses:
@@ -267,14 +416,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
267
416
  requirements:
268
417
  - - "~>"
269
418
  - !ruby/object:Gem::Version
270
- version: '3.2'
419
+ version: '3.3'
271
420
  required_rubygems_version: !ruby/object:Gem::Requirement
272
421
  requirements:
273
422
  - - ">="
274
423
  - !ruby/object:Gem::Version
275
424
  version: '0'
276
425
  requirements: []
277
- rubygems_version: 3.4.20
426
+ rubygems_version: 3.5.4
278
427
  signing_key:
279
428
  specification_version: 4
280
429
  summary: A command line interface for managing Git repository milestones.
metadata.gz.sig CHANGED
Binary file
@@ -1,37 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "sod"
4
-
5
- module Milestoner
6
- module CLI
7
- module Actions
8
- # Handles listing project status of untagged commit history.
9
- class Status < Sod::Action
10
- include Milestoner::Import[:kernel, :logger]
11
-
12
- description "Show project status."
13
-
14
- on %w[-s --status]
15
-
16
- def initialize(presenter: Presenters::Commit, categorizer: Commits::Categorizer.new, **)
17
- super(**)
18
- @presenter = presenter
19
- @categorizer = categorizer
20
- end
21
-
22
- def call(*)
23
- categorizer.call
24
- .tap { |records| info "All is quiet." if records.empty? }
25
- .map { |record| presenter.new(record).line_item }
26
- .each { |line_item| kernel.puts line_item }
27
- end
28
-
29
- private
30
-
31
- attr_reader :presenter, :categorizer
32
-
33
- def info(message) = logger.info { message }
34
- end
35
- end
36
- end
37
- end
@@ -1,36 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "forwardable"
4
- require "gitt"
5
-
6
- module Milestoner
7
- module Presenters
8
- # Wraps the Git Kit Commit for presentation purposes.
9
- class Commit
10
- include Import[:configuration]
11
-
12
- extend Forwardable
13
-
14
- delegate [*Gitt::Models::Commit.members, :amend?, :fixup?, :squash?, :prefix?] => :record
15
-
16
- def initialize(record, **)
17
- super(**)
18
- @record = record
19
- end
20
-
21
- def line_item(delimiter: " - ") = "#{bullet}#{subject}#{delimiter}#{author_name}"
22
-
23
- private
24
-
25
- attr_reader :record
26
-
27
- def bullet
28
- case configuration.documentation_format
29
- when "md" then "- "
30
- when "adoc" then "* "
31
- else ""
32
- end
33
- end
34
- end
35
- end
36
- end