sing-box-python 1.13.19__tar.gz → 1.13.21__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- sing_box_python-1.13.21/.go-version +1 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/MANIFEST.in +1 -0
- {sing_box_python-1.13.19/sing_box_python.egg-info → sing_box_python-1.13.21}/PKG-INFO +15 -9
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/README.md +14 -8
- sing_box_python-1.13.21/UPSTREAM_COMMIT +1 -0
- sing_box_python-1.13.21/UPSTREAM_VERSION +1 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/pyproject.toml +17 -6
- {sing_box_python-1.13.19 → sing_box_python-1.13.21/sing_box_python.egg-info}/PKG-INFO +15 -9
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/sing_box_python.egg-info/SOURCES.txt +2 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/.github/workflows/build.yml +24 -25
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/adapter/experimental.go +1 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/adapter/inbound.go +2 -2
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/sing-box/cmd.go +4 -1
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/changelog.md +8 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/rule.md +2 -2
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/rule.zh.md +1 -1
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/clashapi/proxies.go +34 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/go.mod +4 -5
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/go.sum +8 -10
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/log/export.go +6 -2
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/log/observable.go +69 -29
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/direct/outbound.go +4 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/group/urltest.go +28 -6
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/ssh/outbound.go +18 -6
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/match_state.go +14 -4
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_abstract.go +49 -26
- sing_box_python-1.13.21/singbox-go/route/rule/rule_dns_address_filter_test.go +392 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_item_rule_set.go +3 -1
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_set_local.go +3 -1
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_set_remote.go +3 -1
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_set_semantics_test.go +18 -6
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/v2raywebsocket/client.go +12 -13
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/v2raywebsocket/conn.go +20 -22
- sing_box_python-1.13.19/UPSTREAM_COMMIT +0 -1
- sing_box_python-1.13.19/UPSTREAM_VERSION +0 -1
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/CMakeLists.txt +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/LICENSE +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/setup.cfg +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/setup.py +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/sing_box_python.egg-info/dependency_links.txt +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/sing_box_python.egg-info/not-zip-safe +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/sing_box_python.egg-info/top_level.txt +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox/__init__.py +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox/_native.pyi +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox/py.typed +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/.fpm_openwrt +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/.fpm_pacman +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/.fpm_systemd +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/.github/CRONET_GO_VERSION +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/.github/FUNDING.yml +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/.github/ISSUE_TEMPLATE/bug_report_zh.yml +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/.github/build_alpine_apk.sh +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/.github/build_openwrt_apk.sh +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/.github/deb2ipk.sh +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/.github/detect_track.sh +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/.github/renovate.json +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/.github/setup_go_for_macos1013.sh +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/.github/setup_go_for_windows7.sh +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/.github/update_clients.sh +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/.github/update_cronet.sh +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/.github/update_cronet_dev.sh +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/.github/update_dependencies.sh +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/.github/workflows/docker.yml +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/.github/workflows/lint.yml +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/.github/workflows/linux.yml +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/.github/workflows/stale.yml +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/.gitignore +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/.gitmodules +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/.golangci.yml +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/Dockerfile +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/Dockerfile.binary +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/LICENSE +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/Makefile +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/README.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/adapter/certificate.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/adapter/connections.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/adapter/dns.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/adapter/endpoint/adapter.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/adapter/endpoint/manager.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/adapter/endpoint/registry.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/adapter/endpoint.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/adapter/fakeip.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/adapter/fakeip_metadata.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/adapter/handler.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/adapter/inbound/adapter.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/adapter/inbound/manager.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/adapter/inbound/registry.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/adapter/lifecycle.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/adapter/lifecycle_legacy.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/adapter/network.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/adapter/outbound/adapter.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/adapter/outbound/manager.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/adapter/outbound/registry.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/adapter/outbound.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/adapter/platform.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/adapter/prestart.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/adapter/router.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/adapter/rule.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/adapter/service/adapter.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/adapter/service/manager.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/adapter/service/registry.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/adapter/service.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/adapter/ssm.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/adapter/time.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/adapter/upstream.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/adapter/upstream_legacy.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/adapter/v2ray.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/binding/cronet_purego.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/binding/main.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/box.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/internal/app_store_connect/main.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/internal/build/main.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/internal/build_libbox/main.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/internal/build_shared/sdk.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/internal/build_shared/tag.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/internal/format_docs/main.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/internal/merge_aar/main.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/internal/merge_apple_xcframework/main.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/internal/protogen/main.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/internal/read_tag/main.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/internal/tun_bench/main.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/internal/update_android_version/main.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/internal/update_apple_version/main.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/internal/update_certificates/main.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/sing-box/cmd_check.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/sing-box/cmd_format.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/sing-box/cmd_generate.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/sing-box/cmd_generate_ech.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/sing-box/cmd_generate_tls.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/sing-box/cmd_generate_vapid.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/sing-box/cmd_generate_wireguard.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/sing-box/cmd_geoip.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/sing-box/cmd_geoip_export.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/sing-box/cmd_geoip_list.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/sing-box/cmd_geoip_lookup.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/sing-box/cmd_geosite.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/sing-box/cmd_geosite_export.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/sing-box/cmd_geosite_list.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/sing-box/cmd_geosite_lookup.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/sing-box/cmd_geosite_matcher.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/sing-box/cmd_merge.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/sing-box/cmd_rule_set.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/sing-box/cmd_rule_set_compile.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/sing-box/cmd_rule_set_convert.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/sing-box/cmd_rule_set_decompile.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/sing-box/cmd_rule_set_format.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/sing-box/cmd_rule_set_match.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/sing-box/cmd_rule_set_merge.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/sing-box/cmd_rule_set_upgrade.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/sing-box/cmd_run.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/sing-box/cmd_tools.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/sing-box/cmd_tools_connect.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/sing-box/cmd_tools_fetch.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/sing-box/cmd_tools_fetch_http3.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/sing-box/cmd_tools_fetch_http3_stub.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/sing-box/cmd_tools_synctime.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/sing-box/cmd_version.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/sing-box/generate_completions.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/cmd/sing-box/main.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/badtls/raw_conn.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/badtls/raw_half_conn.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/badtls/read_wait.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/badtls/read_wait_stub.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/badtls/registry.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/badtls/registry_utls.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/badversion/version.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/badversion/version_json.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/badversion/version_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/certificate/chrome.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/certificate/mozilla.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/certificate/store.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/compatible/map.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/convertor/adguard/convertor.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/convertor/adguard/convertor_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/dialer/default.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/dialer/default_parallel_interface.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/dialer/default_parallel_network.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/dialer/detour.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/dialer/dialer.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/dialer/resolve.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/dialer/router.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/dialer/tfo.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/dialer/wireguard.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/geoip/reader.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/geosite/compat_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/geosite/geosite_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/geosite/reader.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/geosite/rule.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/geosite/writer.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/interrupt/conn.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/interrupt/context.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/interrupt/group.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/ja3/LICENSE +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/ja3/README.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/ja3/error.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/ja3/ja3.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/ja3/parser.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/ktls/ktls.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/ktls/ktls_alert.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/ktls/ktls_cipher_suites_linux.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/ktls/ktls_close.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/ktls/ktls_const.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/ktls/ktls_handshake_messages.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/ktls/ktls_key_update.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/ktls/ktls_linux.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/ktls/ktls_prf.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/ktls/ktls_read.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/ktls/ktls_read_wait.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/ktls/ktls_stub_nolinkname.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/ktls/ktls_stub_nonlinux.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/ktls/ktls_stub_oldgo.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/ktls/ktls_write.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/listener/listener.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/listener/listener_tcp.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/listener/listener_udp.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/mux/client.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/mux/router.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/pipelistener/listener.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/process/searcher.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/process/searcher_android.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/process/searcher_darwin.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/process/searcher_darwin_shared.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/process/searcher_linux.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/process/searcher_linux_shared.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/process/searcher_linux_shared_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/process/searcher_stub.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/process/searcher_windows.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/redir/redir_darwin.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/redir/redir_linux.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/redir/redir_other.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/redir/tproxy_linux.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/redir/tproxy_other.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/settings/proxy_android.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/settings/proxy_darwin.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/settings/proxy_linux.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/settings/proxy_stub.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/settings/proxy_windows.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/settings/system_proxy.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/settings/wifi.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/settings/wifi_linux.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/settings/wifi_linux_connman.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/settings/wifi_linux_iwd.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/settings/wifi_linux_nm.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/settings/wifi_linux_wpa.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/settings/wifi_stub.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/settings/wifi_windows.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/sniff/bittorrent.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/sniff/bittorrent_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/sniff/dns.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/sniff/dns_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/sniff/dtls.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/sniff/dtls_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/sniff/http.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/sniff/http_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/sniff/internal/qtls/qtls.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/sniff/ntp.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/sniff/ntp_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/sniff/quic.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/sniff/quic_blacklist.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/sniff/quic_capture_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/sniff/quic_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/sniff/rdp.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/sniff/rdp_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/sniff/sniff.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/sniff/ssh.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/sniff/ssh_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/sniff/stun.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/sniff/stun_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/sniff/tls.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/srs/binary.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/srs/compat_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/srs/ip_cidr.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/srs/ip_set.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/srs/malformed_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/taskmonitor/monitor.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/tls/acme.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/tls/acme_contstant.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/tls/acme_stub.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/tls/client.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/tls/common.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/tls/config.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/tls/ech.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/tls/ech_shared.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/tls/ech_tag_stub.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/tls/ktls.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/tls/mkcert.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/tls/reality_client.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/tls/reality_server.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/tls/reality_stub.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/tls/server.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/tls/std_client.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/tls/std_server.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/tls/time_wrapper.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/tls/utls_client.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/tls/utls_stub.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/tlsfragment/conn.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/tlsfragment/conn_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/tlsfragment/index.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/tlsfragment/index_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/tlsfragment/wait_darwin.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/tlsfragment/wait_linux.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/tlsfragment/wait_stub.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/tlsfragment/wait_windows.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/uot/router.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/common/urltest/urltest.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/certificate.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/cgo.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/cgo_disabled.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/dhcp.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/dns.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/err.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/goos/gengoos.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/goos/goos.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/goos/zgoos_aix.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/goos/zgoos_android.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/goos/zgoos_darwin.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/goos/zgoos_dragonfly.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/goos/zgoos_freebsd.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/goos/zgoos_hurd.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/goos/zgoos_illumos.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/goos/zgoos_ios.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/goos/zgoos_js.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/goos/zgoos_linux.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/goos/zgoos_netbsd.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/goos/zgoos_openbsd.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/goos/zgoos_plan9.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/goos/zgoos_solaris.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/goos/zgoos_windows.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/goos/zgoos_zos.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/hysteria2.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/network.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/os.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/path.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/path_unix.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/protocol.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/proxy.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/quic.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/quic_stub.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/rule.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/speed.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/time.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/timeout.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/v2ray.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/constant/version.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/daemon/deprecated.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/daemon/instance.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/daemon/platform.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/daemon/started_service.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/daemon/started_service.pb.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/daemon/started_service.proto +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/daemon/started_service_grpc.pb.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/debug.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/debug_http.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/debug_stub.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/debug_unix.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/client.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/client_log.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/client_truncate.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/extension_edns0_subnet.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/rcode.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/router.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/transport/conn_pool.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/transport/dhcp/dhcp.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/transport/dhcp/dhcp_shared.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/transport/fakeip/fakeip.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/transport/fakeip/memory.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/transport/fakeip/store.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/transport/hosts/hosts.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/transport/hosts/hosts_file.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/transport/hosts/hosts_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/transport/hosts/hosts_unix.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/transport/hosts/hosts_windows.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/transport/hosts/testdata/hosts +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/transport/https.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/transport/https_transport.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/transport/local/local.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/transport/local/local_darwin.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/transport/local/local_darwin_dhcp.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/transport/local/local_darwin_nodhcp.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/transport/local/local_resolved.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/transport/local/local_resolved_linux.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/transport/local/local_resolved_stub.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/transport/local/local_shared.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/transport/local/resolv.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/transport/local/resolv_default.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/transport/local/resolv_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/transport/local/resolv_unix.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/transport/local/resolv_windows.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/transport/quic/http3.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/transport/quic/quic.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/transport/tcp.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/transport/tls.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/transport/udp.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/transport_adapter.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/transport_dialer.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/transport_manager.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/dns/transport_registry.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/CNAME +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/assets/icon.svg +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/clients/android/features.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/clients/android/index.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/clients/apple/features.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/clients/apple/index.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/clients/general.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/clients/index.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/clients/index.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/clients/privacy.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/certificate/index.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/certificate/index.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/fakeip.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/fakeip.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/index.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/index.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/rule_action.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/rule_action.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/server/dhcp.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/server/dhcp.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/server/fakeip.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/server/fakeip.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/server/hosts.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/server/hosts.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/server/http3.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/server/http3.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/server/https.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/server/https.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/server/index.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/server/index.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/server/legacy.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/server/legacy.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/server/local.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/server/local.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/server/quic.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/server/quic.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/server/resolved.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/server/resolved.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/server/tailscale.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/server/tailscale.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/server/tcp.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/server/tcp.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/server/tls.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/server/tls.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/server/udp.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/server/udp.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/endpoint/index.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/endpoint/index.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/endpoint/tailscale.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/endpoint/tailscale.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/endpoint/wireguard.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/endpoint/wireguard.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/experimental/cache-file.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/experimental/cache-file.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/experimental/clash-api.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/experimental/clash-api.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/experimental/index.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/experimental/index.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/experimental/v2ray-api.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/experimental/v2ray-api.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/inbound/anytls.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/inbound/anytls.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/inbound/direct.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/inbound/direct.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/inbound/http.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/inbound/http.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/inbound/hysteria.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/inbound/hysteria.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/inbound/hysteria2.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/inbound/hysteria2.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/inbound/index.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/inbound/index.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/inbound/mixed.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/inbound/mixed.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/inbound/naive.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/inbound/naive.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/inbound/redirect.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/inbound/redirect.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/inbound/shadowsocks.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/inbound/shadowsocks.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/inbound/shadowtls.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/inbound/shadowtls.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/inbound/socks.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/inbound/socks.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/inbound/tproxy.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/inbound/tproxy.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/inbound/trojan.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/inbound/trojan.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/inbound/tuic.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/inbound/tuic.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/inbound/tun.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/inbound/tun.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/inbound/vless.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/inbound/vless.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/inbound/vmess.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/inbound/vmess.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/index.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/index.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/log/index.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/log/index.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/ntp/index.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/ntp/index.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/anytls.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/anytls.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/block.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/block.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/direct.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/direct.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/dns.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/dns.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/http.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/http.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/hysteria.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/hysteria.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/hysteria2.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/hysteria2.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/index.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/index.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/naive.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/naive.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/selector.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/selector.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/shadowsocks.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/shadowsocks.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/shadowtls.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/shadowtls.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/socks.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/socks.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/ssh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/ssh.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/tor.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/tor.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/trojan.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/trojan.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/tuic.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/tuic.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/urltest.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/urltest.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/vless.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/vless.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/vmess.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/vmess.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/wireguard.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/outbound/wireguard.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/route/geoip.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/route/geoip.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/route/geosite.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/route/geosite.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/route/index.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/route/index.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/route/rule.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/route/rule.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/route/rule_action.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/route/rule_action.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/route/sniff.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/route/sniff.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/rule-set/adguard.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/rule-set/adguard.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/rule-set/headless-rule.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/rule-set/headless-rule.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/rule-set/index.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/rule-set/index.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/rule-set/source-format.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/rule-set/source-format.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/service/ccm.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/service/ccm.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/service/derp.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/service/derp.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/service/index.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/service/index.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/service/ocm.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/service/ocm.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/service/resolved.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/service/resolved.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/service/ssm-api.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/service/ssm-api.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/shared/dial.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/shared/dial.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/shared/dns01_challenge.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/shared/dns01_challenge.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/shared/listen.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/shared/listen.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/shared/multiplex.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/shared/multiplex.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/shared/pre-match.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/shared/pre-match.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/shared/tcp-brutal.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/shared/tcp-brutal.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/shared/tls.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/shared/tls.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/shared/udp-over-tcp.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/shared/udp-over-tcp.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/shared/v2ray-transport.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/shared/v2ray-transport.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/shared/wifi-state.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/shared/wifi-state.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/deprecated.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/deprecated.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/index.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/index.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/installation/build-from-source.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/installation/build-from-source.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/installation/docker.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/installation/docker.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/installation/package-manager.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/installation/package-manager.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/installation/tools/arch-install.sh +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/installation/tools/deb-install.sh +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/installation/tools/install.sh +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/installation/tools/rpm-install.sh +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/installation/tools/sing-box.repo +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/manual/misc/anytls-client-metadata.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/manual/misc/anytls-client-metadata.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/manual/misc/tunnelvision.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/manual/proxy/client.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/manual/proxy/server.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/manual/proxy-protocol/hysteria2.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/manual/proxy-protocol/shadowsocks.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/manual/proxy-protocol/trojan.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/migration.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/migration.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/sponsors.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/support.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/support.zh.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/cachefile/cache.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/cachefile/fakeip.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/cachefile/rdrc.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/clashapi/api_meta.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/clashapi/api_meta_group.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/clashapi/api_meta_upgrade.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/clashapi/cache.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/clashapi/common.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/clashapi/configs.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/clashapi/connections.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/clashapi/ctxkeys.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/clashapi/dns.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/clashapi/errors.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/clashapi/profile.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/clashapi/provider.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/clashapi/ruleprovider.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/clashapi/rules.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/clashapi/script.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/clashapi/server.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/clashapi/server_fs.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/clashapi/server_resources.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/clashapi/trafficontrol/manager.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/clashapi/trafficontrol/tracker.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/clashapi.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/deprecated/constants.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/deprecated/manager.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/deprecated/stderr.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/build_info.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/command.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/command_client.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/command_server.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/command_types.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/config.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/connection_owner_darwin.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/deprecated.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/dns.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/fdroid.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/fdroid_mirrors.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/ffi.json +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/http.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/internal/procfs/procfs.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/iterator.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/link_flags_stub.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/link_flags_unix.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/log.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/memory.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/monitor.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/panic.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/pidfd_android.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/platform.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/pprof.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/profile_import.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/remote_profile.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/semver.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/semver_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/service.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/service_other.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/service_windows.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/setup.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/tun.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/tun_darwin.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/tun_name_darwin.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/tun_name_linux.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/libbox/tun_name_other.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/locale/locale.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/locale/locale_zh_CN.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/v2rayapi/server.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/v2rayapi/stats.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/v2rayapi/stats.pb.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/v2rayapi/stats.proto +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/v2rayapi/stats_grpc.pb.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/v2rayapi.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/include/ccm.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/include/ccm_stub.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/include/ccm_stub_darwin.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/include/clashapi.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/include/clashapi_stub.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/include/dhcp.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/include/dhcp_stub.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/include/naive_outbound.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/include/naive_outbound_stub.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/include/ocm.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/include/ocm_stub.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/include/oom_killer.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/include/quic.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/include/quic_stub.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/include/registry.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/include/tailscale.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/include/tailscale_stub.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/include/tz_android.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/include/tz_ios.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/include/v2rayapi.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/include/v2rayapi_stub.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/include/wireguard.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/include/wireguard_stub.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/log/factory.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/log/format.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/log/id.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/log/level.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/log/log.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/log/nop.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/log/override.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/log/platform.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/mkdocs.yml +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/anytls.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/ccm.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/certificate.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/debug.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/direct.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/dns.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/dns_record.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/endpoint.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/experimental.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/group.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/hysteria.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/hysteria2.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/inbound.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/multiplex.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/naive.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/ntp.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/ocm.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/oom_killer.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/options.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/outbound.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/platform.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/redir.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/resolved.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/route.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/rule.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/rule_action.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/rule_dns.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/rule_set.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/service.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/shadowsocks.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/shadowsocksr.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/shadowtls.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/simple.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/ssh.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/ssmapi.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/tailscale.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/tls.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/tls_acme.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/tor.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/trojan.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/tuic.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/tun.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/tun_platform.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/types.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/udp_over_tcp.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/v2ray.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/v2ray_transport.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/vless.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/vmess.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/option/wireguard.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/anytls/client_metadata.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/anytls/inbound.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/anytls/outbound.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/block/outbound.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/direct/inbound.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/dns/handle.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/dns/outbound.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/group/selector.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/http/inbound.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/http/outbound.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/hysteria/inbound.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/hysteria/outbound.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/hysteria2/inbound.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/hysteria2/outbound.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/mixed/inbound.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/naive/inbound.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/naive/inbound_conn.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/naive/outbound.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/naive/quic/inbound_init.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/redirect/redirect.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/redirect/tproxy.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/shadowsocks/inbound.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/shadowsocks/inbound_multi.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/shadowsocks/inbound_relay.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/shadowsocks/outbound.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/shadowtls/inbound.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/shadowtls/outbound.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/socks/inbound.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/socks/outbound.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/tailscale/dns_transport.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/tailscale/endpoint.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/tailscale/tun_device_unix.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/tailscale/tun_device_windows.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/tor/outbound.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/tor/proxy.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/trojan/inbound.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/trojan/outbound.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/tuic/inbound.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/tuic/outbound.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/tun/hook.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/tun/inbound.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/vless/inbound.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/vless/outbound.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/vmess/inbound.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/vmess/outbound.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/protocol/wireguard/endpoint.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/release/DEFAULT_BUILD_TAGS +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/release/DEFAULT_BUILD_TAGS_OTHERS +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/release/DEFAULT_BUILD_TAGS_WINDOWS +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/release/LDFLAGS +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/release/completions/sing-box.bash +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/release/completions/sing-box.fish +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/release/completions/sing-box.zsh +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/release/config/config.json +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/release/config/openwrt.conf +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/release/config/openwrt.init +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/release/config/openwrt.keep +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/release/config/openwrt.prerm +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/release/config/sing-box-split-dns.xml +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/release/config/sing-box.confd +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/release/config/sing-box.initd +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/release/config/sing-box.postinst +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/release/config/sing-box.rules +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/release/config/sing-box.service +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/release/config/sing-box.sysusers +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/release/config/sing-box@.service +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/release/local/common.sh +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/release/local/debug.sh +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/release/local/enable.sh +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/release/local/install.sh +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/release/local/install_go.sh +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/release/local/reinstall.sh +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/release/local/sing-box.service +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/release/local/uninstall.sh +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/release/local/update.sh +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/conn.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/dns.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/network.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/platform_searcher.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/process_cache.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/route.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/router.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_abstract_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_action.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_default.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_default_interface_address.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_dns.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_headless.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_interface_address.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_item_adguard.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_item_auth_user.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_item_cidr.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_item_clash_mode.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_item_client.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_item_domain.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_item_domain_keyword.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_item_domain_regex.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_item_inbound.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_item_ip_accept_any.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_item_ip_is_private.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_item_ipversion.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_item_network.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_item_network_is_constrained.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_item_network_is_expensive.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_item_network_type.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_item_outbound.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_item_package_name.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_item_port.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_item_port_range.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_item_preferred_by.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_item_process_name.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_item_process_path.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_item_process_path_regex.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_item_protocol.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_item_query_type.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_item_user.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_item_user_id.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_item_wifi_bssid.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_item_wifi_ssid.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_network_interface_address.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule/rule_set.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/route/rule_conds.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/service/ccm/credential.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/service/ccm/credential_darwin.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/service/ccm/credential_other.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/service/ccm/service.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/service/ccm/service_usage.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/service/ccm/service_user.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/service/derp/service.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/service/ocm/credential.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/service/ocm/credential_darwin.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/service/ocm/credential_other.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/service/ocm/service.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/service/ocm/service_usage.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/service/ocm/service_user.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/service/ocm/service_websocket.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/service/oomkiller/config.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/service/oomkiller/service.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/service/oomkiller/service_stub.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/service/oomkiller/service_timer.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/service/resolved/resolve1.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/service/resolved/service.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/service/resolved/stub.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/service/resolved/transport.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/service/ssmapi/api.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/service/ssmapi/cache.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/service/ssmapi/server.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/service/ssmapi/traffic.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/service/ssmapi/user.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/box_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/brutal_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/clash_darwin_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/clash_other_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/clash_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/config/hysteria-client.json +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/config/hysteria-server.json +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/config/hysteria2-client.yml +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/config/hysteria2-server.yml +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/config/naive-nginx.conf +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/config/naive-quic.json +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/config/naive.json +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/config/nginx.conf +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/config/shadowsocksr.json +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/config/trojan.json +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/config/tuic-client.json +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/config/tuic-server.json +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/config/vless-server.json +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/config/vless-tls-client.json +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/config/vless-tls-server.json +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/config/vmess-client.json +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/config/vmess-grpc-client.json +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/config/vmess-grpc-server.json +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/config/vmess-mux-client.json +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/config/vmess-server.json +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/config/vmess-ws-client.json +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/config/vmess-ws-server.json +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/config/wireguard.conf +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/direct_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/docker_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/domain_inbound_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/ech_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/go.mod +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/go.sum +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/http_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/hysteria2_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/hysteria_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/inbound_detour_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/ktls_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/mkcert.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/mux_cool_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/mux_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/naive_self_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/naive_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/reality_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/shadowsocks_legacy_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/shadowsocks_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/shadowtls_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/socks_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/ss_plugin_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/tfo_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/tls_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/trojan_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/tuic_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/v2ray_api_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/v2ray_grpc_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/v2ray_httpupgrade_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/v2ray_transport_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/v2ray_ws_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/vmess_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/test/wrapper_test.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/simple-obfs/README.md +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/simple-obfs/http.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/simple-obfs/tls.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/sip003/args.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/sip003/obfs.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/sip003/plugin.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/sip003/v2ray.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/trojan/mux.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/trojan/protocol.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/trojan/protocol_wait.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/trojan/service.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/trojan/service_wait.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/v2ray/grpc.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/v2ray/grpc_lite.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/v2ray/quic.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/v2ray/transport.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/v2raygrpc/client.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/v2raygrpc/conn.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/v2raygrpc/credentials/credentials.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/v2raygrpc/credentials/spiffe.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/v2raygrpc/credentials/syscallconn.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/v2raygrpc/credentials/util.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/v2raygrpc/custom_name.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/v2raygrpc/server.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/v2raygrpc/stream.pb.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/v2raygrpc/stream.proto +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/v2raygrpc/stream_grpc.pb.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/v2raygrpc/tls_credentials.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/v2raygrpclite/client.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/v2raygrpclite/conn.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/v2raygrpclite/server.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/v2rayhttp/client.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/v2rayhttp/conn.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/v2rayhttp/force_close.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/v2rayhttp/pool.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/v2rayhttp/server.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/v2rayhttpupgrade/client.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/v2rayhttpupgrade/server.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/v2rayquic/client.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/v2rayquic/init.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/v2rayquic/server.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/v2rayquic/stream.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/v2raywebsocket/server.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/v2raywebsocket/writer.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/wireguard/client_bind.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/wireguard/device.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/wireguard/device_nat.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/wireguard/device_stack.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/wireguard/device_stack_gonet.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/wireguard/device_stack_stub.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/wireguard/device_system.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/wireguard/device_system_stack.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/wireguard/endpoint.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/transport/wireguard/endpoint_options.go +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/src/cronet.c +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/src/singbox.cpp +0 -0
- {sing_box_python-1.13.19 → sing_box_python-1.13.21}/tests/test_binding.py +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
1.25.12
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: sing-box-python
|
|
3
|
-
Version: 1.13.
|
|
3
|
+
Version: 1.13.21
|
|
4
4
|
Summary: Python binding for sing-box
|
|
5
5
|
License: GPL-3.0-or-later
|
|
6
6
|
Project-URL: Source, https://github.com/LorenEteval/sing-box-python
|
|
@@ -47,7 +47,8 @@ Binary wheels are published for Linux x86-64 and ARM64, Windows x86-64 and ARM64
|
|
|
47
47
|
A source distribution is also published as a fallback. If pip cannot find a compatible wheel, it may build the native
|
|
48
48
|
binding from source. A source build requires:
|
|
49
49
|
|
|
50
|
-
* [Go
|
|
50
|
+
* The [Go toolchain version recorded in `.go-version`](https://go.dev/doc/install), or a newer compatible release, in
|
|
51
|
+
`PATH`. The pinned version matches the compiler used by the synchronized upstream release workflow.
|
|
51
52
|
* A working C and C++ compiler toolchain.
|
|
52
53
|
* MinGW-w64 on Windows x86-64, or LLVM-MinGW on Windows ARM64, with `gcc` and `g++` available in `PATH`.
|
|
53
54
|
|
|
@@ -178,11 +179,14 @@ paths and blob contents remain identical to upstream. Synchronization runs on Li
|
|
|
178
179
|
`.github/workflows/sync-upstream.yml` checks the latest stable upstream release daily and can also be started manually
|
|
179
180
|
from the Actions page. Drafts and prereleases are rejected. `UPSTREAM_VERSION` is the single version source for both the
|
|
180
181
|
Python distribution version and the sing-box version embedded in the native library, while `UPSTREAM_COMMIT` pins the
|
|
181
|
-
commit to which that release tag resolved during import.
|
|
182
|
+
commit to which that release tag resolved during import. The root `.go-version` pins the exact Go compiler used by
|
|
183
|
+
upstream's release workflow; this is intentionally independent of the minimum language version in `singbox-go/go.mod`.
|
|
182
184
|
|
|
183
185
|
The synchronization script checks the current vendor tree against its exact upstream tag, fetches the requested tag,
|
|
184
|
-
replaces only upstream-owned files, restores the two binding additions, updates `UPSTREAM_VERSION`,
|
|
185
|
-
vendored upstream path and Git blob.
|
|
186
|
+
replaces only upstream-owned files, restores the two binding additions, updates `UPSTREAM_VERSION`, `UPSTREAM_COMMIT`,
|
|
187
|
+
and `.go-version`, and verifies every vendored upstream path and Git blob. The Go pin is extracted from exact
|
|
188
|
+
`go-version` entries in upstream's build workflow; synchronization fails instead of guessing if no single exact version
|
|
189
|
+
can be identified. Repeated checks are no-ops when the stable release is already synchronized.
|
|
186
190
|
|
|
187
191
|
Run the same operations locally from the repository root:
|
|
188
192
|
|
|
@@ -192,10 +196,12 @@ python scripts/sync-sing-box.py verify --tag v1.13.18
|
|
|
192
196
|
python scripts/sync-sing-box.py sync --tag vX.Y.Z
|
|
193
197
|
```
|
|
194
198
|
|
|
195
|
-
For an automated update, the sync workflow
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
+
For an automated update, the sync workflow installs the synchronized `.go-version` toolchain and compiles the Go
|
|
200
|
+
binding before committing `chore: sync sing-box vX.Y.Z` to `main`. It then explicitly dispatches the existing
|
|
201
|
+
build-and-publish workflow at that commit. The latter uses the same exact Go version for every wheel platform, builds
|
|
202
|
+
and tests every distribution, then creates the `vX.Y.Z` tag, publishes `X.Y.Z` to PyPI through Trusted Publishing, and
|
|
203
|
+
creates the GitHub Release. Explicit dispatch is required because pushes made with GitHub's `GITHUB_TOKEN` do not
|
|
204
|
+
trigger new push workflows.
|
|
199
205
|
|
|
200
206
|
## Binary Wheel Platforms
|
|
201
207
|
|
|
@@ -20,7 +20,8 @@ Binary wheels are published for Linux x86-64 and ARM64, Windows x86-64 and ARM64
|
|
|
20
20
|
A source distribution is also published as a fallback. If pip cannot find a compatible wheel, it may build the native
|
|
21
21
|
binding from source. A source build requires:
|
|
22
22
|
|
|
23
|
-
* [Go
|
|
23
|
+
* The [Go toolchain version recorded in `.go-version`](https://go.dev/doc/install), or a newer compatible release, in
|
|
24
|
+
`PATH`. The pinned version matches the compiler used by the synchronized upstream release workflow.
|
|
24
25
|
* A working C and C++ compiler toolchain.
|
|
25
26
|
* MinGW-w64 on Windows x86-64, or LLVM-MinGW on Windows ARM64, with `gcc` and `g++` available in `PATH`.
|
|
26
27
|
|
|
@@ -151,11 +152,14 @@ paths and blob contents remain identical to upstream. Synchronization runs on Li
|
|
|
151
152
|
`.github/workflows/sync-upstream.yml` checks the latest stable upstream release daily and can also be started manually
|
|
152
153
|
from the Actions page. Drafts and prereleases are rejected. `UPSTREAM_VERSION` is the single version source for both the
|
|
153
154
|
Python distribution version and the sing-box version embedded in the native library, while `UPSTREAM_COMMIT` pins the
|
|
154
|
-
commit to which that release tag resolved during import.
|
|
155
|
+
commit to which that release tag resolved during import. The root `.go-version` pins the exact Go compiler used by
|
|
156
|
+
upstream's release workflow; this is intentionally independent of the minimum language version in `singbox-go/go.mod`.
|
|
155
157
|
|
|
156
158
|
The synchronization script checks the current vendor tree against its exact upstream tag, fetches the requested tag,
|
|
157
|
-
replaces only upstream-owned files, restores the two binding additions, updates `UPSTREAM_VERSION`,
|
|
158
|
-
vendored upstream path and Git blob.
|
|
159
|
+
replaces only upstream-owned files, restores the two binding additions, updates `UPSTREAM_VERSION`, `UPSTREAM_COMMIT`,
|
|
160
|
+
and `.go-version`, and verifies every vendored upstream path and Git blob. The Go pin is extracted from exact
|
|
161
|
+
`go-version` entries in upstream's build workflow; synchronization fails instead of guessing if no single exact version
|
|
162
|
+
can be identified. Repeated checks are no-ops when the stable release is already synchronized.
|
|
159
163
|
|
|
160
164
|
Run the same operations locally from the repository root:
|
|
161
165
|
|
|
@@ -165,10 +169,12 @@ python scripts/sync-sing-box.py verify --tag v1.13.18
|
|
|
165
169
|
python scripts/sync-sing-box.py sync --tag vX.Y.Z
|
|
166
170
|
```
|
|
167
171
|
|
|
168
|
-
For an automated update, the sync workflow
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
+
For an automated update, the sync workflow installs the synchronized `.go-version` toolchain and compiles the Go
|
|
173
|
+
binding before committing `chore: sync sing-box vX.Y.Z` to `main`. It then explicitly dispatches the existing
|
|
174
|
+
build-and-publish workflow at that commit. The latter uses the same exact Go version for every wheel platform, builds
|
|
175
|
+
and tests every distribution, then creates the `vX.Y.Z` tag, publishes `X.Y.Z` to PyPI through Trusted Publishing, and
|
|
176
|
+
creates the GitHub Release. Explicit dispatch is required because pushes made with GitHub's `GITHUB_TOKEN` do not
|
|
177
|
+
trigger new push workflows.
|
|
172
178
|
|
|
173
179
|
## Binary Wheel Platforms
|
|
174
180
|
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
628cb31ffa79cffffd34c2f9cde6cae044e4fc12
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
v1.13.21
|
|
@@ -30,27 +30,38 @@ test-command = [
|
|
|
30
30
|
]
|
|
31
31
|
|
|
32
32
|
[tool.cibuildwheel.linux]
|
|
33
|
-
|
|
33
|
+
manylinux-x86_64-image = "manylinux2014"
|
|
34
|
+
manylinux-aarch64-image = "manylinux2014"
|
|
35
|
+
before-all = '''
|
|
36
|
+
go_version="$(
|
|
37
|
+
tr -d '\r\n' < "{project}/.go-version"
|
|
38
|
+
)"
|
|
39
|
+
if ! printf '%s\n' "${go_version}" | grep -Eq '^[0-9]+\.[0-9]+\.[0-9]+$'; then
|
|
40
|
+
echo "Invalid Go version in .go-version: ${go_version}" >&2
|
|
41
|
+
exit 1
|
|
42
|
+
fi
|
|
34
43
|
case "$(uname -m)" in
|
|
35
44
|
x86_64)
|
|
36
45
|
go_arch='amd64'
|
|
37
|
-
go_sha256='da18191ddb7db8a9339816f3e2b54bdded8047cdc2a5d67059478f8d1595c43f'
|
|
38
46
|
;;
|
|
39
47
|
aarch64|arm64)
|
|
40
48
|
go_arch='arm64'
|
|
41
|
-
go_sha256='fd2bccce882e29369f56c86487663bb78ba7ea9e02188a5b0269303a0c3d33ab'
|
|
42
49
|
;;
|
|
43
50
|
*)
|
|
44
51
|
echo "Unsupported Linux architecture: $(uname -m)" >&2
|
|
45
52
|
exit 1
|
|
46
53
|
;;
|
|
47
54
|
esac
|
|
48
|
-
go_archive="/tmp/
|
|
49
|
-
|
|
55
|
+
go_archive="/tmp/go${go_version}.linux-${go_arch}.tar.gz"
|
|
56
|
+
go_checksum="${go_archive}.sha256"
|
|
57
|
+
go_url="https://dl.google.com/go/go${go_version}.linux-${go_arch}.tar.gz"
|
|
58
|
+
curl -fsSLo "${go_archive}" "${go_url}"
|
|
59
|
+
curl -fsSLo "${go_checksum}" "${go_url}.sha256"
|
|
60
|
+
go_sha256="$(tr -d '\r\n' < "${go_checksum}")"
|
|
50
61
|
echo "${go_sha256} ${go_archive}" | sha256sum -c -
|
|
51
62
|
tar -C /usr/local -xzf "${go_archive}"
|
|
52
63
|
/usr/local/go/bin/go version
|
|
53
|
-
|
|
64
|
+
'''
|
|
54
65
|
environment = { PATH = "/usr/local/go/bin:$PATH", GOTOOLCHAIN = "local" }
|
|
55
66
|
|
|
56
67
|
[tool.cibuildwheel.macos]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: sing-box-python
|
|
3
|
-
Version: 1.13.
|
|
3
|
+
Version: 1.13.21
|
|
4
4
|
Summary: Python binding for sing-box
|
|
5
5
|
License: GPL-3.0-or-later
|
|
6
6
|
Project-URL: Source, https://github.com/LorenEteval/sing-box-python
|
|
@@ -47,7 +47,8 @@ Binary wheels are published for Linux x86-64 and ARM64, Windows x86-64 and ARM64
|
|
|
47
47
|
A source distribution is also published as a fallback. If pip cannot find a compatible wheel, it may build the native
|
|
48
48
|
binding from source. A source build requires:
|
|
49
49
|
|
|
50
|
-
* [Go
|
|
50
|
+
* The [Go toolchain version recorded in `.go-version`](https://go.dev/doc/install), or a newer compatible release, in
|
|
51
|
+
`PATH`. The pinned version matches the compiler used by the synchronized upstream release workflow.
|
|
51
52
|
* A working C and C++ compiler toolchain.
|
|
52
53
|
* MinGW-w64 on Windows x86-64, or LLVM-MinGW on Windows ARM64, with `gcc` and `g++` available in `PATH`.
|
|
53
54
|
|
|
@@ -178,11 +179,14 @@ paths and blob contents remain identical to upstream. Synchronization runs on Li
|
|
|
178
179
|
`.github/workflows/sync-upstream.yml` checks the latest stable upstream release daily and can also be started manually
|
|
179
180
|
from the Actions page. Drafts and prereleases are rejected. `UPSTREAM_VERSION` is the single version source for both the
|
|
180
181
|
Python distribution version and the sing-box version embedded in the native library, while `UPSTREAM_COMMIT` pins the
|
|
181
|
-
commit to which that release tag resolved during import.
|
|
182
|
+
commit to which that release tag resolved during import. The root `.go-version` pins the exact Go compiler used by
|
|
183
|
+
upstream's release workflow; this is intentionally independent of the minimum language version in `singbox-go/go.mod`.
|
|
182
184
|
|
|
183
185
|
The synchronization script checks the current vendor tree against its exact upstream tag, fetches the requested tag,
|
|
184
|
-
replaces only upstream-owned files, restores the two binding additions, updates `UPSTREAM_VERSION`,
|
|
185
|
-
vendored upstream path and Git blob.
|
|
186
|
+
replaces only upstream-owned files, restores the two binding additions, updates `UPSTREAM_VERSION`, `UPSTREAM_COMMIT`,
|
|
187
|
+
and `.go-version`, and verifies every vendored upstream path and Git blob. The Go pin is extracted from exact
|
|
188
|
+
`go-version` entries in upstream's build workflow; synchronization fails instead of guessing if no single exact version
|
|
189
|
+
can be identified. Repeated checks are no-ops when the stable release is already synchronized.
|
|
186
190
|
|
|
187
191
|
Run the same operations locally from the repository root:
|
|
188
192
|
|
|
@@ -192,10 +196,12 @@ python scripts/sync-sing-box.py verify --tag v1.13.18
|
|
|
192
196
|
python scripts/sync-sing-box.py sync --tag vX.Y.Z
|
|
193
197
|
```
|
|
194
198
|
|
|
195
|
-
For an automated update, the sync workflow
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
+
For an automated update, the sync workflow installs the synchronized `.go-version` toolchain and compiles the Go
|
|
200
|
+
binding before committing `chore: sync sing-box vX.Y.Z` to `main`. It then explicitly dispatches the existing
|
|
201
|
+
build-and-publish workflow at that commit. The latter uses the same exact Go version for every wheel platform, builds
|
|
202
|
+
and tests every distribution, then creates the `vX.Y.Z` tag, publishes `X.Y.Z` to PyPI through Trusted Publishing, and
|
|
203
|
+
creates the GitHub Release. Explicit dispatch is required because pushes made with GitHub's `GITHUB_TOKEN` do not
|
|
204
|
+
trigger new push workflows.
|
|
199
205
|
|
|
200
206
|
## Binary Wheel Platforms
|
|
201
207
|
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
.go-version
|
|
1
2
|
CMakeLists.txt
|
|
2
3
|
LICENSE
|
|
3
4
|
MANIFEST.in
|
|
@@ -850,6 +851,7 @@ singbox-go/route/rule/rule_action.go
|
|
|
850
851
|
singbox-go/route/rule/rule_default.go
|
|
851
852
|
singbox-go/route/rule/rule_default_interface_address.go
|
|
852
853
|
singbox-go/route/rule/rule_dns.go
|
|
854
|
+
singbox-go/route/rule/rule_dns_address_filter_test.go
|
|
853
855
|
singbox-go/route/rule/rule_headless.go
|
|
854
856
|
singbox-go/route/rule/rule_interface_address.go
|
|
855
857
|
singbox-go/route/rule/rule_item_adguard.go
|
|
@@ -1098,37 +1098,36 @@ jobs:
|
|
|
1098
1098
|
echo "ASC_KEY_ID=$ASC_KEY_ID" >> "$GITHUB_ENV"
|
|
1099
1099
|
echo "ASC_KEY_ISSUER_ID=$ASC_KEY_ISSUER_ID" >> "$GITHUB_ENV"
|
|
1100
1100
|
env:
|
|
1101
|
-
ASC_KEY: ${{ secrets.
|
|
1102
|
-
ASC_KEY_ID: ${{ secrets.
|
|
1103
|
-
ASC_KEY_ISSUER_ID: ${{ secrets.
|
|
1101
|
+
ASC_KEY: ${{ secrets.LEGACY_ASC_KEY }}
|
|
1102
|
+
ASC_KEY_ID: ${{ secrets.LEGACY_ASC_KEY_ID }}
|
|
1103
|
+
ASC_KEY_ISSUER_ID: ${{ secrets.LEGACY_ASC_KEY_ISSUER_ID }}
|
|
1104
1104
|
- name: Install Apple provisioning profiles
|
|
1105
1105
|
if: matrix.if && matrix.type != 'jailbreak'
|
|
1106
1106
|
run: |-
|
|
1107
1107
|
PROFILES_ZIP_PATH=$RUNNER_TEMP/AppleProvisioningProfiles.zip
|
|
1108
|
-
for
|
|
1109
|
-
variable="PROVISIONING_PROFILES_$index"
|
|
1108
|
+
for variable in $(compgen -v | grep -E '^PROVISIONING_PROFILES_[0-9]+$' | sort -t_ -k3 -n); do
|
|
1110
1109
|
printf '%s' "${!variable}"
|
|
1111
1110
|
done | base64 --decode -o $PROFILES_ZIP_PATH
|
|
1112
1111
|
PROFILES_PATH="$HOME/Library/Developer/Xcode/UserData/Provisioning Profiles"
|
|
1113
1112
|
mkdir -p "$PROFILES_PATH"
|
|
1114
1113
|
unzip -q $PROFILES_ZIP_PATH -d "$PROFILES_PATH"
|
|
1115
1114
|
env:
|
|
1116
|
-
PROVISIONING_PROFILES_1: ${{ secrets.
|
|
1117
|
-
PROVISIONING_PROFILES_2: ${{ secrets.
|
|
1118
|
-
PROVISIONING_PROFILES_3: ${{ secrets.
|
|
1119
|
-
PROVISIONING_PROFILES_4: ${{ secrets.
|
|
1120
|
-
PROVISIONING_PROFILES_5: ${{ secrets.
|
|
1121
|
-
PROVISIONING_PROFILES_6: ${{ secrets.
|
|
1122
|
-
PROVISIONING_PROFILES_7: ${{ secrets.
|
|
1123
|
-
PROVISIONING_PROFILES_8: ${{ secrets.
|
|
1124
|
-
PROVISIONING_PROFILES_9: ${{ secrets.
|
|
1125
|
-
PROVISIONING_PROFILES_10: ${{ secrets.
|
|
1126
|
-
PROVISIONING_PROFILES_11: ${{ secrets.
|
|
1127
|
-
PROVISIONING_PROFILES_12: ${{ secrets.
|
|
1128
|
-
PROVISIONING_PROFILES_13: ${{ secrets.
|
|
1129
|
-
PROVISIONING_PROFILES_14: ${{ secrets.
|
|
1130
|
-
PROVISIONING_PROFILES_15: ${{ secrets.
|
|
1131
|
-
PROVISIONING_PROFILES_16: ${{ secrets.
|
|
1115
|
+
PROVISIONING_PROFILES_1: ${{ secrets.LEGACY_APPLE_PROVISIONING_PROFILES_1 }}
|
|
1116
|
+
PROVISIONING_PROFILES_2: ${{ secrets.LEGACY_APPLE_PROVISIONING_PROFILES_2 }}
|
|
1117
|
+
PROVISIONING_PROFILES_3: ${{ secrets.LEGACY_APPLE_PROVISIONING_PROFILES_3 }}
|
|
1118
|
+
PROVISIONING_PROFILES_4: ${{ secrets.LEGACY_APPLE_PROVISIONING_PROFILES_4 }}
|
|
1119
|
+
PROVISIONING_PROFILES_5: ${{ secrets.LEGACY_APPLE_PROVISIONING_PROFILES_5 }}
|
|
1120
|
+
PROVISIONING_PROFILES_6: ${{ secrets.LEGACY_APPLE_PROVISIONING_PROFILES_6 }}
|
|
1121
|
+
PROVISIONING_PROFILES_7: ${{ secrets.LEGACY_APPLE_PROVISIONING_PROFILES_7 }}
|
|
1122
|
+
PROVISIONING_PROFILES_8: ${{ secrets.LEGACY_APPLE_PROVISIONING_PROFILES_8 }}
|
|
1123
|
+
PROVISIONING_PROFILES_9: ${{ secrets.LEGACY_APPLE_PROVISIONING_PROFILES_9 }}
|
|
1124
|
+
PROVISIONING_PROFILES_10: ${{ secrets.LEGACY_APPLE_PROVISIONING_PROFILES_10 }}
|
|
1125
|
+
PROVISIONING_PROFILES_11: ${{ secrets.LEGACY_APPLE_PROVISIONING_PROFILES_11 }}
|
|
1126
|
+
PROVISIONING_PROFILES_12: ${{ secrets.LEGACY_APPLE_PROVISIONING_PROFILES_12 }}
|
|
1127
|
+
PROVISIONING_PROFILES_13: ${{ secrets.LEGACY_APPLE_PROVISIONING_PROFILES_13 }}
|
|
1128
|
+
PROVISIONING_PROFILES_14: ${{ secrets.LEGACY_APPLE_PROVISIONING_PROFILES_14 }}
|
|
1129
|
+
PROVISIONING_PROFILES_15: ${{ secrets.LEGACY_APPLE_PROVISIONING_PROFILES_15 }}
|
|
1130
|
+
PROVISIONING_PROFILES_16: ${{ secrets.LEGACY_APPLE_PROVISIONING_PROFILES_16 }}
|
|
1132
1131
|
- name: Setup Apple Development certificate
|
|
1133
1132
|
if: matrix.if && matrix.type != 'jailbreak'
|
|
1134
1133
|
run: |-
|
|
@@ -1145,8 +1144,8 @@ jobs:
|
|
|
1145
1144
|
security find-identity -v -p codesigning $KEYCHAIN_PATH
|
|
1146
1145
|
echo "APPLE_DEVELOPMENT_KEYCHAIN_PATH=$KEYCHAIN_PATH" >> "$GITHUB_ENV"
|
|
1147
1146
|
env:
|
|
1148
|
-
APPLE_DEVELOPMENT_CERTIFICATES_P12: ${{ secrets.
|
|
1149
|
-
P12_PASSWORD: ${{ secrets.
|
|
1147
|
+
APPLE_DEVELOPMENT_CERTIFICATES_P12: ${{ secrets.LEGACY_APPLE_DEVELOPMENT_CERTIFICATES_P12 }}
|
|
1148
|
+
P12_PASSWORD: ${{ secrets.LEGACY_APPLE_DEVELOPMENT_P12_PASSWORD }}
|
|
1150
1149
|
KEYCHAIN_PASSWORD: ${{ secrets.APPLE_KEYCHAIN_PASSWORD }}
|
|
1151
1150
|
- name: Setup Developer ID certificates
|
|
1152
1151
|
if: matrix.if && matrix.type == 'standalone'
|
|
@@ -1164,8 +1163,8 @@ jobs:
|
|
|
1164
1163
|
security find-identity -v -p codesigning $KEYCHAIN_PATH
|
|
1165
1164
|
echo "SIGNING_KEYCHAIN_PATH=$KEYCHAIN_PATH" >> "$GITHUB_ENV"
|
|
1166
1165
|
env:
|
|
1167
|
-
DEVELOPER_ID_CERTIFICATES_P12: ${{ secrets.
|
|
1168
|
-
P12_PASSWORD: ${{ secrets.
|
|
1166
|
+
DEVELOPER_ID_CERTIFICATES_P12: ${{ secrets.LEGACY_DEVELOPER_ID_CERTIFICATES_P12 }}
|
|
1167
|
+
P12_PASSWORD: ${{ secrets.LEGACY_DEVELOPER_ID_P12_PASSWORD }}
|
|
1169
1168
|
KEYCHAIN_PASSWORD: ${{ secrets.APPLE_KEYCHAIN_PASSWORD }}
|
|
1170
1169
|
- name: Setup notarization credentials
|
|
1171
1170
|
if: matrix.if && matrix.type == 'standalone' && github.event_name == 'workflow_dispatch'
|
|
@@ -94,7 +94,7 @@ type InboundContext struct {
|
|
|
94
94
|
SourcePortMatch bool
|
|
95
95
|
DestinationAddressMatch bool
|
|
96
96
|
DestinationPortMatch bool
|
|
97
|
-
|
|
97
|
+
DefinitiveMatchStates uint16
|
|
98
98
|
IgnoreDestinationIPCIDRMatch bool
|
|
99
99
|
}
|
|
100
100
|
|
|
@@ -109,7 +109,7 @@ func (c *InboundContext) ResetRuleMatchCache() {
|
|
|
109
109
|
c.SourcePortMatch = false
|
|
110
110
|
c.DestinationAddressMatch = false
|
|
111
111
|
c.DestinationPortMatch = false
|
|
112
|
-
c.
|
|
112
|
+
c.DefinitiveMatchStates = 0
|
|
113
113
|
}
|
|
114
114
|
|
|
115
115
|
type inboundContextKey struct{}
|
|
@@ -10,6 +10,7 @@ import (
|
|
|
10
10
|
"github.com/sagernet/sing-box/experimental/deprecated"
|
|
11
11
|
"github.com/sagernet/sing-box/include"
|
|
12
12
|
"github.com/sagernet/sing-box/log"
|
|
13
|
+
"github.com/sagernet/sing/common"
|
|
13
14
|
"github.com/sagernet/sing/service"
|
|
14
15
|
"github.com/sagernet/sing/service/filemanager"
|
|
15
16
|
|
|
@@ -52,7 +53,9 @@ func preRun(cmd *cobra.Command, args []string) {
|
|
|
52
53
|
globalCtx = filemanager.WithDefault(globalCtx, "", "", sudoUID, sudoGID)
|
|
53
54
|
}
|
|
54
55
|
if disableColor {
|
|
55
|
-
log.
|
|
56
|
+
logFactory := log.NewDefaultFactory(context.Background(), log.Formatter{BaseTime: time.Now(), DisableColors: true}, os.Stderr, "", nil, false)
|
|
57
|
+
common.Must(logFactory.Start())
|
|
58
|
+
log.SetStdLogger(logFactory.Logger())
|
|
56
59
|
}
|
|
57
60
|
if workingDir != "" {
|
|
58
61
|
_, err := os.Stat(workingDir)
|
{sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/rule.md
RENAMED
|
@@ -203,9 +203,9 @@ icon: material/alert-decagram
|
|
|
203
203
|
!!! note ""
|
|
204
204
|
|
|
205
205
|
The default rule uses the following matching logic:
|
|
206
|
-
(`domain` || `domain_suffix` || `domain_keyword` || `domain_regex` || `geosite`) &&
|
|
206
|
+
(`domain` || `domain_suffix` || `domain_keyword` || `domain_regex` || `geosite` || `ip_cidr` || `ip_is_private` || `ip_accept_any`) &&
|
|
207
207
|
(`port` || `port_range`) &&
|
|
208
|
-
(`source_geoip` || `source_ip_cidr`
|
|
208
|
+
(`source_geoip` || `source_ip_cidr` || `source_ip_is_private`) &&
|
|
209
209
|
(`source_port` || `source_port_range`) &&
|
|
210
210
|
`other fields`
|
|
211
211
|
|
{sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/docs/configuration/dns/rule.zh.md
RENAMED
|
@@ -202,7 +202,7 @@ icon: material/alert-decagram
|
|
|
202
202
|
!!! note ""
|
|
203
203
|
|
|
204
204
|
默认规则使用以下匹配逻辑:
|
|
205
|
-
(`domain` || `domain_suffix` || `domain_keyword` || `domain_regex` || `geosite`) &&
|
|
205
|
+
(`domain` || `domain_suffix` || `domain_keyword` || `domain_regex` || `geosite` || `ip_cidr` || `ip_is_private` || `ip_accept_any`) &&
|
|
206
206
|
(`port` || `port_range`) &&
|
|
207
207
|
(`source_geoip` || `source_ip_cidr` || `source_ip_is_private`) &&
|
|
208
208
|
(`source_port` || `source_port_range`) &&
|
{sing_box_python-1.13.19 → sing_box_python-1.13.21}/singbox-go/experimental/clashapi/proxies.go
RENAMED
|
@@ -184,6 +184,30 @@ func updateProxy(w http.ResponseWriter, r *http.Request) {
|
|
|
184
184
|
render.NoContent(w, r)
|
|
185
185
|
}
|
|
186
186
|
|
|
187
|
+
func groupContains(outboundManager adapter.OutboundManager, outboundGroup adapter.OutboundGroup, tag string, visited map[string]bool) bool {
|
|
188
|
+
for _, memberTag := range outboundGroup.All() {
|
|
189
|
+
if memberTag == tag {
|
|
190
|
+
return true
|
|
191
|
+
}
|
|
192
|
+
member, loaded := outboundManager.Outbound(memberTag)
|
|
193
|
+
if !loaded {
|
|
194
|
+
continue
|
|
195
|
+
}
|
|
196
|
+
if group.RealTag(member) == tag {
|
|
197
|
+
return true
|
|
198
|
+
}
|
|
199
|
+
memberGroup, isGroup := member.(adapter.OutboundGroup)
|
|
200
|
+
if !isGroup || visited[memberTag] {
|
|
201
|
+
continue
|
|
202
|
+
}
|
|
203
|
+
visited[memberTag] = true
|
|
204
|
+
if groupContains(outboundManager, memberGroup, tag, visited) {
|
|
205
|
+
return true
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
return false
|
|
209
|
+
}
|
|
210
|
+
|
|
187
211
|
func getProxyDelay(server *Server) func(w http.ResponseWriter, r *http.Request) {
|
|
188
212
|
return func(w http.ResponseWriter, r *http.Request) {
|
|
189
213
|
query := r.URL.Query()
|
|
@@ -213,6 +237,16 @@ func getProxyDelay(server *Server) func(w http.ResponseWriter, r *http.Request)
|
|
|
213
237
|
Delay: delay,
|
|
214
238
|
})
|
|
215
239
|
}
|
|
240
|
+
for _, detour := range server.outbound.Outbounds() {
|
|
241
|
+
urlTestGroup, isURLTestGroup := detour.(adapter.URLTestGroup)
|
|
242
|
+
if !isURLTestGroup {
|
|
243
|
+
continue
|
|
244
|
+
}
|
|
245
|
+
if !groupContains(server.outbound, urlTestGroup, realTag, map[string]bool{detour.Tag(): true}) {
|
|
246
|
+
continue
|
|
247
|
+
}
|
|
248
|
+
urlTestGroup.PerformUpdateCheck()
|
|
249
|
+
}
|
|
216
250
|
}()
|
|
217
251
|
|
|
218
252
|
if ctx.Err() != nil {
|
|
@@ -34,16 +34,16 @@ require (
|
|
|
34
34
|
github.com/sagernet/gomobile v0.1.12
|
|
35
35
|
github.com/sagernet/gvisor v0.0.0-20250811.0-sing-box-mod.1
|
|
36
36
|
github.com/sagernet/quic-go v0.59.0-sing-box-mod.4
|
|
37
|
-
github.com/sagernet/sing v0.8.
|
|
37
|
+
github.com/sagernet/sing v0.8.14
|
|
38
38
|
github.com/sagernet/sing-mux v0.3.5
|
|
39
|
-
github.com/sagernet/sing-quic v0.6.
|
|
39
|
+
github.com/sagernet/sing-quic v0.6.5
|
|
40
40
|
github.com/sagernet/sing-shadowsocks v0.2.8
|
|
41
41
|
github.com/sagernet/sing-shadowsocks2 v0.2.1
|
|
42
42
|
github.com/sagernet/sing-shadowtls v0.2.1
|
|
43
|
-
github.com/sagernet/sing-tun v0.8.
|
|
43
|
+
github.com/sagernet/sing-tun v0.8.15
|
|
44
44
|
github.com/sagernet/sing-vmess v0.2.8-0.20250909125414-3aed155119a1
|
|
45
45
|
github.com/sagernet/smux v1.5.50-sing-box-mod.1
|
|
46
|
-
github.com/sagernet/tailscale v1.92.4-sing-box-1.13-mod.
|
|
46
|
+
github.com/sagernet/tailscale v1.92.4-sing-box-1.13-mod.10
|
|
47
47
|
github.com/sagernet/wireguard-go v0.0.4
|
|
48
48
|
github.com/sagernet/ws v0.0.0-20231204124109-acfe8907c854
|
|
49
49
|
github.com/spf13/cobra v1.10.2
|
|
@@ -80,7 +80,6 @@ require (
|
|
|
80
80
|
github.com/fsnotify/fsnotify v1.9.0 // indirect
|
|
81
81
|
github.com/fxamacker/cbor/v2 v2.7.0 // indirect
|
|
82
82
|
github.com/gaissmai/bart v0.18.0 // indirect
|
|
83
|
-
github.com/go-json-experiment/json v0.0.0-20250813024750-ebf49471dced // indirect
|
|
84
83
|
github.com/go-ole/go-ole v1.3.0 // indirect
|
|
85
84
|
github.com/gobwas/httphead v0.1.0 // indirect
|
|
86
85
|
github.com/gobwas/pool v0.2.1 // indirect
|
|
@@ -62,8 +62,6 @@ github.com/go-chi/render v1.0.3 h1:AsXqd2a1/INaIfUSKq3G5uA8weYx20FOsM7uSoCyyt4=
|
|
|
62
62
|
github.com/go-chi/render v1.0.3/go.mod h1:/gr3hVkmYR0YlEy3LxCuVRFzEu9Ruok+gFqbIofjao0=
|
|
63
63
|
github.com/go-jose/go-jose/v4 v4.1.3 h1:CVLmWDhDVRa6Mi/IgCgaopNosCaHz7zrMeF9MlZRkrs=
|
|
64
64
|
github.com/go-jose/go-jose/v4 v4.1.3/go.mod h1:x4oUasVrzR7071A4TnHLGSPpNOm2a21K9Kf04k1rs08=
|
|
65
|
-
github.com/go-json-experiment/json v0.0.0-20250813024750-ebf49471dced h1:Q311OHjMh/u5E2TITc++WlTP5We0xNseRMkHDyvhW7I=
|
|
66
|
-
github.com/go-json-experiment/json v0.0.0-20250813024750-ebf49471dced/go.mod h1:TiCD2a1pcmjd7YnhGH0f/zKNcCD06B029pHhzV23c2M=
|
|
67
65
|
github.com/go-logr/logr v1.4.3 h1:CjnDlHq8ikf6E492q6eKboGOC0T8CDaOvkHCIg8idEI=
|
|
68
66
|
github.com/go-logr/logr v1.4.3/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY=
|
|
69
67
|
github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag=
|
|
@@ -236,26 +234,26 @@ github.com/sagernet/nftables v0.3.0-mod.2 h1:ck2KMU02OxL1eDFgGaWYglMDpoOZ7OHzxje
|
|
|
236
234
|
github.com/sagernet/nftables v0.3.0-mod.2/go.mod h1:8kslHG4VvYNihcco+i6uxIX7qbT8A56T0y5q7U44ZaQ=
|
|
237
235
|
github.com/sagernet/quic-go v0.59.0-sing-box-mod.4 h1:6qvrUW79S+CrPwWz6cMePXohgjHoKxLo3c+MDhNwc3o=
|
|
238
236
|
github.com/sagernet/quic-go v0.59.0-sing-box-mod.4/go.mod h1:OqILvS182CyOol5zNNo6bguvOGgXzV459+chpRaUC+4=
|
|
239
|
-
github.com/sagernet/sing v0.8.
|
|
240
|
-
github.com/sagernet/sing v0.8.
|
|
237
|
+
github.com/sagernet/sing v0.8.14 h1:S6Netv4F61uNAuD/sUbHnGuNUEPwtL08Ouk0//CVYgM=
|
|
238
|
+
github.com/sagernet/sing v0.8.14/go.mod h1:olXxWQNqRW/l2Q6JI3b2Qmz8iQnIFlOeeH8bx6JhgUA=
|
|
241
239
|
github.com/sagernet/sing-mux v0.3.5 h1:RHnhVEc+SFqkrK4xMygYjDwwLhzp2Bj3lztSukONfhI=
|
|
242
240
|
github.com/sagernet/sing-mux v0.3.5/go.mod h1:QvlKMyNBNrQoyX4x+gq028uPbLM2XeRpWtDsWBJbFSk=
|
|
243
|
-
github.com/sagernet/sing-quic v0.6.
|
|
244
|
-
github.com/sagernet/sing-quic v0.6.
|
|
241
|
+
github.com/sagernet/sing-quic v0.6.5 h1:DVH4mgPkWhNoc47JK6Q2ePCBXqIG5oJnTB+Fw9laL/M=
|
|
242
|
+
github.com/sagernet/sing-quic v0.6.5/go.mod h1:K5bWvITOm4vE10fwLfrWpw27bCoVJ+tfQ79tOWg+Ko8=
|
|
245
243
|
github.com/sagernet/sing-shadowsocks v0.2.8 h1:PURj5PRoAkqeHh2ZW205RWzN9E9RtKCVCzByXruQWfE=
|
|
246
244
|
github.com/sagernet/sing-shadowsocks v0.2.8/go.mod h1:lo7TWEMDcN5/h5B8S0ew+r78ZODn6SwVaFhvB6H+PTI=
|
|
247
245
|
github.com/sagernet/sing-shadowsocks2 v0.2.1 h1:dWV9OXCeFPuYGHb6IRqlSptVnSzOelnqqs2gQ2/Qioo=
|
|
248
246
|
github.com/sagernet/sing-shadowsocks2 v0.2.1/go.mod h1:RnXS0lExcDAovvDeniJ4IKa2IuChrdipolPYWBv9hWQ=
|
|
249
247
|
github.com/sagernet/sing-shadowtls v0.2.1 h1:ZiHZdnEnP+YS73NMsxiZmIFCwNd0M4k7PkGCKNXhbaM=
|
|
250
248
|
github.com/sagernet/sing-shadowtls v0.2.1/go.mod h1:sWqKnGlMipCHaGsw1sTTlimyUpgzP4WP3pjhCsYt9oA=
|
|
251
|
-
github.com/sagernet/sing-tun v0.8.
|
|
252
|
-
github.com/sagernet/sing-tun v0.8.
|
|
249
|
+
github.com/sagernet/sing-tun v0.8.15 h1:YlBDwulG6mpgh4R8Rw3NueAK0eiMQCoZFSztgohfx5c=
|
|
250
|
+
github.com/sagernet/sing-tun v0.8.15/go.mod h1:QvarqUtHfj1ULaRR+6kZOS/OoCE+pYGq67A5tyIy+dQ=
|
|
253
251
|
github.com/sagernet/sing-vmess v0.2.8-0.20250909125414-3aed155119a1 h1:aSwUNYUkVyVvdmBSufR8/nRFonwJeKSIROxHcm5br9o=
|
|
254
252
|
github.com/sagernet/sing-vmess v0.2.8-0.20250909125414-3aed155119a1/go.mod h1:P11scgTxMxVVQ8dlM27yNm3Cro40mD0+gHbnqrNGDuY=
|
|
255
253
|
github.com/sagernet/smux v1.5.50-sing-box-mod.1 h1:XkJcivBC9V4wBjiGXIXZ229aZCU1hzcbp6kSkkyQ478=
|
|
256
254
|
github.com/sagernet/smux v1.5.50-sing-box-mod.1/go.mod h1:NjhsCEWedJm7eFLyhuBgIEzwfhRmytrUoiLluxs5Sk8=
|
|
257
|
-
github.com/sagernet/tailscale v1.92.4-sing-box-1.13-mod.
|
|
258
|
-
github.com/sagernet/tailscale v1.92.4-sing-box-1.13-mod.
|
|
255
|
+
github.com/sagernet/tailscale v1.92.4-sing-box-1.13-mod.10 h1:KpTpzkDQKAlC2PCWB6AcsUQQ3ynnxVz0vY/XEP6HqEo=
|
|
256
|
+
github.com/sagernet/tailscale v1.92.4-sing-box-1.13-mod.10/go.mod h1:mcjmzmnvYguJ8lPFVu46ZueMz8lizGWMUqZMUhhUMoI=
|
|
259
257
|
github.com/sagernet/wireguard-go v0.0.4 h1:w/vHtk7AzMG37+D/uQROBL72Gj/Gj+FHMY5kg4q0CQ4=
|
|
260
258
|
github.com/sagernet/wireguard-go v0.0.4/go.mod h1:hEqi4y5czEg6LYtX2Bpjg+lV0b/J1n+5rA885Z66Mx0=
|
|
261
259
|
github.com/sagernet/ws v0.0.0-20231204124109-acfe8907c854 h1:6uUiZcDRnZSAegryaUGwPC/Fj13JSHwiTftrXhMmYOc=
|
|
@@ -4,19 +4,23 @@ import (
|
|
|
4
4
|
"context"
|
|
5
5
|
"os"
|
|
6
6
|
"time"
|
|
7
|
+
|
|
8
|
+
"github.com/sagernet/sing/common"
|
|
7
9
|
)
|
|
8
10
|
|
|
9
11
|
var std ContextLogger
|
|
10
12
|
|
|
11
13
|
func init() {
|
|
12
|
-
|
|
14
|
+
factory := NewDefaultFactory(
|
|
13
15
|
context.Background(),
|
|
14
16
|
Formatter{BaseTime: time.Now()},
|
|
15
17
|
os.Stderr,
|
|
16
18
|
"",
|
|
17
19
|
nil,
|
|
18
20
|
false,
|
|
19
|
-
)
|
|
21
|
+
)
|
|
22
|
+
common.Must(factory.Start())
|
|
23
|
+
std = factory.Logger()
|
|
20
24
|
}
|
|
21
25
|
|
|
22
26
|
func StdLogger() ContextLogger {
|