diff --git a/docs/python/conf.py b/docs/python/conf.py index 7e44670218..3c58d9e7e7 100644 --- a/docs/python/conf.py +++ b/docs/python/conf.py @@ -14,7 +14,7 @@ import onnxruntime # -- Project information ----------------------------------------------------- project = 'ONNX Runtime' -copyright = '2018-2019, Microsoft' +copyright = '2018-2021, Microsoft' author = 'Microsoft' version = onnxruntime.__version__ release = version diff --git a/docs/python/examples/plot_dl_keras.py b/docs/python/examples/plot_dl_keras.py index 5890307465..949ee895e5 100644 --- a/docs/python/examples/plot_dl_keras.py +++ b/docs/python/examples/plot_dl_keras.py @@ -26,7 +26,6 @@ if not os.path.exists('dense121.onnx'): from keras2onnx import convert_keras onx = convert_keras(model, 'dense121.onnx') - onx.ir_version = 6 with open("dense121.onnx", "wb") as f: f.write(onx.SerializeToString()) diff --git a/docs/python/requirements.txt b/docs/python/requirements.txt new file mode 100644 index 0000000000..da66f486e8 --- /dev/null +++ b/docs/python/requirements.txt @@ -0,0 +1,8 @@ +keras +keras-onnx +sphinx +sphinx-gallery +pyquickhelper +tensorflow +tensorflow-onnx + diff --git a/tools/doc/builddoc.bat b/tools/doc/builddoc.bat new file mode 100644 index 0000000000..75429e716b --- /dev/null +++ b/tools/doc/builddoc.bat @@ -0,0 +1,5 @@ +@echo off +rem This script must be executed from this folder. +pip install -r ../../docs/python/requirements.txt +python -m sphinx -j2 -v -T -b html -d ../../build/docs/_doctrees/html ../../docs/python ../../build/docs/html +python -u rename_folders.py ../../build/docs/html diff --git a/tools/doc/builddoc.sh b/tools/doc/builddoc.sh new file mode 100644 index 0000000000..bd547dc716 --- /dev/null +++ b/tools/doc/builddoc.sh @@ -0,0 +1,4 @@ +# This script must be executed from this folder. +pip install -r ../../docs/python/requirements.txt +python -m sphinx -j2 -v -T -b html -d ../../build/docs/_doctrees/html ../../docs/python ../../build/docs/html +python -u rename_folders.py ../../build/docs/html diff --git a/tools/doc/rename_folders.py b/tools/doc/rename_folders.py new file mode 100644 index 0000000000..bb3fd854cd --- /dev/null +++ b/tools/doc/rename_folders.py @@ -0,0 +1,81 @@ +""" +Github publishes the markdown documentation with jekyll enabled. +This extension does not publish any folder starting with `_`. +These folders need to be renamed. +""" +import os +import re + + +def rename_folder(root): + """ + Renames all folder starting with `_`. + Returns the list of renamed folders. + """ + found = [] + for r, dirs, files in os.walk(root): + for name in dirs: + if name.startswith('_'): + found.append((r, name)) + renamed = [] + for r, name in found: + into = name.lstrip('_') + renamed.append((r, name, into)) + full_src = os.path.join(r, name) + full_into = os.path.join(r, into) + print("rename %r" % full_src) + os.rename(full_src, full_into) + + return renamed + + +def replace_files(root, renamed): + subs = {r[1]: r[2] for r in renamed} + reg = re.compile( + "(\\\"[a-zA-Z0-9\\.\\/\\?\\:@\\-_=#]+\\.([a-zA-Z]){2,6}" + "([a-zA-Z0-9\\.\\&\\/\\?\\:@\\-_=#])*\\\")") + + for r, dirs, files in os.walk(root): + for name in files: + if os.path.splitext(name)[-1] != '.html': + continue + full = os.path.join(r, name) + with open(full, "r", encoding="utf-8") as f: + content = f.read() + find = reg.findall(content) + repl = [] + for f in find: + if f[0].startswith("http"): + continue + for k, v in subs.items(): + if k == v: + raise ValueError("%r == %r" % (k, v)) + if ('"%s' % k) in f[0]: + repl.append((f[0], f[0].replace('"%s' % k, '"%s' % v))) + if ('/%s' % k) in f[0]: + repl.append((f[0], f[0].replace('/%s' % k, '/%s' % v))) + if len(repl) == 0: + continue + print("update %r" % full) + for k, v in repl: + content = content.replace(k, v) + with open(full, "w", encoding="utf-8") as f: + f.write(content) + + +if __name__ == "__main__": + import sys + if len(sys.argv) > 1: + root = sys.argv[-1] + else: + root = "../../build/docs/html" + print('look into %r' % root) + ren = rename_folder(root) + if len(ren) == 0: + ren = [('', '_static', 'static'), + ('', '_images', 'images'), + ('', '_downloads', 'downloads'), + ('', '_sources', 'sources'), + ('', '_modules', 'modules')] + replace_files(root, ren) + print('done.')