name: Bug report
description: File a bug report
labels: ["type: bug", "untriaged"]
assignees:
  - sgowroji
  - iancha1992
  - satyanandak
body:
  - type: markdown
    attributes:
      value: >
        **Attention:** if this is a _question_ about how to build / test / query / deploy using
        Bazel, or a _discussion starter_, please start a new thread at Bazel's
        [GitHub Discussions](https://github.com/bazelbuild/bazel/discussions), send it to
        bazel-discuss@googlegroups.com, or discuss on [Bazel Slack](https://slack.bazel.build/)
        instead!
  - type: textarea
    id: desc
    attributes:
      label: >
        Description of the bug:
  - type: dropdown
    id: subteam
    attributes:
      label: Which category does this issue belong to?
      description: Help us triage this issue faster and more accurately to the relevant team(s).
      multiple: true
      options:
        - Android
        - C++ Rules
        - Objective-C Rules
        - CLI
        - Configurability
        - Core
        - Documentation
        - External Dependency
        - Java Rules
        - Loading API
        - Local Execution
        - Performance
        - Python Rules
        - Remote Execution
        - Rules API
        - Server-Side Rules
        - Starlark Integration
        - Starlark Interpreter
  - type: textarea
    id: repro
    attributes:
      label: >
        What's the simplest, easiest way to reproduce this bug? Please provide a minimal example if
        possible.
  - type: input
    id: os
    attributes:
      label: >
        Which operating system are you running Bazel on?
  - type: input
    id: version
    attributes:
      label: >
        What is the output of `bazel info release`?
  - type: textarea
    id: version-follow-up
    attributes:
      label: >
        If `bazel info release` returns `development version` or `(@non-git)`, tell us how you built
        Bazel.
  - type: textarea
    id: source
    attributes:
      label: >
        What's the output of `git remote get-url origin; git rev-parse HEAD` ?
      render: text
  - type: textarea
    id: bisect
    attributes:
      label: >
        If this is a regression, please try to identify the Bazel commit where the bug was
        introduced with bazelisk --bisect.
      description: >
        If the problem is specific to the most recent release or the Bazel@HEAD version and it
        doesn't occur in earlier versions, you can use the `bazelisk --bisect=<GOOD>..<BAD>`
        command to identify the specific version or commit where the issue was introduced. For more
        information, visit https://github.com/bazelbuild/bazelisk#--bisect.
  - type: textarea
    id: relevant-info
    attributes:
      label: Have you found anything relevant by searching the web?
      description: >
        Places to look:

         * StackOverflow: http://stackoverflow.com/questions/tagged/bazel
         * GitHub issues: https://github.com/bazelbuild/bazel/issues
         * Email threads on https://groups.google.com/forum/#!forum/bazel-discuss
  - type: textarea
    id: extras
    attributes:
      label: Any other information, logs, or outputs that you want to share?
