I always check for build and clean tests (figured it's implied at this point given previous discussions), should we be doing something more for the drivers? I guess im wondering what's implied by "tested the build" for drivers? Thanks for posting the extra details either way.
On Fri, Mar 27, 2026 at 11:13 AM Bret McGuire <[email protected]> wrote: > A quick note here explaining some steps that can be taken to test and > validate this release. We did something similar > <https://lists.apache.org/thread/gpy5spj05dqorxffgrg76qc05rxbcgs5> for > the Java driver and it seemed to be useful for folks so I thought I'd try > it here as well. > > I'd recommend doing any of the testing below in a Python virtual > environment, especially if you're going to be installing anything; no > reason to mess with your global Python install. You can find out more > about virtualenvs here <https://virtualenv.pypa.io/en/latest/>. If > you're so inclined I'd also recommend looking into uv > <https://github.com/astral-sh/uv> to manage both your virtualenvs and > local Python installs. Not required by any means; it's perfectly fine to > just do something like "python -m venv my_venv". But if you're doing a lot > with Python environments uv has some really nice features. > > In no particular order: > > > - Validate that the release commit hash lines up to the tag referenced > above > - Locally build a source distribution and confirm that it matches up > to what's in SVN > - pip install build > - python -m build --sdist > - Download the source tarball from SVN and run unit tests locally > - pip install -r test-requirements.txt > - pytest tests/unit > - Try running some sample apps against the module currently available > on testpypi > - Similarly to what's done on the Java side with Nexus you can use > testpypi just like you'd normally use pypi > - pip install -i https://test.pypi.org/simple/ > cassandra-driver==3.30.0 > > > If you plan on installing cassandra-driver into your environment from > testpypi it might be useful to note which platform you're installing on. > Python supports the idea of binary builds of packages for specific > platforms and Python runtimes... that's what a wheel is. We've built a > number of wheels for common platforms for all Python versions supported by > this release, so if you do an install with one of those platform/Python > combinations you'll get the wheel and not have to build anything at install > time. If you use something other than these combinations (say an older > version of Python or trying an install on OpenIndiana) pip will try to > build it for you locally. Most installs will wind up using the wheels but > if somebody has a setup which allows us to test a non-wheel install that > would be pretty awesome. > > Let me know if you have any questions! > > - Bret - > > > On Thu, Mar 26, 2026 at 4:07 PM Nate McCall <[email protected]> wrote: > >> +1 >> (verified commit hash for 3.30.0 tag as 65b26fe4) >> >> On Wed, Mar 25, 2026 at 12:37 PM Bret McGuire <[email protected]> >> wrote: >> >>> Greetings all! I'm proposing the test build of Cassandra Python >>> Driver 3.30.0 for release. >>> >>> sha1: 65b26fe4a3076870436965a81be5327b759b3e64 >>> Git: >>> https://github.com/apache/cassandra-python-driver/releases/tag/3.30.0 >>> Source release: >>> https://dist.apache.org/repos/dist/dev/cassandra/cassandra-python-driver/3.30.0/ >>> Changelog: >>> https://github.com/apache/cassandra-python-driver/blob/trunk/CHANGELOG.rst#3300 >>> TestPypi: https://test.pypi.org/project/cassandra-driver/3.30.0/ >>> (includes wheels for release) >>> >>> This is the first release of the Python driver since its donation to >>> the Apache Software Foundation. We've updated the platform support to >>> follow our convention that all Python runtimes that are not EOL at time of >>> release are officially supported. For 3.30.0 that works out to CPython >>> 3.10 through 3.14, although in reality older Pythons will probably continue >>> to work well (we just don't officially support them). In terms of changes, >>> we dropped Python 3.9 (supported in 3.29.3) and added Python 3.14. >>> >>> This release also fixes a few issues with our wheel builds. As part >>> of these fixes we've dropped support for Win32 wheels entirely. Win32 >>> users can still use the driver... they'll just have to build the release at >>> install time. >>> >>> This release also marks our conversion away from setup.py and towards >>> pyproject.toml for managing project metadata. In the spirit of >>> pyproject.toml we've shifted towards a more declarative configuration model >>> and away from settings which can be overridden at runtime. All existing >>> configuration options should still be present... they likely just moved >>> around a bit. >>> >>> Finally, this release marks the eventlet, gevent and Twisted event >>> loops as deprecated following the previous conversation >>> <https://lists.apache.org/thread/49w0wbobzttpnqg05hqlnjpd1tvnd0v9> on >>> this list. These event loops will be removed in our next release (again >>> following the conclusion of the previous conversation). >>> >>> The vote will be open for 72 hours (longer if needed) until ~11:30pm >>> GMT on 27 March 2026. Everyone who has tested the build is invited to >>> vote. Votes by PMC members are considered binding. A vote passes if there >>> are at least three binding +1s and no -1's. >>> >>> Thanks all! >>> >>> - Bret - >>> >>> >>>
