From 3659a83e75e575232ae9a2ce29b8c5d9e0e2507a Mon Sep 17 00:00:00 2001 From: nia Date: Tue, 10 Nov 2020 11:33:50 +0000 Subject: [PATCH] gjs: Update to 1.66.1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Based on work by Dan Cîrnaț in wip Version 1.66.1 -------------- - Closed bugs and merge requests: * Throws on Unsupported caller allocates [!495, Marco Trevisan] * arg: Fix MIN/MAX safe big integer limits [!492, Marco Trevisan] * Fix leak when virtual function is unimplemented [!498, Evan Welsh] * Cannot compile GJS 1.66.0 on macOS with llvm/clang 10.0.1 [#347, !499, Marc-Antoine Perennou] * console: fix typo in command-line option [!500, Andy Holmes] * Prevent passing null pointers when not nullable [!503, Evan Welsh] * Passing fundamentals to functions no longer works [#353, !506, Evan Welsh] - Fixed examples/clutter.js to work with more recent Clutter [Philip Chimento] Version 1.66.0 -------------- - No change from 1.65.92. Version 1.65.92 --------------- - Closed bugs and merge requests: * CI: Make iwyu idempotent [!481, Simon McVittie] * Enum and flags test failing in s390x [#319, !480, Simon McVittie] * Bring back Visual Studio build support for GJS master [!482, Chun-wei Fan] * gjs_dbus_implementation_emit_signal: don't try to unref NULL [!482, Adam Williamson] * doc: add third party applications [!484, Sonny Piers] * boxed: Initialize all the private BoxedInstance members [!487, Marco Trevisan] * object: Fix GjsCallBackTrampoline's leaks [!490, Marco Trevisan] * Various maintenance [!485, Philip Chimento] * Crash using shell's looking glass [#344, !486, Marco Trevisan] Version 1.65.91 --------------- - Closed bugs and merge requests: * Crash in gjs_dbus_implementation_flush() [#332, !471, Andy Holmes] * eslint: Bump ecmaScript version [!473, Florian Müllner] * Documentation: add documentation for ENV variables [!474, Andy Holmes] * Fix build for master on Windows (due to SpiderMonkey-78.x upgrade) [!475, Chun-wei Fan] * Argument cache causes test failure in armhf [#342, !476, Marco Trevisan] * Argument cache causes test regressions in s390x [#341, !477, Simon McVittie] * ByteArray.toString use-after-free [#339, !472, Evan Welsh] * Crash accessing `vfunc_` methods of `Clutter.Actor`s [#313, !478, Evan Welsh] - Various refactors for type safety [Marco Trevisan] Version 1.65.90 --------------- - GJS now has an optional, Linux-only, dependency on libsysprof-capture-4 instead of libsysprof-capture-3 for the profiler functionality. - New API: gjs_coverage_enable() allows the collection of code coverage metrics. If you are using GjsCoverage, it is now required to call gjs_coverage_enable() before you create the first GjsContext. Previously this was not necessary, but due to changes in SpiderMonkey 78 you must now indicate in advance if you want to collect code coverage metrics. - New JavaScript features! This version of GJS is based on SpiderMonkey 78, an upgrade from the previous ESR (Extended Support Release) of SpiderMonkey 68. Here are the highlights of the new JavaScript features. For more information, look them up on MDN or devdocs.io. * New language features + A new regular expression engine, supporting lookbehind and named capture groups, among other things * New syntax + The ?? operator ("nullish coalescing operator") is now supported + The ?. operator ("optional chaining operator") is now supported + Public static class fields are now supported + Separators in numeric literals are now supported: for example, 1_000_000 * New APIs + String.replaceAll() for replacing all instances of a string inside another string + Promise.allSettled() for awaiting until all Promises in an array have either fulfilled or rejected + Intl.Locale + Intl.ListFormat + Intl.RelativeTimeFormat.formatToParts() * New behaviour + There are a lot of minor behaviour changes as SpiderMonkey's JS implementation conforms ever closer to existing ECMAScript standards and adopts new ones. For complete information, read the Firefox developer release notes: https://developer.mozilla.org/en-US/Firefox/Releases/69#JavaScript https://developer.mozilla.org/en-US/Firefox/Releases/70#JavaScript https://developer.mozilla.org/en-US/Firefox/Releases/71#JavaScript https://developer.mozilla.org/en-US/Firefox/Releases/72#JavaScript https://developer.mozilla.org/en-US/Firefox/Releases/73#JavaScript https://developer.mozilla.org/en-US/Firefox/Releases/74#JavaScript https://developer.mozilla.org/en-US/Firefox/Releases/75#JavaScript https://developer.mozilla.org/en-US/Firefox/Releases/76#JavaScript https://developer.mozilla.org/en-US/Firefox/Releases/77#JavaScript https://developer.mozilla.org/en-US/Firefox/Releases/78#JavaScript * Backwards-incompatible changes + The Object.toSource() method has been removed + The uneval() global function has been removed + A leading zero is now never allowed for BigInt literals, making 08n and 09n invalid similar to the existing error when legacy octal numbers like 07n are used + The Function.caller property now has the value of null if the caller is a strict, async, or generator function, instead of throwing a TypeError - Backwards-incompatible change: Paths specified on the command line with the --coverage-prefix argument, are now always interpreted as paths. If they are relative paths, they will be resolved relative to the current working directory. In previous versions, they would be treated as string prefixes, which led to unexpected behaviour when the path of the script was absolute and the coverage prefix relative, or vice versa. - Closed bugs and merge requests: * Port to libsysprof-capture-4.a [!457, Philip Withnall, Philip Chimento] * CI: Switch ASAN jobs to runners tagged so [!461, Bartłomiej Piotrowski] * Rework global code to support multiple global "types". (Part 1) [!453, Evan Welsh] * SpiderMonkey 78 [#329, !462, !458, Evan Welsh, Philip Chimento] * GIArgument inlines [!460, Marco Trevisan, Philip Chimento] * gjs stopped building on 32 bits [#335, !463, Marco Trevisan, Philip Chimento] * Improve performance of argument marshalling [#70, !48, Giovanni Campagna, Philip Chimento] * Build failure on 32-bit [#336, !465, Michael Catanzaro] * Various maintenance [!464, Philip Chimento] * arg-cache.cpp: Fix build on Visual Studio [!466, Chun-wei Fan] * [regression] Super+A crashes gnome-shell [#338, !467, Philip Chimento] * Generating coverage information seems to be broken [#322, !470, Philip Chimento] - Various refactors for type safety [Marco Trevisan] - Various maintenance [Philip Chimento] Version 1.65.4 -------------- - New language features! Public class fields are now supported. See for more information: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes/Public_class_fields - Closed bugs and merge requests: * arg.cpp: Add required messages for static_assert (fix building on pre-C++17) [!441, Chun-wei Fan] * Add include-what-you-use CI job [!448, !449, Philip Chimento] * Let's enable class fields! [!445, Evan Welsh] * examples: add GListModel implementation [!452, Andy Holmes] * Update ESLint CI image. [!451, Evan Welsh] * function: Only get function name if we actually warn [!454, Jonas Dreßler] * Split print into native library. [!444, Evan Welsh] * Various maintenance [!459, Philip Chimento] - Various refactors for type safety [Marco Trevisan] Version 1.64.4 -------------- - Closed bugs and merge requests: * Fix CI failure caused by GTK4 update [!447, Philip Chimento] Version 1.65.3 -------------- - In GTK 4, Gtk.Widget is now an iterable object which iterates through its child widgets. (`for (let child of widget) { ... }`) - Closed bugs and merge requests: * Installed tests are not in preferred directories [#318, !427, Ross Burton] * Build new test CI images with Buildah [!429, Philip Chimento] * CI fixes for new test images [!433, Philip Chimento] * Various maintenance [!428, Philip Chimento] * Fix dead link [!436, prnsml] * overrides/Gtk: Make GTK4 widgets iteratable [!437, Florian Müllner] * arg.cpp: Fix building on Visual Studio [!439, Chun-wei Fan] * Separate closures and vfuncs [!438, Philip Chimento] * Improvements to IWYU script [!435, Philip Chimento] * Various refactors in preparation for ES modules [!440, Evan Welsh, Philip Chimento] - Various refactors for type safety [Marco Trevisan] --- lang/gjs/Makefile | 15 ++++++++------- lang/gjs/buildlink3.mk | 4 ++-- lang/gjs/distinfo | 11 ++++++----- lang/gjs/patches/patch-gjs_jsapi-util.cpp | 14 ++++++++++++++ 4 files changed, 30 insertions(+), 14 deletions(-) create mode 100644 lang/gjs/patches/patch-gjs_jsapi-util.cpp diff --git a/lang/gjs/Makefile b/lang/gjs/Makefile index 4f7c8265ba77..2c4ccc8951cf 100644 --- a/lang/gjs/Makefile +++ b/lang/gjs/Makefile @@ -1,12 +1,12 @@ -# $NetBSD: Makefile,v 1.6 2020/11/05 17:12:00 nia Exp $ +# $NetBSD: Makefile,v 1.7 2020/11/10 11:33:50 nia Exp $ -DISTNAME= gjs-1.64.3 +DISTNAME= gjs-1.66.1 CATEGORIES= lang MASTER_SITES= ${MASTER_SITE_GNOME:=sources/gjs/${PKGVERSION_NOREV:R}/} EXTRACT_SUFX= .tar.xz MAINTAINER= pkgsrc-users@NetBSD.org -HOMEPAGE= https://live.gnome.org/Gjs +HOMEPAGE= https://gitlab.gnome.org/GNOME/gjs COMMENT= Javascript binding for GNOME based on Spidermonkey LICENSE= mit @@ -15,19 +15,20 @@ USE_LANGUAGES= c c++ MAKE_ENV+= LD_LIBRARY_PATH=${WRKSRC}/output/gjs@sha:${WRKSRC}/output/gjs-jsapi@sta:${WRKSRC}/output/gjs-console@exe MESON_ARGS+= -Dinstalled_tests=false +MESON_ARGS+= -Dprofiler=disabled PKGCONFIG_OVERRIDE+= output/meson-private/gjs-1.0.pc PKGCONFIG_OVERRIDE_STAGE= post-configure +CHECK_PORTABILITY_SKIP+= tools/run_iwyu.sh + +.include "../../devel/meson/build.mk" .include "../../devel/glib2/buildlink3.mk" .include "../../devel/gobject-introspection/buildlink3.mk" .include "../../devel/libffi/buildlink3.mk" -.include "../../devel/meson/build.mk" .include "../../graphics/cairo-gobject/buildlink3.mk" .include "../../graphics/gdk-pixbuf2/buildlink3.mk" -.include "../../lang/python/extension.mk" -BUILDLINK_API_DEPENDS.mozjs68+= mozjs68>=68.6.0nb6 -.include "../../lang/mozjs68/buildlink3.mk" +.include "../../lang/mozjs78/buildlink3.mk" .include "../../sysutils/dbus-glib/buildlink3.mk" .include "../../x11/gtk3/buildlink3.mk" .include "../../mk/readline.buildlink3.mk" diff --git a/lang/gjs/buildlink3.mk b/lang/gjs/buildlink3.mk index 4b9b3acd9967..3c3cf232b8f4 100644 --- a/lang/gjs/buildlink3.mk +++ b/lang/gjs/buildlink3.mk @@ -1,4 +1,4 @@ -# $NetBSD: buildlink3.mk,v 1.5 2020/11/05 17:14:45 wiz Exp $ +# $NetBSD: buildlink3.mk,v 1.6 2020/11/10 11:33:50 nia Exp $ BUILDLINK_TREE+= gjs @@ -11,8 +11,8 @@ BUILDLINK_PKGSRCDIR.gjs?= ../../lang/gjs .include "../../devel/glib2/buildlink3.mk" .include "../../devel/gobject-introspection/buildlink3.mk" -.include "../../lang/mozjs68/buildlink3.mk" .include "../../graphics/cairo-gobject/buildlink3.mk" +.include "../../lang/mozjs78/buildlink3.mk" .include "../../sysutils/dbus-glib/buildlink3.mk" .endif # GJS_BUILDLINK3_MK diff --git a/lang/gjs/distinfo b/lang/gjs/distinfo index afcdd1b9dc34..5e0be9bd26c6 100644 --- a/lang/gjs/distinfo +++ b/lang/gjs/distinfo @@ -1,6 +1,7 @@ -$NetBSD: distinfo,v 1.4 2020/11/05 17:58:56 nia Exp $ +$NetBSD: distinfo,v 1.5 2020/11/10 11:33:50 nia Exp $ -SHA1 (gjs-1.64.3.tar.xz) = f3a6372321cda99f78feaf3ebdc6391532741f67 -RMD160 (gjs-1.64.3.tar.xz) = cf7057847308b17f39d348dc952feb0bce20a1a8 -SHA512 (gjs-1.64.3.tar.xz) = 9d92e52a7fef07853f3beb181798f89deb60b97b928d916cd827c99a6ab8f83abf7c352a1aa46be476a50e2efadfaf09befa54ccab0d51b0ac7127f2fe794801 -Size (gjs-1.64.3.tar.xz) = 422436 bytes +SHA1 (gjs-1.66.1.tar.xz) = c03c2a7c8653e40464b160a5c8cd71c0cddab146 +RMD160 (gjs-1.66.1.tar.xz) = cddea5febfe1e2c93eafc1e4bcaa3e2d6149619a +SHA512 (gjs-1.66.1.tar.xz) = 601d0c645ab1586e7d770f753bf68653816dc631faf89b5e70216320f6b7707e4aaa3507111fb6ff3331f76656050e32e8b1441720bf080de957e03e4565a43f +Size (gjs-1.66.1.tar.xz) = 439992 bytes +SHA1 (patch-gjs_jsapi-util.cpp) = 91b267616071bde63afb835d82859bd44a364da1 diff --git a/lang/gjs/patches/patch-gjs_jsapi-util.cpp b/lang/gjs/patches/patch-gjs_jsapi-util.cpp new file mode 100644 index 000000000000..3ab8815e9aab --- /dev/null +++ b/lang/gjs/patches/patch-gjs_jsapi-util.cpp @@ -0,0 +1,14 @@ +$NetBSD: patch-gjs_jsapi-util.cpp,v 1.1 2020/11/10 11:33:50 nia Exp $ + +Fix va_list error + +--- gjs/jsapi-util.cpp.orig 2020-10-08 22:26:17.390874100 +0000 ++++ gjs/jsapi-util.cpp +@@ -26,6 +26,7 @@ + + #include // for sscanf + #include // for strlen ++#include + + #ifdef _WIN32 + # define WIN32_LEAN_AND_MEAN