diff --git a/.github/workflows/test-and-upload.yml b/.github/workflows/test-and-upload.yml index 214d44c..5cc7195 100644 --- a/.github/workflows/test-and-upload.yml +++ b/.github/workflows/test-and-upload.yml @@ -5,6 +5,9 @@ on: branches: - master - release + pull_request: + branches: + - master jobs: test-and-upload: diff --git a/lerna.json b/lerna.json index 7188e81..d735ae4 100644 --- a/lerna.json +++ b/lerna.json @@ -14,5 +14,5 @@ "ignore": [] } }, - "version": "1.8.6" + "version": "1.8.8" } diff --git a/packages/core/package.json b/packages/core/package.json index dcf0665..a42a906 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@docmirror/dev-sidecar", - "version": "1.8.6", + "version": "1.8.8", "description": "给开发者的加速代理工具", "main": "src/index.js", "keywords": [ @@ -17,7 +17,7 @@ "test": "mocha" }, "dependencies": { - "@docmirror/mitmproxy": "^1.8.6", + "@docmirror/mitmproxy": "^1.8.8", "agentkeepalive": "^2.1.1", "babel-preset-es2020": "^1.0.2", "charset": "^1.0.0", diff --git a/packages/gui/extra/pac/pac.txt b/packages/gui/extra/pac/pac.txt index 8120fb8..128f8cc 100644 --- a/packages/gui/extra/pac/pac.txt +++ b/packages/gui/extra/pac/pac.txt @@ -1,9 +1,9 @@ [AutoProxy 0.2.9] -! Checksum: l4wfvwqYVXzlCBYaVcmRxQ +! Checksum: j9+lCGr2eTNyrwZCFg8ZzQ ! Expires: 6h ! Title: GFWList4LL ! GFWList with EVERYTHING included -! Last Modified: Mon, 02 Sep 2024 11:03:48 -0400 +! Last Modified: Mon, 07 Oct 2024 11:39:43 -0400 ! ! HomePage: https://github.com/gfwlist/gfwlist ! License: https://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt @@ -832,6 +832,7 @@ cdninstagram.com ||facebook.com !--/^https?:\/\/[^\/]+facebook\.com/ @@||v6.facebook.com +||facebook.de ||facebook.design ||connect.facebook.net ||facebook.hu @@ -850,6 +851,7 @@ cdninstagram.com ||instagram.com ||m.me ||messenger.com +||meta.com ||oculus.com ||oculuscdn.com ||rocksdb.org @@ -1505,6 +1507,7 @@ blogspot.com ||on2.com ||opensource.google ||panoramio.com +||passwords.google ||picasaweb.com ||pki.goog ||plus.codes @@ -7359,6 +7362,7 @@ torrentprivacy.com |http://torrentproject.se ||torrenty.org ||torrentz.eu +||tortoisesvn.net ||torvpn.com ||totalvpn.com .toutiaoabc.com diff --git a/packages/gui/extra/proxy/domestic-domain-allowlist.txt b/packages/gui/extra/proxy/domestic-domain-allowlist.txt index 2669990..b745ec9 100644 --- a/packages/gui/extra/proxy/domestic-domain-allowlist.txt +++ b/packages/gui/extra/proxy/domestic-domain-allowlist.txt @@ -1,6 +1,6 @@ [SwitchyOmega Conditions] ; Require: SwitchyOmega >= 2.3.2 -; Update Date: 2024/09/26 +; Update Date: 2024/10/14 ; Author: Pluwen ; Usage: https://github.com/FelisCatus/SwitchyOmega/wiki/RuleListUsage @@ -19,6 +19,7 @@ *.0daydown.com *.0o0.ooo *.10010.com +*.10086cloud.com *.114la.com *.114yygh.com *.115.com @@ -54,6 +55,7 @@ *.360buyimg.com *.360doc.com *.360in.com +*.360safe.com *.36kr.com *.39.net *.3dmgame.com @@ -140,6 +142,7 @@ *.ant.design *.antfin-inc.com *.antfin.com +*.antpcdn.com *.anw.red *.anyway.fm *.anzhi.com @@ -203,6 +206,7 @@ *.biliapi.net *.bilibili.com *.bilibili.tv +*.bilicomic.com *.biligame.com *.biligame.net *.bilivideo.com @@ -404,6 +408,7 @@ *.frdic.com *.freebuf.com *.freeziti.com +*.fromgeek.com *.futu5.com *.futunn.com *.fydeos.com @@ -551,6 +556,7 @@ *.jdkindle.com *.jdpay.com *.jetbrains.com +*.jfdaily.com *.jfrft.com *.jhdec.com *.jianguoyun.com @@ -637,6 +643,7 @@ *.lecloud.com *.leetcode-cn.com *.lemicp.com +*.lenovo.net *.lenovomobile.com *.letv.com *.letvimg.com @@ -841,6 +848,7 @@ *.qhimg.com *.qhmsg.com *.qhres.com +*.qianxin.com *.qichacha.com *.qidian.com *.qihucdn.com @@ -899,6 +907,7 @@ *.sc115.com *.sciencedirect.com *.sciencemag.org +*.scofd.com *.scomper.me *.sdbeta.com *.sdo.com @@ -958,7 +967,6 @@ *.steamcn.com *.steamcontent.com *.steamdb.info -*.steamstatic.com *.subhd.tv *.sui.com *.suning.com diff --git a/packages/gui/package.json b/packages/gui/package.json index b884eb5..0d07cb9 100644 --- a/packages/gui/package.json +++ b/packages/gui/package.json @@ -1,6 +1,6 @@ { "name": "@docmirror/dev-sidecar-gui", - "version": "1.8.6", + "version": "1.8.8", "private": false, "license": "MPL-2.0", "main": "index.js", @@ -21,8 +21,8 @@ "name": "Greper" }, "dependencies": { - "@docmirror/dev-sidecar": "^1.8.6", - "@docmirror/mitmproxy": "^1.8.6", + "@docmirror/dev-sidecar": "^1.8.8", + "@docmirror/mitmproxy": "^1.8.8", "adm-zip": "^0.5.5", "ant-design-vue": "^1.6.5", "compressing": "^1.5.1", diff --git a/packages/mitmproxy/package.json b/packages/mitmproxy/package.json index 6c2a315..1512675 100644 --- a/packages/mitmproxy/package.json +++ b/packages/mitmproxy/package.json @@ -1,6 +1,6 @@ { "name": "@docmirror/mitmproxy", - "version": "1.8.6", + "version": "1.8.8", "description": "", "main": "src/index.js", "keywords": [ diff --git a/packages/mitmproxy/src/lib/proxy/middleware/overwall.js b/packages/mitmproxy/src/lib/proxy/middleware/overwall.js index 7b15a34..72f0aa6 100644 --- a/packages/mitmproxy/src/lib/proxy/middleware/overwall.js +++ b/packages/mitmproxy/src/lib/proxy/middleware/overwall.js @@ -15,7 +15,7 @@ function matched (hostname, overWallTargetMap) { return 'overwall config' } if (pacClient == null) { - return false + return null } const ret = pacClient.FindProxyForURL('https://' + hostname, hostname) if (ret && ret.indexOf('PROXY ') === 0) { @@ -23,7 +23,7 @@ function matched (hostname, overWallTargetMap) { return 'overwall pac' } else { log.debug(`matchHostname: matched overwall: Not-Matched '${hostname}' -> '${ret}' in pac.txt`) - return false + return null } } @@ -148,7 +148,14 @@ function createOverwallMiddleware (overWallConfig) { return { sslConnectInterceptor: (req, cltSocket, head) => { const hostname = req.url.split(':')[0] - return matched(hostname, overWallTargetMap) + const ret = matched(hostname, overWallTargetMap) + if (ret == null) { + return null // 返回 null,由下一个拦截器校验 + } + if (ret === false) { + return false // 不拦截,预留这个判断,避免以后修改 matched 方法的代码出BUG + } + return true // 拦截 }, requestIntercept (context, req, res, ssl, next) { const { rOptions, log, RequestCounter } = context @@ -157,7 +164,7 @@ function createOverwallMiddleware (overWallConfig) { } const hostname = rOptions.hostname const matchedResult = matched(hostname, overWallTargetMap) - if (!matchedResult) { + if (matchedResult == null || matchedResult === false) { return } const cacheKey = '__over_wall_proxy__'