summaryrefslogtreecommitdiff
path: root/cli/napi/sym
diff options
context:
space:
mode:
authorNathan Whitaker <17734409+nathanwhit@users.noreply.github.com>2024-10-02 10:43:42 -0700
committerGitHub <noreply@github.com>2024-10-02 10:43:42 -0700
commitbbd4ae1bc12dc6b34d4a455015096b7113a5cec5 (patch)
tree1d91babfa3fdfe47d0a3b01809081150ede27628 /cli/napi/sym
parent1837aed79b77b3137563d4730d02e466c85b2b87 (diff)
fix(node): implement libuv APIs needed to support `npm:sqlite3` (#25893)
Fixes #24740. Implements the `uv_mutex_*` and `uv_async_*` APIs. The mutex API is implemented exactly as libuv, a thin wrapper over the OS's native mutex. The async API is implemented in terms of napi_async_work. As documented in the napi docs, you really shouldn't call `napi_queue_async_work` multiple times (it is documented as undefined behavior). However, our implementation doesn't have any issue with this, so I believe it suits our purpose here.
Diffstat (limited to 'cli/napi/sym')
-rw-r--r--cli/napi/sym/symbol_exports.json9
1 files changed, 8 insertions, 1 deletions
diff --git a/cli/napi/sym/symbol_exports.json b/cli/napi/sym/symbol_exports.json
index 64b548d49..00946b8ed 100644
--- a/cli/napi/sym/symbol_exports.json
+++ b/cli/napi/sym/symbol_exports.json
@@ -152,6 +152,13 @@
"napi_check_object_type_tag",
"node_api_post_finalizer",
"napi_add_async_cleanup_hook",
- "napi_remove_async_cleanup_hook"
+ "napi_remove_async_cleanup_hook",
+ "uv_mutex_init",
+ "uv_mutex_lock",
+ "uv_mutex_unlock",
+ "uv_mutex_destroy",
+ "uv_async_init",
+ "uv_async_send",
+ "uv_close"
]
}