#8 Update EPEL 9 to 21.2.0
Merged 8 months ago by carlwgeorge. Opened 8 months ago by carlwgeorge.

file modified
+1
@@ -19,3 +19,4 @@ 

  /gunicorn-20.0.2.tar.gz

  /gunicorn-20.0.4.tar.gz

  /gunicorn-20.1.0.tar.gz

+ /gunicorn-21.2.0.tar.gz

@@ -1,54 +0,0 @@ 

- From 153bf73a2ea2f23681f5cec19a90f212a36fdab9 Mon Sep 17 00:00:00 2001

- From: Sergey Shepelev <temotor@gmail.com>

- Date: Thu, 6 May 2021 12:54:06 +0300

- Subject: [PATCH 2/2] eventlet worker: ALREADY_HANDLED -> WSGI_LOCAL

- 

- Eventlet v0.30.3+ removed wsgi.ALREADY_HANDLED in favor of

- `wsgi.WSGI_LOCAL.already_handled: bool`

- 

- Sorry, this breaking change happened during only patch

- version increase 0.30.2 -> 0.30.3

- 

- https://github.com/eventlet/eventlet/issues/543

- https://github.com/eventlet/eventlet/pull/544

- (cherry picked from commit 6a8ebb4844b2f28596ffe7421eb9f7d08c8dc4d8)

- ---

-  gunicorn/workers/geventlet.py | 11 ++++++++++-

-  1 file changed, 10 insertions(+), 1 deletion(-)

- 

- diff --git a/gunicorn/workers/geventlet.py b/gunicorn/workers/geventlet.py

- index ffdb206c..ea82f3d6 100644

- --- a/gunicorn/workers/geventlet.py

- +++ b/gunicorn/workers/geventlet.py

- @@ -17,11 +17,16 @@ else:

-  

-  from eventlet import hubs, greenthread

-  from eventlet.greenio import GreenSocket

- -from eventlet.wsgi import ALREADY_HANDLED as EVENTLET_ALREADY_HANDLED

- +import eventlet.wsgi

-  import greenlet

-  

-  from gunicorn.workers.base_async import AsyncWorker

-  

- +# ALREADY_HANDLED is removed in 0.30.3+ now it's `WSGI_LOCAL.already_handled: bool`

- +# https://github.com/eventlet/eventlet/pull/544

- +EVENTLET_WSGI_LOCAL = getattr(eventlet.wsgi, "WSGI_LOCAL", None)

- +EVENTLET_ALREADY_HANDLED = getattr(eventlet.wsgi, "ALREADY_HANDLED", None)

- +

-  

-  def _eventlet_socket_sendfile(self, file, offset=0, count=None):

-      # Based on the implementation in gevent which in turn is slightly

- @@ -125,6 +130,10 @@ class EventletWorker(AsyncWorker):

-          patch_sendfile()

-  

-      def is_already_handled(self, respiter):

- +        # eventlet >= 0.30.3

- +        if getattr(EVENTLET_WSGI_LOCAL, "already_handled", None):

- +            raise StopIteration()

- +        # eventlet < 0.30.3

-          if respiter == EVENTLET_ALREADY_HANDLED:

-              raise StopIteration()

-          return super().is_already_handled(respiter)

- -- 

- 2.35.3

- 

file modified
+29 -5
@@ -6,17 +6,14 @@ 

  speedy.}

  

  Name:           python-%{srcname}

- Version:        20.1.0

- Release:        7%{?dist}

+ Version:        21.2.0

+ Release:        2%{?dist}

  Summary:        Python WSGI HTTP Server

  License:        MIT

  URL:            https://gunicorn.org/

  Source:         %pypi_source %{srcname}

  # distro-specific, not upstreamable

  Patch:          0001-use-dev-log-for-syslog.patch

- # Patch for newer eventlet

- # https://github.com/benoitc/gunicorn/commit/6a8ebb4844b2f28596ffe7421eb9f7d08c8dc4d8

- Patch:          0002-eventlet-worker-ALREADY_HANDLED-WSGI_LOCAL.patch

  BuildArch:      noarch

  

  %description %{_description}
@@ -34,6 +31,11 @@ 

  %description doc

  Documentation for the %{name} package.

  

+ # There are a few extras that we're not creating subpackages for:

+ # tornado: described upstream as "not recommended"

+ # gthread: no additional dependencies

+ %pyproject_extras_subpkg -n python3-%{srcname} gevent eventlet setproctitle

+ 

  %prep

  %autosetup -n %{srcname}-%{version} -p 1

  # disable code coverage checks
@@ -68,6 +70,28 @@ 

  %doc docs/build/html/*

  

  %changelog

+ * Wed Sep 06 2023 Carl George <carlwgeorge@fedoraproject.org> - 21.2.0-2

+ - Add subpackages for gevent, eventlet, and setproctitle extras

+ 

+ * Thu Aug 31 2023 Carl George <carlwgeorge@fedoraproject.org> - 21.2.0-1

+ - Update to version 21.2.0, resolves rhbz#2223435

+ 

+ * Fri Jul 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 20.1.0-12

+ - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild

+ 

+ * Wed Jun 28 2023 Python Maint <python-maint@redhat.com> - 20.1.0-11

+ - Rebuilt for Python 3.12

+ 

+ * Sat Jun 24 2023 Orion Poplawski <orion@nwra.com> - 20.1.0-10

+ - Remove unneeded dependency on aiohttp - resolves circular dep

+ 

+ * Fri Apr 07 2023 Benjamin A. Beasley <code@musicinmybrain.net> - 20.1.0-9

+ - Remove setuptools dependency. Fixes DeprecationWarning for pkg_resources;

+   closes RHBZ#2183385

+ 

+ * Fri Jan 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 20.1.0-8

+ - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild

+ 

  * Wed Jul 27 2022 Carl George <carl@george.computer> - 20.1.0-7

  - Convert to pyproject macros

  - Build docs with make

file modified
+1 -1
@@ -1,1 +1,1 @@ 

- SHA512 (gunicorn-20.1.0.tar.gz) = 586c7373504b4018fd462dc9c728991a8cc9f2be71fc2fb5aa23707ff6157dd3953121f6a070cae64d58b10f9ddf77ad59b66ed33981d37919b4764c60609027

+ SHA512 (gunicorn-21.2.0.tar.gz) = 5d3117133ecbf9b8fded9c0ce69206916d273c284726d2a62e1d1d107560f22593baab032afa51e71b004a8b1e47afafd3fd1350b850ca45c1d7064075b795d3

EPEL 9 has eventlet 0.33.3. Proper support for eventlet >= 0.30.3 wasn't added gunicorn 21.0.0. EPEL 9 currenlty has gunicorn 20.1.0 with a backported patch of the upstream commit to address that incompatibility. Instead of relying on the backported patch, we can drop it and fast-forwarding the epel9 branch to what is currently in rawhide. This will take the package to version 21.2.0, which per the upstream changelog involves no breaking changes. This will also give us the recently added Python extras subpackages.

Pull-Request has been merged by carlwgeorge

8 months ago