py2docfx 0.1.9.dev1819899__py3-none-any.whl → 0.1.9.dev1824235__py3-none-any.whl
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.
- py2docfx/__main__.py +6 -3
- py2docfx/convert_prepare/generate_document.py +13 -2
- py2docfx/convert_prepare/get_source.py +19 -3
- py2docfx/convert_prepare/pip_utils.py +1 -0
- py2docfx/convert_prepare/sphinx_caller.py +4 -1
- {py2docfx-0.1.9.dev1819899.dist-info → py2docfx-0.1.9.dev1824235.dist-info}/METADATA +1 -1
- {py2docfx-0.1.9.dev1819899.dist-info → py2docfx-0.1.9.dev1824235.dist-info}/RECORD +9 -9
- {py2docfx-0.1.9.dev1819899.dist-info → py2docfx-0.1.9.dev1824235.dist-info}/WHEEL +0 -0
- {py2docfx-0.1.9.dev1819899.dist-info → py2docfx-0.1.9.dev1824235.dist-info}/top_level.txt +0 -0
py2docfx/__main__.py
CHANGED
@@ -217,13 +217,10 @@ def parse_command_line_args(argv) -> (
|
|
217
217
|
|
218
218
|
def install_required_packages(
|
219
219
|
required_package_list: list[PackageInfo], github_token: str, ado_token: str):
|
220
|
-
start_time = time.time()
|
221
220
|
for idx, package in enumerate(required_package_list):
|
222
221
|
if package.install_type == package.InstallType.SOURCE_CODE:
|
223
222
|
get_source(package, idx, vststoken=ado_token, githubtoken=github_token)
|
224
223
|
install_package(package)
|
225
|
-
end_time = time.time()
|
226
|
-
print(f"<install_required_packages>{end_time-start_time}<install_required_packages/>")
|
227
224
|
|
228
225
|
def donwload_package_generate_documents(
|
229
226
|
package_info_list: list[PackageInfo],
|
@@ -254,9 +251,15 @@ def donwload_package_generate_documents(
|
|
254
251
|
print(f"<merge_toc>{package.name},{end_time-start_time}<merge_toc/>")
|
255
252
|
|
256
253
|
if output_doc_folder:
|
254
|
+
start_time = time.time()
|
257
255
|
package.path.move_document_to_target(os.path.join(output_doc_folder, package.name))
|
256
|
+
end_time = time.time()
|
257
|
+
print(f"<move_document_to_target>{package.name},{end_time-start_time}<move_document_to_target/>")
|
258
258
|
if output_doc_folder:
|
259
|
+
start_time = time.time()
|
259
260
|
move_root_toc_to_target(YAML_OUTPUT_ROOT, output_doc_folder)
|
261
|
+
end_time = time.time()
|
262
|
+
print(f"<move_root_toc_to_target>{end_time-start_time}<move_root_toc_to_target/>")
|
260
263
|
|
261
264
|
def prepare_out_dir(output_root: str | os.PathLike) -> os.PathLike | None:
|
262
265
|
# prepare output_root\DOC_FOLDER_NAME (if folder contains files, raise exception)
|
@@ -1,5 +1,6 @@
|
|
1
1
|
from __future__ import annotations # Avoid A | B annotation break under <= py3.9
|
2
2
|
import os
|
3
|
+
import time
|
3
4
|
from py2docfx.convert_prepare.generate_conf import generate_conf
|
4
5
|
from py2docfx.convert_prepare.git import checkout
|
5
6
|
from py2docfx.convert_prepare.package_info import PackageInfo
|
@@ -9,6 +10,7 @@ from py2docfx.convert_prepare.subpackage import merge_subpackage_files
|
|
9
10
|
CONF_TEMPLATE_DIR = os.path.join(os.path.dirname(os.path.realpath(__file__)), "conf_templates")
|
10
11
|
|
11
12
|
def generate_document(pkg: PackageInfo, output_root: str | os.PathLike):
|
13
|
+
start_time = time.time()
|
12
14
|
# Copy manual written RST from target doc repo
|
13
15
|
package_paths = pkg.path
|
14
16
|
if output_root:
|
@@ -34,13 +36,20 @@ def generate_document(pkg: PackageInfo, output_root: str | os.PathLike):
|
|
34
36
|
print("<CI INFO>: Listing RST files:")
|
35
37
|
for rst_file in os.listdir(package_paths.doc_folder):
|
36
38
|
print(rst_file)
|
37
|
-
|
38
39
|
print("<CI INFO>: Running Sphinx build...")
|
40
|
+
end_time = time.time()
|
41
|
+
print(f"<pre_generate_conf>{pkg.name},{end_time-start_time}<pre_generate_conf/>")
|
42
|
+
start_time = time.time()
|
39
43
|
generate_conf(pkg, package_paths.doc_folder, CONF_TEMPLATE_DIR)
|
44
|
+
end_time = time.time()
|
45
|
+
print(f"<generate_conf>{pkg.name},{end_time-start_time}<generate_conf/>")
|
46
|
+
start_time = time.time()
|
40
47
|
run_converter(package_paths.doc_folder, package_paths.yaml_output_folder)
|
41
|
-
|
48
|
+
end_time = time.time()
|
49
|
+
print(f"<run_converter>{pkg.name},{end_time-start_time}<run_converter/>")
|
42
50
|
subpackages_path_record = {}
|
43
51
|
if pkg.build_in_subpackage:
|
52
|
+
start_time = time.time()
|
44
53
|
subpackages_yaml_path = os.path.join(package_paths.yaml_output_folder, "subpackages")
|
45
54
|
for (subpackage_name, subpackage_path) in subpackages_rst_record.items():
|
46
55
|
subpackage_yaml_path = os.path.join(subpackages_yaml_path, subpackage_name)
|
@@ -48,3 +57,5 @@ def generate_document(pkg: PackageInfo, output_root: str | os.PathLike):
|
|
48
57
|
run_converter(subpackage_path, subpackage_yaml_path)
|
49
58
|
|
50
59
|
merge_subpackage_files(subpackages_path_record, package_paths.yaml_output_folder, pkg.name)
|
60
|
+
end_time = time.time()
|
61
|
+
print(f"<merge_subpackage_files>{pkg.name},{end_time-start_time}<merge_subpackage_files/>")
|
@@ -2,7 +2,7 @@ import os.path as path
|
|
2
2
|
import os
|
3
3
|
import subprocess
|
4
4
|
import sys
|
5
|
-
|
5
|
+
import time
|
6
6
|
import py2docfx.convert_prepare.git as git
|
7
7
|
import py2docfx.convert_prepare.pip_utils as pip_utils
|
8
8
|
import py2docfx.convert_prepare.pack as pack
|
@@ -75,6 +75,7 @@ def get_source(pkg: PackageInfo, cnt: int, vststoken=None, githubtoken=None):
|
|
75
75
|
dist_dir = path.join("dist_temp", path_cnt)
|
76
76
|
|
77
77
|
if pkg.install_type == PackageInfo.InstallType.SOURCE_CODE:
|
78
|
+
start_time = time.time()
|
78
79
|
if pkg.url:
|
79
80
|
repo_folder = path.join("source_repo", path_cnt)
|
80
81
|
token = githubtoken if "github.com" in pkg.url else vststoken
|
@@ -89,16 +90,20 @@ def get_source(pkg: PackageInfo, cnt: int, vststoken=None, githubtoken=None):
|
|
89
90
|
else:
|
90
91
|
source_folder = pkg.folder
|
91
92
|
sys.path.insert(0, source_folder)
|
92
|
-
|
93
|
+
end_time = time.time()
|
94
|
+
print(f"<download_source>{pkg.name},{end_time-start_time}<download_source/>")
|
93
95
|
elif pkg.install_type == PackageInfo.InstallType.PYPI:
|
94
96
|
full_name = pkg.get_combined_name_version()
|
97
|
+
start_time = time.time()
|
95
98
|
pip_utils.download(
|
96
99
|
full_name,
|
97
100
|
dist_dir,
|
98
101
|
extra_index_url=pkg.extra_index_url,
|
99
102
|
prefer_source_distribution=pkg.prefer_source_distribution,
|
100
103
|
)
|
101
|
-
|
104
|
+
end_time = time.time()
|
105
|
+
print(f"<download_pypi>{pkg.name},{end_time-start_time}<download/>")
|
106
|
+
start_time = time.time()
|
102
107
|
# unpack the downloaded wheel file.
|
103
108
|
downloaded_dist_file = path.join(dist_dir, os.listdir(dist_dir)[0])
|
104
109
|
pack.unpack_dist(downloaded_dist_file)
|
@@ -107,9 +112,15 @@ def get_source(pkg: PackageInfo, cnt: int, vststoken=None, githubtoken=None):
|
|
107
112
|
path.dirname(downloaded_dist_file),
|
108
113
|
os.listdir(dist_dir)[0]
|
109
114
|
)
|
115
|
+
end_time = time.time()
|
116
|
+
print(f"<unpack_pypi>{pkg.name},{end_time-start_time}<unpack/>")
|
110
117
|
elif pkg.install_type == PackageInfo.InstallType.DIST_FILE:
|
118
|
+
start_time = time.time()
|
111
119
|
pip_utils.download(pkg.location, dist_dir, prefer_source_distribution=False)
|
120
|
+
end_time = time.time()
|
121
|
+
print(f"<download_dist>{pkg.name},{end_time-start_time}<download/>")
|
112
122
|
|
123
|
+
start_time = time.time()
|
113
124
|
# unpack the downloaded dist file.
|
114
125
|
downloaded_dist_file = path.join(dist_dir, os.listdir(dist_dir)[0])
|
115
126
|
pack.unpack_dist(downloaded_dist_file)
|
@@ -121,7 +132,12 @@ def get_source(pkg: PackageInfo, cnt: int, vststoken=None, githubtoken=None):
|
|
121
132
|
path.dirname(downloaded_dist_file),
|
122
133
|
os.listdir(dist_dir)[0]
|
123
134
|
)
|
135
|
+
end_time = time.time()
|
136
|
+
print(f"<unpack_dist>{pkg.name},{end_time-start_time}<unpack/>")
|
124
137
|
else:
|
125
138
|
raise ValueError(f"Unknown install type: {pkg.install_type}")
|
126
139
|
|
140
|
+
start_time = time.time()
|
127
141
|
update_package_info(pkg, source_folder)
|
142
|
+
end_time = time.time()
|
143
|
+
print(f"<update_package_info>{pkg.name},{end_time-start_time}<update/>")
|
@@ -10,7 +10,7 @@ from py2docfx.convert_prepare.package_info import PackageInfo
|
|
10
10
|
from py2docfx.convert_prepare.paths import folder_is_hidden
|
11
11
|
from py2docfx.convert_prepare.subpackage import (get_subpackages,
|
12
12
|
move_rst_files_to_subfolder)
|
13
|
-
|
13
|
+
import time
|
14
14
|
DEBUG_SPHINX_FLAG = 'PY2DOCFX_DEBUG_SPHINX'
|
15
15
|
|
16
16
|
def run_apidoc(rst_path, source_code_path, exclude_paths, package_info: PackageInfo):
|
@@ -95,5 +95,8 @@ def run_converter(rst_path, out_path, conf_path = None):
|
|
95
95
|
env_tmp["PYTHONPATH"] = f"{package_root_parent};{python_path_current}" if python_path_current else package_root_parent
|
96
96
|
else:
|
97
97
|
env_tmp["PYTHONPATH"] = f"{package_root_parent}:{python_path_current}" if python_path_current else package_root_parent
|
98
|
+
start_time = time.time()
|
98
99
|
subprocess.run(sphinx_param, check=True, cwd=PACKAGE_ROOT, env=env_tmp)
|
100
|
+
end_time = time.time()
|
101
|
+
print(f"<run_sphinx>{out_path},{end_time-start_time}<run_sphinx/>")
|
99
102
|
return outdir
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: py2docfx
|
3
|
-
Version: 0.1.9.
|
3
|
+
Version: 0.1.9.dev1824235
|
4
4
|
Summary: A package built based on Sphinx which download source code package and generate yaml files supported by docfx.
|
5
5
|
Author: Microsoft Corporation
|
6
6
|
License: MIT License
|
@@ -1,10 +1,10 @@
|
|
1
1
|
py2docfx/__init__.py,sha256=kPRhPGPC1JknDotkksG428c1iIgfFr_4_7Jm-llrowY,72
|
2
|
-
py2docfx/__main__.py,sha256=
|
2
|
+
py2docfx/__main__.py,sha256=GqWpjtCsIlKzE9_FDFBV4fJbKvgyFoYUvMYJqUfZBKI,12074
|
3
3
|
py2docfx/convert_prepare/__init__.py,sha256=XxtxrP0kmW3ZBHIAoxsPDEHzcgeC0WSnole8Lk6CjKs,11
|
4
4
|
py2docfx/convert_prepare/environment.py,sha256=AwS4c4OSwVdxlExBLVo310HrVhFMhWQ2Wh9RJPJKH1c,894
|
5
5
|
py2docfx/convert_prepare/generate_conf.py,sha256=wqs6iyElzJarH-20_qEL9zvZvt5xfBMsGXSXPSZy6wg,2295
|
6
|
-
py2docfx/convert_prepare/generate_document.py,sha256=
|
7
|
-
py2docfx/convert_prepare/get_source.py,sha256=
|
6
|
+
py2docfx/convert_prepare/generate_document.py,sha256=svoD_KJa-BrsbetdsQ-CLdSfdrv2jYeMeqxGCYNKmY8,3025
|
7
|
+
py2docfx/convert_prepare/get_source.py,sha256=AqAEROzdUbzdg5a889PVbFTD3LG93f3PYst-bngEHAw,5818
|
8
8
|
py2docfx/convert_prepare/git.py,sha256=xGJp2nDWLfVljrxyPnFKPoLIqmBh6by-QdITogIuxi0,5893
|
9
9
|
py2docfx/convert_prepare/install_package.py,sha256=hATmgazcSX7k2n4jQXh9sQMyNUc1k1YqHv5K5UMALq4,262
|
10
10
|
py2docfx/convert_prepare/pack.py,sha256=vZS67_GzEhUmZWHU1dxm8gnWyRBs-kB6-KjX1d_FdOU,1260
|
@@ -12,10 +12,10 @@ py2docfx/convert_prepare/package_info.py,sha256=V-xasck6ZfqJdUjlGHtkC1iE-DCBDAMK
|
|
12
12
|
py2docfx/convert_prepare/package_info_extra_settings.py,sha256=u5B5e8hc0m9PA_-0kJzq1LtKn-xzZlucwXHTFy49mDg,1475
|
13
13
|
py2docfx/convert_prepare/params.py,sha256=PXMB8pLtb4XbfI322avA47q0AO-TyBE6kZf7FU8I6v4,1771
|
14
14
|
py2docfx/convert_prepare/paths.py,sha256=964RX81Qf__rzXgEATfqBNFCKTYVjLt9J7WCz2TnNdc,485
|
15
|
-
py2docfx/convert_prepare/pip_utils.py,sha256=
|
15
|
+
py2docfx/convert_prepare/pip_utils.py,sha256=HaXvpUAW1z_tj6uzOmOYccQ4wMVRhRFbqyoP7UmNpBI,1140
|
16
16
|
py2docfx/convert_prepare/repo_info.py,sha256=6ASJlhBwf6vZTSENgrWCVlJjlJVhuBxzdQyWEdWAC4c,117
|
17
17
|
py2docfx/convert_prepare/source.py,sha256=6-A7oof3-WAQcQZZVpT9pKiFLH4CCIZeYqq0MN0O3gw,1710
|
18
|
-
py2docfx/convert_prepare/sphinx_caller.py,sha256=
|
18
|
+
py2docfx/convert_prepare/sphinx_caller.py,sha256=GsnJr16OOOeyIBjDLzkdNV3vqRWIpPpNs51L6pasrAI,4429
|
19
19
|
py2docfx/convert_prepare/subpackage.py,sha256=mXAi_07pXvnPkSLZfykDh_7VeFxfLy74pYlzhMO8N_Q,5183
|
20
20
|
py2docfx/convert_prepare/conf_templates/conf.py_t,sha256=VL5K6xUTIw2cb4GFjDXu5iCZFPA2Kb36KLvier78HFg,3811
|
21
21
|
py2docfx/convert_prepare/conf_templates/master_doc.rst_t,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -123,7 +123,7 @@ py2docfx/docfx_yaml/tests/roots/test-writer-uri/conf.py,sha256=avcbnIOV2mlGQwhMQ
|
|
123
123
|
py2docfx/docfx_yaml/tests/roots/test-writer-versions/code_with_version_directives.py,sha256=UuizbrJPaG_PcaH18BvbI9KQevOaLd4SslpnzMSqcrE,1030
|
124
124
|
py2docfx/docfx_yaml/tests/roots/test-writer-versions/conf.py,sha256=SCEKrm9VigArfdgf-GAieJD-40d0ctT6urmGIjFOZLM,404
|
125
125
|
py2docfx/docfx_yaml/tests/utils/test_utils.py,sha256=d0OYSUQ6NyoZx5mlLdNGGNhiNmmQhjVT4hQ6jY3VE_M,3383
|
126
|
-
py2docfx-0.1.9.
|
127
|
-
py2docfx-0.1.9.
|
128
|
-
py2docfx-0.1.9.
|
129
|
-
py2docfx-0.1.9.
|
126
|
+
py2docfx-0.1.9.dev1824235.dist-info/METADATA,sha256=2W60ZNkXPqNBYBeJhF4e59lT2LsJ50_NVRJuP8ShkPE,600
|
127
|
+
py2docfx-0.1.9.dev1824235.dist-info/WHEEL,sha256=eOLhNAGa2EW3wWl_TU484h7q1UNgy0JXjjoqKoxAAQc,92
|
128
|
+
py2docfx-0.1.9.dev1824235.dist-info/top_level.txt,sha256=5dH2uP81dczt_qQJ38wiZ-gzoVWasfiJALWRSjdbnYU,9
|
129
|
+
py2docfx-0.1.9.dev1824235.dist-info/RECORD,,
|
File without changes
|
File without changes
|