mirror of
https://github.com/NixOS/nixpkgs.git
synced 2025-06-10 19:55:41 +03:00
python3Packages.aiohttp: 3.11.18 -> 3.12.10 (#410940)
This commit is contained in:
commit
058cb933c2
4 changed files with 37 additions and 74 deletions
|
@ -11,14 +11,14 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "aiohttp-fast-zlib";
|
pname = "aiohttp-fast-zlib";
|
||||||
version = "0.2.3";
|
version = "0.3.0";
|
||||||
pyproject = true;
|
pyproject = true;
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "bdraco";
|
owner = "bdraco";
|
||||||
repo = "aiohttp-fast-zlib";
|
repo = "aiohttp-fast-zlib";
|
||||||
tag = "v${version}";
|
tag = "v${version}";
|
||||||
hash = "sha256-PQ44XFdaolxGQTwzssv1inOUAGAyYghS3SVLq4w5SoA=";
|
hash = "sha256-N38eMxxovpBM3n0cb7glKyBQ9GD79uyFxq5L4pKv248=";
|
||||||
};
|
};
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
|
|
|
@ -8,7 +8,8 @@
|
||||||
isPyPy,
|
isPyPy,
|
||||||
|
|
||||||
# build-system
|
# build-system
|
||||||
cython,
|
cython_3_1,
|
||||||
|
pkgconfig,
|
||||||
setuptools,
|
setuptools,
|
||||||
|
|
||||||
# native dependencies
|
# native dependencies
|
||||||
|
@ -30,8 +31,10 @@
|
||||||
brotlicffi,
|
brotlicffi,
|
||||||
|
|
||||||
# tests
|
# tests
|
||||||
|
blockbuster,
|
||||||
freezegun,
|
freezegun,
|
||||||
gunicorn,
|
gunicorn,
|
||||||
|
isal,
|
||||||
proxy-py,
|
proxy-py,
|
||||||
pytest-codspeed,
|
pytest-codspeed,
|
||||||
pytest-cov-stub,
|
pytest-cov-stub,
|
||||||
|
@ -41,35 +44,34 @@
|
||||||
python-on-whales,
|
python-on-whales,
|
||||||
re-assert,
|
re-assert,
|
||||||
trustme,
|
trustme,
|
||||||
|
zlib-ng,
|
||||||
}:
|
}:
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "aiohttp";
|
pname = "aiohttp";
|
||||||
version = "3.11.18";
|
version = "3.12.10";
|
||||||
pyproject = true;
|
pyproject = true;
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "aio-libs";
|
owner = "aio-libs";
|
||||||
repo = "aiohttp";
|
repo = "aiohttp";
|
||||||
tag = "v${version}";
|
tag = "v${version}";
|
||||||
hash = "sha256-+vnrYdUz1Stti9XE99InAouKN5kfTSaOuEG9Anxb3gs=";
|
hash = "sha256-ciZGOOfVXYoLzYNIkota3MXMRMxlztf+mFFo0y9r+Lk=";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [
|
|
||||||
(replaceVars ./unvendor-llhttp.patch {
|
|
||||||
llhttpDev = lib.getDev llhttp;
|
|
||||||
llhttpLib = lib.getLib llhttp;
|
|
||||||
})
|
|
||||||
];
|
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
rm -r vendor
|
rm -r vendor
|
||||||
patchShebangs tools
|
patchShebangs tools
|
||||||
touch .git # tools/gen.py uses .git to find the project root
|
touch .git # tools/gen.py uses .git to find the project root
|
||||||
|
|
||||||
|
# don't install Cython using pip
|
||||||
|
substituteInPlace Makefile \
|
||||||
|
--replace-fail "cythonize: .install-cython" "cythonize:"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
build-system = [
|
build-system = [
|
||||||
cython
|
cython_3_1
|
||||||
|
pkgconfig
|
||||||
setuptools
|
setuptools
|
||||||
];
|
];
|
||||||
|
|
||||||
|
@ -77,6 +79,12 @@ buildPythonPackage rec {
|
||||||
make cythonize
|
make cythonize
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
buildInputs = [
|
||||||
|
llhttp
|
||||||
|
];
|
||||||
|
|
||||||
|
env.AIOHTTP_USE_SYSTEM_DEPS = true;
|
||||||
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
aiohappyeyeballs
|
aiohappyeyeballs
|
||||||
aiosignal
|
aiosignal
|
||||||
|
@ -94,8 +102,10 @@ buildPythonPackage rec {
|
||||||
];
|
];
|
||||||
|
|
||||||
nativeCheckInputs = [
|
nativeCheckInputs = [
|
||||||
|
blockbuster
|
||||||
freezegun
|
freezegun
|
||||||
gunicorn
|
gunicorn
|
||||||
|
isal
|
||||||
proxy-py
|
proxy-py
|
||||||
pytest-codspeed
|
pytest-codspeed
|
||||||
pytest-cov-stub
|
pytest-cov-stub
|
||||||
|
@ -105,6 +115,7 @@ buildPythonPackage rec {
|
||||||
python-on-whales
|
python-on-whales
|
||||||
re-assert
|
re-assert
|
||||||
trustme
|
trustme
|
||||||
|
zlib-ng
|
||||||
];
|
];
|
||||||
|
|
||||||
disabledTests =
|
disabledTests =
|
||||||
|
@ -117,6 +128,8 @@ buildPythonPackage rec {
|
||||||
"test_import_time"
|
"test_import_time"
|
||||||
# racy
|
# racy
|
||||||
"test_uvloop_secure_https_proxy"
|
"test_uvloop_secure_https_proxy"
|
||||||
|
# Cannot connect to host example.com:443 ssl:default [Could not contact DNS servers]
|
||||||
|
"test_tcp_connector_ssl_shutdown_timeout_passed_to_create_connection"
|
||||||
]
|
]
|
||||||
# these tests fail with python310 but succeeds with 11+
|
# these tests fail with python310 but succeeds with 11+
|
||||||
++ lib.optionals isPy310 [
|
++ lib.optionals isPy310 [
|
||||||
|
@ -145,7 +158,7 @@ buildPythonPackage rec {
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
changelog = "https://github.com/aio-libs/aiohttp/blob/v${version}/CHANGES.rst";
|
changelog = "https://docs.aiohttp.org/en/${src.tag}/changes.html";
|
||||||
description = "Asynchronous HTTP Client/Server for Python and asyncio";
|
description = "Asynchronous HTTP Client/Server for Python and asyncio";
|
||||||
license = licenses.asl20;
|
license = licenses.asl20;
|
||||||
homepage = "https://github.com/aio-libs/aiohttp";
|
homepage = "https://github.com/aio-libs/aiohttp";
|
||||||
|
|
|
@ -1,60 +0,0 @@
|
||||||
diff --git a/Makefile b/Makefile
|
|
||||||
index b0a3ef32..f36132c6 100644
|
|
||||||
--- a/Makefile
|
|
||||||
+++ b/Makefile
|
|
||||||
@@ -79,7 +79,7 @@ vendor/llhttp/node_modules: vendor/llhttp/package.json
|
|
||||||
generate-llhttp: .llhttp-gen
|
|
||||||
|
|
||||||
.PHONY: cythonize
|
|
||||||
-cythonize: .install-cython $(PYXS:.pyx=.c) aiohttp/_websocket/reader_c.c
|
|
||||||
+cythonize: $(PYXS:.pyx=.c) aiohttp/_websocket/reader_c.c
|
|
||||||
|
|
||||||
.install-deps: .install-cython $(PYXS:.pyx=.c) aiohttp/_websocket/reader_c.c $(call to-hash,$(CYS) $(REQS))
|
|
||||||
@python -m pip install -r requirements/dev.in -c requirements/dev.txt
|
|
||||||
diff --git a/aiohttp/_cparser.pxd b/aiohttp/_cparser.pxd
|
|
||||||
index c2cd5a92..9184ac60 100644
|
|
||||||
--- a/aiohttp/_cparser.pxd
|
|
||||||
+++ b/aiohttp/_cparser.pxd
|
|
||||||
@@ -1,7 +1,7 @@
|
|
||||||
from libc.stdint cimport int32_t, uint8_t, uint16_t, uint64_t
|
|
||||||
|
|
||||||
|
|
||||||
-cdef extern from "../vendor/llhttp/build/llhttp.h":
|
|
||||||
+cdef extern from "@llhttpDev@/include/llhttp.h":
|
|
||||||
|
|
||||||
struct llhttp__internal_s:
|
|
||||||
int32_t _index
|
|
||||||
diff --git a/setup.py b/setup.py
|
|
||||||
index 2f024e87..feebc638 100644
|
|
||||||
--- a/setup.py
|
|
||||||
+++ b/setup.py
|
|
||||||
@@ -17,13 +17,6 @@ if sys.implementation.name != "cpython":
|
|
||||||
NO_EXTENSIONS = True
|
|
||||||
|
|
||||||
|
|
||||||
-if IS_GIT_REPO and not (HERE / "vendor/llhttp/README.md").exists():
|
|
||||||
- print("Install submodules when building from git clone", file=sys.stderr)
|
|
||||||
- print("Hint:", file=sys.stderr)
|
|
||||||
- print(" git submodule update --init", file=sys.stderr)
|
|
||||||
- sys.exit(2)
|
|
||||||
-
|
|
||||||
-
|
|
||||||
# NOTE: makefile cythonizes all Cython modules
|
|
||||||
|
|
||||||
extensions = [
|
|
||||||
@@ -33,12 +26,11 @@ extensions = [
|
|
||||||
[
|
|
||||||
"aiohttp/_http_parser.c",
|
|
||||||
"aiohttp/_find_header.c",
|
|
||||||
- "vendor/llhttp/build/c/llhttp.c",
|
|
||||||
- "vendor/llhttp/src/native/api.c",
|
|
||||||
- "vendor/llhttp/src/native/http.c",
|
|
||||||
],
|
|
||||||
define_macros=[("LLHTTP_STRICT_MODE", 0)],
|
|
||||||
- include_dirs=["vendor/llhttp/build"],
|
|
||||||
+ include_dirs=["@llhttpDev@/include"],
|
|
||||||
+ library_dirs=["@llhttpLib@/lib"],
|
|
||||||
+ libraries=["llhttp"],
|
|
||||||
),
|
|
||||||
Extension("aiohttp._http_writer", ["aiohttp/_http_writer.c"]),
|
|
||||||
Extension("aiohttp._websocket.reader_c", ["aiohttp/_websocket/reader_c.c"]),
|
|
|
@ -3156,6 +3156,16 @@ self: super: with self; {
|
||||||
|
|
||||||
cython_0 = callPackage ../development/python-modules/cython/0.nix { };
|
cython_0 = callPackage ../development/python-modules/cython/0.nix { };
|
||||||
|
|
||||||
|
cython_3_1 = cython.overridePythonAttrs rec {
|
||||||
|
version = "3.1.1";
|
||||||
|
src = pkgs.fetchFromGitHub {
|
||||||
|
owner = "cython";
|
||||||
|
repo = "cython";
|
||||||
|
tag = version;
|
||||||
|
hash = "sha256-KdRYPH3Do3KntgqLGIUSeD6DjmXNdFjI2ZSszzMjF6k=";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
cytoolz = callPackage ../development/python-modules/cytoolz { };
|
cytoolz = callPackage ../development/python-modules/cytoolz { };
|
||||||
|
|
||||||
dacite = callPackage ../development/python-modules/dacite { };
|
dacite = callPackage ../development/python-modules/dacite { };
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue