Merge lp:~mvo/snappy/snappy-refactor-progress-pkgname into lp:~snappy-dev/snappy/snappy-moved-to-github

Proposed by Michael Vogt on 2015-05-06
Status: Merged
Approved by: John Lenton on 2015-05-06
Approved revision: 442
Merged at revision: 442
Proposed branch: lp:~mvo/snappy/snappy-refactor-progress-pkgname
Merge into: lp:~snappy-dev/snappy/snappy-moved-to-github
Diff against target: 225 lines (+24/-25)
11 files modified
cmd/snappy/cmd_install.go (+1/-1)
cmd/snappy/cmd_purge.go (+1/-1)
cmd/snappy/cmd_remove.go (+1/-1)
cmd/snappy/cmd_rollback.go (+1/-1)
cmd/snappy/cmd_set.go (+1/-1)
cmd/snappy/cmd_update.go (+2/-2)
progress/progress.go (+8/-9)
progress/progress_test.go (+6/-6)
snappy/common_test.go (+1/-1)
snappy/snapp.go (+1/-1)
snappy/systemimage_native.go (+1/-1)
To merge this branch: bzr merge lp:~mvo/snappy/snappy-refactor-progress-pkgname
Reviewer Review Type Date Requested Status
John Lenton 2015-05-06 Approve on 2015-05-06
Review via email: mp+258373@code.launchpad.net

Commit Message

Refactor the progress interface to not take a pkgname in New()

Description of the Change

This is a followup branch for the comment of John in
https://code.launchpad.net/~mvo/snappy/snappy-progress-meter-for-gc/+merge/257996

John points out that the package name is only used in Progress.Start()
and that for some operations (like garbage collect) it does not make
sense to set it for the entire progress. So this branch updates the
code to only use the pkgname in Start()

To post a comment you must log in.
John Lenton (chipaca) wrote :

Whee!

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'cmd/snappy/cmd_install.go'
2--- cmd/snappy/cmd_install.go 2015-04-21 15:52:02 +0000
3+++ cmd/snappy/cmd_install.go 2015-05-06 12:28:55 +0000
4@@ -69,7 +69,7 @@
5
6 fmt.Printf("Installing %s\n", pkgName)
7
8- realPkgName, err := snappy.Install(pkgName, flags, progress.MakeProgressBar(pkgName))
9+ realPkgName, err := snappy.Install(pkgName, flags, progress.MakeProgressBar())
10 if err != nil {
11 return err
12 }
13
14=== modified file 'cmd/snappy/cmd_purge.go'
15--- cmd/snappy/cmd_purge.go 2015-04-21 15:52:02 +0000
16+++ cmd/snappy/cmd_purge.go 2015-05-06 12:28:55 +0000
17@@ -56,7 +56,7 @@
18 for _, part := range args {
19 fmt.Printf("Purging %s\n", part)
20
21- if err := snappy.Purge(part, flags, progress.MakeProgressBar(part)); err != nil {
22+ if err := snappy.Purge(part, flags, progress.MakeProgressBar()); err != nil {
23 return err
24 }
25 }
26
27=== modified file 'cmd/snappy/cmd_remove.go'
28--- cmd/snappy/cmd_remove.go 2015-04-21 15:52:02 +0000
29+++ cmd/snappy/cmd_remove.go 2015-05-06 12:28:55 +0000
30@@ -52,7 +52,7 @@
31 for _, part := range args {
32 fmt.Printf("Removing %s\n", part)
33
34- if err := snappy.Remove(part, flags, progress.MakeProgressBar(part)); err != nil {
35+ if err := snappy.Remove(part, flags, progress.MakeProgressBar()); err != nil {
36 return err
37 }
38 }
39
40=== modified file 'cmd/snappy/cmd_rollback.go'
41--- cmd/snappy/cmd_rollback.go 2015-04-30 16:56:15 +0000
42+++ cmd/snappy/cmd_rollback.go 2015-05-06 12:28:55 +0000
43@@ -58,7 +58,7 @@
44 return errNeedPackageName
45 }
46
47- nowVersion, err := snappy.Rollback(pkg, version, progress.MakeProgressBar(pkg))
48+ nowVersion, err := snappy.Rollback(pkg, version, progress.MakeProgressBar())
49 if err != nil {
50 return err
51 }
52
53=== modified file 'cmd/snappy/cmd_set.go'
54--- cmd/snappy/cmd_set.go 2015-04-30 16:56:15 +0000
55+++ cmd/snappy/cmd_set.go 2015-05-06 12:28:55 +0000
56@@ -55,7 +55,7 @@
57 return err
58 }
59
60- return snappy.SetProperty(pkgname, progress.MakeProgressBar(pkgname), args...)
61+ return snappy.SetProperty(pkgname, progress.MakeProgressBar(), args...)
62 }
63
64 func parseSetPropertyCmdline(args ...string) (pkgname string, out []string, err error) {
65
66=== modified file 'cmd/snappy/cmd_update.go'
67--- cmd/snappy/cmd_update.go 2015-05-01 06:38:21 +0000
68+++ cmd/snappy/cmd_update.go 2015-05-06 12:28:55 +0000
69@@ -68,10 +68,10 @@
70
71 for _, part := range updates {
72 fmt.Printf("Installing %s (%s)\n", part.Name(), part.Version())
73- if _, err := part.Install(progress.MakeProgressBar(part.Name()), flags); err != nil {
74+ if _, err := part.Install(progress.MakeProgressBar(), flags); err != nil {
75 return err
76 }
77- if err := snappy.GarbageCollect(part.Name(), flags, progress.MakeProgressBar(part.Name())); err != nil {
78+ if err := snappy.GarbageCollect(part.Name(), flags, progress.MakeProgressBar()); err != nil {
79 return err
80 }
81 }
82
83=== modified file 'progress/progress.go'
84--- progress/progress.go 2015-04-21 15:52:02 +0000
85+++ progress/progress.go 2015-05-06 12:28:55 +0000
86@@ -29,7 +29,7 @@
87 // Meter is an interface to show progress to the user
88 type Meter interface {
89 // Start progress with max "total" steps
90- Start(total float64)
91+ Start(pkg string, total float64)
92
93 // set progress to the "current" step
94 Set(current float64)
95@@ -58,7 +58,7 @@
96 }
97
98 // Start does nothing
99-func (t *NullProgress) Start(total float64) {
100+func (t *NullProgress) Start(pkg string, total float64) {
101 }
102
103 // Set does nothing
104@@ -94,18 +94,17 @@
105 type TextProgress struct {
106 Meter
107 pbar *pb.ProgressBar
108- pkg string
109 spinStep int
110 }
111
112 // NewTextProgress returns a new TextProgress type
113-func NewTextProgress(pkg string) *TextProgress {
114- return &TextProgress{pkg: pkg}
115+func NewTextProgress() *TextProgress {
116+ return &TextProgress{}
117 }
118
119 // Start starts showing progress
120-func (t *TextProgress) Start(total float64) {
121- fmt.Println("Starting download of", t.pkg)
122+func (t *TextProgress) Start(pkg string, total float64) {
123+ fmt.Println("Starting download of", pkg)
124
125 // TODO go to New64 once we update the pb package.
126 t.pbar = pb.New(0)
127@@ -179,10 +178,10 @@
128
129 // MakeProgressBar creates an appropriate progress (which may be a
130 // NullProgress bar if there is no associated terminal).
131-func MakeProgressBar(name string) Meter {
132+func MakeProgressBar() Meter {
133 var pbar Meter
134 if attachedToTerminal() {
135- pbar = NewTextProgress(name)
136+ pbar = NewTextProgress()
137 } else {
138 pbar = &NullProgress{}
139 }
140
141=== modified file 'progress/progress_test.go'
142--- progress/progress_test.go 2015-04-22 10:46:52 +0000
143+++ progress/progress_test.go 2015-05-06 12:28:55 +0000
144@@ -48,7 +48,7 @@
145 oldStdout := os.Stdout
146 os.Stdout = f
147
148- t := NewTextProgress("no-pkg")
149+ t := NewTextProgress()
150 for i := 0; i < 6; i++ {
151 t.Spin("m")
152 }
153@@ -89,7 +89,7 @@
154
155 license := "Void where empty."
156
157- t := NewTextProgress("no-pkg")
158+ t := NewTextProgress()
159 c.Check(t.Agreed("blah blah", license), Equals, value)
160
161 _, err = fout.Seek(0, 0)
162@@ -115,7 +115,7 @@
163 fout.Close()
164 }()
165
166- t := NewTextProgress("no-pkg")
167+ t := NewTextProgress()
168 t.Notify("blah blah")
169
170 _, err = fout.Seek(0, 0)
171@@ -137,12 +137,12 @@
172
173 ts.attachedToTerminalReturn = true
174
175- pbar = MakeProgressBar("foo")
176- c.Assert(pbar, FitsTypeOf, NewTextProgress("foo"))
177+ pbar = MakeProgressBar()
178+ c.Assert(pbar, FitsTypeOf, NewTextProgress())
179
180 ts.attachedToTerminalReturn = false
181
182- pbar = MakeProgressBar("bar")
183+ pbar = MakeProgressBar()
184 c.Assert(pbar, FitsTypeOf, &NullProgress{})
185
186 }
187
188=== modified file 'snappy/common_test.go'
189--- snappy/common_test.go 2015-05-05 16:42:09 +0000
190+++ snappy/common_test.go 2015-05-06 12:28:55 +0000
191@@ -191,7 +191,7 @@
192 notified []string
193 }
194
195-func (m *MockProgressMeter) Start(total float64) {
196+func (m *MockProgressMeter) Start(pkg string, total float64) {
197 m.total = total
198 }
199 func (m *MockProgressMeter) Set(current float64) {
200
201=== modified file 'snappy/snapp.go'
202--- snappy/snapp.go 2015-05-05 23:41:55 +0000
203+++ snappy/snapp.go 2015-05-06 12:28:55 +0000
204@@ -991,7 +991,7 @@
205 }
206
207 if pbar != nil {
208- pbar.Start(float64(resp.ContentLength))
209+ pbar.Start(s.pkg.Name, float64(resp.ContentLength))
210 mw := io.MultiWriter(w, pbar)
211 _, err = io.Copy(mw, resp.Body)
212 pbar.Finished()
213
214=== modified file 'snappy/systemimage_native.go'
215--- snappy/systemimage_native.go 2015-04-02 23:42:34 +0000
216+++ snappy/systemimage_native.go 2015-05-06 12:28:55 +0000
217@@ -125,7 +125,7 @@
218 scanner := bufio.NewScanner(stdout)
219 // s-i is funny, total changes during the runs
220 total := 0.0
221- pb.Start(100)
222+ pb.Start("ubuntu-core", 100)
223
224 for scanner.Scan() {
225 if os.Getenv("SNAPPY_DEBUG") != "" {

Subscribers

People subscribed via source and target branches