Skip to content

Commit 87e99b2

Browse files
authored
Merge pull request #618 from maxiberta/assorted-updates
Release 0.23.0
2 parents 9440a1d + e19a4f6 commit 87e99b2

19 files changed

Lines changed: 95 additions & 234 deletions

.bumpversion.cfg

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
[bumpversion]
2-
current_version = 0.22.0
2+
current_version = 0.23.0
33
commit = True
44
tag = True
55

.github/workflows/tox.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,15 +21,15 @@ jobs:
2121
POSTGRES_PASSWORD: django_app
2222
ports:
2323
- 5432:5432
24-
runs-on: ubuntu-20.04
24+
runs-on: ubuntu-24.04
2525
strategy:
2626
matrix:
27-
python: [3.5, 3.6, 3.8, "3.10", "3.12"]
27+
python: [3.8, "3.10", "3.12"]
2828

2929
steps:
30-
- uses: actions/checkout@v2
30+
- uses: actions/checkout@v6
3131
- name: Setup Python
32-
uses: actions/setup-python@v2
32+
uses: actions/setup-python@v6
3333
with:
3434
python-version: ${{ matrix.python }}
3535
env:

HISTORY.rst

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,13 @@
11
Next release
22
------------
3-
*
3+
4+
5+
0.23.0 (2026-03-18)
6+
-------------------
7+
8+
* Improve compatibility with latest gunicorn and setuptools
9+
* Drop support for python 3.5 & 3.6
10+
* Extra python 2 cleanup
411

512
0.22.0 (2025-03-20)
613
-------------------
@@ -14,16 +21,19 @@ Next release
1421

1522
0.21.4 (2024-11-20)
1623
-------------------
24+
1725
* Add support for python 3.12
1826
* Bump supported dependencies
1927

2028
0.21.3 (2023-01-11)
2129
-------------------
30+
2231
* Fix spelling of Python 3.5-specific requirements
2332
* Drop the future library
2433

2534
0.21.2 (2022-10-07)
2635
-------------------
36+
2737
* Add support for python 3.10
2838
* Reduce test complexity by only supporting python versions that
2939
come with an ubuntu lts

Makefile

Lines changed: 17 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ VENV = $(VENV_PATH)/ready
1818
BIN = $(VENV_PATH)/bin
1919
PY3 = $(shell which python3)
2020
PYTHON ?= $(shell readlink -f $(PY3))
21+
PYTEST = . $(BIN)/activate && $(BIN)/pytest
2122
TALISKER_EXTRAS=gunicorn,raven,flask,django,celery,prometheus,pg,dev,asyncio
2223
LIMBO_REQUIREMENTS=tests/requirements.limbo.txt
2324
REQUIREMENTS=$(shell ls requirements.*.txt)
@@ -29,14 +30,14 @@ $(VENV_PATH):
2930
virtualenv $(VENV_PATH) -p $(PYTHON)
3031

3132
setup.py: setup.cfg scripts/build_setup.py | $(VENV_PATH)
32-
env/bin/python scripts/build_setup.py > setup.py
33+
$(BIN)/python scripts/build_setup.py > setup.py
3334

3435
$(LIMBO_REQUIREMENTS) limbo: setup.cfg requirements.*.txt scripts/limbo.py | $(VENV_PATH)
35-
env/bin/python scripts/limbo.py requirements.tests.txt --extras=$(TALISKER_EXTRAS) > $(LIMBO_REQUIREMENTS)
36+
$(BIN)/python scripts/limbo.py requirements.tests.txt --extras=$(TALISKER_EXTRAS) > $(LIMBO_REQUIREMENTS)
3637

3738
# workaround to allow tox to build limbo requirements on demand
3839
limbo-env: $(LIMBO_REQUIREMENTS)
39-
pip install $(TOX_OPTS) -r requirements.limbo.text $(TOX_PACKAGES)
40+
$(BIN)/pip install $(TOX_OPTS) -r $(LIMBO_REQUIREMENTS) $(TOX_PACKAGES)
4041

4142
$(VENV): setup.py $(REQUIREMENTS) | $(VENV_PATH)
4243
$(BIN)/pip install -U pip
@@ -49,11 +50,11 @@ lint: $(VENV)
4950
$(BIN)/flake8 talisker tests
5051

5152
_test: $(VENV)
52-
. $(BIN)/activate && $(BIN)/pytest --timeout=15 --no-success-flaky-report $(ARGS)
53+
$(PYTEST) --timeout=15 --no-success-flaky-report $(ARGS)
5354

5455
TEST_FILES = $(shell find tests -maxdepth 1 -name test_\*.py | cut -c 7- | cut -d. -f1)
5556
$(TEST_FILES): $(VENV)
56-
. $(BIN)/activate && pytest -k $@ $(ARGS)
57+
$(PYTEST) -k $@ $(ARGS)
5758

5859
export DEBUGLOG=log
5960
export DEVEL=1
@@ -70,7 +71,7 @@ run_multiprocess: run
7071
lib/sqlalchemy:
7172
$(BIN)/pip install sqlalchemy
7273

73-
flask: | lib/sqlalchemy
74+
flask: $(VENV) | lib/sqlalchemy
7475
$(TALISKER) tests.flask_app:app
7576

7677
lib/redis:
@@ -99,27 +100,25 @@ statsd:
99100
$(BIN)/python tests/udpecho.py
100101

101102
test: _test lint
102-
@echo "Remember to run 'make tox' to test change against more Python versions"
103+
@echo "Remember to run 'make tox' to test changes against more Python versions"
103104

104105
debug-test:
105-
. $(BIN)/activate && $(BIN)/pytest -s --pdb $(ARGS)
106+
$(PYTEST) -s --pdb $(ARGS)
106107

107108
tox: $(VENV) $(LIMBO_REQUIREMENTS)
108109
$(BIN)/tox $(ARGS)
109110

110111
# use requirements as constraints files
111112
travis: $(VENV_PATH)
112-
env/bin/pip install tox setuptools $(subst requirements,-c requirements,$(REQUIREMENTS))
113-
$(MAKE) $(LIMBO_REQUIREMENTS)
114-
env/bin/tox
113+
$(BIN)/pip install tox $(subst requirements,-c requirements,$(REQUIREMENTS))
114+
$(MAKE) tox
115115

116116
github-tox: $(VENV)
117-
. $(BIN)/activate && pip install tox setuptools $(subst requirements,-c requirements,$(REQUIREMENTS))
118-
$(MAKE) $(LIMBO_REQUIREMENTS)
119-
tox
117+
$(BIN)/pip install tox $(subst requirements,-c requirements,$(REQUIREMENTS))
118+
$(MAKE) tox
120119

121120
coverage: $(VENV)
122-
$(BIN)/pytest --cov=talisker --cov-report html:htmlcov --cov-report term
121+
$(PYTEST) --cov=talisker --cov-report html:htmlcov --cov-report term
123122
$(BROWSER) htmlcov/index.html
124123

125124
docs: $(VENV)
@@ -135,7 +134,7 @@ clean: clean-build clean-pyc clean-test
135134
clean-build:
136135
rm build/ dist/ .eggs/ -rf
137136
find . -name '*.egg-info' | xargs rm -rf
138-
find . -name '*.egg' | xargs rm -f
137+
find . -name '*.egg' | xargs rm -rf
139138

140139
clean-pyc:
141140
find . -name '*.pyc' | xargs rm -f
@@ -149,8 +148,6 @@ clean-test:
149148

150149
# publishing
151150
RELEASE_TOOLS = $(BIN)/twine $(BIN)/bumpversion
152-
PY2ENV_PATH = .py2env
153-
PY2ENV = $(PY2ENV_PATH)/.done
154151
PACKAGE_NAME = $(shell $(BIN)/python setup.py --name)
155152
PACKAGE_FULLNAME = $(shell $(BIN)/python setup.py --fullname)
156153
PACKAGE_VERSION = $(shell $(BIN)/python setup.py --version)
@@ -163,18 +160,11 @@ $(RELEASE_TOOLS): $(VENV)
163160
echo $(RELEASE_TOOLS)
164161
$(BIN)/pip install twine bumpversion
165162

166-
# minimal python2 env to build p2 wheel
167-
$(PY2ENV):
168-
virtualenv $(PY2ENV_PATH) -p /usr/bin/python2.7
169-
$(PY2ENV_PATH)/bin/pip install wheel
170-
touch $@
171-
172163
# force build every time, it's not slow
173-
_build: $(VENV) $(PY2ENV)
164+
_build: $(VENV)
174165
rm -rf dist/*
175166
$(BIN)/python setup.py sdist
176167
$(BIN)/python setup.py bdist_wheel
177-
$(PY2ENV_PATH)/bin/python setup.py bdist_wheel
178168

179169
release-check: $(RELEASE_TOOLS)
180170
git checkout master
@@ -198,7 +188,7 @@ release-tag:
198188
git tag v$(VERSION)
199189
git push origin master
200190

201-
.PHONY: releast-test
191+
.PHONY: release-test
202192
release-test: WHEELENV=/tmp/talisker-test-wheel-py$(PY)
203193
release-test: SDISTENV=/tmp/talisker-test-sdist-py$(PY)
204194
release-test:

docs/conf.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@
7373
# for |version| and |release|, also used in various other places throughout
7474
# the built documents.
7575
# The short X.Y version.
76-
version = '0.22.0'
76+
version = '0.23.0'
7777
# The full version, including alpha/beta/rc tags.
7878
release = version
7979

requirements.devel.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
11
tox==3.28.0
2+
tox-pip-version==0.0.7

requirements.docs.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
Sphinx==5.3.0;python_version=="3.6"
2-
Sphinx==7.0.1;python_version>"3.6"
3-
werkzeug
1+
Sphinx==7.0.1
2+
werkzeug
3+
setuptools<=81 # pkg_resources was removed from setuptools 82

requirements.tests.txt

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
# these are pinned for repeatability, but updated by pyup.io to be latest
22
pytest==4.6.9;python_version<"3.10"
33
pytest>7;python_version>="3.10"
4-
more-itertools<8.11.0;python_version<"3.6"
5-
more-itertools;python_version>="3.6"
4+
more-itertools
65
freezegun==0.3.14
76
pytest-cov==2.8.1;python_version<"3.10"
87
pytest-cov>2.8;python_version>="3.10"
@@ -13,11 +12,10 @@ pytest-timeout==1.3.4
1312
responses==0.10.6 # pyup: <0.10.9
1413
# setuptools 45+ does do py2
1514
setuptools==44.0.0;python_version<"3.10"
16-
setuptools>64;python_version>="3.10"
15+
setuptools>64,<=81;python_version>="3.10"
1716
coverage==5.0.3;python_version<"3.10"
18-
coverage>=6;python_version>="3.10"
19-
flaky==3.7.0;python_version<"3.6"
20-
flaky==3.8.1;python_version>="3.6"
17+
coverage>=6.0;python_version>="3.10"
18+
flaky==3.8.1
2119

2220
# for integration tests
2321
# eventlet is pinned until https://github.com/benoitc/gunicorn/pull/2581
@@ -32,7 +30,3 @@ greenlet<2;python_version<"3.10"
3230
# newer celery versions
3331
redis>=3.2.0
3432
SQLAlchemy==1.3.13
35-
# newer versions of celery pin vine versions, however
36-
# older versions don't. This pin is for limbo test runs for
37-
# celery 3.x on python 2.7.
38-
vine<5.0;python_version<"3.6"

setup.cfg

Lines changed: 11 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ filterwarnings = ignore
1414

1515
[metadata]
1616
name = talisker
17-
version = 0.22.0
17+
version = 0.23.0
1818
description = A common WSGI stack
1919
long_description = file: README.rst
2020
author = Simon Davy
@@ -29,8 +29,6 @@ classifiers =
2929
Topic :: Internet :: WWW/HTTP :: WSGI
3030
Topic :: Internet :: WWW/HTTP :: WSGI :: Middleware
3131
Topic :: System :: Logging
32-
Programming Language :: Python :: 3.5
33-
Programming Language :: Python :: 3.6
3432
Programming Language :: Python :: 3.8
3533
Programming Language :: Python :: 3.10
3634
Programming Language :: Python :: 3.12
@@ -43,43 +41,32 @@ packages = talisker
4341
test_suite = tests
4442
package_dir = talisker=talisker
4543
install_requires =
46-
Werkzeug~=1.0;python_version~="3.5.0"
47-
Werkzeug<4;python_version>="3.6"
48-
statsd~=3.3;python_version~="3.5.0"
49-
statsd<5;python_version>="3.6"
50-
requests~=2.25;python_version~="3.5.0"
51-
requests<3.0;python_version>"3.5"
52-
contextvars~=2.4;python_version>="3.5" and python_version<"3.7"
44+
Werkzeug<4
45+
statsd<5
46+
requests<3.0
5347

5448
[options.extras_require]
5549
gunicorn =
56-
gunicorn>=19.7.0;python_version>"3.6"
57-
gunicorn==19.7.0,<21.0;python_version>="3.5" and python_version<"3.8"
50+
gunicorn>=19.9.0
5851
raven = raven>=6.4.0
5952
celery =
60-
celery~=4.4;python_version~="3.5.0"
61-
celery>=4;python_version>"3.5"
53+
celery>=4.3
6254
django =
63-
django~=2.2;python_version~="3.5.0"
64-
django<5;python_version>"3.5"
55+
django<5
6556
prometheus =
66-
prometheus-client~=0.7.0;python_version~="3.5.0"
67-
prometheus-client<0.8;python_version>"3.5"
57+
prometheus-client<0.8
6858
flask =
69-
flask~=1.1;python_version~="3.5.0"
70-
flask<4;python_version>"3.5"
71-
blinker~=1.5;python_version~="3.5.0"
72-
blinker<2;python_version>"3.5"
59+
flask<4
60+
blinker<2
7361
dev =
7462
logging_tree>=1.9
7563
pygments>=2.11
7664
psutil>=5.9
7765
objgraph>=3.5
7866
pg =
7967
sqlparse>=0.4.2
80-
psycopg2>=2.8,<3.0
68+
psycopg2>=2.8.4,<3.0
8169
asyncio =
82-
aiocontextvars==0.2.2;python_version>="3.5.3" and python_version<"3.7"
8370
gevent = gevent>=20.9.0
8471

8572
[options.package_data]

0 commit comments

Comments
 (0)