Skip to content
Snippets Groups Projects
  • Dongjoon Hyun's avatar
    ba4468bb
    [SPARK-18923][DOC][BUILD] Support skipping R/Python API docs · ba4468bb
    Dongjoon Hyun authored
    ## What changes were proposed in this pull request?
    
    We can build Python API docs by `cd ./python/docs && make html for Python` and R API docs by `cd ./R && sh create-docs.sh for R` separately. However, `jekyll` fails in some environments.
    
    This PR aims to support `SKIP_PYTHONDOC` and `SKIP_RDOC` for documentation build in `docs` folder. Currently, we can use `SKIP_SCALADOC` or `SKIP_API`. The reason providing additional options is that the Spark documentation build uses a number of tools to build HTML docs and API docs in Scala, Python and R. Specifically, for Python and R,
    
    - Python API docs requires `sphinx`.
    - R API docs requires `R` installation and `knitr` (and more others libraries).
    
    In other words, we cannot generate Python API docs without R installation. Also, we cannot generate R API docs without Python `sphinx` installation. If Spark provides `SKIP_PYTHONDOC` and `SKIP_RDOC` like `SKIP_SCALADOC`, it would be more convenient.
    
    ## How was this patch tested?
    
    Manual.
    
    **Skipping Scala/Java/Python API Doc Build**
    ```bash
    $ cd docs
    $ SKIP_SCALADOC=1 SKIP_PYTHONDOC=1 jekyll build
    $ ls api
    DESCRIPTION R
    ```
    
    **Skipping Scala/Java/R API Doc Build**
    ```bash
    $ cd docs
    $ SKIP_SCALADOC=1 SKIP_RDOC=1 jekyll build
    $ ls api
    python
    ```
    
    Author: Dongjoon Hyun <dongjoon@apache.org>
    
    Closes #16336 from dongjoon-hyun/SPARK-18923.
    ba4468bb
    History
    [SPARK-18923][DOC][BUILD] Support skipping R/Python API docs
    Dongjoon Hyun authored
    ## What changes were proposed in this pull request?
    
    We can build Python API docs by `cd ./python/docs && make html for Python` and R API docs by `cd ./R && sh create-docs.sh for R` separately. However, `jekyll` fails in some environments.
    
    This PR aims to support `SKIP_PYTHONDOC` and `SKIP_RDOC` for documentation build in `docs` folder. Currently, we can use `SKIP_SCALADOC` or `SKIP_API`. The reason providing additional options is that the Spark documentation build uses a number of tools to build HTML docs and API docs in Scala, Python and R. Specifically, for Python and R,
    
    - Python API docs requires `sphinx`.
    - R API docs requires `R` installation and `knitr` (and more others libraries).
    
    In other words, we cannot generate Python API docs without R installation. Also, we cannot generate R API docs without Python `sphinx` installation. If Spark provides `SKIP_PYTHONDOC` and `SKIP_RDOC` like `SKIP_SCALADOC`, it would be more convenient.
    
    ## How was this patch tested?
    
    Manual.
    
    **Skipping Scala/Java/Python API Doc Build**
    ```bash
    $ cd docs
    $ SKIP_SCALADOC=1 SKIP_PYTHONDOC=1 jekyll build
    $ ls api
    DESCRIPTION R
    ```
    
    **Skipping Scala/Java/R API Doc Build**
    ```bash
    $ cd docs
    $ SKIP_SCALADOC=1 SKIP_RDOC=1 jekyll build
    $ ls api
    python
    ```
    
    Author: Dongjoon Hyun <dongjoon@apache.org>
    
    Closes #16336 from dongjoon-hyun/SPARK-18923.