Feature Description
This issue is open to gather feedback on the idea of splitting the "dial" functionality into a separate package/project.
Currently, this library has 3 distinct ways to interact:
- Programmatically, as an interface for a Go app to dial connections
- Programmatically, to start, customize, and mount a proxy server
- As an executable, to start, customize, and mount a proxy server from the command line
The first option (dialing connections from an application) often has different ideal behavior compared to the second two, which has lead to some challenging behavior (such as when to log and when to return errors). It's also meant that changes to one interface means a major version bump for the others, even if the the other interfaces are left unchanged. Additionally, it's also meant that there are some dependencies pulled in for the proxy that are relevant to the dialer, and visa versa.
As such, we think it would be a good idea to split the dial functionality into its own project. This is obviously a breaking change, and will lead to a major version bump in the proxy.
We've been prototyping this idea for a while, and would love some feedback on this idea: https://github.com/kurtisvg/cloud-sql-go-connector
Feature Description
This issue is open to gather feedback on the idea of splitting the "dial" functionality into a separate package/project.
Currently, this library has 3 distinct ways to interact:
The first option (dialing connections from an application) often has different ideal behavior compared to the second two, which has lead to some challenging behavior (such as when to log and when to return errors). It's also meant that changes to one interface means a major version bump for the others, even if the the other interfaces are left unchanged. Additionally, it's also meant that there are some dependencies pulled in for the proxy that are relevant to the dialer, and visa versa.
As such, we think it would be a good idea to split the dial functionality into its own project. This is obviously a breaking change, and will lead to a major version bump in the proxy.
We've been prototyping this idea for a while, and would love some feedback on this idea: https://github.com/kurtisvg/cloud-sql-go-connector