node-postgres
node-postgres copied to clipboard
Add ESM support
When importing a CommonJS library, it's flattened into a single object, and you're unable to take advantage of any ESM features. However if you add a few lines to your package.json and a esm.mjs wrapper file that simply re-exports the contents of index.js, then ESM users will be able to take full advantage of ESM features without any changes needed to your source code, and without affecting any CommonJS users. The package.json changes would be as simple as:
"main": "index.js",
"exports": {
".": [
{"require": "index.js", "import": "esm.mjs"},
"index.js"
],
"./": "./"
}
The "index.js" fallback is only necessary to avoid package.json parsing errors in some older versions of Node, which would affect CommonJS users as well. If this library ever supports only Node 14+ in the future, the fallback could be removed.
I would be happy to open a pull request but wish to confirm interest from the maintainers first.
I would be happy to open a pull request but wish to confirm interest from the maintainers first.
Please do. Or fork the project.
yea submit a pr I'd love to take a look at it
What is the status of this one?
I'm currently not able to sit down and do this, but if someone else wanted to that would be great.
I switched over to https://github.com/panates/postgresql-client for ESM & TS support. So far no problems.
+1