Commit graph

477 commits

Author SHA1 Message Date
Finn-Thorben Sell
42ab54fc4d
fix failing 'test_email_url_value' test
See https://github.com/jazzband/django-configurations/issues/332
2022-03-24 11:14:15 +01:00
Finn-Thorben Sell
12ffda4760
add support for adding reference links to values
Now Value classes accept a 'help_reference' keyword which will get printed when a
ValueRetrievalError or ValueProcessingError occurs
2022-03-24 11:05:20 +01:00
Finn-Thorben Sell
50ac28b667
add support for adding help_text to values
Now Value classes accept a 'help_text' keyword which will get printed when a
ValueRetrievalError or ValueProcessingError occurs
2022-03-24 11:03:34 +01:00
Finn-Thorben Sell
a3b720f31a
implement error accumulation
This way, multiple ConfigurationErrors are caught during setup, accumulated and printed all at once
2022-03-24 10:42:06 +01:00
Finn-Thorben Sell
7de2615441
transport additional information in error types 2022-03-24 10:13:49 +01:00
Finn-Thorben Sell
ece1521acd
put error handling and error definitions in one file named errors.py 2022-03-19 23:12:47 +01:00
Finn-Thorben Sell
a33b77ad3c
pretty-print configuration errors in red on ttys 2022-03-18 22:10:49 +01:00
Finn-Thorben Sell
7e05c085be
add custom error handling for own exceptions
This introduces a function that wraps django entry points with an error
handler so that our own exception can be pretty-printed to an end-user
without a large stack-trace.
The defined error handler has also been applied to the existing
management, wsgi, asgi and fastcgi entry point definitions.
2022-03-18 21:56:21 +01:00
Finn-Thorben Sell
0ec0a4c7ed
fix raised error on required BooleanValue and invalid default
Previously and ImproperlyConfigured error was always raised when an invalid
default configured for the BooleanValue class.
This behavior is unnecessary if the default is never used because the
value is marked as environ_required.
The check has thus been adapted to ignore invalid defaults in that case.
2022-03-18 21:16:27 +01:00
Finn-Thorben Sell
6427a32072
raise specific exceptions during value retrieval and processing
This makes it easier to determine what exactly went wrong and thus build
better error handling in a later commit.
Tests were adapted accordingly to assert that only those specific errors
are raised instead of the plain ValueErrors.
2022-03-18 21:12:49 +01:00
Nicolas Delaby
141d8ef2c4
Merge pull request #328 from ticosax/prepare-new-release
Prepare next release 2.3.2
2022-01-25 10:27:57 +01:00
Nicolas Delaby
fcba8b6d92 Prepare next release 2.3.2 2022-01-25 09:26:07 +01:00
Nicolas Delaby
861935fd45
Merge pull request #327 from ticosax/fix-deprecated-settings
Remove deprecated default fields only from the global
2022-01-25 09:12:33 +01:00
Nicolas Delaby
5f438451ea add changelog entry 2022-01-24 18:57:41 +01:00
Nicolas Delaby
45a4557efe Remove deprecated default fields only from the global
And keep user defined values
2022-01-24 18:46:17 +01:00
Jannis Leidel
bb2523ddb9
Fix badge URL. 2021-12-23 20:36:48 +01:00
Paolo Melchiorre
32a41d62b9
Align README badges with other jazzband projects (#326) 2021-12-23 20:35:53 +01:00
Paolo Melchiorre
ded548b19b Update Django 4.0 stable versions 2021-12-23 17:23:58 +06:00
Jannis Leidel
c3b5e8627b
Update changelog. 2021-11-08 16:56:32 +01:00
Brian Helba
93e628e870
Refactor the documentation build process (#311)
* Refactor the documentation build process

Significant improvements:
* Allow easy isolated local builds via a dedicated Tox environment
* Configure Sphinx to use consistent packages and theme across local, CI,
  and ReadTheDocs builds; local builds now look the same as the published
  RTD pages
* Explicitly add a ReadTheDocs configuration as code, per their documented
  best practices
* Remove lots of dead code and simplify the Sphinx configuration file
* Build docs in a dedicated CI step and enable stricter warning checking

* Fix docutils related build error.

* Relax Sphinx version.

* Invalidate RTD build cache.

* No need to combine coverage reporting I think.

* Add combining again.

Co-authored-by: Jannis Leidel <jannis@leidel.info>
2021-11-08 16:49:41 +01:00
Paolo Melchiorre
7ff29852ab
Add pypy versions support (#321)
* Add pypy versions support

* Update Python classifiers
2021-11-08 15:50:21 +01:00
Jannis Leidel
2655ecdd4f
Add python version limiter. 2021-11-08 15:48:22 +01:00
Jannis Leidel
750f143724
Fix documentation build errors. 2021-11-08 15:48:07 +01:00
Paolo Melchiorre
dcce8bccfd
Add support port Django 3.2 and Python 3.10 in tox
Django 3.2.9 adds compatibility with Python 3.10.
https://docs.djangoproject.com/en/3.2/releases/3.2.9/
2021-11-01 12:20:42 +01:00
Brian Helba
1f17d675a1
Merge pull request #319 from jazzband/authors 2021-10-27 12:50:35 -04:00
Brian Helba
381809d88c Add new AUTHORS since 2.2 release
Got this from "git shortlog -s 2.2..master".
2021-10-27 12:41:15 -04:00
Brian Helba
5698fe35b2 Finalize changelog for 2.3 release 2021-10-27 22:40:16 +06:00
Paolo Melchiorre
9f38e87a58
Update Python and Django versions in tox.ini (#307)
* Update Python and Django versions in tox.ini

- remove Django 3.1
- add Django 4.0b1
- add Python 3.10

* Add python 3.10  in github action matrix

* Update tox.ini from django-debug-toolbar

* Fix whitespaces

* Add missing setup classifiers

* Fix typo in tox.ini

* Remove django 4 classifier
2021-10-27 16:16:26 +06:00
Brian Helba
5562322599 Update changelog 2021-10-27 14:24:34 +06:00
Brian Helba
cea79d1a7a Revert "Update release.yml" 2021-10-27 10:23:34 +02:00
Brian Helba
03dc29848e Fix "reference target not found" warnings in the docs
These were found by running Sphinx in nitpicky mode.
2021-10-27 10:17:56 +02:00
Brian Helba
596ab9a1bf Restore an example of a dependent setting to the docs
This was removed by #303. This now uses a real Django setting,
"DEBUG_PROPAGATE_EXCEPTIONS", instead of a deprecated one.
2021-10-27 10:16:59 +02:00
Brian Helba
80f2cee84b Update the copyright date range 2021-10-27 08:06:34 +02:00
Thomas Grainger
089a039efa Added "python -m configurations" entry point.
inspired by e0a46367df/django/__main__.py (L1-L9)

see also https://code.djangoproject.com/ticket/24857
2021-10-27 07:29:02 +06:00
Brian Helba
1dce659946
Merge pull request #305 from jazzband/importlib-version 2021-10-25 14:41:48 -04:00
Brian Helba
f5d6ef7877 Add importlib.metadata backport for older Python versions 2021-10-25 14:33:55 -04:00
Brian Helba
4bd4cf5dd4 Use importlib.metadata instead of pkg_resources to get version 2021-10-25 14:33:54 -04:00
Brian Helba
91b359f74a
Merge pull request #304 from jazzband/rm-mock 2021-10-25 13:21:58 -04:00
Brian Helba
d373c9ab75 Remove "mock" as a test requirement
This is included in the standard library of Python 3.3+.
2021-10-25 13:05:36 -04:00
Brian Helba
62d34c2a16
Merge pull request #253 from linuxmaniac/vseva/fix_250 2021-10-25 13:04:19 -04:00
Brian Helba
02e8f55ac8 Merge remote-tracking branch 'origin/master' into vseva/fix_250 2021-10-25 12:37:36 -04:00
Brian Helba
6c2ea44352
Merge pull request #303 from jazzband/template-debug 2021-10-25 12:33:25 -04:00
Brian Helba
2d9e145a0f
Merge pull request #258 from arsensokolov/master 2021-10-25 12:33:08 -04:00
Brian Helba
b75c8d7a7a Remove references to TEMPLATE_DEBUG
This setting is deprecated since Django 1.8.
2021-10-25 12:18:19 -04:00
Brian Helba
c9c44c59b7
Merge pull request #290 from brianhelba/2.2-deprecated 2021-10-25 11:36:23 -04:00
Brian Helba
38059e1417
Merge pull request #302 from jazzband/rm-command 2021-10-25 11:36:05 -04:00
Brian Helba
df967f4d76 Remove an obsolete command used for testing
The test using this was removed in a045609934.
2021-10-25 11:21:06 -04:00
Brian Helba
6da8420635 Prevent warnings for settings deprecated in Django 2.2
Fixes #233.
2021-10-25 11:15:14 -04:00
Brian Helba
a155ac54ad
Merge pull request #287 from brianhelba/auto-field 2021-10-25 11:13:46 -04:00
Brian Helba
40bdab3f4a Preserve Django warnings when DEFAULT_AUTO_FIELD is not set
Fixes #286.
2021-10-25 10:40:24 -04:00