sphinx-lua-ls 2.0.1__tar.gz → 3.0.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (190) hide show
  1. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/.github/workflows/ci.yaml +9 -3
  2. sphinx_lua_ls-3.0.0/CHANGELOG.md +135 -0
  3. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/CONTRIBUTING.md +10 -0
  4. {sphinx_lua_ls-2.0.1/sphinx_lua_ls.egg-info → sphinx_lua_ls-3.0.0}/PKG-INFO +4 -2
  5. sphinx_lua_ls-3.0.0/docs/example/.emmyrc.json +20 -0
  6. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/docs/example/logging.lua +17 -32
  7. sphinx_lua_ls-3.0.0/docs/source/apidoc.rst +79 -0
  8. sphinx_lua_ls-3.0.0/docs/source/autodoc.rst +466 -0
  9. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/docs/source/conf.py +11 -3
  10. sphinx_lua_ls-3.0.0/docs/source/directives.rst +395 -0
  11. sphinx_lua_ls-3.0.0/docs/source/example.rst +45 -0
  12. sphinx_lua_ls-3.0.0/docs/source/index.rst +30 -0
  13. sphinx_lua_ls-3.0.0/docs/source/installation.rst +172 -0
  14. sphinx_lua_ls-3.0.0/docs/source/quickstart.rst +187 -0
  15. sphinx_lua_ls-3.0.0/docs/source/roles.rst +58 -0
  16. sphinx_lua_ls-3.0.0/docs/source/settings.rst +190 -0
  17. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/pyproject.toml +4 -2
  18. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/sphinx_lua_ls/__init__.py +127 -18
  19. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/sphinx_lua_ls/_version.py +2 -2
  20. sphinx_lua_ls-3.0.0/sphinx_lua_ls/apidoc.py +296 -0
  21. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/sphinx_lua_ls/autodoc.py +380 -79
  22. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/sphinx_lua_ls/autoindex.py +34 -17
  23. sphinx_lua_ls-3.0.0/sphinx_lua_ls/domain.py +1380 -0
  24. sphinx_lua_ls-3.0.0/sphinx_lua_ls/inherited.py +150 -0
  25. sphinx_lua_ls-3.0.0/sphinx_lua_ls/intersphinx.py +268 -0
  26. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/sphinx_lua_ls/lua_ls.py +282 -105
  27. sphinx_lua_ls-3.0.0/sphinx_lua_ls/objtree.py +1148 -0
  28. sphinx_lua_ls-3.0.0/sphinx_lua_ls/utils.py +375 -0
  29. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0/sphinx_lua_ls.egg-info}/PKG-INFO +4 -2
  30. sphinx_lua_ls-3.0.0/sphinx_lua_ls.egg-info/SOURCES.txt +175 -0
  31. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/sphinx_lua_ls.egg-info/requires.txt +2 -0
  32. sphinx_lua_ls-3.0.0/test/roots/test-apidoc/.gitignore +1 -0
  33. sphinx_lua_ls-3.0.0/test/roots/test-apidoc/conf.py +13 -0
  34. sphinx_lua_ls-3.0.0/test/roots/test-apidoc/index.rst +6 -0
  35. sphinx_lua_ls-3.0.0/test/roots/test-apidoc/lua/mod/inner.lua +14 -0
  36. sphinx_lua_ls-3.0.0/test/roots/test-apidoc/lua/mod.lua +21 -0
  37. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/roots/test-autodoc/conf.py +2 -0
  38. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/roots/test-autodoc/index.rst +1 -0
  39. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/roots/test-autodoc/lua/annotations.lua +1 -1
  40. sphinx_lua_ls-3.0.0/test/roots/test-autodoc/lua/globals.lua +16 -0
  41. sphinx_lua_ls-3.0.0/test/roots/test-autodoc/lua/globals_2.lua +13 -0
  42. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/roots/test-autodoc/lua/member_ordering.lua +1 -1
  43. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/roots/test-autodoc/lua/module_title.lua +1 -1
  44. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/roots/test-autodoc/lua/nested_modules.lua +1 -1
  45. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/roots/test-autodoc/lua/nesting.lua +1 -1
  46. sphinx_lua_ls-3.0.0/test/roots/test-autodoc/lua/object_types.lua +139 -0
  47. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/roots/test-autodoc/lua/relative_resolve.lua +1 -1
  48. sphinx_lua_ls-3.0.0/test/roots/test-autodoc/src/annotations.rst +26 -0
  49. sphinx_lua_ls-3.0.0/test/roots/test-autodoc/src/autoindex.rst +12 -0
  50. sphinx_lua_ls-3.0.0/test/roots/test-autodoc/src/globals.rst +9 -0
  51. sphinx_lua_ls-3.0.0/test/roots/test-autodoc/src/member_ordering.rst +40 -0
  52. sphinx_lua_ls-3.0.0/test/roots/test-autodoc/src/module_title.rst +28 -0
  53. sphinx_lua_ls-3.0.0/test/roots/test-autodoc/src/nested_modules.rst +8 -0
  54. sphinx_lua_ls-3.0.0/test/roots/test-autodoc/src/nesting.rst +77 -0
  55. sphinx_lua_ls-3.0.0/test/roots/test-autodoc/src/nesting_recursive.rst +78 -0
  56. sphinx_lua_ls-3.0.0/test/roots/test-autodoc/src/object_types.rst +8 -0
  57. sphinx_lua_ls-3.0.0/test/roots/test-autodoc/src/relative_resolve.rst +6 -0
  58. {sphinx_lua_ls-2.0.1/test/roots/test-autodoc-roots → sphinx_lua_ls-3.0.0/test/roots/test-autodoc-emmylua}/conf.py +2 -0
  59. sphinx_lua_ls-3.0.0/test/roots/test-autodoc-emmylua/index.rst +20 -0
  60. sphinx_lua_ls-3.0.0/test/roots/test-autodoc-emmylua/lua/.emmyrc.json +94 -0
  61. sphinx_lua_ls-3.0.0/test/roots/test-autodoc-emmylua/lua/annotations.lua +44 -0
  62. sphinx_lua_ls-3.0.0/test/roots/test-autodoc-emmylua/lua/foo/x.lua +7 -0
  63. sphinx_lua_ls-3.0.0/test/roots/test-autodoc-emmylua/lua/global_tables.lua +16 -0
  64. sphinx_lua_ls-3.0.0/test/roots/test-autodoc-emmylua/lua/globals.lua +16 -0
  65. sphinx_lua_ls-3.0.0/test/roots/test-autodoc-emmylua/lua/globals_2.lua +13 -0
  66. sphinx_lua_ls-3.0.0/test/roots/test-autodoc-emmylua/lua/incongruent_export.lua +9 -0
  67. sphinx_lua_ls-3.0.0/test/roots/test-autodoc-emmylua/lua/member_ordering.lua +24 -0
  68. sphinx_lua_ls-3.0.0/test/roots/test-autodoc-emmylua/lua/module_title.lua +9 -0
  69. sphinx_lua_ls-3.0.0/test/roots/test-autodoc-emmylua/lua/nested_modules.lua +14 -0
  70. sphinx_lua_ls-3.0.0/test/roots/test-autodoc-emmylua/lua/nesting.lua +58 -0
  71. sphinx_lua_ls-3.0.0/test/roots/test-autodoc-emmylua/lua/object_types.lua +139 -0
  72. sphinx_lua_ls-3.0.0/test/roots/test-autodoc-emmylua/lua/relative_resolve.lua +19 -0
  73. sphinx_lua_ls-3.0.0/test/roots/test-autodoc-emmylua/lua/signatures.lua +35 -0
  74. sphinx_lua_ls-3.0.0/test/roots/test-autodoc-emmylua/lua/using.lua +11 -0
  75. {sphinx_lua_ls-2.0.1/test/roots/test-autodoc → sphinx_lua_ls-3.0.0/test/roots/test-autodoc-emmylua}/src/autoindex.rst +2 -2
  76. sphinx_lua_ls-3.0.0/test/roots/test-autodoc-emmylua/src/global_tables.rst +9 -0
  77. sphinx_lua_ls-3.0.0/test/roots/test-autodoc-emmylua/src/globals.rst +9 -0
  78. sphinx_lua_ls-3.0.0/test/roots/test-autodoc-emmylua/src/incongruent_export.rst +10 -0
  79. {sphinx_lua_ls-2.0.1/test/roots/test-autodoc → sphinx_lua_ls-3.0.0/test/roots/test-autodoc-emmylua}/src/object_types.rst +1 -1
  80. sphinx_lua_ls-3.0.0/test/roots/test-autodoc-emmylua/src/require.rst +9 -0
  81. sphinx_lua_ls-3.0.0/test/roots/test-autodoc-emmylua/src/signatures.rst +55 -0
  82. sphinx_lua_ls-3.0.0/test/roots/test-autodoc-emmylua/src/using.rst +16 -0
  83. {sphinx_lua_ls-2.0.1/test/roots/test-autodoc-settings → sphinx_lua_ls-3.0.0/test/roots/test-autodoc-roots}/conf.py +2 -0
  84. sphinx_lua_ls-3.0.0/test/roots/test-autodoc-settings/conf.py +7 -0
  85. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/roots/test-autodoc-settings/lua/autodoc.lua +6 -4
  86. sphinx_lua_ls-3.0.0/test/roots/test-doc/Makefile +20 -0
  87. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/roots/test-doc/conf.py +2 -0
  88. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/roots/test-doc/index.rst +1 -1
  89. sphinx_lua_ls-3.0.0/test/roots/test-doc/make.bat +35 -0
  90. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/roots/test-doc/src/autoindex.rst +25 -0
  91. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/roots/test-doc/src/directives.rst +43 -0
  92. sphinx_lua_ls-3.0.0/test/roots/test-doc/src/inherited.rst +57 -0
  93. sphinx_lua_ls-3.0.0/test/roots/test-intersphinx/Makefile +20 -0
  94. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/roots/test-intersphinx/conf.py +2 -0
  95. sphinx_lua_ls-3.0.0/test/roots/test-intersphinx/make.bat +35 -0
  96. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/test_parse.py +4 -4
  97. sphinx_lua_ls-3.0.0/test/test_regression/apidoc-md-sep.yml +45 -0
  98. sphinx_lua_ls-3.0.0/test/test_regression/apidoc-md.yml +10 -0
  99. sphinx_lua_ls-3.0.0/test/test_regression/apidoc-rst-sep.yml +50 -0
  100. sphinx_lua_ls-3.0.0/test/test_regression/apidoc-rst.yml +11 -0
  101. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/test_regression/autodoc-annotations.html +81 -36
  102. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/test_regression/autodoc-autoindex.html +46 -46
  103. sphinx_lua_ls-3.0.0/test/test_regression/autodoc-emmylua-annotations.html +418 -0
  104. sphinx_lua_ls-3.0.0/test/test_regression/autodoc-emmylua-autoindex.html +960 -0
  105. sphinx_lua_ls-3.0.0/test/test_regression/autodoc-emmylua-global_tables.html +96 -0
  106. sphinx_lua_ls-3.0.0/test/test_regression/autodoc-emmylua-globals.html +113 -0
  107. sphinx_lua_ls-3.0.0/test/test_regression/autodoc-emmylua-incongruent_export.html +85 -0
  108. sphinx_lua_ls-3.0.0/test/test_regression/autodoc-emmylua-member_ordering.html +666 -0
  109. sphinx_lua_ls-3.0.0/test/test_regression/autodoc-emmylua-module_title.html +115 -0
  110. sphinx_lua_ls-3.0.0/test/test_regression/autodoc-emmylua-nested_modules.html +71 -0
  111. sphinx_lua_ls-3.0.0/test/test_regression/autodoc-emmylua-nesting.html +480 -0
  112. sphinx_lua_ls-3.0.0/test/test_regression/autodoc-emmylua-nesting_recursive.html +966 -0
  113. sphinx_lua_ls-3.0.0/test/test_regression/autodoc-emmylua-object_types.html +1953 -0
  114. sphinx_lua_ls-3.0.0/test/test_regression/autodoc-emmylua-relative_resolve.html +67 -0
  115. sphinx_lua_ls-3.0.0/test/test_regression/autodoc-emmylua-require.html +50 -0
  116. sphinx_lua_ls-3.0.0/test/test_regression/autodoc-emmylua-signatures.html +1187 -0
  117. sphinx_lua_ls-3.0.0/test/test_regression/autodoc-emmylua-using.html +41 -0
  118. sphinx_lua_ls-3.0.0/test/test_regression/autodoc-globals.html +113 -0
  119. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/test_regression/autodoc-member_ordering.html +84 -32
  120. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/test_regression/autodoc-module_title.html +18 -8
  121. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/test_regression/autodoc-nested_modules.html +9 -4
  122. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/test_regression/autodoc-nesting.html +10 -4
  123. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/test_regression/autodoc-nesting_recursive.html +24 -16
  124. sphinx_lua_ls-3.0.0/test/test_regression/autodoc-object_types.html +2081 -0
  125. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/test_regression/autodoc-relative_resolve.html +2 -0
  126. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/test_regression/autodoc-roots-default.html.html +18 -8
  127. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/test_regression/autodoc-roots-single-root.html.html +9 -4
  128. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/test_regression/autodoc-settings-annotation.html.html +10 -4
  129. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/test_regression/autodoc-settings-no-recursion.html.html +1 -0
  130. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/test_regression/autodoc-settings-simple.html.html +10 -4
  131. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/test_regression/doc-annotations.html +2 -0
  132. sphinx_lua_ls-3.0.0/test/test_regression/doc-autoindex.html +419 -0
  133. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/test_regression/doc-directives.html +1783 -868
  134. sphinx_lua_ls-3.0.0/test/test_regression/doc-inherited.html +230 -0
  135. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/test_regression/doc-modules.html +7 -0
  136. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/test_regression/doc-refs.html +7 -0
  137. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/test_regression.py +102 -0
  138. sphinx_lua_ls-2.0.1/.vscode/settings.json +0 -3
  139. sphinx_lua_ls-2.0.1/CHANGELOG.md +0 -50
  140. sphinx_lua_ls-2.0.1/docs/source/index.rst +0 -850
  141. sphinx_lua_ls-2.0.1/sphinx_lua_ls/apidoc.py +0 -151
  142. sphinx_lua_ls-2.0.1/sphinx_lua_ls/domain.py +0 -1193
  143. sphinx_lua_ls-2.0.1/sphinx_lua_ls/intersphinx.py +0 -202
  144. sphinx_lua_ls-2.0.1/sphinx_lua_ls/objtree.py +0 -683
  145. sphinx_lua_ls-2.0.1/sphinx_lua_ls.egg-info/SOURCES.txt +0 -101
  146. sphinx_lua_ls-2.0.1/test/roots/test-autodoc/lua/object_types.lua +0 -139
  147. sphinx_lua_ls-2.0.1/test/roots/test-doc/mod.lua +0 -86
  148. sphinx_lua_ls-2.0.1/test/roots/test-doc/src/intersphinx.rst +0 -6
  149. sphinx_lua_ls-2.0.1/test/test_regression/autodoc-object_types.html +0 -1918
  150. sphinx_lua_ls-2.0.1/test/test_regression/doc-autoindex.html +0 -178
  151. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/.gitignore +0 -0
  152. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/.pre-commit-config.yaml +0 -0
  153. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/LICENSE +0 -0
  154. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/README.md +0 -0
  155. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/conftest.py +0 -0
  156. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/docs/Makefile +0 -0
  157. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/docs/make.bat +0 -0
  158. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/docs/source/_extra/robots.txt +0 -0
  159. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/setup.cfg +0 -0
  160. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/sphinx_lua_ls/py.typed +0 -0
  161. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/sphinx_lua_ls/static/lua.css +0 -0
  162. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/sphinx_lua_ls.egg-info/dependency_links.txt +0 -0
  163. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/sphinx_lua_ls.egg-info/top_level.txt +0 -0
  164. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/conftest.py +0 -0
  165. {sphinx_lua_ls-2.0.1/test/roots/test-autodoc-roots → sphinx_lua_ls-3.0.0/test/roots/test-apidoc}/Makefile +0 -0
  166. {sphinx_lua_ls-2.0.1/test/roots/test-autodoc-roots → sphinx_lua_ls-3.0.0/test/roots/test-apidoc}/make.bat +0 -0
  167. {sphinx_lua_ls-2.0.1/test/roots/test-intersphinx → sphinx_lua_ls-3.0.0/test/roots/test-autodoc}/Makefile +0 -0
  168. {sphinx_lua_ls-2.0.1/test/roots/test-intersphinx → sphinx_lua_ls-3.0.0/test/roots/test-autodoc}/make.bat +0 -0
  169. {sphinx_lua_ls-2.0.1/test/roots/test-autodoc-settings → sphinx_lua_ls-3.0.0/test/roots/test-autodoc-emmylua}/Makefile +0 -0
  170. {sphinx_lua_ls-2.0.1/test/roots/test-autodoc-settings → sphinx_lua_ls-3.0.0/test/roots/test-autodoc-emmylua}/make.bat +0 -0
  171. {sphinx_lua_ls-2.0.1/test/roots/test-autodoc → sphinx_lua_ls-3.0.0/test/roots/test-autodoc-emmylua}/src/annotations.rst +0 -0
  172. {sphinx_lua_ls-2.0.1/test/roots/test-autodoc → sphinx_lua_ls-3.0.0/test/roots/test-autodoc-emmylua}/src/member_ordering.rst +0 -0
  173. {sphinx_lua_ls-2.0.1/test/roots/test-autodoc → sphinx_lua_ls-3.0.0/test/roots/test-autodoc-emmylua}/src/module_title.rst +0 -0
  174. {sphinx_lua_ls-2.0.1/test/roots/test-autodoc → sphinx_lua_ls-3.0.0/test/roots/test-autodoc-emmylua}/src/nested_modules.rst +0 -0
  175. {sphinx_lua_ls-2.0.1/test/roots/test-autodoc → sphinx_lua_ls-3.0.0/test/roots/test-autodoc-emmylua}/src/nesting.rst +0 -0
  176. {sphinx_lua_ls-2.0.1/test/roots/test-autodoc → sphinx_lua_ls-3.0.0/test/roots/test-autodoc-emmylua}/src/nesting_recursive.rst +0 -0
  177. {sphinx_lua_ls-2.0.1/test/roots/test-autodoc → sphinx_lua_ls-3.0.0/test/roots/test-autodoc-emmylua}/src/relative_resolve.rst +0 -0
  178. {sphinx_lua_ls-2.0.1/test/roots/test-autodoc → sphinx_lua_ls-3.0.0/test/roots/test-autodoc-roots}/Makefile +0 -0
  179. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/roots/test-autodoc-roots/index.rst +0 -0
  180. {sphinx_lua_ls-2.0.1/test/roots/test-autodoc-roots → sphinx_lua_ls-3.0.0/test/roots/test-autodoc-roots/lua}/root_1/autodoc.lua +0 -0
  181. {sphinx_lua_ls-2.0.1/test/roots/test-autodoc-roots → sphinx_lua_ls-3.0.0/test/roots/test-autodoc-roots/lua}/root_2/autodoc.lua +0 -0
  182. {sphinx_lua_ls-2.0.1/test/roots/test-autodoc → sphinx_lua_ls-3.0.0/test/roots/test-autodoc-roots}/make.bat +0 -0
  183. {sphinx_lua_ls-2.0.1/test/roots/test-doc → sphinx_lua_ls-3.0.0/test/roots/test-autodoc-settings}/Makefile +0 -0
  184. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/roots/test-autodoc-settings/index.rst +0 -0
  185. {sphinx_lua_ls-2.0.1/test/roots/test-doc → sphinx_lua_ls-3.0.0/test/roots/test-autodoc-settings}/make.bat +0 -0
  186. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/roots/test-doc/src/annotations.rst +0 -0
  187. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/roots/test-doc/src/modules.rst +0 -0
  188. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/roots/test-doc/src/refs.rst +0 -0
  189. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/roots/test-intersphinx/index.rst +0 -0
  190. {sphinx_lua_ls-2.0.1 → sphinx_lua_ls-3.0.0}/test/test_regression/autodoc-roots-no-roots.html.html +0 -0
@@ -32,11 +32,17 @@ jobs:
32
32
  - name: Install dependencies
33
33
  run: python -m pip install '.'
34
34
  - name: Download LuaLs for Linux
35
- run: python sphinx_lua_ls/lua_ls.py linux x86_64 ~/lua_ls_release/ubuntu-latest
35
+ run: python sphinx_lua_ls/lua_ls.py linux x86_64 --runtime luals ~/lua_ls_release/ubuntu-latest
36
36
  - name: Download LuaLs for Windows
37
- run: python sphinx_lua_ls/lua_ls.py win32 amd64 ~/lua_ls_release/windows-latest
37
+ run: python sphinx_lua_ls/lua_ls.py win32 amd64 --runtime luals ~/lua_ls_release/windows-latest
38
38
  - name: Download LuaLs for MacOs
39
- run: python sphinx_lua_ls/lua_ls.py darwin x86_64 ~/lua_ls_release/macos-latest
39
+ run: python sphinx_lua_ls/lua_ls.py darwin arm --runtime luals ~/lua_ls_release/macos-latest
40
+ - name: Download EmmyLua for Linux
41
+ run: python sphinx_lua_ls/lua_ls.py linux x86_64 --runtime emmylua ~/lua_ls_release/ubuntu-latest
42
+ - name: Download EmmyLua for Windows
43
+ run: python sphinx_lua_ls/lua_ls.py win32 amd64 --runtime emmylua ~/lua_ls_release/windows-latest
44
+ - name: Download EmmyLua for MacOs
45
+ run: python sphinx_lua_ls/lua_ls.py darwin arm --runtime emmylua ~/lua_ls_release/macos-latest
40
46
  - name: Upload artifact
41
47
  uses: actions/upload-artifact@v4
42
48
  with:
@@ -0,0 +1,135 @@
1
+ # Changelog
2
+
3
+ ## v3.0.0
4
+
5
+ - **Breaking change:** changed how `apidoc` generates file names to avoid collisions.
6
+
7
+ - Supported [EmmyLua] as an alternative backend for documentation export.
8
+
9
+ EmmyLua was recently re-implemented in Rust, and its new language server
10
+ provides some substantial benefits:
11
+
12
+ - it has stronger and more flexible type system,
13
+ - it handles aliases and enums way better than LuaLs,
14
+ - it supports namespaces,
15
+ - it exports way more metadata, including function overloads and class constructors,
16
+ - you don't have to annotate modules with `@class` and `!doctype` anymore.
17
+
18
+ I plan to use EmmyLua as the default language server since *v3.0.0*.
19
+
20
+ - Long object signatures are now broken into multiple lines.
21
+
22
+ - Supported using arbitrary types as object names, i.e.:
23
+
24
+ ```rst
25
+ .. lua:data:: [integer]: string
26
+ ```
27
+
28
+ - Added `:globals:` flag for the `lua:autoobject` directive. It will allow
29
+ automatically documenting global variables defined in a module.
30
+
31
+ - The `lua:autoindex` directive now lists globals defined in a module.
32
+
33
+ - Added support for documenting class constructors:
34
+
35
+ ```rst
36
+ .. lua:class:: Foo(a, b, ...)
37
+ ```
38
+
39
+ - Added directive for enums.
40
+
41
+ - Supported generic parameters for functions, classes, aliases and enums:
42
+
43
+ ```rst
44
+ .. lua:class:: Foo<T>
45
+ ```
46
+
47
+ - Improved linking to Lua language documentation to take into account
48
+ whether an item is supported for the given Lua version.
49
+
50
+ - Added the `lua:lua` role to compensate for MySt not supporting default roles.
51
+
52
+ If Lua is your primary domain cross-referencing from markdown can be done like this:
53
+
54
+ ```md
55
+ Reference to a {lua}`logging.Logger.info`.
56
+ ```
57
+
58
+ - Added the `lua:other-inherited-members` directive and `:inherited-members-table:`
59
+ flag for the `lua:autoobject` directive.
60
+
61
+ These allow listing all members that were inherited by a class but weren't
62
+ documented within the class body (see [#3]).
63
+
64
+ - Supported markdown output for `apidoc`.
65
+
66
+ - Added option to separate module members into their own files for `apidoc`.
67
+
68
+ [EmmyLua]: https://github.com/EmmyLuaLs/emmylua-analyzer-rust/
69
+ [#3]: https://github.com/taminomara/sphinx-lua-ls/issues/3
70
+
71
+ **Migrating to 3.0.0:**
72
+
73
+ - If you're using `apidoc`, you'll need to update links to your documentation.
74
+
75
+ - You'll need to explicitly specify which language server to use
76
+ by including `lua_ls_backend` to your `conf.py`.
77
+
78
+ ## v2.0.1
79
+
80
+ - Fixed documentation not being rebuilt after changing lua source code.
81
+
82
+ ## v2.0.0
83
+
84
+ - **Breaking change:** don't implicitly convert classes that're derived from `table`
85
+ to modules. Users should use a `!doctype` comment instead.
86
+
87
+ - **Breaking change:** disallow nesting modules inside classes.
88
+
89
+ - Added `autoindex` directive.
90
+
91
+ - Added `apidoc` functionality.
92
+
93
+ - Improved test coverage and fixed found bugs.
94
+
95
+ **Migrating to 2.0.0:**
96
+
97
+ In your Lua code base, perform global replace by regexp:
98
+
99
+ ```
100
+ ^(\s*)---\s*@class\s*(.+): table$
101
+ ```
102
+
103
+ to
104
+
105
+ ```
106
+ $1--- !doctype module
107
+ $1--- @class $2
108
+ ```
109
+
110
+ Make sure that you only use `!doctype module` on the top-level
111
+ tables that can be imported via `require`. On other objects,
112
+ use `!doctype table` instead, otherwise you'll get errors that modules are not allowed within other objects.
113
+
114
+ ## v1.1.0
115
+
116
+ - Added support for `!doc` and `!doctype` comments.
117
+
118
+ - Added `:include-protected:` and `:include-package:` options for `lua:autoobject`.
119
+
120
+ - Allowed referring `lua:const` objects from `lua:attr` role.
121
+
122
+ - Fixed a bug when default options would not properly propagate
123
+ when using `lua:autoobject` with `:recurse:`.
124
+
125
+ - Fixed a bug when `lua:autoobject` would deduce incorrect module paths
126
+ when applied to non-toplevel modules.
127
+
128
+ - Fixed a bug when docstring for a class would be used for undocumented function
129
+ parameters that have this class as their type.
130
+
131
+ - Fixed types when `lua:autoobject` would infer incorrect types for `data`.
132
+
133
+ ## v1.0.0
134
+
135
+ Initial release.
@@ -22,6 +22,10 @@
22
22
  pre-commit install
23
23
  ```
24
24
 
25
+ 5. If you're not on linux, install [EmmyLua Doc Cli].
26
+
27
+ [EmmyLua Doc Cli]: https://github.com/EmmyLuaLs/emmylua-analyzer-rust/?tab=readme-ov-file#-installation
28
+
25
29
  ## Run tests
26
30
 
27
31
  To run tests, simply run `pytest` and `pyright`:
@@ -37,6 +41,12 @@ To fix code style, you can manually run pre-commit hooks:
37
41
  pre-commit run -a # Fix code style.
38
42
  ```
39
43
 
44
+ To regenerate data for regression tests, run
45
+
46
+ ```shell
47
+ pytest --regen-all
48
+ ```
49
+
40
50
 
41
51
  ## Build docs
42
52
 
@@ -1,7 +1,7 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sphinx-lua-ls
3
- Version: 2.0.1
4
- Summary: Automatic documentation generation via LuaLS
3
+ Version: 3.0.0
4
+ Summary: Automatic documentation generation via EmmyLua/LuaLs
5
5
  Author-email: Tamika Nomara <taminomara@gmail.com>
6
6
  License: MIT License
7
7
 
@@ -62,10 +62,12 @@ Requires-Dist: pytest~=7.4; extra == "test"
62
62
  Requires-Dist: sybil~=6.1; extra == "test"
63
63
  Requires-Dist: pytest-regressions~=2.7; extra == "test"
64
64
  Requires-Dist: beautifulsoup4~=4.13; extra == "test"
65
+ Requires-Dist: myst-parser~=4.0; extra == "test"
65
66
  Provides-Extra: doc
66
67
  Requires-Dist: sybil~=6.1; extra == "doc"
67
68
  Requires-Dist: furo>=2024; extra == "doc"
68
69
  Requires-Dist: sphinx_design>=0.6; extra == "doc"
70
+ Requires-Dist: myst-parser~=4.0; extra == "doc"
69
71
  Dynamic: license-file
70
72
 
71
73
  # Sphinx plugin for Lua and Lua Language Server
@@ -0,0 +1,20 @@
1
+ {
2
+ "diagnostics": {
3
+ "enables": ["unknown-doc-tag"]
4
+ },
5
+ "runtime": {
6
+ "version": "Lua5.4",
7
+ "requireLikeFunction": [],
8
+ "frameworkVersions": [],
9
+ "extensions": [],
10
+ "requirePattern": [],
11
+ "classDefaultCall": {
12
+ "functionName": "__init",
13
+ "forceNonColon": true,
14
+ "forceReturnSelf": true
15
+ }
16
+ },
17
+ "doc": {
18
+ "knownTags": ["doctype", "doc"]
19
+ }
20
+ }
@@ -1,53 +1,38 @@
1
+ --- @namespace logging
2
+
1
3
  --- A generic logging module, just to demonstrate you documentation.
2
- ---
3
- --- .. lua:autoobject:: LOG_LEVEL
4
- --- :global:
5
- ---
6
- --- !doctype module
7
- --- @class logging
8
- logging = {}
4
+ local logging = {}
9
5
 
10
6
  --- Represents message severity.
11
7
  ---
12
- --- @alias logging.Level integer
13
- logging.Level = {}
8
+ --- @enum Level
9
+ logging.Level = {
10
+ --- For debug messages, hidden by default.
11
+ Debug = 1,
14
12
 
15
- --- For debug messages, hidden by default.
16
- ---
17
- --- @type logging.Level
18
- logging.Level.Debug = 1
13
+ --- For info messages.
14
+ Info = 2,
19
15
 
20
- --- For info messages.
21
- ---
22
- --- @type logging.Level
23
- logging.Level.Info = 2
16
+ --- For warnings, when behavior may be different from what users expect.
17
+ Warning = 3,
24
18
 
25
- --- For warnings, when behavior may be different from what users expect.
26
- ---
27
- --- @type logging.Level
28
- logging.Level.Warning = 3
29
-
30
- --- For errors, when the system stops working.
31
- ---
32
- --- @type logging.Level
33
- logging.Level.Error = 4
19
+ --- For errors, when the system stops working.
20
+ Error = 4,
21
+ }
34
22
 
35
23
  --- Default log level.
36
24
  ---
37
- --- @type logging.Level
25
+ --- @type Level
38
26
  LOG_LEVEL = LOG_LEVEL or logging.Level.Info
39
27
 
40
28
  --- An object for logging messages.
41
29
  ---
42
- --- @class logging.Logger
30
+ --- @class Logger
43
31
  logging.Logger = {}
44
32
 
45
- --- Create a new logger.
46
- ---
47
33
  --- @param name string name of the logger, will be added to every message.
48
34
  --- @param level logging.Level? level of the logger, equals to `LOG_LEVEL` by default.
49
- --- @return logging.Logger
50
- function logging.Logger.new(name, level) return {} end
35
+ function logging.Logger.__init(name, level) end
51
36
 
52
37
  --- Print a debug message.
53
38
  ---
@@ -0,0 +1,79 @@
1
+ Generating API references
2
+ =========================
3
+
4
+ :rst:dir:`lua:autoobject` allows recursively generating documentation,
5
+ however it all ends up on a single page. If you want to give a separate page
6
+ for every module, you'll need to create multiple ``.rst`` or ``.md`` files.
7
+ Fortunately, Sphinx-LuaLs can do this for you.
8
+
9
+ Add :py:data:`lua_ls_apidoc_roots` option to the ``conf.py``, and provide a mapping
10
+ from module names to directories (relative to the location of ``conf.py``)
11
+ where generated ``.rst`` or ``.md`` files should be placed.
12
+
13
+ For example, to generate API reference for module ``moduleName``
14
+ in directory ``moduleDirectory``, add the following:
15
+
16
+ .. tab-set::
17
+ :sync-group: lang
18
+
19
+ .. tab-item:: RST
20
+ :sync: rst
21
+
22
+ .. code-block:: python
23
+
24
+ lua_ls_apidoc_roots = {
25
+ "moduleName": "moduleDirectory",
26
+ }
27
+
28
+ .. tab-item:: Markdown
29
+ :sync: md
30
+
31
+ .. code-block:: python
32
+
33
+ lua_ls_apidoc_format = "md"
34
+ lua_ls_apidoc_roots = {
35
+ "moduleName": "moduleDirectory",
36
+ }
37
+
38
+ Upon start, Sphinx-LuaLs will recursively create ``.rst`` or ``.md`` files
39
+ in ``moduleDirectory``. ``moduleDirectory/index`` will contain reference for
40
+ ``moduleName``. Then, for every submodule of ``moduleName``, there will be another
41
+ ``.rst`` or ``.md`` generated.
42
+
43
+ .. warning::
44
+
45
+ Do not add any other files to ``moduleDirectory``, otherwise they will be deleted.
46
+
47
+ It is best to add ``moduleDirectory`` to your ``.gitignore`` file.
48
+
49
+ Don't forget to include ``moduleDirectory/index`` into a table of contents
50
+ in your main ``index.rst``/``index.md``.
51
+
52
+ Settings
53
+ --------
54
+
55
+ You can override default settings using :py:data:`lua_ls_apidoc_max_depth`,
56
+ :py:data:`lua_ls_apidoc_default_options`,
57
+ :py:data:`lua_ls_apidoc_ignored_modules`,
58
+ :py:data:`lua_ls_apidoc_separate_members`,
59
+ and :py:data:`lua_ls_apidoc_format`;
60
+ see `settings <settings.html>`_ for more info.
61
+
62
+ For example, here's how to enable documentation for members without description,
63
+ protected members, and global variables:
64
+
65
+ .. code-block:: python
66
+
67
+ lua_ls_apidoc_default_options = {
68
+ # Document members without description.
69
+ "undoc-members": "",
70
+ # Document protected members.
71
+ "protected-members": "",
72
+ # Document module's global variables.
73
+ "globals": "",
74
+ # Override default ordering.
75
+ "member-order": "alphabetical",
76
+ "module-member-order": "groupwise",
77
+ # Add table with inherited members for classes.
78
+ "inherited-members-table": "",
79
+ }