Skip to content

Releases

v2.3.0

Choose a tag to compare

@github-actions github-actions released this 23 Oct 20:45
627ca06
go get github.com/pskclub/mine-core/v2@v2.3.0

What's Changed

💥 Breaking changes

  • feat(v2)!: sync v2 with idin-core — fixes, memory MQ, presigned POST, rate limit, retry by @pskclub in #17

📦 Dependencies

  • chore(deps): bump the v2-minor-and-patch group across 1 directory with 19 updates by @dependabot[bot] in #13

Full Changelog: v2.2.0...v2.3.0

v2.2.0

Choose a tag to compare

@github-actions github-actions released this 13 Sep 20:36

The first release of github.com/pskclub/mine-core/v2: a batteries-included Go framework for backend services, rebuilt from scratch.

go get github.com/pskclub/mine-core/v2@v2.2.0

Requires Go 1.27 or later.

Highlights

  • One context for everything. HTTP handlers, jobs, consumers and background work share one IContext, which carries the database, cache, logger, Sentry scope and request ID. Nothing lives in global state, and the whole suite passes the race detector.
  • Every capability has an in-memory implementation, so a service's tests need no mocks: NewMemoryCache(), NewMemoryStorage(), NewMemoryMailer(), NewMemoryPusher(), NewRecordingSentry().
  • A capability is never nil. A service with no cache configured still starts. The cache degrades silently, while storage, queues and mail fail loudly, because a lost file cannot be recovered.
  • Structured errors end to end. IError flows through every layer and is reported to Sentry once, with the request's scope attached.

What's inside

Capability Built on
HTTP server, routing, binding, validation Echo v5
SQL repositories GORM: Postgres, MySQL, SQL Server, Oracle, SQLite
MongoDB repositories and aggregation mongo-driver v2
Cache, distributed locks, counters go-redis v9, or in-memory
Message queue RabbitMQ
Jobs, cron, durable job store gocron v2
Object storage and presigned URLs AWS SDK v2 (S3, MinIO), or in-memory
Mail and push notifications go-mail, Firebase
AI: text, typed output, tools, streaming, embeddings multi-provider, or in-memory
Logging, errors, tracing, metrics slog, Sentry
Health probes, graceful shutdown, dev tools built in
Postman and OpenAPI generation go tool postmangen

Getting started

The guides are written in Thai.

Changes since the import

  • Builds against sentry-go v0.49, which removed ClientOptions.DisableLogs and DisableMetrics. Logs and metrics are still sent only when SENTRY_ENABLE_LOGS / SENTRY_ENABLE_METRICS are set; the framework's own gates enforce this, and a regression test covers it.
  • Dependencies updated: AWS SDK v2, sentry-go, mongo-driver v2, goai, x/crypto and Google APIs (#4). GitHub Actions updated (#3).

Notes

  • Do not use v2.0.0, v2.0.6 or v2.1.0. Those tags date from 2022, before the v2/ module existed, and Go cannot resolve the module at them. v2.2.0 is the first usable v2 release.
  • v1 (github.com/pskclub/mine-core) is now in maintenance mode. It receives critical fixes only, and new work goes into v2.

Full Changelog: v1.4.90...v2.2.0

v1.4.91

Choose a tag to compare

@github-actions github-actions released this 13 Sep 21:07

A security maintenance release of github.com/pskclub/mine-core (v1).

go get github.com/pskclub/mine-core@v1.4.91

v1 is now deprecated. It is in maintenance mode and receives critical fixes only. New code should use github.com/pskclub/mine-core/v2; go get prints this notice from this release on. The migration guide covers moving a service across.

⚠️ Requires Go 1.25

The fixed dependency releases need a newer Go, so the module's go directive moves from 1.20 to 1.25.0. Services importing v1 must build with Go 1.25 or later. Earlier toolchains will not compile this version.

Security fixes

govulncheck found 15 vulnerabilities reachable from v1. This release fixes all of them, and it now reports none.

Module From To Advisories
github.com/jackc/pgx/v5 v5.3.1 v5.9.2 GO-2024-2567, GO-2024-2606, GO-2026-5004 (SQL injection, panic)
golang.org/x/image v0.6.0 v0.43.0 GO-2023-1989, GO-2023-1990, GO-2024-2937, GO-2026-4815, GO-2026-5031, GO-2026-5032, GO-2026-5062, GO-2026-5066 (TIFF/image decoding: resource exhaustion, panics)
golang.org/x/net v0.21.0 v0.56.0 GO-2024-2687 (HTTP/2 CONTINUATION flood)
golang.org/x/text v0.17.0 v0.39.0 GO-2026-5970 (infinite loop on invalid input)
go.mongodb.org/mongo-driver v1.17.3 v1.17.7 GO-2026-5327 (out-of-bounds read)
github.com/labstack/echo/v4 v4.10.2 v4.15.4 GO-2025-3553: removes golang-jwt/jwt v3, which has no fixed release

Other changes

  • CI builds and scans v1 with Go 1.27.

Full Changelog: v1.4.90...v1.4.91

⌂ 换网址