oracle / node-oracledb

Oracle Database driver for Node.js maintained by Oracle Corp.
http://oracle.github.io/node-oracledb/
Other
2.24k stars 1.07k forks source link

WIP: feat: add compatibility with bun #1523

Closed nya1 closed 10 months ago

nya1 commented 1 year ago

Closes #1519

Changes

  1. The preferred way to identify the node version is via process.versions.node (same logic is used also here), there is a fallback to the old process.version
  2. Binary path location is determined using path.resolve in current (node_modules) directory

Bun issues

oracle-contributor-agreement[bot] commented 1 year ago

Thank you for your pull request and welcome to our community! To contribute, please sign the Oracle Contributor Agreement (OCA). The following contributors of this PR have not signed the OCA:

To sign the OCA, please create an Oracle account and sign the OCA in Oracle's Contributor Agreement Application.

When signing the OCA, please provide your GitHub username. After signing the OCA and getting an OCA approval from Oracle, this PR will be automatically updated.

cjbj commented 1 year ago

@nya1 this is still marked a WIP. Shall we merge it into our internal code repo and close this PR (which is our normal release process)? Or are we waiting for more updates from you?

nya1 commented 1 year ago

@nya1 this is still marked a WIP. Shall we merge it into our internal code repo and close this PR (which is our normal release process)? Or are we waiting for more updates from you?

Hello, I've added the draft status on purpose, while working on this issue I discovered some missing napi implementation and bugs in Bun which I reported to the Bun's repository, at the moment there are three major napi implementation missing, I've created a checklist in the PR description (under "Bun issues") with links to Bun's issues to track what we need to have a working/minimum Bun compatibility and go on with the testing and changes.

cjbj commented 1 year ago

@nya1 we will wait for you to let us know when you are finished with this PR.

Jarred-Sumner commented 1 year ago

napi_create_external and napi_get_value_external will be available in Bun v0.2.3

stale[bot] commented 1 year ago

This issue has been automatically marked as inactive because it has not been updated recently. It will be closed if no further activity occurs. Thank you for your contributions.

stale[bot] commented 1 year ago

This issue has been automatically closed because it has not been updated for a month.

Jarred-Sumner commented 1 year ago

napi_make_callback is implemented in the canary build and napi_create_external + napi_get_value_external are in Bun v0.3.0 (there was no v0.2.3)

Assuming there are no bugs (big assumption at the present state), good shot of this working @nya1

to upgrade:

bun upgrade --canary
nya1 commented 1 year ago

napi_make_callback is implemented in the canary build and napi_create_external + napi_get_value_external are in Bun v0.3.0 (there was no v0.2.3)

Assuming there are no bugs (big assumption at the present state), good shot of this working @nya1

to upgrade:

bun upgrade --canary

Thank you for the update, I've encountered another possible bug while testing, I've created a new issue here: https://github.com/oven-sh/bun/issues/1831

stale[bot] commented 1 year ago

This issue has been automatically marked as inactive because it has not been updated recently. It will be closed if no further activity occurs. Thank you for your contributions.

stale[bot] commented 1 year ago

This issue has been automatically closed because it has not been updated for a month.

stale[bot] commented 1 year ago

This issue has been automatically marked as inactive because it has not been updated recently. It will be closed if no further activity occurs. Thank you for your contributions.

cjbj commented 1 year ago

I'm keeping this open so it can be assessed by @nya1 when node-oracledb 6.0 has been released.

cjbj commented 1 year ago

@nya1 can you take a look at this PR with node-oracledb 6 and the new pure JS mode?

stale[bot] commented 11 months ago

This issue has been automatically marked as inactive because it has not been updated recently. It will be closed if no further activity occurs. Thank you for your contributions.

stale[bot] commented 10 months ago

This issue has been automatically closed because it has not been updated for a month.