git: bda86431bbd3 - main - */*: update NGINX JavaScript: 0.8.7 -> 0.8.8 (+)

From: Sergey A. Osokin <osa_at_FreeBSD.org>
Date: Tue, 17 Dec 2024 18:45:59 UTC
The branch main has been updated by osa:

URL: https://cgit.FreeBSD.org/ports/commit/?id=bda86431bbd3091a035fd2653fa21a0d00b285f4

commit bda86431bbd3091a035fd2653fa21a0d00b285f4
Author:     Sergey A. Osokin <osa@FreeBSD.org>
AuthorDate: 2024-12-17 18:45:01 +0000
Commit:     Sergey A. Osokin <osa@FreeBSD.org>
CommitDate: 2024-12-17 18:45:53 +0000

    */*: update NGINX JavaScript: 0.8.7 -> 0.8.8 (+)
    
    Bump PORTREVISION for the www/unit.
    
    <ChangeLog>
    
    nginx modules:
    
    *) Feature: implemented shared dictionary for QuickJS engine.
    
    *) Improvement: js_preload_object is refactored.
    
    *) Bugfix: fixed limit rated output.
    
    *) Bugfix: optimized use of SSL contexts for
       js_fetch_trusted_certificate directive.
    
    Core:
    
    *) Feature: implemented process object for QuickJS engine.
    
    *) Feature: implemented process.kill() method.
    
    *) Bugfix: fixed tests with libxml2 2.13 and later.
    
    *) Bugfix: fixed promise resolving when Promise is inherited.
    
    *) Bugfix: fixed absolute scope in cloned VMs.
    
    </ChangeLog>
---
 devel/libnjs/Makefile                              |  8 +++++---
 devel/libnjs/distinfo                              |  6 +++---
 devel/libnjs/files/patch-auto_quickjs              | 15 +++++++++++++++
 devel/libnjs/pkg-plist                             | 16 ++++++++--------
 lang/njs/Makefile                                  |  9 +++++++--
 lang/njs/distinfo                                  |  6 +++---
 lang/njs/files/patch-auto_quickjs                  | 15 +++++++++++++++
 www/nginx-devel/Makefile                           |  5 +++--
 www/nginx-devel/Makefile.extmod                    |  5 +++--
 www/nginx-devel/distinfo                           |  6 +++---
 www/nginx-devel/files/extra-patch-njs-auto-quickjs | 12 ++++++------
 www/nginx-devel/files/extra-patch-njs-nginx-config | 13 +++++++++++++
 www/unit/Makefile                                  |  2 +-
 13 files changed, 85 insertions(+), 33 deletions(-)

diff --git a/devel/libnjs/Makefile b/devel/libnjs/Makefile
index 8d06f29a304b..fbf89b45ed97 100644
--- a/devel/libnjs/Makefile
+++ b/devel/libnjs/Makefile
@@ -1,5 +1,5 @@
 PORTNAME=	libnjs
-DISTVERSION=	0.8.7
+DISTVERSION=	0.8.8
 CATEGORIES=	devel www
 
 MAINTAINER=	osa@FreeBSD.org
@@ -9,7 +9,8 @@ WWW=		https://nginx.org/en/docs/njs/
 LICENSE=	BSD2CLAUSE
 LICENSE_FILE=	${WRKSRC}/LICENSE
 
-LIB_DEPENDS=	libpcre2-8.so:devel/pcre2
+LIB_DEPENDS=	libpcre2-8.so:devel/pcre2 \
+		libquickjs.so:lang/quickjs
 
 USES=		cpe ssl
 
@@ -20,7 +21,8 @@ GH_TUPLE=	nginx:njs:${DISTVERSION}
 HAS_CONFIGURE=	yes
 
 post-patch:
-	@${REINPLACE_CMD} 's|%%LOCALBASE%%|${LOCALBASE}|g' \
+	${REINPLACE_CMD} 's|%%LOCALBASE%%|${LOCALBASE}|g' \
+		${WRKSRC}/auto/quickjs \
 		${WRKSRC}/src/njs.pc.in
 
 do-build:
diff --git a/devel/libnjs/distinfo b/devel/libnjs/distinfo
index 311d9e77236d..3d0e3565ce30 100644
--- a/devel/libnjs/distinfo
+++ b/devel/libnjs/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1729691182
-SHA256 (nginx-njs-0.8.7_GH0.tar.gz) = e959b01637d6684387347cc6dea073949467193d273f58062129e52b110aefa2
-SIZE (nginx-njs-0.8.7_GH0.tar.gz) = 880217
+TIMESTAMP = 1734284479
+SHA256 (nginx-njs-0.8.8_GH0.tar.gz) = 356386c8133590a4d1d3a529694821d4d1a00b6f7575eeb454a698bec823477b
+SIZE (nginx-njs-0.8.8_GH0.tar.gz) = 887735
diff --git a/devel/libnjs/files/patch-auto_quickjs b/devel/libnjs/files/patch-auto_quickjs
new file mode 100644
index 000000000000..8312bac9b456
--- /dev/null
+++ b/devel/libnjs/files/patch-auto_quickjs
@@ -0,0 +1,15 @@
+--- auto/quickjs.orig	2024-12-15 17:49:15 UTC
++++ auto/quickjs
+@@ -46,9 +46,9 @@ if [ $NJS_TRY_QUICKJS = YES ]; then
+     fi
+ 
+     if [ $njs_found = no ]; then
+-        njs_feature="QuickJS library -I/usr/include/quickjs/ -L/usr/lib/quickjs/ -lquickjs"
+-        njs_feature_incs="/usr/include/quickjs/"
+-        njs_feature_libs="-L/usr/lib/quickjs/ -lquickjs -lm -ldl -lpthread"
++        njs_feature="QuickJS library -I%%LOCALBASE%%/include/quickjs/ -L%%LOCALBASE%%/lib/ -lquickjs"
++        njs_feature_incs="%%LOCALBASE%%/include/quickjs/"
++        njs_feature_libs="-L%%LOCALBASE%%/lib/ -lquickjs -lm -ldl -lpthread"
+ 
+         . auto/feature
+     fi
diff --git a/devel/libnjs/pkg-plist b/devel/libnjs/pkg-plist
index 5577cf01a55c..004da3a4354f 100644
--- a/devel/libnjs/pkg-plist
+++ b/devel/libnjs/pkg-plist
@@ -1,7 +1,8 @@
+include/njs.h
 include/njs_addr2line.h
 include/njs_arr.h
-include/njs_array_buffer.h
 include/njs_array.h
+include/njs_array_buffer.h
 include/njs_assert.h
 include/njs_async.h
 include/njs_auto_config.h
@@ -12,8 +13,8 @@ include/njs_clang.h
 include/njs_date.h
 include/njs_diyfp.h
 include/njs_djb_hash.h
-include/njs_dtoa_fixed.h
 include/njs_dtoa.h
+include/njs_dtoa_fixed.h
 include/njs_encoding.h
 include/njs_error.h
 include/njs_event.h
@@ -22,8 +23,8 @@ include/njs_function.h
 include/njs_generator.h
 include/njs_iterator.h
 include/njs_json.h
-include/njs_lexer_tables.h
 include/njs_lexer.h
+include/njs_lexer_tables.h
 include/njs_lvlhsh.h
 include/njs_main.h
 include/njs_malloc.h
@@ -32,17 +33,17 @@ include/njs_module.h
 include/njs_mp.h
 include/njs_murmur_hash.h
 include/njs_number.h
+include/njs_object.h
 include/njs_object_hash.h
 include/njs_object_prop_declare.h
-include/njs_object.h
 include/njs_parser.h
 include/njs_promise.h
 include/njs_queue.h
 include/njs_random.h
 include/njs_rbtree.h
 include/njs_regex.h
-include/njs_regexp_pattern.h
 include/njs_regexp.h
+include/njs_regexp_pattern.h
 include/njs_scope.h
 include/njs_sprintf.h
 include/njs_str.h
@@ -52,19 +53,18 @@ include/njs_symbol.h
 include/njs_trace.h
 include/njs_typed_array.h
 include/njs_types.h
+include/njs_unicode.h
 include/njs_unicode_lower_case.h
 include/njs_unicode_upper_case.h
-include/njs_unicode.h
 include/njs_unix.h
 include/njs_utf16.h
 include/njs_utf8.h
 include/njs_utils.h
-include/njs_value_conversion.h
 include/njs_value.h
+include/njs_value_conversion.h
 include/njs_variable.h
 include/njs_vm.h
 include/njs_vmcode.h
-include/njs.h
 include/qjs.h
 lib/libnjs.a
 libdata/pkgconfig/njs.pc
diff --git a/lang/njs/Makefile b/lang/njs/Makefile
index a9a988c7165a..f52d0541a5ed 100644
--- a/lang/njs/Makefile
+++ b/lang/njs/Makefile
@@ -1,5 +1,5 @@
 PORTNAME=	njs
-DISTVERSION=	0.8.7
+DISTVERSION=	0.8.8
 CATEGORIES=	lang www
 
 MAINTAINER=	osa@FreeBSD.org
@@ -17,10 +17,15 @@ USE_GITHUB=	yes
 GH_TUPLE=	nginx:njs:${DISTVERSION}
 HAS_CONFIGURE=	yes
 
-LIB_DEPENDS=	libpcre2-8.so:devel/pcre2
+LIB_DEPENDS=	libpcre2-8.so:devel/pcre2 \
+		libquickjs.so:lang/quickjs
 
 PLIST_FILES=	bin/njs
 
+post-patch:
+	${REINPLACE_CMD} 's|%%LOCALBASE%%|${LOCALBASE}|g' \
+		${WRKSRC}/auto/quickjs
+
 do-build:
 	@cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} njs
 
diff --git a/lang/njs/distinfo b/lang/njs/distinfo
index 01a16ee10b12..0750497d94fc 100644
--- a/lang/njs/distinfo
+++ b/lang/njs/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1729691503
-SHA256 (nginx-njs-0.8.7_GH0.tar.gz) = e959b01637d6684387347cc6dea073949467193d273f58062129e52b110aefa2
-SIZE (nginx-njs-0.8.7_GH0.tar.gz) = 880217
+TIMESTAMP = 1734364864
+SHA256 (nginx-njs-0.8.8_GH0.tar.gz) = 356386c8133590a4d1d3a529694821d4d1a00b6f7575eeb454a698bec823477b
+SIZE (nginx-njs-0.8.8_GH0.tar.gz) = 887735
diff --git a/lang/njs/files/patch-auto_quickjs b/lang/njs/files/patch-auto_quickjs
new file mode 100644
index 000000000000..8312bac9b456
--- /dev/null
+++ b/lang/njs/files/patch-auto_quickjs
@@ -0,0 +1,15 @@
+--- auto/quickjs.orig	2024-12-15 17:49:15 UTC
++++ auto/quickjs
+@@ -46,9 +46,9 @@ if [ $NJS_TRY_QUICKJS = YES ]; then
+     fi
+ 
+     if [ $njs_found = no ]; then
+-        njs_feature="QuickJS library -I/usr/include/quickjs/ -L/usr/lib/quickjs/ -lquickjs"
+-        njs_feature_incs="/usr/include/quickjs/"
+-        njs_feature_libs="-L/usr/lib/quickjs/ -lquickjs -lm -ldl -lpthread"
++        njs_feature="QuickJS library -I%%LOCALBASE%%/include/quickjs/ -L%%LOCALBASE%%/lib/ -lquickjs"
++        njs_feature_incs="%%LOCALBASE%%/include/quickjs/"
++        njs_feature_libs="-L%%LOCALBASE%%/lib/ -lquickjs -lm -ldl -lpthread"
+ 
+         . auto/feature
+     fi
diff --git a/www/nginx-devel/Makefile b/www/nginx-devel/Makefile
index be6d68b28917..77e8965f5092 100644
--- a/www/nginx-devel/Makefile
+++ b/www/nginx-devel/Makefile
@@ -1,6 +1,6 @@
 PORTNAME?=	nginx
 PORTVERSION=	1.27.3
-PORTREVISION=	1
+PORTREVISION=	2
 CATEGORIES=	www
 MASTER_SITES=	https://nginx.org/download/ \
 		LOCAL/osa
@@ -313,7 +313,8 @@ post-patch-ICONV-on:
 	@${REINPLACE_CMD} 's!%%PREFIX%%!${LOCALBASE}!g' ${WRKSRC_iconv}/config
 
 post-patch-NJS_QJS-on:
-	@${REINPLACE_CMD} 's!%%PREFIX%%!${LOCALBASE}!g' ${WRKSRC_njs}/auto/quickjs
+	@${REINPLACE_CMD} 's!%%LOCALBASE%%!${LOCALBASE}!g' ${WRKSRC_njs}/auto/quickjs \
+		${WRKSRC_njs}/nginx/config
 
 post-patch-PASSENGER-on:
 	@${REINPLACE_CMD} \
diff --git a/www/nginx-devel/Makefile.extmod b/www/nginx-devel/Makefile.extmod
index 9c9768512993..6940f5892a51 100644
--- a/www/nginx-devel/Makefile.extmod
+++ b/www/nginx-devel/Makefile.extmod
@@ -241,13 +241,14 @@ NAXSI_VARS=		DSO_EXTMODS+=naxsi NAXSI_SUBDIR=/naxsi_src
 NAXSI_EXTRA_PATCHES=	${PATCHDIR}/extra-patch-naxsi-libinjection__sqli_c \
 			${PATCHDIR}/extra-patch-naxsi_config
 
-NJS_GH_TUPLE=		nginx:njs:0.8.7:njs
+NJS_GH_TUPLE=		nginx:njs:0.8.8:njs
 NJS_VARS=		DSO_EXTMODS+=njs NJS_SUBDIR=/nginx
 NJS_IMPLIES=		STREAM
 
 NJS_QJS_IMPLIES=	HTTP NJS
 NJS_QJS_LIB_DEPENDS=	libquickjs.so:lang/quickjs
-NJS_QJS_EXTRA_PATCHES=	${PATCHDIR}/extra-patch-njs-auto-quickjs
+NJS_QJS_EXTRA_PATCHES=	${PATCHDIR}/extra-patch-njs-auto-quickjs \
+			${PATCHDIR}/extra-patch-njs-nginx-config
 
 NJS_XML_IMPLIES=	HTTP NJS
 NJS_XML_LIB_DEPENDS=	libxml2.so:textproc/libxml2 \
diff --git a/www/nginx-devel/distinfo b/www/nginx-devel/distinfo
index 75f862d34b20..679d3b03998d 100644
--- a/www/nginx-devel/distinfo
+++ b/www/nginx-devel/distinfo
@@ -1,4 +1,4 @@
-TIMESTAMP = 1733174774
+TIMESTAMP = 1734365634
 SHA256 (nginx-1.27.3.tar.gz) = ba23a9568f442036b61cd0e29bd66a47b90634efa91e0b2cf2d719057a9b7903
 SIZE (nginx-1.27.3.tar.gz) = 1271526
 SHA256 (nginx_mogilefs_module-1.0.4.tar.gz) = 7ac230d30907f013dff8d435a118619ea6168aa3714dba62c6962d350c6295ae
@@ -105,8 +105,8 @@ SHA256 (wargio-naxsi-1.6_GH0.tar.gz) = e5920fdd09cae155b89eb21a94a21c029ebfdb056
 SIZE (wargio-naxsi-1.6_GH0.tar.gz) = 1116227
 SHA256 (libinjection-libinjection-4aa3894_GH0.tar.gz) = ededea133e89e238ef2e60d0d62ef7ef9e741449eed8c5d856007132505bcd5b
 SIZE (libinjection-libinjection-4aa3894_GH0.tar.gz) = 2218294
-SHA256 (nginx-njs-0.8.7_GH0.tar.gz) = e959b01637d6684387347cc6dea073949467193d273f58062129e52b110aefa2
-SIZE (nginx-njs-0.8.7_GH0.tar.gz) = 880217
+SHA256 (nginx-njs-0.8.8_GH0.tar.gz) = 356386c8133590a4d1d3a529694821d4d1a00b6f7575eeb454a698bec823477b
+SIZE (nginx-njs-0.8.8_GH0.tar.gz) = 887735
 SHA256 (osokin-nginx-otel-b185501_GH0.tar.gz) = 6cb1297d99393daa3b14f1371ca40fa5593edb7e8f2f6efd9e58c4fdba0076c6
 SIZE (osokin-nginx-otel-b185501_GH0.tar.gz) = 30307
 SHA256 (konstruxi-ngx_postgres-8aa7359_GH0.tar.gz) = c69ad4495de7c7883ebc23e1e6c4cc83a4ac6a7fddd4d5c12e49d33b65f7c50b
diff --git a/www/nginx-devel/files/extra-patch-njs-auto-quickjs b/www/nginx-devel/files/extra-patch-njs-auto-quickjs
index 13bd88446cce..6fe199bd9e73 100644
--- a/www/nginx-devel/files/extra-patch-njs-auto-quickjs
+++ b/www/nginx-devel/files/extra-patch-njs-auto-quickjs
@@ -1,15 +1,15 @@
---- ../njs-0.8.7/auto/quickjs.orig	2024-06-25 13:40:20.000000000 -0400
-+++ ../njs-0.8.7/auto/quickjs	2024-07-08 14:45:08.895107000 -0400
-@@ -47,9 +46,9 @@
+--- ../njs-0.8.8/auto/quickjs.orig	2024-12-15 17:49:15 UTC
++++ ../njs-0.8.8/auto/quickjs
+@@ -46,9 +46,9 @@ if [ $NJS_TRY_QUICKJS = YES ]; then
      fi
  
      if [ $njs_found = no ]; then
 -        njs_feature="QuickJS library -I/usr/include/quickjs/ -L/usr/lib/quickjs/ -lquickjs"
 -        njs_feature_incs="/usr/include/quickjs/"
 -        njs_feature_libs="-L/usr/lib/quickjs/ -lquickjs -lm -ldl -lpthread"
-+        njs_feature="QuickJS library -I%%PREFIX%%/include/quickjs/ -L%%PREFIX%%/lib/quickjs/ -lquickjs"
-+        njs_feature_incs="%%PREFIX%%/include/quickjs/"
-+        njs_feature_libs="-L%%PREFIX%%/lib -lquickjs -lm -ldl -lpthread"
++        njs_feature="QuickJS library -I%%LOCALBASE%%/include/quickjs/ -L%%LOCALBASE%%/lib/ -lquickjs"
++        njs_feature_incs="%%LOCALBASE%%/include/quickjs/"
++        njs_feature_libs="-L%%LOCALBASE%%/lib/ -lquickjs -lm -ldl -lpthread"
  
          . auto/feature
      fi
diff --git a/www/nginx-devel/files/extra-patch-njs-nginx-config b/www/nginx-devel/files/extra-patch-njs-nginx-config
new file mode 100644
index 000000000000..e9a340ab733f
--- /dev/null
+++ b/www/nginx-devel/files/extra-patch-njs-nginx-config
@@ -0,0 +1,13 @@
+--- ../njs-0.8.8/nginx/config.orig	2024-12-16 11:16:44.892658000 -0500
++++ ../njs-0.8.8/nginx/config	2024-12-16 11:19:57.566877000 -0500
+@@ -60,8 +60,8 @@
+     fi
+ 
+     if [ $ngx_found = no ]; then
+-        ngx_feature="QuickJS library -I/usr/include/quickjs/ -L/usr/lib/quickjs/ -lquickjs"
+-        ngx_feature_libs="-L/usr/lib/quickjs/ -lquickjs -lm -ldl -lpthread"
++        ngx_feature="QuickJS library -I%%LOCALBASE%%/include/quickjs/ -L%%LOCALBASE%%/lib/ -lquickjs"
++        ngx_feature_libs="-L%%LOCALBASE%%/lib/ -lquickjs -lm -ldl -lpthread"
+ 
+         . auto/feature
+     fi
diff --git a/www/unit/Makefile b/www/unit/Makefile
index c4c879f45d26..0b39cfa7d6f6 100644
--- a/www/unit/Makefile
+++ b/www/unit/Makefile
@@ -1,6 +1,6 @@
 PORTNAME=	unit
 PORTVERSION=	${UNIT_VERSION}
-PORTREVISION?=	1
+PORTREVISION?=	2
 CATEGORIES=	www
 MASTER_SITES?=	https://unit.nginx.org/download/