mirror of
https://github.com/dart-lang/sdk
synced 2024-07-05 17:30:16 +00:00
[tools] use comments in the DEPS file to prevent auto-reving of deps
Change-Id: I828b0d32d7565d2acbcd39cfa83aa0e9efb61705 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/248947 Commit-Queue: Devon Carew <devoncarew@google.com> Reviewed-by: Nate Bosch <nbosch@google.com>
This commit is contained in:
parent
1fdd242e4b
commit
651db75ff4
9
DEPS
9
DEPS
|
@ -75,6 +75,9 @@ vars = {
|
|||
"gperftools_revision": "180bfa10d7cb38e8b3784d60943d50e8fcef0dcb",
|
||||
|
||||
# Revisions of /third_party/* dependencies.
|
||||
# Note that putting an EOL comment after a dependency below will prevent the
|
||||
# 'tools/rev_sdk_deps.dart' tool from attempting to rev to a newer revision.
|
||||
|
||||
"args_rev": "73e8d3b55cbedc9765f8e266f3422d8914f8e62a",
|
||||
"async_rev": "f3ed5f690e2ec9dbe1bfc5184705575b4f6480e5",
|
||||
"bazel_worker_rev": "9710de6c9c70b1b583183db9d9721ba64e5a16fe",
|
||||
|
@ -103,7 +106,7 @@ vars = {
|
|||
# and land the review.
|
||||
#
|
||||
# For more details, see https://github.com/dart-lang/sdk/issues/30164.
|
||||
"dart_style_rev": "d7b73536a8079331c888b7da539b80e6825270ea",
|
||||
"dart_style_rev": "d7b73536a8079331c888b7da539b80e6825270ea", # manually rev'd
|
||||
|
||||
"dartdoc_rev": "58348a98b992ce99b95d23131b67227bdb2b4875",
|
||||
"devtools_rev": "51ac983d2db7eb19b3ce5956cb70b769d74fe784",
|
||||
|
@ -119,7 +122,7 @@ vars = {
|
|||
"intl_rev": "e9b573679de5e703d89a242b9dca331c772979ef",
|
||||
"jinja2_rev": "2222b31554f03e62600cd7e383376a7c187967a1",
|
||||
"json_rpc_2_rev": "2de9a1f9821807fa2c85fd48e2f70b9cbcddcb67",
|
||||
"linter_rev": "1ddc70948d94f2449fec69a95e3ceb7b6b6c8348", # 1.25.0
|
||||
"linter_rev": "1ddc70948d94f2449fec69a95e3ceb7b6b6c8348", # manually rev'd
|
||||
"lints_rev": "8294e5648ab49474541527e2911e72e4c5aefe55",
|
||||
"logging_rev": "f6979e3bc3b6e1847a08335b7eb6304e18986195",
|
||||
"markdown_rev": "e3f4bd28c9e61b522f75f291d4d6cfcfeccd83ee", # b/236358256
|
||||
|
@ -133,7 +136,7 @@ vars = {
|
|||
"ply_rev": "604b32590ffad5cbb82e4afef1d305512d06ae93",
|
||||
"pool_rev": "c40cc32eabecb9d60f1045d1403108d968805f9a",
|
||||
"protobuf_rev": "3149f6f2d323e11dbcc983b7ac8b3b9e9d686293",
|
||||
"pub_rev": "9bf4289d6fd5d6872a8929d6312bbd7098f3ea9c",
|
||||
"pub_rev": "9bf4289d6fd5d6872a8929d6312bbd7098f3ea9c", # manually rev'd
|
||||
"pub_semver_rev": "5c0b4bfd5ca57fe16f1319c581dc8c882e9b8cb2",
|
||||
"root_certificates_rev": "692f6d6488af68e0121317a9c2c9eb393eb0ee50",
|
||||
"rust_revision": "b7856f695d65a8ebc846754f97d15814bcb1c244",
|
||||
|
|
|
@ -3,15 +3,6 @@ import 'dart:io';
|
|||
|
||||
import 'package:path/path.dart' as path;
|
||||
|
||||
// These packages are effectively pinned - they often require manual work when
|
||||
// rolling.
|
||||
// TODO(devoncarew): Keep this metadata in the DEPS file.
|
||||
const Set<String> pinned = {
|
||||
'dart_style',
|
||||
'linter',
|
||||
'pub',
|
||||
};
|
||||
|
||||
void main(List<String> args) async {
|
||||
// Validate we're running from the repo root.
|
||||
if (!File('README.dart-sdk').existsSync() || !File('DEPS').existsSync()) {
|
||||
|
@ -22,7 +13,14 @@ void main(List<String> args) async {
|
|||
final gclient = GClientHelper();
|
||||
|
||||
final deps = await gclient.getPackageDependencies();
|
||||
print('${deps.length} non-pinned package dependencies found.');
|
||||
print('${deps.length} package dependencies found.');
|
||||
|
||||
// Remove pinned deps.
|
||||
final pinnedDeps = calculatePinnedDeps();
|
||||
deps.removeWhere((dep) => pinnedDeps.contains(dep.name));
|
||||
|
||||
print('Not attempting to move forward the revisions for: '
|
||||
'${pinnedDeps.toList().join(', ')}.');
|
||||
print('');
|
||||
|
||||
deps.sort((a, b) => a.name.compareTo(b.name));
|
||||
|
@ -51,6 +49,19 @@ void main(List<String> args) async {
|
|||
}
|
||||
}
|
||||
|
||||
// By convention, pinned deps are deps with an eol comment.
|
||||
Set<String> calculatePinnedDeps() {
|
||||
final packageRevision = RegExp(r'"(\w+)_rev":');
|
||||
|
||||
// "markdown_rev": "e3f4bd28c9...cfeccd83ee", # b/236358256
|
||||
var depsFile = File('DEPS');
|
||||
return depsFile
|
||||
.readAsLinesSync()
|
||||
.where((line) => packageRevision.hasMatch(line) && line.contains('", #'))
|
||||
.map((line) => packageRevision.firstMatch(line)!.group(1)!)
|
||||
.toSet();
|
||||
}
|
||||
|
||||
class GitHelper {
|
||||
final String dir;
|
||||
|
||||
|
@ -115,8 +126,6 @@ class GClientHelper {
|
|||
);
|
||||
}).where((PackageDependency deps) {
|
||||
return deps.entry.startsWith('sdk/third_party/pkg/');
|
||||
}).where((PackageDependency deps) {
|
||||
return !pinned.contains(deps.name);
|
||||
}).toList();
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user