|  | 
| 1 | 1 | # I am terrible at keeping this up-to-date. | 
| 2 | 2 | 
 | 
|  | 3 | +## 2.1.0 (2025-09-29) | 
|  | 4 | + | 
|  | 5 | +feat: Add a async_webpush one call func and tests (15cf848)[https://github.com/web-push-libs/pywebpush/commit/15cf84885b4bc1cd4e8e58a8fc8f84bfc9b3387e] (thanks (@AlexUnder2003)[https://github.com/web-push-libs/pywebpush/commits?author=AlexUnder2003]) | 
|  | 6 | + | 
| 3 | 7 | ## 2.0.1 (2024-10-14) | 
|  | 8 | + | 
| 4 | 9 | docs: Use License classifiers in pyproject.toml (thanks @sevdog) | 
| 5 | 10 | 
 | 
| 6 | 11 | ## 2.0.0 (2024-01-02) | 
|  | 12 | + | 
| 7 | 13 | chore: Update to modern python practices | 
| 8 |  | -* include pyproject.toml file | 
| 9 |  | -* use python typing | 
| 10 |  | -* update to use pytest | 
| 11 | 14 | 
 | 
| 12 |  | - *BREAKING_CHANGE* | 
| 13 |  | - `Webpusher.encode` will now return a `NoData` exception if no data is present to encode. Chances are | 
| 14 |  | - you probably won't be impacted by this change since most push messages contain data, but one never knows. | 
| 15 |  | - This alters the prior behavior where it would return `None`. | 
|  | 15 | +- include pyproject.toml file | 
|  | 16 | +- use python typing | 
|  | 17 | +- update to use pytest | 
|  | 18 | + | 
|  | 19 | + _BREAKING_CHANGE_ | 
|  | 20 | + `Webpusher.encode` will now return a `NoData` exception if no data is present to encode. Chances are | 
|  | 21 | + you probably won't be impacted by this change since most push messages contain data, but one never knows. | 
|  | 22 | + This alters the prior behavior where it would return `None`. | 
| 16 | 23 | 
 | 
| 17 | 24 | ## 1.14.0 (2021-07-28) | 
|  | 25 | + | 
| 18 | 26 | bug: accept all VAPID key instances (thanks @mthu) | 
| 19 | 27 | 
 | 
| 20 | 28 | ## 1.13.0 (2021-03-15) | 
|  | 29 | + | 
| 21 | 30 | Support requests_session param in webpush fn too (thanks @bwindels) | 
| 22 | 31 | 
 | 
| 23 | 32 | ## 1.12.0 (2021-03-15) | 
|  | 33 | + | 
| 24 | 34 | chore: library update, remove nose tests | 
| 25 | 35 | 
 | 
| 26 | 36 | ## 1.11.0 (2020-04-29) | 
|  | 37 | + | 
| 27 | 38 | feat: add `--head` to read headers out of a json file (thanks @braedon) | 
| 28 | 39 | 
 | 
| 29 | 40 | ## 1.10.2 (2020-04-11) | 
|  | 41 | + | 
| 30 | 42 | bug: update min vapid requirement to 1.7.0 | 
| 31 | 43 | 
 | 
| 32 | 44 | ## 1.10.1 (2019-12-03) | 
|  | 45 | + | 
| 33 | 46 | feat: use six.text_type instead of six.string_types | 
| 34 | 47 | 
 | 
| 35 | 48 | ## 1.10.0 (2019-08-13) | 
|  | 49 | + | 
| 36 | 50 | feat: Add `--verbose` flag with some initial commentary | 
| 37 | 51 | bug: Update tests to use latest VAPID version | 
| 38 | 52 | 
 | 
| 39 | 53 | ## 1.9.4 (2019-05-09) | 
|  | 54 | + | 
| 40 | 55 | bug: update vapid `exp` header if missing or expired | 
| 41 | 56 | 
 | 
| 42 | 57 | ## 0.7.0 (2017-02-14) | 
|  | 58 | + | 
| 43 | 59 | feat: update to http-ece 0.7.0 (with draft-06 support) | 
| 44 | 60 | feat: Allow empty payloads for send() | 
| 45 | 61 | feat: Add python3 classfiers & python3.6 travis tests | 
| 46 | 62 | feat: Add README.rst | 
| 47 | 63 | bug: change long to int to support python3 | 
| 48 | 64 | 
 | 
| 49 | 65 | ## 0.4.0 (2016-06-05) | 
|  | 66 | + | 
| 50 | 67 | feat: make python 2.7 / 3.5 polyglot | 
| 51 | 68 | 
 | 
| 52 | 69 | ## 0.3.4 (2016-05-17) | 
|  | 70 | + | 
| 53 | 71 | bug: make header keys case insenstive | 
| 54 | 72 | 
 | 
| 55 | 73 | ## 0.3.3 (2016-05-17) | 
|  | 74 | + | 
| 56 | 75 | bug: force key string encoding to utf8 | 
| 57 | 76 | 
 | 
| 58 | 77 | ## 0.3.2 (2016-04-28) | 
|  | 78 | + | 
| 59 | 79 | bug: fix setup.py issues | 
| 60 | 80 | 
 | 
| 61 | 81 | ## 0.3 (2016-04-27) | 
| 62 |  | -feat: added travis, normalized directories | 
| 63 | 82 | 
 | 
|  | 83 | +feat: added travis, normalized directories | 
| 64 | 84 | 
 | 
| 65 | 85 | ## 0.2 (2016-04-27) | 
| 66 |  | -feat: Added tests, restructured code | 
| 67 | 86 | 
 | 
|  | 87 | +feat: Added tests, restructured code | 
| 68 | 88 | 
 | 
| 69 | 89 | ## 0.1 (2016-04-25) | 
| 70 | 90 | 
 | 
|  | 
0 commit comments