From c2859b80976eb2017ed578f5158e9f87a6ba16f2 Mon Sep 17 00:00:00 2001
From: Benoit Lavenier <benoit.lavenier@e-is.pro>
Date: Fri, 12 May 2023 19:12:00 +0200
Subject: [PATCH] [enh] Release 1.7.0 [fix] Minor fix in release scripts (add
 better log)

---
 arch/linux/build-deb.sh   |  13 +++--
 install.sh                |  13 ++---
 release.sh                |  55 +++++++++++++-------
 scripts/build.sh          |   3 +-
 scripts/create-release.js |   6 ++-
 scripts/exists-tag.js     |   6 ++-
 scripts/upload-release.js |  15 ++++--
 yarn.lock                 | 107 ++++++++++++++++++++------------------
 8 files changed, 127 insertions(+), 91 deletions(-)

diff --git a/arch/linux/build-deb.sh b/arch/linux/build-deb.sh
index 11babfa..2fd4a95 100644
--- a/arch/linux/build-deb.sh
+++ b/arch/linux/build-deb.sh
@@ -26,7 +26,7 @@ RELEASES=${ROOT}/releases
 # Downloads
 # -----------
 
-mkdir -p "${DOWNLOADS}" && cd "${DOWNLOADS}" || exit 1
+mkdir -p "${DOWNLOADS}" && cd "${DOWNLOADS}" || exit 1
 
 rm -rf "${DOWNLOADS}/${PROJECT_NAME}"
 mkdir -p "${DOWNLOADS}/${PROJECT_NAME}"
@@ -69,7 +69,7 @@ fi
 if [[ ! -d "${DOWNLOADS}/${NW}" ]]; then
   cd ${DOWNLOADS}
   echo "Downloading ${NW_GZ}..."
-  wget -kL https://dl.nwjs.io/${NW_RELEASE}/${NW_GZ}
+  wget -kL http://dl.nwjs.io/${NW_RELEASE}/${NW_GZ}
   tar xvzf ${NW_GZ}
 fi
 
@@ -122,7 +122,7 @@ sed -i 's/<script src="config.js"[^>]*><\/script>/<script src="config.js"><\/scr
 
 # Specific desktop dependencies (for reading Duniter conf, ...)
 cd "${RELEASES}/desktop_release/nw"
-yarn
+npm install
 
 # Releases
 cp -R "${RELEASES}/desktop_release" "${RELEASES}/desktop_release_tgz"
@@ -147,3 +147,10 @@ cd ${RELEASES}/ || exit 1
 fakeroot dpkg-deb --build "${PROJECT_NAME}-x64" || exit 1
 mv "${PROJECT_NAME}-x64.deb" "/vagrant/${OUTPUT_BASENAME}.deb" || exit 1
 
+# -------------------------------------------------
+# Build Desktop sha256 files
+# -------------------------------------------------
+
+cd "/vagrant" || exit 1
+sha256sum ${OUTPUT_BASENAME}.tar.gz > ${OUTPUT_BASENAME}.tar.gz.sha256
+sha256sum ${OUTPUT_BASENAME}.deb > ${OUTPUT_BASENAME}.deb.sha256
diff --git a/install.sh b/install.sh
index d660b86..9c41590 100755
--- a/install.sh
+++ b/install.sh
@@ -2,11 +2,11 @@
 
 PROJECT_DIR=$(pwd)
 DOWNLOADS_DIR=${PROJECT_DIR}/downloads
-NW_VERSION=0.42.2 #${NW_VERSION:-"0.76.0"}
+NW_VERSION=${NW_VERSION:-"0.42.2"}
 NW_BASENAME=${NW_BASENAME:-"nwjs"}
-CHROMIUM_MAJOR_VERSION=78 #113
-CESIUM_DEFAULT_VERSION=1.6.12
-NODE_VERSION=10 #19
+CHROMIUM_MAJOR_VERSION=78
+CESIUM_DEFAULT_VERSION=1.7.0
+NODE_VERSION=10
 
 # Check first arguments = version
 if [[ $1 =~ ^[0-9]+.[0-9]+.[0-9]+(-[a-z]+[-0-9]*)?$ ]];
@@ -37,9 +37,6 @@ else
     exit 1
 fi
 
-# Install Yarn
-npm install -g yarn
-
 # Install NW.js
 if [[ ! -f "${PROJECT_DIR}/www/nw" ]]; then
   echo "--- Installing NWJS ${NW_VERSION}..."
@@ -81,7 +78,7 @@ cp -f ${PROJECT_DIR}/LICENSE LICENSE.txt
 
 # Install dependencies
 echo "--- Install dependencies to ./www/node_modules"
-yarn
+npm install
 
 # Remove old Cesium version
 if [[ -f ${PROJECT_DIR}/www/cesium/index.html ]];
diff --git a/release.sh b/release.sh
index db4e320..b204505 100755
--- a/release.sh
+++ b/release.sh
@@ -77,7 +77,7 @@ ASSETS=`node ./scripts/create-release.js $REMOTE_TAG create`
 ZIP_BASENAME="${PROJECT_NAME}-${REMOTE_TAG}-web"
 if [[ ! -f "${DOWNLOADS}/${ZIP_BASENAME}.zip" ]]; then
     echo "Downloading ${PROJECT_NAME} web release..."
-    mkdir -p ${DOWNLOADS} && cd ${DOWNLOADS} || exit 1
+    mkdir -p ${DOWNLOADS} && cd ${DOWNLOADS} || exit 1
     wget "${REPO_PUBLIC_URL}/releases/download/${REMOTE_TAG}/${ZIP_BASENAME}.zip"
     if [[ $? -ne 0 ]]; then
         exit 2
@@ -95,21 +95,36 @@ fi
 echo "Removing old Vagrant VM... TODO: optimize this !"
 rm -rf ~/.vagrant.d/*
 
-echo "Assets: $EXPECTED_ASSETS"
+#echo "Assets: $EXPECTED_ASSETS"
 
-for asset in $EXPECTED_ASSETS; do
-  if [[ -z `echo $ASSETS | grep -F "$asset"` ]]; then
+for ASSET_BASENAME in $EXPECTED_ASSETS; do
 
-    echo "Missing asset: $asset"
+  echo ""
+  echo "--- Checking if asset '$ASSET_BASENAME' exists on GitHub..."
+  if [[ -z `echo $ASSETS | grep -F "$ASSET_BASENAME"` ]]; then
 
     # Debian
-    if [[ $asset == *"linux-x64.deb" ]] || [[ $asset == *"linux-x64.tar.gz" ]]; then
+    if [[ $ASSET_BASENAME == *"linux-x64.deb" ]] || [[ $ASSET_BASENAME == *"linux-x64.tar.gz" ]]; then
       if [[ $ARCH == "x86_64" ]]; then
-        echo "Starting Debian build..."
-        ./scripts/build.sh make linux $TAG
-        DEB_PATH="$PWD/arch/linux/$asset"
-        if [[ $? -eq 0 ]] && [[ -f "${DEB_PATH}" ]]; then
-          node ./scripts/upload-release.js ${REMOTE_TAG} ${DEB_PATH}
+
+        ASSET_PATH="$PWD/arch/linux/$ASSET_BASENAME"
+
+        if [[ ! -f "${ASSET_PATH}" ]]; then
+          echo "--- Building '${ASSET_BASENAME}'..."
+          ./scripts/build.sh make linux $TAG
+          [[ $? -eq 0 ]] && echo "--- Building '${ASSET_BASENAME}' [OK]"
+        fi
+
+        # Upload asset
+        if [[ -f "${ASSET_PATH}" ]]; then
+          echo ""
+          echo "--- Uploading '${ASSET_BASENAME}' to github ..."
+          node ./scripts/upload-release.js ${REMOTE_TAG} ${ASSET_PATH}
+        fi
+
+        # Upload sha256 (if exists)
+        if [[ -f "${ASSET_PATH}.sha256" ]]; then
+          node ./scripts/upload-release.js ${REMOTE_TAG} ${ASSET_PATH}.sha256
         fi
       else
         echo "This computer cannot build this asset, required architecture is 'x86_64'. Skipping."
@@ -117,11 +132,11 @@ for asset in $EXPECTED_ASSETS; do
     fi
 
     # Windows
-    if [[ $asset == *".exe" ]]; then
+    if [[ $ASSET_BASENAME == *".exe" ]]; then
       if [[ $ARCH == "x86_64" ]]; then
         echo "Starting Windows build..."
         ./scripts/build.sh make win $TAG
-        WIN_PATH="$PWD/arch/windows/$asset"
+        WIN_PATH="$PWD/arch/windows/$ASSET_BASENAME"
         if [[ -f "${WIN_PATH}" ]]; then
           node ./scripts/upload-release.js ${REMOTE_TAG} ${WIN_PATH}
         fi
@@ -131,11 +146,11 @@ for asset in $EXPECTED_ASSETS; do
     fi
 
     # OSX
-    if [[ $asset == *"osx-x64.zip" ]]; then
+    if [[ $ASSET_BASENAME == *"osx-x64.zip" ]]; then
       if [[ $ARCH == "x86_64" ]]; then
         echo "Starting OSX build..."
         ./scripts/build.sh make osx $TAG
-        OSX_PATH="$PWD/arch/osx/$asset"
+        OSX_PATH="$PWD/arch/osx/$ASSET_BASENAME"
         if [[ -f "${OSX_PATH}" ]]; then
           node ./scripts/upload-release.js ${REMOTE_TAG} ${OSX_PATH}
         fi
@@ -145,11 +160,11 @@ for asset in $EXPECTED_ASSETS; do
     fi
 
     # iOS
-    if [[ $asset == *"ios.zip" ]]; then
+    if [[ $ASSET_BASENAME == *"ios.zip" ]]; then
       if [[ $ARCH == "x86_64" ]]; then
         echo "Starting iOS build..."
         ./scripts/build.sh make ios $TAG
-        IOS_PATH="$PWD/arch/osx/$asset"
+        IOS_PATH="$PWD/arch/osx/$ASSET_BASENAME"
         if [[ -f "${IOS_PATH}" ]]; then
           node ./scripts/upload-release.js ${REMOTE_TAG} ${IOS_PATH}
         fi
@@ -165,10 +180,10 @@ if [[ $? -eq 0 ]]; then
 
   # Clean temporary files
   if [[ $? -eq 0 ]]; then
-    rm ${DOWNLOADS}/cesium-*-web.zip
-    rmdir downloads
+    rm downloads/cesium-*-web.zip
+    rmdir --ignore-fail-on-non-empty downloads
 
-    echo "All the binaries have been uploaded."
+    echo "--- All assets have been uploaded."
   fi
 
 fi
diff --git a/scripts/build.sh b/scripts/build.sh
index 9d6a973..cd00de6 100755
--- a/scripts/build.sh
+++ b/scripts/build.sh
@@ -11,7 +11,7 @@ make)
       [[ $? -eq 0 ]] && echo ">> Copying Cesium Desktop sources..."
       [[ $? -eq 0 ]] && cp -f ../../src/* ./
       [[ $? -eq 0 ]] && cp -f ../../LICENSE ./LICENSE.txt
-      [[ $? -eq 0 ]] && echo ">> Starting Vagrant Ubuntu VM..."
+      [[ $? -eq 0 ]] && echo "" && echo ">> Starting Vagrant Ubuntu VM..."
       [[ $? -eq 0 ]] && vagrant up
       [[ $? -eq 0 ]] && echo ">> VM: building Cesium..."
       [[ $? -eq 0 ]] && vagrant ssh -- 'bash -s' < ./build-deb.sh
@@ -30,6 +30,7 @@ make)
   win)
     cd arch/windows
     if [[ ! -f "cesium-desktop-v$TAG-windows-x64.exe" ]]; then
+      exit 1
       [[ $? -eq 0 ]] && echo ">> Copying Cesium Desktop sources..."
       [[ $? -eq 0 ]] && cp -f ../../src/* ./
       [[ $? -eq 0 ]] && cp -f ../../LICENSE ./LICENSE.txt
diff --git a/scripts/create-release.js b/scripts/create-release.js
index b2fe15b..36d006a 100755
--- a/scripts/create-release.js
+++ b/scripts/create-release.js
@@ -11,7 +11,11 @@ const tagName      = process.argv[2]
 const command      = process.argv[3]
 const value        = process.argv[4]
 
-const GITHUB_TOKEN = fs.readFileSync(path.resolve(os.homedir(), '.config/cesium/.github'), 'utf8').replace(/\n/g, '')
+let GITHUB_TOKEN = process.env.GITHUB_TOKEN;
+if (!GITHUB_TOKEN) {
+  const tokenFilePath = path.resolve(os.homedir(), '.config/cesium/.github');
+  GITHUB_TOKEN = fs.readFileSync(tokenFilePath, 'utf8').replace(/\n/g, '')
+}
 
 co(function*() {
   try {
diff --git a/scripts/exists-tag.js b/scripts/exists-tag.js
index 9c186ed..02e0e1f 100755
--- a/scripts/exists-tag.js
+++ b/scripts/exists-tag.js
@@ -9,7 +9,11 @@ const rp = require('request-promise');
 const REPO         = 'duniter/cesium'
 const tagName      = process.argv[2]
 
-const GITHUB_TOKEN = fs.readFileSync(path.resolve(os.homedir(), '.config/cesium/.github'), 'utf8').replace(/\n/g, '')
+let GITHUB_TOKEN = process.env.GITHUB_TOKEN;
+if (!GITHUB_TOKEN) {
+  const tokenFilePath = path.resolve(os.homedir(), '.config/cesium/.github');
+  GITHUB_TOKEN = fs.readFileSync(tokenFilePath, 'utf8').replace(/\n/g, '')
+}
 
 co(function*() {
   try {
diff --git a/scripts/upload-release.js b/scripts/upload-release.js
index 26c5ea5..4aa345d 100755
--- a/scripts/upload-release.js
+++ b/scripts/upload-release.js
@@ -11,17 +11,22 @@ const tagName      = process.argv[2]
 const filePath     = process.argv[3]
 const fileType     = getFileType(filePath)
 
-const GITHUB_TOKEN = fs.readFileSync(path.resolve(os.homedir(), '.config/cesium/.github'), 'utf8').replace(/\n/g, '')
+let GITHUB_TOKEN = process.env.GITHUB_TOKEN;
+if (!GITHUB_TOKEN) {
+  const tokenFilePath = path.resolve(os.homedir(), '.config/cesium/.github');
+  GITHUB_TOKEN = fs.readFileSync(tokenFilePath, 'utf8').replace(/\n/g, '')
+}
 
 co(function*() {
   try {
-    // Get release URL
+    // Get upload URL
     const release = yield github('/repos/' + REPO + '/releases/tags/' + tagName); // May be a draft
-    console.log('Release: ' + release.tag_name);
     const filename = path.basename(filePath)
-    console.log('Uploading asset %s...', filename);
     const upload_url = release.upload_url.replace('{?name,label}', '?' + ['name=' + filename].join('&'));
-    yield githubUpload(upload_url, filePath, fileType)
+
+    // Upload file
+    console.info(' - Uploading \'%s\' into %s...', filename, release.tag_name);
+    yield githubUpload(upload_url, filePath, fileType);
   } catch (e) {
     console.error(e);
   }
diff --git a/yarn.lock b/yarn.lock
index 8597adf..7cd9b51 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -12,11 +12,6 @@ ajv@^6.5.5:
     json-schema-traverse "^0.4.1"
     uri-js "^4.2.2"
 
-ansi-regex@^2.1.1:
-  version "2.1.1"
-  resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df"
-  integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8=
-
 argparse@^1.0.7:
   version "1.0.9"
   resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.9.tgz#73d83bc263f86e97f8cc4f6bae1b0e90a7d22c86"
@@ -71,16 +66,15 @@ caseless@~0.12.0:
   version "0.12.0"
   resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc"
 
-cli-color@^2.0.0:
-  version "2.0.0"
-  resolved "https://registry.yarnpkg.com/cli-color/-/cli-color-2.0.0.tgz#11ecfb58a79278cf6035a60c54e338f9d837897c"
-  integrity sha512-a0VZ8LeraW0jTuCkuAGMNufareGHhyZU9z8OGsW0gXd1hZGi1SRuNRXdbGkraBBKnhyUhyebFWnRbp+dIn0f0A==
+cli-color@^2.0.3:
+  version "2.0.3"
+  resolved "https://registry.npmjs.org/cli-color/-/cli-color-2.0.3.tgz#73769ba969080629670f3f2ef69a4bf4e7cc1879"
+  integrity sha512-OkoZnxyC4ERN3zLzZaY9Emb7f/MhBOIpePv0Ycok0fJYT+Ouo00UBEIwsVsr0yoow++n5YWlSUgST9GKhNHiRQ==
   dependencies:
-    ansi-regex "^2.1.1"
     d "^1.0.1"
-    es5-ext "^0.10.51"
+    es5-ext "^0.10.61"
     es6-iterator "^2.0.3"
-    memoizee "^0.4.14"
+    memoizee "^0.4.15"
     timers-ext "^0.1.7"
 
 co@^4.6.0:
@@ -118,7 +112,7 @@ ecc-jsbn@~0.1.1:
   dependencies:
     jsbn "~0.1.0"
 
-es5-ext@^0.10.35, es5-ext@^0.10.45, es5-ext@^0.10.46, es5-ext@^0.10.50, es5-ext@^0.10.51, es5-ext@~0.10.14, es5-ext@~0.10.2, es5-ext@~0.10.46:
+es5-ext@^0.10.35, es5-ext@^0.10.46, es5-ext@^0.10.50, es5-ext@~0.10.14, es5-ext@~0.10.2, es5-ext@~0.10.46:
   version "0.10.53"
   resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.53.tgz#93c5a3acfdbef275220ad72644ad02ee18368de1"
   integrity sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q==
@@ -127,6 +121,15 @@ es5-ext@^0.10.35, es5-ext@^0.10.45, es5-ext@^0.10.46, es5-ext@^0.10.50, es5-ext@
     es6-symbol "~3.1.3"
     next-tick "~1.0.0"
 
+es5-ext@^0.10.53, es5-ext@^0.10.61:
+  version "0.10.62"
+  resolved "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.62.tgz#5e6adc19a6da524bf3d1e02bbc8960e5eb49a9a5"
+  integrity sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA==
+  dependencies:
+    es6-iterator "^2.0.3"
+    es6-symbol "^3.1.3"
+    next-tick "^1.1.0"
+
 es6-iterator@^2.0.3, es6-iterator@~2.0.3:
   version "2.0.3"
   resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.3.tgz#a7de889141a05a94b0854403b2d0a0fbfa98f3b7"
@@ -136,7 +139,7 @@ es6-iterator@^2.0.3, es6-iterator@~2.0.3:
     es5-ext "^0.10.35"
     es6-symbol "^3.1.1"
 
-es6-symbol@^3.1.1, es6-symbol@~3.1.3:
+es6-symbol@^3.1.1, es6-symbol@^3.1.3, es6-symbol@~3.1.3:
   version "3.1.3"
   resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.3.tgz#bad5d3c1bcdac28269f4cb331e431c78ac705d18"
   integrity sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==
@@ -144,9 +147,9 @@ es6-symbol@^3.1.1, es6-symbol@~3.1.3:
     d "^1.0.1"
     ext "^1.1.2"
 
-es6-weak-map@^2.0.2:
+es6-weak-map@^2.0.3:
   version "2.0.3"
-  resolved "https://registry.yarnpkg.com/es6-weak-map/-/es6-weak-map-2.0.3.tgz#b6da1f16cc2cc0d9be43e6bdbfc5e7dfcdf31d53"
+  resolved "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.3.tgz#b6da1f16cc2cc0d9be43e6bdbfc5e7dfcdf31d53"
   integrity sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA==
   dependencies:
     d "1"
@@ -234,9 +237,9 @@ http-signature@~1.2.0:
     jsprim "^1.2.2"
     sshpk "^1.7.0"
 
-is-promise@^2.1:
+is-promise@^2.2.2:
   version "2.2.2"
-  resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.2.2.tgz#39ab959ccbf9a774cf079f7b40c7a26f763135f1"
+  resolved "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz#39ab959ccbf9a774cf079f7b40c7a26f763135f1"
   integrity sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==
 
 is-typedarray@~1.0.0:
@@ -253,10 +256,10 @@ jodid25519@^1.0.0:
   dependencies:
     jsbn "~0.1.0"
 
-js-yaml@^3.13.1:
-  version "3.13.1"
-  resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.13.1.tgz#aff151b30bfdfa8e49e05da22e7415e9dfa37847"
-  integrity sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==
+js-yaml@^3.14.1:
+  version "3.14.1"
+  resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537"
+  integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==
   dependencies:
     argparse "^1.0.7"
     esprima "^4.0.0"
@@ -287,31 +290,31 @@ jsprim@^1.2.2:
     json-schema "0.2.3"
     verror "1.3.6"
 
-lodash@^4.17.15:
-  version "4.17.15"
-  resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548"
-  integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==
+lodash@^4.17.19:
+  version "4.17.21"
+  resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c"
+  integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
 
-lru-queue@0.1:
+lru-queue@^0.1.0:
   version "0.1.0"
-  resolved "https://registry.yarnpkg.com/lru-queue/-/lru-queue-0.1.0.tgz#2738bd9f0d3cf4f84490c5736c48699ac632cda3"
-  integrity sha1-Jzi9nw089PhEkMVzbEhpmsYyzaM=
+  resolved "https://registry.npmjs.org/lru-queue/-/lru-queue-0.1.0.tgz#2738bd9f0d3cf4f84490c5736c48699ac632cda3"
+  integrity sha512-BpdYkt9EvGl8OfWHDQPISVpcl5xZthb+XPsbELj5AQXxIC8IriDZIQYjBJPEm5rS420sjZ0TLEzRcq5KdBhYrQ==
   dependencies:
     es5-ext "~0.10.2"
 
-memoizee@^0.4.14:
-  version "0.4.14"
-  resolved "https://registry.yarnpkg.com/memoizee/-/memoizee-0.4.14.tgz#07a00f204699f9a95c2d9e77218271c7cd610d57"
-  integrity sha512-/SWFvWegAIYAO4NQMpcX+gcra0yEZu4OntmUdrBaWrJncxOqAziGFlHxc7yjKVK2uu3lpPW27P27wkR82wA8mg==
+memoizee@^0.4.15:
+  version "0.4.15"
+  resolved "https://registry.npmjs.org/memoizee/-/memoizee-0.4.15.tgz#e6f3d2da863f318d02225391829a6c5956555b72"
+  integrity sha512-UBWmJpLZd5STPm7PMUlOw/TSy972M+z8gcyQ5veOnSDRREz/0bmpyTfKt3/51DhEBqCZQn1udM/5flcSPYhkdQ==
   dependencies:
-    d "1"
-    es5-ext "^0.10.45"
-    es6-weak-map "^2.0.2"
+    d "^1.0.1"
+    es5-ext "^0.10.53"
+    es6-weak-map "^2.0.3"
     event-emitter "^0.3.5"
-    is-promise "^2.1"
-    lru-queue "0.1"
-    next-tick "1"
-    timers-ext "^0.1.5"
+    is-promise "^2.2.2"
+    lru-queue "^0.1.0"
+    next-tick "^1.1.0"
+    timers-ext "^0.1.7"
 
 mime-db@1.44.0:
   version "1.44.0"
@@ -335,7 +338,7 @@ mime-types@~2.1.19:
   dependencies:
     mime-db "1.44.0"
 
-next-tick@1:
+next-tick@1, next-tick@^1.1.0:
   version "1.1.0"
   resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.1.0.tgz#1836ee30ad56d67ef281b22bd199f709449b35eb"
   integrity sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==
@@ -370,20 +373,20 @@ qs@~6.5.2:
   resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36"
   integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==
 
-request-promise-core@1.1.3:
-  version "1.1.3"
-  resolved "https://registry.yarnpkg.com/request-promise-core/-/request-promise-core-1.1.3.tgz#e9a3c081b51380dfea677336061fea879a829ee9"
-  integrity sha512-QIs2+ArIGQVp5ZYbWD5ZLCY29D5CfWizP8eWnm8FoGD1TX61veauETVQbrV60662V0oFBkrDOuaBI8XgtuyYAQ==
+request-promise-core@1.1.4:
+  version "1.1.4"
+  resolved "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.4.tgz#3eedd4223208d419867b78ce815167d10593a22f"
+  integrity sha512-TTbAfBBRdWD7aNNOoVOBH4pN/KigV6LyapYNNlAPA8JwbovRti1E88m3sYAwsLi5ryhPKsE9APwnjFTgdUjTpw==
   dependencies:
-    lodash "^4.17.15"
+    lodash "^4.17.19"
 
-request-promise@^4.2.5:
-  version "4.2.5"
-  resolved "https://registry.yarnpkg.com/request-promise/-/request-promise-4.2.5.tgz#186222c59ae512f3497dfe4d75a9c8461bd0053c"
-  integrity sha512-ZgnepCykFdmpq86fKGwqntyTiUrHycALuGggpyCZwMvGaZWgxW6yagT0FHkgo5LzYvOaCNvxYwWYIjevSH1EDg==
+request-promise@^4.2.6:
+  version "4.2.6"
+  resolved "https://registry.npmjs.org/request-promise/-/request-promise-4.2.6.tgz#7e7e5b9578630e6f598e3813c0f8eb342a27f0a2"
+  integrity sha512-HCHI3DJJUakkOr8fNoCc73E5nU5bqITjOYFMDrKHYOXWXrgD/SBaC7LjwuPymUprRyuF06UK7hd/lMHkmUXglQ==
   dependencies:
     bluebird "^3.5.0"
-    request-promise-core "1.1.3"
+    request-promise-core "1.1.4"
     stealthy-require "^1.1.1"
     tough-cookie "^2.3.3"
 
@@ -451,7 +454,7 @@ stringstream@^0.0.6:
   resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.6.tgz#7880225b0d4ad10e30927d167a1d6f2fd3b33a72"
   integrity sha512-87GEBAkegbBcweToUrdzf3eLhWNg06FJTebl4BVJz/JgWy8CvEr9dRtX5qWphiynMSQlxxi+QqN0z5T32SLlhA==
 
-timers-ext@^0.1.5, timers-ext@^0.1.7:
+timers-ext@^0.1.7:
   version "0.1.7"
   resolved "https://registry.yarnpkg.com/timers-ext/-/timers-ext-0.1.7.tgz#6f57ad8578e07a3fb9f91d9387d65647555e25c6"
   integrity sha512-b85NUNzTSdodShTIbky6ZF02e8STtVVfD+fu4aXXShEELpozH+bCpJLYMPZbsABN2wDH7fJpqIoXxJpzbf0NqQ==
-- 
GitLab