[gnome-shell/wip/fmuellner/update-js-ci: 3/4] ci: Update JS tooling
- From: Florian Müllner <fmuellner src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-shell/wip/fmuellner/update-js-ci: 3/4] ci: Update JS tooling
- Date: Thu, 17 Feb 2022 23:59:31 +0000 (UTC)
commit 24807b4d4962fad835561f491dd5022fcf195ca6
Author: Florian Müllner <fmuellner gnome org>
Date: Thu Feb 17 22:54:22 2022 +0100
ci: Update JS tooling
Provided we use the correct version of the SpiderMonkey shell, we
can perform checks using the same engine that is used by gjs.
However some engine features are opt-in, so the set of features enabled
by gjs and js91 may differ. The obvious option for avoiding this is
replacing js91 with gjs for tests.
For that reason the check-potfiles.js script has been ported to gjs
and a second (simpler) script to replace `js91 --compileonly` was
added. This work happened in a separate repository to make sharing
between different JS-based projects easier.
Update the CI image to pull in those scripts, as well as a recent
version of gjs.
This will also address the issue that `js91 --compileonly` does not
handle modules.
.gitlab-ci.yml | 20 ++++-
.gitlab-ci/check-potfiles.js | 203 -------------------------------------------
2 files changed, 16 insertions(+), 207 deletions(-)
---
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index ad82d245fc..99b0181e18 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -50,13 +50,14 @@ workflow:
.gnome-shell.fedora:35:
variables:
FDO_DISTRIBUTION_VERSION: 35
- FDO_DISTRIBUTION_TAG: '2022-01-18.0'
+ FDO_DISTRIBUTION_TAG: '2022-02-17.2'
FDO_DISTRIBUTION_PACKAGES:
- findutils
+ mozjs91
mozjs91-devel
nodejs
npm
meson
+ pkgconfig(gobject-introspection-1.0)
pkgconfig(gio-2.0)
pkgconfig(gio-unix-2.0)
pkgconfig(gnome-autoar-0)
@@ -68,6 +69,15 @@ workflow:
dnf group install -y 'Development Tools' \
'C Development Tools and Libraries' &&
+ ./.gitlab-ci/install-meson-project.sh \
+ -Dskip_dbus_tests=true \
+ https://gitlab.gnome.org/GNOME/gjs.git \
+ master . &&
+
+ ./.gitlab-ci/install-meson-project.sh \
+ https://gitlab.gnome.org/fmuellner/gjs-ci-tools.git \
+ tmp-main . &&
+
./.gitlab-ci/install-meson-project.sh \
-Dman=false \
https://gitlab.gnome.org/GNOME/gnome-shell.git \
@@ -75,6 +85,8 @@ workflow:
subprojects/extensions-tool/ \
./generate-translations.sh &&
+ dnf remove -y mozjs91-devel
+
check_commit_log:
extends:
- .fdo.ci-fairy
@@ -127,7 +139,7 @@ js_check:
- .gnome-shell.fedora:35
stage: review
script:
- - find js -name '*.js' $(printf "! -wholename %s " $(cat .jscheckignore)) -exec js91 -c '{}' ';' 2>&1
| tee $JS_LOG
+ - gjs-check-syntax | tee $JS_LOG
- (! grep -q . $JS_LOG)
artifacts:
paths:
@@ -178,7 +190,7 @@ potfile_js_check:
- .gnome-shell.fedora:35
stage: review
script:
- - js91 -m .gitlab-ci/check-potfiles.js
+ - gjs-check-potfiles
build:
stage: build
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]