Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • clients/cesium-grp/cesium-desktop
1 result
Show changes
......@@ -2,14 +2,19 @@
# vi: set ft=ruby :
Vagrant.configure("2") do |config|
config.vm.define "cesium-release-windows"
config.vm.define "duniter-release-windows-server"
config.vm.box = "gusztavvargadr/windows-server"
config.vm.box_version = "2102.0.2312"
config.vm.box_url = "windows-server-2022.box"
config.vm.box = "duniter/cesium_win7"
#config.vm.box_url = "https://s3.eu-central-1.amazonaws.com/duniter/vagrant/duniter_win7.box"
config.vm.box_url = "duniter_win7.box"
# Old windows 7 VM
#config.vm.define "duniter-release-windows"
#config.vm.box = "https://s3.eu-central-1.amazonaws.com/duniter/vagrant/duniter_win7.box"
#config.vm.box_url = "duniter_win7.box"
#config.vm.boot_timeout = 900
#config.vm.network "forwarded_port", guest: 3389, host: 3390
config.vm.provision :shell, path: "build.bat", run: 'always'
#config.vm.boot_timeout = 900
config.vm.provider "virtualbox" do |vb|
vb.memory = "4096"
......
@echo off
set NW_VERSION=0.42.2
:: Install dependencies
call install.bat
if %errorlevel% neq 0 (
::pause
exit %errorlevel%
)
set NW_VERSION=0.83.0
set NW_RELEASE=v%NW_VERSION%
set NW_BASENAME=nwjs
REM set NW_BASENAME=nwjs-sdk
......@@ -7,53 +15,66 @@ set NW=%NW_BASENAME%-%NW_RELEASE%-win-x64
set NW_GZ=%NW%.zip
echo "NW.js %NW_VERSION%"
REM NPM
set PATH="C:\Users\vagrant\AppData\Roaming\npm";%PATH%
REM InnoSetup
set PATH="C:\Program Files (x86)\Inno Setup 5";%PATH%
set SOURCE=C:\vagrant
if not exist "%SOURCE%" (
echo "ERROR: Folder C:\vagrant not mounted!"
exit 1
)
cd C:\Users\vagrant
REM echo "Suppression des anciennes sources..."
echo "Deleting old files..."
del /s /q cesium-v*-web.zip
rd /s /q cesium
rd /s /q cesium_release
echo "Clonage de Cesium..."
echo "Cloning Cesium (from github.com)..."
git clone https://github.com/duniter/cesium.git
if not exist C:\Users\vagrant\cesium (
echo "ERROR: Cannot clone Cesium source!"
::pause
exit 1
)
cd cesium
for /f "delims=" %%a in ('git rev-list --tags --max-count=1') do @set CESIUM_REV=%%a
for /f "delims=" %%a in ('git describe --tags %CESIUM_REV%') do @set CESIUM_TAG=%%a
set CESIUM=cesium-%CESIUM_TAG%-web
set CESIUM_ZIP=%CESIUM%.zip
echo %CESIUM_TAG%
echo %CESIUM%
echo %CESIUM_ZIP%
echo "Version: %CESIUM_TAG%"
echo "Basename: %CESIUM%"
echo "Filename: %CESIUM_ZIP%"
cd ..
if not exist C:\vagrant\%NW_GZ% (
echo "Telechargement de %NW%.zip..."
REM powershell -Command "Invoke-WebRequest -Uri https://dl.nwjs.io/v%NW_VERSION%/%NW%.zip -OutFile C:\vagrant\%NW_GZ%"
powershell -Command "(New-Object System.Net.WebClient).DownloadFile(\"https://dl.nwjs.io/v%NW_VERSION%/%NW%.zip\", \"C:\vagrant\%NW_GZ%\")"
if not exist %SOURCE%\%NW_GZ% (
echo "Downloading %NW%.zip..."
REM powershell -Command "Invoke-WebRequest -Uri https://dl.nwjs.io/v%NW_VERSION%/%NW%.zip -OutFile %SOURCE%\%NW_GZ%"
powershell -Command "(New-Object System.Net.WebClient).DownloadFile(\"https://dl.nwjs.io/v%NW_VERSION%/%NW%.zip\", \"%SOURCE%\%NW_GZ%\")"
)
if not exist C:\vagrant\%CESIUM_ZIP% (
if not exist %SOURCE%\%CESIUM_ZIP% (
echo "Downloading %CESIUM_ZIP%..."
powershell -Command "(New-Object System.Net.WebClient).DownloadFile(\"https://github.com/duniter/cesium/releases/download/%CESIUM_TAG%/%CESIUM_ZIP%\", \"C:\vagrant\%CESIUM_ZIP%\")"
powershell -Command "(New-Object System.Net.WebClient).DownloadFile(\"https://github.com/duniter/cesium/releases/download/%CESIUM_TAG%/%CESIUM_ZIP%\", \"%SOURCE%\%CESIUM_ZIP%\")"
)
call 7z x C:\vagrant\%NW_GZ%
call 7z x %SOURCE%\%NW_GZ%
move %NW% cesium_release
if not exist cesium_release (
echo "ERROR Missing cesium_release folder !"
::pause
exit 1
)
cd cesium_release
mkdir cesium
cd cesium
call 7z x C:\vagrant\%CESIUM_ZIP%
call 7z x %SOURCE%\%CESIUM_ZIP%
cd ..
xcopy C:\vagrant\LICENSE.txt .\ /s /e
xcopy C:\vagrant\package.json .\ /s /e
xcopy C:\vagrant\cesium-desktop.js .\ /s /e
xcopy C:\vagrant\splash.html .\ /s /e
xcopy %SOURCE%\LICENSE.txt .\ /s /e
xcopy %SOURCE%\package.json .\ /s /e
xcopy %SOURCE%\cesium-desktop.js .\ /s /e
xcopy %SOURCE%\splash.html .\ /s /e
call npm install
cd C:\Users\vagrant\cesium_release\cesium
......@@ -65,6 +86,9 @@ rmdir /s /q "maps"
rmdir /s /q ".git"
cd ..
iscc C:\vagrant\cesium.iss /DROOT_PATH=%cd%
move %cd%\Cesium.exe C:\vagrant\cesium-desktop-%CESIUM_TAG%-windows-x64.exe
iscc %SOURCE%\cesium.iss /DROOT_PATH=%cd%
move %cd%\Cesium.exe %SOURCE%\cesium-desktop-%CESIUM_TAG%-windows-x64.exe
echo "Build done: binary available at cesium-desktop-%CESIUM_TAG%-windows-x64.exe"
::pause
exit 0
@echo off
set GIT_VERSION=2.43.0
set NODEJS_VERSION=16.20.2
echo "Installing dependencies..."
echo "- Git %GIT_VERSION%"
echo "- Node.js %NODEJS_VERSION%"
cd C:\Users\vagrant
:: --------- GIT INSTALLATION ---------
git --version 2>NUL
if %errorlevel% == 0 goto endgit
echo "Downloading Git..."
powershell -Command "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; (New-Object System.Net.WebClient).DownloadFile('https://github.com/git-for-windows/git/releases/download/v%GIT_VERSION%.windows.1/Git-%GIT_VERSION%-64-bit.exe', 'GitInstaller.exe')"
:: Install Git in silent mode
echo "Install Git..."
start /wait GitInstaller.exe /VERYSILENT /SILENT /NORESTART /NOCANCEL /SP-
:: Remove git installer
del GitInstaller.exe
:endgit
:: --------- NODE INSTALLATION ---------
:: Check if Node.js is already installed
node --version 2>NUL
if %errorlevel% == 0 goto endnode
:: Download Node.js installer
echo "Downloading Node.js..."
powershell -Command "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; (New-Object System.Net.WebClient).DownloadFile('https://nodejs.org/dist/v%NODEJS_VERSION%/node-v%NODEJS_VERSION%-x64.msi', 'NodeJsInstaller.msi')"
:: Install Node.js in silent mode
echo "Installing Node.js..."
start /wait NodeJsInstaller.msi /quiet /norestart
:: Delete the installer file after installation
del NodeJsInstaller.msi
:endnode
:: --------- 7-zip INSTALLATION ---------
if exist "C:\Program Files\7-Zip\7z.exe" goto end7zip
:: Download 7-Zip installer
echo "Downloading 7-Zip..."
powershell -Command "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; (New-Object System.Net.WebClient).DownloadFile('https://www.7-zip.org/a/7z2301-x64.msi', '7ZipInstaller.msi')"
:: Install 7-Zip in silent mode
echo "Installing 7-Zip..."
start /wait msiexec /i 7ZipInstaller.msi /qn /norestart
:: Delete the installer file after installation
del 7ZipInstaller.msi
:end7zip
set PATH="C:\Program Files\7-Zip";%PATH%
:: --------- Inno Setup INSTALLATION ---------
if exist "C:\Program Files (x86)\Inno Setup 5\ISCC.exe" goto endinno
:: Download Inno Setup installer
echo Downloading Inno Setup...
::powershell -Command "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; (New-Object System.Net.WebClient).DownloadFile('http://files.jrsoftware.org/is/6/innosetup-6.1.2.exe', 'InnoSetupInstaller.exe')"
powershell -Command "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; (New-Object System.Net.WebClient).DownloadFile('http://files.jrsoftware.org/is/5/innosetup-5.5.9.exe', 'InnoSetupInstaller.exe')"
:: Install Inno Setup in silent mode
echo Installing Inno Setup...
start /wait InnoSetupInstaller.exe /VERYSILENT /NORESTART /SP-
:: Delete the installer file after installation
del InnoSetupInstaller.exe
:endinno
set PATH="C:\Program Files (x86)\Inno Setup 5";%PATH%
echo "Installing dependencies [OK]"
......@@ -4,7 +4,7 @@
<meta charset="utf-8">
<meta name="viewport" content="viewport-fit=cover,width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=yes,width=device-width,minimal-ui">
<title>Cesium</title>
<title>Cesium loading...</title>
<link rel="stylesheet" href="cesium/dist_css/cesium.css">
......
......@@ -2,25 +2,24 @@
PROJECT_DIR=$(pwd)
DOWNLOADS_DIR=${PROJECT_DIR}/downloads
NW_VERSION=0.42.2
#NW_BASENAME=nwjs
NW_BASENAME=nwjs-sdk
CHROMIUM_MAJOR_VERSION=78
CESIUM_DEFAULT_VERSION=1.6.7
NODE_VERSION=10
NW_VERSION=${NW_VERSION:-"0.83.0"}
NW_BASENAME=${NW_BASENAME:-"nwjs"}
CHROMIUM_MAJOR_VERSION=120
CESIUM_DEFAULT_VERSION=1.7.13
NODE_VERSION=18
# Check first arguments = version
if [[ $1 =~ ^[0-9]+.[0-9]+.[0-9]+((a|b)[0-9]+)?$ ]];
if [[ $1 =~ ^[0-9]+.[0-9]+.[0-9]+(-[a-z]+[-0-9]*)?$ ]];
then
VERSION="$1"
echo "Using Cesium version: $VERSION"
else
if [[ -f ${PROJECT_DIR}/src/nw/cesium/manifest.json ]];
if [[ -f ${PROJECT_DIR}/www/cesium/manifest.json ]];
then
VERSION=`grep -oP "version\": \"\d+.\d+.\d+((a|b)[0-9]+)?\"" ${PROJECT_DIR}/src/nw/cesium/manifest.json | grep -oP "\d+.\d+.\d+((a|b)[0-9]+)?"`
VERSION=$(grep -m 1 -oP 'version": "\d+.\d+.\d+(-\w+[-0-9]*)?"' ${PROJECT_DIR}/www/cesium/manifest.json | grep -oP "\d+.\d+.\d+(-\w+[-0-9]*)?")
fi
if [[ $VERSION =~ ^[0-9]+.[0-9]+.[0-9]+((a|b)[0-9]+)?$ ]];
if [[ $VERSION =~ ^[0-9]+.[0-9]+.[0-9]+(-[a-z]+[-0-9]*)?$ ]];
then
echo "Using Cesium detected version: $VERSION"
else
......@@ -38,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}..."
......@@ -52,16 +48,16 @@ if [[ ! -f "${PROJECT_DIR}/www/nw" ]]; then
fi
# Uncompress archive
tar xvzf ${NW_BASENAME}-v${NW_VERSION}-linux-x64.tar.gz || exit 1
tar xvf ${NW_BASENAME}-v${NW_VERSION}-linux-x64.tar.gz || exit 1
# Copy to ./www
mkdir -p "${PROJECT_DIR}/www"
cp -rf ${NW_BASENAME}-v${NW_VERSION}-linux-x64/* "${PROJECT_DIR}/www" && rm -rf ${NW_BASENAME}-v${NW_VERSION}-linux-x64 || exit 1
rm ${NW_BASENAME}-v${NW_VERSION}-linux-x64.tar.gz || exit 1
#rm ${NW_BASENAME}-v${NW_VERSION}-linux-x64.tar.gz || exit 1
# Check NW version
else
cd "${PROJECT_DIR}/www"
cd "${PROJECT_DIR}/www" || exit 1
NW_ACTUAL_VERSION=$(./nw --version | grep nwjs | awk '{print $2}')
echo "Using Chromium version: ${NW_ACTUAL_VERSION}"
CHROMIUM_ACTUAL_MAJOR_VERSION=$(echo "${NW_ACTUAL_VERSION}" | awk '{split($0, array, ".")} END{print array[1]}')
......@@ -76,18 +72,18 @@ fi
# Copy sources
echo "--- Copying sources from ./src to ./www"
cd "${PROJECT_DIR}/www/"
cd "${PROJECT_DIR}/www/" || exit 1
cp -rf ${PROJECT_DIR}/src/* .
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 ]];
then
OLD_VERSION=$(grep -oP "version\": \"\d+.\d+.\d+((a|b)[0-9]+)?\"" ${PROJECT_DIR}/www/cesium/manifest.json | grep -oP "\d+.\d+.\d+((a|b)[0-9]+)?")
OLD_VERSION=$(grep -oP "version\": \"\d+.\d+.\d+(\w+[-0-9]*)?\"" ${PROJECT_DIR}/www/cesium/manifest.json | grep -oP "\d+.\d+.\d+(\w+[-0-9]*)?")
if [[ ! "$VERSION" = "$OLD_VERSION" ]];
then
echo "--- Removing old Cesium v${OLD_VERSION}..."
......
......@@ -17,11 +17,11 @@
"readmeFilename": "README.md",
"dependencies": {
"bs58": "^4.0.1",
"cli-color": "^2.0.0",
"js-yaml": "^3.13.1",
"cli-color": "^2.0.3",
"js-yaml": "^3.14.1",
"co": "^4.6.0",
"request": "^2.88.2",
"request-promise": "^4.2.5",
"request-promise": "^4.2.6",
"stringstream": "^0.0.6"
}
}
......@@ -3,7 +3,7 @@
PROJECT_NAME=cesium
REPO="duniter/cesium"
REPO_PUBLIC_URL="https://github.com/${REPO}"
NODEJS_VERSION=10
NODEJS_VERSION=18
TAG="$1"
TAG_NAME="v$1"
ARCH=`uname -m`
......@@ -23,9 +23,7 @@ if [[ -z $TAG ]]; then
echo ""
echo "Examples:"
echo ""
echo " release.sh 1.2.3"
echo " release.sh 1.4.0"
echo " release.sh 1.4.1"
echo " release.sh 1.7.12"
echo ""
exit 1
fi
......@@ -77,17 +75,15 @@ 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
wget "${REPO_PUBLIC_URL}/releases/download/${REMOTE_TAG}/${ZIP_BASENAME}.zip"
if [[ $? -ne 0 ]]; then
exit 2
fi
mkdir -p ${DOWNLOADS} && cd ${DOWNLOADS} || exit 1
wget -q "${REPO_PUBLIC_URL}/releases/download/${REMOTE_TAG}/${ZIP_BASENAME}.zip" || exit 2
cd ${ROOT}
fi
if [[ "_$EXPECTED_ASSETS" == "_" ]]; then
EXPECTED_ASSETS="${PROJECT_NAME}-desktop-$REMOTE_TAG-linux-x64.deb
${PROJECT_NAME}-desktop-$REMOTE_TAG-linux-x64.tar.gz
EXPECTED_ASSETS="${PROJECT_NAME}-desktop-$REMOTE_TAG-linux-x64.tar.gz
${PROJECT_NAME}-desktop-$REMOTE_TAG-linux-x64.deb
${PROJECT_NAME}-desktop-$REMOTE_TAG-linux-x64.AppImage
${PROJECT_NAME}-desktop-$REMOTE_TAG-windows-x64.exe"
fi
......@@ -95,21 +91,38 @@ 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."* ]]; 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"
# Build
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
echo "--- Uploading '${ASSET_BASENAME}.sha256' to github ..."
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,13 +130,28 @@ 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"
if [[ -f "${WIN_PATH}" ]]; then
node ./scripts/upload-release.js ${REMOTE_TAG} ${WIN_PATH}
ASSET_PATH="$PWD/arch/windows/$ASSET_BASENAME"
# Build
if [[ ! -f "${ASSET_PATH}" ]]; then
echo "--- Building '${ASSET_BASENAME}'..."
./scripts/build.sh make win $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."
......@@ -131,27 +159,27 @@ 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"
if [[ -f "${OSX_PATH}" ]]; then
node ./scripts/upload-release.js ${REMOTE_TAG} ${OSX_PATH}
ASSET_PATH="$PWD/arch/osx/$ASSET_BASENAME"
# Build
if [[ ! -f "${ASSET_PATH}" ]]; then
echo "--- Building '${ASSET_BASENAME}'..."
./scripts/build.sh make osx $TAG
[[ $? -eq 0 ]] && echo "--- Building '${ASSET_BASENAME}' [OK]"
fi
else
echo "This computer cannot build this asset, required architecture is 'x86_64'. Skipping."
fi
fi
# iOS
if [[ $asset == *"ios.zip" ]]; then
if [[ $ARCH == "x86_64" ]]; then
echo "Starting iOS build..."
./scripts/build.sh make ios $TAG
IOS_PATH="$PWD/arch/osx/$asset"
if [[ -f "${IOS_PATH}" ]]; then
node ./scripts/upload-release.js ${REMOTE_TAG} ${IOS_PATH}
# 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."
......@@ -165,10 +193,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
#!/bin/bash
# Use SDK, to be able to debug
export NW_BASENAME="nwjs"
PROJECT_DIR=$(pwd)
VERSION=$1
export VERSION=$1
if [[ "${VERSION}" = "DEV" ]]; then
# Installing default version
./install.sh
[[ ! $? -eq 0 ]] && exit 1
# Copying DEV files
# Then copying DEV files
if [[ -d "${PROJECT_DIR}/../../www/dist" ]]; then
echo "Copying DEV files..."
mkdir -p ${PROJECT_DIR}/www/cesium
mkdir -p ${PROJECT_DIR}/www/cesium/js
mkdir -p ${PROJECT_DIR}/www/cesium/lib
cp -rf ${PROJECT_DIR}/../../www/dist/dist_js ${PROJECT_DIR}/www/cesium/dist
cp -rf ${PROJECT_DIR}/../../www/dist/dist_css ${PROJECT_DIR}/www/cesium/dist
cp -rf ${PROJECT_DIR}/../../www/js/vendor ${PROJECT_DIR}/www/cesium/js
cp -rf ${PROJECT_DIR}/../../www/css ${PROJECT_DIR}/www/cesium
cp -rf ${PROJECT_DIR}/../../www/img ${PROJECT_DIR}/www/cesium
cp -rf ${PROJECT_DIR}/../../www/lib ${PROJECT_DIR}/www/cesium
cp -rf ${PROJECT_DIR}/../../www/lib/ionic ${PROJECT_DIR}/www/cesium/lib/
cp -rf ${PROJECT_DIR}/../../www/lib/robotodraft ${PROJECT_DIR}/www/cesium/lib/
cp -rf ${PROJECT_DIR}/../../www/license ${PROJECT_DIR}/www/cesium
cp -f ${PROJECT_DIR}/../../www/index.html ${PROJECT_DIR}/www/cesium
fi
else
./install.sh $1
./install.sh $VERSION
[[ ! $? -eq 0 ]] && exit 1
fi
......
......@@ -6,12 +6,12 @@ case "$1" in
make)
case "$2" in
linux)
cd arch/linux
if [[ ! -f "cesium-desktop-v$TAG-linux-x64.deb" ]]; then
cd arch/linux || exit 1
if [[ ! -f "cesium-desktop-v$TAG-linux-x64.AppImage" ]]; then
[[ $? -eq 0 ]] && echo ">> Copying Cesium Desktop sources..."
[[ $? -eq 0 ]] && cp ../../src/* ./
[[ $? -eq 0 ]] && cp ../../LICENSE ./LICENSE.txt
[[ $? -eq 0 ]] && echo ">> Starting Vagrant Ubuntu VM..."
[[ $? -eq 0 ]] && cp -f ../../src/* ./
[[ $? -eq 0 ]] && cp -f ../../LICENSE ./LICENSE.txt
[[ $? -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
......@@ -28,18 +28,25 @@ make)
fi
;;
win)
cd arch/windows
cd arch/windows || exit 1
if [[ ! -f "cesium-desktop-v$TAG-windows-x64.exe" ]]; then
[[ $? -eq 0 ]] && echo ">> Copying Cesium Desktop sources..."
[[ $? -eq 0 ]] && cp ../../src/* ./
[[ $? -eq 0 ]] && cp ../../LICENSE ./LICENSE.txt
[[ $? -eq 0 ]] && cp -f ../../src/* ./
[[ $? -eq 0 ]] && cp -f ../../LICENSE ./LICENSE.txt
# Win build need a copy of the web asset (download in build.bat failed)
[[ $? -eq 0 ]] && cp "../../downloads/cesium-v$TAG-web.zip" ./
# Download box locally
if [[ $? -eq 0 && ! -f ./duniter_win7.box ]]; then
echo ">> Downloading Windows VM..."
wget -kL https://s3.eu-central-1.amazonaws.com/duniter/vagrant/duniter_win7.box
#if [[ $? -eq 0 ]] && [[ ! -f ./duniter_win7.box ]]; then
# echo ">> Downloading Windows 7 VM..."
# wget -kL https://s3.eu-central-1.amazonaws.com/duniter/vagrant/duniter_win7.box
#fi
if [[ $? -eq 0 ]] && [[ ! -f ./windows-server-2022.box ]]; then
echo ">> Downloading Windows Server VM..."
wget -kL https://vagrantcloud.com/gusztavvargadr/boxes/windows-server/versions/2102.0.2312/providers/virtualbox/unknown/vagrant.box
mv vagrant.box windows-server-2022.box
fi
[[ $? -eq 0 ]] && echo ">> Starting Vagrant Windows VM..."
[[ $? -eq 0 ]] && vagrant up --provision
if [[ $? -ne 0 ]]; then
......@@ -53,11 +60,11 @@ make)
fi
;;
osx)
cd arch/osx
cd arch/osx || exit 1
if [[ ! -f "cesium-desktop-v$TAG-osx-x64.zip" ]]; then
[[ $? -eq 0 ]] && echo ">> Copying Cesium Desktop sources..."
[[ $? -eq 0 ]] && cp ../../src/* ./
[[ $? -eq 0 ]] && cp ../../LICENSE ./LICENSE.txt
[[ $? -eq 0 ]] && cp -f ../../src/* ./
[[ $? -eq 0 ]] && cp -f ../../LICENSE ./LICENSE.txt
# Copy web asset (download in build-osx.sh failed)
[[ $? -eq 0 ]] && cp "../../downloads/cesium-v$TAG-web.zip" ./
# Download box locally
......@@ -87,11 +94,11 @@ make)
fi
;;
ios)
cd arch/osx
cd arch/osx || exit 1
if [[ ! -f "cesium-v$TAG-ios.zip" ]]; then
[[ $? -eq 0 ]] && echo ">> Copying Cesium Desktop sources..."
[[ $? -eq 0 ]] && cp ../../src/* ./
[[ $? -eq 0 ]] && cp ../../LICENSE ./LICENSE.txt
[[ $? -eq 0 ]] && cp -f ../../src/* ./
[[ $? -eq 0 ]] && cp -f ../../LICENSE ./LICENSE.txt
[[ $? -eq 0 ]] && echo ">> Starting Vagrant OSx VM..."
[[ $? -eq 0 ]] && vagrant up --provision
[[ $? -eq 0 ]] && echo ">> Building Cesium for iOS..."
......
......@@ -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/duniter/.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 {
......
......@@ -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/duniter/.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 {
......
......@@ -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/duniter/.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);
}
......
......@@ -2,16 +2,14 @@
requireNodejs = require;
require = undefined;
const expectedCurrency = "g1";
/**** NODEJS MODULES ****/
const fs = requireNodejs('fs');
const path = requireNodejs('path');
const yaml = requireNodejs('js-yaml');
const bs58 = requireNodejs('bs58');
const clc = requireNodejs('cli-color');
const gui = requireNodejs('nw.gui');
const fs = requireNodejs('fs'),
path = requireNodejs('path'),
yaml = requireNodejs('js-yaml'),
bs58 = requireNodejs('bs58'),
clc = requireNodejs('cli-color'),
gui = requireNodejs('nw.gui');
Base58 = {
encode: (bytes) => bs58.encode(new Buffer(bytes)),
......@@ -19,13 +17,20 @@ Base58 = {
};
/**** Program ****/
const expectedCurrency = "g1";
const APP_ID = "cesium";
const APP_NAME = "Cesium";
const HAS_SPLASH_SCREEN= true;
const HOME = requireNodejs('os').homedir();
const CESIUM_HOME = path.resolve(HOME, '.config/cesium/');
const CESIUM_KEYRING = path.resolve(CESIUM_HOME, 'keyring.yml');
const APP_HOME = path.resolve(HOME, path.join('.config', APP_ID));
const APP_KEYRING = path.resolve(APP_HOME, 'keyring.yml');
const SPLASH_SCREEN_TITLE = APP_NAME + " loading..."; // WARN: must be same inside splash.html
const DUNITER_HOME = path.resolve(HOME, '.config/duniter/duniter_default');
const DUNITER_CONF = path.resolve(DUNITER_HOME, 'conf.json');
const DUNITER_KEYRING = path.resolve(DUNITER_HOME, 'keyring.yml');
const DEFAULT_CESIUM_SETTINGS = {
const DEFAULT_SETTINGS = {
"useRelative": false,
"timeWarningExpire": 2592000,
"useLocalStorage": true,
......@@ -39,8 +44,18 @@ const DEFAULT_CESIUM_SETTINGS = {
"enable": true,
"askEnable": false,
"useRemoteStorage": false,
"host": "g1.data.duniter.fr",
"host": "g1.data.e-is.pro",
"port": "443",
"fallbackNodes": [
{
"host": "g1.data.presles.fr",
"port": 443
},
{
"host": "g1.data.mithril.re",
"port": 443
}
],
"notifications": {
"txSent": true,
"txReceived": true,
......@@ -83,10 +98,12 @@ function isSdkMode () {
return gui && typeof win.showDevTools === 'function';
}
function isMainWin(win) {
return win && win.title === "Cesium" && true;
return win && win.title === APP_NAME && true;
}
function isSplashScreen(win) {
return (win && win.title === "Cesium loading...");
const title = win && win.title;
console.debug('[desktop] Current window title: ' + title);
return (title === SPLASH_SCREEN_TITLE);
}
/**
......@@ -96,20 +113,23 @@ function isSplashScreen(win) {
*/
function getArgs() {
const options = {
debug: false,
verbose: false,
menu: false,
sdk: isSdkMode()
debug: false
};
const commands = gui && gui.App && gui.App.argv;
if (commands && commands.length) {
for (let i in commands) {
switch (commands[i]) {
case "--debug":
options.debug = true;
case "--verbose":
options.verbose = true;
break;
case "--menu":
options.menu = true;
break;
case "--debug":
options.debug = true && isSdkMode();
break;
}
}
}
......@@ -184,8 +204,8 @@ function consoleToStdout(options) {
function initLogger(options) {
options = options || getArgs();
if (options.debug) {
if (options.sdk && options.menu) {
if (options.verbose) {
if (options.debug) {
// SDK enable: not need to redirect debug
}
else {
......@@ -199,17 +219,21 @@ function initLogger(options) {
}
}
function openDebugger(subWin) {
subWin = subWin || win;
function openDebugger(subWin, callback) {
subWin = subWin || win;
if (isSdkMode()) {
try {
console.info("[desktop] Opening debugger...");
subWin.showDevTools();
if (callback) callback();
}
catch(err) {
console.error("[desktop] Cannot open debugger:", err);
}
}
else {
if (callback) callback();
}
}
function loadSettings(options) {
......@@ -233,7 +257,7 @@ function addMenu(subWin, options) {
console.error("Required 'subWin' argument");
return;
}
options = options || getArgs();
options = options || getArgs();
if (!options.locale) {
loadSettings(options);
}
......@@ -324,11 +348,11 @@ function prepareSettings(options) {
let settings = options.settings;
let locale = options.locale || 'en';
/**** Checking Cesium keyring file ****/
/**** Checking app keyring file ****/
let keyringRaw, keyring, keyPairOK;
let pubkey = settings && window.localStorage.getItem('pubkey');
const rememberMe = (!settings && DEFAULT_CESIUM_SETTINGS.rememberMe) || settings.rememberMe == true;
const keyringFile = settings && settings.keyringFile || CESIUM_KEYRING;
const rememberMe = (!settings && DEFAULT_SETTINGS.rememberMe) || settings.rememberMe == true;
const keyringFile = settings && settings.keyringFile || APP_KEYRING;
if (rememberMe && fs.existsSync(keyringFile)) {
console.debug("[desktop] Keyring file detected at {" + keyringFile + "}...");
......@@ -339,7 +363,7 @@ function prepareSettings(options) {
if (!keyPairOK) {
console.warn("[desktop] Invalid keyring file: missing 'pub' or 'sec' field! Skipping auto-login.");
// Store settings
settings = settings || DEFAULT_CESIUM_SETTINGS;
settings = settings || DEFAULT_SETTINGS;
if (settings.keyringFile) {
delete settings.keyringFile;
window.localStorage.setItem('settings', JSON.stringify(settings));
......@@ -354,16 +378,16 @@ function prepareSettings(options) {
}
// Store settings
settings = settings || DEFAULT_CESIUM_SETTINGS;
settings = settings || DEFAULT_SETTINGS;
if (!settings.keyringFile || settings.keyringFile !== keyringFile) {
settings.keyringFile = keyringFile;
window.localStorage.setItem('settings', JSON.stringify(settings));
}
}
} else if (settings && settings.keyringFile) {
console.warn("[desktop] Unable to found keyring file define in Cesium settings. Skipping auto-login");
console.warn("[desktop] Unable to found keyring file define in settings. Skipping auto-login");
// Store settings
settings = settings || DEFAULT_CESIUM_SETTINGS;
settings = settings || DEFAULT_SETTINGS;
if (settings.keyringFile) {
delete settings.keyringFile;
window.localStorage.setItem('settings', JSON.stringify(settings));
......@@ -421,7 +445,7 @@ function prepareSettings(options) {
// Generate settings, on local node (with node's keyring)
const keepAuthSession = !settings || (settings.keepAuthIdle == 9999);
settings = settings || DEFAULT_CESIUM_SETTINGS;
settings = settings || DEFAULT_SETTINGS;
settings.node = {
"host": local_host,
"port": local_port
......@@ -431,8 +455,8 @@ function prepareSettings(options) {
if (keepAuthSession) {
settings.keepAuthIdle = 9999;
}
settings.plugins = settings.plugins || DEFAULT_CESIUM_SETTINGS.plugins;
settings.plugins.es = settings.plugins.es || DEFAULT_CESIUM_SETTINGS.plugins.es;
settings.plugins = settings.plugins || DEFAULT_SETTINGS.plugins;
settings.plugins.es = settings.plugins.es || DEFAULT_SETTINGS.plugins.es;
if (locale === "fr") {
settings.plugins.es.defaultCountry = "France";
}
......@@ -452,19 +476,20 @@ function prepareSettings(options) {
// Do Not ask again
else {
console.debug('[desktop] User not need to connect on local node. Configuring Cesium to remember this choice...');
settings = settings || DEFAULT_CESIUM_SETTINGS;
settings = settings || DEFAULT_SETTINGS;
settings.askLocalNodeKeyring = false;
window.localStorage.setItem('settings', JSON.stringify(settings));
options.settings = settings;
}
}
}
console.debug("[desktop] Preparing settings [OK]");
}
function openNewWindow(options, callback) {
options = {
title: "Cesium",
title: APP_NAME,
position: 'center',
width: 1300,
height: 800,
......@@ -485,19 +510,22 @@ function openNewWindow(options, callback) {
min_height: options.min_height,
frame: options.frame,
focus: options.focus,
fullscreen: false
}, callback);
}
function openMainWindow(options, callback) {
console.info("[desktop] Starting main window...");
openNewWindow({
id: "cesium",
id: APP_ID,
...options
}, callback);
}
function openSecondaryWindow(options, callback) {
openNewWindow({
id: "cesium-secondary",
id: APP_ID + "-secondary",
...options
}, callback);
}
......@@ -507,35 +535,44 @@ function openSecondaryWindow(options, callback) {
* Main PROCESS
*/
function startApp(options) {
options = options || getArgs();
options = options || getArgs();
if (options.debug) {
openDebugger(win);
}
try {
console.info("[desktop] Launching Cesium...", options);
console.info("[desktop] Launching "+ APP_NAME + "...", options);
loadSettings(options);
console.info("[desktop] User home: ", options.home);
console.info("[desktop] User locale:", options.locale);
console.info("[desktop] Has splash screen? " + HAS_SPLASH_SCREEN);
prepareSettings(options);
openMainWindow(options);
// If app was started using the splash screen, launch the main window
if (HAS_SPLASH_SCREEN === true) {
setTimeout(() => win.close(), 1000);
openMainWindow(options);
// Close the splash screen, after 1s
setTimeout(() => win.close(), 1000);
}
}
catch (err) {
console.error("[desktop] Error while trying to launch Cesium: " + (err && err.message || err || ''), err);
console.error("[desktop] Error while trying to launch: " + (err && err.message || err || ''), err);
if (options.debug && options.sdk) {
if (options.debug) {
// Keep open, if debugger open
}
else {
// Close the splash screen
setTimeout(() => win.close());
// If app was started using the splash screen, close it
if (HAS_SPLASH_SCREEN) {
// Close the splash screen
setTimeout(() => win.close());
}
}
}
......@@ -551,17 +588,20 @@ initLogger(options);
// Splash screen: start the app
if (isSplashScreen(win)) {
console.debug('[desktop] isSplashScreen');
setTimeout(() => startApp(options), 1000);
}
// Main window: add menu
// Main window
else if (isMainWin(win)) {
if (options.menu) {
addMenu(win, options);
console.debug('[desktop] isMainWin');
// If App not already start : do it
if (HAS_SPLASH_SCREEN === false) {
startApp(options);
}
if (options.debug) {
// Else (if started) just open the debugger
else if (options.debug) {
openDebugger(win);
}
}
......
This diff is collapsed.
......@@ -11,15 +11,12 @@
"max_height": 480,
"position": "center",
"frame": false,
"fullscreen": false,
"title": "Cesium loading..."
},
"dependencies": {
"bs58": "^4.0.1",
"cli-color": "^2.0.0",
"js-yaml": "^3.13.1",
"co": "^4.6.0",
"request": "^2.88.2",
"request-promise": "^4.2.5",
"stringstream": "^0.0.6"
"cli-color": "^2.0.3",
"js-yaml": "^3.14.1"
}
}
......@@ -4,7 +4,7 @@
<meta charset="utf-8">
<meta name="viewport" content="viewport-fit=cover,width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=yes,width=device-width,minimal-ui">
<title>Cesium</title>
<title>Cesium loading...</title>
<link rel="stylesheet" href="cesium/dist_css/cesium.css">
......
This diff is collapsed.
......@@ -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==
......