Merge remote-tracking branch 'upstream/master' into upgrade/part-2

# Conflicts:
#	README.md
#	packages/cli/src/index.js
#	packages/core/src/modules/server/index.js
#	packages/gui/src/bridge/update/front.js
#	packages/gui/src/view/App.vue
#	packages/gui/vue.config.js
#	packages/mitmproxy/src/lib/proxy/middleware/overwall.js
#	packages/mitmproxy/src/lib/proxy/tls/FakeServersCenter.js
pull/396/head
王良 2024-11-19 01:45:19 +08:00
commit 5aefa46ec2
7 changed files with 15 additions and 18 deletions

View File

@ -54,12 +54,12 @@
- 解决git push 偶尔失败需要输入账号密码的问题fatal: TaskCanceledException encountered / fatal: HttpRequestException encountered
- raw/blame加速
> 以上部分功能通过 `X.I.U`的油猴脚本实现, 以下是仓库和脚本下载链接,大家可以去支持一下。
> 以上部分功能通过 `X.I.U` 的油猴脚本实现, 以下是仓库和脚本下载链接,大家可以去支持一下。
>
> - [https://github.com/XIU2/UserScript](https://github.com/XIU2/UserScript)
> - [https://greasyfork.org/scripts/412245](https://greasyfork.org/scripts/412245)
>
> 由于此脚本在ds中是打包在本地的更新会不及时你可以直接通过浏览器安装油猴插件使用此脚本从而获得最新更新ds本地的可以通过 `加速服务->基本设置->启用脚本`进行关闭)。
> 由于此脚本在ds中是打包在本地的更新会不及时你可以直接通过浏览器安装油猴插件使用此脚本从而获得最新更新ds本地的可以通过 `加速服务->基本设置->启用脚本` 进行关闭)。
### 1.4、 Stack Overflow 加速
@ -281,7 +281,7 @@ networksetup -setwebproxy 'WiFi' 127.0.0.1 31181
- 1. 火狐浏览器->选项->隐私与安全->证书->查看证书
- 2. 证书颁发机构->导入
- 3. 选择证书文件`C:\Users(用户)\Administrator(你的账号)\.dev-sidecar\dev-sidecar.ca.crt`Mac或linux为 `~/.dev-sidecar`目录)
- 3. 选择证书文件 `C:\Users(用户)\Administrator(你的账号)\.dev-sidecar\dev-sidecar.ca.crt`Mac或linux为 `~/.dev-sidecar` 目录)
- 4. 勾选信任由此证书颁发机构来标识网站,确定即可
### 6.4、打开github显示连接超时

View File

@ -1,10 +1,10 @@
const fork = require('node:child_process').fork
const fs = require('node:fs')
const path = require('node:path')
const lodash = require('lodash')
const config = require('../../config')
const event = require('../../event')
const status = require('../../status')
const fork = require('node:child_process').fork
const fs = require('node:fs')
const path = require('node:path')
const jsonApi = require('@docmirror/mitmproxy/src/json')
const log = require('../../utils/util.log')

View File

@ -6,6 +6,7 @@ import { app, BrowserWindow, dialog, globalShortcut, ipcMain, Menu, nativeImage,
import minimist from 'minimist'
import { createProtocol } from 'vue-cli-plugin-electron-builder/lib'
import backend from './bridge/backend'
import jsonApi from '@docmirror/mitmproxy/src/json'
import log from './utils/util.log'
const isWindows = process.platform === 'win32'
@ -371,7 +372,7 @@ if (app.getLoginItemSettings().wasOpenedAsHidden) {
startHideWindow = false
}
}
log.info('start hide window:', startHideWindow, app.getLoginItemSettings())
log.info('start hide window:', startHideWindow, ', app.getLoginItemSettings() = ', jsonApi.stringify2(app.getLoginItemSettings()))
// 禁止双开
const isFirstInstance = app.requestSingleInstanceLock()

View File

@ -12,7 +12,7 @@ function install (app, api) {
}
app.$confirm({
title: '关闭策略',
content: h => (
content: (h) => (
<div>
<div style="margin-top:10px">
<a-radio-group vOn:change={onRadioChange} defaultValue={closeType}>

View File

@ -75,7 +75,6 @@ function install (app, api) {
function goManualUpdate (value) {
updateParams.newVersion = false
app.$confirm({
// title: '暂不支持自动升级',
title: '暂不提供自动升级',
cancelText: '取消',
okText: '打开链接',

View File

@ -113,13 +113,11 @@ async function downloadPacAsync (pacConfig) {
// 尝试解析Base64https://gitlab.com/gfwlist/gfwlist/raw/master/gfwlist.txt 下载下来的是Base64格式
let pacTxt = body
try {
if (!pacTxt.includes('!---------------------EOF')) {
if (!pacTxt.includes('!---------------------EOF')) {
try {
pacTxt = Buffer.from(pacTxt, 'base64').toString('utf8')
// log.debug('解析 base64 后的 pax:', pacTxt)
}
} catch {
if (!pacTxt.includes('!---------------------EOF')) {
} catch {
log.error(`远程 pac.txt 文件内容即不是base64格式也不是要求的格式url: ${remotePacFileUrl}body: ${body}`)
return
}

View File

@ -1,15 +1,14 @@
const http = require('node:http')
const https = require('node:https')
const tls = require('node:tls')
const forge = require('node-forge')
const CertAndKeyContainer = require('./CertAndKeyContainer')
const tlsUtils = require('./tlsUtils')
const pki = forge.pki
// const colors = require('colors')
const tls = require('node:tls')
const log = require('../../../utils/util.log')
const compatible = require('../compatible/compatible')
const pki = forge.pki
function arraysHaveSameElements (arr1, arr2) {
if (arr1.length !== arr2.length) {
return false