pt-flow 0.5.2 → 0.5.3

Sign up to get free protection for your applications and to get access to all the features.
data/lib/pt-flow/ui.rb CHANGED
@@ -22,6 +22,7 @@ module PT::Flow
22
22
  task = PivotalTracker::Story.find(current_task_id, @project.id)
23
23
  title = task.name.gsub('"',"'") + " [##{task.id}]"
24
24
  run("hub pull-request -b #{current_target} -h #{repo.user}:#{current_branch} \"#{title}\"")
25
+ run("git checkout #{current_target}")
25
26
  finish_task(task)
26
27
  end
27
28
 
@@ -42,23 +43,28 @@ module PT::Flow
42
43
  pull_request = select("Please select a pull request to review", table)
43
44
  run("git fetch")
44
45
  run("git checkout #{pull_request.head.ref}")
45
- run("open #{pull_request.html_url}")
46
+ run("open #{pull_request.html_url}/files")
46
47
  rescue Github::Error::Unauthorized => e
47
48
  error("Error from github: #{e.message}")
48
49
  end
49
50
 
50
51
  def cleanup
52
+ title("Cleaning merged story branches for [#{current_target}]")
53
+
51
54
  # Update our list of remotes
52
55
  run("git fetch")
53
56
  run("git remote prune origin")
54
57
 
55
- # Remove local branches fully merged with origin/master
56
- run("git branch --merged origin/master | grep -v 'master$' | xargs git branch -D")
58
+ # Only clean out merged story branches for current topic
59
+ filter = "#{current_target}-[0-9]*$"
60
+
61
+ # Remove local branches fully merged with origin/current_target
62
+ run("git branch --merged origin/#{current_target} | grep '#{filter}' | xargs git branch -D")
57
63
 
58
64
  # Remove remote branches fully merged with origin/master
59
- run("git branch -r --merged origin/master | sed 's/ *origin\\///' | grep -v 'master$' | xargs -I% git push origin :%")
65
+ run("git branch -r --merged origin/#{current_target} | sed 's/ *origin\\///' | grep '#{filter}' | xargs -I% git push origin :%")
60
66
 
61
- congrats('All clean!')
67
+ congrats("Deleted branches merged with [#{current_target}]")
62
68
  end
63
69
 
64
70
  def help
@@ -1,5 +1,5 @@
1
1
  module PT
2
2
  module Flow
3
- VERSION = "0.5.2"
3
+ VERSION = "0.5.3"
4
4
  end
5
5
  end
@@ -67,6 +67,7 @@ describe PT::Flow::UI do
67
67
  it "pushes the current branch to origin, flags the story as finished, and opens a github pull request" do
68
68
  PT::Flow::UI.any_instance.should_receive(:run).with('git push origin new_feature-4459994')
69
69
  PT::Flow::UI.any_instance.should_receive(:run).with("hub pull-request -b new_feature -h cookpad:new_feature-4459994 \"It's an Unestimated Feature [#4459994]\"")
70
+ PT::Flow::UI.any_instance.should_receive(:run).with('git checkout new_feature')
70
71
  PT::Flow::UI.new %w{ finish }
71
72
  WebMock.should have_requested(:put, "#{endpoint}/projects/102622/stories/4459994").with(body: /<current_state>finished<\/current_state>/)
72
73
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pt-flow
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.2
4
+ version: 0.5.3
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ date: 2012-10-19 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: pt
16
- requirement: &70237849668400 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,15 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70237849668400
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: '0'
25
30
  - !ruby/object:Gem::Dependency
26
31
  name: hub
27
- requirement: &70237849667640 !ruby/object:Gem::Requirement
32
+ requirement: !ruby/object:Gem::Requirement
28
33
  none: false
29
34
  requirements:
30
35
  - - ! '>='
@@ -32,10 +37,15 @@ dependencies:
32
37
  version: '0'
33
38
  type: :runtime
34
39
  prerelease: false
35
- version_requirements: *70237849667640
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '0'
36
46
  - !ruby/object:Gem::Dependency
37
47
  name: github_api
38
- requirement: &70237849666640 !ruby/object:Gem::Requirement
48
+ requirement: !ruby/object:Gem::Requirement
39
49
  none: false
40
50
  requirements:
41
51
  - - ! '>='
@@ -43,10 +53,15 @@ dependencies:
43
53
  version: '0'
44
54
  type: :runtime
45
55
  prerelease: false
46
- version_requirements: *70237849666640
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
47
62
  - !ruby/object:Gem::Dependency
48
63
  name: rspec
49
- requirement: &70237849665180 !ruby/object:Gem::Requirement
64
+ requirement: !ruby/object:Gem::Requirement
50
65
  none: false
51
66
  requirements:
52
67
  - - ~>
@@ -54,10 +69,15 @@ dependencies:
54
69
  version: '2.9'
55
70
  type: :development
56
71
  prerelease: false
57
- version_requirements: *70237849665180
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ~>
76
+ - !ruby/object:Gem::Version
77
+ version: '2.9'
58
78
  - !ruby/object:Gem::Dependency
59
79
  name: webmock
60
- requirement: &70237849663680 !ruby/object:Gem::Requirement
80
+ requirement: !ruby/object:Gem::Requirement
61
81
  none: false
62
82
  requirements:
63
83
  - - ! '>='
@@ -65,10 +85,15 @@ dependencies:
65
85
  version: '0'
66
86
  type: :development
67
87
  prerelease: false
68
- version_requirements: *70237849663680
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ! '>='
92
+ - !ruby/object:Gem::Version
93
+ version: '0'
69
94
  - !ruby/object:Gem::Dependency
70
95
  name: guard
71
- requirement: &70237849661760 !ruby/object:Gem::Requirement
96
+ requirement: !ruby/object:Gem::Requirement
72
97
  none: false
73
98
  requirements:
74
99
  - - ! '>='
@@ -76,10 +101,15 @@ dependencies:
76
101
  version: '0'
77
102
  type: :development
78
103
  prerelease: false
79
- version_requirements: *70237849661760
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ! '>='
108
+ - !ruby/object:Gem::Version
109
+ version: '0'
80
110
  - !ruby/object:Gem::Dependency
81
111
  name: guard-rspec
82
- requirement: &70237849659420 !ruby/object:Gem::Requirement
112
+ requirement: !ruby/object:Gem::Requirement
83
113
  none: false
84
114
  requirements:
85
115
  - - ! '>='
@@ -87,7 +117,12 @@ dependencies:
87
117
  version: '0'
88
118
  type: :development
89
119
  prerelease: false
90
- version_requirements: *70237849659420
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ none: false
122
+ requirements:
123
+ - - ! '>='
124
+ - !ruby/object:Gem::Version
125
+ version: '0'
91
126
  description: Some extra methods for the pt gem to use in our dev flow.
92
127
  email:
93
128
  - jens@balvig.com
@@ -141,7 +176,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
141
176
  version: '0'
142
177
  segments:
143
178
  - 0
144
- hash: 1176635315291468353
179
+ hash: 1501218618260700308
145
180
  required_rubygems_version: !ruby/object:Gem::Requirement
146
181
  none: false
147
182
  requirements:
@@ -150,10 +185,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
150
185
  version: '0'
151
186
  segments:
152
187
  - 0
153
- hash: 1176635315291468353
188
+ hash: 1501218618260700308
154
189
  requirements: []
155
190
  rubyforge_project:
156
- rubygems_version: 1.8.11
191
+ rubygems_version: 1.8.23
157
192
  signing_key:
158
193
  specification_version: 3
159
194
  summary: Some extra methods for the pt gem to use in our dev flow.