diff options
| author | Martin Kagamino Lehoux <martin@lehoux.net> | 2026-08-27 11:32:31 +0200 |
|---|---|---|
| committer | Martin Kagamino Lehoux <martin@lehoux.net> | 2026-08-27 11:32:31 +0200 |
| commit | 1c5fc2e4364063884f33b78f45f351201705fae4 (patch) | |
| tree | d0f76e824a9910771946d4f4c21905309f4f4788 | |
| parent | 825cf388b55a6c8441e02149749bb6e2968477c0 (diff) | |
Tame the deadcode gate and remove dead web helpers
Run deadcode with -test and without the vendored node_modules package so the
check reports only genuinely unreachable code instead of test-only helpers and
vendored functions. Remove the three web helpers it still flagged (formatBikeType,
formatRideType, dataQualityURL) that had no callers. Apply the go fix
modernizations the check gate performs (range-over-int loops and embedded-field
composite literals) that the gate had rewritten in the working tree.
| -rw-r--r-- | climb/detection.go | 4 | ||||
| -rw-r--r-- | mise.toml | 2 | ||||
| -rw-r--r-- | ride/ride.go | 8 | ||||
| -rw-r--r-- | rideanalysis/analysis.go | 4 | ||||
| -rw-r--r-- | web/categories.go | 14 | ||||
| -rw-r--r-- | web/data_quality.go | 4 |
6 files changed, 8 insertions, 28 deletions
diff --git a/climb/detection.go b/climb/detection.go index 1efe1c5..9269c2f 100644 --- a/climb/detection.go +++ b/climb/detection.go @@ -127,7 +127,7 @@ func bestClimbBetween(distances, elevations []float64, minSlope float64) (core.I bestDetectionScore := climbDetectionScore(distances, elevations) best := core.NewInterval(0, end) - for i := 0; i < end; i++ { + for i := range end { detectionScore := climbDetectionScore(distances[i:end], elevations[i:end]) if detectionScore > bestDetectionScore { best.Start = i @@ -155,7 +155,7 @@ func bestClimbBetween(distances, elevations []float64, minSlope float64) (core.I // Classic best too gentle: re-segment into the best qualifying sub-segment. bestDetectionScore = math.Inf(-1) best = core.NewInterval(-1, -1) - for i := 0; i < end; i++ { + for i := range end { for j := i + 1; j <= end; j++ { if Slope(distances[i:j+1], elevations[i:j+1]) < minSlope { continue @@ -29,7 +29,7 @@ run = [ "go vet ./...", "go build ./...", "go test ./...", - "go tool deadcode ./...", + "go tool deadcode -test $(go list ./... | grep -v '/node_modules')", ] [tasks.build] diff --git a/ride/ride.go b/ride/ride.go index 8e8bf95..77a8e14 100644 --- a/ride/ride.go +++ b/ride/ride.go @@ -162,11 +162,9 @@ func FromColumnsWithMetrics(distances []float64, elevations []float64, coords [] func fromColumns(distances []float64, elevations []float64, coords []geodist.Coord, timestamps []time.Time, heartRates, cadences, powers []float64) Ride { ride := Ride{ - Route: climb.Route{ - Distances: distances, - Elevations: elevations, - Coords: coords, - }, + Distances: distances, + Elevations: elevations, + Coords: coords, timestamps: timestamps, heartRates: heartRates, cadences: cadences, diff --git a/rideanalysis/analysis.go b/rideanalysis/analysis.go index a9cf93d..883d72c 100644 --- a/rideanalysis/analysis.go +++ b/rideanalysis/analysis.go @@ -72,11 +72,11 @@ func Analyze(parsed ride.Ride, passes []mountain_pass.MountainPass, officialClim // routeClimb returns the climb segment of route covered by interval. func routeClimb(route climb.Route, interval core.Interval) climb.Climb { - return climb.Climb{Route: climb.Route{ + return climb.Climb{ Distances: route.Distances[interval.Start : interval.End+1], Elevations: route.Elevations[interval.Start : interval.End+1], Coords: route.Coords[interval.Start : interval.End+1], - }} + } } func analyzedClimb(segment climb.Climb, interval core.Interval, name string, officialID int64) AnalyzedClimb { diff --git a/web/categories.go b/web/categories.go index 4077092..a76fa1c 100644 --- a/web/categories.go +++ b/web/categories.go @@ -67,20 +67,6 @@ var rideTypeLabels = map[ride.RideType]string{ ride.RideTypeTransport: "Transport", } -func formatBikeType(value ride.BikeType) string { - if label, ok := bikeTypeLabels[value]; ok { - return label - } - return string(value) -} - -func formatRideType(value ride.RideType) string { - if label, ok := rideTypeLabels[value]; ok { - return label - } - return string(value) -} - func formatCategoryOrEmpty(value string) string { if value == "" { return "—" diff --git a/web/data_quality.go b/web/data_quality.go index 74e84af..562ecf8 100644 --- a/web/data_quality.go +++ b/web/data_quality.go @@ -86,10 +86,6 @@ func dataQualityNotice(r *http.Request) string { return "" } -func dataQualityURL() string { - return "/data-quality" -} - type DataQualityPageData struct { Items []RideView Total int |
