diff --git a/.github/SECURITY.md b/.github/SECURITY.md index 306e0c2e..067cb6f8 100644 --- a/.github/SECURITY.md +++ b/.github/SECURITY.md @@ -6,7 +6,7 @@ Reporting issues affecting the confidentiality, integrity or availability. | Version | Supported | |---------| ------------------ | -| 0.6.x | :white_check_mark: | +| 0.8.x | :white_check_mark: | ## Reporting a Vulnerability diff --git a/aiopenapi3/version.py b/aiopenapi3/version.py index a5f830a2..3ab76bf4 100644 --- a/aiopenapi3/version.py +++ b/aiopenapi3/version.py @@ -1 +1 @@ -__version__ = "0.7.1" +__version__ = "0.8.0a1" diff --git a/requirements.txt b/requirements.txt index a0427c27..b79bd1e5 100644 --- a/requirements.txt +++ b/requirements.txt @@ -2,14 +2,14 @@ # uv export --no-dev --no-hashes --no-editable -o requirements.txt . annotated-types==0.7.0 -anyio==4.7.0 +anyio==4.8.0 certifi==2024.12.14 dnspython==2.7.0 email-validator==2.2.0 exceptiongroup==1.2.2 ; python_full_version < '3.11' h11==0.14.0 httpcore==1.0.7 -httpx==0.27.2 +httpx==0.28.1 idna==3.10 jmespath==1.0.1 more-itertools==10.5.0 diff --git a/tests/tls_test.py b/tests/tls_test.py index bbc89120..ce3da442 100644 --- a/tests/tls_test.py +++ b/tests/tls_test.py @@ -141,6 +141,7 @@ def self_signed(*args, **kwargs) -> httpx.AsyncClient: ctx = ssl.create_default_context(ssl.Purpose.SERVER_AUTH, cafile=certs["org"]["issuer"]) if (cert := kwargs.get("cert", None)) is not None: ctx.load_cert_chain(certfile=cert[0], keyfile=cert[1]) + kwargs.pop("cert") return httpx.AsyncClient(*args, verify=ctx, **kwargs) api = await aiopenapi3.OpenAPI.load_async( @@ -217,6 +218,7 @@ def self_signed_(*args, **kwargs) -> httpx.Client: ctx = ssl.create_default_context(ssl.Purpose.SERVER_AUTH, cafile=certs["org"]["issuer"]) if (cert := kwargs.get("cert", None)) is not None: ctx.load_cert_chain(certfile=cert[0], keyfile=cert[1]) + kwargs.pop("cert") return httpx.Client(*args, verify=ctx, **kwargs) client = await asyncio.to_thread( diff --git a/uv.lock b/uv.lock index 8942b774..a3787914 100644 --- a/uv.lock +++ b/uv.lock @@ -101,7 +101,7 @@ wheels = [ [[package]] name = "anyio" -version = "4.7.0" +version = "4.8.0" source = { registry = "https://pypi.org/simple/" } dependencies = [ { name = "exceptiongroup", marker = "python_full_version < '3.11'" }, @@ -109,9 +109,9 @@ dependencies = [ { name = "sniffio" }, { name = "typing-extensions", marker = "python_full_version < '3.13'" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/f6/40/318e58f669b1a9e00f5c4453910682e2d9dd594334539c7b7817dabb765f/anyio-4.7.0.tar.gz", hash = "sha256:2f834749c602966b7d456a7567cafcb309f96482b5081d14ac93ccd457f9dd48", size = 177076 } +sdist = { url = "https://files.pythonhosted.org/packages/a3/73/199a98fc2dae33535d6b8e8e6ec01f8c1d76c9adb096c6b7d64823038cde/anyio-4.8.0.tar.gz", hash = "sha256:1d9fe889df5212298c0c0723fa20479d1b94883a2df44bd3897aa91083316f7a", size = 181126 } wheels = [ - { url = "https://files.pythonhosted.org/packages/a0/7a/4daaf3b6c08ad7ceffea4634ec206faeff697526421c20f07628c7372156/anyio-4.7.0-py3-none-any.whl", hash = "sha256:ea60c3723ab42ba6fff7e8ccb0488c898ec538ff4df1f1d5e642c3601d07e352", size = 93052 }, + { url = "https://files.pythonhosted.org/packages/46/eb/e7f063ad1fec6b3178a3cd82d1a3c4de82cccf283fc42746168188e1cdd5/anyio-4.8.0-py3-none-any.whl", hash = "sha256:b5011f270ab5eb0abf13385f851315585cc37ef330dd88e27ec3d34d651fd47a", size = 96041 }, ] [[package]] @@ -493,44 +493,43 @@ wheels = [ [[package]] name = "httpx" -version = "0.27.2" +version = "0.28.1" source = { registry = "https://pypi.org/simple/" } dependencies = [ { name = "anyio" }, { name = "certifi" }, { name = "httpcore" }, { name = "idna" }, - { name = "sniffio" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/78/82/08f8c936781f67d9e6b9eeb8a0c8b4e406136ea4c3d1f89a5db71d42e0e6/httpx-0.27.2.tar.gz", hash = "sha256:f7c2be1d2f3c3c3160d441802406b206c2b76f5947b11115e6df10c6c65e66c2", size = 144189 } +sdist = { url = "https://files.pythonhosted.org/packages/b1/df/48c586a5fe32a0f01324ee087459e112ebb7224f646c0b5023f5e79e9956/httpx-0.28.1.tar.gz", hash = "sha256:75e98c5f16b0f35b567856f597f06ff2270a374470a5c2392242528e3e3e42fc", size = 141406 } wheels = [ - { url = "https://files.pythonhosted.org/packages/56/95/9377bcb415797e44274b51d46e3249eba641711cf3348050f76ee7b15ffc/httpx-0.27.2-py3-none-any.whl", hash = "sha256:7bb2708e112d8fdd7829cd4243970f0c223274051cb35ee80c03301ee29a3df0", size = 76395 }, + { url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl", hash = "sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad", size = 73517 }, ] [[package]] name = "httpx-auth" -version = "0.22.0" +version = "0.23.1" source = { registry = "https://pypi.org/simple/" } dependencies = [ { name = "httpx" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/e6/8c/a8a4f7dc9736a1c8fdfe8bc8c9b29145cd11f1b044567dc3d4ed611d0fcc/httpx_auth-0.22.0.tar.gz", hash = "sha256:5dc2d18cd3a0788015fd22714048e59f5eca6aa3051bfbd8d9dd0d2e6254c095", size = 116355 } +sdist = { url = "https://files.pythonhosted.org/packages/a8/d4/6bd616f89d1ce43f602b62ec274e33beee6c2bce3d68396e692daafdb57d/httpx_auth-0.23.1.tar.gz", hash = "sha256:27b5a6022ad1b41a303b8737fa2e3e4bce6bbbe7ab67fed0b261359be62e0434", size = 121418 } wheels = [ - { url = "https://files.pythonhosted.org/packages/42/61/fc870705034521d6caa974685eecb7b909b5a66539467c4fde00b319384d/httpx_auth-0.22.0-py3-none-any.whl", hash = "sha256:c60198e8160728f00e754b5181f4b9d1e4530260b94bbd09fd8abfe826b5be50", size = 44819 }, + { url = "https://files.pythonhosted.org/packages/2f/23/a72f91bea596b522ac297b948ffee6decdedb535c034fca8062bd72981ce/httpx_auth-0.23.1-py3-none-any.whl", hash = "sha256:04f8bd0824efe3d9fb79690cc670b0da98ea809babb7aea04a72f334d4fd5ec5", size = 45328 }, ] [[package]] name = "httpx-socks" -version = "0.9.2" +version = "0.10.0" source = { registry = "https://pypi.org/simple/" } dependencies = [ { name = "httpcore" }, { name = "httpx" }, { name = "python-socks" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/1a/c7/617150082ea7c4a4a716ef76d0f0b7e854b9ca9c8a1a17f7c7568e837b61/httpx_socks-0.9.2.tar.gz", hash = "sha256:cd00570ff81cce99b337ef0baf017bd61df887e9d33d4abeb9a48275386ee1e5", size = 90423 } +sdist = { url = "https://files.pythonhosted.org/packages/26/a4/b93909386d9bfc9d43fbb4a35bc33936ff5e6952d03aba8958af3b7dfada/httpx_socks-0.10.0.tar.gz", hash = "sha256:e232e31174de79cc79ca7174bbc159aabb4b95e0ff5cc2d894d33f6cbe1a1096", size = 93710 } wheels = [ - { url = "https://files.pythonhosted.org/packages/64/d5/508dcd7cf16a9ba687344bcc75cc43e25389ff390d53c6bddfa3c9ba9f0a/httpx_socks-0.9.2-py3-none-any.whl", hash = "sha256:b71537978c50813fb097da8d47e608c82e7bad2c5b4fc7148f36048f6efbd7f0", size = 12878 }, + { url = "https://files.pythonhosted.org/packages/9d/fc/f55d40f5c158c7acf7a45771019c75a41de756c0a9af6139155a322258f8/httpx_socks-0.10.0-py3-none-any.whl", hash = "sha256:9345572cc1b279c0878ab976c654a78d9b4b7b446183ec1e03569a480021addb", size = 12844 }, ] [[package]] @@ -1104,14 +1103,14 @@ wheels = [ [[package]] name = "pytest-asyncio" -version = "0.25.1" +version = "0.25.2" source = { registry = "https://pypi.org/simple/" } dependencies = [ { name = "pytest" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/4b/04/0477a4bdd176ad678d148c075f43620b3f7a060ff61c7da48500b1fa8a75/pytest_asyncio-0.25.1.tar.gz", hash = "sha256:79be8a72384b0c917677e00daa711e07db15259f4d23203c59012bcd989d4aee", size = 53760 } +sdist = { url = "https://files.pythonhosted.org/packages/72/df/adcc0d60f1053d74717d21d58c0048479e9cab51464ce0d2965b086bd0e2/pytest_asyncio-0.25.2.tar.gz", hash = "sha256:3f8ef9a98f45948ea91a0ed3dc4268b5326c0e7bce73892acc654df4262ad45f", size = 53950 } wheels = [ - { url = "https://files.pythonhosted.org/packages/81/fb/efc7226b384befd98d0e00d8c4390ad57f33c8fde00094b85c5e07897def/pytest_asyncio-0.25.1-py3-none-any.whl", hash = "sha256:c84878849ec63ff2ca509423616e071ef9cd8cc93c053aa33b5b8fb70a990671", size = 19357 }, + { url = "https://files.pythonhosted.org/packages/61/d8/defa05ae50dcd6019a95527200d3b3980043df5aa445d40cb0ef9f7f98ab/pytest_asyncio-0.25.2-py3-none-any.whl", hash = "sha256:0d0bb693f7b99da304a0634afc0a4b19e49d5e0de2d670f38dc4bfa5727c5075", size = 19400 }, ] [[package]] @@ -1129,15 +1128,15 @@ wheels = [ [[package]] name = "pytest-httpx" -version = "0.34.0" +version = "0.35.0" source = { registry = "https://pypi.org/simple/" } dependencies = [ { name = "httpx" }, { name = "pytest" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/86/08/d0be3fe5645c6cd9396093a9ddf97d60814a3b066fd5b38ddced34a13d14/pytest_httpx-0.34.0.tar.gz", hash = "sha256:3ca4b0975c0f93b985f17df19e76430c1086b5b0cce32b1af082d8901296a735", size = 54108 } +sdist = { url = "https://files.pythonhosted.org/packages/1f/89/5b12b7b29e3d0af3a4b9c071ee92fa25a9017453731a38f08ba01c280f4c/pytest_httpx-0.35.0.tar.gz", hash = "sha256:d619ad5d2e67734abfbb224c3d9025d64795d4b8711116b1a13f72a251ae511f", size = 54146 } wheels = [ - { url = "https://files.pythonhosted.org/packages/2c/72/7138a0faf5d780d6b9ceedef22da0b66ae8e22a676a12fd55a05c0cdd979/pytest_httpx-0.34.0-py3-none-any.whl", hash = "sha256:42cf0a66f7b71b9111db2897e8b38a903abd33a27b11c48aff4a3c7650313af2", size = 19440 }, + { url = "https://files.pythonhosted.org/packages/b0/ed/026d467c1853dd83102411a78126b4842618e86c895f93528b0528c7a620/pytest_httpx-0.35.0-py3-none-any.whl", hash = "sha256:ee11a00ffcea94a5cbff47af2114d34c5b231c326902458deed73f9c459fd744", size = 19442 }, ] [[package]]