From 18f7bb704f9559d088d2c3a430f958adb9bee794 Mon Sep 17 00:00:00 2001 From: Samuel Attard Date: Tue, 14 Nov 2023 13:12:13 -0800 Subject: [PATCH 1/2] fix: remove AllCan Read/Write Refs https://chromium-review.googlesource.com/c/v8/v8/+/5006387 --- nan.h | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/nan.h b/nan.h index 2a683494..08f85258 100644 --- a/nan.h +++ b/nan.h @@ -47,6 +47,7 @@ #define NODE_18_0_MODULE_VERSION 108 #define NODE_19_0_MODULE_VERSION 111 #define NODE_20_0_MODULE_VERSION 115 +#define NODE_21_0_MODULE_VERSION 120 #ifdef _MSC_VER # define NAN_HAS_CPLUSPLUS_11 (_MSC_VER >= 1800) @@ -2517,7 +2518,9 @@ NAN_DEPRECATED inline void SetAccessor( , GetterCallback getter , SetterCallback setter , v8::Local data +#if (NODE_MODULE_VERSION < NODE_21_0_MODULE_VERSION) , v8::AccessControl settings +#endif , v8::PropertyAttribute attribute , imp::Sig signature) { HandleScope scope; @@ -2550,7 +2553,9 @@ NAN_DEPRECATED inline void SetAccessor( , getter_ , setter_ , obj +#if (NODE_MODULE_VERSION < NODE_21_0_MODULE_VERSION) , settings +#endif , attribute #if (NODE_MODULE_VERSION < NODE_16_0_MODULE_VERSION) , signature @@ -2564,7 +2569,9 @@ inline void SetAccessor( , GetterCallback getter , SetterCallback setter = 0 , v8::Local data = v8::Local() +#if (NODE_MODULE_VERSION < NODE_21_0_MODULE_VERSION) , v8::AccessControl settings = v8::DEFAULT +#endif , v8::PropertyAttribute attribute = v8::None) { HandleScope scope; @@ -2596,7 +2603,9 @@ inline void SetAccessor( , getter_ , setter_ , obj +#if (NODE_MODULE_VERSION < NODE_21_0_MODULE_VERSION) , settings +#endif , attribute ); } @@ -2634,7 +2643,15 @@ inline bool SetAccessor( , New(reinterpret_cast(setter))); } -#if (NODE_MODULE_VERSION >= NODE_6_0_MODULE_VERSION) +#if (NODE_MODULE_VERSION >= NODE_21_0_MODULE_VERSION) + return obj->SetNativeDataProperty( + GetCurrentContext() + , name + , getter_ + , setter_ + , dataobj + , attribute).FromMaybe(false); +#elif (NODE_MODULE_VERSION >= NODE_6_0_MODULE_VERSION) return obj->SetAccessor( GetCurrentContext() , name From 8b13124df2b426a198a24566ec55fd3b336cfdd8 Mon Sep 17 00:00:00 2001 From: Samuel Attard Date: Mon, 20 Nov 2023 23:07:07 -0800 Subject: [PATCH 2/2] fix: do not change signature --- nan.h | 4 ---- 1 file changed, 4 deletions(-) diff --git a/nan.h b/nan.h index 08f85258..4d72795f 100644 --- a/nan.h +++ b/nan.h @@ -2518,9 +2518,7 @@ NAN_DEPRECATED inline void SetAccessor( , GetterCallback getter , SetterCallback setter , v8::Local data -#if (NODE_MODULE_VERSION < NODE_21_0_MODULE_VERSION) , v8::AccessControl settings -#endif , v8::PropertyAttribute attribute , imp::Sig signature) { HandleScope scope; @@ -2569,9 +2567,7 @@ inline void SetAccessor( , GetterCallback getter , SetterCallback setter = 0 , v8::Local data = v8::Local() -#if (NODE_MODULE_VERSION < NODE_21_0_MODULE_VERSION) , v8::AccessControl settings = v8::DEFAULT -#endif , v8::PropertyAttribute attribute = v8::None) { HandleScope scope;