Skip to content

Commit e6928bf

Browse files
authored
Run pkg/pub_dartdoc instead of global dartdoc (#1384)
1 parent 9b80303 commit e6928bf

File tree

1 file changed

+26
-6
lines changed

1 file changed

+26
-6
lines changed

app/lib/dartdoc/dartdoc_runner.dart

Lines changed: 26 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,9 @@ const _buildLogFilePath = 'log.txt';
3333
const _dartdocTimeout = const Duration(minutes: 10);
3434
final Duration _twoYears = const Duration(days: 2 * 365);
3535

36+
final _pkgPubDartdocDir =
37+
Platform.script.resolve('../../pkg/pub_dartdoc').toFilePath();
38+
3639
class DartdocJobProcessor extends JobProcessor {
3740
DartdocJobProcessor({Duration lockDuration})
3841
: super(service: JobService.dartdoc, lockDuration: lockDuration);
@@ -179,16 +182,33 @@ class DartdocJobProcessor extends JobProcessor {
179182
final canonicalUrl = pkgDocUrl(job.packageName,
180183
version: canonicalVersion, includeHost: true, omitTrailingSlash: true);
181184

182-
Future<DartdocResult> runDartdoc(bool validateLinks) {
183-
return toolEnv.dartdoc(
185+
Future<DartdocResult> runDartdoc(bool validateLinks) async {
186+
final args = [
187+
'--input',
184188
pkgPath,
189+
'--output',
185190
outputDir,
186-
canonicalPrefix: canonicalUrl,
187-
hostedUrl: siteRoot,
191+
'--hosted-url',
192+
siteRoot,
193+
'--rel-canonical-prefix',
194+
canonicalUrl,
195+
'--link-to-remote',
196+
];
197+
if (!validateLinks) {
198+
args.add('--no-validate-links');
199+
}
200+
final pr = await runProc(
201+
'dart',
202+
['bin/pub_dartdoc.dart']..addAll(args),
203+
workingDirectory: _pkgPubDartdocDir,
188204
timeout: _dartdocTimeout,
189-
validateLinks: validateLinks,
190-
linkToRemote: true,
191205
);
206+
final hasIndexHtml =
207+
await new File(p.join(outputDir, 'index.html')).exists();
208+
final hasIndexJson =
209+
await new File(p.join(outputDir, 'index.json')).exists();
210+
return new DartdocResult(
211+
pr, pr.exitCode == 15, hasIndexHtml, hasIndexJson);
192212
}
193213

194214
DartdocResult r = await runDartdoc(true);

0 commit comments

Comments
 (0)