Commit Graph

89 Commits

Author SHA1 Message Date
Bruno Alla
b25028ac8f
Add support for Python 3.13 (#9527)
* Add support for Python 3.13

* Fix extracting tox env with -dev Python versions

* Fix view description inspection in Python 3.13

Python 3.13 introduced docstrings for None: https://github.com/python/cpython/pull/117813

In Python 3.12, this is an empty string:

```
 ➜ python3.12
Python 3.12.6 (main, Sep 10 2024, 19:06:17) [Clang 15.0.0 (clang-1500.3.9.4)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> d = None
>>> d.__doc__
>>>
```

In Python 3.13, it's no longer empty:

```
 ➜ python3.13
Python 3.13.0rc2+ (heads/3.13:660baa1, Sep 10 2024, 18:57:50) [Clang 15.0.0 (clang-1500.3.9.4)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> d = None
>>> d.__doc__
'The type of the None singleton.'
>>>
```

Adding a check in the inspector that get the view description out the view function docstring to catch this edge case.
2024-09-11 15:39:52 +06:00
Bruno Alla
2ede857de0
Add official support for Django 5.1 (#9514)
* Add official support for Django 5.1

Following the supported Python versions:

https://docs.djangoproject.com/en/stable/faq/install/

* Add tests to cover compat with Django's 5.1 LoginRequiredMiddleware

* First pass to create DRF's LoginRequiredMiddleware

* Attempt to fix the tests

* Revert custom middleware implementation

* Disable LoginRequiredMiddleware on DRF views

* Document how to integrate DRF with LoginRequiredMiddleware

* Move login required tests under a separate test case

* Revert redundant change

* Disable LoginRequiredMiddleware on ViewSets

* Add some integrations tests to cover various view types
2024-09-07 17:21:18 +06:00
Tom Christie
ccfe0a9637
Add Zuplo to sponsors (#9460) 2024-07-05 16:56:58 +01:00
Peter Thomassen
1f2daaf53c
Drop support for Django < 4.2 and Python < 3.8
Discussion: https://github.com/encode/django-rest-framework/discussions/8814#discussioncomment-9237791
2024-04-30 18:28:19 +02:00
Rodrigo
d4016d8ec1
Add Django 5.0 support (#9233)
* Update tox.ini

* Update tests for Django 5.0

* Update documentation

* Update setup.py
2024-02-28 11:52:22 +01:00
Rodrigo
37ec04d518
Add Python 3.12 support (#9230)
* added python 3.12 to CI

* Update setup.py

---------

Co-authored-by: Asif Saif Uddin <auvipy@gmail.com>
2024-02-20 14:16:03 +01:00
Mathieu Dupuy
376a5cbbba
remove dependency on pytz (#8984)
* remove pytz

* Revert "remove pytz"

This reverts commit 393609dfaa.

* remove pytz, more subtly
2023-06-04 11:24:07 +06:00
Mahdi Rahimi
d14eb7555d
Refactor read function to use context manager for file handling (#8967)
Co-authored-by: Mahdi <mahdi@Mahdis-MacBook-Pro.local>
2023-05-02 22:09:19 +06:00
Maxwell Muoto
62abf6ac1f
Use ZoneInfo as primary source of timezone data (#8924)
* Use ZoneInfo as primary source of timezone data

* Update tests/test_fields.py

---------

Co-authored-by: Asif Saif Uddin <auvipy@gmail.com>
2023-04-08 15:16:00 +06:00
Asif Saif Uddin
2db0c0bf0a
initial django 4.2a1 testing (#8846)
* initial django 4.2a1 testing

* django 4.2 in classifier
2023-01-19 20:47:50 +06:00
Paolo Melchiorre
2a2b092864
Fix #8751 - Add support to Python 3.11 (#8752) 2022-11-21 11:47:21 +01:00
Tom Christie
58e0a698e3
Update setup.py to drop Django 2.2 and update release notes (#8666) 2022-09-22 12:31:43 +01:00
Mariusz Felisiak
333f1ffb94
Confirmed support for Django 4.1. (#8498) 2022-06-06 12:39:06 +01:00
Alexander Clausen
ba25869045
Fix REQUIRED_PYTHON in setup.py (#8292)
Just a left-over from #8288 to sync the "Unsupported Python version" message with `python_requires`.
2021-12-13 08:57:55 +00:00
Paolo Melchiorre
773f479719
Python/Django compatibility updates (#8288)
* Update python and django versions in tox.ini

* Update  python requires in setup.py

* Update tox.ini

Co-authored-by: Tom Christie <tom@tomchristie.com>
2021-12-10 15:31:01 +00:00
Tom Christie
16ca0c24d3 Add 3.10 to tox.ini and setup.py 2021-12-10 11:53:48 +00:00
Jet Li
1cb3fa2e81
Test Django 4.0 (#8280)
* Test Django 4.0

Django 4.0 released today.

* Test Django 4.0

* Test Django 4.0

* Test Django 4.0
2021-12-10 09:31:05 +00:00
Carlton Gibson
250479dc37 Added pytz to install_requires.
pytz will not automatically be installed with Django from v4.0.
2021-09-22 09:57:17 +02:00
Thomas Grainger
b824b33dc3
add changelog project_url (#8085) 2021-08-06 16:46:57 +01:00
Adam Johnson
e92016ac2e
Stop ignoring test outcome for Django 3.2 (#7927) 2021-06-21 11:33:43 +01:00
Michael K
ddcd8b539b
Run tests against Python 3.9 (#7517)
3.9.0 final is expected on Monday, 2020-10-05
See https://www.python.org/dev/peps/pep-0596/#schedule

Also mention Django 3.1 compat where missing.
2020-09-08 15:40:21 +01:00
Asif Saif Uddin
acbd9d8222
django 3.1 alpha on matrix (#7334)
* django 3.1 alpha on matrix

* django 3.1 alpha on matrix
2020-05-15 08:40:47 +01:00
Ryan P Kilby
86aa549832
Drop Django 2.1 and below. (#7225) 2020-03-11 14:51:42 +01:00
Adam Johnson
7c5459626d Declare Django versions in install_requires (#7063)
* Declare Django versions in install_requires

Pip's dependency resolver (used in pipenv, pip-compile, poetry, etc.) can use this to infer whether there's a verison collision in what it's being asked to install or not.

* No max
2019-12-12 13:03:34 +00:00
Oskar Persson
8001087e9e Fix typo in unsupported version error message (#7060) 2019-11-21 14:59:50 +00:00
Bastien Vallet
64f567a021 Bump CI to Python 3.8 (#7008) 2019-10-22 14:39:01 -07:00
Michael
1256d5363d Add project_urls to setup.py (#6625) 2019-07-02 18:56:26 -07:00
Ryan P Kilby
e36ba9c46e
Add twine check to publish process (#6770) 2019-07-01 00:19:12 -07:00
Asif Saif Uddin
50a24d6d7f Drop Python 3.4 support (#6620) 2019-05-06 11:35:58 -07:00
Carlton Gibson
0407a0df8a
Dropped Python 2 compatibility. (#6615)
Thanks to Jon Dufresne (@jdufresne) for review.

Co-authored-by: Asif Saif Uddin <auvipy@gmail.com>
Co-authored-by: Rizwan Mansuri <Rizwan@webbyfox.com>
2019-04-30 17:53:44 +02:00
Rohit Gupta
de3929fb33 Add Python 3.7 to classifiers. (#6458) 2019-02-15 10:57:02 +01:00
Carlton Gibson
65f5c11a5b Document support for Django 2.2. 2019-02-14 15:57:20 +01:00
Jon Dufresne
878f9d2783 Prefer https:// for URLs when available throughout project (#6208) 2018-10-02 08:28:58 +02:00
Michael
8493990a66 Add Django 2.1 to classifiers (#6099) 2018-07-29 11:54:10 +01:00
Ryan P Kilby
a628a2dbce Drop Django 1.10 support (#5657)
* Remove Django 1.10 from CI

* Remove Django 1.10 compat code
2018-07-06 12:14:31 +02:00
Steven Loria
cf925caa48 Render markdown readme on PyPI (#6004)
* Render markdown readme on PyPI

PyPI now supports GitHub-flavored Markdown descriptions
(https://blog.thea.codes/github-flavored-markdown-on-pypi/),
so there's no need to convert the README to rst with pypandoc
any more.

* Remove readme checking

Checking markdown descriptions is not necessary.
See https://github.com/pypa/readme_renderer#markdown

* Upgrade twine
2018-06-03 19:21:04 +01:00
Daniel Hahler
2854679f56 Upgrade isort (#5817)
* Fix isort

* runtests: add --diff to ISORT_ARGS

* requirements-codestyle: bump isort to 4.3.3

* isort: move config to setup.cfg
2018-02-14 20:12:14 +00:00
Jon Dufresne
b2ec681d8d Pass python_requires argument to setuptools (#5739)
Helps pip decide what version of the library to install.

https://packaging.python.org/tutorials/distributing-packages/#python-requires

> If your project only runs on certain Python versions, setting the
> python_requires argument to the appropriate PEP 440 version specifier
> string will prevent pip from installing the project on other Python
> versions.

https://setuptools.readthedocs.io/en/latest/setuptools.html#new-and-changed-setup-keywords

> python_requires
>
> A string corresponding to a version specifier (as defined in PEP 440)
> for the Python version, used to specify the Requires-Python defined in
> PEP 345.
2018-01-11 08:51:34 +01:00
Carlton Gibson
a81e60ff39
Version 3.7.4 Release (#5650)
* Update version for 3.7.4 Release

* Add release notes to 01587b9eb1

* Django 2.0 is now final.

* Add trove classifer for Django 2.0

* Finalise release notes for v3.7.4

* Set release date: December 20, 2017

* Update Transifex

* Add release note for #5691

* Move Issue links to bottom
2017-12-20 15:28:31 +01:00
Ryan P Kilby
fc6b192b70 Fix readme, add to CI (#5625)
* Add readme build to CI

* Fix pandoc import in setup.py

* Replace sponsor HTML with markdown

This loses the image centering, but can be converted to RST.

* Fix README RST conversion

- Links do not render correctly inside italics
- Add hr between image caption and section, fixes markup on older
  versions of pandoc.
2017-11-27 11:32:17 +01:00
Ryan P Kilby
abef84fb60 Fix packaging (#5624)
* Packaging should use manifest

* Add schema.js template to MANIFEST
2017-11-27 11:28:25 +01:00
Jon Dufresne
64cfa3b64d Add trove classifier for Python 3.6 support.
Helps users know, at a glance, if the library is compatible with a
project.
2017-11-03 16:03:23 -07:00
Carlton Gibson
eb3d078a2c Version 3.7: Announcement etc (#5437)
* Set version number for 3.7.0 release

* Rename release notes section

Moved issue links to top for easier access.
(Can move back later)

* Add release note for #5273

* Add release note for #5440

* Add release note for #5265

Strict JSON handling

* Add release note for #5250

* Add release notes for #5170

* Add release notes for #5443

* Add release notes for #5448

* Add release notes for #5452

* Add release not for #5342

* Add release notes for 5454

* Add release notes for #5058 & #5457

Remove Django 1.8 & 1.9 from README and setup.py

* Release notes for merged 3.6.5 milestone tickets

Tickets migrated to 3.7.0 milestone.

* Add release notes for #5469

* Add release notes from AM 2ndOct

* Add final changes to the release notes.

* Add date and milestone link

Move issue links back to bottom.

* Update translations from transifex

* Begin releae anouncement

* Add release note for #5482

* 3.7 release announcement & related docs.
2017-10-06 13:18:31 +02:00
Sergey Smirnov
34f88dc3f8 Add Django 1.11 into *.md and setup.py 2017-04-17 19:42:50 +02:00
Michael Barr
388cf7622c Adds Django/Python Trove Classifiers (#4662) 2016-11-09 12:59:11 +00:00
Tom Christie
856f086ce3 Remove broken wheel check in setup.py [ci skip] 2016-10-21 14:42:42 +01:00
cobaltchang
b04bd8618c Fix the error without specified encoding when compiling (#4246)
Fix setup.py error on some platforms
2016-07-05 15:36:52 +01:00
Xavier Ordoquy
f48ccad581 Fail hard during publish if pandoc isn't available. 2016-02-12 13:43:18 +01:00
Xavier Ordoquy
72ecd32c6b Use pandoc to generate a nice PyPI information page. 2016-02-12 13:15:20 +01:00
Tom Christie
086115c7b8 Clean up after publishing to PyPI 2015-08-25 13:32:35 +01:00