manim/scripts/template_docsting_with_example.py
Anton Ballmaier 71b86d5dfa
Deprecation Decorators (#1404)
* test

* revert test changes

* finish draft implementation

* use @wrapss to remove docs problems

* reduce complexity and add doc deprecation

* Docs deprecated_params

* add decoratos to __init__

* Add decorators to documentation

* Finish detailed docs

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Apply suggestions from code review

Co-authored-by: Naveen M K <naveen@syrusdark.website>

* change since/until/message param docs

* Mark get_callable_info and deprecation_text_component as private

* change how until is included in warning messages

* Add The to prameter descriptions

* is deprecated => has been deprecated

* Fix typo

* fix typo

* make params docs more readable

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* make redirections docs clearer

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Fix typo

* fix typo

* fix typo

* is_are => has_have_been

* fix typo
(at this point I am questioning my ability to type prameter)

* update deprendency list

* order dependencies

* update examples

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* fix dependeny problem

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* fix duplicate problem

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* change decorator version

* updated lock file

* enhance function / method separation

* fix typo and double underscores

* rename message_ and replacement_

* Change warning to custom admonition

* remove [] as default parameters

* Remove "" around type

* fix typo

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* fix bug and move to inspect

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* doc string => docstring

* rename to deprecate

* change module docstring

* change to deprecation.py

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* some sugesstions

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* remove tests again

* Rename decorators.py to deprecate.py

* Update poetry.lock

* Test if deprecated class outputs the correct warning when used

* Rename deprecate to deprecation

* Fix typos

* Shorten conditional for msg

* Shorten conditional for since

* Shorten conditional for until

* Specify decorator arguments in test

* Add tests for since and until arguments

* Add test for since and until as arguments

* Add test for msg argument for class

* Add test for replacement argument for class

* Remove unneeded docstring in deprecated class

* Add test for deprecate method, no args

* Update docstring examples, move deprecated method outside class

* Add test for method in class, since and message args

* Add test for deprecating nested class

* Add test for deprecated method in nested class

* Test deprecation of nested function

* Test param deprecation, only params argument

* Test deprecation of single method param

* Rename single param test method name

* Fix deprecated_params docstring whitespace

* Test parameter redirection using tuple

* Update warning msgs in deprecated_params docstring

* Test parameter redirection using lambda function

* Test param redirection from many to one

* Test param redirection from one to many

* Update Top.foo to deprecate with message

* handle empty docstrings

* fix typo

* Update poetry.lock

* Update poetry.lock

* Deprecate ShowCreation using decorator to test the docs

* Test docstring for deprecated class

* Test docstring for Bar and Baz classes

* Test docstrings for the rest of the classes

* Test docstrings for Top methods

* Test docstrings for Top.Nested

* Test docstring for nested method

* Move deprecations to deprecation system

* Some more deprecations

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* fix version numbering inconsistancies

* Fix naming issue and MetaClass handling

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* restart CI

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Naveen M K <naveen@syrusdark.website>
Co-authored-by: Ricky Chon <rickychon99@gmail.com>
Co-authored-by: Jan-Hendrik Müller <44469195+kolibril13@users.noreply.github.com>
2021-05-11 08:31:55 +02:00

77 lines
1.3 KiB
Python

# see more documentation guidelines online here: https://github.com/ManimCommunity/manim/wiki/Documentation-guidelines-(WIP)
class SomeClass:
"""A one line description of the Class.
A short paragraph providing more details.
Extended Summary
Parameters
----------
scale_factor : :class:`float`
The factor used for scaling.
Returns
-------
:class:`~.VMobject`
Returns the modified :class:`~.VMobject`.
Tests
-----
Yields
-------
Receives
----------
Other Parameters
-----------------
Raises
------
:class:`TypeError`
If one element of the list is not an instance of VMobject
Warns
-----
Warnings
--------
Notes
-----
Examples
--------
.. manim:: AddTextLetterByLetterScene
:save_last_frame:
class AddTextLetterByLetterScene(Scene):
def construct(self):
t = Text("Hello World word by word")
self.play(AddTextWordByWord(t))
See Also
--------
:class:`Create`, :class:`~.ShowPassingFlash`
References
----------
Other useful directives:
.. tip::
This is currently only possible for class:`~.Text` and not for class:`~.MathTex`.
.. note::
This is something to note.
"""