Commit Graph

703 Commits

Author SHA1 Message Date
Takeshi KOMIYA
9086ecdfff Merge branch '3.x' 2020-03-12 01:37:23 +09:00
Takeshi KOMIYA
f85b870ad5 Merge branch '2.x' into 3.x 2020-03-12 01:37:08 +09:00
Takeshi KOMIYA
99476f37e7 Fix mypy violations (with mypy-0.770) 2020-03-12 01:25:18 +09:00
Takeshi KOMIYA
941bf951ac Hello TYPE_CHECKING! 2020-03-07 19:36:41 +09:00
Takeshi KOMIYA
6d4fefebf4 Deprecate codes for python 3.5 2020-03-07 19:36:41 +09:00
Takeshi KOMIYA
2e338aa5cd Support priority of event handlers 2020-01-16 17:04:48 +09:00
Takeshi KOMIYA
cad1f86dd8 Merge branch '2.0' 2020-01-11 02:56:58 +09:00
Takeshi KOMIYA
a6a1721de6 refactor: Rename var keyword argument to "**kwargs" 2020-01-08 01:39:07 +09:00
Chris Holdgraf
6117e7619a
Update application.py 2020-01-04 06:12:16 -08:00
Chris Holdgraf
01ffa6cf04
updating docstring for add_js_file for body element 2020-01-03 14:54:26 -08:00
Takeshi KOMIYA
e628afd5cd Merge branch '2.0' 2020-01-01 11:39:46 +09:00
Takeshi KOMIYA
fc523c3ccf A happy new year! 2020-01-01 11:15:42 +09:00
Takeshi KOMIYA
ab184ac20d mypy: Enable disallow_incomplete_defs flag for type checking 2019-12-30 17:22:56 +09:00
Takeshi KOMIYA
3bf39be471 Fix flake8 violations 2019-12-25 11:46:50 +09:00
Takeshi KOMIYA
d717f5ae31 Merge branch '2.0' 2019-12-25 11:41:54 +09:00
Takeshi KOMIYA
337780c89f Migrate to py3 style type annotation: sphinx.application 2019-12-25 02:04:08 +09:00
Takeshi KOMIYA
5640cf879f Merge branch '2.0' 2019-12-22 18:47:30 +09:00
Takeshi KOMIYA
6d6fe9da0d Add IndexDomain 2019-12-22 17:20:35 +09:00
Antony Lee
814513ba9f Replace a and b or c by the more legible b if a or c. 2019-12-21 11:50:18 +01:00
Takeshi KOMIYA
7ec567b6d0 Merge branch '2.0' 2019-12-09 00:13:42 +09:00
Takeshi KOMIYA
7292ab7eef Merge branch '2.2.2' into 2.0 2019-12-03 01:19:02 +09:00
Takeshi KOMIYA
6f529f01ed Fix #6803: Disable parallel build on macOS and py38+ 2019-12-01 16:01:19 +09:00
Takeshi KOMIYA
6644830941 Merge branch '2.0' 2019-11-17 14:24:04 +09:00
Thomas Robitaille
fa1cca1fee Improve variable names and code style 2019-11-12 14:29:20 +00:00
Thomas Robitaille
0a437bc9d6 Give a warning when extensions are explicitly not parallel safe 2019-11-12 14:22:21 +00:00
jfbu
685e3fdb49 Merge branch '2.0' 2019-08-01 17:49:24 +02:00
Takeshi KOMIYA
0c48a28ad7 Fix type annotation for python 3.5.1 2019-07-13 23:46:17 +09:00
Takeshi KOMIYA
75477633b6 Merge branch '2.0' 2019-07-01 00:29:51 +09:00
Takeshi KOMIYA
0ff514743f Close #6475: Add override argument to app.add_autodocumenter() 2019-06-30 01:41:15 +09:00
Takeshi KOMIYA
4c19ab7058 Merge commit '54d5fcfaebc3364044761d30c0fed6bd4d3052c3' 2019-06-02 01:02:54 +09:00
Takeshi KOMIYA
71842264b2 Sphinx.add_lexer() now takes a Lexer class instead of instance 2019-06-01 13:49:16 +09:00
Takeshi KOMIYA
5d8c25b605 refactor: app.add_lexer() 2019-06-01 13:42:57 +09:00
Takeshi KOMIYA
b9d7239d90 Merge branch '2.0' 2019-05-29 00:51:25 +09:00
Eric Larson
926e0e766d ENH: Explain warnings-as-errors 2019-05-14 14:32:11 -04:00
Takeshi KOMIYA
06f86b0639 Make EventManager portable
So far, we need to bypass application object for modules to emit
a event.  This make EventManager portable and easy to pass event
emitter.  This brings modules less coupled with application object.
2019-04-16 14:06:36 +09:00
Takeshi KOMIYA
15bc5a32bb
Merge pull request #6260 from tk0miya/refactor_events
Make EventManager portable
2019-04-16 14:04:54 +09:00
Takeshi KOMIYA
df05d9254d Merge branch '2.0' 2019-04-07 19:29:52 +09:00
Takeshi KOMIYA
9e2aba54d3 Make EventManager portable
So far, we need to bypass application object for modules to emit
a event.  This make EventManager portable and easy to pass event
emitter.  This brings modules less coupled with application object.
2019-04-06 15:36:50 +09:00
Takeshi KOMIYA
c840cb744c Merge branch '2.0' into refactor_citations 2019-04-06 14:23:04 +09:00
Takeshi KOMIYA
267e7e5c16 Merge branch '2.0.1' into 2.0 2019-03-31 20:50:07 +09:00
Takeshi KOMIYA
87c6335b46 Move transforms for citations to sphinx.domains.citation 2019-03-30 20:31:10 +09:00
Takeshi KOMIYA
61098a0ae2 Drop features and APIs deprecated in 1.8 2019-03-30 14:50:37 +09:00
Takeshi KOMIYA
bd903c8904 Show deprecation warning for sphinx.application.CONFIG_FILENAME 2019-03-30 14:48:05 +09:00
Takeshi KOMIYA
86f0336693 Merge branch '2.0' 2019-03-21 02:21:59 +09:00
Takeshi KOMIYA
23f7b3a6e7 refactor: Remove lists of transforms from SphinxStandalonReader 2019-03-17 13:55:02 +09:00
Takeshi KOMIYA
16b1b71a3a docs: drop mention to deprecated method (refs: #6174) 2019-03-14 00:38:54 +09:00
Takeshi KOMIYA
fb8838ee53 refactor: Use CatalogRepository instead of find_catalog_source_file() 2019-02-27 22:47:08 +09:00
Takeshi KOMIYA
1ca210aab1 Separate json and pickle to sphinxcontrib package 2019-02-17 22:31:50 +09:00
Takeshi KOMIYA
3b49f9fe3d Separate htmlhelp to sphinxcontrib package 2019-02-15 01:44:32 +09:00
Takeshi KOMIYA
644d555837 Don't import pycompat in sphinx.application (not used) 2019-02-11 16:41:19 +09:00
Takeshi KOMIYA
dd371a59de Move DirectoryHTMLBuilder to sphinx.builders.dirhtml package 2019-02-07 02:06:39 +09:00
Takeshi KOMIYA
c4397318d3 Separate applehelp to sphinxcontrib package 2019-02-06 00:44:37 +09:00
Takeshi KOMIYA
2bd69350a7 Separate devhelp to sphinxcontrib package 2019-01-20 03:03:50 +09:00
Takeshi KOMIYA
6be9d2a08e Separate qthelp to sphinxcontrib package 2019-01-19 16:34:06 +09:00
Takeshi KOMIYA
9c52b4ed6c Drop dependency: sphinxcontrib-websupport 2019-01-14 19:44:12 +09:00
Takeshi KOMIYA
647021be64 Add progress_message() as a helper for progress messages 2019-01-12 22:06:04 +09:00
Takeshi KOMIYA
b08a7c4757 Move SingleFileHTMLBuilder to sphinx.builders.singlehtml package 2019-01-11 01:59:56 +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
jfbu
32d57b8637 Merge branch '1.8'
resolved Conflicts:
	doc/development/tutorials/todo.rst
	sphinx/locale/__init__.py
	sphinx/search/zh.py
2018-12-28 12:50:20 +01:00
jfbu
1e07cb10fc Fix various spelling typos 2018-12-27 13:06:33 +01:00
Takeshi KOMIYA
de49b991f6 refactor: Use simple Input class 2018-12-17 22:07:56 +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
6bc357140d Replace all "unicode" type by "str" 2018-12-15 23:57:43 +09:00
Takeshi KOMIYA
b56f4f9022 Remove print_function feature 2018-12-15 23:16:10 +09:00
Takeshi KOMIYA
53917f228f Move to py3 mode for mypy (and remove many "type: ignore" comments) 2018-12-15 02:42:42 +09:00
Takeshi KOMIYA
773568a4e2 refactor: Use app.add_node() to register Sphinx own nodes 2018-12-05 00:05:51 +09:00
Takeshi KOMIYA
382d836771 Fix annotations of enumerable_nodes 2018-12-03 22:07:29 +09:00
Takeshi KOMIYA
bfd35c6ce1 Add role manipulator directives to sphinx.util.docutils 2018-12-01 19:50:12 +09:00
Takeshi KOMIYA
e294b8e036 Add role manipulator functions to sphinx.util.docutils 2018-12-01 18:46:22 +09:00
Takeshi KOMIYA
fcc53447a3 Fix annotations (in some modules) 2018-12-01 12:29:49 +09:00
Takeshi KOMIYA
3c99d00605 Add sphinx.util.typing:unicode to help mypy-3 migration 2018-11-24 23:19:51 +09:00
Takeshi KOMIYA
d4e22793ca Fix annotations for app.add_nodes() and related functions 2018-11-24 21:59:11 +09:00
Jon Dufresne
27a6787d63 Remove use of six.binary_type
Remove type checks for cases that don't apply to Python 3.

For remaining uses, use bytes instead
2018-11-11 19:09:47 -08:00
Takeshi KOMIYA
8f9a76f476 Remove use six.move module 2018-11-12 01:02:14 +09:00
Takeshi KOMIYA
d340ff9abb Fix typehints: sphinx.registry 2018-11-05 11:11:16 +09:00
Takeshi KOMIYA
8b687ac304 Merge branch '1.8' 2018-11-01 01:24:12 +09:00
Takeshi KOMIYA
ca8bc8ca49 refactor: Deprecate app._setting_up_extension 2018-10-17 11:56:11 +09:00
Takeshi KOMIYA
257394a459 Fix #5471: Show appropriate warning for deprecated APIs 2018-10-17 02:05:07 +09:00
Takeshi KOMIYA
eaec3bd916 Add sphinx.project; a manipulator for project and documents 2018-10-16 10:34:58 +09:00
Jon Dufresne
ce8227c6cf Replace all six.itervalues()/.iteritems() with .values()/.items() 2018-09-23 18:26:31 -07:00
Jon Dufresne
02d06bdaf0 Remove uses of six.moves that did not cause any type errors
Removal of the remaining imports may require passing "--python-version
3.5" to the mypy command.
2018-09-23 09:22:06 -07: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
02b763bc71 refactor: Check primary_domain on config-inited event 2018-09-08 22:47:45 +09:00
Takeshi KOMIYA
a7cab001d9 Drop APIs deprecated in 2.0 2018-09-03 00:31:33 +09:00
Takeshi KOMIYA
698d4ed42c Allow to install JS and CSS files on builder-inited event 2018-08-26 11:59:47 +09:00
Takeshi KOMIYA
25bfa1692a refactor: Move repository of changesets to domain from env 2018-08-02 01:51:50 +09:00
Takeshi KOMIYA
609ec5ef33
Merge branch 'master' into 4614_keep_going 2018-07-31 01:11:08 +09:00
Takeshi KOMIYA
104bd42f51
Merge branch 'master' into refactor_highlighter 2018-07-29 11:21:36 +09:00
Takeshi KOMIYA
dd65d00f29 Implement math_renderer framework 2018-07-28 18:20:11 +09:00
Takeshi KOMIYA
e3483e9b04 Closes #4614: sphinx-build: Add :option:--keep-going option to show all warnings 2018-07-23 00:38:47 +09:00
Takeshi KOMIYA
4f296c5e67 Refactor: Run highlightlang on resolving phase 2018-07-21 13:54:09 +09:00
Takeshi KOMIYA
1a477397b2
Merge pull request #5120 from blueyed/fix-doc
doc: fix list with add_object_type
2018-06-26 00:40:22 +09:00
Daniel Hahler
8f94429a21 doc: fix func/meth references to Sphinx 2018-06-25 08:25:56 +02:00
Daniel Hahler
c2b85b923f doc: fix list with add_object_type
This seems to have been accidentally broken in eaaab75ec.
2018-06-25 06:38:32 +02:00
Takeshi KOMIYA
9fc2657d7e Add :confval:html_js_files 2018-06-09 02:38:36 +09:00
Takeshi KOMIYA
106f4ea023 doc: Fix widths of table 2018-06-05 22:45:31 +09:00
Takeshi KOMIYA
f3168d9894 Rename app.add_javascript() to add_js_file() 2018-05-24 23:59:49 +09:00
Takeshi KOMIYA
8fd34b88d3 add_javascript() allows keyword arguments as attributes for <script> tag 2018-05-24 23:59:49 +09:00
Takeshi KOMIYA
3ffde92c54 Add BuildEnvironment.setup() to re-initialize (after unpickle) 2018-05-21 10:36:22 +09:00
Takeshi KOMIYA
a4c7be6fcd Move MathDomain to sphinx.domains.math 2018-05-17 00:42:24 +09:00
Takeshi KOMIYA
4e04bff4f5 Enable math node rendering by default (without HTML builders)
Nowadays, math elements (inline and block level equations) are
integrated into reST spec by default.  But, in Sphinx, they are
not enabled by default.  For this reason, users have to enable
one of math extensions even if target builder supports math
elements directly.

This change starts to enable them by default.  As a first step,
this replaces math node and its structure by docutils based one.
2018-05-15 22:27:49 +09:00
Takeshi KOMIYA
5493bc1612
Merge branch 'master' into refactor_env2 2018-05-12 22:42:29 +09:00
Takeshi KOMIYA
dad20201db refactor: Convert the form of html_css_files 2018-05-11 02:32:04 +09:00
Takeshi KOMIYA
d6db20781a Deprecate methods for pickling/unpickling on BuildEnvironment 2018-05-11 02:28:01 +09:00
Takeshi KOMIYA
e38218fdf5 Fix flake8 violation 2018-04-28 19:15:24 +09:00
Takeshi KOMIYA
b165ade6b0 Rename Config.read_from_py() to Config.read() 2018-04-28 13:05:28 +09:00
Takeshi KOMIYA
5897d45cc6 Merge branch 'master' into refactor_config 2018-04-22 18:56:04 +09:00
Takeshi KOMIYA
320421be67
Merge pull request #4810 from tk0miya/define_priority_for_transforms
Proposal: Define priority for transforms
2018-04-21 11:29:48 +09:00
Takeshi KOMIYA
c35eb6fade
Merge pull request #4815 from tk0miya/refine_add_css_file
Refine adding CSS files
2018-04-13 00:21:33 +09:00
Takeshi KOMIYA
b2bd9f75a6 Merge branch '1.7' 2018-04-09 01:46:00 +09:00
Takeshi KOMIYA
3afc72fba4 Rename add_stylesheet() to add_css_file() 2018-04-06 13:11:24 +09:00
Takeshi KOMIYA
99fbd44e20 Store stylesheets as an instance variable of HTML builder
So far, CSS files are stored as a class variable of HTML builder.
Not to have status globally, this changes it to an instance varable.
2018-04-06 13:10:49 +09:00
Takeshi KOMIYA
c5d6942b88 add_stylesheet() allows additional attributes 2018-04-06 13:10:49 +09:00
Takeshi KOMIYA
cff8dc519b Fix #4783: Sphinx crashed when drives of srcdir and outdir are different 2018-04-02 23:03:02 +09:00
Takeshi KOMIYA
5ab403bf36 Define priority for transforms 2018-04-02 22:51:52 +09:00
Takeshi KOMIYA
47918f365e Merge branch 'master' into refactor_config 2018-04-02 10:47:47 +09:00
Takeshi KOMIYA
bc63dc8450 Rename Config.read() to Config.from_conf_py() 2018-04-01 20:07:45 +09:00
Takeshi KOMIYA
448db58d88
Merge pull request #4760 from tk0miya/add_override_option
Add a new keyword argument ``override`` to Application APIs
2018-03-29 23:26:08 +09:00
Takeshi KOMIYA
61828786a6 Deprecate app.override_domain() 2018-03-29 21:59:29 +09:00
Takeshi KOMIYA
a24601aa24 Deprecate Config.check_unicode() 2018-03-29 10:32:49 +09:00
Takeshi KOMIYA
00e9e560b1 Fix confoverrides parameter was ignored 2018-03-29 10:24:48 +09:00
Takeshi KOMIYA
2f1cb1e184 Instantiate Config object simply if confdir not given 2018-03-28 00:58:41 +09:00
Takeshi KOMIYA
181fb1093d Now Config.read() takes a filename instead (dirname, filename) 2018-03-28 00:58:40 +09:00
Takeshi KOMIYA
aa1073cfe1 Fix #4787: Update docstrings for add_directive() 2018-03-27 23:10:22 +09:00
Takeshi KOMIYA
78cbf96158 Deprecate Config.check_types() 2018-03-24 00:29:11 +09:00
Takeshi KOMIYA
3d8cb12497 Raise ExtensionError from Config class instead application class 2018-03-24 00:27:03 +09:00
Takeshi KOMIYA
ba83214386 Refactor: Add Config.read() as a constructor
To simplify Config.__init__() method, this separates conf.py parsing
feature to Config.read() method.
This allows to instantiate config object simply.
2018-03-23 23:40:28 +09:00
Takeshi KOMIYA
1a43d47c33 Add a new keyword argument `override` to Application APIs 2018-03-21 00:23:44 +09:00
Takeshi KOMIYA
4202c13fe8 Fix invalid __file__ variable is passed to conf.py 2018-03-20 22:52:17 +09:00
Takeshi KOMIYA
9efaf18852 Merge branch '1.7' 2018-03-18 01:21:01 +09:00
cocoatomo
6a6fcb5d86 Fix module name 2018-03-15 07:59:43 +09:00
Takeshi KOMIYA
70a622b86c Revert "Use typing.TYPE_CHECKING for typehints"
This reverts commit a073e17537.
2018-03-13 23:23:15 +09:00
Takeshi KOMIYA
6faef28150 Make console and warning messages translatable 2018-03-03 23:18:38 +09:00
Takeshi KOMIYA
645ad75523 Fix mypy violations 2018-02-26 02:21:26 +09:00
Takeshi KOMIYA
b3e7609a80 Update docs 2018-02-25 23:44:38 +09:00
Takeshi KOMIYA
ed403ad8ff Supports i18n console output 2018-02-25 23:44:37 +09:00
Takeshi KOMIYA
5b3e1dc856 Add locales.get_translation() to provide i18n feature for extensions 2018-02-25 02:03:40 +09:00
Takeshi KOMIYA
30cab5c376
Merge branch 'master' into migrate_registry 2018-02-22 20:21:09 +09:00
Takeshi KOMIYA
f6b1abf254
Merge pull request #4594 from tk0miya/4564_rst_prolog_not_working
Change interface of add_source_parser() and add add_source_suffix()
2018-02-22 20:19:13 +09:00
Takeshi KOMIYA
5789b25847 Change interface of add_source_parser() and add add_source_suffix() 2018-02-21 10:54:49 +09:00
Takeshi KOMIYA
9c6d4f1308 Add simple wrapper to register nodes 2018-02-21 00:28:03 +09:00
Takeshi KOMIYA
8b8836b6d2 Show deprecation warning in directive_helper() 2018-02-21 00:27:18 +09:00
Takeshi KOMIYA
446eab49b8 refactor: transplant node handlers for writer on instantiation of translator
For now, node handlers are registered as class methods of translator
classes.  After this change, they are registered as instance method.
2018-02-20 01:46:51 +09:00
Takeshi KOMIYA
18efa1a63a refactor: Store enumerable_nodes to registry 2018-02-20 01:32:30 +09:00
Takeshi KOMIYA
1ffa537b1c refactor: Store latex packages to registry 2018-02-20 00:19:32 +09:00
Takeshi KOMIYA
9a82e1098b
Merge pull request #4625 from tk0miya/add_app.phase
Add app.phase to let components know the current build phase
2018-02-20 00:09:58 +09:00
Takeshi KOMIYA
f8bb40ab30 Merge branch '1.7' 2018-02-18 12:39:07 +09:00
Takeshi KOMIYA
a9ecb190a7 autosummary: Fix compatibility of get_documenter() API (refs: #4366) 2018-02-17 23:26:28 +09:00
Takeshi KOMIYA
9d91816fe6 Add app.phase to let components know the current build phase 2018-02-17 00:09:07 +09:00
Takeshi KOMIYA
5d1b8ff55f Fix mypy violations 2018-02-14 22:57:41 +09:00
Takeshi KOMIYA
a073e17537 Use typing.TYPE_CHECKING for typehints 2018-02-14 22:57:38 +09:00
Takeshi KOMIYA
053ac8c401 Fix indentation 2018-02-12 23:54:38 +09:00
Takeshi KOMIYA
bd0b4204ca Fix #4596: TypeError: issubclass() arg 1 must be a class 2018-02-12 10:23:01 +09:00
Takeshi KOMIYA
85651bfdf2 Fix condition for deprecation warning 2018-02-10 23:36:25 +09:00
Takeshi KOMIYA
e84ba569a2 Merge branch '1.7-release' 2018-02-10 15:46:48 +09:00
Takeshi KOMIYA
301aee4916 Drop function based directive support 2018-02-07 09:20:47 +09:00
cocoatomo
1c61bf6db4 More translation-friendly messages 2018-02-07 02:12:22 +09:00
cocoatomo
8969ae40de Make the log message more translation-friendly 2018-02-07 01:52:22 +09:00
Takeshi KOMIYA
9d33ec99b4 Deprecate: app.import_object() 2018-02-06 00:36:55 +09:00
Takeshi KOMIYA
3859136342 Refactor app._init_env() not to load env even if dump not found 2018-02-06 00:22:14 +09:00
Takeshi KOMIYA
f49a7c9024 Reimplement needs_extensions checker as a config-init handler 2018-01-31 20:41:31 +09:00
Takeshi KOMIYA
4647fcee45 Merge branch '1.7-release' 2018-01-31 20:40:56 +09:00
Takeshi KOMIYA
a5fea73d0c Merge branch 'master' into integrate_source_suffix_and_source_parsers 2018-01-31 00:04:11 +09:00
Takeshi KOMIYA
0f4a4b2ae9
Merge pull request #4486 from tk0miya/4460_env_version_of_extensions
Close #4460: extensions should return the version of data structure as metadata
2018-01-28 21:15:07 +09:00
Takeshi KOMIYA
9f5c676322 Use flake8-import-order 2018-01-28 01:52:16 +09:00
Takeshi KOMIYA
32c5e8346f Close #4460: extensions should return the version of data structure as metadata 2018-01-25 02:04:22 +09:00
Takeshi KOMIYA
0cdd9ee72a Integrate source_suffix and source_parsers (refs: #4474) 2018-01-25 02:03:56 +09:00
Takeshi KOMIYA
69f69628ed :confval:source_suffix allows a mapping fileext to file types 2018-01-25 02:03:56 +09:00
Takeshi KOMIYA
dc45877d3c Deprecate config value: source_parsers 2018-01-25 02:03:56 +09:00
Takeshi KOMIYA
3b42c8e06c Drop a hack for py31 2018-01-25 02:02:54 +09:00
Stephen Finucane
1ec03ec1b0 doc: Add 'deprecated' directive to docstrings
This helps emphasize the deprecated nature of these directives.

Signed-off-by: Stephen Finucane <stephen@that.guru>
2018-01-21 11:38:03 +00:00
Stephen Finucane
b7ff955472 doc: Move 'sphinx.application' API docs to code
This allows us to do something like 'help(sphinx.application)' in code.

Signed-off-by: Stephen Finucane <stephen@that.guru>
2018-01-21 11:19:46 +00:00
Takeshi KOMIYA
6e420e517e
Merge pull request #4465 from tk0miya/improve_config
Improve config
2018-01-21 16:05:34 +09:00
Takeshi KOMIYA
944047c8d4 Emit config-inited just after config.init_values() 2018-01-21 15:44:37 +09:00
Takeshi KOMIYA
c80a26c81b refactor: move source_suffix migrator to event handler 2018-01-20 22:30:37 +09:00
Stephen Finucane
3a85b3502f app: Centralize directory validation
This allows us to avoid duplication of code and ensure validation
happens regardless of who's initializing the class. We introduce a new
exception - ApplicationError - to indicate these kinds of issues. This
subclasses SphinxError, meaning we don't need to modify our exception
handling code.

Signed-off-by: Stephen Finucane <stephen@that.guru>
2018-01-20 13:04:29 +00:00
Takeshi KOMIYA
29df3a095a Add config-inited event 2018-01-20 21:21:45 +09:00
Stephen Finucane
a83e8bab7d builders: Add 'Builder.epilog' option
This allows builders to emit a final epilog message containing
information such as where resulting files can be found. This is only
emitted if the build was successful.

This allows us to remove this content from the 'make_mode' tool and
the legacy 'Makefile' and 'make.bat' templates. There's room for more
dramatic simplification of the former, but this will come later.

Signed-off-by: Stephen Finucane <stephen@that.guru>
2018-01-11 20:57:03 +00:00
Takeshi KOMIYA
fb921c7457 Merge branch 'master' into refactor_autodoc 2018-01-08 15:10:43 +09:00
Takeshi KOMIYA
1c0a5ee55d Merge branch 'master' into refactor_AutoDirective 2018-01-08 14:17:08 +09:00
MURAOKA Yusuke
2484819e96 Fix creating build directory for unknown build target 2018-01-07 20:11:01 +09:00
Takeshi KOMIYA
7162fcdff9 Fix typo 2018-01-07 00:51:45 +09:00
Takeshi KOMIYA
4b51ed4aa9 Deprecate AutoDirective._special_attrgetters 2018-01-01 12:13:29 +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
1d3362425b Add app.is_parallel_allowed() 2017-12-30 00:54:55 +09:00
Takeshi KOMIYA
90159b8143 Merge branch 'master' into refactor_registry 2017-12-21 00:16:32 +09:00
jfbu
fcbabcd9b5 Merge branch 'stable'
Conflicts:
	sphinx/apidoc.py
	sphinx/application.py
	sphinx/quickstart.py

	modified:   CHANGES
	modified:   doc/config.rst
	modified:   doc/markup/inline.rst
	modified:   sphinx/application.py
	modified:   sphinx/builders/__init__.py
	modified:   sphinx/cmd/quickstart.py
	modified:   sphinx/ext/apidoc.py
2017-12-18 10:13:49 +01:00
Takeshi KOMIYA
832914423e autodoc: refactor AutoDirective 2017-12-17 02:07:34 +09:00
Michał Górny
14af6b429e Use ensuredir() instead of os.makedirs() to fix race conditions
Use the ensuredir() function consistently across Sphinx code to avoid
race conditions e.g. when multiple Sphinx instances attempt to create
the same output directory. The ensuredir() function that was already
present in sphinx.util.osutil correctly catches EEXIST exception that
occurs if the specified directory already exists (i.e. it was created
between the call to os.path.isdir() and os.makedirs() that follows it).

While at it, remove redundant os.path.isdir() calls when they only
guarded the os.makedirs() call, and replace mkdir_p() which had pretty
much the same purpose, except for being prone to race conditions.

I did not modify testing-related code as race conditions mostly affect
real applications and not the test environment.

Fix #4281: Race conditions when creating output directory
2017-12-16 09:50:09 +01:00
Takeshi KOMIYA
fe07365a8c Fix mypy violations 2017-12-15 22:17:03 +09:00
Takeshi KOMIYA
2a26656ce6 Move post-transform manager to registry 2017-12-14 23:55:39 +09:00
Takeshi KOMIYA
27ea988f6e Move Transform manager to registry 2017-12-14 23:55:39 +09:00
Takeshi KOMIYA
ed1f47e190 Move logs to registry 2017-12-14 23:37:13 +09:00
Takeshi KOMIYA
0e86ff2f11 Refactor sphinx.io; separate FileInput class for each file type 2017-12-12 18:24:52 +09:00
Timotheus Kampik
4f3cf402f6 #3799 use propper pluralization in (dummy) i18n call 2017-08-05 18:52:09 +02:00
Takeshi KOMIYA
e8c5589e23 Merge branch 'stable' 2017-07-15 16:47:42 +09:00
Takeshi KOMIYA
bcafa5772c Fix flake8 violation 2017-07-15 16:47:32 +09:00