[gnome-shell/wip/fmuellner/update-js-ci: 1/2] 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: 1/2] ci: Update JS tooling
- Date: Fri, 18 Feb 2022 01:03:55 +0000 (UTC)
commit 2bdbafdf0d02ad563912c9919df7d977b1c57f59
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 | 26 +++---
.gitlab-ci/check-potfiles.js | 203 -------------------------------------------
2 files changed, 16 insertions(+), 213 deletions(-)
---
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index ad82d245fc..02ae3bedb1 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -27,7 +27,6 @@ default:
variables:
FDO_UPSTREAM_REPO: GNOME/gnome-shell
BUNDLE: "extensions-git.flatpak"
- JS_LOG: "js-report.txt"
LINT_LOG: "eslint-report.xml"
LINT_MR_LOG: "eslint-mr-report.xml"
@@ -50,13 +49,14 @@ workflow:
.gnome-shell.fedora:35:
variables:
FDO_DISTRIBUTION_VERSION: 35
- FDO_DISTRIBUTION_TAG: '2022-01-18.0'
+ FDO_DISTRIBUTION_TAG: '2022-02-18.0'
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 +68,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 \
+ main . &&
+
./.gitlab-ci/install-meson-project.sh \
-Dman=false \
https://gitlab.gnome.org/GNOME/gnome-shell.git \
@@ -75,6 +84,8 @@ workflow:
subprojects/extensions-tool/ \
./generate-translations.sh &&
+ dnf remove -y mozjs91-devel
+
check_commit_log:
extends:
- .fdo.ci-fairy
@@ -127,12 +138,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
- - (! grep -q . $JS_LOG)
- artifacts:
- paths:
- - ${JS_LOG}
- when: on_failure
+ - gjs-check-syntax
eslint:
extends:
@@ -178,7 +184,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]