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 projects
  • internal/: Private application code
  • cmd/: 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:

1
go get github.com/skyoo2003/acor@v1.2.0

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.