Skip to content

Release/26.6.25 - #200

Merged
Devesh-Skyflow merged 6 commits into
mainfrom
release/26.6.25
Jul 14, 2026
Merged

Release/26.6.25#200
Devesh-Skyflow merged 6 commits into
mainfrom
release/26.6.25

Conversation

@Devesh-Skyflow

Copy link
Copy Markdown
Collaborator

No description provided.

Devesh-Skyflow and others added 5 commits June 22, 2026 10:35
- Bump Go floor 1.23.0 -> 1.25.0 and pin toolchain go1.25.11 to pull in
  patched crypto/tls, crypto/x509 and html/template (CVE-2026-32283,
  CVE-2026-32280, CVE-2026-27142). 1.23/1.24 are EOL and never receive
  these fixes; 1.25 is the lowest security-supported line.
- Upgrade golang.org/x/net v0.41.0 -> v0.56.0 (CVE-2026-33814, HIGH);
  x/sys, x/text, x/tools pulled forward by tidy.
- Remove ghost dependency github.com/hetiansu5/urlquery (unimported).
- Replace sirupsen/logrus with stdlib log/slog in utils/logger; public
  API (Debug/Info/Warn/Error/SetOutput/SetLogLevel, LogLevel constants)
  is unchanged. Only the log-line text format differs.

No source/API changes for consumers. Most consumers on the default
GOTOOLCHAIN=auto pick up the new floor transparently.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…ependencies

SK-2871: fix outdated dependencies and security advisories
The logrus->slog migration introduced two consumer-facing regressions in
utils/logger:

- Data race: `log` was a plain package var reassigned by SetOutput/
  SetLogLevel(OFF) while Debug/Info/Warn/Error read it. logrus guarded
  this with an internal mutex; slog swaps the whole pointer. A shared
  client calling UpdateLogLevel while other goroutines log would race
  (confirmed under `go test -race`). Fixed by holding `log` in an
  atomic.Pointer (lock-free logging path) and guarding writer/rebuild
  with a mutex.
- Format change: slog's TextHandler emitted uppercase levels, "WARN"
  instead of "warning", and an unquoted millisecond timestamp, breaking
  any log parsing keyed on the old format. Added logrusTextHandler, a
  minimal slog.Handler that reproduces logrus TextFormatter{FullTimestamp}
  byte-for-byte: quoted RFC3339 (seconds) time, lowercase levels.

Tests: logger_concurrency_test.go guards the race (run with -race);
verify_behavior_test.go asserts level filtering and exact line format.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Extract logrus level-name string literals into constants (goconst) and
the log-line buffer size into a named constant (revive add-constant).
No behavior change.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…ependencies

SK-2871: make slog logger thread-safe and match logrus output format
@github-actions

Copy link
Copy Markdown

Gitleaks Findings: No secrets detected. Safe to proceed!

@github-actions

Copy link
Copy Markdown

GoSec Findings: No issues found, Good to merge.

@github-actions

Copy link
Copy Markdown

Semgrep Findings: Issues with Error level severity are found (Error is Highest severity in Semgrep), Please resolve the issues before merging.

The `toolchain go1.25.11` line was auto-inserted by the Go tooling and
pins a specific patch release. The `go 1.25.0` directive already sets the
minimum version, so the toolchain directive is unnecessary.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown

Gitleaks Findings: No secrets detected. Safe to proceed!

@github-actions

Copy link
Copy Markdown

GoSec Findings: No issues found, Good to merge.

@github-actions

Copy link
Copy Markdown

Semgrep Findings: Issues with Error level severity are found (Error is Highest severity in Semgrep), Please resolve the issues before merging.

@Devesh-Skyflow
Devesh-Skyflow merged commit cca6f89 into main Jul 14, 2026
6 of 7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants