GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — rules_python/docs at main · kcon-stackav/rules_python

Expand file tree

/

docs

/
Copy path

Directory actions

More options

More options

Directory actions

More options

More options

Latest commit

 

History

History
History
 
 
/

docs

/
Copy path

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
_includes
_includes
 
 
_static/css
_static/css
 
 
api
api
 
 
BUILD.bazel
BUILD.bazel
 
 
README.md
README.md
 
 
conf.py
conf.py
 
 
coverage.md
coverage.md
 
 
environment-variables.md
environment-variables.md
 
 
gazelle.md
gazelle.md
 
 
getting-started.md
getting-started.md
 
 
glossary.md
glossary.md
 
 
index.md
index.md
 
 
pip.md
pip.md
 
 
precompiling.md
precompiling.md
 
 
pypi-dependencies.md
pypi-dependencies.md
 
 
pyproject.toml
pyproject.toml
 
 
readthedocs_build.sh
readthedocs_build.sh
 
 
requirements.txt
requirements.txt
 
 
support.md
support.md
 
 
toolchains.md
toolchains.md
 
 

README.md

Outline

rules_python Sphinx docs generation

The docs for rules_python are generated using a combination of Sphinx, Bazel, and Readthedocs.org. The Markdown files in source control are unlikely to render properly without the Sphinx processing step because they rely on Sphinx and MyST-specific Markdown functionality.

The actual sources that Sphinx consumes are in this directory, with Stardoc generating additional sources or Sphinx.

Manually building the docs isn't necessary -- readthedocs.org will automatically build and deploy them when commits are pushed to the repo.

Generating docs for development

Generating docs for development is a two-part process: starting a local HTTP server to serve the generated HTML, and re-generating the HTML when sources change. The quick start is:

bazel run //docs:docs.serve  # Run in separate terminal
ibazel build //docs:docs  # Automatically rebuilds docs

This will build the docs and start a local webserver at http://localhost:8000 where you can view the output. As you edit files, ibazel will detect the file changes and re-run the build process, and you can simply refresh your browser to see the changes. Using ibazel is not required; you can manually run the equivalent bazel command if desired.

Installing ibazel

The ibazel tool can be used to automatically rebuild the docs as you development them. See the ibazel docs for how to install it. The quick start for linux is:

sudo apt install npm
sudo npm install -g @bazel/ibazel

MyST Markdown flavor

Sphinx is configured to parse Markdown files using MyST, which is a more advanced flavor of Markdown that supports most features of restructured text and integrates with Sphinx functionality such as automatic cross references, creating indexes, and using concise markup to generate rich documentation.

MyST features and behaviors are controlled by the Sphinx configuration file, docs/conf.py. For more info, see https://myst-parser.readthedocs.io.

Sphinx configuration

The Sphinx-specific configuration files and input doc files live in docs/.

The Sphinx configuration is docs/conf.py. See https://www.sphinx-doc.org/ for details about the configuration file.

Readthedocs configuration

There's two basic parts to the readthedocs configuration:

  • .readthedocs.yaml: This configuration file controls most settings, such as the OS version used to build, Python version, dependencies, what Bazel commands to run, etc.
  • https://readthedocs.org/projects/rules-python: This is the project administration page. While most settings come from the config file, this controls additional settings such as permissions, what versions are published, when to publish changes, etc.

For more readthedocs configuration details, see docs.readthedocs.io.

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.