Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Expose Database/PostgreSQL/Simple/Internal/PQResultUtils.hs #243

Open
charles-cooper opened this issue Dec 30, 2017 · 1 comment
Open

Expose Database/PostgreSQL/Simple/Internal/PQResultUtils.hs #243

charles-cooper opened this issue Dec 30, 2017 · 1 comment

Comments

@charles-cooper
Copy link

This is a request to expose the functionality of Database.PostgreSQL.Simple.Internal.PQResultUtils. Similarly to Database.PostgreSQL.Simple.Internal, it doesn't need to be a stable API but it would really help external writers implement their own versions of query which can have slightly different hooks than postgresql-simple does without reimplementing (or copy/pasting!) the contents of PQResultUtils.hs.

For instance, a caching mechanism can be implemented by checking if a query is in the cache, and if so running the specified parser on the cached result bytes. It would be more maintainable if it could rely on postgresql-simple's well-developed parsing infrastructure instead of reimplementing it.

Another example is if somebody wanted to implement a binary client, they could simply write new binary parsers but still reuse postgresql-simple's Connection and result handling infrastructure.

I can submit a PR for this if it sounds acceptable

@charles-cooper charles-cooper changed the title Expose Database.PostgreSQL.Simple.Internal.PQResultUtils Expose Database/PostgreSQL/Simple/Internal/PQResultUtils.hs Dec 30, 2017
@lpsmith
Copy link
Owner

lpsmith commented Aug 13, 2018

Sounds fine to me. (Sorry for the delay)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants