Compare commits

..

No commits in common. "c9" and "c9-beta" have entirely different histories.
c9 ... c9-beta

4 changed files with 32 additions and 61 deletions

2
.gitignore vendored
View File

@ -1 +1 @@
SOURCES/websockets-14.2.tar.gz SOURCES/websockets-11.0.3.tar.gz

View File

@ -1 +1 @@
b30f7f15e69192894d232e8097f49006865203e0 SOURCES/websockets-14.2.tar.gz 3a82ef3e6015d985564ed04d2fbc308e0ee8d187 SOURCES/websockets-11.0.3.tar.gz

View File

@ -1,37 +0,0 @@
diff --git a/experiments/compression/corpus.py b/experiments/compression/corpus.py
index 56e2621..c8bd343 100644
--- a/experiments/compression/corpus.py
+++ b/experiments/compression/corpus.py
@@ -10,16 +10,17 @@ import time
def github_commits():
OAUTH_TOKEN = getpass.getpass("OAuth Token? ")
- COMMIT_API = (
- f'curl -H "Authorization: token {OAUTH_TOKEN}" '
- f"https://api.github.com/repos/python-websockets/websockets/git/commits/:sha"
- )
+
+ def fetch_commit(sha):
+ url = f"https://api.github.com/repos/python-websockets/websockets/git/commits/{sha}"
+ headers = ["-H", f"Authorization: token {OAUTH_TOKEN}"]
+ cmd = ["curl"] + headers + [url]
+ return subprocess.check_output(cmd)
commits = []
head = subprocess.check_output(
- "git rev-parse origin/main",
- shell=True,
+ ["git", "rev-parse", "origin/main"],
text=True,
).strip()
todo = [head]
@@ -27,7 +28,7 @@ def github_commits():
while todo:
sha = todo.pop(0)
- commit = subprocess.check_output(COMMIT_API.replace(":sha", sha), shell=True)
+ commit = fetch_commit(sha)
commits.append(commit)
seen.add(sha)
for parent in json.loads(commit)["parents"]:

View File

@ -1,26 +1,30 @@
%global pypi_name websockets %global pypi_name websockets
%ifarch x86_64
%bcond_without tests
%endif
Name: python-%{pypi_name} Name: python-%{pypi_name}
Version: 14.2 Version: 11.0.3
Release: 2%{?dist} Release: 6%{?dist}
Summary: Implementation of the WebSocket Protocol for Python Summary: Implementation of the WebSocket Protocol for Python
License: BSD-3-Clause License: BSD
URL: https://github.com/aaugustin/websockets URL: https://github.com/aaugustin/websockets
Source0: %{pypi_source %{pypi_name}} Source0: %{url}/archive/%{version}/%{pypi_name}-%{version}.tar.gz
# remove shell=True from experiments/compression/corpus.py
Patch0: remove-shell-true.patch
BuildRequires: gcc BuildRequires: gcc
%if %{with tests}
BuildRequires: python3dist(pytest)
%endif
%global _description %{expand: %global _description %{expand:
websockets is a library for developing WebSocket servers and clients in websockets is a library for developing WebSocket servers and clients in
Python. It implements RFC 6455 with a focus on correctness and simplicity. It Python. It implements RFC 6455 with a focus on correctness and simplicity. It
passes the Autobahn Testsuite. passes the Autobahn Testsuite.
Built on top of Python's asynchronous I/O support introduced in PEP 3156, it Built on top of Pythons asynchronous I/O support introduced in PEP 3156, it
provides an API based on coroutines, making it easy to write highly concurrent provides an API based on coroutines, making it easy to write highly concurrent
applications.} applications.}
@ -35,19 +39,25 @@ BuildRequires: python3-devel
%prep %prep
%autosetup -n %{pypi_name}-%{version} -p1 %autosetup -n %{pypi_name}-%{version} -p1
# Create setup.cfg to fix package name metadata # Upstream uses a src package but does not specify this explicitly in the
cat > setup.cfg <<EOF # pyproject.toml. This causes the build to fail on CentOS Stream 9 and RHEL 9.
# Workaround this problem by adding a very small setup.cfg file that specifies where
# the source code lives inside `src`.
%if %{defined el9}
cat << EOF > setup.cfg
[metadata] [metadata]
name = websockets name = websockets
[options] [options]
packages = find: package_dir=
package_dir = =src
= src packages=find:
[options.packages.find] [options.packages.find]
where = src where=src
EOF EOF
%endif
%generate_buildrequires %generate_buildrequires
%pyproject_buildrequires %pyproject_buildrequires
@ -62,19 +72,17 @@ EOF
%check %check
%pyproject_check_import %pyproject_check_import
%if %{with tests}
# Skip some tests that require network connectivity and/or a running daemon.
# Investigate: test_server_shuts_down_* tests hang or fail on Python 3.12
%pytest -v --ignore compliance --ignore tests/sync -k "not test_explicit_host_port and not test_server_shuts_down"
%endif
%files -n python3-%{pypi_name} -f %{pyproject_files} %files -n python3-%{pypi_name} -f %{pyproject_files}
%doc README.rst %doc README.rst
%changelog %changelog
* Thu Apr 09 2026 Kseniia Nivnia <knivnia@redhat.com> - 14.2-2
- Bump revision to address packaging issues
Resolves: RHEL-157865
* Tue Sep 09 2025 Kseniia Nivnia <knivnia@redhat.com> - 14.2-1
- Update to 14.2 and add patch to remove shell=True
Resolves: RHEL-113034
* Tue Jan 30 2024 Major Hayden <mhayden@redhat.com> - 11.0.3-6 * Tue Jan 30 2024 Major Hayden <mhayden@redhat.com> - 11.0.3-6
- Bump revision to add gating.yaml - Bump revision to add gating.yaml