mathiasschw-db opened a new pull request, #20: URL: https://github.com/apache/spark-connect-go/pull/20
### What changes were proposed in this pull request? This change contains several improvements that all aim to increase the code quality of the spark-connect-go repo. The changes fall in these categories: - Improve unit test coverage by about 30 percentage points - Decoupled the components in the sql package to make them individually testable and only depend on each others interfaces rather than implementation - Added context propagation to the code base. This allows users of the library to set connection timeouts, auth headers etc. - Added method/function level comments where they were missing for public functions - Removed the global var builder 'entry point' and replaced it by a normal constructor so that each builder is simply new instead of the previous copy semantics - Added a simple error hierarchy so that errors can be handled by looking at error types instead of just string values - Removed a strange case of panic'ing the the whole process if some input was invalid - Updated documentation and examples to reflect these changes ### Why are the changes needed? These changes aim (along with subsequent changes) to get this code base to a point where it will eventually be fit for production use, something that is strictly forbidden right now ### Does this PR introduce _any_ user-facing change? The PR as much as possible aims to not change the API but in a few cases this has not been possible. In particular, functions that eventually result in an outbound call to GRPC now take a context parameter. This is necessary and required for real production grade code. In addition, the builder is instantiated slightly differently (actually instantiated instead of being a global var) but the API for it otherwise remains. ### How was this patch tested? All the code that was touch, has gotten some degree of unit testing that at least ensures coverage as well as checking of output -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
