Introduction
I’ve released ACOR v1.2.0. This version focuses on restructuring the project to follow Go standards and fixing a few bugs.
Standard Project Structure
v1.2.0 restructures the project to follow the standard Go project layout (#2).
As the project grew, managing the file structure systematically became necessary. Following the Standard Go Project Layout guidelines:
pkg/: Package code importable by external projectsinternal/: Private application codecmd/: Main applications
This structure makes the project’s intent clearer and more maintainable.
Go Version Support Changes
I updated the Go version support policy (#5).
Go releases a new version every 6 months, with each major version supported for about a year. I adjusted the tested Go versions accordingly, ensuring compatibility with the latest Go versions while reducing the burden of supporting older versions.
Error Name Change
Changed the RedisAlreadyClosed error name for consistency (#7).
Following Go conventions, I updated error variable names to use the Err prefix. This matches the pattern used by the Go standard library and many third-party libraries.
NodeKey Output Bug Fix
Fixed a bug where NodeKey output wasn’t being written correctly (#13).
The bug caused string conversion to be missing under certain conditions, which could cause issues during debugging and logging. This has been resolved in this release.
How to Upgrade
Existing ACOR users can upgrade with:
| |
If you’re using Go modules, the go.mod file will be updated automatically.
Conclusion
While v1.2.0 doesn’t bring major functional changes, it standardizes the project structure and includes meaningful bug fixes. These improvements will help with future maintenance and contributor onboarding.
For more details, see the GitHub release notes and the repository.