Skip to content

Commit db05610

Browse files
authored
Shift Python support window to 3.10-3.12 (#527)
Routine update for SmartRedis. - Add support for Python 3.12 - Update `hiredis` and `redis++` to versions complying with new required `CMAKE_POLICY_VERSION_MINIMUM` - Update artifact naming to comply with new `upload-artifact@v4` behavior - Update reference to RedisAI repo
1 parent 73cb58b commit db05610

File tree

11 files changed

+20
-15
lines changed

11 files changed

+20
-15
lines changed

.github/workflows/build_wheels.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ jobs:
4646
strategy:
4747
fail-fast: false
4848
matrix:
49-
os: [ubuntu-22.04, macos-12]
49+
os: [ubuntu-24.04, macos-13, macos-15]
5050
gcc_v: [11] # Version of GFortran we want to use.
5151
env:
5252
FC: gfortran-${{ matrix.gcc_v }}
@@ -90,4 +90,5 @@ jobs:
9090

9191
- uses: actions/upload-artifact@v4
9292
with:
93+
name: smartredis-wheels-${{ matrix.os }}
9394
path: ./wheelhouse/*.whl

.github/workflows/docker.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ jobs:
3838
fail-fast: true
3939
matrix:
4040
os: [ubuntu-22.04] # cannot test on macOS as docker isn't supported on Mac
41-
rai_v: [1.2.5] # verisons of RedisAI
41+
rai_v: [1.2.5] # versions of RedisAI
4242

4343
# Service containers to run with docker tests
4444
services:

.github/workflows/release.yml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ jobs:
4848
strategy:
4949
fail-fast: false
5050
matrix:
51-
os: [ubuntu-24.04, macos-12]
51+
os: [ubuntu-24.04, macos-13, macos-15]
5252
gcc_v: [11] # Version of GFortran we want to use.
5353
env:
5454
FC: gfortran-${{ matrix.gcc_v }}
@@ -92,6 +92,7 @@ jobs:
9292

9393
- uses: actions/upload-artifact@v4
9494
with:
95+
name: smartredis-wheels-${{ matrix.os }}
9596
path: ./wheelhouse/*.whl
9697

9798
build_sdist:
@@ -103,7 +104,7 @@ jobs:
103104
- uses: actions/setup-python@v2
104105
name: Install Python
105106
with:
106-
python-version: '3.9'
107+
python-version: '3.10'
107108

108109
- name: Build sdist
109110
run: |
@@ -112,6 +113,7 @@ jobs:
112113
113114
- uses: actions/upload-artifact@v4
114115
with:
116+
name: artifact
115117
path: dist/*.tar.gz
116118

117119

.github/workflows/run_tests.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ jobs:
6464
matrix:
6565
os: [ubuntu-24.04] # cannot test on macOS as docker isn't supported on Mac
6666
rai_v: [1.2.7] # versions of RedisAI
67-
py_v: ['3.9.x', '3.10.x', '3.11.x'] # versions of Python
67+
py_v: ['3.10.x', '3.11.x', '3.12.x'] # versions of Python
6868
compiler: [nvhpc-24-5, intel-2024.0, gcc-11, gcc-12, gcc-13, gcc-14] # intel compiler, and versions of GNU compiler
6969
link_type: [shared, static]
7070
env:

CMakeLists.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ endif()
8080
# Add hiredis as an external project
8181
ExternalProject_Add(hiredis
8282
GIT_REPOSITORY https://github.com/redis/hiredis.git
83-
GIT_TAG v1.2.0
83+
GIT_TAG v1.3.0
8484
GIT_SHALLOW 1
8585
CMAKE_ARGS
8686
-DBUILD_SHARED_LIBS=OFF
@@ -106,8 +106,8 @@ set_target_properties(libhiredis PROPERTIES
106106
# Define redis++ as an external project
107107
ExternalProject_Add(redis++
108108
GIT_REPOSITORY https://github.com/sewenew/redis-plus-plus.git
109-
GIT_TAG 1.3.10
110-
GIT_SHALLOW 1
109+
GIT_TAG e30d4c4c557568b01d5adce9df2714de8d3921c2
110+
GIT_SHALLOW 0
111111
INSTALL_COMMAND make install PREFIX=${CMAKE_INSTALL_PREFIX}
112112
CMAKE_ARGS -DREDIS_PLUS_PLUS_BUILD_TEST=OFF
113113
-DREDIS_PLUS_PLUS_BUILD_SHARED=OFF

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ PEDANTIC := OFF
4343
# Test dependencies
4444
REDIS_URL := https://github.com/redis/redis.git
4545
REDIS_VER := 7.2.4
46-
REDISAI_URL := https://github.com/RedisAI/RedisAI.git
46+
REDISAI_URL := https://github.com/RedisAI/redis-inference-optimization.git
4747
CATCH2_URL := https://github.com/catchorg/Catch2.git
4848
CATCH2_VER := v2.13.6
4949
LCOV_URL := https://github.com/linux-test-project/lcov.git

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ SmartRedis provides clients in the following languages:
3434

3535
| Language | Version/Standard |
3636
|------------|:----------------------------------------------:|
37-
| Python | 3.9, 3.10, 3.11 |
37+
| Python | 3.10, 3.11, 3.12 |
3838
| C++ | C++17 |
3939
| C | C99 |
4040
| Fortran | Fortran 2018 (GNU/Intel), 2003 (PGI/Nvidia) |

doc/changelog.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ To be released at a future time.
66

77
Description
88

9+
- Update supported Python versions to 3.10, 3.11, and 3.12
910
- Bump versions for upload/download-artifact Github Actions
1011
- Add Client API functions to put, get, unpack,
1112
delete, poll, and check for existance of raw bytes for the
@@ -15,6 +16,8 @@ Description
1516

1617
Detailed Notes
1718

19+
- Update supported Python versions to 3.10, 3.11, and 3.12
20+
([PR527](https://github.com/CrayLabs/SmartRedis/pull/527))
1821
- Bump versions for upload/download-artifact Github Actions
1922
([PR526](https://github.com/CrayLabs/SmartRedis/pull/526))
2023
- Add Client API functions to put, get, unpack,

doc/overview.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ below summarizes the language standards for each client.
4747
* - Language
4848
- Version/Standard
4949
* - Python
50-
- 3.9-3.11
50+
- 3.10-3.12
5151
* - C++
5252
- C++17
5353
* - C

pyproject.toml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
21
[build-system]
32
requires = ["setuptools>=42",
43
"wheel",
@@ -7,7 +6,7 @@ build-backend = "setuptools.build_meta"
76

87
[tool.black]
98
line-length = 88
10-
target-version = ['py39', 'py310', 'py311']
9+
target-version = ['py310', 'py311', 'py312']
1110
exclude = '''
1211
(
1312
| \.egg

0 commit comments

Comments
 (0)