diff --git a/packages/core/src/shell/scripts/set-system-proxy/index.js b/packages/core/src/shell/scripts/set-system-proxy/index.js
index a5f33d2..ab63e9d 100644
--- a/packages/core/src/shell/scripts/set-system-proxy/index.js
+++ b/packages/core/src/shell/scripts/set-system-proxy/index.js
@@ -128,7 +128,8 @@ const executor = {
async mac (exec, params) {
// exec = _exec
let wifiAdaptor = await exec('sh -c "networksetup -listnetworkserviceorder | grep `route -n get 0.0.0.0 | grep \'interface\' | cut -d \':\' -f2` -B 1 | head -n 1 "')
- wifiAdaptor = wifiAdaptor.substring(3).trim()
+ wifiAdaptor = wifiAdaptor.trim()
+ wifiAdaptor = wifiAdaptor.substring(wifiAdaptor.indexOf(' ')).trim()
if (params == null) {
await exec(`networksetup -setwebproxystate '${wifiAdaptor}' off`)
diff --git a/packages/core/test/macProxy.js b/packages/core/test/macProxy.js
index 2ce5a6d..d873cc1 100644
--- a/packages/core/test/macProxy.js
+++ b/packages/core/test/macProxy.js
@@ -11,3 +11,6 @@
// test().then((ret) => {
// console.log('haha', ret)
// })
+let wifiAdaptor = '(151) test'
+wifiAdaptor = wifiAdaptor.substring(wifiAdaptor.indexOf(' ')).trim()
+console.log(wifiAdaptor)
diff --git a/packages/gui/package.json b/packages/gui/package.json
index 92a6617..0c1d3d4 100644
--- a/packages/gui/package.json
+++ b/packages/gui/package.json
@@ -18,15 +18,20 @@
"dependencies": {
"@docmirror/dev-sidecar": "^1.5.0",
"@docmirror/mitmproxy": "^1.5.0",
+ "adm-zip": "^0.5.5",
"ant-design-vue": "^1.6.5",
+ "compressing": "^1.5.1",
"core-js": "^3.6.5",
"electron-baidu-tongji": "^1.0.5",
+ "electron-reload": "^1.5.0",
"electron-store": "^6.0.1",
"electron-updater": "^4.3.5",
"es-abstract": "^1.17.7",
+ "extract-zip": "^2.0.1",
"json5": "^2.1.3",
"lodash": "^4.17.20",
"log4js": "^6.3.0",
+ "request-progress": "^3.0.0",
"sass": "^1.27.1",
"sass-loader": "^10.0.4",
"vue": "^2.6.11",
diff --git a/packages/gui/pkg/after-pack.js b/packages/gui/pkg/after-pack.js
new file mode 100644
index 0000000..9fd1535
--- /dev/null
+++ b/packages/gui/pkg/after-pack.js
@@ -0,0 +1,28 @@
+const path = require('path')
+const AdmZip = require('adm-zip')
+const pkg = require('../package.json')
+const fs = require('fs')
+exports.default = async function (context) {
+ console.log('context', context)
+ let targetPath
+ let latest = null
+ if (context.packager.platform.nodeName === 'darwin') {
+ targetPath = path.join(context.appOutDir, `${context.packager.appInfo.productName}.app/Contents/Resources`)
+ latest = 'latest-mac.yml'
+ } else {
+ targetPath = path.join(context.appOutDir, './resources')
+ latest = 'latest.yml'
+ }
+ const zip = new AdmZip()
+ zip.addLocalFolder(targetPath)
+ const partUpdateFile = `update-${pkg.version}.zip`
+ zip.writeZip(path.join(context.outDir, partUpdateFile))
+
+ const partUpdateUrl = 'http://dev-sidecar.docmirror.cn/update/' + partUpdateFile
+
+ fs.appendFile(path.join(context.outDir, latest), `partPackage: ${partUpdateUrl}\nreleaseNotes: \n - 升级日志`, (err) => {
+ if (err) {
+ console.log('修改latest 失败')
+ }
+ })
+}
diff --git a/packages/gui/src/bridge/update/backend.js b/packages/gui/src/bridge/update/backend.js
index bd89c04..429eda3 100644
--- a/packages/gui/src/bridge/update/backend.js
+++ b/packages/gui/src/bridge/update/backend.js
@@ -1,13 +1,39 @@
import { ipcMain } from 'electron'
import { autoUpdater } from 'electron-updater'
import path from 'path'
+import request from 'request'
+import progress from 'request-progress'
// win是所有窗口的引用
-// const path = require('path') // 引入path模块
-// const fs = require('fs-extra')
+import fs from 'fs'
+import AdmZip from 'adm-zip'
+import logger from '../../utils/util.log'
// eslint-disable-next-line no-unused-vars
const isMac = process.platform === 'darwin'
+
+function downloadFile (uri, filePath, onProgress, onSuccess, onError) {
+ progress(request(uri), {
+ // throttle: 2000, // Throttle the progress event to 2000ms, defaults to 1000ms
+ // delay: 1000, // Only start to emit after 1000ms delay, defaults to 0ms
+ // lengthHeader: 'x-transfer-length' // Length header to use, defaults to content-length
+ })
+ .on('progress', function (state) {
+ onProgress(state.percent * 100)
+ logger.log('progress', state.percent)
+ })
+ .on('error', function (err) {
+ // Do something with err
+ logger.error('下载升级包失败', err)
+ onError(err)
+ })
+ .on('end', function () {
+ // Do something after request finishes
+ onSuccess()
+ })
+ .pipe(fs.createWriteStream(filePath))
+}
+
// 检测更新,在你想要检查更新的时候执行,renderer事件触发后的操作自行编写
-function updateHandle (app, win, beforeQuit, updateUrl, log) {
+function updateHandle (app, win, beforeQuit, log) {
// // 更新前,删除本地安装包 ↓
// const updaterCacheDirName = 'dev-sidecar-updater'
// const updatePendingPath = path.join(autoUpdater.app.baseCachePath, updaterCacheDirName, 'pending')
@@ -22,14 +48,54 @@ function updateHandle (app, win, beforeQuit, updateUrl, log) {
// 本地开发环境,改变app-update.yml地址
if (process.env.NODE_ENV === 'development' && !isMac) {
autoUpdater.updateConfigPath = path.join(__dirname, 'win-unpacked/resources/app-update.yml')
+ autoUpdater.setFeedURL({
+ provider: 'generic',
+ url: 'http://localhost/dev-sidecar/'
+ })
}
autoUpdater.autoDownload = false
- // 设置服务器更新地址
- autoUpdater.setFeedURL({
- provider: 'generic',
- url: updateUrl
- })
+ let partPackagePath = null
+
+ function downloadPart (app, value) {
+ const appPath = app.getAppPath()
+ const fileDir = path.join(appPath, 'update')
+ console.log('fileDir', fileDir)
+ try {
+ fs.accessSync(fileDir, fs.constants.F_OK)
+ } catch (e) {
+ fs.mkdirSync(fileDir)
+ }
+ const filePath = path.join(fileDir, value.version + '.zip')
+
+ downloadFile(value.partPackage, filePath, (data) => {
+ win.webContents.send('update', { key: 'progress', value: parseInt(data) })
+ }, () => {
+ // 文件下载完成
+ win.webContents.send('update', { key: 'progress', value: 100 })
+ logger.info('升级包下载成功:', filePath)
+ partPackagePath = filePath
+ win.webContents.send('update', {
+ key: 'downloaded',
+ value: value
+ })
+ }, (error) => {
+ sendUpdateMessage({ key: 'error', value: error, error: error })
+ })
+ }
+
+ function updatePart (app, value, partPackagePath) {
+ const appPath = app.getAppPath()
+ const target = path.join(appPath, 'resources')
+ log.info('开始解压缩,安装升级包', partPackagePath, target)
+ // 解压缩
+ var zip = new AdmZip(partPackagePath)
+ zip.extractAllTo(target, true)
+ log.info('安装完成,重启app')
+ app.relaunch()
+ app.quit()
+ }
+
autoUpdater.on('error', function (error) {
log.info('autoUpdater error', error)
sendUpdateMessage({ key: 'error', value: error, error: error })
@@ -63,6 +129,10 @@ function updateHandle (app, win, beforeQuit, updateUrl, log) {
ipcMain.on('update', (e, arg) => {
if (arg.key === 'doUpdateNow') {
+ if (partPackagePath) {
+ updatePart(app, arg.value, partPackagePath)
+ return
+ }
// some code here to handle event
beforeQuit().then(() => {
autoUpdater.quitAndInstall()
@@ -80,6 +150,11 @@ function updateHandle (app, win, beforeQuit, updateUrl, log) {
// 下载新版本
log.info('autoUpdater downloadUpdate')
autoUpdater.downloadUpdate()
+ } else if (arg.key === 'downloadPart') {
+ // 下载增量更新版本
+ log.info('autoUpdater downloadPart')
+ // autoUpdater.downloadUpdate()
+ downloadPart(app, arg.value)
}
})
// 通过main进程发送事件给renderer进程,提示更新信息
@@ -95,7 +170,6 @@ function updateHandle (app, win, beforeQuit, updateUrl, log) {
export default {
install (context) {
const { app, win, beforeQuit, log } = context
- const updateUrl = 'http://dev-sidecar.docmirror.cn/update/'
if (process.env.NODE_ENV === 'development') {
Object.defineProperty(app, 'isPackaged', {
get () {
@@ -105,6 +179,6 @@ export default {
// updateUrl = 'http://dev-sidecar.docmirror.cn/update/'
// updateUrl = 'http://localhost/dev-sidecar/'
}
- updateHandle(app, win, beforeQuit, updateUrl, log)
+ updateHandle(app, win, beforeQuit, log)
}
}
diff --git a/packages/gui/src/bridge/update/front.js b/packages/gui/src/bridge/update/front.js
index ce69583..c620f1c 100644
--- a/packages/gui/src/bridge/update/front.js
+++ b/packages/gui/src/bridge/update/front.js
@@ -1,6 +1,6 @@
function install (app, api) {
- const updateParams = app.$global.update = { fromUser: false, autoDownload: true, progress: 0, downloading: false, newVersion: false }
+ const updateParams = app.$global.update = { fromUser: false, autoDownload: true, progress: 0, downloading: false, newVersion: false, isFullUpdate: true }
api.ipc.on('update', (event, message) => {
console.log('on message', event, message)
handleUpdateMessage(message, app)
@@ -16,6 +16,10 @@ function install (app, api) {
downloadUpdate () {
api.ipc.send('update', { key: 'downloadUpdate' })
},
+ downloadPart (value) {
+ // 增量更新
+ api.ipc.send('update', { key: 'downloadPart', value })
+ },
doUpdateNow () {
api.ipc.send('update', { key: 'doUpdateNow' })
}
@@ -50,6 +54,15 @@ function install (app, api) {
function progressUpdate (value) {
updateParams.progress = value
}
+
+ function downloadNewVersion (value) {
+ if (value.partPackage) {
+ // 有增量更新
+ api.update.downloadPart(value)
+ } else {
+ api.update.downloadUpdate()
+ }
+ }
function foundNewVersion (value) {
updateParams.newVersion = true
@@ -71,18 +84,26 @@ function install (app, api) {
}
})
- api.update.downloadUpdate()
+ downloadNewVersion(value)
return
}
app.$confirm({
title: '发现新版本',
- content: `是否要更新到v${value.version}?`,
cancelText: '暂不升级',
okText: '升级',
- // content: h =>
{value.version}更新内容:
{value.releaseNotes}
,
+ content: h => {
+ console.log(value)
+ if (value.releaseNotes) {
+ const notes = []
+ for (const note of value.releaseNotes) {
+ notes.push({note})
+ }
+ return
+ }
+ },
onOk () {
console.log('OK')
- api.update.downloadUpdate()
+ downloadNewVersion(value)
},
onCancel () {
console.log('Cancel')
diff --git a/packages/gui/vue.config.js b/packages/gui/vue.config.js
index fc82b6a..bd03fd5 100644
--- a/packages/gui/vue.config.js
+++ b/packages/gui/vue.config.js
@@ -30,11 +30,15 @@ module.exports = {
},
pluginOptions: {
electronBuilder: {
+ afterPack: './pkg/after-pack.js',
nodeIntegration: true,
// Provide an array of files that, when changed, will recompile the main process and restart Electron
// Your main process file will be added by default
mainProcessWatch: ['src/bridge', 'src/*.js', 'node_modules/dev-sidecar/src'],
builderOptions: {
+ // builderOptions: {
+ // publish: ['github']// 此处写入github 就好,不用添加其他内容
+ // },
extraResources: [
{
from: 'extra',
@@ -57,7 +61,7 @@ module.exports = {
},
publish: {
provider: 'generic',
- url: ''
+ url: 'http://dev-sidecar.docmirror.cn/update/'
}
},
chainWebpackMainProcess (config) {
diff --git a/packages/gui/yarn.lock b/packages/gui/yarn.lock
index 93eea7e..bea652d 100644
--- a/packages/gui/yarn.lock
+++ b/packages/gui/yarn.lock
@@ -901,12 +901,12 @@
ajv "^6.12.0"
ajv-keywords "^3.4.1"
-"@docmirror/dev-sidecar@^1.4.0":
- version "1.4.0"
- resolved "https://registry.npmjs.org/@docmirror/dev-sidecar/-/dev-sidecar-1.4.0.tgz"
- integrity sha512-ZUjWfBMBy5O2H4AMufdGkE3OjhwsKEjySuSHnx9KIpmQymdsl89QsarYwnParIre7umgh24AflwHq0Baef1cOg==
+"@docmirror/dev-sidecar@^1.5.0":
+ version "1.5.0"
+ resolved "https://registry.yarnpkg.com/@docmirror/dev-sidecar/-/dev-sidecar-1.5.0.tgz#cbded77651fc5a8dbee5d84db083a06518928cfd"
+ integrity sha512-f2eDfOs9PDOBxFpAxo/nImSRfwqVi/tVFdzyv4Bn10kBcBJY8iiqYWpqq+blvgWSO43V+UyG1VNXagqHK37GLQ==
dependencies:
- "@docmirror/mitmproxy" "^1.4.0"
+ "@docmirror/mitmproxy" "^1.5.0"
agentkeepalive "^2.1.1"
babel-preset-es2020 "^1.0.2"
charset "^1.0.0"
@@ -934,12 +934,13 @@
validator "^13.1.17"
winreg "^1.2.4"
-"@docmirror/mitmproxy@^1.4.0":
- version "1.4.0"
- resolved "https://registry.npmjs.org/@docmirror/mitmproxy/-/mitmproxy-1.4.0.tgz"
- integrity sha512-RAFcSqKD8huDPaUFs7k/pSijOc4PC0+JRp5dOk6NYfNDveKsJuPf1fjqbb6HqmbByjE+c+M09lwU3yX/XXqw9A==
+"@docmirror/mitmproxy@^1.5.0":
+ version "1.5.0"
+ resolved "https://registry.yarnpkg.com/@docmirror/mitmproxy/-/mitmproxy-1.5.0.tgz#16b9a956542a56f9889cd0c69c08a33d06d77ab8"
+ integrity sha512-H17TAqKmvzCMSTO6VGTC6kKQskjk1gEJZYsU2ijziZU0XEC96ObG0TWOnsdKh2PhmwDLwxS9cUyb1hpYilLreQ==
dependencies:
agentkeepalive "^2.1.1"
+ axios "^0.21.1"
child_process "^1.0.2"
colors "^1.1.2"
commander "^2.9.0"
@@ -956,6 +957,7 @@
node-cmd "^3.0.0"
node-forge "^0.8.2"
require-context "^1.1.0"
+ stream-throttle "^0.1.3"
through2 "^2.0.1"
tunnel-agent "^0.4.3"
util "^0.12.3"
@@ -1603,6 +1605,13 @@
dependencies:
"@types/yargs-parser" "*"
+"@types/yauzl@^2.9.1":
+ version "2.9.1"
+ resolved "https://registry.yarnpkg.com/@types/yauzl/-/yauzl-2.9.1.tgz#d10f69f9f522eef3cf98e30afb684a1e1ec923af"
+ integrity sha512-A1b8SU4D10uoPjwb0lnHmmu8wZhR9d+9o2PKBQT2jU5YPTKsxac6M2qGAdY7VcL+dHHhARVUDmeg0rOrcd9EjA==
+ dependencies:
+ "@types/node" "*"
+
"@vue/babel-helper-vue-jsx-merge-props@^1.0.0":
version "1.0.0"
resolved "https://registry.npm.taobao.org/@vue/babel-helper-vue-jsx-merge-props/download/@vue/babel-helper-vue-jsx-merge-props-1.0.0.tgz?cache=0&sync_timestamp=1596768129236&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40vue%2Fbabel-helper-vue-jsx-merge-props%2Fdownload%2F%40vue%2Fbabel-helper-vue-jsx-merge-props-1.0.0.tgz"
@@ -2069,6 +2078,11 @@ address@^1.1.2:
resolved "https://registry.npm.taobao.org/address/download/address-1.1.2.tgz"
integrity sha1-vxEWycdYxRt6kz0pa3LCIe2UKLY=
+adm-zip@^0.5.5:
+ version "0.5.5"
+ resolved "https://registry.yarnpkg.com/adm-zip/-/adm-zip-0.5.5.tgz#b6549dbea741e4050309f1bb4d47c47397ce2c4f"
+ integrity sha512-IWwXKnCbirdbyXSfUDvCCrmYrOHANRZcc8NcRrvTlIApdl7PwE9oGcsYvNeJPAVY1M+70b4PxXGKIf8AEuiQ6w==
+
agentkeepalive@^2.1.1:
version "2.2.0"
resolved "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-2.2.0.tgz"
@@ -2488,6 +2502,13 @@ aws4@^1.8.0:
resolved "https://registry.npm.taobao.org/aws4/download/aws4-1.10.1.tgz?cache=0&sync_timestamp=1597236947743&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Faws4%2Fdownload%2Faws4-1.10.1.tgz"
integrity sha1-4eguTz6Zniz9YbFhKA0WoRH4ZCg=
+axios@^0.21.1:
+ version "0.21.1"
+ resolved "https://registry.yarnpkg.com/axios/-/axios-0.21.1.tgz#22563481962f4d6bde9a76d516ef0e5d3c09b2b8"
+ integrity sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==
+ dependencies:
+ follow-redirects "^1.10.0"
+
babel-code-frame@^6.26.0:
version "6.26.0"
resolved "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz"
@@ -2702,6 +2723,14 @@ bindings@^1.5.0:
dependencies:
file-uri-to-path "1.0.0"
+bl@^1.0.0:
+ version "1.2.3"
+ resolved "https://registry.yarnpkg.com/bl/-/bl-1.2.3.tgz#1e8dd80142eac80d7158c9dccc047fb620e035e7"
+ integrity sha512-pvcNpa0UU69UT341rO6AYy4FVAIkUHuZXRIWbq+zHnsVcRzDDjIAhGuuYoi0d//cwIwtt4pkpKycWEfjdV+vww==
+ dependencies:
+ readable-stream "^2.3.5"
+ safe-buffer "^5.1.1"
+
bluebird-lst@^1.0.9:
version "1.0.9"
resolved "https://registry.npm.taobao.org/bluebird-lst/download/bluebird-lst-1.0.9.tgz"
@@ -2895,6 +2924,19 @@ browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4.8.5:
escalade "^3.1.0"
node-releases "^1.1.61"
+buffer-alloc-unsafe@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz#bd7dc26ae2972d0eda253be061dba992349c19f0"
+ integrity sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==
+
+buffer-alloc@^1.2.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/buffer-alloc/-/buffer-alloc-1.2.0.tgz#890dd90d923a873e08e10e5fd51a57e5b7cce0ec"
+ integrity sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==
+ dependencies:
+ buffer-alloc-unsafe "^1.1.0"
+ buffer-fill "^1.0.0"
+
buffer-crc32@~0.2.3:
version "0.2.13"
resolved "https://registry.npm.taobao.org/buffer-crc32/download/buffer-crc32-0.2.13.tgz"
@@ -2905,6 +2947,11 @@ buffer-equal@0.0.1:
resolved "https://registry.npmjs.org/buffer-equal/-/buffer-equal-0.0.1.tgz"
integrity sha1-kbx0sR6kBbyRa8aqkI+q+ltKrEs=
+buffer-fill@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/buffer-fill/-/buffer-fill-1.0.0.tgz#f8f78b76789888ef39f205cd637f68e702122b2c"
+ integrity sha1-+PeLdniYiO858gXNY39o5wISKyw=
+
buffer-from@^1.0.0:
version "1.1.1"
resolved "https://registry.npm.taobao.org/buffer-from/download/buffer-from-1.1.1.tgz"
@@ -3514,7 +3561,7 @@ commander@2.17.x:
resolved "https://registry.npm.taobao.org/commander/download/commander-2.17.1.tgz?cache=0&sync_timestamp=1598576116597&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcommander%2Fdownload%2Fcommander-2.17.1.tgz"
integrity sha1-vXerfebelCBc6sxy8XFtKfIKd78=
-commander@^2.18.0, commander@^2.20.0, commander@^2.9.0:
+commander@^2.18.0, commander@^2.2.0, commander@^2.20.0, commander@^2.9.0:
version "2.20.3"
resolved "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz"
integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==
@@ -3553,6 +3600,21 @@ compressible@~2.0.16:
dependencies:
mime-db ">= 1.43.0 < 2"
+compressing@^1.5.1:
+ version "1.5.1"
+ resolved "https://registry.yarnpkg.com/compressing/-/compressing-1.5.1.tgz#d031a3311b8c2ed6561a8431671d5a844540482d"
+ integrity sha512-1AGBR4Vh0/rpPKSXHoV9cerLo0CUlAhZ/xsJqU3a9+2cbSaFjWT3fk2MIGkCnbpk//DGWrcWw03rhKFQrA9RQw==
+ dependencies:
+ flushwritable "^1.0.0"
+ get-ready "^1.0.0"
+ iconv-lite "^0.5.0"
+ mkdirp "^0.5.1"
+ pump "^3.0.0"
+ streamifier "^0.1.1"
+ tar-stream "^1.5.2"
+ yauzl "^2.7.0"
+ yazl "^2.4.2"
+
compression@^1.7.4:
version "1.7.4"
resolved "https://registry.npm.taobao.org/compression/download/compression-1.7.4.tgz"
@@ -4542,6 +4604,13 @@ electron-publish@22.9.1:
lazy-val "^1.0.4"
mime "^2.4.6"
+electron-reload@^1.5.0:
+ version "1.5.0"
+ resolved "https://registry.yarnpkg.com/electron-reload/-/electron-reload-1.5.0.tgz#179ab1f6941fcf0ed261c37b16dc465e201348f5"
+ integrity sha512-L9X6LzsL3Bt2j0eJ4/MBrI9Vt902KvVUtBB7J4qrL1A9sXqC2fE0lpvUAlOThpJYh6zWO1l86U/YiEN9bDURHw==
+ dependencies:
+ chokidar "^3.0.2"
+
electron-store@^6.0.1:
version "6.0.1"
resolved "https://registry.npmjs.org/electron-store/-/electron-store-6.0.1.tgz"
@@ -5186,6 +5255,17 @@ extract-zip@^1.0.3, extract-zip@^1.6.5:
mkdirp "^0.5.4"
yauzl "^2.10.0"
+extract-zip@^2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/extract-zip/-/extract-zip-2.0.1.tgz#663dca56fe46df890d5f131ef4a06d22bb8ba13a"
+ integrity sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==
+ dependencies:
+ debug "^4.1.1"
+ get-stream "^5.1.0"
+ yauzl "^2.10.0"
+ optionalDependencies:
+ "@types/yauzl" "^2.9.1"
+
extsprintf@1.3.0:
version "1.3.0"
resolved "https://registry.npm.taobao.org/extsprintf/download/extsprintf-1.3.0.tgz"
@@ -5417,11 +5497,21 @@ flush-write-stream@^1.0.0:
inherits "^2.0.3"
readable-stream "^2.3.6"
+flushwritable@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/flushwritable/-/flushwritable-1.0.0.tgz#3e328d8fde412ad47e738e3be750b4d290043498"
+ integrity sha1-PjKNj95BKtR+c44751C00pAENJg=
+
follow-redirects@^1.0.0:
version "1.13.0"
resolved "https://registry.npm.taobao.org/follow-redirects/download/follow-redirects-1.13.0.tgz?cache=0&sync_timestamp=1597057976909&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffollow-redirects%2Fdownload%2Ffollow-redirects-1.13.0.tgz"
integrity sha1-tC6Nk6Kn7qXtiGM2dtZZe8jjhNs=
+follow-redirects@^1.10.0:
+ version "1.13.3"
+ resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.13.3.tgz#e5598ad50174c1bc4e872301e82ac2cd97f90267"
+ integrity sha512-DUgl6+HDzB0iEptNQEXLx/KhTmDb8tZUHSeLqpnjpknR70H0nC2t9N73BK6fN4hOvJ84pKlIQVQ4k5FFlBedKA==
+
for-in@^1.0.2:
version "1.0.2"
resolved "https://registry.npm.taobao.org/for-in/download/for-in-1.0.2.tgz"
@@ -5494,6 +5584,11 @@ from2@^2.1.0:
inherits "^2.0.1"
readable-stream "^2.0.0"
+fs-constants@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/fs-constants/-/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad"
+ integrity sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==
+
fs-extra@^1.0.0:
version "1.0.0"
resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-1.0.0.tgz"
@@ -5591,6 +5686,11 @@ get-caller-file@^2.0.1, get-caller-file@^2.0.5:
resolved "https://registry.npm.taobao.org/get-caller-file/download/get-caller-file-2.0.5.tgz"
integrity sha1-T5RBKoLbMvNuOwuXQfipf+sDH34=
+get-ready@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/get-ready/-/get-ready-1.0.0.tgz#f91817f1e9adecfea13a562adfc8de883ab34782"
+ integrity sha1-+RgX8emt7P6hOlYq38jeiDqzR4I=
+
get-stream@^3.0.0:
version "3.0.0"
resolved "https://registry.npm.taobao.org/get-stream/download/get-stream-3.0.0.tgz?cache=0&sync_timestamp=1597056502934&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fget-stream%2Fdownload%2Fget-stream-3.0.0.tgz"
@@ -6128,6 +6228,13 @@ iconv-lite@0.4.24, iconv-lite@^0.4.13, iconv-lite@^0.4.24:
dependencies:
safer-buffer ">= 2.1.2 < 3"
+iconv-lite@^0.5.0:
+ version "0.5.2"
+ resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.5.2.tgz#af6d628dccfb463b7364d97f715e4b74b8c8c2b8"
+ integrity sha512-kERHXvpSaB4aU3eANwidg79K8FlrN77m8G9V+0vOR3HYaRifrlwMEpT7ZBJqLSEIHnEgJTHcWK82wwLwwKwtag==
+ dependencies:
+ safer-buffer ">= 2.1.2 < 3"
+
iconv-lite@^0.6.2:
version "0.6.2"
resolved "https://registry.npm.taobao.org/iconv-lite/download/iconv-lite-0.6.2.tgz"
@@ -7082,6 +7189,11 @@ lie@~3.3.0:
dependencies:
immediate "~3.0.5"
+limiter@^1.0.5:
+ version "1.1.5"
+ resolved "https://registry.yarnpkg.com/limiter/-/limiter-1.1.5.tgz#8f92a25b3b16c6131293a0cc834b4a838a2aa7c2"
+ integrity sha512-FWWMIEOxz3GwUI4Ts/IvgVy6LPvoMPgjMdQ185nN6psJyBJ4yOpzqm695/h5umdLJg2vW3GR5iG11MAkR2AzJA==
+
lines-and-columns@^1.1.6:
version "1.1.6"
resolved "https://registry.npm.taobao.org/lines-and-columns/download/lines-and-columns-1.1.6.tgz"
@@ -9187,7 +9299,7 @@ read-pkg@^5.1.1:
parse-json "^5.0.0"
type-fest "^0.6.0"
-"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.6, readable-stream@~2.3.6:
+"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.0, readable-stream@^2.3.3, readable-stream@^2.3.5, readable-stream@^2.3.6, readable-stream@~2.3.6:
version "2.3.7"
resolved "https://registry.npm.taobao.org/readable-stream/download/readable-stream-2.3.7.tgz?cache=0&sync_timestamp=1589682741447&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Freadable-stream%2Fdownload%2Freadable-stream-2.3.7.tgz"
integrity sha1-Hsoc9xGu+BTAT2IlKjamL2yyO1c=
@@ -9356,6 +9468,13 @@ request-progress@^2.0.1:
dependencies:
throttleit "^1.0.0"
+request-progress@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/request-progress/-/request-progress-3.0.0.tgz#4ca754081c7fec63f505e4faa825aa06cd669dbe"
+ integrity sha1-TKdUCBx/7GP1BeT6qCWqBs1mnb4=
+ dependencies:
+ throttleit "^1.0.0"
+
request@^2.81.0, request@^2.88.2:
version "2.88.2"
resolved "https://registry.npm.taobao.org/request/download/request-2.88.2.tgz?cache=0&sync_timestamp=1589682741998&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frequest%2Fdownload%2Frequest-2.88.2.tgz"
@@ -10127,6 +10246,19 @@ stream-shift@^1.0.0:
resolved "https://registry.npm.taobao.org/stream-shift/download/stream-shift-1.0.1.tgz"
integrity sha1-1wiCgVWasneEJCebCHfaPDktWj0=
+stream-throttle@^0.1.3:
+ version "0.1.3"
+ resolved "https://registry.yarnpkg.com/stream-throttle/-/stream-throttle-0.1.3.tgz#add57c8d7cc73a81630d31cd55d3961cfafba9c3"
+ integrity sha1-rdV8jXzHOoFjDTHNVdOWHPr7qcM=
+ dependencies:
+ commander "^2.2.0"
+ limiter "^1.0.5"
+
+streamifier@^0.1.1:
+ version "0.1.1"
+ resolved "https://registry.yarnpkg.com/streamifier/-/streamifier-0.1.1.tgz#97e98d8fa4d105d62a2691d1dc07e820db8dfc4f"
+ integrity sha1-l+mNj6TRBdYqJpHR3AfoINuN/E8=
+
streamroller@^2.2.4:
version "2.2.4"
resolved "https://registry.npmjs.org/streamroller/-/streamroller-2.2.4.tgz"
@@ -10389,6 +10521,19 @@ tapable@^1.0.0, tapable@^1.1.3:
resolved "https://registry.npm.taobao.org/tapable/download/tapable-1.1.3.tgz?cache=0&sync_timestamp=1600381197118&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ftapable%2Fdownload%2Ftapable-1.1.3.tgz"
integrity sha1-ofzMBrWNth/XpF2i2kT186Pme6I=
+tar-stream@^1.5.2:
+ version "1.6.2"
+ resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-1.6.2.tgz#8ea55dab37972253d9a9af90fdcd559ae435c555"
+ integrity sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==
+ dependencies:
+ bl "^1.0.0"
+ buffer-alloc "^1.2.0"
+ end-of-stream "^1.0.0"
+ fs-constants "^1.0.0"
+ readable-stream "^2.3.0"
+ to-buffer "^1.1.1"
+ xtend "^4.0.0"
+
tar@^6.0.2:
version "6.0.5"
resolved "https://registry.npm.taobao.org/tar/download/tar-6.0.5.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ftar%2Fdownload%2Ftar-6.0.5.tgz"
@@ -10569,6 +10714,11 @@ to-arraybuffer@^1.0.0:
resolved "https://registry.npm.taobao.org/to-arraybuffer/download/to-arraybuffer-1.0.1.tgz"
integrity sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=
+to-buffer@^1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/to-buffer/-/to-buffer-1.1.1.tgz#493bd48f62d7c43fcded313a03dcadb2e1213a80"
+ integrity sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg==
+
to-fast-properties@^1.0.3:
version "1.0.3"
resolved "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz"
@@ -11643,7 +11793,7 @@ yargs@^6.5.0:
y18n "^3.2.1"
yargs-parser "^4.2.0"
-yauzl@^2.10.0:
+yauzl@^2.10.0, yauzl@^2.7.0:
version "2.10.0"
resolved "https://registry.npm.taobao.org/yauzl/download/yauzl-2.10.0.tgz"
integrity sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=
@@ -11651,6 +11801,13 @@ yauzl@^2.10.0:
buffer-crc32 "~0.2.3"
fd-slicer "~1.1.0"
+yazl@^2.4.2:
+ version "2.5.1"
+ resolved "https://registry.yarnpkg.com/yazl/-/yazl-2.5.1.tgz#a3d65d3dd659a5b0937850e8609f22fffa2b5c35"
+ integrity sha512-phENi2PLiHnHb6QBVot+dJnaAZ0xosj7p3fWl+znIjBDlnMI2PsZCJZ306BPTFOaHf5qdDEI8x5qFrSOBN5vrw==
+ dependencies:
+ buffer-crc32 "~0.2.3"
+
yorkie@^2.0.0:
version "2.0.0"
resolved "https://registry.npm.taobao.org/yorkie/download/yorkie-2.0.0.tgz"
diff --git a/packages/mitmproxy/package.json b/packages/mitmproxy/package.json
index c0609be..3212a32 100644
--- a/packages/mitmproxy/package.json
+++ b/packages/mitmproxy/package.json
@@ -1,6 +1,6 @@
{
"name": "@docmirror/mitmproxy",
- "version": "1.5.0",
+ "version": "1.5.1",
"description": "",
"main": "src/index.js",
"keywords": [