Presence of `Raises` section on Numpy docstring causes obscure error when compiling docs
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Accessibilité débutants
- 35/100
- Type d'issue
- Bug
- Clarté
- Plutôt claire
- Activité
- À l'abandon
- Stack technique
- jupyter-notebook, python
- Domaine
- documentation
Piste de recherche
Commencez par reproduire le MWE lors de la génération de la documentation et comparez-le au comportement de show_doc utilisé manuellement. Inspectez fastcore/docscrape.py autour de l’appel à dedent_lines signalé et déterminez si la section Raises doit être traitée à cet endroit ou signalée plus clairement. Le travail est terminé lorsque le MWE ne produit plus d’exception obscure et que le comportement obtenu est couvert par un test approprié, si le dépôt en fournit un.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
If a docstring is in Numpy format and contains a Raises section, which is part of the standard, the quarto-ghp GitHub Action crashes with an obscure error and long traceback.
The key part of the error is this:
File "/opt/hostedtoolcache/Python/3.12.9/x64/lib/python3.12/site-packages/fastcore/docscrape.py", line 112, in __init__
for section in SECTIONS: self[section] = dedent_lines(self[section], split=False)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.12.9/x64/lib/python3.12/site-packages/fastcore/docscrape.py", line 235, in dedent_lines
res = textwrap.dedent("\n".join(lines))
^^^^^^^^^^^^^^^^
TypeError: sequence item 0: expected str instance, Parameter found
Here's a MWE docstring:
"""Do something.
Does some stuff.
Parameters
----------
a : str
A string argument.
b : int, optional
An optional integer argument.
Raises
------
ValueError
If something is wrong with the provided parameters.
"""
Removing the Raises section solves the error, but it took a while to track down that this was the issue.
I know the preferred documenting format for nbdev is docments, but sometimes contributors write Numpy-style docstrings. It would be nice to avoid Raises sections from breaking the doc generation, or at least provide a more helpful error message.
Note that running show_doc manually in the notebook results in a UserWarning, so I don't understand why in the Action generates an exception.
I'm not sure exactly where the fix for this belongs (e.g. fastcore, workflows, ...), so starting by posting it here. The fix isn't urgent, but hopefully documenting this issue will help others who encounter it.
Many thanks to the nbdev team for providing such a valuable tool!
- Langage dominant
- Jupyter Notebook
- Étoiles
- 5.3k
- Forks
- 518
- Merge moyen
- 1 j 3 h
- PR mergées (30 j)
- 2
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Aucun modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de AnswerDotAI/nbdev
-
Bug Report: `nbdev` Parser `IndexError` on `@patch_to` with Keyword ArgumentsPeut-être pris @ruchi-mish90 l’a pris il y a 101 jours. Ouvertebug
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
AnswerDotAI/nbdev#1596 · 1 commentaire ·
-
`great-docs` by Posit Is here!Ouverte
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 25/100
AnswerDotAI/nbdev#1587 ·
-
Interested in Windows support?Peut-être pris @mrexodia l’a pris il y a 25 jours. Ouverte
Difficulté 4/5 3-5 jours Accessibilité débutants 35/100
AnswerDotAI/nbdev#1584 · 1 commentaire ·
-
Difficulté 3/5 1-2 jours Accessibilité débutants 35/100
AnswerDotAI/nbdev#1583 · 1 commentaire · 1 réaction ·
-
bug
Difficulté 3/5 1-2 jours Accessibilité débutants 52/100
AnswerDotAI/nbdev#1581 ·
Toutes les issues de AnswerDotAI/nbdev
Issues similaires
-
lesson-submission pending-review
Difficulté 1/5 Moins d'une heure Accessibilité débutants 74/100
Ikalus1988/MisakaNet#3899 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
aws-samples/sample-per-model-bedrock#549 ·
Les mainteneurs répondent en général sous 1 jour
-
documentation good first issue
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
jainam6610/calm-ui#11 ·
Les mainteneurs répondent en général sous 1 jour
-
Liens externes cassésOuverte
Difficulté 1/5 1-3 heures Accessibilité débutants 66/100
betagouv/conseillers-entreprises#4770 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
awsdocs/amazon-eks-user-guide#1257 ·