Makes typed arguments Optional when the default argument is None
Project description
auto-optional: Makes typed arguments Optional when the default argument is None.
Documentation: auto-optional.daanluttik.nl
Source Code: https://github.com/luttik/auto-optional
Purpose
The 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):
...
Install
Install with pip install auto-optional
.
Run
After installing you can run auto-optional using auto-optional [path]
(path is an optional argument).
Properties
- Existing imports are reused.
import as
statements are properly handled.
Things of note
For all these points I welcome pull-requests.
- There is no exclude (for file patterns) option yet
- There is no ignore (for code lines) option yet
- Code is aways read and written as
UTF-8
(which is accurate most of the time). - There is no
diff
orcheck
command yet for a dry-run or linting.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
auto-optional-0.1.2.tar.gz
(5.0 kB
view hashes)
Built Distribution
Close
Hashes for auto_optional-0.1.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8b150eefec27973f8031a69dec8f2cce29257ea1fdb2c05dbe0bff75dd7a9033 |
|
MD5 | 8579c06b3197eacd88583807ca9905a0 |
|
BLAKE2b-256 | 994bff77af98d6dac0e4b4fc375ca59b8ef73432f14dec9c85d8957b77f1738f |