16833: replace epydoc with pdoc3
authorWard Vandewege <ward@curii.com>
Tue, 15 Sep 2020 20:43:12 +0000 (16:43 -0400)
committerWard Vandewege <ward@curii.com>
Tue, 15 Sep 2020 20:43:12 +0000 (16:43 -0400)
Arvados-DCO-1.1-Signed-off-by: Ward Vandewege <ward@curii.com>

build/run-tests.sh
doc/README.textile
doc/Rakefile
lib/install/deps.go

index 6359fff1defea96c2f2cdbc6094e88f0ef6c0998..32d4a75d2b63bdd04811f78718a60a65de1c74c8 100755 (executable)
@@ -650,6 +650,7 @@ install_env() {
     . "$VENV3DIR/bin/activate"
 
     # Needed for run_test_server.py which is used by certain (non-Python) tests.
+    # pdoc3 needed to generate the Python SDK documentation.
     (
         set -e
         "${VENV3DIR}/bin/pip3" install wheel
@@ -660,6 +661,7 @@ install_env() {
         "${VENV3DIR}/bin/pip3" install ciso8601
         "${VENV3DIR}/bin/pip3" install pycurl
         "${VENV3DIR}/bin/pip3" install ws4py
+        "${VENV3DIR}/bin/pip3" install pdoc3
         cd "$WORKSPACE/sdk/python"
         python3 setup.py install
     ) || fatal "installing PyYAML and sdk/python failed"
index 75a30e9ef2ade8cfa04d8dec2e6275750a41047d..85757980a7a40dd9b80d15c05e108209f0432ccb 100644 (file)
@@ -13,20 +13,28 @@ Additional information is available on the "'Documentation' page on the Arvados
 h2. Install dependencies
 
 <pre>
+arvados/doc$ sudo apt-get install build-essential libcurl4-openssl-dev libgnutls28-dev libssl-dev
 arvados/doc$ bundle install
-arvados/doc$ pip install epydoc
+</pre>
+
+To generate the Python SDK documentation, these additional dependencies are needed:
+
+<pre>
+arvados/doc$ sudo apt-get install python3-pip
+arvados/doc$ pip3 install arvados-python-client
+arvados/doc$ pip3 install pdoc3
 </pre>
 
 h2. Generate HTML pages
 
 <pre>
-arvados/doc$ rake
+arvados/doc$ bundle exec rake
 </pre>
 
 Alternately, to make the documentation browsable on the local filesystem:
 
 <pre>
-arvados/doc$ rake generate baseurl=$PWD/.site
+arvados/doc$ bundle exec rake generate baseurl=$PWD/.site
 </pre>
 
 h2. Run linkchecker
@@ -35,7 +43,7 @@ If you have "Linkchecker":http://wummel.github.io/linkchecker/ installed on
 your system, you can run it against the documentation:
 
 <pre>
-arvados/doc$ rake linkchecker baseurl=file://$PWD/.site
+arvados/doc$ bundle exec rake linkchecker baseurl=file://$PWD/.site
 </pre>
 
 Please note that this will regenerate your $PWD/.site directory.
@@ -43,7 +51,7 @@ Please note that this will regenerate your $PWD/.site directory.
 h2. Preview HTML pages
 
 <pre>
-arvados/doc$ rake run
+arvados/doc$ bundle exec rake run
 [2014-03-10 09:03:41] INFO  WEBrick 1.3.1
 [2014-03-10 09:03:41] INFO  ruby 2.1.1 (2014-02-24) [x86_64-linux]
 [2014-03-10 09:03:41] INFO  WEBrick::HTTPServer#start: pid=8926 port=8000
@@ -58,7 +66,7 @@ h2. Publish HTML pages inside Workbench
 You can set @baseurl@ (the URL prefix for all internal links), @arvados_cluster_uuid@, @arvados_api_host@ and @arvados_workbench_host@ without changing @_config.yml@:
 
 <pre>
-arvados/doc$ rake generate baseurl=/doc arvados_api_host=xyzzy.arvadosapi.com
+arvados/doc$ bundle exec rake generate baseurl=/doc arvados_api_host=xyzzy.arvadosapi.com
 </pre>
 
 Make the docs appear at {workbench_host}/doc by creating a symbolic link in Workbench's @public@ directory, pointing to the generated HTML tree.
@@ -70,5 +78,5 @@ arvados/doc$ ln -sn ../../../doc/.site ../apps/workbench/public/doc
 h2. Delete generated files
 
 <pre>
-arvados/doc$ rake realclean
+arvados/doc$ bundle exec rake realclean
 </pre>
index 623dbd033be6880cb31f436823cea8f604bbcc14..f7050dc41f1c1b2e717bb9b1c808c20bebe4f198 100644 (file)
@@ -35,12 +35,12 @@ file "sdk/python/arvados/index.html" do |t|
   if ENV['NO_SDK'] || File.exists?("no-sdk")
     next
   end
-  `which epydoc`
+  `which pdoc`
   if $? == 0
-    STDERR.puts `epydoc --html --parse-only -o sdk/python/arvados ../sdk/python/arvados/ 2>&1`
+    STDERR.puts `pdoc --html -o sdk/python ../sdk/python/arvados/ 2>&1`
     raise if $? != 0
   else
-    puts "Warning: epydoc not found, Python documentation will not be generated".colorize(:light_red)
+    puts "Warning: pdoc3 not found, Python documentation will not be generated".colorize(:light_red)
   end
 end
 
index 8f5762b8dabcbe102bc4ab94435bb5c2bd074a78..93a0ce452bf7c59f0483b1b84eacb6cac3416c8d 100644 (file)
@@ -142,7 +142,6 @@ func (installCommand) RunCommand(prog string, args []string, stdin io.Reader, st
                        "postgresql",
                        "postgresql-contrib",
                        "python3-dev",
-                       "python-epydoc",
                        "r-base",
                        "r-cran-testthat",
                        "sudo",