dart-sdk/tools/write_dartdoc_options_file.py
Jonas Termansen 669060f8c7 [build] Omit SDK and Git hashes on RBE.
Bug: b/296994239
Change-Id: I70c10fddc3bd01fef5ed5182e1d28d0797c431e3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/342421
Commit-Queue: Jonas Termansen <sortie@google.com>
Reviewed-by: Slava Egorov <vegorov@google.com>
2023-12-20 12:23:56 +00:00

71 lines
2 KiB
Python
Executable file

#!/usr/bin/env python3
# Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file
# for details. All rights reserved. Use of this source code is governed by a
# BSD-style license that can be found in the LICENSE file.
import argparse
import sys
import utils
def ParseArgs(args):
args = args[1:]
parser = argparse.ArgumentParser(
description='A script to write a custom dartdoc_options.yaml to a file')
parser.add_argument(
'--output', '-o', type=str, required=True, help='File to write')
parser.add_argument('--no-git-hash',
help='Omit the git hash in the output',
dest='no_git_hash',
action='store_true')
return parser.parse_args(args)
def Main(argv):
args = ParseArgs(argv)
# TODO(jcollins-g): switch to version numbers when github has its tags synced
revision = None
if not args.no_git_hash:
revision = utils.GetGitRevision()
if revision is None:
revision = 'main'
output = '''dartdoc:
categoryOrder: ["Core", "VM", "Web"]
linkToSource:
root: '.'
uriTemplate: 'https://github.com/dart-lang/sdk/blob/%s/sdk/%%f%%#L%%l%%'
errors:
# Default errors of dartdoc:
- duplicate-file
- invalid-parameter
- no-defining-library-found
- tool-error
- unresolved-export
# Warnings that are elevated to errors:
- ambiguous-doc-reference
- ambiguous-reexport
- broken-link
- category-order-gives-missing-package-name
- deprecated
- ignored-canonical-for
- missing-from-search-index
- no-canonical-found
- no-documentable-libraries
- no-library-level-docs
- not-implemented
- orphaned-file
- reexported-private-api-across-packages
# - unknown-directive # Disabled due to https://github.com/dart-lang/dartdoc/issues/2353
- unknown-file
- unknown-macro
- unresolved-doc-reference
''' % revision
with open(args.output, 'w') as f:
f.write(output)
return 0
if __name__ == '__main__':
sys.exit(Main(sys.argv))