From: Daeyeon Jeong Date: Mon, 24 Jul 2023 23:28:51 +0000 (+0900) Subject: Node_Escargot_Release_230725_77ce7764 X-Git-Tag: accepted/tizen/unified/20240620.050750~2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=7a6916400153c9041542096563ef3421708f9974;p=platform%2Fframework%2Fweb%2Flwnode.git Node_Escargot_Release_230725_77ce7764 Change-Id: I389fd75a8bdec70320d956513e04f004799a00e2 Signed-off-by: Daeyeon Jeong --- diff --git a/deps/escargot/src/api/EscargotPublic.h b/deps/escargot/src/api/EscargotPublic.h index ed07cb2..ad97fda 100644 --- a/deps/escargot/src/api/EscargotPublic.h +++ b/deps/escargot/src/api/EscargotPublic.h @@ -30,7 +30,7 @@ #include #include -#include // HOTFIX(daeyeon) suppress build errors on gcc-13 +#include #include #include #include diff --git a/deps/escargot/third_party/wasm/wabt/src/interp/interp-wasm-c-api.cc.rej b/deps/escargot/third_party/wasm/wabt/src/interp/interp-wasm-c-api.cc.rej deleted file mode 100644 index 5cbe5d2..0000000 --- a/deps/escargot/third_party/wasm/wabt/src/interp/interp-wasm-c-api.cc.rej +++ /dev/null @@ -1,52 +0,0 @@ ---- src/interp/interp-wasm-c-api.cc -+++ src/interp/interp-wasm-c-api.cc -@@ -626,6 +626,11 @@ own wasm_store_t* wasm_store_new(wasm_engine_t* engine) { - return new wasm_store_t(s_features); - } - -+void wasm_store_gc(wasm_store_t* store) { -+ assert(store); -+ store->I.Collect(); -+} -+ - // wasm_module - - own wasm_module_t* wasm_module_new(wasm_store_t* store, -@@ -760,6 +765,20 @@ void wasm_instance_exports(const wasm_instance_t* instance, - } - } - -+uint32_t wasm_instance_func_index(const wasm_instance_t* instance, -+ const wasm_func_t* func) { -+ auto&& funcs = instance->As()->funcs(); -+ -+ assert(funcs.size() < wasm_limits_max_default); -+ for (size_t i = 0; i < funcs.size(); ++i) { -+ if (funcs[i] == func->I.ref()) { -+ return i; -+ } -+ } -+ -+ return wasm_limits_max_default; -+} -+ - // wasm_functype - - own wasm_functype_t* wasm_functype_new(own wasm_valtype_vec_t* params, -@@ -1170,6 +1189,16 @@ void wasm_val_vec_delete(own wasm_val_vec_t* vec) { - } \ - delete[] vec->data; \ - vec->size = 0; \ -+ } \ -+ void wasm_##name##_vec_delete_with_size(wasm_##name##_vec_t* vec, \ -+ size_t size) { \ -+ assert(size <= vec->size); \ -+ TRACE0(); \ -+ for (size_t i = 0; i < size; ++i) { \ -+ delete vec->data[i]; \ -+ } \ -+ delete[] vec->data; \ -+ vec->size = 0; \ - } - - WASM_IMPL_VEC_OWN(frame); diff --git a/deps/node/src/module_wrap.cc b/deps/node/src/module_wrap.cc index f778b08..ec2e1b3 100644 --- a/deps/node/src/module_wrap.cc +++ b/deps/node/src/module_wrap.cc @@ -558,8 +558,9 @@ static MaybeLocal ImportModuleDynamically( ->Uint32Value(context) .ToChecked(); if (type == ScriptType::kScript) { - contextify::ContextifyScript* wrap = env->id_to_script_map.find(id)->second; - object = wrap->object(); + auto it = env->id_to_function_map.find(id); + CHECK_NE(it, env->id_to_function_map.end()); + object = it->second->object(); } else if (type == ScriptType::kModule) { ModuleWrap* wrap = ModuleWrap::GetFromID(env, id); object = wrap->object(); diff --git a/deps/node/src/node_crypto.cc b/deps/node/src/node_crypto.cc index ed886ab..dae3372 100644 --- a/deps/node/src/node_crypto.cc +++ b/deps/node/src/node_crypto.cc @@ -4579,11 +4579,11 @@ static unsigned int GetBytesOfRS(const ManagedEVPPKey& pkey) { int bits, base_id = EVP_PKEY_base_id(pkey.get()); if (base_id == EVP_PKEY_DSA) { - DSA* dsa_key = EVP_PKEY_get0_DSA(pkey.get()); + const DSA* dsa_key = EVP_PKEY_get0_DSA(pkey.get()); // Both r and s are computed mod q, so their width is limited by that of q. bits = BN_num_bits(DSA_get0_q(dsa_key)); } else if (base_id == EVP_PKEY_EC) { - EC_KEY* ec_key = EVP_PKEY_get0_EC_KEY(pkey.get()); + const EC_KEY* ec_key = EVP_PKEY_get0_EC_KEY(pkey.get()); const EC_GROUP* ec_group = EC_KEY_get0_group(ec_key); bits = EC_GROUP_order_bits(ec_group); } else { diff --git a/deps/node/src/node_messaging.cc b/deps/node/src/node_messaging.cc index 17ca38b..2bfd489 100644 --- a/deps/node/src/node_messaging.cc +++ b/deps/node/src/node_messaging.cc @@ -327,7 +327,7 @@ class SerializerDelegate : public ValueSerializer::Delegate { std::vector> nested_transferables; if (!host_objects_[i]->NestedTransferables().To(&nested_transferables)) return Nothing(); - for (auto nested_transferable : nested_transferables) { + for (auto& nested_transferable : nested_transferables) { if (std::find(host_objects_.begin(), host_objects_.end(), nested_transferable) == host_objects_.end()) { diff --git a/packaging/lwnode.spec b/packaging/lwnode.spec index 26abeb4..b9c1d62 100644 --- a/packaging/lwnode.spec +++ b/packaging/lwnode.spec @@ -37,14 +37,24 @@ BuildRequires: pkgconfig(glib-2.0) BuildRequires: nghttp2-devel BuildRequires: pkgconfig(libcares) -%if (0%{?tizen_version_major} >= 6) +%if (0%{?tizen_version_major} >= 8) +BuildRequires: pkgconfig(openssl3) +%endif + +%if (0%{?tizen_version_major} == 7 || 0%{?tizen_version_major} == 6) BuildRequires: pkgconfig(openssl1.1) -%else - %if (0%{?tizen_version_major} == 5) && (0%{?tizen_version_minor} == 5) +%endif + +%if (0%{?tizen_version_major} == 5) +%if (0%{?tizen_version_minor} >= 5) BuildRequires: pkgconfig(openssl1.1) - %else +%else +BuildRequires: pkgconfig(openssl) +%endif +%endif + +%if (0%{?tizen_version_major} < 5) BuildRequires: pkgconfig(openssl) - %endif %endif %if 0%{?asan} == 1 diff --git a/src/api-environment.cc b/src/api-environment.cc index f26ce59..3d70b80 100644 --- a/src/api-environment.cc +++ b/src/api-environment.cc @@ -777,8 +777,8 @@ MaybeLocal v8::RegExp::Exec(Local context, } auto vector = ValueVectorRef::create(); - for (auto tokens : result.m_matchResults) { - for (auto token : tokens) { + for (auto& tokens : result.m_matchResults) { + for (auto& token : tokens) { auto match = subject->substring(token.m_start, token.m_end); vector->pushBack(match); } diff --git a/src/api-handles.cc b/src/api-handles.cc index 4beacb3..494d7a6 100644 --- a/src/api-handles.cc +++ b/src/api-handles.cc @@ -49,10 +49,10 @@ void* HandleScope::operator new[](size_t) { std::abort(); } void HandleScope::operator delete(void*, size_t) { - std::abort(); + LWNODE_UNIMPLEMENT; } void HandleScope::operator delete[](void*, size_t) { - std::abort(); + LWNODE_UNIMPLEMENT; } int HandleScope::NumberOfHandles(Isolate* isolate) { diff --git a/src/api/utils/logger/flags.cc b/src/api/utils/logger/flags.cc index eb78abf..b900588 100644 --- a/src/api/utils/logger/flags.cc +++ b/src/api/utils/logger/flags.cc @@ -96,7 +96,7 @@ void Flags::add(const std::string& userOption) { std::string optionValues = userOption.substr(userOption.find_first_of('=') + 1); // +1 for skipping '=' auto tokens = strSplit(optionValues, ','); - for (auto token : tokens) { + for (auto& token : tokens) { flag->addValue(token); } } diff --git a/src/api/utils/logger/logger-impl.cc b/src/api/utils/logger/logger-impl.cc index f6a80dd..dbfff2c 100644 --- a/src/api/utils/logger/logger-impl.cc +++ b/src/api/utils/logger/logger-impl.cc @@ -167,7 +167,7 @@ Logger& Logger::flush() { void StdOut::flush(std::stringstream& stream, std::shared_ptr config) { - fprintf(stdout, "%s", stream.str().c_str()); + fprintf(stderr, "%s", stream.str().c_str()); } // --- Option --- diff --git a/tools/check_tidy.py b/tools/check_tidy.py index 398062f..61ad258 100755 --- a/tools/check_tidy.py +++ b/tools/check_tidy.py @@ -16,8 +16,6 @@ # note: this uses `black` for formatting. -from __future__ import print_function - import os import subprocess import sys @@ -96,7 +94,9 @@ def check_tidy(src_dir, update, base, stats): with open(file, "r") as f: original = f.readlines() - formatted = subprocess.check_output([clang_format, "-style=file", file]) + formatted = subprocess.check_output( + [clang_format, "-style=file", file], encoding="utf-8" + ) if update: with open(file, "w") as f: diff --git a/tools/patch/01-escargot-gcc13-build-error.patch b/tools/patch/01-escargot-gcc13-build-error.patch new file mode 100644 index 0000000..c919076 --- /dev/null +++ b/tools/patch/01-escargot-gcc13-build-error.patch @@ -0,0 +1,12 @@ +diff --git raw/src/api/EscargotPublic.h fix/src/api/EscargotPublic.h +index 3a8362a9..6fc888d1 100644 +--- raw/src/api/EscargotPublic.h ++++ fix/src/api/EscargotPublic.h +@@ -30,6 +30,7 @@ + + #include + #include ++#include + #include + #include + #include diff --git a/tools/release.sh b/tools/release.sh index a5e9296..74ec517 100755 --- a/tools/release.sh +++ b/tools/release.sh @@ -23,6 +23,10 @@ git submodule update --init pushd deps/escargot git submodule update --init third_party +# Patch update code for escargot +find ../../tools/patch -type f -name "*escargot*.patch" \ + -exec patch -p1 --forward -r /dev/null -i {} \; + # Patch update code for wasm pushd third_party/wasm/wabt patch -p0 --forward -r /dev/null -i ../../../tools/test/wasm-js/wabt_patch