You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
There has been an effort to improve code readability, testability, quality, and the overall maintainability of the project. The current C++ codebase is hard to maintain and to properly test end-to-end, and adding features like better integration in Kubernetes is hard. To that end, the authservice-go is a full rewrite of authservice in Go, making the project more accessible to the cloud-native community and easier to integrate into its ecosystem.
It is a drop-in replacement, fully compatible with the existing image. The project contains e2e test suites that run with both images, the authservice-go one and the C++ authservice to guarantee it s a clean drop-in replacement.
I'd like to propose merging authservice-go into the upstream authservice and to use the Go-based version as the main option moving forward, as it is much better tested and usable. I propose to create a v0 branch to keep the C++ code should anyone be interested in continuing that, and use the main branch for authservice-go and call it the v1 version. The reason for having the Go version in the main branch is to properly accommodate the Go module mechanism (having the go.mod file in the main repo branch) and properly convey the project's path forward.
@nacx , This is amazing. We will all benefit a lot from from the increased test coverage, bug fixes and an easy maintainable solution.
:+1 for the proposal to merge authservice-go
There has been an effort to improve code readability, testability, quality, and the overall maintainability of the project. The current C++ codebase is hard to maintain and to properly test end-to-end, and adding features like better integration in Kubernetes is hard. To that end, the authservice-go is a full rewrite of
authservice
in Go, making the project more accessible to the cloud-native community and easier to integrate into its ecosystem.It is a drop-in replacement, fully compatible with the existing image. The project contains e2e test suites that run with both images, the
authservice-go
one and the C++authservice
to guarantee it s a clean drop-in replacement.The rewrite adds extensive code coverage, several end-to-end test suites that verify the correct behavior of the supported OIDC flows, as well as the mentioned compatibility suite.
In addition to the extensive tests and feature parity, it also fixes the following issues:
I'd like to propose merging
authservice-go
into the upstreamauthservice
and to use the Go-based version as the main option moving forward, as it is much better tested and usable. I propose to create av0
branch to keep the C++ code should anyone be interested in continuing that, and use the main branch forauthservice-go
and call it thev1
version. The reason for having the Go version in the main branch is to properly accommodate the Go module mechanism (having thego.mod
file in the main repo branch) and properly convey the project's path forward.@ZackButcher @zinuga I'd love to hear your feedback on this!
The text was updated successfully, but these errors were encountered: