Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: Add upgrade guide for dropping python 2.7, 3.4 & 3.5 #570

Merged
merged 7 commits into from
Sep 22, 2021
Merged
Changes from 5 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
38 changes: 37 additions & 1 deletion UPGRADE.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,44 @@
# Upgrade Guide

_After `6.0.0` all `MINOR` and `MAJOR` version bumps will have upgrade notes
_`MAJOR` version bumps will have upgrade notes
posted here._

[2021-XX-XX] 6.x.x to 7.x.x
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Date will be added when MVR date is known.

---------------------------
### Overview
Version `7.x.x` is the first version that officially drops support for Python versions 2.7, 3.4, and 3.5.
#### Removal of files and dependencies that were added to support Python 2.7, 3.4, and 3.5:
- [Six](https://github.com/twilio/twilio-python/pull/560/files#diff-4d7c51b1efe9043e44439a949dfd92e5827321b34082903477fd04876edb7552L4)
- Removed use of `u` a fake unicode literal
- Removed use of `b` a fake bytes literal
- Removed `PY3` a boolean indicating if the code is running on Python 3
- `text_type` type for representing (Unicode) textual data --> `str`
- `iteritems` returns an iterator over dictionary’s items --> `items`
- `string_types` possible types for text data like basestring() in Python 2 and str in Python 3.--> `str`
- [twilio/compat.py](https://github.com/twilio/twilio-python/pull/560/files?file-filters%5B%5D=.md&file-filters%5B%5D=.py&file-filters%5B%5D=.toml&file-filters%5B%5D=.txt&file-filters%5B%5D=.yml&file-filters%5B%5D=No+extension#diff-e327449701a8717c94e1a084cdfc7dbf334c634cddf3867058b8f991d2de52c1L1)
- `from twilio.compat import urlencode` --> `from urllib.parse import urlencode`
- `izip` --> `zip`
- [twilio/jwt/compat.py](https://github.com/twilio/twilio-python/pull/560/files?file-filters%5B%5D=.md&file-filters%5B%5D=.py&file-filters%5B%5D=.toml&file-filters%5B%5D=.txt&file-filters%5B%5D=.yml&file-filters%5B%5D=No+extension#diff-03276a6bdd4ecdf37ab6bedf60032dd05f640e1b470e4353badc787d80ba73d5L1)
- Removed `compat.compare_digest`
- [twilio/jwt/__init__.py](https://github.com/twilio/twilio-python/pull/560/files?file-filters%5B%5D=.ini&file-filters%5B%5D=.py&file-filters%5B%5D=.yml#diff-9152dd65476e69cc34a307781d5cef195070f48da5670ed0934fd34a9ac91150L12-L16)
- Removed import for `simplejson` and `json`
Copy link

@andersk andersk Jul 27, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These details are all internal changes that aren’t relevant to consumers of the library (unless they were directly importing things from the undocumented twilio.compat module). Consumers only need to know that the library now requires Python ≥ 3.6.


#### Updated dependencies
- [Updated PyJWT to >=2.0.0](https://github.com/twilio/twilio-python/pull/560/files#diff-4d7c51b1efe9043e44439a949dfd92e5827321b34082903477fd04876edb7552L6)

### CHANGED - [Remove the ability to override the `algorithm` in `Jwt.to_jwt()`](https://github.com/twilio/twilio-python/pull/560/commits/dab158f429015e0894217d6503f55b517c27c474).
#### Removed the ability to override the algorithm while using a jwt access token:
```python
// 6.x.x
from twilio.jwt.access_token import AccessToken
token.to_jwt(algorithm='HS512')
```
```python
// 7.x.x
from twilio.jwt.access_token import AccessToken
token.to_jwt()
```

[2017-09-28] 6.6.x to 6.7.x
---------------------------

Expand Down