Numpy's Sphinx extensions

Related tags

Documentationnumpydoc
Overview
https://travis-ci.org/numpy/numpydoc.png?branch=master

numpydoc -- Numpy's Sphinx extensions

This package provides the numpydoc Sphinx extension for handling docstrings formatted according to the NumPy documentation format. The extension also adds the code description directives np:function, np-c:function, etc.

numpydoc requires Python 3.5+ and sphinx 1.6.5+.

For usage information, please refer to the documentation.

The numpydoc docstring guide explains how to write docs formatted for this extension, and the user guide explains how to use it with Sphinx.

Comments
  • Sphinx 2.0 compatibility issue?

    Sphinx 2.0 compatibility issue?

    My readthedocs project has started failing to render my docs according to the numpydoc (v0.9.1) layout.


    E.g. this is how my docs looked a couple of months ago:

    image


    And now my docs build to this:

    image


    It appears that this is concurrent with RTD upgrading its sphinx version from 1.8 to 2.0. Is this possibly the culprit? I am not sure how best to proceed in debugging this, so any guidance would be very much appreciated!

    bug 
    opened by rsokl 45
  • Format attributes like parameters

    Format attributes like parameters

    Resolves #102. Resolves #104. Resolves https://github.com/scikit-learn/scikit-learn/issues/9495

    • Provide links to autogen when possible
    • Use fake (commented) autosummary nodes (as already used in scipy docs)

    I'm a bit confused about how/whether the autosummaries inside numpydoc-munged docstrings work. I'm not quite sure whether this patch is working on scipy docs and would appreciate someone checking. It's good for scikit-learn.

    maintenance 
    opened by jnothman 37
  • Add cross-reference links to parameter types

    Add cross-reference links to parameter types

    Tokens of the type description that are determined to be "link-worthy" are enclosed in a new role called xref_param_type. This role when when processed adds a pending_xref node to the DOM. If these types cross-references are not resolved when the build ends, sphinx does not complain. This forgives errors made when deciding whether tokens are "link-worthy". And provided text from the type description is not lost in the processing, the only unwanted outcome is a type link (due to coincidence) when none was desired.

    Added two options:

    1. numpydoc_xref_param_type
    2. numpydoc_xref_aliases

    closes #57

    enhancement 
    opened by has2k1 30
  • Add docstring validation script (from pandas)

    Add docstring validation script (from pandas)

    xref #213

    Updated the pandas validation script to be generic. To validate all docstrings of a project will probably require some work, to consider how the rst lists all public objects.

    Removed from the original script, the next pandas-only features:

    • Setting max_open_warning setting from matplotlib
    • PEP-8 validation of examples (will add in a follow up, but will require a dependency, and also pandas auto-imports modules, and requires updating many docstrings in the tests
    • Check to see if numpy or pandas where imported in the examples
    • Check to see if docstrings mentioned private classes (in pandas NDFrame)
    • GitHub link in the json report
    • Changed pprint_thing by str when rendering the wrong parameter error message
    • Source file in report is not relative to pandas path
    • Methods validated by introspecting Series and DataFrame (besides the ones obtained from the API rst

    Tried with a scikit-learn class and it runs the validation correctly:

    ################################################################################
    ############## Docstring (sklearn.linear_model.LinearRegression)  ##############
    ################################################################################
    
    Ordinary least squares Linear Regression.
    
    Parameters
    ----------
    fit_intercept : boolean, optional, default True
        whether to calculate the intercept for this model. If set
        to False, no intercept will be used in calculations
        (e.g. data is expected to be already centered).
    
    normalize : boolean, optional, default False
        This parameter is ignored when ``fit_intercept`` is set to False.
        If True, the regressors X will be normalized before regression by
        subtracting the mean and dividing by the l2-norm.
        If you wish to standardize, please use
        :class:`sklearn.preprocessing.StandardScaler` before calling ``fit`` on
        an estimator with ``normalize=False``.
    
    copy_X : boolean, optional, default True
        If True, X will be copied; else, it may be overwritten.
    
    n_jobs : int, optional, default 1
        The number of jobs to use for the computation.
        If -1 all CPUs are used. This will only provide speedup for
        n_targets > 1 and sufficient large problems.
    
    Attributes
    ----------
    coef_ : array, shape (n_features, ) or (n_targets, n_features)
        Estimated coefficients for the linear regression problem.
        If multiple targets are passed during the fit (y 2D), this
        is a 2D array of shape (n_targets, n_features), while if only
        one target is passed, this is a 1D array of length n_features.
    
    intercept_ : array
        Independent term in the linear model.
    
    Notes
    -----
    From the implementation point of view, this is just plain Ordinary
    Least Squares (scipy.linalg.lstsq) wrapped as a predictor object.
    
    ################################################################################
    ################################## Validation ##################################
    ################################################################################
    
    6 Errors found:
    	Closing quotes should be placed in the line after the last text in the docstring (do not close the quotes in the same line as the text, or leave a blank line between the last text and the quotes)
    	Double line break found; please use only one blank line to separate sections or paragraphs, and do not leave blank lines at the end of docstrings
    	Parameter "fit_intercept" type should use "bool" instead of "boolean"
    	Parameter "fit_intercept" description should start with a capital letter
    	Parameter "normalize" type should use "bool" instead of "boolean"
    	Parameter "copy_X" type should use "bool" instead of "boolean"
    3 Warnings found:
    	No extended summary found
    	See Also section not found
    	No examples section found
    
    enhancement 
    opened by datapythonista 27
  • DOC: Switch docs to pydata-sphinx-theme

    DOC: Switch docs to pydata-sphinx-theme

    NumPy recently switched to the pydata-sphinx-theme for its documentation. The new theme is now deployed for the stable docs as of v1.20. This PR switches the themes so numpydoc's documentation theme is consistent with numpy's.

    enhancement maintenance 
    opened by rossbar 24
  • BUG: Reference de-duplication isn't parallel-safe

    BUG: Reference de-duplication isn't parallel-safe

    Currently Numpydoc is marked as a parallel-safe sphinx plugin, but the renaming of duplicate references in rename_references is not parallel-safe because reference_offset will be [0] in each process at the start of the function call.

    I'm running into conflicts when building the Astropy docs:

    /Users/tom/Dropbox/Code/Astropy/astropy/astropy/stats/biweight.py:docstring of astropy.stats.biweight_midcorrelation:70: WARNING: duplicate citation R11, other instance in /Users/tom/Dropbox/Code/Astropy/astropy/docs/modeling/index.rst
    /Users/tom/Dropbox/Code/Astropy/astropy/astropy/stats/biweight.py:docstring of astropy.stats.biweight_midcovariance:138: WARNING: duplicate citation R33, other instance in /Users/tom/Dropbox/Code/Astropy/astropy/docs/api/astropy.coordinates.BaseCoordinateFrame.rst
    /Users/tom/Dropbox/Code/Astropy/astropy/astropy/stats/biweight.py:docstring of astropy.stats.biweight_midvariance:101: WARNING: duplicate citation R56, other instance in /Users/tom/Dropbox/Code/Astropy/astropy/docs/api/astropy.coordinates.EarthLocation.rst
    /Users/tom/Dropbox/Code/Astropy/astropy/astropy/stats/biweight.py:docstring of astropy.stats.biweight_midvariance:103: WARNING: duplicate citation R66, other instance in /Users/tom/Dropbox/Code/Astropy/astropy/docs/api/astropy.coordinates.EarthLocation.rst
    /Users/tom/Dropbox/Code/Astropy/astropy/astropy/stats/bayesian_blocks.py:docstring of astropy.stats.FitnessFunc:7: WARNING: Unknown target name: "scargle2012".
    /Users/tom/Dropbox/Code/Astropy/astropy/astropy/stats/bayesian_blocks.py:docstring of astropy.stats.FitnessFunc:26: WARNING: Unknown target name: "scargle2012".
    docstring of astropy.stats.LombScargle.false_alarm_probability:62: WARNING: duplicate citation R1313, other instance in /Users/tom/Dropbox/Code/Astropy/astropy/docs/api/astropy.coordinates.SkyCoord.rst
    /Users/tom/Dropbox/Code/Astropy/astropy/astropy/modeling/polynomial.py:docstring of astropy.modeling.polynomial.SIP:55: WARNING: duplicate citation R11, other instance in /Users/tom/Dropbox/Code/Astropy/astropy/docs/api/astropy.stats.biweight_midcorrelation.rst
    /Users/tom/Dropbox/Code/Astropy/astropy/astropy/modeling/functional_models.py:docstring of astropy.modeling.functional_models.AiryDisk2D:91: WARNING: duplicate citation R11, other instance in /Users/tom/Dropbox/Code/Astropy/astropy/docs/api/astropy.stats.biweight_midcorrelation.rst
    /Users/tom/Dropbox/Code/Astropy/astropy/astropy/modeling/functional_models.py:docstring of astropy.modeling.functional_models.Gaussian2D:133: WARNING: duplicate citation R33, other instance in /Users/tom/Dropbox/Code/Astropy/astropy/docs/api/astropy.stats.biweight_midcovariance.rst
    /Users/tom/Dropbox/Code/Astropy/astropy/astropy/modeling/optimizers.py:docstring of astropy.modeling.optimizers.SLSQP:19: WARNING: duplicate citation R99, other instance in /Users/tom/Dropbox/Code/Astropy/astropy/docs/api/astropy.coordinates.Galactic.rst
    /Users/tom/Dropbox/Code/Astropy/astropy/astropy/modeling/optimizers.py:docstring of astropy.modeling.optimizers.Simplex:18: WARNING: duplicate citation R1111, other instance in /Users/tom/Dropbox/Code/Astropy/astropy/docs/api/astropy.stats.LombScargle.rst
    
    bug needs-work needs-decision 
    opened by astrofrog 22
  • ENH: Xref param type

    ENH: Xref param type

    Takes over and closes #150 with:

    • [x] rebase
    • [x] fixing tests
    • [x] changing into opt-in behavior
    • [x] ~~fix rendering bugs~~Rendering bugs were a sphinx issue https://github.com/sphinx-doc/sphinx/issues/5959
    • [x] add hint about CSS styles for uniformity.
    enhancement 
    opened by larsoner 21
  • Validation is not strict enough

    Validation is not strict enough

    The docs suggest that python -m numpydoc can be used to validate docstrings. However, numpydoc reports only the most egregious breakages of the standard.

    If we want to help users write high quality docstrings, we should provide a stronger checker.

    In the following example, only the incorrect header gets caught:

    def foo(x):
        """The first line should be a one line description, not a multiple
        paragraph sentence.
    
        References
        ----------
        These are out of place and incorrectly formatted.
    
        Some Heading
        ------------
        Unknown heading
    
        Parameters
        ----------
        x :
        I should specify a type for this parameter
    
        """
        return x
    
    opened by stefanv 20
  • Release?

    Release?

    It's been over a year since the last release. I would like to use recent changes in scikit-learn, and it looks like numpy too is being built on the latest release, not on master. Could we more generally plan half-yearly releases or something, even if they're quite small?

    opened by jnothman 20
  • Ensure reference renaming is parallel-safe

    Ensure reference renaming is parallel-safe

    Fixes #112. Builds upon #135. Makes #130 (breaking table whitespace) worse, but see below.

    Also fixes #114

    At autodoc-process-docstring time, this prefixes each reference with a token indicative of which docstring it belongs to and then relabels the text of the reference in the doctree once the reST is parsed. The rendered reference naming therefore reflects what was in the original reST, rather than something with prefixes etc. So you get [1] rather than [R1].

    I'm not sure how to rigorously test this but will post some images soon.

    The issue of breaking table whitespace (#130) is more minor than #112. It is exacerbated by this patch since references become much longer. There may be a more ideal solution that involves post-processing the doctrees to do all of the reference renaming (i.e. without this decorate-and-undecorate approach), but when I tried to implement it, I realised it would involve hacking footnotes to become citations, handling initial broken resolutions (incl docutils.nodes.problematic), and other madness. It may come later. In the meantime I think we should just tell users that citations cannot be used in tables.

    needs-decision 
    opened by jnothman 18
  • Render numpydoc strings from a template

    Render numpydoc strings from a template

    In scikit-learn, we would like to start tracking the upstream numpydoc (https://github.com/scikit-learn/scikit-learn/pull/7355). However, we currently render Attributes closely after Parameters, due to their significance, etc. Numpydoc renders Attributes after examples, notes, references, etc. which we find unideal.

    This patch allows us to add templates/numpydoc_doscstring.rst containing:

    {{index}}
    {{summary}}
    {{extended_summary}}
    {{parameters}}
    {{returns}}
    {{yields}}
    {{other_parameters}}
    {{attributes}}
    {{raises}}
    {{warns}}
    {{warnings}}
    {{see_also}}
    {{notes}}
    {{references}}
    {{examples}}
    {{methods}}
    

    to achieve the sought reordering. It is clearly also much more flexible than that, but I do not have (many) grand designs as yet.

    enhancement 
    opened by jnothman 18
  • Change PR06 logic to only fail when type is used standalone

    Change PR06 logic to only fail when type is used standalone

    Closes https://github.com/numpy/numpydoc/issues/446

    This is a draft PR for addressing https://github.com/numpy/numpydoc/issues/446 which hasn't yet been discussed. For reviewing, I'd pay special attention to how I went the logic in validate.py, especially the regex.

    opened by amoeba 0
  • PR06 fails when offending type name is used only as a substring

    PR06 fails when offending type name is used only as a substring

    I'm implementing numpydoc validation in my codebase and I have a case where I want to document a parameter like so,

        my_param : SubtringMatcher
    
    Full script example
    def my_fun(my_arg):
        """
        A function to test numpydoc behavior.
    
        This just tests out numpydoc checks for PR06.
    
        Parameters
        ----------
        my_arg : MyCustomSubstringClass
            My description goes here.
    
        See Also
        --------
        my_other_fun : Another fun I wrote.
        
        Examples
        --------
        arg = MyCustomSubstringClass("test")
        my_fun(arg)
        """
        pass
    
    

    This fails with:

    $ python -m numpydoc --validate script.my_fun
    script.my_fun:PR06:Parameter "my_arg" type should use "str" instead of "string"
    

    Would the project be open to changing how that validation works so PR06 only fails when an offending type name is used all by itself rather than as a substring in a custom type name?

    opened by amoeba 1
  • Italicize type-only values in `Returns` section

    Italicize type-only values in `Returns` section

    type-only values as in

    Returns
    -------
    int
    

    should be in italics for consistency with the parameter_name : int style, where int would be in italics.

    Possible reason not to do this: "type-only" is just a convention and it could also be "name-only" and numpydoc wants to stay agnostic on this. If this is the case, feel free to close.

    opened by KendrickLamarck 0
  • Trailing underscores in types

    Trailing underscores in types

    Trailing underscores in types in the Parameters and Returns sections have to be escaped in order to not give an Unknown target name warning.

    Examples that DON'T work :

    def identity(object_):
        """Identity function.
    
        Parameters
        ----------
        object_ : Any
    
        Returns
        -------
        object_ : type(object_)
            Just `object_` again.
        """
        return object_
    

    The returns section

    Returns
    -------
    type(object_)
        Just `object_` again.
    

    Without a name doesn't work either. In both cases, I have to write type(object\_).

    I don't know if this is fixable like it was for parameter names (#63). I guess types are actually supposed to be links sometimes, in contrast to parameter names? Feel free to close if that is the case and there's just not really a possible fix.

    opened by KendrickLamarck 2
  • style of `[1]` is strange in numpydoc docs

    style of `[1]` is strange in numpydoc docs

    See https://numpydoc.readthedocs.io/en/latest/format.html#id8

    image

    Here obviously, the left and right brackets have different styles - different colors and different text sizes.

    opened by njzjz 2
  • Add validation for optional parameters

    Add validation for optional parameters

    This PR adds validation check for optional parameters. If an optional parameter exists in the signature of a function, the documentation is checked for one of three options in the 'type':

    1. Use of optional
    2. Use of default
    3. Use of {'option1', 'option2'}

    Related to #367.

    opened by MatthewFlamm 2
Releases(v1.5.0)
  • v1.5.0(Oct 8, 2022)

    What's Changed

    • DOC: Add theme switcher and default to lightmode. by @rossbar in https://github.com/numpy/numpydoc/pull/414
    • Update GH actions by @jarrodmillman in https://github.com/numpy/numpydoc/pull/416
    • ENH: Add support for dict show_inherited_class_members by @larsoner in https://github.com/numpy/numpydoc/pull/415
    • Update precommit linters by @jarrodmillman in https://github.com/numpy/numpydoc/pull/417
    • docs: fix validation include line numbers by @thatlittleboy in https://github.com/numpy/numpydoc/pull/418
    • Require sphinx>=4.2 by @jarrodmillman in https://github.com/numpy/numpydoc/pull/411
    • Require sphinx>=4.2 (cleanup) by @jarrodmillman in https://github.com/numpy/numpydoc/pull/421
    • Remove numpydoc_use_blockquotes by @jarrodmillman in https://github.com/numpy/numpydoc/pull/422
    • DOC: Use :ref: when referring to section headers by @namurphy in https://github.com/numpy/numpydoc/pull/424
    • ENH: Update validate.py to allow parameters with trailing underscores. by @stefmolin in https://github.com/numpy/numpydoc/pull/425
    • BUG: Fix returns parsing no name by @rossbar in https://github.com/numpy/numpydoc/pull/429
    • Use requirements/*.txt files for CI by @jarrodmillman in https://github.com/numpy/numpydoc/pull/435
    • Use Python 3.10 to build docs by @jarrodmillman in https://github.com/numpy/numpydoc/pull/436
    • Update precommit hooks by @jarrodmillman in https://github.com/numpy/numpydoc/pull/437
    • Add cached property support by @rossbar in https://github.com/numpy/numpydoc/pull/433
    • Fix front page by @jarrodmillman in https://github.com/numpy/numpydoc/pull/434
    • Support Python 3.11 by @jarrodmillman in https://github.com/numpy/numpydoc/pull/438
    • Update pydata-sphinx-theme by @jarrodmillman in https://github.com/numpy/numpydoc/pull/440
    • Update doc requirements by @jarrodmillman in https://github.com/numpy/numpydoc/pull/441

    New Contributors

    • @thatlittleboy made their first contribution in https://github.com/numpy/numpydoc/pull/418
    • @namurphy made their first contribution in https://github.com/numpy/numpydoc/pull/424
    • @stefmolin made their first contribution in https://github.com/numpy/numpydoc/pull/425

    Full Changelog: https://github.com/numpy/numpydoc/compare/v1.4.0...v1.5.0

    Source code(tar.gz)
    Source code(zip)
  • v1.5.0rc1(Oct 4, 2022)

    What's Changed

    • DOC: Add theme switcher and default to lightmode. by @rossbar in https://github.com/numpy/numpydoc/pull/414
    • Update GH actions by @jarrodmillman in https://github.com/numpy/numpydoc/pull/416
    • ENH: Add support for dict show_inherited_class_members by @larsoner in https://github.com/numpy/numpydoc/pull/415
    • Update precommit linters by @jarrodmillman in https://github.com/numpy/numpydoc/pull/417
    • docs: fix validation include line numbers by @thatlittleboy in https://github.com/numpy/numpydoc/pull/418
    • Require sphinx>=4.2 by @jarrodmillman in https://github.com/numpy/numpydoc/pull/411
    • Require sphinx>=4.2 (cleanup) by @jarrodmillman in https://github.com/numpy/numpydoc/pull/421
    • Remove numpydoc_use_blockquotes by @jarrodmillman in https://github.com/numpy/numpydoc/pull/422
    • DOC: Use :ref: when referring to section headers by @namurphy in https://github.com/numpy/numpydoc/pull/424
    • ENH: Update validate.py to allow parameters with trailing underscores. by @stefmolin in https://github.com/numpy/numpydoc/pull/425
    • BUG: Fix returns parsing no name by @rossbar in https://github.com/numpy/numpydoc/pull/429
    • Use requirements/*.txt files for CI by @jarrodmillman in https://github.com/numpy/numpydoc/pull/435
    • Use Python 3.10 to build docs by @jarrodmillman in https://github.com/numpy/numpydoc/pull/436
    • Update precommit hooks by @jarrodmillman in https://github.com/numpy/numpydoc/pull/437
    • Add cached property support by @rossbar in https://github.com/numpy/numpydoc/pull/433
    • Fix front page by @jarrodmillman in https://github.com/numpy/numpydoc/pull/434
    • Support Python 3.11 by @jarrodmillman in https://github.com/numpy/numpydoc/pull/438

    New Contributors

    • @thatlittleboy made their first contribution in https://github.com/numpy/numpydoc/pull/418
    • @namurphy made their first contribution in https://github.com/numpy/numpydoc/pull/424
    • @stefmolin made their first contribution in https://github.com/numpy/numpydoc/pull/425

    Full Changelog: https://github.com/numpy/numpydoc/compare/v1.4.0...v1.5.0rc1

    Source code(tar.gz)
    Source code(zip)
  • v1.4.0(Jun 9, 2022)

    What's Changed

    • Use black by @jarrodmillman in https://github.com/numpy/numpydoc/pull/391
    • Ignore black formatting by @jarrodmillman in https://github.com/numpy/numpydoc/pull/394
    • Test on 3.11 by @jarrodmillman in https://github.com/numpy/numpydoc/pull/375
    • Update pre-commit by @jarrodmillman in https://github.com/numpy/numpydoc/pull/396
    • Cleanup sphinx conf by @jarrodmillman in https://github.com/numpy/numpydoc/pull/397
    • Remove old warning filters by @jarrodmillman in https://github.com/numpy/numpydoc/pull/398
    • Fix bug with version name by @jarrodmillman in https://github.com/numpy/numpydoc/pull/400
    • Test prereleases of requirements by @jarrodmillman in https://github.com/numpy/numpydoc/pull/395
    • Add workaround for pytest failures on 3.11b2 by @jarrodmillman in https://github.com/numpy/numpydoc/pull/404
    • Use node.findall if available (docutils 18.x) by @drammock in https://github.com/numpy/numpydoc/pull/403
    • Test docutils 0.18.1 by @jarrodmillman in https://github.com/numpy/numpydoc/pull/402
    • Update GH actions by @jarrodmillman in https://github.com/numpy/numpydoc/pull/406
    • Fix CI by @jarrodmillman in https://github.com/numpy/numpydoc/pull/410
    • Remove pytest py3.11b2 workaround by @jarrodmillman in https://github.com/numpy/numpydoc/pull/407

    New Contributors

    • @drammock made their first contribution in https://github.com/numpy/numpydoc/pull/403

    Full Changelog: https://github.com/numpy/numpydoc/compare/v1.3.1...v1.4.0

    Source code(tar.gz)
    Source code(zip)
  • v1.4.0rc1(Jun 8, 2022)

    What's Changed

    • Use black by @jarrodmillman in https://github.com/numpy/numpydoc/pull/391
    • Ignore black formatting by @jarrodmillman in https://github.com/numpy/numpydoc/pull/394
    • Test on 3.11 by @jarrodmillman in https://github.com/numpy/numpydoc/pull/375
    • Update pre-commit by @jarrodmillman in https://github.com/numpy/numpydoc/pull/396
    • Cleanup sphinx conf by @jarrodmillman in https://github.com/numpy/numpydoc/pull/397
    • Remove old warning filters by @jarrodmillman in https://github.com/numpy/numpydoc/pull/398
    • Fix bug with version name by @jarrodmillman in https://github.com/numpy/numpydoc/pull/400
    • Test prereleases of requirements by @jarrodmillman in https://github.com/numpy/numpydoc/pull/395
    • Add workaround for pytest failures on 3.11b2 by @jarrodmillman in https://github.com/numpy/numpydoc/pull/404
    • Use node.findall if available (docutils 18.x) by @drammock in https://github.com/numpy/numpydoc/pull/403
    • Test docutils 0.18.1 by @jarrodmillman in https://github.com/numpy/numpydoc/pull/402
    • Update GH actions by @jarrodmillman in https://github.com/numpy/numpydoc/pull/406

    New Contributors

    • @drammock made their first contribution in https://github.com/numpy/numpydoc/pull/403

    Full Changelog: https://github.com/numpy/numpydoc/compare/v1.3.1...v1.4.0rc1

    Source code(tar.gz)
    Source code(zip)
  • v1.3.1(Apr 30, 2022)

    What's Changed

    • Update doc requirements by @jarrodmillman in https://github.com/numpy/numpydoc/pull/389
    • Update manifest by @jarrodmillman in https://github.com/numpy/numpydoc/pull/388

    Full Changelog: https://github.com/numpy/numpydoc/compare/v1.3.0...v1.3.1

    Source code(tar.gz)
    Source code(zip)
  • v1.3.0(Apr 29, 2022)

    Requires Python 3.7+ and Sphinx 3.0+.

    What's Changed

    • Remove deprecated numpydoc_edit_link by @jarrodmillman in https://github.com/numpy/numpydoc/pull/372
    • Cleanup cruft by @jarrodmillman in https://github.com/numpy/numpydoc/pull/371
    • Add pre-commit hook / linter by @jarrodmillman in https://github.com/numpy/numpydoc/pull/374
    • DOC: fix broken link to built-in validation checks. by @rossbar in https://github.com/numpy/numpydoc/pull/379
    • Runtime verification of sphinx and jinja2 versions by @rossbar in https://github.com/numpy/numpydoc/pull/381
    • MAINT: Dont import for version by @larsoner in https://github.com/numpy/numpydoc/pull/382
    • Update tests + coverage config to rm warnings. by @rossbar in https://github.com/numpy/numpydoc/pull/383
    • Require sphinx>3 by @jarrodmillman in https://github.com/numpy/numpydoc/pull/385

    Full Changelog: https://github.com/numpy/numpydoc/compare/v1.2.1...v1.3.0

    Source code(tar.gz)
    Source code(zip)
  • v1.3rc1(Apr 25, 2022)

  • v1.2.1(Mar 29, 2022)

    Requires Python 3.7+ and Sphinx 1.8+.

    Full Changelog

    Implemented enhancements

    Fixed bugs

    Closed issues

    • Validation check YD01 not implemented properly #365
    • Support numpydoc validation without running sphinx #364
    • 1.2: change tagging convention? #360
    Source code(tar.gz)
    Source code(zip)
  • numpydoc-1.2(Jan 24, 2022)

    Requires Python 3.7+ and Sphinx 1.8+.

    Implemented enhancements

    Fixed bugs

    • How to specify that parameter can equal the string 'integer'? #341
    • Fix validation bug when parameter type is set of options. #347 (rossbar)
    • Escape newline in docstring. #345 (Carreau)
    • Correctly validate parameters under the "Other Parameters" section #337 (dcbr)
    • BUG: fix an incomplete check in Reader.\_error\_location #308 (rgommers)
    • MAINT: pytest ignore doc directory. #296 (rossbar)
    • DOC: fix inaccuracy in validate docstring. #294 (rossbar)
    • Fix param parsing. #286 (Carreau)
    • BUG: Properly parse See Also when summary on first line. #283 (Carreau)
    • BUG: fix role regex. #280 (Carreau)
    • fix splitting of parameter lines. #279 (Carreau)

    Closed issues

    • Class methods (@classmethod) are not documented using numpydoc #340
    • Exclude certain methods from METHODS section #338
    • Warnings is not allowed in "GL06" check #334
    • Add version to style guide #333
    • numpydoc does not render parameters as expected #329
    • 1.1.0: pytest warnings #324
    • RTD configuration - latest #321
    • Rendering of types in latest doc build #318
    • Anchors for individual sections in numpydoc doc? #317
    • Development documentation not up-to-date #311
    • Warning: autosummary: stub file not found #290
    • Wrong number of Parameter for numpy array. #285
    • syntax to document default values #284
    • Failed See Also Parsing. #281
    • Sphinx emits "WARNING: py:class reference target not found" with numpydoc 1.1.0 #275
    Source code(tar.gz)
    Source code(zip)
  • numpydoc-1.2rc1(Jan 21, 2022)

  • v1.1.0(Jul 1, 2020)

    Implemented enhancements

    • MAINT: Suggestions from reviewing test suite #271 <https://github.com/numpy/numpydoc/pull/271>__ (rossbar <https://github.com/rossbar>__)
    • DEV: Add testing requirements #267 <https://github.com/numpy/numpydoc/pull/267>__ (rossbar <https://github.com/rossbar>__)
    • BUG: Defer to autodoc for signatures #221 <https://github.com/numpy/numpydoc/pull/221>__ (thequackdaddy <https://github.com/thequackdaddy>__)

    Fixed bugs

    • function signatures for *args, **kwargs objects off #218 <https://github.com/numpy/numpydoc/issues/218>__
    • BUG: Connect to earlier event #269 <https://github.com/numpy/numpydoc/pull/269>__ (larsoner <https://github.com/larsoner>__)

    Closed issues

    • “Handler <function mangle_docstrings at 0x7f64b5ba57b8> for event ‘autodoc-process-docstring’ threw an exception” #268 <https://github.com/numpy/numpydoc/issues/268>__
    • Timing of next release #249 <https://github.com/numpy/numpydoc/issues/249>__
    • self included in list of params for method #220 <https://github.com/numpy/numpydoc/issues/220>__

    Additional notes

    • Due to merging of #221 <https://github.com/numpy/numpydoc/pull/221>__, self and cls no longer will appear in method signatures.
    Source code(tar.gz)
    Source code(zip)
  • v1.0.0(May 26, 2020)

    Implemented enhancements:

    Fixed bugs

    Removed

    • MNT Drop Python 2.7 and 3.4 support #236 (rth)

    Closed issues

    • Prefix added to reference keys in class docstrings #263
    • Test failure with python 3.9 #261
    • sphinx doc napoleon extension maintainer interest request #251
    • Missing reference to float_power function in the ufunc list #250

    Additional notes

    Source code(tar.gz)
    Source code(zip)
  • v0.9.1(Apr 23, 2019)

    This is a bug fix release for 0.9.0 with only one change:

    Merged pull requests:

    • Updating minimum sphinx version in setup.py #211

    Closed issues:

    • AttributeError: 'module' object has no attribute 'getLogger' #210
    Source code(tar.gz)
    Source code(zip)
  • v0.9.0(Apr 21, 2019)

    Implemented enhancements:

    Fixed bugs:

    • References messed up #177
    • BUG?: References always have an errant second link #169
    • BUG: turn member descriptor attributes into links #201 (mattip)
    • FIX: Fix collections.abc imports #195 (larsoner)
    • FIX: Escape chars in re #194 (larsoner)
    • Fix markup in format.rst. #193 (anntzer)
    • Move setup of autosummary earlier in setup(). #191 (anntzer)
    • Only print the index if it is necessary. #187 (hmaarrfk)
    • FIX pedantic handling of whitespace in reference regex #181 (jnothman)
    • FIX remove duplicated citation back-references #180 (jnothman)
    • Use DEDUPLICATION_TAG to determine whether a citation node is in a docstring #179 (jnothman)
    • FIX parsing of type-only return params #175 (timhoffm)
    • pip --use-wheel no longer exists #174 (jnothman)
    • DOC: Add missing backslash to omega for inline math example. #171 (pvanmulbregt)
    • DOC: remove links to numpy repo file #167 (mattip)
    • Escape the * in *args and **kwargs #155 (has2k1)

    Closed issues:

    • autosummary fails with numpydoc where napoleon succeeds #204
    • NumpyDocString doesn't roundtrip well #188
    • Generating a docstring from a numpydoc object #186
    • make parameters and attributes anchors in docstrings #185
    • BUG: Plot(s) not rendered if docstring ends with normal text after show command #162
    • Location reporting returns useless information #115
    • Anonymous return values have their types populated in the name slot of the tuple. #72
    • support for coroutine #47
    • multiple entries in a See Also section #28
    Source code(tar.gz)
    Source code(zip)
Bring RGB to life in Neovim

Bring RGB to life in Neovim Change your RGB devices' color depending on Neovim's mode. Fast and asynchronous plugin to live your vim-life to the fulle

Antoine 40 Oct 27, 2022
Soccerdata - Efficiently scrape soccer data from various sources

SoccerData is a collection of wrappers over soccer data from Club Elo, ESPN, FBr

Pieter Robberechts 195 Jan 04, 2023
CoderByte | Practice, Tutorials & Interview Preparation Solutions|

CoderByte | Practice, Tutorials & Interview Preparation Solutions This repository consists of solutions to CoderByte practice, tutorials, and intervie

Eda AYDIN 6 Aug 09, 2022
Generate modern Python clients from OpenAPI

openapi-python-client Generate modern Python clients from OpenAPI 3.x documents. This generator does not support OpenAPI 2.x FKA Swagger. If you need

555 Jan 02, 2023
A simple document management REST based API for collaboratively interacting with documents

documan_api A simple document management REST based API for collaboratively interacting with documents.

Shahid Yousuf 1 Jan 22, 2022
Yet Another MkDocs Parser

yamp Motivation You want to document your project. You make an effort and write docstrings. You try Sphinx. You think it sucks and it's slow -- I did.

Max Halford 10 May 20, 2022
A simple flask application to collect annotations for the Turing Change Point Dataset, a benchmark dataset for change point detection algorithms

AnnotateChange Welcome to the repository of the "AnnotateChange" application. This application was created to collect annotations of time series data

The Alan Turing Institute 16 Jul 21, 2022
Materi workshop "Light up your Python!" Himpunan Mahasiswa Sistem Informasi Fakultas Ilmu Komputer Universitas Singaperbangsa Karawang, 4 September 2021 (Online via Zoom).

Workshop Python UNSIKA 2021 Materi workshop "Light up your Python!" Himpunan Mahasiswa Sistem Informasi Fakultas Ilmu Komputer Universitas Singaperban

Eka Putra 20 Mar 24, 2022
Pydocstringformatter - A tool to automatically format Python docstrings that tries to follow recommendations from PEP 8 and PEP 257.

Pydocstringformatter A tool to automatically format Python docstrings that tries to follow recommendations from PEP 8 and PEP 257. See What it does fo

Daniël van Noord 31 Dec 29, 2022
100 Days of Code Learning program to keep a habit of coding daily and learn things at your own pace with help from our remote community.

100 Days of Code Learning program to keep a habit of coding daily and learn things at your own pace with help from our remote community.

Git Commit Show by Invide 41 Dec 30, 2022
Autolookup GUI Plugin for Plover

Word Tray for Plover Word Tray is a GUI plugin that automatically looks up efficient outlines for words that start with the current input, much like a

Kathy 3 Jun 08, 2022
Generates, filters, parses, and cleans data regarding the financial disclosures of judges in the American Judicial System

This repository contains code that gets data regarding financial disclosures from the Court Listener API main.py: contains driver code that interacts

Ali Rastegar 2 Aug 06, 2022
This repo provides a package to automatically select a random seed based on ancient Chinese Xuanxue

🤞 Random Luck Deep learning is acturally the alchemy. This repo provides a package to automatically select a random seed based on ancient Chinese Xua

Tong Zhu(朱桐) 33 Jan 03, 2023
:blue_book: Automatic documentation from sources, for MkDocs.

mkdocstrings Automatic documentation from sources, for MkDocs. Features Python handler features Requirements Installation Quick usage Features Languag

Timothée Mazzucotelli 1.1k Dec 31, 2022
Data-Scrapping SEO - the project uses various data scrapping and Google autocompletes API tools to provide relevant points of different keywords so that search engines can be optimized

Data-Scrapping SEO - the project uses various data scrapping and Google autocompletes API tools to provide relevant points of different keywords so that search engines can be optimized; as this infor

Vibhav Kumar Dixit 2 Jul 18, 2022
💡 Catatan Materi Bahasa Pemrogramman Python

Repository catatan kuliah Andika Tulus Pangestu selama belajar Dasar Pemrograman dengan Python.

0 Oct 10, 2021
Simple yet powerful CAD (Computer Aided Design) library, written with Python.

Py-MADCAD it's time to throw parametric softwares out ! Simple yet powerful CAD (Computer Aided Design) library, written with Python. Installation

jimy byerley 124 Jan 06, 2023
A Python library that simplifies the extraction of datasets from XML content.

xmldataset: simple xml parsing 🗃️ XML Dataset: simple xml parsing Documentation: https://xmldataset.readthedocs.io A Python library that simplifies t

James Spurin 75 Dec 30, 2022
More detailed upload statistics for Nicotine+

More Upload Statistics A small plugin for Nicotine+ 3.1+ to create more detailed upload statistics. ⚠ No data previous to enabling this plugin will be

Nick 1 Dec 17, 2021
A Material Design theme for MkDocs

A Material Design theme for MkDocs Create a branded static site from a set of Markdown files to host the documentation of your Open Source or commerci

Martin Donath 12.3k Jan 04, 2023