rollbar / pyrollbar

Error tracking and logging from Python to Rollbar
https://docs.rollbar.com/docs/python/
MIT License
213 stars 135 forks source link

Update CI dependencies for Twisted framework #363

Closed waltjones closed 3 years ago

waltjones commented 3 years ago

Description of the change

1) This PR pins idna to 2.10.

Twisted CI builds broke since the last merged PR (Nov 10) because the idna package v3.0 released 24 days ago (https://github.com/kjd/idna/tree/v3.0) was picked up by the CI builds because idna wasn't pinned to a version. The build breaks because the requests package requires idna < 3.x. (https://github.com/psf/requests/blob/v2.25.1/setup.py#L44-L50)

2) This PR excludes some combinations of Python and Twisted versions.

The setup.py for treq==20.4.1 doesn't allow Twisted >= 18.7.0 on python < 3.7, and doesn't allow Twisted < 18.7.0 on python >= 3.7. Some of the entries in the previous matrix should already have been failing, but passed previously in CI and passed for me locally. Those same combinations of Twisted and Python versions now fail for me locally, whereas they didn't before. I don't have much insight into what pip is doing differently now, but I've trimmed the matrix to what people at Twisted seem to think is safe. (Other versions of treq would allow some of the combinations to build, but for this build matrix, I don't see the point in chasing it.)

3) This PR pins treq to "best" versions for each Twisted

Using treq's install_requires and the release dates of versions I've tried to pair compatible versions of treq with the older Twisted versions.

4) This PR adds Twisted 18 and 19 to the matrix

Over time, Twisted 18.x and 19.x haven't been added to the matrix. I went ahead and added the latest minor versions.

Type of change

Related issues

Fixes: https://github.com/rollbar/pyrollbar/pull/360/

Development

Code review