Skip to content

Commit d76ab3f

Browse files
committed
bump wamp-cicd; update changelog and release notes for 25.12.1
1 parent f75cd8e commit d76ab3f

File tree

3 files changed

+246
-75
lines changed

3 files changed

+246
-75
lines changed

docs/changelog.rst

Lines changed: 64 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,75 @@
11
:tocdepth: 1
22

3-
.. _changelog:
4-
53
Changelog
64
=========
75

86
25.12.1
97
-------
108

9+
**New**
10+
11+
* Add vendored Flatbuffers (v25.9.23) (#1761)
12+
* Add WAMP serdes functional and benchmark testing; WAMP-Flatbuffers; WAMP Serializer Composition (transport/payload) (#1765)
13+
14+
**Fix**
15+
16+
* Fix 1757 (#1758)
17+
* Fix 1767 (#1769)
18+
* Fix 1771 complete (#1774)
19+
20+
**Other**
21+
22+
* Rel v25.10.2 (#1734)
23+
* Rel v25.10.2 part2 (#1741)
24+
* WAMP Flatbuffers serialization test coverage; WAMP message classes refactoring (#1773)
25+
* Modernization phase 1.1 (#1785)
26+
* Phase 1.2: Build Tooling Modernization (#1788)
27+
* Phase 1.3: CI/CD Modernization (#1791)
28+
* Rel25 12 1 (#1794)
29+
* Modernization phase 1.4 (#1797)
30+
* Add Sphinx label to changelog for cross-references
31+
* add changelog/release-notes for 25.12.1 - first draft
32+
* Refactor release recipes to use external scripts
33+
* Add automated release docs generation recipes
34+
* Add changelog and release notes for 25.12.1
35+
* Bump .cicd submodule: fix recursive copy for directories
36+
* Bump .cicd submodule: fix download retry wiping other artifacts
37+
* Bump .cicd submodule: prefix matching for artifact download
38+
* Bump .cicd submodule: include-hidden-files fix
39+
* Remove workaround for hidden files, use .audit/ directly
40+
* Workaround: copy .audit to non-hidden dir for artifact upload
41+
* Fix container jobs: use relative paths for artifact upload
42+
* Fix container job: capture workspace path via pwd at runtime
43+
* Debug container workspace paths and retry github.workspace
44+
* Fix container job: get workspace path at runtime via pwd
45+
* Use env.GITHUB_WORKSPACE for container job artifact paths
46+
* Use absolute paths for all download-artifact-verified calls
47+
* Use absolute paths for all upload-artifact-verified calls
48+
* Fix summary upload: use relative path for .audit directory
49+
* Fix summary upload: use directory path instead of file path
50+
* Pass artifact names via job outputs for verified downloads
51+
* Add verbose permission logging to debug wstest artifact uploads
52+
* Use sudo chown to fix wstest directory permissions
53+
* Fix permissions on wstest directories before artifact upload
54+
* Fix multi-path artifact upload for verified action
55+
* Replace actions/*-artifact@v4 with verified actions
56+
* Fix GitHub Discussions category for CI-CD notifications
57+
* Add automatic GitHub Discussions post for stable releases
58+
* Add check-release-fileset action to release workflows
59+
* Fix release-stable job: use dynamic artifact names with meta-checksums
60+
* Add tag triggers to all workflows
61+
* Update wamp-cicd submodule for CRLF line ending fixes
62+
* Fix wheels-docker workflow: remove source dist copy
63+
* Separate wheel and source distribution builds
64+
* Add self-verification to catch GitHub artifact serving bugs
65+
* Use unique artifact names with meta-checksum for reliable downloads
66+
* Replace pattern-based downloads with individual verified downloads
67+
* Update .cicd submodule: add overwrite parameter to download-artifact-verified
68+
* Update .cicd submodule: fix unzip to force overwrite without prompting
69+
* Update .cicd submodule: fix download-artifact-verified to use gh api
70+
* fix: Output Sphinx docs to RTD-required directory
71+
* fix RTD project name
72+
1173
**Supply Chain Security**
1274

1375
* new: Migrate to verified artifact actions (wamp-proto/wamp-cicd) for cryptographic integrity verification

docs/release-notes.rst

Lines changed: 181 additions & 72 deletions
Original file line numberDiff line numberDiff line change
@@ -15,127 +15,236 @@ For detailed technical changes, see the :ref:`changelog <changelog>`.
1515

1616
**Source Build:** `master-202512092131 <https://github.com/crossbario/autobahn-python/releases/tag/master-202512092131>`__
1717

18-
**WebSocket Conformance**
18+
WebSocket Conformance
19+
^^^^^^^^^^^^^^^^^^^^^
1920

2021
Autobahn|Python passes 100% of the WebSocket conformance tests from the
2122
`Autobahn|Testsuite <https://github.com/crossbario/autobahn-testsuite>`_.
2223

23-
.. list-table:: Conformance Test Results
24-
:header-rows: 1
25-
:widths: 30 20 20 30
26-
27-
* - Configuration
28-
- Client
29-
- Server
30-
- Notes
31-
* - with-nvx (NVX acceleration enabled)
32-
- 100%
33-
- 100%
34-
- Hardware-accelerated XOR masking
35-
* - without-nvx (pure Python)
36-
- 100%
37-
- 100%
38-
- Fallback implementation
24+
Configuration: with-nvx (NVX acceleration)
25+
""""""""""""""""""""""""""""""""""""""""""
3926

40-
**Release Artifacts**
27+
**Client Conformance**
28+
29+
.. list-table::
30+
:header-rows: 1
31+
:widths: 60 20 10
32+
33+
* - Testee
34+
- Cases
35+
- Status
36+
* - ``Autobahn/25.12.1-NVXCFFI/1.18.0.dev0-Twisted/25.5.0-PyPy/3.11.13``
37+
- 246 / 246
38+
- ✅
39+
* - ``Autobahn/25.12.1-NVXCFFI/1.18.0.dev0-asyncio-PyPy/3.11.13``
40+
- 246 / 246
41+
- ✅
42+
* - ``Autobahn/25.12.1-NVXCFFI/2.0.0-Twisted/25.5.0-CPython/3.11.14``
43+
- 246 / 246
44+
- ✅
45+
* - ``Autobahn/25.12.1-NVXCFFI/2.0.0-Twisted/25.5.0-CPython/3.14.2``
46+
- 246 / 246
47+
- ✅
48+
* - ``Autobahn/25.12.1-NVXCFFI/2.0.0-asyncio-CPython/3.11.14``
49+
- 246 / 246
50+
- ✅
51+
* - ``Autobahn/25.12.1-NVXCFFI/2.0.0-asyncio-CPython/3.14.2``
52+
- 246 / 246
53+
- ✅
54+
55+
**Server Conformance**
56+
57+
.. list-table::
58+
:header-rows: 1
59+
:widths: 60 20 10
60+
61+
* - Testee
62+
- Cases
63+
- Status
64+
* - ``Autobahn/25.12.1-NVXCFFI/1.18.0.dev0-Twisted/25.5.0-PyPy/3.11.13``
65+
- 246 / 246
66+
- ✅
67+
* - ``Autobahn/25.12.1-NVXCFFI/1.18.0.dev0-asyncio-PyPy/3.11.13``
68+
- 246 / 246
69+
- ✅
70+
* - ``Autobahn/25.12.1-NVXCFFI/2.0.0-Twisted/25.5.0-CPython/3.11.14``
71+
- 246 / 246
72+
- ✅
73+
* - ``Autobahn/25.12.1-NVXCFFI/2.0.0-Twisted/25.5.0-CPython/3.14.2``
74+
- 246 / 246
75+
- ✅
76+
* - ``Autobahn/25.12.1-NVXCFFI/2.0.0-asyncio-CPython/3.11.14``
77+
- 246 / 246
78+
- ✅
79+
* - ``Autobahn/25.12.1-NVXCFFI/2.0.0-asyncio-CPython/3.14.2``
80+
- 246 / 246
81+
- ✅
82+
83+
Configuration: without-nvx (pure Python)
84+
""""""""""""""""""""""""""""""""""""""""""
85+
86+
**Client Conformance**
87+
88+
.. list-table::
89+
:header-rows: 1
90+
:widths: 60 20 10
91+
92+
* - Testee
93+
- Cases
94+
- Status
95+
* - ``Autobahn/25.12.1-Twisted/25.5.0-CPython/3.11.14``
96+
- 246 / 246
97+
- ✅
98+
* - ``Autobahn/25.12.1-Twisted/25.5.0-CPython/3.14.2``
99+
- 246 / 246
100+
- ✅
101+
* - ``Autobahn/25.12.1-Twisted/25.5.0-PyPy/3.11.13``
102+
- 246 / 246
103+
- ✅
104+
* - ``Autobahn/25.12.1-asyncio-CPython/3.11.14``
105+
- 246 / 246
106+
- ✅
107+
* - ``Autobahn/25.12.1-asyncio-CPython/3.14.2``
108+
- 246 / 246
109+
- ✅
110+
* - ``Autobahn/25.12.1-asyncio-PyPy/3.11.13``
111+
- 246 / 246
112+
- ✅
113+
114+
**Server Conformance**
115+
116+
.. list-table::
117+
:header-rows: 1
118+
:widths: 60 20 10
119+
120+
* - Testee
121+
- Cases
122+
- Status
123+
* - ``Autobahn/25.12.1-Twisted/25.5.0-CPython/3.11.14``
124+
- 246 / 246
125+
- ✅
126+
* - ``Autobahn/25.12.1-Twisted/25.5.0-CPython/3.14.2``
127+
- 246 / 246
128+
- ✅
129+
* - ``Autobahn/25.12.1-Twisted/25.5.0-PyPy/3.11.13``
130+
- 246 / 246
131+
- ✅
132+
* - ``Autobahn/25.12.1-asyncio-CPython/3.11.14``
133+
- 246 / 246
134+
- ✅
135+
* - ``Autobahn/25.12.1-asyncio-CPython/3.14.2``
136+
- 246 / 246
137+
- ✅
138+
* - ``Autobahn/25.12.1-asyncio-PyPy/3.11.13``
139+
- 246 / 246
140+
- ✅
141+
142+
Release Artifacts
143+
^^^^^^^^^^^^^^^^^
41144

42145
Binary wheels are available for the following platforms:
43146

44147
.. list-table:: Platform Support Matrix
45148
:header-rows: 1
46-
:widths: 25 20 20 35
149+
:widths: 20 15 15 50
47150

48151
* - Platform
49152
- Python
50-
- Architecture
153+
- Arch
51154
- Wheel
52-
* - Linux (manylinux)
53-
- CPython 311
155+
* - Linux
156+
- CPython 3.11
157+
- x86_64
158+
- ``autobahn-25.12.1-cp311-cp311-manylinux1_x86_64.manylinux_2_34_x86_64.manylinux_2_5_x86_64.whl``
159+
* - Linux
160+
- CPython 3.11
54161
- ARM64
55162
- ``autobahn-25.12.1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl``
56-
* - Windows
57-
- CPython 313
163+
* - Linux
164+
- CPython 3.12
58165
- x86_64
59-
- ``autobahn-25.12.1-cp313-cp313-win_amd64.whl``
60-
* - Linux (manylinux)
61-
- CPython 313
166+
- ``autobahn-25.12.1-cp312-cp312-manylinux1_x86_64.manylinux_2_34_x86_64.manylinux_2_5_x86_64.whl``
167+
* - Linux
168+
- CPython 3.13
169+
- x86_64
170+
- ``autobahn-25.12.1-cp313-cp313-manylinux1_x86_64.manylinux_2_34_x86_64.manylinux_2_5_x86_64.whl``
171+
* - Linux
172+
- CPython 3.13
62173
- ARM64
63174
- ``autobahn-25.12.1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl``
64-
* - Windows
65-
- CPython 312
175+
* - Linux
176+
- CPython 3.14
66177
- x86_64
67-
- ``autobahn-25.12.1-cp312-cp312-win_amd64.whl``
68-
* - macOS
69-
- CPython 313
70-
- ARM64
71-
- ``autobahn-25.12.1-cp313-cp313-macosx_15_0_arm64.whl``
72-
* - Linux (manylinux)
73-
- CPython 312
178+
- ``autobahn-25.12.1-cp314-cp314-manylinux1_x86_64.manylinux_2_34_x86_64.manylinux_2_5_x86_64.whl``
179+
* - Linux
180+
- PyPy 3.11
74181
- x86_64
75-
- ``autobahn-25.12.1-cp312-cp312-manylinux1_x86_64.manylinux_2_34_x86_64.manylinux_2_5_x86_64.whl``
76-
* - Linux (manylinux)
77-
- PyPy 311
182+
- ``autobahn-25.12.1-pp311-pypy311_pp73-manylinux1_x86_64.manylinux_2_34_x86_64.manylinux_2_5_x86_64.whl``
183+
* - Linux
184+
- PyPy 3.11
78185
- ARM64
79186
- ``autobahn-25.12.1-pp311-pypy311_pp73-manylinux2014_aarch64.manylinux_2_17_aarch64.whl``
80-
* - Linux (manylinux)
81-
- CPython 314
82-
- x86_64
83-
- ``autobahn-25.12.1-cp314-cp314-manylinux1_x86_64.manylinux_2_34_x86_64.manylinux_2_5_x86_64.whl``
84-
* - Windows
85-
- CPython 311
86-
- x86_64
87-
- ``autobahn-25.12.1-cp311-cp311-win_amd64.whl``
88187
* - macOS
89-
- CPython 314
188+
- CPython 3.13
189+
- ARM64
190+
- ``autobahn-25.12.1-cp313-cp313-macosx_15_0_arm64.whl``
191+
* - macOS
192+
- CPython 3.14
90193
- ARM64
91194
- ``autobahn-25.12.1-cp314-cp314-macosx_15_0_arm64.whl``
92-
* - Linux (manylinux)
93-
- PyPy 311
94-
- x86_64
95-
- ``autobahn-25.12.1-pp311-pypy311_pp73-manylinux1_x86_64.manylinux_2_34_x86_64.manylinux_2_5_x86_64.whl``
96195
* - macOS
97-
- PyPy 311
196+
- PyPy 3.11
98197
- ARM64
99198
- ``autobahn-25.12.1-pp311-pypy311_pp73-macosx_15_0_arm64.whl``
100199
* - Windows
101-
- CPython 314
200+
- CPython 3.11
102201
- x86_64
103-
- ``autobahn-25.12.1-cp314-cp314-win_amd64.whl``
104-
* - Linux (manylinux)
105-
- CPython 311
202+
- ``autobahn-25.12.1-cp311-cp311-win_amd64.whl``
203+
* - Windows
204+
- CPython 3.12
106205
- x86_64
107-
- ``autobahn-25.12.1-cp311-cp311-manylinux1_x86_64.manylinux_2_34_x86_64.manylinux_2_5_x86_64.whl``
206+
- ``autobahn-25.12.1-cp312-cp312-win_amd64.whl``
108207
* - Windows
109-
- PyPy 311
208+
- CPython 3.13
110209
- x86_64
111-
- ``autobahn-25.12.1-pp311-pypy311_pp73-win_amd64.whl``
112-
* - Linux (manylinux)
113-
- CPython 313
210+
- ``autobahn-25.12.1-cp313-cp313-win_amd64.whl``
211+
* - Windows
212+
- CPython 3.14
114213
- x86_64
115-
- ``autobahn-25.12.1-cp313-cp313-manylinux1_x86_64.manylinux_2_34_x86_64.manylinux_2_5_x86_64.whl``
214+
- ``autobahn-25.12.1-cp314-cp314-win_amd64.whl``
215+
* - Windows
216+
- PyPy 3.11
217+
- x86_64
218+
- ``autobahn-25.12.1-pp311-pypy311_pp73-win_amd64.whl``
116219

117220
Source distribution: ``autobahn-25.12.1.tar.gz``
118221

119-
**Artifact Verification**
222+
Artifact Verification
223+
^^^^^^^^^^^^^^^^^^^^^
120224

121225
All release artifacts include SHA256 checksums for integrity verification.
122-
Download ``CHECKSUMS.sha256`` from the GitHub Release to verify:
226+
227+
* `CHECKSUMS.sha256 <https://github.com/crossbario/autobahn-python/releases/download/master-202512092131/CHECKSUMS.sha256>`__
228+
229+
To verify a downloaded artifact:
123230

124231
.. code-block:: bash
125232
126-
# Verify a downloaded wheel
127-
openssl sha256 autobahn-*.whl
128-
# Compare with checksum in CHECKSUMS.sha256
233+
# Download checksum file
234+
curl -LO https://github.com/crossbario/autobahn-python/releases/download/master-202512092131/CHECKSUMS.sha256
129235
130-
**Release Links**
236+
# Verify a wheel (example)
237+
openssl sha256 autobahn-25.12.1-cp311-cp311-manylinux_2_28_x86_64.whl
238+
# Compare output with corresponding line in CHECKSUMS.sha256
239+
240+
Release Links
241+
^^^^^^^^^^^^^
131242

132243
* `GitHub Release <https://github.com/crossbario/autobahn-python/releases/tag/v25.12.1>`__
133244
* `PyPI Package <https://pypi.org/project/autobahn/25.12.1/>`__
134245
* `Documentation <https://autobahn.readthedocs.io/en/v25.12.1/>`__
135246

136-
**Detailed Changes**
137-
138-
* See :ref:`changelog <changelog>` (25.12.1 section)
247+
**Detailed Changes:** See :ref:`changelog` (25.12.1 section)
139248

140249
25.10.1 (2025-10-18)
141250
--------------------

0 commit comments

Comments
 (0)