stardoc
0.7.1
published 2 months ago
108 stars
45 forks
15 watchers
Apache License 2.0
public
1 assets
3,045,540 downloads
34 KB
Compatability level 1
+rsoD2ySo7Ve7YmpGMqR45+3Mzc8geh6GK6eM+dQI+w=
0.7.1
September 19, 2024

Release 0.7.1

Notable Changes

  • Really fix building with --incompatible_disallow_empty_glob (#238).
  • Auxiliary rule targets created by stardoc() macro now include provided tags (#247)

Contributors

Alexandre Rostovtsev, Lukács Berki, yashathwani

MODULE.bazel setup

bazel_dep(name = "stardoc", version = "0.7.1")

By default - in other words, when using Bzlmod for dependency management - Stardoc uses @stardoc as its repo name. The legacy WORSKSPACE setup (see below) used @io_bazel_stardoc instead. For compatibility with the legacy WORKSPACE setup, you may add repo_name = "io_bazel_stardoc" to the bazel_dep call.

Legacy WORKSPACE setup

To use Stardoc, add the following to your WORKSPACE file:

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")

http_archive(
    name = "io_bazel_stardoc",
    sha256 = "fabb280f6c92a3b55eed89a918ca91e39fb733373c81e87a18ae9e33e75023ec",
    urls = [
        "https://mirror.bazel.build/github.com/bazelbuild/stardoc/releases/download/0.7.1/stardoc-0.7.1.tar.gz",
        "https://github.com/bazelbuild/stardoc/releases/download/0.7.1/stardoc-0.7.1.tar.gz",
    ],
)

load("@io_bazel_stardoc//:setup.bzl", "stardoc_repositories")

stardoc_repositories()

load("@rules_jvm_external//:repositories.bzl", "rules_jvm_external_deps")

rules_jvm_external_deps()

load("@rules_jvm_external//:setup.bzl", "rules_jvm_external_setup")

rules_jvm_external_setup()

load("@io_bazel_stardoc//:deps.bzl", "stardoc_external_deps")

stardoc_external_deps()

load("@stardoc_maven//:defs.bzl", stardoc_pinned_maven_install = "pinned_maven_install")

stardoc_pinned_maven_install()

The sequence of function calls and load statements after the io_bazel_stardoc repository definition ensures that this repository's dependencies are loaded (each function call defines additional repositories for Stardoc's dependencies, which are then used by subsequent load statements).

Note that WORKSPACE files are sensitive to the order of dependencies. If, after updating to a newer version of Stardoc, you encounter "not a valid maven_install.json file" or other repository fetch errors (example: #186), try moving the Stardoc dependency block above or below other dependencies in your WORKSPACE file.

Using the rules

See the source.

Deps:
Assets:

Stardoc - Starlark Documentation Generator

Build status

Stardoc is a documentation generator for Bazel build rules written in Starlark.

Stardoc provides a Starlark rule (stardoc, see documentation) that can be used to build documentation for Starlark rules in Markdown. Stardoc generates one documentation page per .bzlfile.

Get Started

About Stardoc

Project Status

Skydoc deprecation

Stardoc is a replacement for the deprecated "Skydoc" documentation generator.

See Skydoc Deprecation for details on the deprecation and migration details.

Future plans

See our future plans for refactoring Stardoc to be more consistent with how Bazel evaluates .bzl files, and what it means for maintenance of this project.

Maintainer's guide

See the maintaner's guide for instructions for cutting a new release.