Make docstrings pass numpydoc validation
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 1/5
- Tiempo estimado
- Menos de una hora
- Aptitud para principiantes
- 35/100
- Tipo de issue
- Documentación
- Claridad
- Bien especificado
- Estado de actividad
- Estancado
- Stack tecnológico
- python
- Área
- documentation
Línea de trabajo
The traceback identifies threadpool_info and threadpool_limits in sklearn/utils/fixes.py and shows RT01 errors for both. Read the linked scikit-learn pull request (#21338) and the reported docstrings; the work is done when both pass numpydoc validation with a Returns section. The issue was opened years ago and has no comments, so check whether the linked work or newer project changes have superseded it.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
See: https://github.com/scikit-learn/scikit-learn/pull/21338
________________________________________________ test_function_docstring[sklearn.utils.fixes.threadpool_info] ________________________________________________
function_name = 'sklearn.utils.fixes.threadpool_info', request = <FixtureRequest for <Function test_function_docstring[sklearn.utils.fixes.threadpool_info]>>
@pytest.mark.parametrize("function_name", get_all_functions_names())
def test_function_docstring(function_name, request):
"""Check function docstrings using numpydoc."""
if function_name in FUNCTION_DOCSTRING_IGNORE_LIST:
request.applymarker(
pytest.mark.xfail(run=False, reason="TODO pass numpydoc validation")
)
res = numpydoc_validation.validate(function_name)
res["errors"] = list(filter_errors(res["errors"], method="function"))
if res["errors"]:
msg = repr_errors(res, method=f"Tested function: {function_name}")
> raise ValueError(msg)
E ValueError:
E
E /Users/ogrisel/code/scikit-learn/sklearn/utils/fixes.py
E
E Tested function: sklearn.utils.fixes.threadpool_info
E
E Return the maximal number of threads for each detected library.
E
E Return a list with all the supported libraries that have been found. Each
E library is represented by a dict with the following information:
E
E - "user_api" : user API. Possible values are ['blas', 'openmp'].
E - "internal_api": internal API. Possible values are ['openmp', 'openblas', 'mkl', 'blis'].
E - "prefix" : filename prefix of the specific implementation.
E - "filepath": path to the loaded library.
E - "version": version of the library (if available).
E - "num_threads": the current thread limit.
E
E In addition, each library may contain internal_api specific entries.
E
E # Errors
E
E - RT01: No Returns section found
maint_tools/test_docstrings.py:442: ValueError
_______________________________________________ test_function_docstring[sklearn.utils.fixes.threadpool_limits] _______________________________________________
function_name = 'sklearn.utils.fixes.threadpool_limits'
request = <FixtureRequest for <Function test_function_docstring[sklearn.utils.fixes.threadpool_limits]>>
@pytest.mark.parametrize("function_name", get_all_functions_names())
def test_function_docstring(function_name, request):
"""Check function docstrings using numpydoc."""
if function_name in FUNCTION_DOCSTRING_IGNORE_LIST:
request.applymarker(
pytest.mark.xfail(run=False, reason="TODO pass numpydoc validation")
)
res = numpydoc_validation.validate(function_name)
res["errors"] = list(filter_errors(res["errors"], method="function"))
if res["errors"]:
msg = repr_errors(res, method=f"Tested function: {function_name}")
> raise ValueError(msg)
E ValueError:
E
E /Users/ogrisel/code/scikit-learn/sklearn/utils/fixes.py
E
E Tested function: sklearn.utils.fixes.threadpool_limits
E
E Change the maximal number of threads that can be used in thread pools.
E
E This object can be used either as a callable (the construction of this object
E limits the number of threads), as a context manager in a `with` block to
E automatically restore the original state of the controlled libraries when exiting
E the block, or as a decorator through its `wrap` method.
E
E Set the maximal number of threads that can be used in thread pools used in
E the supported libraries to `limit`. This function works for libraries that
E are already loaded in the interpreter and can be changed dynamically.
E
E This effect is global and impacts the whole Python process. There is no thread level
E isolation as these libraries do not offer thread-local APIs to configure the number
E of threads to use in nested parallel calls.
E
E Parameters
E ----------
E limits : int, dict or None (default=None)
E The maximal number of threads that can be used in thread pools
E
E - If int, sets the maximum number of threads to `limits` for each
E library selected by `user_api`.
E
E - If it is a dictionary `{key: max_threads}`, this function sets a
E custom maximum number of threads for each `key` which can be either a
E `user_api` or a `prefix` for a specific library.
E
E - If None, this function does not do anything.
E
E user_api : "blas", "openmp" or None (default=None)
E APIs of libraries to limit. Used only if `limits` is an int.
E
E - If "blas", it will only limit BLAS supported libraries (openblas, mkl, blis).
E
E - If "openmp", it will only limit OpenMP supported libraries
E (libiomp, libgomp, libomp, vcomp). Note that it can affect the number of threads used
E by the BLAS libraries if they rely on OpenMP.
E
E - If None, this function will apply to all supported libraries.
E
E # Errors
E
E - RT01: No Returns section found
maint_tools/test_docstrings.py:442: ValueError
- Lenguaje dominante
- Python
- Estrellas
- 434
- Forks
- 38
- Merge medio
- 2 d 9 h
- PR fusionados (30 d)
- 7
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de joblib/threadpoolctl
-
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
joblib/threadpoolctl#272 · 7 comentarios ·
Los mantenedores suelen responder en 1 día
-
Make it possible to set active/spin wait behavior of LLVM/Intel OpenMP via `kmp_set_blocktime`Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 25/100
joblib/threadpoolctl#271 ·
Los mantenedores suelen responder en 1 día
-
Make it possible to inspect active/spin wait behavior of LLVM/Intel OpenMP via `kmp_get_blocktime`Abierto
Dificultad 3/5 1-2 días Aptitud para principiantes 42/100
joblib/threadpoolctl#270 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 1-2 días Aptitud para principiantes 32/100
joblib/threadpoolctl#264 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 3-5 días Aptitud para principiantes 22/100
joblib/threadpoolctl#261 · 3 comentarios ·
Los mantenedores suelen responder en 1 día
Todos los issues de joblib/threadpoolctl
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
-
[Device Support Request] HOBEIAN ZG-204ZL (Tuya PIR motion sensor with illuminance)Posiblemente ocupada @lenucksi la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
zigpy/zha-device-handlers#5493 ·
Los mantenedores suelen responder en 3 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
drevendev/BeautifulRepo#42 ·
Los mantenedores suelen responder en 1 día
-
enhancement good first issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
writerslogic/holographic-memory#93 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 66/100
antoine-tena/kiln#47 ·
Los mantenedores suelen responder en 1 día