Skip to content

Upgrade to golang 1.27.0 - #4031

Merged
j0sh merged 9 commits into
masterfrom
ja/golang-1.27
Sep 9, 2026
Merged

Upgrade to golang 1.27.0#4031
j0sh merged 9 commits into
masterfrom
ja/golang-1.27

Conversation

@j0sh

@j0sh j0sh commented Aug 20, 2026

Copy link
Copy Markdown
Collaborator

Changes:

  • require Go 1.27.0 and refresh dependency classifications with Go 1.27's go mod tidy formatting
  • update the primary and MediaMTX Docker builders to Go 1.27.0
  • raise the Darwin ARM64 deployment target to macOS 13 since that is what 1.27 requires
  • replace the pinned golangci-lint call with straight go vet since golangci-lint only invoked go vet
  • use synctest.Sleep for direct sleep-and-wait sequences in live runner accounting tests
  • replace google/uuid with the new standard library uuid package
  • derive serverless trickle URLs with url.URL.Clone
  • simplify Docker worker and payment stub literals using promoted embedded fields
  • remove cancellation-function pointer comparisons in pricefeedwatcher tests that would have gotten more unreliable due to compiler changes resulting in different closures having equal function pointers more often

For more details on golang 1.27 see the release notes

- require Go 1.27.0 and refresh dependency classifications with
  Go 1.27's go mod tidy formatting
- update the primary and MediaMTX Docker builders to Go 1.27.0
- raise the Darwin ARM64 deployment target to macOS 13 since that
  is what 1.27 requires
- replace the pinned golangci-lint call with straight go vet
  since golangci-lint only invoked go vet
- use synctest.Sleep for direct sleep-and-wait sequences in live
  runner accounting tests
- replace google/uuid with the new standard library uuid package
- derive serverless trickle URLs with url.URL.Clone
- simplify Docker worker and payment stub literals using promoted
  embedded fields
- remove cancellation-function pointer comparisons in pricefeedwatcher
  tests that would have gotten more unreliable due to compiler
  changes resulting in different closures having equal function
  pointers more often
@j0sh
j0sh requested a review from rickstaa August 20, 2026 00:15
@github-actions github-actions Bot added dependencies Pull requests that update a dependency file docker Pull requests that update Docker code github_actions Pull requests that update GitHub Actions code go Pull requests that update Go code AI Issues and PR related to the AI-video branch. labels Aug 20, 2026
@codecov

codecov Bot commented Aug 20, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 39.88785%. Comparing base (176aa41) to head (f6a56d2).
⚠️ Report is 4 commits behind head on master.

Additional details and impacted files

Impacted file tree graph

@@                 Coverage Diff                 @@
##              master       #4031         +/-   ##
===================================================
+ Coverage   35.53708%   39.88785%   +4.35077%     
===================================================
  Files            174         174                 
  Lines          45226       39413       -5813     
===================================================
- Hits           16072       15721        -351     
+ Misses         27880       23692       -4188     
+ Partials        1274           0       -1274     
Files with missing lines Coverage Δ
ai/worker/docker.go 76.45740% <100.00000%> (+5.26065%) ⬆️
ai/worker/serverless_worker.go 27.05224% <100.00000%> (+3.16146%) ⬆️
monitor/kafka.go 0.00000% <ø> (ø)
pm/stub.go 56.32184% <100.00000%> (+0.85966%) ⬆️

... and 170 files with indirect coverage changes


Continue to review full report in Codecov by Harness.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 3f178f9...f6a56d2. Read the comment docs.

Files with missing lines Coverage Δ
ai/worker/docker.go 76.45740% <100.00000%> (+5.26065%) ⬆️
ai/worker/serverless_worker.go 27.05224% <100.00000%> (+3.16146%) ⬆️
monitor/kafka.go 0.00000% <ø> (ø)
pm/stub.go 56.32184% <100.00000%> (+0.85966%) ⬆️

... and 170 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

j0sh and others added 2 commits August 20, 2026 23:08
The reflect-based cancel func comparison this replaces could never fail:
reflect.Value.Pointer returns a code pointer, and every cancelWatch comes
from context.WithCancel, so all of them compared equal regardless of how
many loops ran.

Each watch loop polls the price feed once per period, so a duplicate loop
is observable as a duplicate FetchPriceData call. synctest makes the hour
long period instant and the goroutine scheduling deterministic.
@rickstaa

rickstaa commented Sep 8, 2026

Copy link
Copy Markdown
Member

@j0sh if you want a stand-alone pr to fix the tests. I added it in https://github.com/livepeer/go-livepeer/pull/4044/commits. I also updated the docs ec64ef0.

@j0sh
j0sh enabled auto-merge (squash) September 9, 2026 03:51
@j0sh
j0sh merged commit 68f7fe7 into master Sep 9, 2026
21 checks passed
@j0sh
j0sh deleted the ja/golang-1.27 branch September 9, 2026 03:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

AI Issues and PR related to the AI-video branch. dependencies Pull requests that update a dependency file docker Pull requests that update Docker code github_actions Pull requests that update GitHub Actions code go Pull requests that update Go code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants