aboutsummaryrefslogtreecommitdiff
path: root/internal/progress
diff options
context:
space:
mode:
authorGravatar Runxi Yu2026-03-28 19:58:37 +0000
committerGravatar Runxi Yu2026-03-28 19:58:37 +0000
commitea8373ed78113af57315ae4523d42dfed3a3b1fe (patch)
tree835f98905046a8e5564cf6057af450fe03035444 /internal/progress
parentcommon/iowrap: Add io wrappers (diff)
signatureNo signature
network, internal/progress, format/packfile/ingest: Use WriteFlusher
Diffstat (limited to 'internal/progress')
-rw-r--r--internal/progress/meter.go6
-rw-r--r--internal/progress/new.go1
-rw-r--r--internal/progress/options.go6
-rw-r--r--internal/progress/render.go4
4 files changed, 8 insertions, 9 deletions
diff --git a/internal/progress/meter.go b/internal/progress/meter.go
index 3c0079dd..bdf0e613 100644
--- a/internal/progress/meter.go
+++ b/internal/progress/meter.go
@@ -1,14 +1,14 @@
package progress
import (
- "io"
"time"
+
+ "codeberg.org/lindenii/furgit/common/iowrap"
)
// Meter renders one in-place progress line.
type Meter struct {
- writer io.Writer
- flush func() error
+ writer iowrap.WriteFlusher
title string
total uint64
diff --git a/internal/progress/new.go b/internal/progress/new.go
index a86a0660..2c304279 100644
--- a/internal/progress/new.go
+++ b/internal/progress/new.go
@@ -8,7 +8,6 @@ func New(opts Options) *Meter {
return &Meter{
writer: opts.Writer,
- flush: opts.Flush,
title: opts.Title,
total: opts.Total,
delay: max(opts.Delay, time.Duration(0)),
diff --git a/internal/progress/options.go b/internal/progress/options.go
index d7c08894..40dd9758 100644
--- a/internal/progress/options.go
+++ b/internal/progress/options.go
@@ -1,14 +1,14 @@
package progress
import (
- "io"
"time"
+
+ "codeberg.org/lindenii/furgit/common/iowrap"
)
// Options configures one progress meter.
type Options struct {
- Writer io.Writer
- Flush func() error
+ Writer iowrap.WriteFlusher
Title string
Total uint64
diff --git a/internal/progress/render.go b/internal/progress/render.go
index 6173016a..ae188c0e 100644
--- a/internal/progress/render.go
+++ b/internal/progress/render.go
@@ -32,7 +32,7 @@ func (meter *Meter) render(now time.Time, eol string) {
utils.BestEffortFprintf(meter.writer, "%s", line)
- if meter.flush != nil {
- _ = meter.flush()
+ if meter.writer != nil {
+ _ = meter.writer.Flush()
}
}