auto-optional: adds the Optional type-hint to arguments where the default value is None
Documentation: auto-optional.daanluttik.nl
Source Code: github.com/luttik/auto-optional
What does auto-optional doThe basic purpose of auto-optional is ensuring that whenever a default argument is None
the type annotation is Optional.
For example:
def foo(bar: str = None): ...
Would turn into
from typing import Optional def foo(bar: Optional[str] = None): ...
None
parameter implies an Optional
type.auto-optional was covered on PythonBytes #251
I love these little tools that you can run against your code that will just reformat them to be better.
— Michael Kennedy
Install with pip install auto-optional
.
After installing you can run auto-optional using auto-optional [paths...]
(if no path is provided it'll process the current working directory).
You can run auto-optional via pre-commit. Add the following text to your repositories .pre-commit-config.yaml
:
repos: - repo: https://github.com/luttik/auto-optional rev: v0.3.1 # The version of auto-optional to use hooks: - id: auto-optionalThings that are handled well
Optional
are supported, that means both;
Union[X, None]
x | None
(allowed since python 3.10+).import as
and from typing import ...
statements are properly handled.For all these points you can leave a thumbs-up if you want it. Also, I welcome pull-requests for these issues.
UTF-8
(which is accurate most of the time). [#4]diff
or check
command yet for a dry-run or linting. [#5]RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4