Skip to content
Snippets Groups Projects
Verified Commit 41187de3 authored by hashworks's avatar hashworks
Browse files

upgpkg: 4.0.2-1

parent 8d7b0f28
No related branches found
Tags 0.2.0-5
No related merge requests found
pkgbase = python-falcon
pkgdesc = Web API framework for fast and reliable microservices, proxies, and app backends
pkgver = 3.1.3
pkgrel = 6
pkgver = 4.0.2
pkgrel = 1
url = https://falconframework.org/
arch = x86_64
license = Apache-2.0
......@@ -40,11 +40,8 @@ pkgbase = python-falcon
optdepends = python-msgpack: for MessagePackHandler
optdepends = python-pecan: for falcon-bench
optdepends = python-pprofile: for falcon-bench
source = falcon-3.1.3.tar.gz::https://github.com/falconry/falcon/archive/refs/tags/3.1.3.tar.gz
source = python-3.12.patch
sha512sums = 66c5f563b373eb2bc2576d64d2225fa98f4d9d80dc1c93f6831f17287738797ac1f08a1ba71f4a70e6bafad7a51f70fa6fbbee99ef521419ceedcf2d892108ee
sha512sums = c9b7eb3058df517e7880584292b9a46415f437c9cddff8ddab8d1bcb7cf0e2cc5ef8ebd6e4c5ad2dd243aefc02e4664a91a885cc15b7c97e75ba430bfa669e95
b2sums = 1013ec1faac8029f2bfd1182643f0a528ad363eccde26d97abeb907054377a3f08054a812db7349bbf6364304c81a3922de7241bfa5f85c9d3dc6ec7bbfb17ca
b2sums = 03514194c94db05976bb073eeb91286235cac28b6c6aeb2a67c05df48c076fad288011c9102ed68287341d053f32888f044ee0c85cb8f52c776c8776bce44697
source = falcon-4.0.2.tar.gz::https://github.com/falconry/falcon/archive/refs/tags/4.0.2.tar.gz
sha512sums = 48f13834f9ba5829aa7050a6c86839533332c47282f12dc96d3d2f82a67f7a53878bf5f96b249bd79f5985eb1e2bde94ad246c2d0f3e1deebb4c04f364a23ac4
b2sums = d4e8c353a340508404117a5ba18bb3ddbf383eadfd22bafbdd82b6515521103c4c33abe65a4c1f6c6eb9b506473ba238ff0526f91c825737b61b0d43fd672d35
pkgname = python-falcon
......@@ -2,8 +2,8 @@
_name=falcon
pkgname=python-falcon
pkgver=3.1.3
pkgrel=6
pkgver=4.0.2
pkgrel=1
pkgdesc="Web API framework for fast and reliable microservices, proxies, and app backends"
arch=(x86_64)
url="https://falconframework.org/"
......@@ -54,16 +54,12 @@ optdepends=(
'python-pecan: for falcon-bench'
'python-pprofile: for falcon-bench'
)
source=($_name-$pkgver.tar.gz::$_url/archive/refs/tags/$pkgver.tar.gz
python-3.12.patch)
sha512sums=('66c5f563b373eb2bc2576d64d2225fa98f4d9d80dc1c93f6831f17287738797ac1f08a1ba71f4a70e6bafad7a51f70fa6fbbee99ef521419ceedcf2d892108ee'
'c9b7eb3058df517e7880584292b9a46415f437c9cddff8ddab8d1bcb7cf0e2cc5ef8ebd6e4c5ad2dd243aefc02e4664a91a885cc15b7c97e75ba430bfa669e95')
b2sums=('1013ec1faac8029f2bfd1182643f0a528ad363eccde26d97abeb907054377a3f08054a812db7349bbf6364304c81a3922de7241bfa5f85c9d3dc6ec7bbfb17ca'
'03514194c94db05976bb073eeb91286235cac28b6c6aeb2a67c05df48c076fad288011c9102ed68287341d053f32888f044ee0c85cb8f52c776c8776bce44697')
source=($_name-$pkgver.tar.gz::$_url/archive/refs/tags/$pkgver.tar.gz)
sha512sums=('48f13834f9ba5829aa7050a6c86839533332c47282f12dc96d3d2f82a67f7a53878bf5f96b249bd79f5985eb1e2bde94ad246c2d0f3e1deebb4c04f364a23ac4')
b2sums=('d4e8c353a340508404117a5ba18bb3ddbf383eadfd22bafbdd82b6515521103c4c33abe65a4c1f6c6eb9b506473ba238ff0526f91c825737b61b0d43fd672d35')
prepare() {
cd $_name-$pkgver
patch -p1 -i ../python-3.12.patch # Fix tests with python 3.12
}
build() {
......
From a78cfb38a0c0f6031cc3ff39ff8bf4afd03ef008 Mon Sep 17 00:00:00 2001
From: Vytautas Liuolia <vytautas.liuolia@gmail.com>
Date: Thu, 21 Mar 2024 20:59:26 +0100
Subject: [PATCH] chore(sync): use `asyncio.Runner` for `async_to_sync()` on
py311+ (#2216)
* chore(asyncio): replace `get_event_loop()` -> `get_running_loop()` where applicable
* chore(sync): use `asyncio.Runner` for `async_to_sync()` on py311+
* chore(sync): exempt a line from coverage as it can only be hit on 3.11+
* chore(tests/asgi): adapt to Uvicorn now propagating signals to retcode
* chore(tests/asgi): do not check ASGI server retcode on Windows
* chore(tests/asgi): check for a M$ Windows specific exit code constant
* chore(sync): use a nicer pattern to get the active runner
---
falcon/util/sync.py | 60 ++++++++++++++++++++++++---------
pyproject.toml | 1 -
tests/asgi/test_asgi_servers.py | 10 ++++--
tests/asgi/test_scope.py | 6 ++--
tests/dump_asgi.py | 2 +-
5 files changed, 56 insertions(+), 23 deletions(-)
diff --git a/pyproject.toml b/pyproject.toml
index ad445ce55..5ed0c5fab 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -97,7 +97,6 @@ filterwarnings = [
"ignore:.cgi. is deprecated and slated for removal:DeprecationWarning",
"ignore:path is deprecated\\. Use files\\(\\) instead:DeprecationWarning",
"ignore:This process \\(.+\\) is multi-threaded",
- "ignore:There is no current event loop",
]
testpaths = [
"tests"
diff --git a/tests/asgi/test_asgi_servers.py b/tests/asgi/test_asgi_servers.py
index 26f51ad0c..321e41f96 100644
--- a/tests/asgi/test_asgi_servers.py
+++ b/tests/asgi/test_asgi_servers.py
@@ -4,6 +4,7 @@
import os
import platform
import random
+import signal
import subprocess
import sys
import time
@@ -27,7 +28,9 @@
_SERVER_HOST = '127.0.0.1'
_SIZE_1_KB = 1024
_SIZE_1_MB = _SIZE_1_KB**2
-
+# NOTE(vytas): Windows specific: {Application Exit by CTRL+C}.
+# The application terminated as a result of a CTRL+C.
+_STATUS_CONTROL_C_EXIT = 0xC000013A
_REQUEST_TIMEOUT = 10
@@ -620,7 +623,10 @@ def server_base_url(request):
yield base_url
- assert server.returncode == 0
+ # NOTE(vytas): Starting with 0.29.0, Uvicorn will propagate signal
+ # values into the return code (which is a good practice in Unix);
+ # see also https://github.com/encode/uvicorn/pull/1600
+ assert server.returncode in (0, -signal.SIGTERM, _STATUS_CONTROL_C_EXIT)
break
diff --git a/tests/asgi/test_scope.py b/tests/asgi/test_scope.py
index bb60ed0e7..e368f6576 100644
--- a/tests/asgi/test_scope.py
+++ b/tests/asgi/test_scope.py
@@ -70,7 +70,7 @@ def test_supported_asgi_version(version, supported):
resp_event_collector = testing.ASGIResponseEventCollector()
async def task():
- coro = asyncio.get_event_loop().create_task(
+ coro = asyncio.get_running_loop().create_task(
app(scope, req_event_emitter, resp_event_collector)
)
@@ -142,7 +142,7 @@ def test_lifespan_scope_default_version():
scope = {'type': 'lifespan'}
async def t():
- t = asyncio.get_event_loop().create_task(
+ t = asyncio.get_running_loop().create_task(
app(scope, req_event_emitter, resp_event_collector)
)
@@ -196,7 +196,7 @@ def test_lifespan_scope_version(spec_version, supported):
return
async def t():
- t = asyncio.get_event_loop().create_task(
+ t = asyncio.get_running_loop().create_task(
app(scope, req_event_emitter, resp_event_collector)
)
diff --git a/tests/dump_asgi.py b/tests/dump_asgi.py
index 0742a3ca0..0dfdb4b0a 100644
--- a/tests/dump_asgi.py
+++ b/tests/dump_asgi.py
@@ -23,5 +23,5 @@ async def app(scope, receive, send):
}
)
- loop = asyncio.get_event_loop()
+ loop = asyncio.get_running_loop()
loop.create_task(_say_hi())
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment