Skip to content

Commit ea727cc

Browse files
committed
Add support for ES9 and drop unsupported dependencies
This commit adds support for elasticsearch-py 9.x and it also drops support for older and unsupported versions of python and django
1 parent 97de23a commit ea727cc

File tree

8 files changed

+51
-51
lines changed

8 files changed

+51
-51
lines changed

.github/workflows/ci.yml

Lines changed: 19 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -13,14 +13,25 @@ jobs:
1313
fail-fast: false
1414

1515
matrix:
16-
python-version: ["3.8", "3.9", "3.10", "3.11"]
17-
django-version: ["3.2", "4.1", "4.2"]
18-
es-dsl-version: ["6.4", "7.4"]
16+
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
17+
django-version: ["4.2", "4.2.8", "5.0", "5.1", "5.1.3", "5.2"]
1918
es-version: ["9.0.2"]
2019

2120
exclude:
22-
- python-version: "3.11"
23-
django-version: "3.2"
21+
- django-version: "4.2"
22+
python-version: "3.12"
23+
- django-version: "4.2"
24+
python-version: "3.13"
25+
- django-version: "4.2.8"
26+
python-version: "3.13"
27+
- django-version: "5.0"
28+
python-version: "3.9"
29+
- django-version: "5.1"
30+
python-version: "3.9"
31+
- django-version: "5.1.3"
32+
python-version: "3.9"
33+
- django-version: "5.2"
34+
python-version: "3.9"
2435

2536
steps:
2637
- name: Install and Run Elasticsearch
@@ -31,7 +42,7 @@ jobs:
3142
- uses: actions/checkout@v4
3243

3344
- name: Install Python ${{ matrix.python-version }}
34-
uses: actions/setup-python@v4
45+
uses: actions/setup-python@v5
3546
with:
3647
python-version: ${{ matrix.python-version }}
3748

@@ -47,12 +58,11 @@ jobs:
4758
run: |
4859
python -m pip install --upgrade pip
4960
python -m pip install "Django==${{ matrix.django-version }}"
50-
python -m pip install "elasticsearch-dsl==${{ matrix.es-dsl-version }}"
5161
python -m pip install -r requirements_test.txt
5262
53-
- name: Run tests with Python ${{ matrix.python-version }} and Django ${{ matrix.django-version }} and elasticsearch-dsl-py ${{ matrix.es-dsl-version }}
63+
- name: Run tests with Python ${{ matrix.python-version }} and Django ${{ matrix.django-version }}
5464
run: |
55-
TOX_ENV=$(echo "py${{ matrix.python-version }}-django-${{ matrix.django-version }}-es${{ matrix.es-dsl-version }}" | tr -d .)
65+
TOX_ENV=$(echo "py${{ matrix.python-version }}-dj${{ matrix.django-version }}" | tr -d .)
5666
python -m tox -e $TOX_ENV -- --elasticsearch
5767
python -m tox -e $TOX_ENV -- --elasticsearch --signal-processor celery
5868

.readthedocs.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,4 @@ sphinx:
66
formats: all
77

88
python:
9-
version: 3.8
9+
version: 3.9

README.rst

Lines changed: 4 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -30,28 +30,19 @@ Features
3030
- Index fast using `parallel` indexing.
3131
- Requirements
3232

33-
- Django >= 3.2
34-
- Python 3.8, 3.9, 3.10, 3.11
33+
- Django >= 4.2
34+
- Python 3.9, 3.10, 3.11, 3.12, 3.13
3535

3636
**Elasticsearch Compatibility:**
3737
The library is compatible with all Elasticsearch versions since 5.x
3838
**but you have to use a matching major version:**
3939

40+
- For Elasticsearch 9.0 and later, use the major version 9 (9.x.y) of the library.
41+
4042
- For Elasticsearch 8.0 and later, use the major version 8 (8.x.y) of the library.
4143

4244
- For Elasticsearch 7.0 and later, use the major version 7 (7.x.y) of the library.
4345

4446
- For Elasticsearch 6.0 and later, use the major version 6 (6.x.y) of the library.
4547

46-
.. code-block:: python
47-
48-
# Elasticsearch 8.x
49-
elasticsearch-dsl>=8.0.0,<9.0.0
50-
51-
# Elasticsearch 7.x
52-
elasticsearch-dsl>=7.0.0,<8.0.0
53-
54-
# Elasticsearch 6.x
55-
elasticsearch-dsl>=6.0.0,<7.0.0
56-
5748
.. _Search: http://elasticsearch-dsl.readthedocs.io/en/stable/search_dsl.html

requirements.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
django>=3.2
2-
elasticsearch>=8.18.0,<9.0.0
1+
django>=4.2
2+
elasticsearch>=9.0.0,<10.0.0

requirements_dev.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
bumpversion==0.6.0
22
wheel==0.45.1
3-
django>=3.2
4-
elasticsearch>=8.18.0,<9.0.0
3+
django>=4.2
4+
elasticsearch>=9.0.0,<10.0.0
55
twine
66
sphinx
77
-e .

requirements_test.txt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
coverage==7.3.1
2-
mock>=1.0.1
3-
flake8>=2.1.0
1+
coverage>=7.9.1
2+
mock>=5.2.0
3+
flake8>=7.3.0
44
tox>=1.7.0
5-
Pillow==10.0.0
6-
celery>=4.1.0
5+
Pillow>=11.0.0
6+
celery>=5.5.3
77

88
# Additional test requirements go here

setup.py

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@
3333
setup(
3434
name='django-elasticsearch-dsl',
3535
version=version,
36-
python_requires=">=3.8",
36+
python_requires=">=3.9",
3737
description="""Wrapper around elasticsearch-dsl-py for django models""",
3838
long_description=readme + '\n\n' + history,
3939
author='Sabricot',
@@ -43,7 +43,7 @@
4343
],
4444
include_package_data=True,
4545
install_requires=[
46-
'elasticsearch>=8.18.0,<9.0.0',
46+
'elasticsearch>=9.0.0,<10.0.0',
4747
'six',
4848
],
4949
license="Apache Software License 2.0",
@@ -52,19 +52,21 @@
5252
classifiers=[
5353
'Development Status :: 3 - Alpha',
5454
'Framework :: Django',
55-
'Framework :: Django :: 3.2',
56-
'Framework :: Django :: 4.1',
5755
'Framework :: Django :: 4.2',
56+
'Framework :: Django :: 5.0',
57+
'Framework :: Django :: 5.1',
58+
'Framework :: Django :: 5.2',
5859
'Intended Audience :: Developers',
5960
'License :: OSI Approved :: BSD License',
6061
'Natural Language :: English',
6162
'Programming Language :: Python :: 3',
62-
'Programming Language :: Python :: 3.8',
6363
'Programming Language :: Python :: 3.9',
6464
'Programming Language :: Python :: 3.10',
6565
'Programming Language :: Python :: 3.11',
66+
'Programming Language :: Python :: 3.12',
67+
'Programming Language :: Python :: 3.13',
6668
],
6769
extras_require={
68-
'celery': ["celery>=4.1.0"],
70+
'celery': ["celery>=5.5.3"],
6971
}
7072
)

tox.ini

Lines changed: 10 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
[tox]
22
envlist =
3-
py{38,39,310}-django-{32,41,42}-{es64,es74}
4-
py{311}-django-{41,42}-{es64,es74}
3+
py{39,310,311}-dj{42}
4+
py{39,310,311,312}-dj{428}
5+
py{310,311,312}-dj{50,51}
6+
py{310,311,312,313}-dj{513,52}
57

68

79
[testenv]
@@ -10,15 +12,10 @@ setenv =
1012
commands = coverage run --source django_elasticsearch_dsl runtests.py {posargs}
1113

1214
deps =
13-
django-32: Django>=3.2,<3.3
14-
django-41: Django>=4.1,<4.2
15-
django-42: Django>=4.2,<4.3
16-
es64: elasticsearch-dsl>=6.4.0,<7.0.0
17-
es74: elasticsearch-dsl>=7.4.0,<8
15+
dj42: Django>=4.2,<4.2.8
16+
dj428: Django>=4.2.8,<5.0
17+
dj50: Django>=5.0,<5.1
18+
dj51: Django>=5.1,<5.1.3
19+
dj513: Django>=5.1.3,<5.2
20+
dj52: Django>=5.2,<5.3
1821
-r{toxinidir}/requirements_test.txt
19-
20-
basepython =
21-
py38: python3.8
22-
py39: python3.9
23-
py310: python3.10
24-
py311: python3.11

0 commit comments

Comments
 (0)