* Output a more clear configuration error
* Performance related improvements in config read handling
* Check python 3.6 with travis
* Revert the .travis.yml py36 inclusion
* Added tests for input error handling
* Thanks isort, isorted it out
* Make exit() function a bit more aesthetic
* Single quote -> double quote docstrings
* Whitespace removed
Sending in a single string leads to unexpected behavior and the method
accepts any iterable, not just sequences, of strings.
Technically sending in a single string is still allowed because a string
is an iterable of strings, but this way the intention of that argument
is clearer.
* additional defer() to offset the effect of using the type before declaring
* linter fix
* linter fix
* linter fix
* test case
Co-authored-by: Kacper Szmigiel <szmigielkacper@gmai.com>
* Don't change type of HttpRequest.user if type has been changed by subclassing
* Asserts for typing
* Add tests
* Add description of HttpRequest subclassing to README
* Dummy to rebuild travis
In addition to the meta properties added
to the Choices enums, value and label are
set for each choice.
This commit explicitly types those instead of the
tuple value and non-extant label types
* proper redirect return type annotations made with Literal
* Mapping instead of Dict type annotation for context in render() with test
* removed Union and Context
* typo
Co-authored-by: Kacper Szmigiel <szmigielkacper@gmai.com>
Add __init__ to OrderedSet (#381)
Issue 382 (#384)
* WIP fix, pushed for testing
* added _ prefix for internal types
Co-authored-by: Kacper Szmigiel <szmigielkacper@gmai.com>
Fix parameter types for assertJSONEqual/NotEqual (#385)
Add get_supported_language_variant (#386)
Issue 309 (#383)
* added tags for user models
* type test for HttpRequest.user
* test for User and AnonymousUser tags
* httrequest test fix
* checking python version fix for readibility
* Rewrite version check for readability
* Annotate is_authenticated/is_anonymous with Literal-type
* Add auth in INSTALLED_APPS in test
* Fix wrong type assertion in test
* Fix misconception of how branch-testing works
* Remove user from WSGIRequest
* Change HttpRequest-transformer to set user-type to include AnonymousUser
* Add check for anonymous_user_info=None to appease mypy
* Isort transformers/request
* Remove trailing whitespace
* Remove unused import
Co-authored-by: Kacper Szmigiel <szmigielkacper@gmai.com>
* fix formatting and unused import
* reformatted again
Co-authored-by: Kacper Szmigiel <szmigielkacper@gmai.com>
* added tags for user models
* type test for HttpRequest.user
* test for User and AnonymousUser tags
* httrequest test fix
* checking python version fix for readibility
* Rewrite version check for readability
* Annotate is_authenticated/is_anonymous with Literal-type
* Add auth in INSTALLED_APPS in test
* Fix wrong type assertion in test
* Fix misconception of how branch-testing works
* Remove user from WSGIRequest
* Change HttpRequest-transformer to set user-type to include AnonymousUser
* Add check for anonymous_user_info=None to appease mypy
* Isort transformers/request
* Remove trailing whitespace
* Remove unused import
Co-authored-by: Kacper Szmigiel <szmigielkacper@gmai.com>
* Mapping instead of Dict type annotation for context in render() with test
* removed Union and Context
* typo
Co-authored-by: Kacper Szmigiel <szmigielkacper@gmai.com>
This is valid Django, which failed to pass with the old type-defintion:
class MyForm(Form):
myparam = MultiFileField(...)
self.clean(self, *args, **kwargs):
self.files.getlist('myparam', [])
By declaring return type as -> Callable[[_C], _C], Mypy can infer that
the decorated function has also the same arguments and return type as
the original.
View functions are constrained to return HttpResponseBase (or any
subclass of it).
Also added typecheck test coverage to most of the cases.
* Updated gitpython dependency to fix error:
ModuleNotFoundError: No module named 'gitdb.utils.compat'
* Updated Django repository git refs because old 3.0.x commit hash gave error:
stderr: 'fatal: reference is not a tree: 6cb30414bc0f83b49afc4cae76d4af5656effe9a'
* Newer Django version also needs new ignores.