{
  "id": "sccache",
  "name": "sccache",
  "homepage": "https://github.com/mozilla/sccache",
  "description": "A ccache-like tool for caching compiler artifacts in local or remote storage.",
  "executables": [
    "sccache"
  ],
  "dotfiles": {
    "paths": [
      "~/.config/sccache/config",
      "~/Library/Application Support/Mozilla.sccache/config",
      "%APPDATA%/Mozilla/sccache/config/config"
    ],
    "secret": [],
    "side_effect": false
  },
  "commands": {
    "format": 1,
    "label": "sccache server and statistics",
    "description": "Show or reset cache statistics and start or stop the background server. Distributed-compilation and wrapped-compiler use are left out.",
    "quality": "ai-draft",
    "parser": {
      "end_of_options": "--",
      "interleave": "permute",
      "long_equals": false,
      "short_attached": false,
      "short_bundles": false
    },
    "source": [
      {
        "id": "man",
        "kind": "manual",
        "url": "https://manpages.debian.org/unstable/sccache/sccache.1.en.html",
        "revision": "0.17.0",
        "evidence": "-s, --show-stats  show cache statistics\n--show-adv-stats  show advanced cache statistics\n--start-server  start background server\n--stop-server  stop background server\n-z, --zero-stats  zero statistics counters\n--stats-format <FMT>  set output format of statistics [default: text] [possible values: text, json]\n"
      }
    ],
    "field": [
      {
        "id": "show_stats",
        "label": "Show statistics",
        "type": "boolean",
        "option": [
          "--show-stats",
          "-s"
        ],
        "sources": [
          "man"
        ]
      },
      {
        "id": "show_adv_stats",
        "label": "Show advanced statistics",
        "type": "boolean",
        "option": [
          "--show-adv-stats"
        ],
        "sources": [
          "man"
        ]
      },
      {
        "id": "stats_format",
        "label": "Statistics format",
        "type": "enum",
        "option": [
          "--stats-format"
        ],
        "choices": [
          {
            "value": "text",
            "label": "Text"
          },
          {
            "value": "json",
            "label": "JSON"
          }
        ],
        "observed_default": "text",
        "sources": [
          "man"
        ]
      },
      {
        "id": "zero_stats",
        "label": "Zero statistics counters",
        "type": "boolean",
        "option": [
          "--zero-stats",
          "-z"
        ],
        "effect": "overwrite",
        "sources": [
          "man"
        ]
      },
      {
        "id": "start_server",
        "label": "Start background server",
        "type": "boolean",
        "option": [
          "--start-server"
        ],
        "sources": [
          "man"
        ]
      },
      {
        "id": "stop_server",
        "label": "Stop background server",
        "type": "boolean",
        "option": [
          "--stop-server"
        ],
        "sources": [
          "man"
        ]
      }
    ],
    "task": [
      {
        "id": "stats",
        "label": "Show statistics",
        "set": {
          "show_stats": [
            true
          ]
        },
        "lock": [
          "show_stats"
        ],
        "fields": [
          "show_stats",
          "stats_format"
        ],
        "required": [
          "show_stats"
        ]
      },
      {
        "id": "start",
        "label": "Start server",
        "set": {
          "start_server": [
            true
          ]
        },
        "lock": [
          "start_server"
        ],
        "fields": [
          "start_server"
        ],
        "required": [
          "start_server"
        ]
      },
      {
        "id": "stop",
        "label": "Stop server",
        "set": {
          "stop_server": [
            true
          ]
        },
        "lock": [
          "stop_server"
        ],
        "fields": [
          "stop_server"
        ],
        "required": [
          "stop_server"
        ]
      }
    ],
    "group": [
      {
        "id": "basic",
        "label": "Basic",
        "fields": [
          "show_stats",
          "stats_format",
          "start_server",
          "stop_server"
        ]
      },
      {
        "id": "advanced",
        "label": "Advanced",
        "fields": [
          "show_adv_stats",
          "zero_stats"
        ]
      }
    ]
  }
}
