mirror of
https://github.com/flutter/flutter.git
synced 2025-06-03 00:51:18 +00:00
Test reporter (#28297)
* Wrap test.main with a custom processor * Report test results to bigquery table
This commit is contained in:
parent
427fcebcc5
commit
20e0f13cc9
10
.cirrus.yml
10
.cirrus.yml
@ -10,6 +10,7 @@ task:
|
|||||||
PATH: "$CIRRUS_WORKING_DIR/bin:$CIRRUS_WORKING_DIR/bin/cache/dart-sdk/bin:$PATH"
|
PATH: "$CIRRUS_WORKING_DIR/bin:$CIRRUS_WORKING_DIR/bin/cache/dart-sdk/bin:$PATH"
|
||||||
ANDROID_SDK_ROOT: "/opt/android_sdk"
|
ANDROID_SDK_ROOT: "/opt/android_sdk"
|
||||||
git_fetch_script:
|
git_fetch_script:
|
||||||
|
- git clean -xfd
|
||||||
- git fetch origin
|
- git fetch origin
|
||||||
- git fetch origin master # To set FETCH_HEAD for "git merge-base" to work
|
- git fetch origin master # To set FETCH_HEAD for "git merge-base" to work
|
||||||
pub_cache:
|
pub_cache:
|
||||||
@ -49,6 +50,7 @@ task:
|
|||||||
- dart --enable-asserts ./dev/bots/analyze.dart
|
- dart --enable-asserts ./dev/bots/analyze.dart
|
||||||
- name: tests-linux
|
- name: tests-linux
|
||||||
env:
|
env:
|
||||||
|
GCLOUD_SERVICE_ACCOUNT_KEY: ENCRYPTED[f12abe60f5045d619ef4c79b83dd1e0722a0b0b13dbea95fbe334e2db7fffbcd841a5a92da8824848b539a19afe0c9fb]
|
||||||
SHARD: tests
|
SHARD: tests
|
||||||
test_script:
|
test_script:
|
||||||
- dart --enable-asserts ./dev/bots/test.dart
|
- dart --enable-asserts ./dev/bots/test.dart
|
||||||
@ -57,6 +59,7 @@ task:
|
|||||||
memory: 12G
|
memory: 12G
|
||||||
- name: tool_tests-linux
|
- name: tool_tests-linux
|
||||||
env:
|
env:
|
||||||
|
GCLOUD_SERVICE_ACCOUNT_KEY: ENCRYPTED[f12abe60f5045d619ef4c79b83dd1e0722a0b0b13dbea95fbe334e2db7fffbcd841a5a92da8824848b539a19afe0c9fb]
|
||||||
SHARD: tool_tests
|
SHARD: tool_tests
|
||||||
test_script:
|
test_script:
|
||||||
- dart --enable-asserts ./dev/bots/test.dart
|
- dart --enable-asserts ./dev/bots/test.dart
|
||||||
@ -98,6 +101,7 @@ task:
|
|||||||
env:
|
env:
|
||||||
CIRRUS_WORKING_DIR: "C:\\Windows\\Temp\\flutter sdk"
|
CIRRUS_WORKING_DIR: "C:\\Windows\\Temp\\flutter sdk"
|
||||||
git_fetch_script:
|
git_fetch_script:
|
||||||
|
- git clean -xfd
|
||||||
- git fetch origin
|
- git fetch origin
|
||||||
- git fetch origin master # To set FETCH_HEAD for "git merge-base" to work
|
- git fetch origin master # To set FETCH_HEAD for "git merge-base" to work
|
||||||
pub_cache:
|
pub_cache:
|
||||||
@ -119,9 +123,11 @@ task:
|
|||||||
matrix:
|
matrix:
|
||||||
- name: tests-windows
|
- name: tests-windows
|
||||||
env:
|
env:
|
||||||
|
GCLOUD_SERVICE_ACCOUNT_KEY: ENCRYPTED[f12abe60f5045d619ef4c79b83dd1e0722a0b0b13dbea95fbe334e2db7fffbcd841a5a92da8824848b539a19afe0c9fb]
|
||||||
SHARD: tests
|
SHARD: tests
|
||||||
- name: tool_tests-windows
|
- name: tool_tests-windows
|
||||||
env:
|
env:
|
||||||
|
GCLOUD_SERVICE_ACCOUNT_KEY: ENCRYPTED[f12abe60f5045d619ef4c79b83dd1e0722a0b0b13dbea95fbe334e2db7fffbcd841a5a92da8824848b539a19afe0c9fb]
|
||||||
SHARD: tool_tests
|
SHARD: tool_tests
|
||||||
- name: build_tests-windows
|
- name: build_tests-windows
|
||||||
env:
|
env:
|
||||||
@ -158,6 +164,7 @@ task:
|
|||||||
osx_instance:
|
osx_instance:
|
||||||
image: mojave-xcode-10.1
|
image: mojave-xcode-10.1
|
||||||
git_fetch_script:
|
git_fetch_script:
|
||||||
|
- git clean -xfd
|
||||||
- git fetch origin
|
- git fetch origin
|
||||||
- git fetch origin master # To set FETCH_HEAD
|
- git fetch origin master # To set FETCH_HEAD
|
||||||
setup_script:
|
setup_script:
|
||||||
@ -178,6 +185,7 @@ task:
|
|||||||
install_cocoapods_script:
|
install_cocoapods_script:
|
||||||
- sudo gem install cocoapods
|
- sudo gem install cocoapods
|
||||||
git_fetch_script:
|
git_fetch_script:
|
||||||
|
- git clean -xfd
|
||||||
- git fetch origin
|
- git fetch origin
|
||||||
- git fetch origin master # To set FETCH_HEAD for "git merge-base" to work
|
- git fetch origin master # To set FETCH_HEAD for "git merge-base" to work
|
||||||
pub_cache:
|
pub_cache:
|
||||||
@ -198,9 +206,11 @@ task:
|
|||||||
matrix:
|
matrix:
|
||||||
- name: tests-macos
|
- name: tests-macos
|
||||||
env:
|
env:
|
||||||
|
GCLOUD_SERVICE_ACCOUNT_KEY: ENCRYPTED[f12abe60f5045d619ef4c79b83dd1e0722a0b0b13dbea95fbe334e2db7fffbcd841a5a92da8824848b539a19afe0c9fb]
|
||||||
SHARD: tests
|
SHARD: tests
|
||||||
- name: tool_tests-macos
|
- name: tool_tests-macos
|
||||||
env:
|
env:
|
||||||
|
GCLOUD_SERVICE_ACCOUNT_KEY: ENCRYPTED[f12abe60f5045d619ef4c79b83dd1e0722a0b0b13dbea95fbe334e2db7fffbcd841a5a92da8824848b539a19afe0c9fb]
|
||||||
SHARD: tool_tests
|
SHARD: tool_tests
|
||||||
- name: build_tests-macos
|
- name: build_tests-macos
|
||||||
env:
|
env:
|
||||||
|
@ -22,7 +22,7 @@ dependencies:
|
|||||||
csslib: 0.14.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
csslib: 0.14.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
html: 0.13.3+3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
html: 0.13.4+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http: 0.12.0+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http: 0.12.0+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http_multi_server: 2.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http_multi_server: 2.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http_parser: 3.1.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http_parser: 3.1.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
@ -68,4 +68,4 @@ dependencies:
|
|||||||
flutter:
|
flutter:
|
||||||
uses-material-design: true
|
uses-material-design: true
|
||||||
|
|
||||||
# PUBSPEC CHECKSUM: 5756
|
# PUBSPEC CHECKSUM: 9655
|
||||||
|
@ -48,7 +48,7 @@ dev_dependencies:
|
|||||||
csslib: 0.14.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
csslib: 0.14.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
html: 0.13.3+3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
html: 0.13.4+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http: 0.12.0+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http: 0.12.0+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http_multi_server: 2.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http_multi_server: 2.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http_parser: 3.1.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http_parser: 3.1.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
@ -85,4 +85,4 @@ flutter:
|
|||||||
- packages/flutter_gallery_assets/people/square/ali.png
|
- packages/flutter_gallery_assets/people/square/ali.png
|
||||||
- packages/flutter_gallery_assets/places/india_chettinad_silk_maker.png
|
- packages/flutter_gallery_assets/places/india_chettinad_silk_maker.png
|
||||||
|
|
||||||
# PUBSPEC CHECKSUM: a329
|
# PUBSPEC CHECKSUM: ca28
|
||||||
|
@ -48,7 +48,7 @@ dev_dependencies:
|
|||||||
csslib: 0.14.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
csslib: 0.14.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
html: 0.13.3+3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
html: 0.13.4+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http: 0.12.0+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http: 0.12.0+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http_multi_server: 2.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http_multi_server: 2.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http_parser: 3.1.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http_parser: 3.1.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
@ -82,4 +82,4 @@ dev_dependencies:
|
|||||||
flutter:
|
flutter:
|
||||||
uses-material-design: true
|
uses-material-design: true
|
||||||
|
|
||||||
# PUBSPEC CHECKSUM: a329
|
# PUBSPEC CHECKSUM: ca28
|
||||||
|
@ -27,7 +27,7 @@ dependencies:
|
|||||||
dart_style: 1.2.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
dart_style: 1.2.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
html: 0.13.3+3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
html: 0.13.4+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http: 0.12.0+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http: 0.12.0+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http_multi_server: 2.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http_multi_server: 2.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http_parser: 3.1.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http_parser: 3.1.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
@ -47,7 +47,7 @@ dependencies:
|
|||||||
package_resolver: 1.0.10 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
package_resolver: 1.0.10 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
path: 1.6.2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
path: 1.6.2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
pedantic: 1.5.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
pedantic: 1.5.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
petitparser: 2.1.1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
petitparser: 2.2.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
plugin: 0.2.0+3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
plugin: 0.2.0+3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
pool: 1.4.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
pool: 1.4.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
pub_semver: 1.4.2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
pub_semver: 1.4.2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
@ -76,4 +76,4 @@ dependencies:
|
|||||||
flutter:
|
flutter:
|
||||||
uses-material-design: true
|
uses-material-design: true
|
||||||
|
|
||||||
# PUBSPEC CHECKSUM: 60b0
|
# PUBSPEC CHECKSUM: 1baf
|
||||||
|
263
dev/bots/flutter_compact_formatter.dart
Normal file
263
dev/bots/flutter_compact_formatter.dart
Normal file
@ -0,0 +1,263 @@
|
|||||||
|
// Copyright 2019 The Flutter Authors. All rights reserved.
|
||||||
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
|
// found in the LICENSE file.
|
||||||
|
|
||||||
|
import 'dart:convert';
|
||||||
|
import 'dart:io';
|
||||||
|
|
||||||
|
import 'package:meta/meta.dart';
|
||||||
|
|
||||||
|
final Stopwatch _stopwatch = Stopwatch();
|
||||||
|
|
||||||
|
/// A wrapper around package:test's JSON reporter.
|
||||||
|
///
|
||||||
|
/// This class behaves similarly to the compact reporter, but supresses all
|
||||||
|
/// output except for progress until the end of testing. In other words, errors,
|
||||||
|
/// [print] calls, and skipped test messages will not be printed during the run
|
||||||
|
/// of the suite.
|
||||||
|
///
|
||||||
|
/// It also processes the JSON data into a collection of [TestResult]s for any
|
||||||
|
/// other post processing needs, e.g. sending data to analytics.
|
||||||
|
class FlutterCompactFormatter {
|
||||||
|
FlutterCompactFormatter() {
|
||||||
|
_stopwatch.start();
|
||||||
|
}
|
||||||
|
|
||||||
|
/// Whether to use color escape codes in writing to stdout.
|
||||||
|
final bool useColor = stdout.supportsAnsiEscapes;
|
||||||
|
|
||||||
|
/// The terminal escape for green text, or the empty string if this is Windows
|
||||||
|
/// or not outputting to a terminal.
|
||||||
|
String get _green => useColor ? '\u001b[32m' : '';
|
||||||
|
|
||||||
|
/// The terminal escape for red text, or the empty string if this is Windows
|
||||||
|
/// or not outputting to a terminal.
|
||||||
|
String get _red => useColor ? '\u001b[31m' : '';
|
||||||
|
|
||||||
|
/// The terminal escape for yellow text, or the empty string if this is
|
||||||
|
/// Windows or not outputting to a terminal.
|
||||||
|
String get _yellow => useColor ? '\u001b[33m' : '';
|
||||||
|
|
||||||
|
/// The terminal escape for gray text, or the empty string if this is
|
||||||
|
/// Windows or not outputting to a terminal.
|
||||||
|
String get _gray => useColor ? '\u001b[1;30m' : '';
|
||||||
|
|
||||||
|
/// The terminal escape for bold text, or the empty string if this is
|
||||||
|
/// Windows or not outputting to a terminal.
|
||||||
|
String get _bold => useColor ? '\u001b[1m' : '';
|
||||||
|
|
||||||
|
/// The terminal escape for removing test coloring, or the empty string if
|
||||||
|
/// this is Windows or not outputting to a terminal.
|
||||||
|
String get _noColor => useColor ? '\u001b[0m' : '';
|
||||||
|
|
||||||
|
/// The termianl escape for clearing the line, or a carriage return if
|
||||||
|
/// this is Windows or not outputting to a termianl.
|
||||||
|
String get _clearLine => useColor ? '\x1b[2K\r' : '\r';
|
||||||
|
|
||||||
|
final Map<int, TestResult> _tests = <int, TestResult>{};
|
||||||
|
|
||||||
|
/// The test results from this run.
|
||||||
|
Iterable<TestResult> get tests => _tests.values;
|
||||||
|
|
||||||
|
/// The number of tests that were started.
|
||||||
|
int started = 0;
|
||||||
|
|
||||||
|
/// The number of test failures.
|
||||||
|
int failures = 0;
|
||||||
|
|
||||||
|
/// The number of skipped tests.
|
||||||
|
int skips = 0;
|
||||||
|
|
||||||
|
/// The number of successful tests.
|
||||||
|
int successes = 0;
|
||||||
|
|
||||||
|
/// Process a single line of JSON output from the JSON test reporter.
|
||||||
|
///
|
||||||
|
/// Callers are responsible for splitting multiple lines before calling this
|
||||||
|
/// method.
|
||||||
|
TestResult processRawOutput(String raw) {
|
||||||
|
assert(raw != null);
|
||||||
|
// We might be getting messages from Flutter Tool about updating/building.
|
||||||
|
if (!raw.startsWith('{')) {
|
||||||
|
print(raw);
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
final Map<String, dynamic> decoded = json.decode(raw);
|
||||||
|
final TestResult originalResult = _tests[decoded['testID']];
|
||||||
|
switch (decoded['type']) {
|
||||||
|
case 'done':
|
||||||
|
stdout.write(_clearLine);
|
||||||
|
stdout.write('$_bold${_stopwatch.elapsed}$_noColor ');
|
||||||
|
stdout.writeln(
|
||||||
|
'$_green+$successes $_yellow~$skips $_red-$failures:$_bold$_gray Done.$_noColor');
|
||||||
|
break;
|
||||||
|
case 'testStart':
|
||||||
|
final Map<String, dynamic> testData = decoded['test'];
|
||||||
|
if (testData['url'] == null) {
|
||||||
|
started += 1;
|
||||||
|
stdout.write(_clearLine);
|
||||||
|
stdout.write('$_bold${_stopwatch.elapsed}$_noColor ');
|
||||||
|
stdout.write(
|
||||||
|
'$_green+$successes $_yellow~$skips $_red-$failures: $_gray${testData['name']}$_noColor');
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
_tests[testData['id']] = TestResult(
|
||||||
|
id: testData['id'],
|
||||||
|
name: testData['name'],
|
||||||
|
line: testData['root_line'] ?? testData['line'],
|
||||||
|
column: testData['root_column'] ?? testData['column'],
|
||||||
|
path: testData['root_url'] ?? testData['url'],
|
||||||
|
startTime: decoded['time'],
|
||||||
|
);
|
||||||
|
break;
|
||||||
|
case 'testDone':
|
||||||
|
if (originalResult == null) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
originalResult.endTime = decoded['time'];
|
||||||
|
if (decoded['skipped'] == true) {
|
||||||
|
skips += 1;
|
||||||
|
originalResult.status = TestStatus.skipped;
|
||||||
|
} else {
|
||||||
|
if (decoded['result'] == 'success') {
|
||||||
|
originalResult.status =TestStatus.succeeded;
|
||||||
|
successes += 1;
|
||||||
|
} else {
|
||||||
|
originalResult.status = TestStatus.failed;
|
||||||
|
failures += 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 'error':
|
||||||
|
if (originalResult != null) {
|
||||||
|
originalResult.errorMessage = decoded['error'];
|
||||||
|
originalResult.stackTrace = decoded['stackTrace'];
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 'print':
|
||||||
|
if (originalResult != null) {
|
||||||
|
originalResult.messages.add(decoded['message']);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 'group':
|
||||||
|
case 'allSuites':
|
||||||
|
case 'start':
|
||||||
|
case 'suite':
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return originalResult;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// Print summary of test results.
|
||||||
|
void finish() {
|
||||||
|
final List<String> skipped = <String>[];
|
||||||
|
final List<String> failed = <String>[];
|
||||||
|
for (TestResult result in _tests.values) {
|
||||||
|
switch (result.status) {
|
||||||
|
case TestStatus.started:
|
||||||
|
failed.add('${_red}Unexpectedly failed to complete a test!');
|
||||||
|
failed.add(result.toString() + _noColor);
|
||||||
|
break;
|
||||||
|
case TestStatus.skipped:
|
||||||
|
skipped.add(
|
||||||
|
'${_yellow}Skipped ${result.name} (${result.pathLineColumn}).$_noColor');
|
||||||
|
break;
|
||||||
|
case TestStatus.failed:
|
||||||
|
failed.addAll(<String>[
|
||||||
|
'$_bold${_red}Failed ${result.name} (${result.pathLineColumn}):',
|
||||||
|
result.errorMessage,
|
||||||
|
_noColor + _red,
|
||||||
|
result.stackTrace,
|
||||||
|
]);
|
||||||
|
failed.addAll(result.messages);
|
||||||
|
failed.add(_noColor);
|
||||||
|
break;
|
||||||
|
case TestStatus.succeeded:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
skipped.forEach(print);
|
||||||
|
failed.forEach(print);
|
||||||
|
if (failed.isEmpty) {
|
||||||
|
print('${_green}Completed, $successes test(s) passing ($skips skipped).$_noColor');
|
||||||
|
} else {
|
||||||
|
print('$_gray$failures test(s) failed.$_noColor');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// The state of a test received from the JSON reporter.
|
||||||
|
enum TestStatus {
|
||||||
|
/// Test execution has started.
|
||||||
|
started,
|
||||||
|
/// Test completed successfully.
|
||||||
|
succeeded,
|
||||||
|
/// Test failed.
|
||||||
|
failed,
|
||||||
|
/// Test was skipped.
|
||||||
|
skipped,
|
||||||
|
}
|
||||||
|
|
||||||
|
/// The detailed status of a test run.
|
||||||
|
class TestResult {
|
||||||
|
TestResult({
|
||||||
|
@required this.id,
|
||||||
|
@required this.name,
|
||||||
|
@required this.line,
|
||||||
|
@required this.column,
|
||||||
|
@required this.path,
|
||||||
|
@required this.startTime,
|
||||||
|
this.status = TestStatus.started,
|
||||||
|
}) : assert(id != null),
|
||||||
|
assert(name != null),
|
||||||
|
assert(line != null),
|
||||||
|
assert(column != null),
|
||||||
|
assert(path != null),
|
||||||
|
assert(startTime != null),
|
||||||
|
assert(status != null),
|
||||||
|
messages = <String>[];
|
||||||
|
|
||||||
|
/// The state of the test.
|
||||||
|
TestStatus status;
|
||||||
|
|
||||||
|
/// The internal ID of the test used by the JSON reporter.
|
||||||
|
final int id;
|
||||||
|
|
||||||
|
/// The name of the test, specified via the `test` method.
|
||||||
|
final String name;
|
||||||
|
|
||||||
|
/// The line number from the original file.
|
||||||
|
final int line;
|
||||||
|
|
||||||
|
/// The column from the original file.
|
||||||
|
final int column;
|
||||||
|
|
||||||
|
/// The path of the original test file.
|
||||||
|
final String path;
|
||||||
|
|
||||||
|
/// A friendly print out of the [path], [line], and [column] of the test.
|
||||||
|
String get pathLineColumn => '$path:$line:$column';
|
||||||
|
|
||||||
|
/// The start time of the test, in milliseconds relative to suite startup.
|
||||||
|
final int startTime;
|
||||||
|
|
||||||
|
/// The stdout of the test.
|
||||||
|
final List<String> messages;
|
||||||
|
|
||||||
|
/// The error message from the test, from an `expect`, an [Exception] or
|
||||||
|
/// [Error].
|
||||||
|
String errorMessage;
|
||||||
|
|
||||||
|
/// The stacktrace from a test failure.
|
||||||
|
String stackTrace;
|
||||||
|
|
||||||
|
/// The time, in milliseconds relative to suite startup, that the test ended.
|
||||||
|
int endTime;
|
||||||
|
|
||||||
|
/// The total time, in milliseconds, that the test took.
|
||||||
|
int get totalTime => (endTime ?? _stopwatch.elapsedMilliseconds) - startTime;
|
||||||
|
|
||||||
|
@override
|
||||||
|
String toString() => '{$runtimeType: {$id, $name, ${totalTime}ms, $pathLineColumn}}';
|
||||||
|
}
|
@ -14,7 +14,10 @@ dependencies:
|
|||||||
http: 0.12.0+1
|
http: 0.12.0+1
|
||||||
http_parser: 3.1.3
|
http_parser: 3.1.3
|
||||||
test: 1.5.3
|
test: 1.5.3
|
||||||
|
googleapis: 0.53.0
|
||||||
|
googleapis_auth: 0.2.7
|
||||||
|
|
||||||
|
_discoveryapis_commons: 0.1.8+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
analyzer: 0.35.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
analyzer: 0.35.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
async: 2.0.8 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
async: 2.0.8 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
boolean_selector: 1.0.4 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
boolean_selector: 1.0.4 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
@ -26,7 +29,7 @@ dependencies:
|
|||||||
file: 5.0.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
file: 5.0.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
html: 0.13.3+3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
html: 0.13.4+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http_multi_server: 2.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http_multi_server: 2.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
intl: 0.15.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
intl: 0.15.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
io: 0.3.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
io: 0.3.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
@ -67,4 +70,4 @@ dev_dependencies:
|
|||||||
mockito: 4.0.0
|
mockito: 4.0.0
|
||||||
test_api: 0.2.2
|
test_api: 0.2.2
|
||||||
|
|
||||||
# PUBSPEC CHECKSUM: 00fa
|
# PUBSPEC CHECKSUM: 422e
|
||||||
|
@ -30,6 +30,50 @@ void printProgress(String action, String workingDir, String command) {
|
|||||||
print('$arrow $action: cd $cyan$workingDir$reset; $yellow$command$reset');
|
print('$arrow $action: cd $cyan$workingDir$reset; $yellow$command$reset');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Stream<String> runAndGetStdout(String executable, List<String> arguments, {
|
||||||
|
String workingDirectory,
|
||||||
|
Map<String, String> environment,
|
||||||
|
bool expectNonZeroExit = false,
|
||||||
|
int expectedExitCode,
|
||||||
|
String failureMessage,
|
||||||
|
Duration timeout = _kLongTimeout,
|
||||||
|
}) async* {
|
||||||
|
final String commandDescription = '${path.relative(executable, from: workingDirectory)} ${arguments.join(' ')}';
|
||||||
|
final String relativeWorkingDir = path.relative(workingDirectory);
|
||||||
|
|
||||||
|
printProgress('RUNNING', relativeWorkingDir, commandDescription);
|
||||||
|
|
||||||
|
final DateTime start = DateTime.now();
|
||||||
|
final Process process = await Process.start(executable, arguments,
|
||||||
|
workingDirectory: workingDirectory,
|
||||||
|
environment: environment,
|
||||||
|
);
|
||||||
|
|
||||||
|
final Stream<String> lines = process.stdout.transform(utf8.decoder).transform(const LineSplitter());
|
||||||
|
await for (String line in lines) {
|
||||||
|
yield line;
|
||||||
|
}
|
||||||
|
|
||||||
|
final int exitCode = await process.exitCode.timeout(timeout, onTimeout: () {
|
||||||
|
stderr.writeln('Process timed out after $timeout');
|
||||||
|
return expectNonZeroExit ? 0 : 1;
|
||||||
|
});
|
||||||
|
print('$clock ELAPSED TIME: $bold${elapsedTime(start)}$reset for $commandDescription in $relativeWorkingDir: ');
|
||||||
|
if ((exitCode == 0) == expectNonZeroExit || (expectedExitCode != null && exitCode != expectedExitCode)) {
|
||||||
|
if (failureMessage != null) {
|
||||||
|
print(failureMessage);
|
||||||
|
}
|
||||||
|
print(
|
||||||
|
'$redLine\n'
|
||||||
|
'${bold}ERROR:$red Last command exited with $exitCode (expected: ${expectNonZeroExit ? (expectedExitCode ?? 'non-zero') : 'zero'}).$reset\n'
|
||||||
|
'${bold}Command:$cyan $commandDescription$reset\n'
|
||||||
|
'${bold}Relative working directory:$red $relativeWorkingDir$reset\n'
|
||||||
|
'$redLine'
|
||||||
|
);
|
||||||
|
exit(1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
Future<void> runCommand(String executable, List<String> arguments, {
|
Future<void> runCommand(String executable, List<String> arguments, {
|
||||||
String workingDirectory,
|
String workingDirectory,
|
||||||
Map<String, String> environment,
|
Map<String, String> environment,
|
||||||
|
BIN
dev/bots/serviceaccount.enc
Normal file
BIN
dev/bots/serviceaccount.enc
Normal file
Binary file not shown.
@ -5,8 +5,12 @@
|
|||||||
import 'dart:async';
|
import 'dart:async';
|
||||||
import 'dart:io';
|
import 'dart:io';
|
||||||
|
|
||||||
|
import 'package:googleapis/bigquery/v2.dart' as bq;
|
||||||
|
import 'package:googleapis_auth/auth_io.dart' as auth;
|
||||||
|
import 'package:http/http.dart' as http;
|
||||||
import 'package:path/path.dart' as path;
|
import 'package:path/path.dart' as path;
|
||||||
|
|
||||||
|
import 'flutter_compact_formatter.dart';
|
||||||
import 'run_command.dart';
|
import 'run_command.dart';
|
||||||
|
|
||||||
typedef ShardRunner = Future<void> Function();
|
typedef ShardRunner = Future<void> Function();
|
||||||
@ -140,13 +144,31 @@ Future<void> _runSmokeTests() async {
|
|||||||
await _verifyVersion(path.join(flutterRoot, 'version'));
|
await _verifyVersion(path.join(flutterRoot, 'version'));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Future<bq.BigqueryApi> _getBigqueryApi() async {
|
||||||
|
// TODO(dnfield): How will we do this on LUCI?
|
||||||
|
final String privateKey = Platform.environment['GCLOUD_SERVICE_ACCOUNT_KEY'];
|
||||||
|
if (privateKey == null || privateKey.isEmpty) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
final auth.ServiceAccountCredentials accountCredentials = auth.ServiceAccountCredentials( //.fromJson(credentials);
|
||||||
|
'flutter-ci-test-reporter@flutter-infra.iam.gserviceaccount.com',
|
||||||
|
auth.ClientId.serviceAccount('114390419920880060881.apps.googleusercontent.com'),
|
||||||
|
'-----BEGIN PRIVATE KEY-----\n$privateKey\n-----END PRIVATE KEY-----\n',
|
||||||
|
);
|
||||||
|
final List<String> scopes = <String>[bq.BigqueryApi.BigqueryInsertdataScope];
|
||||||
|
final http.Client client = await auth.clientViaServiceAccount(accountCredentials, scopes);
|
||||||
|
return bq.BigqueryApi(client);
|
||||||
|
}
|
||||||
|
|
||||||
Future<void> _runToolTests() async {
|
Future<void> _runToolTests() async {
|
||||||
|
final bq.BigqueryApi bigqueryApi = await _getBigqueryApi();
|
||||||
await _runSmokeTests();
|
await _runSmokeTests();
|
||||||
|
|
||||||
await _buildRunnerTest(
|
await _buildRunnerTest(
|
||||||
path.join(flutterRoot, 'packages', 'flutter_tools'),
|
path.join(flutterRoot, 'packages', 'flutter_tools'),
|
||||||
flutterRoot,
|
flutterRoot,
|
||||||
enableFlutterToolAsserts: true,
|
enableFlutterToolAsserts: true,
|
||||||
|
tableData: bigqueryApi?.tabledata,
|
||||||
);
|
);
|
||||||
|
|
||||||
print('${bold}DONE: All tests successful.$reset');
|
print('${bold}DONE: All tests successful.$reset');
|
||||||
@ -198,7 +220,6 @@ Future<void> _flutterBuildAot(String relativePathToApplication) async {
|
|||||||
}
|
}
|
||||||
|
|
||||||
Future<void> _flutterBuildApk(String relativePathToApplication) async {
|
Future<void> _flutterBuildApk(String relativePathToApplication) async {
|
||||||
// TODO(dnfield): See if we can get Android SDK on all Cirrus platforms.
|
|
||||||
if (
|
if (
|
||||||
(Platform.environment['ANDROID_HOME']?.isEmpty ?? true) &&
|
(Platform.environment['ANDROID_HOME']?.isEmpty ?? true) &&
|
||||||
(Platform.environment['ANDROID_SDK_ROOT']?.isEmpty ?? true)) {
|
(Platform.environment['ANDROID_SDK_ROOT']?.isEmpty ?? true)) {
|
||||||
@ -255,32 +276,33 @@ Future<void> _runAdd2AppTest() async {
|
|||||||
}
|
}
|
||||||
|
|
||||||
Future<void> _runTests() async {
|
Future<void> _runTests() async {
|
||||||
|
final bq.BigqueryApi bigqueryApi = await _getBigqueryApi();
|
||||||
await _runSmokeTests();
|
await _runSmokeTests();
|
||||||
|
|
||||||
await _runFlutterTest(path.join(flutterRoot, 'packages', 'flutter'));
|
await _runFlutterTest(path.join(flutterRoot, 'packages', 'flutter'), tableData: bigqueryApi?.tabledata);
|
||||||
// Only packages/flutter/test/widgets/widget_inspector_test.dart really
|
// Only packages/flutter/test/widgets/widget_inspector_test.dart really
|
||||||
// needs to be run with --track-widget-creation but it is nice to run
|
// needs to be run with --track-widget-creation but it is nice to run
|
||||||
// all of the tests in package:flutter with the flag to ensure that
|
// all of the tests in package:flutter with the flag to ensure that
|
||||||
// the Dart kernel transformer triggered by the flag does not break anything.
|
// the Dart kernel transformer triggered by the flag does not break anything.
|
||||||
await _runFlutterTest(path.join(flutterRoot, 'packages', 'flutter'), options: <String>['--track-widget-creation']);
|
await _runFlutterTest(path.join(flutterRoot, 'packages', 'flutter'), options: <String>['--track-widget-creation'], tableData: bigqueryApi?.tabledata);
|
||||||
await _runFlutterTest(path.join(flutterRoot, 'packages', 'flutter_localizations'));
|
await _runFlutterTest(path.join(flutterRoot, 'packages', 'flutter_localizations'), tableData: bigqueryApi?.tabledata);
|
||||||
await _runFlutterTest(path.join(flutterRoot, 'packages', 'flutter_driver'));
|
await _runFlutterTest(path.join(flutterRoot, 'packages', 'flutter_driver'), tableData: bigqueryApi?.tabledata);
|
||||||
await _runFlutterTest(path.join(flutterRoot, 'packages', 'flutter_test'));
|
await _runFlutterTest(path.join(flutterRoot, 'packages', 'flutter_test'), tableData: bigqueryApi?.tabledata);
|
||||||
await _runFlutterTest(path.join(flutterRoot, 'packages', 'fuchsia_remote_debug_protocol'));
|
await _runFlutterTest(path.join(flutterRoot, 'packages', 'fuchsia_remote_debug_protocol'), tableData: bigqueryApi?.tabledata);
|
||||||
await _pubRunTest(path.join(flutterRoot, 'dev', 'bots'));
|
await _pubRunTest(path.join(flutterRoot, 'dev', 'bots'), tableData: bigqueryApi?.tabledata);
|
||||||
await _pubRunTest(path.join(flutterRoot, 'dev', 'devicelab'));
|
await _pubRunTest(path.join(flutterRoot, 'dev', 'devicelab'), tableData: bigqueryApi?.tabledata);
|
||||||
await _pubRunTest(path.join(flutterRoot, 'dev', 'snippets'));
|
await _pubRunTest(path.join(flutterRoot, 'dev', 'snippets'), tableData: bigqueryApi?.tabledata);
|
||||||
await _runFlutterTest(path.join(flutterRoot, 'dev', 'integration_tests', 'android_semantics_testing'));
|
await _runFlutterTest(path.join(flutterRoot, 'dev', 'integration_tests', 'android_semantics_testing'), tableData: bigqueryApi?.tabledata);
|
||||||
await _runFlutterTest(path.join(flutterRoot, 'dev', 'manual_tests'));
|
await _runFlutterTest(path.join(flutterRoot, 'dev', 'manual_tests'), tableData: bigqueryApi?.tabledata);
|
||||||
await _runFlutterTest(path.join(flutterRoot, 'dev', 'tools', 'vitool'));
|
await _runFlutterTest(path.join(flutterRoot, 'dev', 'tools', 'vitool'), tableData: bigqueryApi?.tabledata);
|
||||||
await _runFlutterTest(path.join(flutterRoot, 'examples', 'hello_world'));
|
await _runFlutterTest(path.join(flutterRoot, 'examples', 'hello_world'), tableData: bigqueryApi?.tabledata);
|
||||||
await _runFlutterTest(path.join(flutterRoot, 'examples', 'layers'));
|
await _runFlutterTest(path.join(flutterRoot, 'examples', 'layers'), tableData: bigqueryApi?.tabledata);
|
||||||
await _runFlutterTest(path.join(flutterRoot, 'examples', 'stocks'));
|
await _runFlutterTest(path.join(flutterRoot, 'examples', 'stocks'), tableData: bigqueryApi?.tabledata);
|
||||||
await _runFlutterTest(path.join(flutterRoot, 'examples', 'flutter_gallery'));
|
await _runFlutterTest(path.join(flutterRoot, 'examples', 'flutter_gallery'), tableData: bigqueryApi?.tabledata);
|
||||||
// Regression test to ensure that code outside of package:flutter can run
|
// Regression test to ensure that code outside of package:flutter can run
|
||||||
// with --track-widget-creation.
|
// with --track-widget-creation.
|
||||||
await _runFlutterTest(path.join(flutterRoot, 'examples', 'flutter_gallery'), options: <String>['--track-widget-creation']);
|
await _runFlutterTest(path.join(flutterRoot, 'examples', 'flutter_gallery'), options: <String>['--track-widget-creation'], tableData: bigqueryApi?.tabledata);
|
||||||
await _runFlutterTest(path.join(flutterRoot, 'examples', 'catalog'));
|
await _runFlutterTest(path.join(flutterRoot, 'examples', 'catalog'), tableData: bigqueryApi?.tabledata);
|
||||||
|
|
||||||
print('${bold}DONE: All tests successful.$reset');
|
print('${bold}DONE: All tests successful.$reset');
|
||||||
}
|
}
|
||||||
@ -310,10 +332,10 @@ Future<void> _runCoverage() async {
|
|||||||
Future<void> _buildRunnerTest(
|
Future<void> _buildRunnerTest(
|
||||||
String workingDirectory,
|
String workingDirectory,
|
||||||
String flutterRoot, {
|
String flutterRoot, {
|
||||||
String testPath,
|
String testPath,
|
||||||
bool enableFlutterToolAsserts = false,
|
bool enableFlutterToolAsserts = false,
|
||||||
}
|
bq.TabledataResourceApi tableData,
|
||||||
) {
|
}) async {
|
||||||
final List<String> args = <String>['run', 'build_runner', 'test', '--', '-rcompact', '-j1'];
|
final List<String> args = <String>['run', 'build_runner', 'test', '--', '-rcompact', '-j1'];
|
||||||
if (!hasColor) {
|
if (!hasColor) {
|
||||||
args.add('--no-color');
|
args.add('--no-color');
|
||||||
@ -335,19 +357,21 @@ Future<void> _buildRunnerTest(
|
|||||||
toolsArgs += ' --enable-asserts';
|
toolsArgs += ' --enable-asserts';
|
||||||
pubEnvironment['FLUTTER_TOOL_ARGS'] = toolsArgs.trim();
|
pubEnvironment['FLUTTER_TOOL_ARGS'] = toolsArgs.trim();
|
||||||
}
|
}
|
||||||
return runCommand(
|
|
||||||
pub, args,
|
final Stream<String> testOutput = runAndGetStdout(pub, args,
|
||||||
workingDirectory: workingDirectory,
|
workingDirectory: workingDirectory,
|
||||||
environment: pubEnvironment,
|
environment: pubEnvironment,
|
||||||
);
|
);
|
||||||
|
await _processTestOutput(testOutput, tableData);
|
||||||
}
|
}
|
||||||
|
|
||||||
Future<void> _pubRunTest(
|
Future<void> _pubRunTest(
|
||||||
String workingDirectory, {
|
String workingDirectory, {
|
||||||
String testPath,
|
String testPath,
|
||||||
bool enableFlutterToolAsserts = false,
|
bool enableFlutterToolAsserts = false,
|
||||||
}) {
|
bq.TabledataResourceApi tableData,
|
||||||
final List<String> args = <String>['run', 'test', '-rcompact', '-j1'];
|
}) async {
|
||||||
|
final List<String> args = <String>['run', 'test', '-rjson', '-j1'];
|
||||||
if (!hasColor)
|
if (!hasColor)
|
||||||
args.add('--no-color');
|
args.add('--no-color');
|
||||||
if (testPath != null)
|
if (testPath != null)
|
||||||
@ -364,11 +388,127 @@ Future<void> _pubRunTest(
|
|||||||
toolsArgs += ' --enable-asserts';
|
toolsArgs += ' --enable-asserts';
|
||||||
pubEnvironment['FLUTTER_TOOL_ARGS'] = toolsArgs.trim();
|
pubEnvironment['FLUTTER_TOOL_ARGS'] = toolsArgs.trim();
|
||||||
}
|
}
|
||||||
return runCommand(
|
final Stream<String> testOutput = runAndGetStdout(pub, args,
|
||||||
pub, args,
|
|
||||||
workingDirectory: workingDirectory,
|
workingDirectory: workingDirectory,
|
||||||
environment: pubEnvironment,
|
|
||||||
);
|
);
|
||||||
|
await _processTestOutput(testOutput, tableData);
|
||||||
|
}
|
||||||
|
|
||||||
|
enum CiProviders {
|
||||||
|
cirrus,
|
||||||
|
luci,
|
||||||
|
}
|
||||||
|
|
||||||
|
CiProviders _getCiProvider() {
|
||||||
|
if (Platform.environment['CIRRUS_CI'] == 'true') {
|
||||||
|
return CiProviders.cirrus;
|
||||||
|
}
|
||||||
|
if (Platform.environment['LUCI_CONTEXT'] != null) {
|
||||||
|
return CiProviders.luci;
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
String _getCiProviderName() {
|
||||||
|
switch(_getCiProvider()) {
|
||||||
|
case CiProviders.cirrus:
|
||||||
|
return 'cirrusci';
|
||||||
|
case CiProviders.luci:
|
||||||
|
return 'luci';
|
||||||
|
}
|
||||||
|
return 'unknown';
|
||||||
|
}
|
||||||
|
|
||||||
|
int _getPrNumber() {
|
||||||
|
switch(_getCiProvider()) {
|
||||||
|
case CiProviders.cirrus:
|
||||||
|
return int.tryParse(Platform.environment['CIRRUS_PR']);
|
||||||
|
case CiProviders.luci:
|
||||||
|
return -1; // LUCI doesn't know about this.
|
||||||
|
}
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
Future<String> _getAuthors() async {
|
||||||
|
final String exe = Platform.isWindows ? '.exe' : '';
|
||||||
|
final String author = await runAndGetStdout(
|
||||||
|
'git$exe', <String>['log', _getGitHash(), '--pretty="%an <%ae>"'],
|
||||||
|
workingDirectory: flutterRoot,
|
||||||
|
).first;
|
||||||
|
return author;
|
||||||
|
}
|
||||||
|
|
||||||
|
String _getCiUrl() {
|
||||||
|
switch(_getCiProvider()) {
|
||||||
|
case CiProviders.cirrus:
|
||||||
|
return 'https://cirrus-ci.com/task/${Platform.environment['CIRRUS_TASK_ID']}';
|
||||||
|
case CiProviders.luci:
|
||||||
|
return 'https://ci.chromium.org/p/flutter/g/framework/console'; // TODO(dnfield): can we get a direct link to the actual build?
|
||||||
|
}
|
||||||
|
return '';
|
||||||
|
}
|
||||||
|
|
||||||
|
String _getGitHash() {
|
||||||
|
switch(_getCiProvider()) {
|
||||||
|
case CiProviders.cirrus:
|
||||||
|
return Platform.environment['CIRRUS_CHANGE_IN_REPO'];
|
||||||
|
case CiProviders.luci:
|
||||||
|
return 'HEAD'; // TODO(dnfield): Set this in the env for LUCI.
|
||||||
|
}
|
||||||
|
return '';
|
||||||
|
}
|
||||||
|
|
||||||
|
Future<void> _processTestOutput(Stream<String> testOutput, bq.TabledataResourceApi tableData) async {
|
||||||
|
final FlutterCompactFormatter formatter = FlutterCompactFormatter();
|
||||||
|
await testOutput.forEach(formatter.processRawOutput);
|
||||||
|
if (tableData == null || formatter.tests.isEmpty) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
final bq.TableDataInsertAllRequest request = bq.TableDataInsertAllRequest();
|
||||||
|
final String authors = await _getAuthors();
|
||||||
|
request.rows = List<bq.TableDataInsertAllRequestRows>.from(
|
||||||
|
formatter.tests.map<bq.TableDataInsertAllRequestRows>((TestResult result) =>
|
||||||
|
bq.TableDataInsertAllRequestRows.fromJson(<String, dynamic> {
|
||||||
|
'json': <String, dynamic>{
|
||||||
|
'source': <String, dynamic>{
|
||||||
|
'provider': _getCiProviderName(),
|
||||||
|
'url': _getCiUrl(),
|
||||||
|
'platform': <String, dynamic>{
|
||||||
|
'os': Platform.operatingSystem,
|
||||||
|
'version': Platform.operatingSystemVersion,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
'test': <String, dynamic>{
|
||||||
|
'name': result.name,
|
||||||
|
'result': result.status.toString(),
|
||||||
|
'file': result.path,
|
||||||
|
'line': result.line,
|
||||||
|
'column': result.column,
|
||||||
|
'time': result.totalTime,
|
||||||
|
},
|
||||||
|
'git': <String, dynamic>{
|
||||||
|
'author': authors,
|
||||||
|
'pull_request': _getPrNumber(),
|
||||||
|
'commit': _getGitHash(),
|
||||||
|
'organization': 'flutter',
|
||||||
|
'repository': 'flutter',
|
||||||
|
},
|
||||||
|
'error': result.status != TestStatus.failed ? null : <String, dynamic>{
|
||||||
|
'message': result.errorMessage,
|
||||||
|
'stack_trace': result.stackTrace,
|
||||||
|
},
|
||||||
|
'information': result.messages,
|
||||||
|
},
|
||||||
|
}),
|
||||||
|
),
|
||||||
|
growable: false,
|
||||||
|
);
|
||||||
|
final bq.TableDataInsertAllResponse response = await tableData.insertAll(request, 'flutter-infra', 'tests', 'ci');
|
||||||
|
if (response.insertErrors != null && response.insertErrors.isNotEmpty) {
|
||||||
|
print('${red}BigQuery insert errors:');
|
||||||
|
print(response.toJson());
|
||||||
|
print(reset);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class EvalResult {
|
class EvalResult {
|
||||||
@ -390,10 +530,16 @@ Future<void> _runFlutterTest(String workingDirectory, {
|
|||||||
List<String> options = const <String>[],
|
List<String> options = const <String>[],
|
||||||
bool skip = false,
|
bool skip = false,
|
||||||
Duration timeout = _kLongTimeout,
|
Duration timeout = _kLongTimeout,
|
||||||
}) {
|
bq.TabledataResourceApi tableData,
|
||||||
|
}) async {
|
||||||
final List<String> args = <String>['test']..addAll(options);
|
final List<String> args = <String>['test']..addAll(options);
|
||||||
if (flutterTestArgs != null && flutterTestArgs.isNotEmpty)
|
if (flutterTestArgs != null && flutterTestArgs.isNotEmpty)
|
||||||
args.addAll(flutterTestArgs);
|
args.addAll(flutterTestArgs);
|
||||||
|
|
||||||
|
if (!expectFailure) {
|
||||||
|
args.add('--machine');
|
||||||
|
}
|
||||||
|
|
||||||
if (script != null) {
|
if (script != null) {
|
||||||
final String fullScriptPath = path.join(workingDirectory, script);
|
final String fullScriptPath = path.join(workingDirectory, script);
|
||||||
if (!FileSystemEntity.isFileSync(fullScriptPath)) {
|
if (!FileSystemEntity.isFileSync(fullScriptPath)) {
|
||||||
@ -408,13 +554,21 @@ Future<void> _runFlutterTest(String workingDirectory, {
|
|||||||
}
|
}
|
||||||
args.add(script);
|
args.add(script);
|
||||||
}
|
}
|
||||||
return runCommand(flutter, args,
|
if (expectFailure) {
|
||||||
|
return runCommand(flutter, args,
|
||||||
|
workingDirectory: workingDirectory,
|
||||||
|
expectNonZeroExit: true,
|
||||||
|
printOutput: printOutput,
|
||||||
|
skip: skip,
|
||||||
|
timeout: timeout,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
final Stream<String> testOutput = runAndGetStdout(flutter, args,
|
||||||
workingDirectory: workingDirectory,
|
workingDirectory: workingDirectory,
|
||||||
expectNonZeroExit: expectFailure,
|
expectNonZeroExit: expectFailure,
|
||||||
printOutput: printOutput,
|
|
||||||
skip: skip,
|
|
||||||
timeout: timeout,
|
timeout: timeout,
|
||||||
);
|
);
|
||||||
|
await _processTestOutput(testOutput, tableData);
|
||||||
}
|
}
|
||||||
|
|
||||||
Future<void> _verifyVersion(String filename) async {
|
Future<void> _verifyVersion(String filename) async {
|
||||||
|
@ -26,14 +26,14 @@ dependencies:
|
|||||||
crypto: 2.0.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
crypto: 2.0.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
intl: 0.15.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
intl: 0.15.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
json_rpc_2: 2.0.9 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
json_rpc_2: 2.0.9 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
petitparser: 2.1.1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
petitparser: 2.2.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
pub_semver: 1.4.2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
pub_semver: 1.4.2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
source_span: 1.5.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
source_span: 1.5.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
stream_channel: 1.6.8 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
stream_channel: 1.6.8 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
term_glyph: 1.1.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
term_glyph: 1.1.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
typed_data: 1.1.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
typed_data: 1.1.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
web_socket_channel: 1.0.9 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
web_socket_channel: 1.0.9 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
xml: 3.3.1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
xml: 3.4.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
|
|
||||||
dev_dependencies:
|
dev_dependencies:
|
||||||
# See packages/flutter_test/pubspec.yaml for why we're pinning this version.
|
# See packages/flutter_test/pubspec.yaml for why we're pinning this version.
|
||||||
@ -44,7 +44,7 @@ dev_dependencies:
|
|||||||
csslib: 0.14.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
csslib: 0.14.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
html: 0.13.3+3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
html: 0.13.4+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http: 0.12.0+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http: 0.12.0+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http_multi_server: 2.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http_multi_server: 2.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http_parser: 3.1.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http_parser: 3.1.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
@ -74,4 +74,4 @@ dev_dependencies:
|
|||||||
watcher: 0.9.7+10 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
watcher: 0.9.7+10 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
yaml: 2.1.15 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
yaml: 2.1.15 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
|
|
||||||
# PUBSPEC CHECKSUM: 3de5
|
# PUBSPEC CHECKSUM: 20e4
|
||||||
|
@ -20,7 +20,7 @@ dependencies:
|
|||||||
file: 5.0.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
file: 5.0.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
html: 0.13.3+3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
html: 0.13.4+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http: 0.12.0+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http: 0.12.0+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http_multi_server: 2.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http_multi_server: 2.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http_parser: 3.1.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http_parser: 3.1.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
@ -66,4 +66,4 @@ dependencies:
|
|||||||
flutter:
|
flutter:
|
||||||
uses-material-design: true
|
uses-material-design: true
|
||||||
|
|
||||||
# PUBSPEC CHECKSUM: e99f
|
# PUBSPEC CHECKSUM: 2b9e
|
||||||
|
@ -45,7 +45,7 @@ dev_dependencies:
|
|||||||
csslib: 0.14.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
csslib: 0.14.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
html: 0.13.3+3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
html: 0.13.4+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http: 0.12.0+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http: 0.12.0+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http_multi_server: 2.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http_multi_server: 2.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http_parser: 3.1.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http_parser: 3.1.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
@ -79,4 +79,4 @@ dev_dependencies:
|
|||||||
flutter:
|
flutter:
|
||||||
uses-material-design: true
|
uses-material-design: true
|
||||||
|
|
||||||
# PUBSPEC CHECKSUM: 4ead
|
# PUBSPEC CHECKSUM: 49ac
|
||||||
|
@ -24,7 +24,7 @@ dependencies:
|
|||||||
file: 5.0.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
file: 5.0.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
html: 0.13.3+3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
html: 0.13.4+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http: 0.12.0+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http: 0.12.0+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http_multi_server: 2.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http_multi_server: 2.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http_parser: 3.1.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http_parser: 3.1.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
@ -70,4 +70,4 @@ dependencies:
|
|||||||
flutter:
|
flutter:
|
||||||
uses-material-design: true
|
uses-material-design: true
|
||||||
|
|
||||||
# PUBSPEC CHECKSUM: e99f
|
# PUBSPEC CHECKSUM: 2b9e
|
||||||
|
@ -40,7 +40,7 @@ dev_dependencies:
|
|||||||
csslib: 0.14.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
csslib: 0.14.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
html: 0.13.3+3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
html: 0.13.4+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http: 0.12.0+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http: 0.12.0+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http_multi_server: 2.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http_multi_server: 2.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http_parser: 3.1.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http_parser: 3.1.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
@ -78,4 +78,4 @@ builders:
|
|||||||
flutter:
|
flutter:
|
||||||
uses-material-design: true
|
uses-material-design: true
|
||||||
|
|
||||||
# PUBSPEC CHECKSUM: e99f
|
# PUBSPEC CHECKSUM: 2b9e
|
||||||
|
@ -24,7 +24,7 @@ dependencies:
|
|||||||
file: 5.0.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
file: 5.0.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
html: 0.13.3+3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
html: 0.13.4+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http: 0.12.0+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http: 0.12.0+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http_multi_server: 2.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http_multi_server: 2.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http_parser: 3.1.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http_parser: 3.1.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
@ -70,4 +70,4 @@ dependencies:
|
|||||||
flutter:
|
flutter:
|
||||||
uses-material-design: true
|
uses-material-design: true
|
||||||
|
|
||||||
# PUBSPEC CHECKSUM: e99f
|
# PUBSPEC CHECKSUM: 2b9e
|
||||||
|
@ -24,7 +24,7 @@ dependencies:
|
|||||||
file: 5.0.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
file: 5.0.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
html: 0.13.3+3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
html: 0.13.4+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http: 0.12.0+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http: 0.12.0+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http_multi_server: 2.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http_multi_server: 2.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http_parser: 3.1.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http_parser: 3.1.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
@ -70,4 +70,4 @@ dependencies:
|
|||||||
flutter:
|
flutter:
|
||||||
uses-material-design: true
|
uses-material-design: true
|
||||||
|
|
||||||
# PUBSPEC CHECKSUM: e99f
|
# PUBSPEC CHECKSUM: 2b9e
|
||||||
|
@ -24,7 +24,7 @@ dependencies:
|
|||||||
file: 5.0.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
file: 5.0.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
html: 0.13.3+3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
html: 0.13.4+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http: 0.12.0+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http: 0.12.0+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http_multi_server: 2.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http_multi_server: 2.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http_parser: 3.1.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http_parser: 3.1.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
@ -70,4 +70,4 @@ dependencies:
|
|||||||
flutter:
|
flutter:
|
||||||
uses-material-design: true
|
uses-material-design: true
|
||||||
|
|
||||||
# PUBSPEC CHECKSUM: e99f
|
# PUBSPEC CHECKSUM: 2b9e
|
||||||
|
@ -14,7 +14,7 @@ dependencies:
|
|||||||
csslib: 0.14.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
csslib: 0.14.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
html: 0.13.3+3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
html: 0.13.4+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
kernel: 0.3.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
kernel: 0.3.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
logging: 0.11.3+2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
logging: 0.11.3+2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
meta: 1.1.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
meta: 1.1.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
@ -34,4 +34,4 @@ environment:
|
|||||||
# The pub client defaults to an <2.0.0 sdk constraint which we need to explicitly overwrite.
|
# The pub client defaults to an <2.0.0 sdk constraint which we need to explicitly overwrite.
|
||||||
sdk: ">=2.0.0-dev.68.0 <3.0.0"
|
sdk: ">=2.0.0-dev.68.0 <3.0.0"
|
||||||
|
|
||||||
# PUBSPEC CHECKSUM: a5d3
|
# PUBSPEC CHECKSUM: eed2
|
||||||
|
@ -26,7 +26,7 @@ dependencies:
|
|||||||
file: 5.0.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
file: 5.0.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
html: 0.13.3+3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
html: 0.13.4+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http: 0.12.0+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http: 0.12.0+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http_multi_server: 2.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http_multi_server: 2.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http_parser: 3.1.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http_parser: 3.1.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
@ -45,7 +45,7 @@ dependencies:
|
|||||||
package_resolver: 1.0.10 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
package_resolver: 1.0.10 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
path: 1.6.2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
path: 1.6.2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
pedantic: 1.5.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
pedantic: 1.5.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
petitparser: 2.1.1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
petitparser: 2.2.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
plugin: 0.2.0+3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
plugin: 0.2.0+3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
pool: 1.4.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
pool: 1.4.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
pub_semver: 1.4.2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
pub_semver: 1.4.2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
@ -67,7 +67,7 @@ dependencies:
|
|||||||
vm_service_client: 0.2.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
vm_service_client: 0.2.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
watcher: 0.9.7+10 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
watcher: 0.9.7+10 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
web_socket_channel: 1.0.9 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
web_socket_channel: 1.0.9 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
xml: 3.3.1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
xml: 3.4.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
yaml: 2.1.15 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
yaml: 2.1.15 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
|
|
||||||
dev_dependencies:
|
dev_dependencies:
|
||||||
@ -80,4 +80,4 @@ dev_dependencies:
|
|||||||
flutter:
|
flutter:
|
||||||
uses-material-design: true
|
uses-material-design: true
|
||||||
|
|
||||||
# PUBSPEC CHECKSUM: 14b7
|
# PUBSPEC CHECKSUM: f2b6
|
||||||
|
@ -27,7 +27,7 @@ dependencies:
|
|||||||
csslib: 0.14.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
csslib: 0.14.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
html: 0.13.3+3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
html: 0.13.4+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
kernel: 0.3.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
kernel: 0.3.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
logging: 0.11.3+2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
logging: 0.11.3+2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
package_config: 1.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
package_config: 1.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
@ -101,4 +101,4 @@ executables:
|
|||||||
vm_service_client: 0.2.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
vm_service_client: 0.2.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
web_socket_channel: 1.0.9 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
web_socket_channel: 1.0.9 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
|
|
||||||
# PUBSPEC CHECKSUM: eebb
|
# PUBSPEC CHECKSUM: 4eba
|
||||||
|
@ -11,12 +11,12 @@ environment:
|
|||||||
dependencies:
|
dependencies:
|
||||||
args: 1.5.1
|
args: 1.5.1
|
||||||
vector_math: 2.0.8
|
vector_math: 2.0.8
|
||||||
xml: 3.3.1
|
xml: 3.4.0
|
||||||
|
|
||||||
charcode: 1.1.2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
charcode: 1.1.2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
collection: 1.14.11 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
collection: 1.14.11 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
convert: 2.1.1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
convert: 2.1.1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
petitparser: 2.1.1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
petitparser: 2.2.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
typed_data: 1.1.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
typed_data: 1.1.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
|
|
||||||
dev_dependencies:
|
dev_dependencies:
|
||||||
@ -37,4 +37,4 @@ dev_dependencies:
|
|||||||
term_glyph: 1.1.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
term_glyph: 1.1.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
test_api: 0.2.2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
test_api: 0.2.2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
|
|
||||||
# PUBSPEC CHECKSUM: 8cb1
|
# PUBSPEC CHECKSUM: 94b1
|
||||||
|
@ -33,7 +33,7 @@ dev_dependencies:
|
|||||||
file: 5.0.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
file: 5.0.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
html: 0.13.3+3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
html: 0.13.4+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http: 0.12.0+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http: 0.12.0+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http_multi_server: 2.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http_multi_server: 2.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http_parser: 3.1.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http_parser: 3.1.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
@ -76,4 +76,4 @@ dev_dependencies:
|
|||||||
flutter:
|
flutter:
|
||||||
uses-material-design: true
|
uses-material-design: true
|
||||||
|
|
||||||
# PUBSPEC CHECKSUM: 3f88
|
# PUBSPEC CHECKSUM: 6687
|
||||||
|
@ -48,7 +48,7 @@ dev_dependencies:
|
|||||||
file: 5.0.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
file: 5.0.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
html: 0.13.3+3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
html: 0.13.4+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http: 0.12.0+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http: 0.12.0+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http_multi_server: 2.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http_multi_server: 2.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http_parser: 3.1.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http_parser: 3.1.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
@ -256,4 +256,4 @@ flutter:
|
|||||||
- asset: packages/flutter_gallery_assets/fonts/merriweather/Merriweather-Regular.ttf
|
- asset: packages/flutter_gallery_assets/fonts/merriweather/Merriweather-Regular.ttf
|
||||||
- asset: packages/flutter_gallery_assets/fonts/merriweather/Merriweather-Light.ttf
|
- asset: packages/flutter_gallery_assets/fonts/merriweather/Merriweather-Light.ttf
|
||||||
|
|
||||||
# PUBSPEC CHECKSUM: 848d
|
# PUBSPEC CHECKSUM: d08c
|
||||||
|
@ -31,7 +31,7 @@ dev_dependencies:
|
|||||||
file: 5.0.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
file: 5.0.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
html: 0.13.3+3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
html: 0.13.4+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http: 0.12.0+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http: 0.12.0+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http_multi_server: 2.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http_multi_server: 2.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http_parser: 3.1.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http_parser: 3.1.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
@ -75,4 +75,4 @@ dev_dependencies:
|
|||||||
flutter:
|
flutter:
|
||||||
uses-material-design: true
|
uses-material-design: true
|
||||||
|
|
||||||
# PUBSPEC CHECKSUM: 3f88
|
# PUBSPEC CHECKSUM: 6687
|
||||||
|
@ -25,14 +25,14 @@ dependencies:
|
|||||||
dart_style: 1.2.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
dart_style: 1.2.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
html: 0.13.3+3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
html: 0.13.4+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http_parser: 3.1.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http_parser: 3.1.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
kernel: 0.3.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
kernel: 0.3.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
logging: 0.11.3+2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
logging: 0.11.3+2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
meta: 1.1.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
meta: 1.1.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
package_config: 1.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
package_config: 1.0.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
path: 1.6.2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
path: 1.6.2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
petitparser: 2.1.1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
petitparser: 2.2.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
plugin: 0.2.0+3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
plugin: 0.2.0+3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
pub_semver: 1.4.2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
pub_semver: 1.4.2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
source_span: 1.5.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
source_span: 1.5.5 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
@ -65,4 +65,4 @@ dev_dependencies:
|
|||||||
flutter:
|
flutter:
|
||||||
uses-material-design: true
|
uses-material-design: true
|
||||||
|
|
||||||
# PUBSPEC CHECKSUM: 208d
|
# PUBSPEC CHECKSUM: 358c
|
||||||
|
@ -20,7 +20,7 @@ dependencies:
|
|||||||
csslib: 0.14.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
csslib: 0.14.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
html: 0.13.3+3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
html: 0.13.4+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
kernel: 0.3.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
kernel: 0.3.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
logging: 0.11.3+2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
logging: 0.11.3+2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
meta: 1.1.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
meta: 1.1.6 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
@ -38,4 +38,4 @@ dartdoc:
|
|||||||
# Exclude this package from the hosted API docs.
|
# Exclude this package from the hosted API docs.
|
||||||
nodoc: true
|
nodoc: true
|
||||||
|
|
||||||
# PUBSPEC CHECKSUM: a5d3
|
# PUBSPEC CHECKSUM: eed2
|
||||||
|
@ -34,7 +34,7 @@ dependencies:
|
|||||||
usage: 3.4.1
|
usage: 3.4.1
|
||||||
vm_service_client: 0.2.6
|
vm_service_client: 0.2.6
|
||||||
web_socket_channel: 1.0.9
|
web_socket_channel: 1.0.9
|
||||||
xml: 3.3.1
|
xml: 3.4.0
|
||||||
yaml: 2.1.15
|
yaml: 2.1.15
|
||||||
flutter_goldens_client:
|
flutter_goldens_client:
|
||||||
path: ../flutter_goldens_client
|
path: ../flutter_goldens_client
|
||||||
@ -50,8 +50,8 @@ dependencies:
|
|||||||
dart_style: 1.2.3
|
dart_style: 1.2.3
|
||||||
code_builder: 3.2.0
|
code_builder: 3.2.0
|
||||||
build: 1.1.1
|
build: 1.1.1
|
||||||
build_modules: 1.0.8
|
build_modules: 1.0.9
|
||||||
build_daemon: 0.4.1
|
build_daemon: 0.4.2
|
||||||
|
|
||||||
async: 2.0.8 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
async: 2.0.8 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
bazel_worker: 0.1.20 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
bazel_worker: 0.1.20 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
@ -67,7 +67,7 @@ dependencies:
|
|||||||
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
front_end: 0.1.13 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
glob: 1.1.7 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
graphs: 0.2.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
graphs: 0.2.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
html: 0.13.3+3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
html: 0.13.4+1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
http_parser: 3.1.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
http_parser: 3.1.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
io: 0.3.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
io: 0.3.3 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
json_annotation: 2.0.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
json_annotation: 2.0.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
@ -77,7 +77,7 @@ dependencies:
|
|||||||
package_resolver: 1.0.10 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
package_resolver: 1.0.10 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
path: 1.6.2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
path: 1.6.2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
pedantic: 1.5.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
pedantic: 1.5.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
petitparser: 2.1.1 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
petitparser: 2.2.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
pool: 1.4.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
pool: 1.4.0 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
protobuf: 0.13.4 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
protobuf: 0.13.4 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
pub_semver: 1.4.2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
pub_semver: 1.4.2 # THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
|
||||||
@ -118,4 +118,4 @@ dartdoc:
|
|||||||
# Exclude this package from the hosted API docs.
|
# Exclude this package from the hosted API docs.
|
||||||
nodoc: true
|
nodoc: true
|
||||||
|
|
||||||
# PUBSPEC CHECKSUM: d62c
|
# PUBSPEC CHECKSUM: 222d
|
||||||
|
Loading…
Reference in New Issue
Block a user