Docstrings use `Optional[T]` incorrectly
I maintainer di solito rispondono entro 2 giorni
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 35/100
- Tipo di issue
- Documentazione
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Ferma
- Stack tecnologico
- python
- Ambito
- documentation
Direzione di ricerca
Inizia con l’esempio di docstring in src/handwritten/task.py e leggi l’issue collegata #209 sull’aggiunta dei type hints. Esamina i package docstrings per individuare i casi in cui Optional descrive un valore predefinito invece di un tipo nullable, quindi allinea la documentazione ai tipi effettivi dei parametri. Il lavoro è completato quando le annotazioni Optional errate sono corrette in modo coerente.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Many of this package's docstrings incorrectly conflate Optional[T] with default arguments.
typing.Optional[T] means "either a T or a None", which is orthogonal to whether the parameter has a default argument or not.
Example: https://github.com/ni/nidaqmx-python/blob/master/src/handwritten/task.py
def __init__(self, new_task_name='', *, grpc_options=None):
"""
Creates a DAQmx task.
Args:
new_task_name (Optional[str]): Specifies the name to assign to
the task.
If you use this method in a loop and specify a name for the
task, you must use the DAQmx Clear Task method within the loop
after you are finished with the task. Otherwise, NI-DAQmx
attempts to create multiple tasks with the same name, which
results in an error.
grpc_options (Optional[:class:`~nidaqmx.GrpcSessionOptions`]): Specifies
the gRPC session options.
"""
new_task_name (Optional[str])): ... means that new_task_name has a type of typing.Optional[str], but that is not the case. It has a type of str. If you do not specify an argument for new_task_name, the default argument is used, which also has a type of str.
grpc_options (Optional[:class:~nidaqmx.GrpcSessionOptions]): ... is correct. The default argument has type None, so typing.Optional[GrpcSessionOptions] is needed to accept either a GrpcSessionOptions or a None.
https://www.sphinx-doc.org/en/master/usage/extensions/example_google.html uses the syntax param2 (:obj:int, optional): . I don't know which meaning of "optional" it's using.
The best way to fix this is to add type hints and delete the types from the docstrings.
- Lingua principale
- Python
- Stelle
- 590
- Fork
- 199
- Merge medio
- 1g 18h
- PR unite (30g)
- 12
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di ni/nidaqmx-python
-
tech debt
Difficoltà 4/5 3-5 giorni Idoneità per principianti 38/100
ni/nidaqmx-python#945 ·
I maintainer di solito rispondono entro 2 giorni
-
bug
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
ni/nidaqmx-python#941 ·
I maintainer di solito rispondono entro 2 giorni
-
Potential typos in the APIForse già presa @KostaIlic2 l’ha presa 205 giorni fa. Apertabug
Difficoltà 3/5 1-2 giorni Idoneità per principianti 42/100
ni/nidaqmx-python#939 ·
I maintainer di solito rispondono entro 2 giorni
-
Add gRPC examplesApertaenhancement
Difficoltà 3/5 1-2 giorni Idoneità per principianti 45/100
ni/nidaqmx-python#917 · 1 commento · 1 reazione ·
I maintainer di solito rispondono entro 2 giorni
-
enhancement
Difficoltà 4/5 3-5 giorni Idoneità per principianti 38/100
ni/nidaqmx-python#914 · 1 commento ·
I maintainer di solito rispondono entro 2 giorni
Tutte le issue di ni/nidaqmx-python
Issue simili
-
dependencies feature github_actions good first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
wemake-services/wemake-django-template#3149 ·
I maintainer di solito rispondono entro 1 giorno
-
[request] vsg/1.1.16Apertaupstream update
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
conan-io/conan-center-index#31142 ·
I maintainer di solito rispondono entro 1 giorno
-
area:core bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
request-theme
Difficoltà 2/5 Meno di un'ora Idoneità per principianti 70/100
LizardByte/ThemerrDB#8877 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
area/install-update comp/gateway P0 sweeper:risk-compatibility type/bug
Difficoltà 2/5 Meno di un'ora Idoneità per principianti 72/100
NousResearch/hermes-agent#135997 · 3 commenti ·
I maintainer di solito rispondono entro 1 giorno