Original commit: 0eadf2707d
This commit is contained in:
Wojciech Daniło 2021-02-05 01:44:21 +01:00 committed by GitHub
parent 80fdbe1427
commit 2dc1a06103
9 changed files with 292 additions and 82 deletions

38
gui/.github/workflows/docs.yml vendored Normal file
View File

@ -0,0 +1,38 @@
name: Publish Developer Docs
on:
push:
branches:
- develop
paths:
- 'docs/**'
jobs:
checkout:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
repository: 'enso-org/enso-org.github.io'
ref: 'sources'
token: ${{ secrets.ENSO_PAT }}
- name: set identity email
run: git config --global user.email "actions@github.com"
- name: set identity name
run: git config --global user.name "GitHub Actions"
- name: Checkout submodules
run: git submodule update --init
- name: Update submodules
id: status
run: |
git submodule update --init
git submodule update --remote --merge
if [ -n "$(git status --porcelain)" ]; then
echo "::set-output name=has_changes::1"
fi
- name: Push changes
run: |
git add .
git commit -m "Update submodules"
git push origin sources
if: steps.status.outputs.has_changes == '1'

View File

@ -8,7 +8,7 @@ name: GUI CI
- push
jobs:
version_assertions:
name: Version Assertions
name: Assertions
runs-on: ${{ matrix.os }}
strategy:
matrix:
@ -16,7 +16,7 @@ jobs:
- macOS-latest
fail-fast: false
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v1
- name: Read changelog info
id: changelog
run: |2-
@ -42,6 +42,23 @@ jobs:
run: >-
if [[ ${{ steps.checkCurrentReleaseTag.outputs.exists }} == true ]];
then exit 1; fi
- name: Get list of changed files
id: changed_files
run: |2-
list=`git diff --name-only origin/develop HEAD | tr '\n' ' '`
echo $list
echo "::set-output name=list::'$list'"
shell: bash
- name: Assert if CHANGELOG.md was updated
run: >-
if [[ ${{ contains(steps.changed_files.outputs.list,'CHANGELOG.md') ||
contains(github.event.head_commit.message,'[ci no changelog needed]')
}} == false ]]; then exit 1; fi
if: >-
github.ref != 'refs/heads/develop' && github.ref !=
'refs/heads/stable' && github.ref != 'refs/heads/unstable'
lint:
name: Linter
runs-on: ${{ matrix.os }}
@ -51,7 +68,7 @@ jobs:
- macOS-latest
fail-fast: false
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v1
- name: Install Node
uses: actions/setup-node@v1
with:
@ -78,7 +95,7 @@ jobs:
- macOS-latest
fail-fast: false
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v1
- name: Install Node
uses: actions/setup-node@v1
with:
@ -99,7 +116,7 @@ jobs:
- macOS-latest
fail-fast: false
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v1
- name: Install Node
uses: actions/setup-node@v1
with:
@ -153,7 +170,7 @@ jobs:
- macOS-latest
fail-fast: false
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v1
- name: Install Node
uses: actions/setup-node@v1
with:
@ -214,7 +231,7 @@ jobs:
- ubuntu-latest
fail-fast: false
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v1
- name: Read changelog info
id: changelog
run: |2-
@ -281,6 +298,36 @@ jobs:
name: content
path: dist/content
if: matrix.os == 'macOS-latest'
- name: Upload Artifacts (macOS, dmg)
uses: actions/upload-artifact@v1
with:
name: enso-mac-${{fromJson(steps.changelog.outputs.content).version}}.dmg
path: >-
dist/client/enso-mac-${{fromJson(steps.changelog.outputs.content).version}}.dmg
if: matrix.os == 'macos-latest'
- name: Upload Artifacts (macOS, dmg.sha256)
uses: actions/upload-artifact@v1
with:
name: >-
enso-mac-${{fromJson(steps.changelog.outputs.content).version}}.dmg.sha256
path: >-
dist/client/enso-mac-${{fromJson(steps.changelog.outputs.content).version}}.dmg.sha256
if: matrix.os == 'macos-latest'
- name: Upload Artifacts (Windows, exe)
uses: actions/upload-artifact@v1
with:
name: enso-win-${{fromJson(steps.changelog.outputs.content).version}}.exe
path: >-
dist/client/enso-win-${{fromJson(steps.changelog.outputs.content).version}}.exe
if: matrix.os == 'windows-latest'
- name: Upload Artifacts (Windows, exe.sha256)
uses: actions/upload-artifact@v1
with:
name: >-
enso-win-${{fromJson(steps.changelog.outputs.content).version}}.exe.sha256
path: >-
dist/client/enso-win-${{fromJson(steps.changelog.outputs.content).version}}.exe.sha256
if: matrix.os == 'windows-latest'
- name: Upload Artifacts (Linux, AppImage)
uses: actions/upload-artifact@v1
with:
@ -289,20 +336,14 @@ jobs:
path: >-
dist/client/enso-linux-${{fromJson(steps.changelog.outputs.content).version}}.AppImage
if: matrix.os == 'ubuntu-latest'
- name: Upload Artifacts (Windows, exe)
- name: Upload Artifacts (Linux, AppImage.sha256)
uses: actions/upload-artifact@v1
with:
name: enso-win-${{fromJson(steps.changelog.outputs.content).version}}.exe
name: >-
enso-linux-${{fromJson(steps.changelog.outputs.content).version}}.AppImage.sha256
path: >-
dist/client/enso-win-${{fromJson(steps.changelog.outputs.content).version}}.exe
if: matrix.os == 'windows-latest'
- name: Upload Artifacts (macOS, dmg)
uses: actions/upload-artifact@v1
with:
name: enso-mac-${{fromJson(steps.changelog.outputs.content).version}}.dmg
path: >-
dist/client/enso-mac-${{fromJson(steps.changelog.outputs.content).version}}.dmg
if: matrix.os == 'macos-latest'
dist/client/enso-linux-${{fromJson(steps.changelog.outputs.content).version}}.AppImage.sha256
if: matrix.os == 'ubuntu-latest'
if: >-
contains(github.event.head_commit.message,'[ci build]') || github.ref ==
'refs/heads/main' || github.ref == 'refs/heads/develop' || github.ref ==
@ -316,7 +357,7 @@ jobs:
- macOS-latest
fail-fast: false
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v1
- name: Download artifacts
uses: actions/download-artifact@v2
with:
@ -366,7 +407,7 @@ jobs:
- ubuntu-latest
fail-fast: false
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v1
- name: Download artifacts
uses: actions/download-artifact@v2
with:

4
gui/.gitignore vendored
View File

@ -1,3 +1,4 @@
# Outputs
dist
# Rust
@ -17,3 +18,6 @@ wasm-pack.log
# JavaScript
node_modules
.nvmrc
# MacOS
.DS_Store

View File

@ -171,7 +171,7 @@ commands.build.rust = async function(argv) {
console.log('Checking the resulting WASM size.')
let stats = fss.statSync(paths.dist.wasm.mainOptGz)
let limit = 4.28
let limit = 4.29
let size = Math.round(100 * stats.size / 1024 / 1024) / 100
if (size > limit) {
throw(`Output file size exceeds the limit (${size}MB > ${limit}MB).`)

View File

@ -16,6 +16,8 @@ const yaml = require('js-yaml')
const NODE_VERSION = '14.15.0'
const RUST_VERSION = 'nightly-2019-11-04'
const WASM_PACK_VERSION = '0.9.1'
const FLAG_NO_CHANGELOG_NEEDED = '[ci no changelog needed]'
const FLAG_FORCE_CI_BUILD = '[ci build]'
@ -34,7 +36,10 @@ function job(platforms,name,steps,cfg) {
},
"fail-fast": false
},
steps : list({uses:"actions/checkout@v2"}, ...steps),
// WARNING!
// Do not update to `checkout@v2` because it is broken:
// https://github.com/actions/checkout/issues/438
steps : list({uses:"actions/checkout@v1"}, ...steps),
...cfg
}
}
@ -186,9 +191,16 @@ function uploadBinArtifactsFor(name,sys,ext,os) {
}
}
uploadBinArtifactsForMacOS = uploadBinArtifactsFor('Linux','ubuntu','AppImage','linux')
uploadBinArtifactsForWindows = uploadBinArtifactsFor('Windows','windows','exe','win')
uploadBinArtifactsForLinux = uploadBinArtifactsFor('macOS','macos','dmg','mac')
function uploadBinArtifactsWithChecksumsFor(name,sys,ext,os) {
return [
uploadBinArtifactsFor(name,sys,ext,os),
uploadBinArtifactsFor(name,sys,ext+'.sha256',os)
]
}
uploadBinArtifactsForMacOS = uploadBinArtifactsWithChecksumsFor('macOS','macos','dmg','mac')
uploadBinArtifactsForLinux = uploadBinArtifactsWithChecksumsFor('Linux','ubuntu','AppImage','linux')
uploadBinArtifactsForWindows = uploadBinArtifactsWithChecksumsFor('Windows','windows','exe','win')
let downloadArtifacts = {
name: "Download artifacts",
@ -200,9 +212,27 @@ let downloadArtifacts = {
// ======================
// === GitHub Release ===
// ======================
// ===========
// === Git ===
// ===========
/// Gets a space-separated list of changed files between this commit and the `develop` branch.
let getListOfChangedFiles = {
name: 'Get list of changed files',
id: 'changed_files',
run: `
list=\`git diff --name-only origin/develop HEAD | tr '\\n' ' '\`
echo $list
echo "::set-output name=list::'$list'"
`,
shell: 'bash'
}
// =================
// === Changelog ===
// =================
let getCurrentReleaseChangelogInfo = {
name: 'Read changelog info',
@ -215,6 +245,21 @@ let getCurrentReleaseChangelogInfo = {
shell: 'bash'
}
let assertChangelogWasUpdated = [
getListOfChangedFiles,
{
name: 'Assert if CHANGELOG.md was updated',
run: `if [[ \${{ contains(steps.changed_files.outputs.list,'CHANGELOG.md') || contains(github.event.head_commit.message,'${FLAG_NO_CHANGELOG_NEEDED}') }} == false ]]; then exit 1; fi`,
if: `github.ref != 'refs/heads/develop' && github.ref != 'refs/heads/stable' && github.ref != 'refs/heads/unstable'`
}
]
// ======================
// === GitHub Release ===
// ======================
let uploadGitHubRelease = {
name: `Upload GitHub Release`,
uses: "softprops/action-gh-release@v1",
@ -301,7 +346,8 @@ let assertReleaseDoNotExists = [
let assertions = list(
assertVersionUnstable,
assertVersionStable,
assertReleaseDoNotExists
assertReleaseDoNotExists,
assertChangelogWasUpdated
)
@ -311,13 +357,13 @@ let assertions = list(
// ================
let releaseCondition = `github.ref == 'refs/heads/unstable' || github.ref == 'refs/heads/stable'`
let buildCondition = `contains(github.event.head_commit.message,'[ci build]') || github.ref == 'refs/heads/main' || github.ref == 'refs/heads/develop' || ${releaseCondition}`
let buildCondition = `contains(github.event.head_commit.message,'${FLAG_FORCE_CI_BUILD}') || github.ref == 'refs/heads/main' || github.ref == 'refs/heads/develop' || ${releaseCondition}`
let workflow = {
name : "GUI CI",
on: ['push'],
jobs: {
version_assertions: job_on_macos("Version Assertions", [
version_assertions: job_on_macos("Assertions", [
getCurrentReleaseChangelogInfo,
assertions
]),

View File

@ -262,6 +262,12 @@ resources. If you want the artifacts to be build for your commit, simply add `[c
in your commit message.
### Skipping CHANGELOG.md change assertions
By default, CI would fail if the `CHANGELOG.md` file does not need to be updated. However, sometimes
there are PRs that does not change anything significant in the final product. You can then simply
add `[ci no changelog needed]` anywhere in your commit message to skip this assertion.
### Publishing Results
All new changes should be proposed in the form of Pull Requests (PRs) to this repository. Each PR
should contain changes to documentation and `CHANGELOG.md` if applicable.

View File

@ -30,7 +30,8 @@ let config = {
"copy-webpack-plugin": "^5.1.1",
"devtron": "^1.4.0",
"electron": "11.1.1",
"electron-builder": "^22.9.1"
"electron-builder": "^22.9.1",
"crypto-js": "4.0.0"
},
scripts: {
@ -46,15 +47,21 @@ config.build = {
copyright: 'Copyright © 2021 ${author}.',
artifactName: 'enso-${os}-${version}.${ext}',
mac: {
// We do not use compression as the build time is huge and file size saving is almost zero.
target: ['dmg'],
icon: `${paths.dist.root}/icons/icon.icns`,
category: 'public.app-category.developer-tools',
darkModeSupport: true,
type: 'distribution',
},
win: {
// We do not use compression as the build time is huge and file size saving is almost zero.
target: ['nsis'],
icon: `${paths.dist.root}/icons/icon.ico`,
},
linux: {
// We do not use compression as the build time is huge and file size saving is almost zero.
target: ['AppImage'],
icon: `${paths.dist.root}/icons/png`,
category: 'Development',
},
@ -95,6 +102,7 @@ config.build = {
writeUpdateInfo: false
},
publish: [],
afterAllArtifactBuild: 'tasks/computeHashes.js'
}
module.exports = {config}

View File

@ -0,0 +1,56 @@
const crypto = require('crypto');
const fs = require('fs');
const glob = require('glob');
const paths = require('../../../../../build/paths')
// =================
// === Constants ===
// =================
const CHECKSUM_TYPE = 'sha256'
// ================
// === Checksum ===
// ================
/// The `type` argument can be one of `md5`, `sha1`, or `sha256`.
function getChecksum(path,type) {
return new Promise(function (resolve, reject) {
const hash = crypto.createHash(type);
const input = fs.createReadStream(path);
input.on('error', reject);
input.on('data', function (chunk) {
hash.update(chunk);
});
input.on('close', function () {
resolve(hash.digest('hex'));
});
});
}
async function writeFileChecksum(path,type) {
let checksum = await getChecksum(path,type)
let targetPath = `${path}.${type}`
fs.writeFile(targetPath,checksum,'utf8',(err) => {
if (err) { throw err }
})
}
// ================
// === Callback ===
// ================
exports.default = async function () {
let files = glob.sync(paths.dist.client + '/*.{dmg,exe,AppImage}')
for (let file of files) {
console.log(`Generating ${CHECKSUM_TYPE} checksum for ${file}.`)
await writeFileChecksum(file,CHECKSUM_TYPE)
}
return []
}

View File

@ -10,12 +10,12 @@
"integrity": "sha512-GLyWIFBbGvpKPGo55JyRZAo4lVbnBiD52cKlw/0Vt+wnmKvWJkpZvsjVoaIolyBXDeAQKSicRtqFNPem9w0WYA=="
},
"@babel/code-frame": {
"version": "7.12.11",
"resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz",
"integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==",
"version": "7.12.13",
"resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.13.tgz",
"integrity": "sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g==",
"dev": true,
"requires": {
"@babel/highlight": "^7.10.4"
"@babel/highlight": "^7.12.13"
}
},
"@babel/helper-validator-identifier": {
@ -25,12 +25,12 @@
"dev": true
},
"@babel/highlight": {
"version": "7.10.4",
"resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.4.tgz",
"integrity": "sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA==",
"version": "7.12.13",
"resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.12.13.tgz",
"integrity": "sha512-kocDQvIbgMKlWxXe9fof3TQ+gkIPOUSEYhJjqUjvKMez3krV7vbzYCDq39Oj11UAVK7JqPVGQPlgE85dPNlQww==",
"dev": true,
"requires": {
"@babel/helper-validator-identifier": "^7.10.4",
"@babel/helper-validator-identifier": "^7.12.11",
"chalk": "^2.0.0",
"js-tokens": "^4.0.0"
}
@ -399,16 +399,6 @@
"y18n": "^4.0.0",
"yargs-parser": "^15.0.1"
}
},
"yargs-parser": {
"version": "15.0.1",
"resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-15.0.1.tgz",
"integrity": "sha512-0OAMV2mAZQrs3FkNpDQcBk1x5HXb8X4twADss4S0Iuk+2dGnLOE/fRHrsYm542GduMveyA77OF4wrNJuanRCWw==",
"dev": true,
"requires": {
"camelcase": "^5.0.0",
"decamelize": "^1.2.0"
}
}
}
},
@ -1223,9 +1213,9 @@
}
},
"@octokit/openapi-types": {
"version": "3.3.0",
"resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-3.3.0.tgz",
"integrity": "sha512-s3dd32gagPmKaSLNJ9aPNok7U+tl69YLESf6DgQz5Ml/iipPZtif3GLvWpNXoA6qspFm1LFUZX+C3SqWX/Y/TQ==",
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-4.0.1.tgz",
"integrity": "sha512-k2hRcfcLRyPJjtYfJLzg404n7HZ6sUpAWAR/uNI8tf96NgatWOpw1ocdF+WFfx/trO1ivBh7ckynO1rn+xAw/Q==",
"dev": true
},
"@octokit/plugin-enterprise-rest": {
@ -1282,14 +1272,14 @@
}
},
"@octokit/request": {
"version": "5.4.13",
"resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.4.13.tgz",
"integrity": "sha512-WcNRH5XPPtg7i1g9Da5U9dvZ6YbTffw9BN2rVezYiE7couoSyaRsw0e+Tl8uk1fArHE7Dn14U7YqUDy59WaqEw==",
"version": "5.4.14",
"resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.4.14.tgz",
"integrity": "sha512-VkmtacOIQp9daSnBmDI92xNIeLuSRDOIuplp/CJomkvzt7M18NXgG044Cx/LFKLgjKt9T2tZR6AtJayba9GTSA==",
"dev": true,
"requires": {
"@octokit/endpoint": "^6.0.1",
"@octokit/request-error": "^2.0.0",
"@octokit/types": "^6.0.3",
"@octokit/types": "^6.7.1",
"deprecation": "^2.0.0",
"is-plain-object": "^5.0.0",
"node-fetch": "^2.6.1",
@ -1369,12 +1359,12 @@
}
},
"@octokit/types": {
"version": "6.6.0",
"resolved": "https://registry.npmjs.org/@octokit/types/-/types-6.6.0.tgz",
"integrity": "sha512-nmFoU3HCbw1AmnZU/eto2VvzV06+N7oAqXwMmAHGlNDF+KFykksh/VlAl85xc1P5T7Mw8fKYvXNaImNHCCH/rg==",
"version": "6.8.2",
"resolved": "https://registry.npmjs.org/@octokit/types/-/types-6.8.2.tgz",
"integrity": "sha512-RpG0NJd7OKSkWptiFhy1xCLkThs5YoDIKM21lEtDmUvSpbaIEfrxzckWLUGDFfF8RydSyngo44gDv8m2hHruUg==",
"dev": true,
"requires": {
"@octokit/openapi-types": "^3.3.0",
"@octokit/openapi-types": "^4.0.0",
"@types/node": ">= 8"
}
},
@ -2215,9 +2205,9 @@
}
},
"before-after-hook": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.1.0.tgz",
"integrity": "sha512-IWIbu7pMqyw3EAJHzzHbWa85b6oud/yfKYg5rqB5hNE8CeMi3nX+2C2sj0HswfblST86hpVEOAb9x34NZd6P7A==",
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.1.1.tgz",
"integrity": "sha512-5ekuQOvO04MDj7kYZJaMab2S8SPjGJbotVNyv7QYFCOAwrGZs/YnoDNlh1U+m5hl7H2D/+n0taaAV/tfyd3KMA==",
"dev": true
},
"big-integer": {
@ -4071,6 +4061,11 @@
"randomfill": "^1.0.3"
}
},
"crypto-js": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-4.0.0.tgz",
"integrity": "sha512-bzHZN8Pn+gS7DQA6n+iUmBfl0hO5DJq++QP3U6uTucDtk/0iGpXd/Gg7CGR0p8tJhofJyaKoWBuJI4eAO00BBg=="
},
"crypto-random-string": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz",
@ -4729,6 +4724,11 @@
"y18n": "^5.0.5",
"yargs-parser": "^20.2.2"
}
},
"yargs-parser": {
"version": "20.2.4",
"resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz",
"integrity": "sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA=="
}
}
},
@ -4906,9 +4906,9 @@
"integrity": "sha512-6u0VYSCo/OW6IoD5WCLLy9JUGARbamfSavcNXry/eu8aHVFei6CD3Sw+VGX5alea1i9pgPHW0mbu6Xj0uBh7gA=="
},
"envinfo": {
"version": "7.7.3",
"resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.7.3.tgz",
"integrity": "sha512-46+j5QxbPWza0PB1i15nZx0xQ4I/EfQxg9J8Had3b408SV63nEtor2e+oiY63amTo9KTuh2a3XLObNwduxYwwA==",
"version": "7.7.4",
"resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.7.4.tgz",
"integrity": "sha512-TQXTYFVVwwluWSFis6K2XKxgrD22jEv0FTuLCQI+OjH7rn93+iY0fSSFM5lrSxFY+H1+B0/cvvlamr3UsBivdQ==",
"dev": true
},
"err-code": {
@ -8026,6 +8026,12 @@
"resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
"integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
"dev": true
},
"yargs-parser": {
"version": "20.2.4",
"resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz",
"integrity": "sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==",
"dev": true
}
}
},
@ -8928,9 +8934,9 @@
}
},
"get-intrinsic": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.0.tgz",
"integrity": "sha512-M11rgtQp5GZMZzDL7jLTNxbDfurpzuau5uqRWDPvlHjfvg3TdScAZo96GLvhMjImrmR8uAt0FS2RLoMrfWGKlg==",
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz",
"integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==",
"dev": true,
"requires": {
"function-bind": "^1.1.1",
@ -9826,9 +9832,9 @@
},
"dependencies": {
"json5": {
"version": "2.1.3",
"resolved": "https://registry.npmjs.org/json5/-/json5-2.1.3.tgz",
"integrity": "sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA==",
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz",
"integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==",
"requires": {
"minimist": "^1.2.5"
}
@ -11820,9 +11826,9 @@
"integrity": "sha512-BLbiRkiBzAwsjut4x/dsibSTB6yWpwT5qWmC2OfuCg3GgVQCSgMs4vEctYPhsaGtd0AeuuHMkjZ2h2WG8MSzRw=="
},
"uglify-js": {
"version": "3.12.5",
"resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.12.5.tgz",
"integrity": "sha512-SgpgScL4T7Hj/w/GexjnBHi3Ien9WS1Rpfg5y91WXMj9SY997ZCQU76mH4TpLwwfmMvoOU8wiaRkIf6NaH3mtg==",
"version": "3.12.6",
"resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.12.6.tgz",
"integrity": "sha512-aqWHe3DfQmZUDGWBbabZ2eQnJlQd1fKlMUu7gV+MiTuDzdgDw31bI3wA2jLLsV/hNcDP26IfyEgSVoft5+0SVw==",
"dev": true,
"optional": true
},
@ -13292,9 +13298,14 @@
}
},
"yargs-parser": {
"version": "20.2.4",
"resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz",
"integrity": "sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA=="
"version": "15.0.1",
"resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-15.0.1.tgz",
"integrity": "sha512-0OAMV2mAZQrs3FkNpDQcBk1x5HXb8X4twADss4S0Iuk+2dGnLOE/fRHrsYm542GduMveyA77OF4wrNJuanRCWw==",
"dev": true,
"requires": {
"camelcase": "^5.0.0",
"decamelize": "^1.2.0"
}
},
"yauzl": {
"version": "2.10.0",