From 6753dc33b870df53a45bd8f3a715d39a80d23636 Mon Sep 17 00:00:00 2001 From: Barbara Kemper Date: Wed, 17 Sep 2025 09:15:34 -0400 Subject: [PATCH] Prepare for Python 3.13 Signed-off-by: Barbara Kemper --- README.md | 2 +- cicd/install-tk.py | 1 + doc/source/install.rst | 4 ++-- setup.py | 1 + swat/cas/table.py | 8 ++++---- swat/readme.md | 2 +- 6 files changed, 10 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 0ed0d97c..ed7e889f 100755 --- a/README.md +++ b/README.md @@ -28,7 +28,7 @@ To view updates to this project see the [Change Log](https://github.com/sassoftw To access the CAS binary protocol (recommended), you need the following: -* **64-bit** Python 3.7 to 3.12 on Windows or Linux (see shared library notes below) +* **64-bit** Python 3.7 to 3.13 on Windows or Linux (see shared library notes below) The binary protocol requires pre-compiled components found in the `pip` installer only. These pieces are not available as source code and diff --git a/cicd/install-tk.py b/cicd/install-tk.py index 7f93b666..98936be5 100755 --- a/cicd/install-tk.py +++ b/cicd/install-tk.py @@ -287,6 +287,7 @@ def get_python_versions(): versions.add('3.10') versions.add('3.11') versions.add('3.12') + versions.add('3.13') return versions diff --git a/doc/source/install.rst b/doc/source/install.rst index e39f669e..0989dc38 100755 --- a/doc/source/install.rst +++ b/doc/source/install.rst @@ -7,7 +7,7 @@ Installation The SWAT package is installed using the ``pip`` command. The requirements for using the binary protocol of CAS (recommended) are as follows. -* **64-bit** Python 3.7 - 3.12 on Linux or Windows +* **64-bit** Python 3.7 - 3.13 on Linux or Windows See additional shared library notes below. @@ -19,7 +19,7 @@ amounts of data. It also offers more advanced data loading from the client and data formatting features. To access the CAS REST interface only, you can use the pure Python code which -runs in Python 3.7 - 3.12. You will still need Pandas installed. While not as +runs in Python 3.7 - 3.13. You will still need Pandas installed. While not as fast as the binary protocol, the pure Python interface is more portable. For more information, see :ref:`Binary vs. REST `. diff --git a/setup.py b/setup.py index dec67c98..468764fa 100755 --- a/setup.py +++ b/setup.py @@ -65,6 +65,7 @@ def get_file(fname): 'Programming Language :: Python :: 3.10', 'Programming Language :: Python :: 3.11', 'Programming Language :: Python :: 3.12', + 'Programming Language :: Python :: 3.13', 'Topic :: Scientific/Engineering', ], ) diff --git a/swat/cas/table.py b/swat/cas/table.py index f6dee434..b2e1602c 100755 --- a/swat/cas/table.py +++ b/swat/cas/table.py @@ -5049,7 +5049,7 @@ def median(self, axis=None, skipna=None, level=None, numeric_only=None, ------- :class:`pandas.Series` If no by groups are specified. - :class:`pandas.Dataframe` + :class:`pandas.DataFrame` If by groups are specified. ''' @@ -5086,7 +5086,7 @@ def min(self, axis=None, skipna=True, level=None, numeric_only=False, ------- :class:`pandas.Series` If no by groups are specified. - :class:`pandas.Dataframe` + :class:`pandas.DataFrame` If by groups are specified. ''' @@ -5270,7 +5270,7 @@ def mode(self, axis=0, numeric_only=False, max_tie=100, skipna=True): ------- :class:`pandas.Series` If no By groups are specified. - :class:`pandas.Dataframe` + :class:`pandas.DataFrame` If By groups are specified. ''' @@ -5387,7 +5387,7 @@ def quantile(self, q=0.5, axis=0, numeric_only=True, interpolation='nearest', ------- :class:`pandas.Series` If no By groups are specified, or only a single quantile is requested. - :class:`pandas.Dataframe` + :class:`pandas.DataFrame` If By groups are specified. ''' diff --git a/swat/readme.md b/swat/readme.md index d2568a80..d706a0bc 100644 --- a/swat/readme.md +++ b/swat/readme.md @@ -1,4 +1,4 @@ -For **Python 3.12 on Windows only**, the following modification was made to the `pyport.h` file while building the SWAT C extensions: +For **Python 3.12+ on Windows only**, the following modification was made to the `pyport.h` file while building the SWAT C extensions: * Updated the `#define` for `ALWAYS_INLINE`
**Previous Definition :**