xref: /aosp_15_r20/external/stardoc/docs/contributing.md (revision b2fa42943c124aa9c7163734493fc7a7559681cf)
1*b2fa4294SXin LiBefore contributing, please see the note on our [current
2*b2fa4294SXin Lipriorities](future_plans.md). In short, we're able to take bugfixes to critical
3*b2fa4294SXin Lifeatures, but cannot guarantee that we'll be able to review new features in a
4*b2fa4294SXin Litimely manner.
5*b2fa4294SXin Li
6*b2fa4294SXin LiTo contribute to Stardoc, first see the official [contributing
7*b2fa4294SXin Linotice](../CONTRIBUTING.md), then feel free to fork the
8*b2fa4294SXin Li[Stardoc](https://github.com/bazelbuild/stardoc) GitHub repository and start
9*b2fa4294SXin Lisubmitting pull requests.
10*b2fa4294SXin Li
11*b2fa4294SXin LiIn general, we prefer contributions that fix bugs or add features (as opposed to
12*b2fa4294SXin Lipurely stylistic, refactoring, or "cleanup" changes). Please check with us by
13*b2fa4294SXin Liopening a [GitHub Issue](https://github.com/bazelbuild/stardoc/issues) or
14*b2fa4294SXin Liemailing the [bazel-dev](https://groups.google.com/forum/#!forum/bazel-dev)
15*b2fa4294SXin Limailing list.
16*b2fa4294SXin Li
17*b2fa4294SXin Li## Stardoc code structure
18*b2fa4294SXin Li
19*b2fa4294SXin Li* The [bazelbuild/stardoc](https://github.com/bazelbuild/stardoc) repository
20*b2fa4294SXin Li  contains Stardoc's Starlark code alongside Stardoc's prebuilt java binaries (jars).
21*b2fa4294SXin Li* The source code for Stardoc's jars can be found under the bazelbuild/bazel source tree
22*b2fa4294SXin Li  [here](https://github.com/bazelbuild/bazel/tree/master/src/main/java/com/google/devtools/build/skydoc).
23*b2fa4294SXin Li  Changes to Stardoc's java binaries will thus require creation of pull requests to the
24*b2fa4294SXin Li  [bazelbuild/bazel](https://github.com/bazelbuild/bazel) repository.
25*b2fa4294SXin Li* Changes to Stardoc's source are pulled in by updating bazelbuild/stardoc's dependency
26*b2fa4294SXin Li  on the bazel source tree and and then rebuilding the binary using bazel. This process
27*b2fa4294SXin Li  is done periodically by Stardoc's [core contributors](#core-contributors) (generally
28*b2fa4294SXin Li  with large changes to Stardoc source, and right before cutting a new Stardoc release).
29*b2fa4294SXin Li
30*b2fa4294SXin Li## Contributing to Stardoc
31*b2fa4294SXin Li
32*b2fa4294SXin Li* Stardoc is part of the Bazel project. Read the [Bazel governance
33*b2fa4294SXin Li  plan](https://www.bazel.build/governance.html) and Stardoc's [contribution
34*b2fa4294SXin Li  guidelines](../CONTRIBUTING.md).
35*b2fa4294SXin Li* Open an [Issue](https://github.com/bazelbuild/stardoc/issues) or discuss your
36*b2fa4294SXin Li  plan or design on the [bazel-dev](https://groups.google.com/forum/#!forum/bazel-dev)
37*b2fa4294SXin Li  mailing list.
38*b2fa4294SXin Li* Prepare a Git commit that implements your feature or bug fix. Don't forget to
39*b2fa4294SXin Li  add tests and reference the corresponding bug, if any.
40*b2fa4294SXin Li* Open a [Pull Request](https://github.com/bazelbuild/stardoc/pulls) on the Stardoc
41*b2fa4294SXin Li  repository. This will require that you have signed a
42*b2fa4294SXin Li  [Contributor License Agreement](https://cla.developers.google.com/).
43*b2fa4294SXin Li* Complete a code review with a [core contributor](#core-contributors). Amend your
44*b2fa4294SXin Li  patch by making additional commits or rebasing with HEAD if there are conflicts with new
45*b2fa4294SXin Li  commits on the master branch.
46*b2fa4294SXin Li* Once the code review is complete, your reviewer will squash/merge your pull
47*b2fa4294SXin Li  request to the master branch.
48*b2fa4294SXin Li
49*b2fa4294SXin Li## Core Contributors
50*b2fa4294SXin Li
51*b2fa4294SXin LiThe current group of Stardoc core contributors are:
52*b2fa4294SXin Li
53*b2fa4294SXin Li* [brandjon](https://github.com/brandjon)
54*b2fa4294SXin Li* [tetromino](https://github.com/tetromino)
55