Commit Graph

262 Commits

Author SHA1 Message Date
Takeshi KOMIYA
7de8c63407 test: Move testcases for autodoc configurations to test_ext_autodoc_configs 2019-06-03 01:28:56 +09:00
Takeshi KOMIYA
8da90bbe24 test: Update testcase for autodoc-process-docstring 2019-06-03 01:16:20 +09:00
Takeshi KOMIYA
e274ae87a5 test: Update testcase for cut_lines() 2019-06-03 01:16:20 +09:00
Takeshi KOMIYA
3f617a4a9b test: Update testcase for between() 2019-06-03 01:16:20 +09:00
Takeshi KOMIYA
6cbee7de3c test: Move descriptor example to independent file 2019-06-03 00:38:01 +09:00
Takeshi KOMIYA
afbf6d811d Migrate to py3 style type annotation: sphinx.util 2019-06-02 17:51:20 +09:00
Takeshi KOMIYA
69d93c967c Fix #1063: autodoc: automodule directive handles undocumented module level variables 2019-06-01 23:18:37 +09:00
Takeshi KOMIYA
0ea380eddd Close #6361: autodoc: Add autodoc_typehints to suppress typehints from signature 2019-05-26 00:35:24 +09:00
Takeshi KOMIYA
277aba935d Close #6325: autodoc: Support attributes in __slots__ 2019-05-22 09:56:46 +09:00
Takeshi KOMIYA
e288999933 Close #744: autodoc: Support abstractmethod 2019-05-15 00:01:00 +09:00
Takeshi KOMIYA
19a006f620
Merge branch '2.0' into refactor_py_domain3 2019-05-12 18:29:05 +09:00
Takeshi KOMIYA
b708f7b82f autodoc: Add PropertyDocumenter to detect properties 2019-05-12 15:59:57 +09:00
Takeshi KOMIYA
1ea23e14df Fix #6165: autodoc: `tab_width` setting of docutils has been ignored 2019-04-25 21:44:44 +09:00
Takeshi KOMIYA
435ef05b99 Close #4777: autodoc: Support coroutine 2019-04-23 01:55:48 +09:00
Takeshi KOMIYA
a285220778
Merge branch '2.0' into refactor_py_domain2 2019-04-23 01:16:42 +09:00
Takeshi KOMIYA
cc7a81419f
Merge pull request #6289 from alsrgv/add_imported_members_directive
Add imported-members to the directive whitelist
2019-04-15 10:24:08 +09:00
Alex Sergeev
b7f6657dd1 Address feedback 2019-04-13 22:09:01 -10:00
Alex Sergeev
15daf84f1a Add support for bound methods posing as functions in the module 2019-04-13 20:57:24 -10:00
Alex Sergeev
4bad5bd419 Address feedback 2019-04-13 20:54:20 -10:00
Takeshi KOMIYA
aca8122d04 autodoc: Use new options for py:method directive 2019-04-13 23:50:07 +09:00
Brendt Wohlberg
5334d96213
Merge branch 'master' into master 2019-02-28 16:49:01 -08:00
Takeshi KOMIYA
446bee8c66 refactor: test_autodoc 2019-02-27 15:08:44 +09:00
Takeshi KOMIYA
8a391d1781 Merge branch '1.8' 2019-02-17 22:37:23 +09:00
Takeshi KOMIYA
08cd23a0bb Fix #6047: autodoc: `autofunction` emits a warning for method objects 2019-02-17 18:23:14 +09:00
Takeshi KOMIYA
686486498c Closes #1148: autodoc: Add autodecorator directive for decorators 2019-02-15 02:14:38 +09:00
Takeshi KOMIYA
ad517af81c
Merge branch 'master' into 5459_autodoc_default_options_accepts_True 2019-02-11 12:34:59 +09:00
Takeshi KOMIYA
b0148c6921 Closes #5459: autodoc: autodoc_default_options accepts True as a value 2019-02-11 02:03:09 +09:00
Takeshi KOMIYA
a6ef8190ce Add testcase for mocked objects in autodoc 2019-02-11 01:46:38 +09:00
Takeshi KOMIYA
76e9f57c2e Merge branch '1.8' 2019-01-02 16:16:25 +09:00
Takeshi KOMIYA
1b1ebd2c75 A happy new year! 2019-01-02 16:00:30 +09:00
Jon Dufresne
bade33c7e4 Remove unnecessary encoding cookie from Python source files
In Python 3, the default encoding of source files is utf-8. The encoding
cookie is now unnecessary and redundant so remove it. For more details,
see the docs:

https://docs.python.org/3/howto/unicode.html#the-string-type

> The default encoding for Python source code is UTF-8, so you can
> simply include a Unicode character in a string literal ...

Includes a fix for the flake8 header checks to stop expecting an
encoding cookie.
2018-12-16 12:22:12 -08:00
Takeshi KOMIYA
c6bd84a614 refactor: Remove u-prefix from strings 2018-12-16 21:28:51 +09:00
Takeshi KOMIYA
66fad4e22d Remove a hack for py2 from testcode 2018-12-15 22:01:22 +09:00
Brendt Wohlberg
aacf2b8e65 Added test for correct nested class name when show-inheritance enabled 2018-12-02 08:36:31 -07:00
Takeshi KOMIYA
4761e70c37 Merge branch '1.8' 2018-11-22 22:14:32 +09:00
Jon Dufresne
555960d668 Deprecate and drop internal use of force_decode()
In the Python 3 only code base, this function is no longer necessary.
The type of values is well understood and deliberate. Code should avoid
arbitrary mixing of bytes & str.

By removing force_decode() calls from docstring values, can deprecate
the now unused 'encoding' arguments to various autodoc methods.
2018-11-13 07:16:39 -08:00
Takeshi KOMIYA
0ccc64d9ea test: Filter warnings on testing 2018-11-12 00:37:51 +09:00
Takeshi KOMIYA
9c4e5b244a test: Replace call_autodoc() by do_autodoc() 2018-11-11 21:22:11 +09:00
Takeshi KOMIYA
ea03286647 test: Move autodoc_missing_imports to test-ext-autodoc 2018-10-17 11:36:11 +09:00
Eric N. Vander Weele
d6b9db9581 tests: Ensure 'member-only' autodoc_default_options is respected
When specifying the 'member-only' option to `autodoc_default_options`,
ensure it is respected.
2018-10-14 20:18:59 -04:00
Takeshi KOMIYA
dc44b0d2a9 Merge branch 'master' into HEAD 2018-09-22 22:54:15 +09:00
Takeshi KOMIYA
3a2418a827 refactoring: Drop PY2 and PY3 flags 2018-09-22 21:27:59 +09:00
Takeshi KOMIYA
48c634e623 test: Merge py35/test_autodoc_py35.py to test_autodoc.py 2018-09-22 16:41:44 +09:00
Takeshi KOMIYA
b18fe13f55 Drop branches for sys.version_info < (3, 4) 2018-09-22 16:31:07 +09:00
Takeshi KOMIYA
522105b79b Merge branch '1.8' 2018-09-20 20:01:14 +09:00
Takeshi KOMIYA
c7f3933612
Merge branch '1.8' into 5431_warnings_for_callable 2018-09-18 23:34:33 +09:00
Takeshi KOMIYA
5c3a0e4e40 Fix #5431: autodoc: `autofunction` emits a warning for callable objects 2018-09-18 13:02:01 +09:00
Takeshi KOMIYA
9e8434f902 Fix #5436: Autodoc does not work with enum subclasses with properties/methods 2018-09-18 13:01:10 +09:00
Takeshi KOMIYA
6d55e98da1 test: Move EnumCls to target.enum package 2018-09-18 13:01:10 +09:00
Jon Dufresne
490e4aed41 Remove unnecessary object from class definitions
In Python 3, all classes are new-style classes. The object in the
definition is redundant and unnecessary.
2018-09-11 07:07:01 -07:00
Takeshi KOMIYA
02afc357ef Merge branch '1.8' 2018-09-09 19:26:48 +09:00
Takeshi KOMIYA
35e1764025 Fix #5290: autodoc: failed to analyze source code in egg package 2018-09-06 22:22:01 +09:00
Takeshi KOMIYA
06aa1a7864 Fix #2401: autodoc: `:members: causes :special-members:` not to be shown 2018-09-03 01:26:31 +09:00
Takeshi KOMIYA
a7cab001d9 Drop APIs deprecated in 2.0 2018-09-03 00:31:33 +09:00
Takeshi KOMIYA
e3f383ad7c
Merge pull request #5315 from tk0miya/add_autodoc_default_options
Add autodoc_default_options
2018-08-20 00:26:08 +09:00
Takeshi KOMIYA
7f52ef7512 Merge branch '1.7' 2018-08-19 02:19:06 +09:00
Takeshi KOMIYA
3d9e2cf831 Add autodoc_default_options 2018-08-18 18:22:16 +09:00
Lewis Haley
f196a92055 autodoc: add 'exclude-members' to user global options
As the previous commit explains, it is now possible to specify arguments
to the global options in config files. This means that we can now include
the `exclude-members` option in this global configuration.

Previously, there was no point including this option because it makes no
sense without arguments. Including this option means users have the
flexibility of explicitly including which special methods they want using
(e.g.):

  :special-members: __init__, __iter__

or explicitly excluding which special-members (or other members) they want
using (e.g.):

  :exclude-members: __weakref__, __hash__
2018-08-17 16:02:11 +01:00
Lewis Haley
6e1e35c98a autodoc: allow specifying values to global arguments
Previously, users could specify a *list* of flags in their config files.
The flags were directive names that would otherwise be present in the
.rst files. However, as a list, it was not possible to specify values
to those flags, which *is* possible in .rst files.

For example, in .rst you could say

  :special-members: __init__, __iter__

And this would cause autodoc to generate documents for these methods that
it would otherwise ignore.

This commit changes the config option to instead accept a dictionary.
This is a dictionary whose keys can contain the same flag-names as before,
but whose values can contain the arguments as seen in .rst files.

The old list is still supported, for backwards compatibility, but the data
is transformed into a dictionary when the user's config is loaded.
2018-08-17 15:51:00 +01:00
Lewis Haley
87029392fd test_autodoc: fix mutable function default argument in do_autodoc
Setting mutable types as default arguments is bad practice because the
value is only initialised once. This means that defaults arguments of
lists and dictionaries which are modified during code execution *stay*
modified between calls.

In this case, the `options` dictionary accumulated options as more and
more test cases were executed. Without this change, the tests added in
the next commit do not pass.

See: https://stackoverflow.com/questions/1132941/least-astonishment-and-the-mutable-default-argument
2018-08-17 15:33:58 +01:00
Takeshi KOMIYA
c4fa1aed34 Fix #5211: autodoc: No docs generated for functools.partial functions 2018-08-17 01:24:19 +09:00
Takeshi KOMIYA
7e546c0e0b refactor: Remove duplicated testcase 2018-08-05 08:18:21 +09:00
Takeshi KOMIYA
de73ee5902 refactor: test_autodoc 2018-08-05 08:18:21 +09:00
Takeshi KOMIYA
7ee868fb18 Add testcases for autodoc_default_flags 2018-07-28 22:37:32 +09:00
Takeshi KOMIYA
f969edfaa8 Fix flake8 violations on tests 2018-07-28 20:19:30 +09:00
Takeshi KOMIYA
c657f1c1c2 test: Validate whole of generated docs by autodoc 2018-07-28 18:46:13 +09:00
Takeshi KOMIYA
7dad01d18f test: Add do_autodoc() helper 2018-07-28 18:30:27 +09:00
Takeshi KOMIYA
8c29801f27 Close #2820: autoclass directive supports nested class 2018-07-22 01:06:17 +09:00
Takeshi KOMIYA
b1acc54cf9 Fix #5139: autodoc: Enum argument missing if it shares value with another 2018-07-15 18:53:53 +09:00
Takeshi KOMIYA
aefb3bbaaa Fix #4543: testcase for partialmethod is failed with py3.6.5 2018-04-08 21:54:00 +09:00
Takeshi KOMIYA
9e0089b252 Fix #4769: autodoc loses the first staticmethod parameter 2018-03-24 00:53:07 +09:00
Takeshi KOMIYA
049df5d5e1 test: Suppress DeprecationWarning 2018-03-20 20:27:05 +09:00
Takeshi KOMIYA
f2a23b761e Fix #4543: test for autodoc fails with python 3.5.3 2018-03-13 23:23:15 +09:00
Takeshi KOMIYA
f7027049b1 Fix flake8 violations 2018-02-19 23:20:56 +09:00
Takeshi KOMIYA
656e3be754 Fix #4539: autodoc emits warnings for partialmethods 2018-02-04 23:23:43 +09:00
Takeshi KOMIYA
295323d5aa Fix #4415: autodoc classifies inherited staticmethods as regular methods 2018-01-20 01:10:47 +09:00
Takeshi KOMIYA
cbb10d61f7 Fix #4415: autodoc classifies inherited classmethods as regular methods 2018-01-20 01:10:47 +09:00
Takeshi KOMIYA
326d7e64ce Merge branch 'master' into dont_emit_system_message_on_autodoc_warning 2018-01-08 20:19:36 +09:00
Takeshi KOMIYA
5d6413b712 Deprecate sphinx.ext.autodoc.add_documenter() and AutoDirective._register 2018-01-01 12:13:29 +09:00
Takeshi KOMIYA
f1f6ca8cc9 Merge branch 'happy_new_year' into master 2018-01-01 01:09:17 +09:00
Takeshi KOMIYA
2426cedb8b A happy new year! 2018-01-01 01:06:58 +09:00
Takeshi KOMIYA
a9efb2517a Fix flake8 violations 2017-12-23 21:21:21 +09:00
Takeshi KOMIYA
e2e907b3ee Fix broken test_autodoc 2017-12-22 00:53:53 +09:00
Takeshi KOMIYA
ffa9d48d0e
Merge branch 'master' into ignore__all__ 2017-12-22 00:28:26 +09:00
Takeshi KOMIYA
ec240614d9 test_autodoc: Separate testdata (python objects) and testcases 2017-12-21 12:12:13 +09:00
Kevin Keating
e932ff5ad2 Closes #947: autodoc now supports ignore-module-all to ignore a module's __all__ 2017-12-20 15:07:33 -05:00
Takeshi KOMIYA
7a194f5296 autodoc: Use logging module to emit warnings 2017-12-20 01:40:45 +09:00
Takeshi KOMIYA
464f94c238 deprecate formatargspec() and format_annotation() 2017-12-17 15:25:44 +09:00
Takeshi KOMIYA
00169a07e6 Merge branch 'stable' 2017-09-24 22:51:23 +09:00
Antonio Valentino
96ee24d7c1 Basic test for docstring inheritance 2017-08-19 21:52:30 +02:00
Takeshi KOMIYA
13be8e03ba Fix #3969: private instance attributes causes AttributeError 2017-07-31 22:49:04 +09:00
Takeshi KOMIYA
27637d73e1 Replace getargspec by Signature class in autodoc module 2017-06-17 18:16:41 +09:00
shimizukawa
d497d74370 refs #3458: add sphinx.testing that are moved from /tests directory. 2017-05-14 20:47:15 +09:00
Takayuki SHIMIZUKAWA
6cb582fdd3 Merge pull request #3449 from njsmith/getargspec-__wrapped__
On py3, use inspect.signature for more accurate signature calculation
2017-04-19 21:21:19 +09:00
Takeshi KOMIYA
c57e47e042 Year++ 2017-03-26 11:49:34 +09:00
Nathaniel J. Smith
678eff821f Update test to match py3's more accurate signature 2017-02-24 05:40:24 -08:00
Takeshi KOMIYA
cf2061dfad Fix flake8 violations 2017-01-26 01:13:17 +09:00
shimizukawa
561abdd164 pytest optimizatoin:
- remote using deprecated decorators
- remove gen_with_app
- remove yield testing
- remove pytest warnings
- refactoring
2017-01-08 15:14:38 +09:00
shimizukawa
5b7d237db3 pytest migration 2017-01-04 00:59:30 +09:00
Takeshi KOMIYA
61a6ca5b37 Merge branch 'stable' into 1.5-release 2016-12-03 16:25:58 +09:00