Releases: Kaciras/pac-maker
Releases · Kaciras/pac-maker
v3.2.0
v3.1.0
Introduce HostBlockVerifier for test if any hostname is blocked by your ISP.
v3.0.0
Breaking changes
-
Default config changed:
direct
property is renamed tofallback
.sources
now is empty.path
changed toproxy.pac
.
-
PAC helper function
dnsResolve
now usedns.lookup
instead ofdns.resolve
. -
Prefer synchronized fs functions.
New features
- Add support for pattern
*.example.com
toHostnameFileSource
, that matches subdomains ofexample.com
but not itself. - use fetch-socks for socks proxy.
- Add
--host=<hostname passed to FindProxyForURL>
parameter for thebench
command. - Add support for inspect Safari history for
analyze
command. - Rules which are included by others will be removed in
buildPAC
.
Fixes
- fix inspecting of Edge history when the default profile is deleted.
v2.2.0
New Feature
- Add
strict
parameter toparseProxies
,false
to ignore invalid block, just like browser behavior. - Allow specific a timeout for
loadPAC
. - Add support for pass TLS options to HTTP tunnel proxy.
Fixes
- Allow
FindProxyForURL
return null. - Fix missing error handing on first dispatching.
- Fix
serve
command does not watch source changes. - Exclude ts source files in npm package.
v2.1.0
v2.0.0
New Features
add support for proxy Node 18+ builtin fetch
with PAC, example:
import { readFileSync } from "fs";
import { PACDispatcher } from "pac-maker";
// Only needed if your Node < 18.1.0
// import { fetch } from "undici";
const pac = readFileSync("proxy.pac", "utf8");
const dispatcher = new PACDispatcher(pac);
const response = await fetch("https://example.com", { dispatcher });
Also add dispatcher
parameter to builtin hostname sources which need fetch data from network.
import { readFileSync } from "fs";
import { gfwlist, PACDispatcher } from "pac-maker";
const pac = readFileSync("proxy.pac", "utf8");
const dispatcher = new PACDispatcher(pac);
const source = gfwlist({ dispatcher });