diff --git a/.github/workflows/pull-request.yml b/.github/workflows/pull-request.yml index 09ccbf9..02517d1 100644 --- a/.github/workflows/pull-request.yml +++ b/.github/workflows/pull-request.yml @@ -33,9 +33,11 @@ jobs: - name: merge into base_branch if: ${{ github.event_name == 'pull_request' }} + env: + PR_HEAD_REF: ${{ github.head_ref }} run: | echo base branch "${{ github.base_ref }}" - echo pr branch "${{ github.head_ref }}" + echo "pr branch $PR_HEAD_REF" git checkout "${{ github.base_ref }}" git checkout -b "merging-${{ github.event.number }}" git merge --ff-only "${{ github.event.pull_request.head.sha }}" @@ -85,9 +87,11 @@ jobs: - name: merge into base_branch if: ${{ github.event_name == 'pull_request' }} + env: + PR_HEAD_REF: ${{ github.head_ref }} run: | echo base branch "${{ github.base_ref }}" - echo pr branch "${{ github.head_ref }}" + echo "pr branch $PR_HEAD_REF" git checkout "${{ github.base_ref }}" git checkout -b "merging-${{ github.event.number }}" git merge --ff-only "${{ github.event.pull_request.head.sha }}" @@ -203,9 +207,11 @@ jobs: - name: merge into base_branch if: ${{ github.event_name == 'pull_request' }} + env: + PR_HEAD_REF: ${{ github.head_ref }} run: | echo base branch "${{ github.base_ref }}" - echo pr branch "${{ github.head_ref }}" + echo "pr branch $PR_HEAD_REF" git checkout "${{ github.base_ref }}" git checkout -b "merging-${{ github.event.number }}" git merge --ff-only "${{ github.event.pull_request.head.sha }}" @@ -288,9 +294,11 @@ jobs: - name: merge into base_branch if: ${{ github.event_name == 'pull_request' }} + env: + PR_HEAD_REF: ${{ github.head_ref }} run: | echo base branch "${{ github.base_ref }}" - echo pr branch "${{ github.head_ref }}" + echo "pr branch $PR_HEAD_REF" git checkout "${{ github.base_ref }}" git checkout -b "merging-${{ github.event.number }}" git merge --ff-only "${{ github.event.pull_request.head.sha }}" diff --git a/poetry.lock b/poetry.lock index 3401c1c..7a014b0 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,4 +1,4 @@ -# This file is automatically @generated by Poetry 2.1.3 and should not be changed by hand. +# This file is automatically @generated by Poetry 2.2.0 and should not be changed by hand. [[package]] name = "asttokens" @@ -66,18 +66,18 @@ uvloop = ["uvloop (>=0.15.2)"] [[package]] name = "boto3" -version = "1.40.43" +version = "1.40.45" description = "The AWS SDK for Python" optional = false python-versions = ">=3.9" groups = ["dev"] files = [ - {file = "boto3-1.40.43-py3-none-any.whl", hash = "sha256:c5d64ba2fb2d90c33c3969f3751869c45746d5efb5136e4cc619e3630ece89a3"}, - {file = "boto3-1.40.43.tar.gz", hash = "sha256:9ad9190672ce8736898bec2d94875aea6ae1ead2ac6d158e01d820f3ff9c23e0"}, + {file = "boto3-1.40.45-py3-none-any.whl", hash = "sha256:5b145752d20f29908e3cb8c823bee31c77e6bcf18787e570f36bbc545cc779ed"}, + {file = "boto3-1.40.45.tar.gz", hash = "sha256:e8d794dc1f01729d93dc188c90cf63cd0d32df8818a82ac46e641f6ffcea615e"}, ] [package.dependencies] -botocore = ">=1.40.43,<1.41.0" +botocore = ">=1.40.45,<1.41.0" jmespath = ">=0.7.1,<2.0.0" s3transfer = ">=0.14.0,<0.15.0" @@ -86,14 +86,14 @@ crt = ["botocore[crt] (>=1.21.0,<2.0a0)"] [[package]] name = "botocore" -version = "1.40.43" +version = "1.40.45" description = "Low-level, data-driven core of boto 3." optional = false python-versions = ">=3.9" groups = ["dev"] files = [ - {file = "botocore-1.40.43-py3-none-any.whl", hash = "sha256:1639f38999fc0cf42c92c5c83c5fbe189a4857a86f55b842be868e3283c6d3bb"}, - {file = "botocore-1.40.43.tar.gz", hash = "sha256:d87412dc1ea785df156f412627d3417c9f9eb45601fd0846d8fe96fe3c78b630"}, + {file = "botocore-1.40.45-py3-none-any.whl", hash = "sha256:9abf473d8372ade8442c0d4634a9decb89c854d7862ffd5500574eb63ab8f240"}, + {file = "botocore-1.40.45.tar.gz", hash = "sha256:cf8b743527a2a7e108702d24d2f617e93c6dc7ae5eb09aadbe866f15481059df"}, ] [package.dependencies] @@ -1260,14 +1260,14 @@ files = [ [[package]] name = "tox" -version = "4.30.2" +version = "4.30.3" description = "tox is a generic virtualenv management and test command line tool" optional = false python-versions = ">=3.9" groups = ["dev"] files = [ - {file = "tox-4.30.2-py3-none-any.whl", hash = "sha256:efd261a42e8c82a59f9026320a80a067f27f44cad2e72a6712010c311d31176b"}, - {file = "tox-4.30.2.tar.gz", hash = "sha256:772925ad6c57fe35c7ed5ac3e958ac5ced21dff597e76fc40c1f5bf3cd1b6a2e"}, + {file = "tox-4.30.3-py3-none-any.whl", hash = "sha256:a9f17b4b2d0f74fe0d76207236925a119095011e5c2e661a133115a8061178c9"}, + {file = "tox-4.30.3.tar.gz", hash = "sha256:f3dd0735f1cd4e8fbea5a3661b77f517456b5f0031a6256432533900e34b90bf"}, ] [package.dependencies] @@ -1318,7 +1318,6 @@ description = "Typing stubs for requests" optional = false python-versions = ">=3.7" groups = ["dev"] -markers = "python_version == \"3.9\"" files = [ {file = "types-requests-2.31.0.6.tar.gz", hash = "sha256:cd74ce3b53c461f1228a9b783929ac73a666658f223e28ed29753771477b3bd0"}, {file = "types_requests-2.31.0.6-py3-none-any.whl", hash = "sha256:a2db9cb228a81da8348b49ad6db3f5519452dd20a9c1e1a868c83c5fe88fd1a9"}, @@ -1327,22 +1326,6 @@ files = [ [package.dependencies] types-urllib3 = "*" -[[package]] -name = "types-requests" -version = "2.32.4.20250913" -description = "Typing stubs for requests" -optional = false -python-versions = ">=3.9" -groups = ["dev"] -markers = "python_version >= \"3.10\"" -files = [ - {file = "types_requests-2.32.4.20250913-py3-none-any.whl", hash = "sha256:78c9c1fffebbe0fa487a418e0fa5252017e9c60d1a2da394077f1780f655d7e1"}, - {file = "types_requests-2.32.4.20250913.tar.gz", hash = "sha256:abd6d4f9ce3a9383f269775a9835a4c24e5cd6b9f647d64f88aa4613c33def5d"}, -] - -[package.dependencies] -urllib3 = ">=2" - [[package]] name = "types-setuptools" version = "80.9.0.20250822" @@ -1374,7 +1357,6 @@ description = "Typing stubs for urllib3" optional = false python-versions = "*" groups = ["dev"] -markers = "python_version == \"3.9\"" files = [ {file = "types-urllib3-1.26.25.14.tar.gz", hash = "sha256:229b7f577c951b8c1b92c1bc2b2fdb0b49847bd2af6d1cc2a2e3dd340f3bda8f"}, {file = "types_urllib3-1.26.25.14-py3-none-any.whl", hash = "sha256:9683bbb7fb72e32bfe9d2be6e04875fbe1b3eeec3cbb4ea231435aa7fd6b4f0e"}, @@ -1400,7 +1382,6 @@ description = "HTTP library with thread-safe connection pooling, file post, and optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,>=2.7" groups = ["main", "dev"] -markers = "python_version == \"3.9\"" files = [ {file = "urllib3-1.26.20-py2.py3-none-any.whl", hash = "sha256:0ed14ccfbf1c30a9072c7ca157e4319b70d65f623e91e7b32fadb2853431016e"}, {file = "urllib3-1.26.20.tar.gz", hash = "sha256:40c2dc0c681e47eb8f90e7e27bf6ff7df2e677421fd46756da1161c39ca70d32"}, @@ -1411,25 +1392,6 @@ brotli = ["brotli (==1.0.9) ; os_name != \"nt\" and python_version < \"3\" and p secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress ; python_version == \"2.7\"", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] -[[package]] -name = "urllib3" -version = "2.5.0" -description = "HTTP library with thread-safe connection pooling, file post, and more." -optional = false -python-versions = ">=3.9" -groups = ["main", "dev"] -markers = "python_version >= \"3.10\"" -files = [ - {file = "urllib3-2.5.0-py3-none-any.whl", hash = "sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc"}, - {file = "urllib3-2.5.0.tar.gz", hash = "sha256:3fc47733c7e419d4bc3f6b3dc2b4f890bb743906a30d56ba4a5bfa4bbff92760"}, -] - -[package.extras] -brotli = ["brotli (>=1.0.9) ; platform_python_implementation == \"CPython\"", "brotlicffi (>=0.8.0) ; platform_python_implementation != \"CPython\""] -h2 = ["h2 (>=4,<5)"] -socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] -zstd = ["zstandard (>=0.18.0)"] - [[package]] name = "virtualenv" version = "20.34.0" diff --git a/tests/mesh_endpoint_connectivity_tests.py b/tests/mesh_endpoint_connectivity_tests.py index 483f0c1..187ba81 100644 --- a/tests/mesh_endpoint_connectivity_tests.py +++ b/tests/mesh_endpoint_connectivity_tests.py @@ -7,6 +7,7 @@ import pytest from requests.exceptions import ConnectionError as RequestsConnectionError from requests.exceptions import HTTPError, SSLError +from urllib3.exceptions import ProxyError import mesh_client from mesh_client import DEPRECATED_HSCN_INT_ENDPOINT, Endpoint, MeshClient @@ -32,7 +33,6 @@ def _host_resolves(endpoint: Endpoint): CONNECTION_ABORTED_ERROR = "Connection aborted." REMOTE_END_CLOSED_CONNECTION = "Remote end closed connection without response" -UNABLE_TO_CONNECT_TO_PROXY = "Unable to connect to proxy" SSL_CERTIFICATE_ERROR = "SSL certificate error" LOCAL_HTTPS_PROXY_URL = "http://localhost:8019" @@ -295,7 +295,7 @@ def test_internet_endpoints_via_explicit_proxy(name: str, endpoint: Endpoint): if err.type == SSLError: assert isinstance(err.value.args[0].reason.args[0], SSLCertVerificationError) else: - assert err.value.args[0].reason.args[0] == UNABLE_TO_CONNECT_TO_PROXY + assert isinstance(err.value.args[0].reason, ProxyError) assert str(err.value.args[0].reason.args[1]) == REMOTE_END_CLOSED_CONNECTION @@ -311,5 +311,5 @@ def test_internet_endpoints_via_ambient_proxy(name: str, endpoint: Endpoint): if err.type == SSLError: assert isinstance(err.value.args[0].reason.args[0], SSLCertVerificationError) else: - assert err.value.args[0].reason.args[0] == UNABLE_TO_CONNECT_TO_PROXY + assert isinstance(err.value.args[0].reason, ProxyError) assert str(err.value.args[0].reason.args[1]) == REMOTE_END_CLOSED_CONNECTION