swig/Lib/javascript/v8
William S Fulton 28d92ed341 [JavaScript] Fix the v8 and node engines for v8 14.x (Node.js 26)
v8 14.1 added an EmbedderDataTypeTag to the v8::Object aligned internal field
pointer accessors and 14.2 removed the versions without one, so the generated
code did not compile with Node.js 26. The new SWIGV8_ALIGNED_POINTER_GET and
SWIGV8_ALIGNED_POINTER_SET macros select between them, switching at 14.2 as
14.1 only has the tagged setter.

The default tag is used rather than a SWIG specific one. The tag used when
setting must match the tag used when getting, and modules pass proxy objects
between each other, so a SWIG specific tag would stop a module wrapped by an
older SWIG being read by one wrapped by a newer SWIG.

v8 14.3 similarly added a type tag to v8::External and deprecated the versions
without one, which is fatal as the examples are compiled with -Werror.
SWIGV8_EXTERNAL_NEW now selects between them and the new SWIGV8_EXTERNAL_VALUE
macro does the same for reading the value back.

Node.js 26 is added to the CI test matrix for both the node and napi engines.

The minimum supported v8 version is unchanged at 7.4.

Assisted-by: Claude Code (Opus 5)
2026-08-01 09:42:44 +01:00
..
argcargv.i [JavaScript] Fix the v8 and node engines for v8 13.x (Node.js 24) 2026-08-01 09:42:44 +01:00
arrays_javascript.i Javascript code formatting corrections 2021-03-03 22:22:47 +00:00
ccomplex.i Javascript v8 C complex wrappers fix 2020-10-10 14:53:46 +01:00
cdata.i cdata.i changes and new test li_cdata_bytes 2026-05-25 13:16:09 +01:00
cmalloc.i bring in the `size_t` `cmalloc` in JS 2023-05-31 14:11:13 +02:00
complex.i Add swig configuration files for v8. 2012-09-08 00:57:42 +00:00
exception.i Some fixes for the Javascript generator. 2013-09-09 22:25:51 +03:00
factory.i first batch of tests 2023-05-29 12:39:51 +02:00
javascript.swg Move javascriptkw.swg file to Lib/javascript directory 2024-07-18 22:27:52 +02:00
javascriptcode.swg [JavaScript] Fix the v8 and node engines for v8 13.x (Node.js 24) 2026-08-01 09:42:44 +01:00
javascriptcomplex.swg Remove some locator strings in generated code 2024-04-12 08:12:44 +01:00
javascriptfragments.swg Clean up in `javascripttypemaps.swg`. 2013-09-09 17:34:53 +03:00
javascripthelpers.swg [Javascript] Use SetNativeDataProperty() 2025-06-09 16:11:29 +12:00
javascriptinit.swg [JavaScript] Fix the v8 and node engines for v8 14.x (Node.js 26) 2026-08-01 09:42:44 +01:00
javascriptprimtypes.swg Return uint64_t as double if is bigger than uint32_t 2021-11-29 16:08:03 +01:00
javascriptrun.swg [JavaScript] Fix the v8 and node engines for v8 14.x (Node.js 26) 2026-08-01 09:42:44 +01:00
javascriptruntime.swg Add <errno.h> fragment for errno usage 2024-11-22 19:07:10 +00:00
javascriptstrings.swg Support NULL being passed into char* in typemaps 2024-03-06 21:46:58 +00:00
javascripttypemaps.swg Use the canonical capitalisation of Unified Typemap Library 2026-07-23 17:30:59 +01:00
javascriptuint8array.swg cdata.i changes and new test li_cdata_bytes 2026-05-25 13:16:09 +01:00
std_auto_ptr.i Add missing typecheck typemaps for std::auto_ptr and std::unique_ptr 2022-09-17 10:23:51 +01:00
std_common.i Remove execute permissions from various non-executable files 2014-05-02 20:06:11 +02:00
std_complex.i Add missing declaration for std::complex 2017-10-02 19:07:24 +01:00
std_deque.i Add stub std_deque.i files. 2013-09-24 03:56:19 +02:00
std_except.i Add swig configuration files for v8. 2012-09-08 00:57:42 +00:00
std_map.i Remove deprecated map and vector specialisation macros 2023-12-03 09:55:35 +13:00
std_pair.i Consistent parameter names for std::pair 2019-02-14 22:44:27 +00:00
std_string.i Javascript: fix warnings in li_std_string test. 2014-05-18 22:40:22 +02:00
std_unique_ptr.i Add const std::unique_ptr & input typemaps 2024-03-06 21:46:58 +00:00
std_vector.i Avoid duplicating std::vector<> declaration for JavaScript 2024-06-25 07:54:00 +01:00
stl.i Remove execute permissions from various non-executable files 2014-05-02 20:06:11 +02:00
swigmove.i Provide SWIGTYPE MOVE typemaps in swigmove.i 2022-09-16 08:36:25 +01:00
typemaps.i Remove deprecated BOTH typemap rule 2023-06-15 15:07:04 +12:00