[Feedback] NIOPostgres: A NIO-Based PostgreSQL Driver

What is your evaluation of the proposal?

:+1:

the abstraction level in this client is just right imo: not too low-level-and-difficult, and not too high-level-and-opinionated. its design principals can be adopted and extended to other database clients so it sets the tone well for the ecosystem

Is the problem being addressed significant enough?

absolutely. database drivers, and postgres specifically, have been called out as a priority by the community and the sswg: https://forums.swift.org/t/server-work-group-new-focus-areas

Does this proposal fit well with the feel and direction of Swift on Server?

yes. there are a few nits that can be addressed via PRs as this matures. the integration with swift-nio, swift-logging and swift-metrics is great

If you have used other languages or libraries with a similar feature, how do you feel that this proposal compares to those?

yes, i'v used many database client in many languages. as mentioned above, i like how not-too-high-level and not-too-low-level this client abstractions are, which means it can be used to build more opinionated solution/frameworks like ORMs, but also be used directly by applications that need to go closer to the metal

How much effort did you put into your review? A glance, a quick reading, or an in-depth study?

moderate effort, including integrating and testing it in a real-life (albeit small scale) application that used a different postgres client

1 Like