git-story-workflow 1.6.0 → 1.7.1
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 +4 -4
- data/VERSION +1 -1
- data/config/story.yml +0 -1
- data/git-story-workflow.gemspec +4 -4
- data/lib/git/story/app.rb +21 -8
- data/lib/git/story/prepare-commit-msg +5 -8
- data/lib/git/story/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 9281d7ee0268375c1962f2e770d845eb3cbf8ebb26f0655b5362d52174698558
|
|
4
|
+
data.tar.gz: 8c0dfe010aaee441b7548f877492cfa68b394f2896862fa0e184991004302703
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 6fd7c0939eb952e7f3e92d2ba3366fe469e829f70a238b5f54ed53cd101e05132651c62097ea0069a9761b3e95c148b726ff2c30112321d1f80bd829859e8ce7
|
|
7
|
+
data.tar.gz: 781376972c269ebd38e1ac0993d07daafd97365c6a4b6d4d41ba7280c02f9967794247df69c1104ed81db47357e232acebb644540faefc57cae723a7793a8496
|
data/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
1.
|
|
1
|
+
1.7.1
|
data/config/story.yml
CHANGED
data/git-story-workflow.gemspec
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
# -*- encoding: utf-8 -*-
|
|
2
|
-
# stub: git-story-workflow 1.
|
|
2
|
+
# stub: git-story-workflow 1.7.1 ruby lib
|
|
3
3
|
|
|
4
4
|
Gem::Specification.new do |s|
|
|
5
5
|
s.name = "git-story-workflow".freeze
|
|
6
|
-
s.version = "1.
|
|
6
|
+
s.version = "1.7.1"
|
|
7
7
|
|
|
8
8
|
s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
|
|
9
9
|
s.require_paths = ["lib".freeze]
|
|
10
10
|
s.authors = ["Florian Frank".freeze]
|
|
11
|
-
s.date = "
|
|
11
|
+
s.date = "2022-01-17"
|
|
12
12
|
s.description = "Gem abstracting a git workflow\u2026".freeze
|
|
13
13
|
s.email = "flori@ping.de".freeze
|
|
14
14
|
s.executables = ["git-story".freeze]
|
|
@@ -17,7 +17,7 @@ Gem::Specification.new do |s|
|
|
|
17
17
|
s.homepage = "http://flori.github.com/git-story-workflow".freeze
|
|
18
18
|
s.licenses = ["Apache-2.0".freeze]
|
|
19
19
|
s.rdoc_options = ["--title".freeze, "Git-story-workflow".freeze, "--main".freeze, "README.md".freeze]
|
|
20
|
-
s.rubygems_version = "3.2.
|
|
20
|
+
s.rubygems_version = "3.2.22".freeze
|
|
21
21
|
s.summary = "Gem abstracting a git workflow".freeze
|
|
22
22
|
s.test_files = ["spec/git/story/app_spec.rb".freeze, "spec/spec_helper.rb".freeze]
|
|
23
23
|
|
data/lib/git/story/app.rb
CHANGED
|
@@ -205,7 +205,8 @@ class Git::Story::App
|
|
|
205
205
|
fetch_tags
|
|
206
206
|
opts = ([
|
|
207
207
|
'--color=never',
|
|
208
|
-
'--pretty=%B'
|
|
208
|
+
'--pretty=%B',
|
|
209
|
+
'--reverse',
|
|
209
210
|
] | rest) * ' '
|
|
210
211
|
output = capture("git log #{opts} #{ref}")
|
|
211
212
|
pivotal_ids = SortedSet[]
|
|
@@ -229,6 +230,10 @@ class Git::Story::App
|
|
|
229
230
|
attendees = Set[]
|
|
230
231
|
fetch_stories(pivotal_ids) do |pid|
|
|
231
232
|
story = fetch_story(pid, with_owner: true)
|
|
233
|
+
if !story
|
|
234
|
+
stories << "• ** Story with id #{pid} could not be found **"
|
|
235
|
+
next
|
|
236
|
+
end
|
|
232
237
|
attendees.merge story.owners
|
|
233
238
|
stories << <<~end
|
|
234
239
|
• [##{story.id}] #{story.name}
|
|
@@ -493,8 +498,9 @@ class Git::Story::App
|
|
|
493
498
|
end
|
|
494
499
|
|
|
495
500
|
def fetch_story(story_id, with_owner: false)
|
|
496
|
-
story = pivotal_get("projects/#{pivotal_project}/stories/#{story_id}").full?
|
|
497
|
-
|
|
501
|
+
if story = pivotal_get("projects/#{pivotal_project}/stories/#{story_id}").full?
|
|
502
|
+
story.owners = Array((fetch_story_owners(story_id) if with_owner))
|
|
503
|
+
end
|
|
498
504
|
story
|
|
499
505
|
end
|
|
500
506
|
|
|
@@ -613,15 +619,22 @@ class Git::Story::App
|
|
|
613
619
|
|
|
614
620
|
def fetch_stories(pivotal_ids, &block)
|
|
615
621
|
block or raise ArgumentError, '&block parameter is required'
|
|
616
|
-
|
|
622
|
+
threads = []
|
|
617
623
|
pivotal_ids.each do |pid|
|
|
618
|
-
|
|
624
|
+
order = 0
|
|
625
|
+
threads.push(
|
|
626
|
+
Thread.new do
|
|
627
|
+
Thread.current[:order] = order
|
|
628
|
+
Thread.current[:result] = block.(pid)
|
|
629
|
+
rescue
|
|
630
|
+
end
|
|
631
|
+
)
|
|
619
632
|
end
|
|
620
|
-
|
|
633
|
+
threads.with_infobar(label: 'Story').map do |t|
|
|
621
634
|
t.join
|
|
622
635
|
+infobar
|
|
623
|
-
t[:result]
|
|
624
|
-
end
|
|
636
|
+
[ t[:order], t[:result] ]
|
|
637
|
+
end.sort_by(&:first).transpose[1].to_a
|
|
625
638
|
end
|
|
626
639
|
|
|
627
640
|
def fetch_statuses(pivotal_ids)
|
|
@@ -26,12 +26,8 @@ class CommitMesssageParser
|
|
|
26
26
|
def parse(template)
|
|
27
27
|
@message_data = template.readlines
|
|
28
28
|
@message_data.each do |line|
|
|
29
|
-
if /^\s*\[.*(?:#\d
|
|
29
|
+
if /^\s*\[.*(?:#\d{7,}).*\]/i =~ line
|
|
30
30
|
@story_number_found = true
|
|
31
|
-
if @story_number_done = !!done
|
|
32
|
-
@message_data.slice!(@line_index)
|
|
33
|
-
next
|
|
34
|
-
end
|
|
35
31
|
end
|
|
36
32
|
if line =~ /^\s*#/
|
|
37
33
|
break
|
|
@@ -58,7 +54,7 @@ class CommitMesssageParser
|
|
|
58
54
|
end
|
|
59
55
|
|
|
60
56
|
story_numbers =
|
|
61
|
-
`git branch --no-color`.sub!(/^\* .*?(?:_(\d
|
|
57
|
+
`git branch --no-color`.sub!(/^\* .*?(?:_(\d{7,}(?:_\d{7,})*))$/) {
|
|
62
58
|
break $1.split(/_/)
|
|
63
59
|
} || []
|
|
64
60
|
story_numbers.map!(&:chomp)
|
|
@@ -67,8 +63,9 @@ Tempfile.open('commit') do |output|
|
|
|
67
63
|
message_parsed = CommitMesssageParser.new.parse(template)
|
|
68
64
|
if message_parsed.story_number_found?
|
|
69
65
|
output.puts message_parsed.total
|
|
70
|
-
elsif
|
|
71
|
-
|
|
66
|
+
elsif story_numbers.empty?
|
|
67
|
+
template.rewind
|
|
68
|
+
output.puts template.read
|
|
72
69
|
else
|
|
73
70
|
full_message = [ message_parsed.data, "", ]
|
|
74
71
|
if prefix = complex_config.story.pivotal_reference_prefix?
|
data/lib/git/story/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: git-story-workflow
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.
|
|
4
|
+
version: 1.7.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Florian Frank
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2022-01-17 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: gem_hadar
|
|
@@ -218,7 +218,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
218
218
|
- !ruby/object:Gem::Version
|
|
219
219
|
version: '0'
|
|
220
220
|
requirements: []
|
|
221
|
-
rubygems_version: 3.2.
|
|
221
|
+
rubygems_version: 3.2.22
|
|
222
222
|
signing_key:
|
|
223
223
|
specification_version: 4
|
|
224
224
|
summary: Gem abstracting a git workflow
|