Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This pull request includes various updates to the GitHub workflows, Go codebase, and documentation. The most important changes involve enhancing the CI and linting workflows, improving code quality, and updating the Go code to follow best practices.
Workflow Enhancements:
.github/workflows/ci.yml
: Updated the unit test command to include race detection and shuffling..github/workflows/codeql.yml
: Added concurrency control to the CodeQL analysis workflow..github/workflows/lint.yml
: Introduced a new linting workflow for Go code and GitHub Actions.Code Quality Improvements:
client.go
,server.go
,shared.go
,errors.go
,options.go
: Refactored error handling and improved code readability by usingerrors.Is
and other best practices. [1] [2] [3] [4] [5] [6]test/interceptor_test.go
: Enhanced test reliability by adding parallel execution and handling potential server startup errors. [1] [2] [3]Documentation Updates:
README.md
: Specified the shell language for code blocks to improve syntax highlighting.Linter Configuration:
.golangci.yml
: Added detailed linter settings and enabled various linters to enforce code standards.These changes collectively improve the maintainability, reliability, and quality of the codebase.