Change the method of merging pull requests from graphql to REST API (#2285)
diff --git a/analysis_options.yaml b/analysis_options.yaml
index 18b7df2..4f5a9c5 100644
--- a/analysis_options.yaml
+++ b/analysis_options.yaml
@@ -42,3 +42,4 @@
linter:
rules:
use_super_parameters: true
+ prefer_final_fields: true
diff --git a/analyze/pubspec.lock b/analyze/pubspec.lock
index dd1fd0e..fcda3d0 100644
--- a/analyze/pubspec.lock
+++ b/analyze/pubspec.lock
@@ -5,239 +5,273 @@
dependency: transitive
description:
name: _fe_analyzer_shared
- url: "https://pub.dartlang.org"
+ sha256: "3444216bfd127af50bbe4862d8843ed44db946dd933554f0d7285e89f10e28ac"
+ url: "https://pub.dev"
source: hosted
- version: "46.0.0"
+ version: "50.0.0"
analyzer:
dependency: transitive
description:
name: analyzer
- url: "https://pub.dartlang.org"
+ sha256: "68796c31f510c8455a06fed75fc97d8e5ad04d324a830322ab3efc9feb6201c1"
+ url: "https://pub.dev"
source: hosted
- version: "4.6.0"
+ version: "5.2.0"
args:
dependency: transitive
description:
name: args
- url: "https://pub.dartlang.org"
+ sha256: b003c3098049a51720352d219b0bb5f219b60fbfb68e7a4748139a06a5676515
+ url: "https://pub.dev"
source: hosted
version: "2.3.1"
async:
dependency: transitive
description:
name: async
- url: "https://pub.dartlang.org"
+ sha256: bfe67ef28df125b7dddcea62755991f807aa39a2492a23e1550161692950bbe0
+ url: "https://pub.dev"
source: hosted
- version: "2.9.0"
+ version: "2.10.0"
boolean_selector:
dependency: transitive
description:
name: boolean_selector
- url: "https://pub.dartlang.org"
+ sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66"
+ url: "https://pub.dev"
source: hosted
- version: "2.1.0"
+ version: "2.1.1"
build:
dependency: transitive
description:
name: build
- url: "https://pub.dartlang.org"
+ sha256: "3fbda25365741f8251b39f3917fb3c8e286a96fd068a5a242e11c2012d495777"
+ url: "https://pub.dev"
source: hosted
- version: "2.3.0"
+ version: "2.3.1"
built_collection:
dependency: transitive
description:
name: built_collection
- url: "https://pub.dartlang.org"
+ sha256: "376e3dd27b51ea877c28d525560790aee2e6fbb5f20e2f85d5081027d94e2100"
+ url: "https://pub.dev"
source: hosted
version: "5.1.1"
built_value:
dependency: transitive
description:
name: built_value
- url: "https://pub.dartlang.org"
+ sha256: "59e08b0079bb75f7e27392498e26339387c1089c6bd58525a14eb8508637277b"
+ url: "https://pub.dev"
source: hosted
- version: "8.4.1"
+ version: "8.4.2"
code_builder:
dependency: transitive
description:
name: code_builder
- url: "https://pub.dartlang.org"
+ sha256: "02ce3596b459c666530f045ad6f96209474e8fee6e4855940a3cee65fb872ec5"
+ url: "https://pub.dev"
source: hosted
- version: "4.2.0"
+ version: "4.3.0"
collection:
dependency: transitive
description:
name: collection
- url: "https://pub.dartlang.org"
+ sha256: cfc915e6923fe5ce6e153b0723c753045de46de1b4d63771530504004a45fae0
+ url: "https://pub.dev"
source: hosted
- version: "1.16.0"
+ version: "1.17.0"
convert:
dependency: transitive
description:
name: convert
- url: "https://pub.dartlang.org"
+ sha256: "0f08b14755d163f6e2134cb58222dd25ea2a2ee8a195e53983d57c075324d592"
+ url: "https://pub.dev"
source: hosted
- version: "3.0.2"
+ version: "3.1.1"
crypto:
dependency: transitive
description:
name: crypto
- url: "https://pub.dartlang.org"
+ sha256: aa274aa7774f8964e4f4f38cc994db7b6158dd36e9187aaceaddc994b35c6c67
+ url: "https://pub.dev"
source: hosted
version: "3.0.2"
dart_style:
dependency: transitive
description:
name: dart_style
- url: "https://pub.dartlang.org"
+ sha256: "7a03456c3490394c8e7665890333e91ae8a49be43542b616e414449ac358acd4"
+ url: "https://pub.dev"
source: hosted
- version: "2.2.3"
+ version: "2.2.4"
file:
dependency: "direct main"
description:
name: file
- url: "https://pub.dartlang.org"
+ sha256: "1b92bec4fc2a72f59a8e15af5f52cd441e4a7860b49499d69dfa817af20e925d"
+ url: "https://pub.dev"
source: hosted
version: "6.1.4"
fixnum:
dependency: transitive
description:
name: fixnum
- url: "https://pub.dartlang.org"
+ sha256: "04be3e934c52e082558cc9ee21f42f5c1cd7a1262f4c63cd0357c08d5bba81ec"
+ url: "https://pub.dev"
source: hosted
version: "1.0.1"
glob:
dependency: transitive
description:
name: glob
- url: "https://pub.dartlang.org"
+ sha256: c51b4fdfee4d281f49b8c957f1add91b815473597f76bcf07377987f66a55729
+ url: "https://pub.dev"
source: hosted
version: "2.1.0"
logging:
dependency: transitive
description:
name: logging
- url: "https://pub.dartlang.org"
+ sha256: c0bbfe94d46aedf9b8b3e695cf3bd48c8e14b35e3b2c639e0aa7755d589ba946
+ url: "https://pub.dev"
source: hosted
- version: "1.0.2"
+ version: "1.1.0"
matcher:
dependency: transitive
description:
name: matcher
- url: "https://pub.dartlang.org"
+ sha256: "16db949ceee371e9b99d22f88fa3a73c4e59fd0afed0bd25fc336eb76c198b72"
+ url: "https://pub.dev"
source: hosted
- version: "0.12.12"
+ version: "0.12.13"
meta:
dependency: transitive
description:
name: meta
- url: "https://pub.dartlang.org"
+ sha256: "6c268b42ed578a53088d834796959e4a1814b5e9e164f147f580a386e5decf42"
+ url: "https://pub.dev"
source: hosted
version: "1.8.0"
mockito:
dependency: "direct dev"
description:
name: mockito
- url: "https://pub.dartlang.org"
+ sha256: "2a8a17b82b1bde04d514e75d90d634a0ac23f6cb4991f6098009dd56836aeafe"
+ url: "https://pub.dev"
source: hosted
- version: "5.3.0"
+ version: "5.3.2"
package_config:
dependency: transitive
description:
name: package_config
- url: "https://pub.dartlang.org"
+ sha256: "1c5b77ccc91e4823a5af61ee74e6b972db1ef98c2ff5a18d3161c982a55448bd"
+ url: "https://pub.dev"
source: hosted
version: "2.1.0"
path:
dependency: "direct main"
description:
name: path
- url: "https://pub.dartlang.org"
+ sha256: db9d4f58c908a4ba5953fcee2ae317c94889433e5024c27ce74a37f94267945b
+ url: "https://pub.dev"
source: hosted
version: "1.8.2"
platform:
dependency: "direct main"
description:
name: platform
- url: "https://pub.dartlang.org"
+ sha256: "4a451831508d7d6ca779f7ac6e212b4023dd5a7d08a27a63da33756410e32b76"
+ url: "https://pub.dev"
source: hosted
version: "3.1.0"
pub_semver:
dependency: transitive
description:
name: pub_semver
- url: "https://pub.dartlang.org"
+ sha256: b959af0a045c3484c4a8f4997731f5bfe4cac60d732fd8ce35b351f2d6a459fe
+ url: "https://pub.dev"
source: hosted
- version: "2.1.1"
+ version: "2.1.2"
source_gen:
dependency: transitive
description:
name: source_gen
- url: "https://pub.dartlang.org"
+ sha256: "2d79738b6bbf38a43920e2b8d189e9a3ce6cc201f4b8fc76be5e4fe377b1c38d"
+ url: "https://pub.dev"
source: hosted
- version: "1.2.2"
+ version: "1.2.6"
source_span:
dependency: transitive
description:
name: source_span
- url: "https://pub.dartlang.org"
+ sha256: dd904f795d4b4f3b870833847c461801f6750a9fa8e61ea5ac53f9422b31f250
+ url: "https://pub.dev"
source: hosted
version: "1.9.1"
stack_trace:
dependency: transitive
description:
name: stack_trace
- url: "https://pub.dartlang.org"
+ sha256: c3c7d8edb15bee7f0f74debd4b9c5f3c2ea86766fe4178eb2a18eb30a0bdaed5
+ url: "https://pub.dev"
source: hosted
- version: "1.10.0"
+ version: "1.11.0"
stream_channel:
dependency: transitive
description:
name: stream_channel
- url: "https://pub.dartlang.org"
+ sha256: "83615bee9045c1d322bbbd1ba209b7a749c2cbcdcb3fdd1df8eb488b3279c1c8"
+ url: "https://pub.dev"
source: hosted
- version: "2.1.0"
+ version: "2.1.1"
string_scanner:
dependency: transitive
description:
name: string_scanner
- url: "https://pub.dartlang.org"
+ sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde"
+ url: "https://pub.dev"
source: hosted
- version: "1.1.1"
+ version: "1.2.0"
term_glyph:
dependency: transitive
description:
name: term_glyph
- url: "https://pub.dartlang.org"
+ sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84
+ url: "https://pub.dev"
source: hosted
version: "1.2.1"
test_api:
dependency: "direct dev"
description:
name: test_api
- url: "https://pub.dartlang.org"
+ sha256: ad540f65f92caa91bf21dfc8ffb8c589d6e4dc0c2267818b4cc2792857706206
+ url: "https://pub.dev"
source: hosted
- version: "0.4.13"
+ version: "0.4.16"
typed_data:
dependency: transitive
description:
name: typed_data
- url: "https://pub.dartlang.org"
+ sha256: "26f87ade979c47a150c9eaab93ccd2bebe70a27dc0b4b29517f2904f04eb11a5"
+ url: "https://pub.dev"
source: hosted
version: "1.3.1"
watcher:
dependency: transitive
description:
name: watcher
- url: "https://pub.dartlang.org"
+ sha256: "6a7f46926b01ce81bfc339da6a7f20afbe7733eff9846f6d6a5466aa4c6667c0"
+ url: "https://pub.dev"
source: hosted
- version: "1.0.1"
+ version: "1.0.2"
yaml:
dependency: transitive
description:
name: yaml
- url: "https://pub.dartlang.org"
+ sha256: "23812a9b125b48d4007117254bca50abb6c712352927eece9e155207b1db2370"
+ url: "https://pub.dev"
source: hosted
version: "3.1.1"
sdks:
- dart: ">=2.18.0-146.0.dev <3.0.0"
+ dart: ">=2.18.0 <4.0.0"
diff --git a/app_dart/pubspec.lock b/app_dart/pubspec.lock
index af1bc50..f706b36 100644
--- a/app_dart/pubspec.lock
+++ b/app_dart/pubspec.lock
@@ -269,10 +269,10 @@
dependency: "direct main"
description:
name: github
- sha256: "159fa9a495e018070c0e70a30e7c9b6c446cf96e95211de8e363aef9db72cc70"
+ sha256: "841e4e53ab528b2eb5aa811b02e29e003df383737c6df41aae2eafaae431e109"
url: "https://pub.dev"
source: hosted
- version: "9.5.0"
+ version: "9.6.0"
glob:
dependency: transitive
description:
diff --git a/app_dart/pubspec.yaml b/app_dart/pubspec.yaml
index 1c38a68..bdbf56e 100644
--- a/app_dart/pubspec.yaml
+++ b/app_dart/pubspec.yaml
@@ -20,7 +20,7 @@
file: ^6.1.4
fixnum: ^1.0.1
gcloud: ^0.8.4
- github: ^9.4.0
+ github: ^9.6.0
googleapis: ^9.2.0
googleapis_auth: ^1.3.1
gql: ^0.14.0
diff --git a/auto_submit/lib/exception/retryable_checkrun_exception.dart b/auto_submit/lib/exception/retryable_exception.dart
similarity index 62%
rename from auto_submit/lib/exception/retryable_checkrun_exception.dart
rename to auto_submit/lib/exception/retryable_exception.dart
index 43a9948..ba7c3a0 100644
--- a/auto_submit/lib/exception/retryable_checkrun_exception.dart
+++ b/auto_submit/lib/exception/retryable_exception.dart
@@ -2,8 +2,9 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-class RetryableCheckRunException implements Exception {
- RetryableCheckRunException(this.cause);
+/// General exception for retryable error catching.
+class RetryableException implements Exception {
+ const RetryableException(this.cause);
final String cause;
diff --git a/auto_submit/lib/exception/retryable_merge_exception.dart b/auto_submit/lib/exception/retryable_merge_exception.dart
deleted file mode 100644
index c9e0495..0000000
--- a/auto_submit/lib/exception/retryable_merge_exception.dart
+++ /dev/null
@@ -1,16 +0,0 @@
-// Copyright 2022 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 'package:graphql/client.dart';
-
-class RetryableMergeException implements Exception {
- RetryableMergeException(this.cause, this.graphQLErrors);
-
- final String cause;
-
- final List<GraphQLError> graphQLErrors;
-
- @override
- String toString() => cause;
-}
diff --git a/auto_submit/lib/service/github_service.dart b/auto_submit/lib/service/github_service.dart
index 87f0692..3eb16bb 100644
--- a/auto_submit/lib/service/github_service.dart
+++ b/auto_submit/lib/service/github_service.dart
@@ -129,6 +129,24 @@
return response.statusCode == StatusCodes.ACCEPTED;
}
+ /// Merges a pull request according to the MergeMethod type. Current supported
+ /// merge method types are merge, rebase and squash.
+ Future<PullRequestMerge> mergePullRequest(
+ RepositorySlug slug,
+ int number, {
+ String? commitMessage,
+ MergeMethod mergeMethod = MergeMethod.merge,
+ String? requestSha,
+ }) async {
+ return await github.pullRequests.merge(
+ slug,
+ number,
+ message: commitMessage,
+ mergeMethod: mergeMethod,
+ requestSha: requestSha,
+ );
+ }
+
/// Automerges a given pull request with HEAD to ensure the commit is not in conflicting state.
Future<void> autoMergeBranch(PullRequest pullRequest) async {
final RepositorySlug slug = pullRequest.base!.repo!.slug();
@@ -136,7 +154,7 @@
final RepositoryCommit totCommit = await getCommit(slug, 'HEAD');
final GitHubComparison comparison = await compareTwoCommits(slug, totCommit.sha!, pullRequest.base!.sha!);
if (comparison.behindBy! >= _kBehindToT) {
- log.info('The current branch behinds by ${comparison.behindBy} commits.');
+ log.info('The current branch is behind by ${comparison.behindBy} commits.');
final String headSha = pullRequest.head!.sha!;
await updateBranch(slug, prNumber, headSha);
}
diff --git a/auto_submit/lib/service/validation_service.dart b/auto_submit/lib/service/validation_service.dart
index 6c412c0..42cee94 100644
--- a/auto_submit/lib/service/validation_service.dart
+++ b/auto_submit/lib/service/validation_service.dart
@@ -8,8 +8,6 @@
import 'package:auto_submit/model/pull_request_change_type.dart';
import 'dart:async';
-import 'package:auto_submit/exception/retryable_merge_exception.dart';
-import 'package:auto_submit/requests/check_pull_request_queries.dart';
import 'package:auto_submit/service/bigquery.dart';
import 'package:auto_submit/service/config.dart';
import 'package:auto_submit/service/github_service.dart';
@@ -24,6 +22,7 @@
import 'package:graphql/client.dart' as graphql;
import 'package:retry/retry.dart';
+import '../exception/retryable_exception.dart';
import '../model/auto_submit_query_result.dart';
import '../request_handling/pubsub.dart';
import '../validations/approval.dart';
@@ -189,8 +188,12 @@
}
// If we got to this point it means we are ready to submit the PR.
- final ProcessMergeResult processed =
- await processMerge(config: config, queryResult: result, messagePullRequest: messagePullRequest);
+ final ProcessMergeResult processed = await processMerge(
+ githubService: gitHubService,
+ config: config,
+ queryResult: result,
+ messagePullRequest: messagePullRequest,
+ );
if (!processed.result) {
final String message = 'auto label is removed for ${slug.fullName}, pr: $prNumber, ${processed.message}.';
@@ -205,6 +208,7 @@
log.info(message);
} else {
+ log.info('Pull Request ${slug.fullName}#$prNumber was merged successfully!');
log.info('Attempting to insert a pull request record into the database for $prNumber');
await insertPullRequestRecord(
@@ -238,12 +242,14 @@
await approverService!.revertApproval(result, messagePullRequest);
final ProcessMergeResult processed = await processMerge(
+ githubService: gitHubService,
config: config,
queryResult: result,
messagePullRequest: messagePullRequest,
);
if (processed.result) {
+ log.info('Revert request ${slug.fullName}#$prNumber was merged successfully.');
try {
final RevertReviewTemplate revertReviewTemplate = RevertReviewTemplate(
repositorySlug: slug.fullName,
@@ -326,6 +332,7 @@
/// Merges the commit if the PullRequest passes all the validations.
Future<ProcessMergeResult> processMerge({
+ required GithubService githubService,
required Config config,
required QueryResult queryResult,
required github.PullRequest messagePullRequest,
@@ -334,25 +341,23 @@
final int number = messagePullRequest.number!;
try {
- // The createGitHubGraphQLClient can throw Exception on github permissions
- // errors.
- final graphql.GraphQLClient client = await config.createGitHubGraphQLClient(slug);
- graphql.QueryResult? result;
+ github.PullRequestMerge? result;
await retryOptions.retry(
() async {
result = await _processMergeInternal(
- client: client,
- config: config,
- queryResult: queryResult,
- messagePullRequest: messagePullRequest,
+ githubService: githubService,
+ slug: slug,
+ number: number,
+ // TODO(ricardoamador): make this configurable per repository, https://github.com/flutter/flutter/issues/114557
+ mergeMethod: github.MergeMethod.squash,
);
},
- retryIf: (Exception e) => e is RetryableMergeException,
+ retryIf: (Exception e) => e is RetryableException,
);
- if (result != null && result!.hasException) {
- final String message = 'Failed to merge pr#: $number with ${result!.exception}';
+ if (result != null && !result!.merged!) {
+ final String message = 'Failed to merge pr#: $number with ${result!.message}';
log.severe(message);
return ProcessMergeResult(false, message);
}
@@ -477,36 +482,25 @@
typedef RetryHandler = Function();
/// Internal wrapper for the logic of merging a pull request into github.
-Future<graphql.QueryResult> _processMergeInternal({
- required graphql.GraphQLClient client,
- required Config config,
- required QueryResult queryResult,
- required github.PullRequest messagePullRequest,
+Future<github.PullRequestMerge> _processMergeInternal({
+ required GithubService githubService,
+ required github.RepositorySlug slug,
+ required int number,
+ required github.MergeMethod mergeMethod,
+ String? commitMessage,
+ String? requestSha,
}) async {
- final String id = queryResult.repository!.pullRequest!.id!;
-
- final PullRequest pullRequest = queryResult.repository!.pullRequest!;
- final Commit commit = pullRequest.commits!.nodes!.single.commit!;
- final String? sha = commit.oid;
- final int number = messagePullRequest.number!;
-
- final graphql.QueryResult result = await client.mutate(
- graphql.MutationOptions(
- document: mergePullRequestMutation,
- variables: <String, dynamic>{
- 'id': id,
- 'oid': sha,
- 'title': '${queryResult.repository!.pullRequest!.title} (#$number)',
- },
- ),
+ final github.PullRequestMerge pullRequestMerge = await githubService.mergePullRequest(
+ slug,
+ number,
+ commitMessage: commitMessage,
+ mergeMethod: mergeMethod,
+ requestSha: requestSha,
);
- // We have to make this check because mutate does not explicitely throw an
- // exception, rather it wraps any exceptions encountered.
- if (result.hasException) {
- // This exception will bubble up if retries are exhausted.
- throw RetryableMergeException(result.exception!.graphqlErrors.first.message, result.exception!.graphqlErrors);
+ if (pullRequestMerge.merged != true) {
+ throw RetryableException("Pull request could not be merged: ${pullRequestMerge.message}");
}
- return result;
+ return pullRequestMerge;
}
diff --git a/auto_submit/lib/validations/revert.dart b/auto_submit/lib/validations/revert.dart
index 2cccccd..0677221 100644
--- a/auto_submit/lib/validations/revert.dart
+++ b/auto_submit/lib/validations/revert.dart
@@ -2,7 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-import 'package:auto_submit/exception/retryable_checkrun_exception.dart';
import 'package:auto_submit/model/auto_submit_query_result.dart' as auto;
import 'package:auto_submit/service/config.dart';
import 'package:auto_submit/service/github_service.dart';
@@ -11,6 +10,7 @@
import 'package:github/github.dart' as github;
import 'package:retry/retry.dart';
+import '../exception/retryable_exception.dart';
import '../service/log.dart';
class Revert extends Validation {
@@ -159,7 +159,7 @@
checkRun,
);
},
- retryIf: (Exception e) => e is RetryableCheckRunException,
+ retryIf: (Exception e) => e is RetryableException,
);
}
} catch (e) {
@@ -187,6 +187,6 @@
);
if (checkRuns.first.name != targetCheckRun.name || checkRuns.first.conclusion != github.CheckRunConclusion.success) {
- throw RetryableCheckRunException('${targetCheckRun.name} has not yet completed.');
+ throw RetryableException('${targetCheckRun.name} has not yet completed.');
}
}
diff --git a/auto_submit/pubspec.lock b/auto_submit/pubspec.lock
index db69807..bf33715 100644
--- a/auto_submit/pubspec.lock
+++ b/auto_submit/pubspec.lock
@@ -5,694 +5,793 @@
dependency: transitive
description:
name: _discoveryapis_commons
- url: "https://pub.dartlang.org"
+ sha256: "50d83f715747fd9f41bcdc87eec93fa300c63dd9ca16bb884bbe7864a2a547bd"
+ url: "https://pub.dev"
source: hosted
version: "1.0.3"
_fe_analyzer_shared:
dependency: transitive
description:
name: _fe_analyzer_shared
- url: "https://pub.dartlang.org"
+ sha256: "3444216bfd127af50bbe4862d8843ed44db946dd933554f0d7285e89f10e28ac"
+ url: "https://pub.dev"
source: hosted
version: "50.0.0"
analyzer:
dependency: transitive
description:
name: analyzer
- url: "https://pub.dartlang.org"
+ sha256: "68796c31f510c8455a06fed75fc97d8e5ad04d324a830322ab3efc9feb6201c1"
+ url: "https://pub.dev"
source: hosted
version: "5.2.0"
appengine:
dependency: "direct main"
description:
name: appengine
- url: "https://pub.dartlang.org"
+ sha256: "5ffa6ea675ffbf13808d0b023a6e7eb9322d4392495be1c5a8fc01f2399d4717"
+ url: "https://pub.dev"
source: hosted
version: "0.13.4"
archive:
dependency: transitive
description:
name: archive
- url: "https://pub.dartlang.org"
+ sha256: "80e5141fafcb3361653ce308776cfd7d45e6e9fbb429e14eec571382c0c5fecb"
+ url: "https://pub.dev"
source: hosted
version: "3.3.2"
args:
dependency: transitive
description:
name: args
- url: "https://pub.dartlang.org"
+ sha256: b003c3098049a51720352d219b0bb5f219b60fbfb68e7a4748139a06a5676515
+ url: "https://pub.dev"
source: hosted
version: "2.3.1"
asn1lib:
dependency: transitive
description:
name: asn1lib
- url: "https://pub.dartlang.org"
+ sha256: "061c6d821ee65d9565240a439dc42222a6c481820da2fe7dc449a57a79bc909f"
+ url: "https://pub.dev"
source: hosted
version: "1.2.2"
async:
dependency: transitive
description:
name: async
- url: "https://pub.dartlang.org"
+ sha256: bfe67ef28df125b7dddcea62755991f807aa39a2492a23e1550161692950bbe0
+ url: "https://pub.dev"
source: hosted
version: "2.10.0"
boolean_selector:
dependency: transitive
description:
name: boolean_selector
- url: "https://pub.dartlang.org"
+ sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66"
+ url: "https://pub.dev"
source: hosted
version: "2.1.1"
build:
dependency: transitive
description:
name: build
- url: "https://pub.dartlang.org"
+ sha256: "3fbda25365741f8251b39f3917fb3c8e286a96fd068a5a242e11c2012d495777"
+ url: "https://pub.dev"
source: hosted
version: "2.3.1"
build_config:
dependency: transitive
description:
name: build_config
- url: "https://pub.dartlang.org"
+ sha256: bf80fcfb46a29945b423bd9aad884590fb1dc69b330a4d4700cac476af1708d1
+ url: "https://pub.dev"
source: hosted
version: "1.1.1"
build_daemon:
dependency: transitive
description:
name: build_daemon
- url: "https://pub.dartlang.org"
+ sha256: "6bc5544ea6ce4428266e7ea680e945c68806c4aae2da0eb5e9ccf38df8d6acbf"
+ url: "https://pub.dev"
source: hosted
version: "3.1.0"
build_resolvers:
dependency: transitive
description:
name: build_resolvers
- url: "https://pub.dartlang.org"
+ sha256: "7c35a3a7868626257d8aee47b51c26b9dba11eaddf3431117ed2744951416aab"
+ url: "https://pub.dev"
source: hosted
version: "2.1.0"
build_runner:
dependency: "direct dev"
description:
name: build_runner
- url: "https://pub.dartlang.org"
+ sha256: "6f48c61a9dcd2c3a9e62d3dcdab1ba382790e2f31026288cbabe55d6003c9c23"
+ url: "https://pub.dev"
source: hosted
version: "2.3.2"
build_runner_core:
dependency: transitive
description:
name: build_runner_core
- url: "https://pub.dartlang.org"
+ sha256: "14febe0f5bac5ae474117a36099b4de6f1dbc52df6c5e55534b3da9591bf4292"
+ url: "https://pub.dev"
source: hosted
version: "7.2.7"
built_collection:
dependency: transitive
description:
name: built_collection
- url: "https://pub.dartlang.org"
+ sha256: "376e3dd27b51ea877c28d525560790aee2e6fbb5f20e2f85d5081027d94e2100"
+ url: "https://pub.dev"
source: hosted
version: "5.1.1"
built_value:
dependency: transitive
description:
name: built_value
- url: "https://pub.dartlang.org"
+ sha256: "59e08b0079bb75f7e27392498e26339387c1089c6bd58525a14eb8508637277b"
+ url: "https://pub.dev"
source: hosted
version: "8.4.2"
checked_yaml:
dependency: transitive
description:
name: checked_yaml
- url: "https://pub.dartlang.org"
+ sha256: dd007e4fb8270916820a0d66e24f619266b60773cddd082c6439341645af2659
+ url: "https://pub.dev"
source: hosted
version: "2.0.1"
code_builder:
dependency: transitive
description:
name: code_builder
- url: "https://pub.dartlang.org"
+ sha256: "02ce3596b459c666530f045ad6f96209474e8fee6e4855940a3cee65fb872ec5"
+ url: "https://pub.dev"
source: hosted
version: "4.3.0"
collection:
dependency: transitive
description:
name: collection
- url: "https://pub.dartlang.org"
+ sha256: cfc915e6923fe5ce6e153b0723c753045de46de1b4d63771530504004a45fae0
+ url: "https://pub.dev"
source: hosted
version: "1.17.0"
convert:
dependency: transitive
description:
name: convert
- url: "https://pub.dartlang.org"
+ sha256: "0f08b14755d163f6e2134cb58222dd25ea2a2ee8a195e53983d57c075324d592"
+ url: "https://pub.dev"
source: hosted
version: "3.1.1"
corsac_jwt:
dependency: "direct main"
description:
name: corsac_jwt
- url: "https://pub.dartlang.org"
+ sha256: f86d1a1ad7d4db5727ae5d68dfd4437cbcf62daabe920190fcd5425457f5f377
+ url: "https://pub.dev"
source: hosted
version: "1.0.0-nullsafety.1"
coverage:
dependency: transitive
description:
name: coverage
- url: "https://pub.dartlang.org"
+ sha256: d2494157c32b303f47dedee955b1479f2979c4ff66934eb7c0def44fd9e0267a
+ url: "https://pub.dev"
source: hosted
version: "1.6.1"
crypto:
dependency: "direct main"
description:
name: crypto
- url: "https://pub.dartlang.org"
+ sha256: aa274aa7774f8964e4f4f38cc994db7b6158dd36e9187aaceaddc994b35c6c67
+ url: "https://pub.dev"
source: hosted
version: "3.0.2"
dart_style:
dependency: transitive
description:
name: dart_style
- url: "https://pub.dartlang.org"
+ sha256: "7a03456c3490394c8e7665890333e91ae8a49be43542b616e414449ac358acd4"
+ url: "https://pub.dev"
source: hosted
version: "2.2.4"
file:
dependency: transitive
description:
name: file
- url: "https://pub.dartlang.org"
+ sha256: "1b92bec4fc2a72f59a8e15af5f52cd441e4a7860b49499d69dfa817af20e925d"
+ url: "https://pub.dev"
source: hosted
version: "6.1.4"
fixnum:
dependency: transitive
description:
name: fixnum
- url: "https://pub.dartlang.org"
+ sha256: "04be3e934c52e082558cc9ee21f42f5c1cd7a1262f4c63cd0357c08d5bba81ec"
+ url: "https://pub.dev"
source: hosted
version: "1.0.1"
flutter_lints:
dependency: "direct dev"
description:
name: flutter_lints
- url: "https://pub.dartlang.org"
+ sha256: aeb0b80a8b3709709c9cc496cdc027c5b3216796bc0af0ce1007eaf24464fd4c
+ url: "https://pub.dev"
source: hosted
version: "2.0.1"
frontend_server_client:
dependency: transitive
description:
name: frontend_server_client
- url: "https://pub.dartlang.org"
+ sha256: "82715f8041a85a534a7bf64400b2ee0bb3d594ccf695d97c0bb017259657ff5d"
+ url: "https://pub.dev"
source: hosted
version: "3.1.0"
gcloud:
dependency: transitive
description:
name: gcloud
- url: "https://pub.dartlang.org"
+ sha256: a8ba019d4be7d2a4347eeff5baeee7dacb4d6b4f9b27dc747d3b51831ba1a54d
+ url: "https://pub.dev"
source: hosted
version: "0.8.6"
github:
dependency: "direct main"
description:
name: github
- url: "https://pub.dartlang.org"
+ sha256: "841e4e53ab528b2eb5aa811b02e29e003df383737c6df41aae2eafaae431e109"
+ url: "https://pub.dev"
source: hosted
version: "9.6.0"
glob:
dependency: transitive
description:
name: glob
- url: "https://pub.dartlang.org"
+ sha256: c51b4fdfee4d281f49b8c957f1add91b815473597f76bcf07377987f66a55729
+ url: "https://pub.dev"
source: hosted
version: "2.1.0"
googleapis:
dependency: "direct main"
description:
name: googleapis
- url: "https://pub.dartlang.org"
+ sha256: dfea9984f0785ed445ba78e2aa8c55dadd86d6a60ea9e0ffbadad51edb5e7e36
+ url: "https://pub.dev"
source: hosted
version: "9.2.0"
googleapis_auth:
dependency: "direct main"
description:
name: googleapis_auth
- url: "https://pub.dartlang.org"
+ sha256: "127b1bbd32170ab8312f503bd57f1d654d8e4039ddfbc63c027d3f7ade0eff74"
+ url: "https://pub.dev"
source: hosted
version: "1.3.1"
gql:
dependency: "direct main"
description:
name: gql
- url: "https://pub.dartlang.org"
+ sha256: eb82428e84da1ad6b43402d537927d1224f4211976077326d699ffa3279ac463
+ url: "https://pub.dev"
source: hosted
version: "0.14.1-alpha+1666801693402"
gql_dedupe_link:
dependency: transitive
description:
name: gql_dedupe_link
- url: "https://pub.dartlang.org"
+ sha256: "024aa836258fdc67a25ae4547c3bafbea10c4948f925c6d6d6fd77c8e8dcbfb1"
+ url: "https://pub.dev"
source: hosted
version: "2.0.3"
gql_error_link:
dependency: transitive
description:
name: gql_error_link
- url: "https://pub.dartlang.org"
+ sha256: a80b1f5f858798bc3ede38910e4c262d99755bffccb55d146c364bfeb8fa8350
+ url: "https://pub.dev"
source: hosted
version: "0.2.3"
gql_exec:
dependency: transitive
description:
name: gql_exec
- url: "https://pub.dartlang.org"
+ sha256: "983b702593eba382a5c518d30678b86798bf20fbf1b03affb8b10a418439160e"
+ url: "https://pub.dev"
source: hosted
version: "0.4.1"
gql_http_link:
dependency: transitive
description:
name: gql_http_link
- url: "https://pub.dartlang.org"
+ sha256: "101232d7fd5a3524974c05d26bb3c247a3d35c5b4a8806a361accf841a8e942e"
+ url: "https://pub.dev"
source: hosted
version: "0.4.4+1"
gql_link:
dependency: transitive
description:
name: gql_link
- url: "https://pub.dartlang.org"
+ sha256: "50c36e7462530361859e6a34bb84885b3091a1906846494295c5ea947019d854"
+ url: "https://pub.dev"
source: hosted
version: "0.5.1-alpha+1660256327632"
gql_transform_link:
dependency: transitive
description:
name: gql_transform_link
- url: "https://pub.dartlang.org"
+ sha256: b532c777b5d1d7147d4ae5cc27fcd57bfcddb47a09e102c7b4a2e98fcc162737
+ url: "https://pub.dev"
source: hosted
version: "0.2.3-alpha+1660256327655"
graphql:
dependency: "direct main"
description:
name: graphql
- url: "https://pub.dartlang.org"
+ sha256: f4a91622de5f77e8df785e48286de57fed2efd8e8898d035409de07e530efc0d
+ url: "https://pub.dev"
source: hosted
version: "5.1.2-beta.5"
graphs:
dependency: transitive
description:
name: graphs
- url: "https://pub.dartlang.org"
+ sha256: f9e130f3259f52d26f0cfc0e964513796dafed572fa52e45d2f8d6ca14db39b2
+ url: "https://pub.dev"
source: hosted
version: "2.2.0"
grpc:
dependency: transitive
description:
name: grpc
- url: "https://pub.dartlang.org"
+ sha256: a73c16e4f6a4a819be892bb2c73cc1d0b00e36095f69b0738cc91a733e3d27ba
+ url: "https://pub.dev"
source: hosted
version: "3.1.0"
hive:
dependency: transitive
description:
name: hive
- url: "https://pub.dartlang.org"
+ sha256: "8dcf6db979d7933da8217edcec84e9df1bdb4e4edc7fc77dbd5aa74356d6d941"
+ url: "https://pub.dev"
source: hosted
version: "2.2.3"
http:
dependency: "direct main"
description:
name: http
- url: "https://pub.dartlang.org"
+ sha256: "6aa2946395183537c8b880962d935877325d6a09a2867c3970c05c0fed6ac482"
+ url: "https://pub.dev"
source: hosted
version: "0.13.5"
http2:
dependency: transitive
description:
name: http2
- url: "https://pub.dartlang.org"
+ sha256: "58805ebc6513eed3b98ee0a455a8357e61d187bf2e0fdc1e53120770f78de258"
+ url: "https://pub.dev"
source: hosted
version: "2.0.1"
http_methods:
dependency: transitive
description:
name: http_methods
- url: "https://pub.dartlang.org"
+ sha256: c192bb6fb4ae99d06053f67a2c1c65350a29bc778a39d9a12b96bd2ec820e9dc
+ url: "https://pub.dev"
source: hosted
version: "1.1.0"
http_multi_server:
dependency: transitive
description:
name: http_multi_server
- url: "https://pub.dartlang.org"
+ sha256: "97486f20f9c2f7be8f514851703d0119c3596d14ea63227af6f7a481ef2b2f8b"
+ url: "https://pub.dev"
source: hosted
version: "3.2.1"
http_parser:
dependency: transitive
description:
name: http_parser
- url: "https://pub.dartlang.org"
+ sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b"
+ url: "https://pub.dev"
source: hosted
version: "4.0.2"
io:
dependency: transitive
description:
name: io
- url: "https://pub.dartlang.org"
+ sha256: "0d4c73c3653ab85bf696d51a9657604c900a370549196a91f33e4c39af760852"
+ url: "https://pub.dev"
source: hosted
version: "1.0.3"
js:
dependency: transitive
description:
name: js
- url: "https://pub.dartlang.org"
+ sha256: "5528c2f391ededb7775ec1daa69e65a2d61276f7552de2b5f7b8d34ee9fd4ab7"
+ url: "https://pub.dev"
source: hosted
version: "0.6.5"
json_annotation:
dependency: "direct main"
description:
name: json_annotation
- url: "https://pub.dartlang.org"
+ sha256: "3520fa844009431b5d4491a5a778603520cdc399ab3406332dcc50f93547258c"
+ url: "https://pub.dev"
source: hosted
version: "4.7.0"
json_serializable:
dependency: "direct dev"
description:
name: json_serializable
- url: "https://pub.dartlang.org"
+ sha256: f3c2c18a7889580f71926f30c1937727c8c7d4f3a435f8f5e8b0ddd25253ef5d
+ url: "https://pub.dev"
source: hosted
version: "6.5.4"
lints:
dependency: transitive
description:
name: lints
- url: "https://pub.dartlang.org"
+ sha256: "5e4a9cd06d447758280a8ac2405101e0e2094d2a1dbdd3756aec3fe7775ba593"
+ url: "https://pub.dev"
source: hosted
version: "2.0.1"
logging:
dependency: "direct main"
description:
name: logging
- url: "https://pub.dartlang.org"
+ sha256: c0bbfe94d46aedf9b8b3e695cf3bd48c8e14b35e3b2c639e0aa7755d589ba946
+ url: "https://pub.dev"
source: hosted
version: "1.1.0"
matcher:
dependency: transitive
description:
name: matcher
- url: "https://pub.dartlang.org"
+ sha256: "16db949ceee371e9b99d22f88fa3a73c4e59fd0afed0bd25fc336eb76c198b72"
+ url: "https://pub.dev"
source: hosted
version: "0.12.13"
meta:
dependency: "direct main"
description:
name: meta
- url: "https://pub.dartlang.org"
+ sha256: "6c268b42ed578a53088d834796959e4a1814b5e9e164f147f580a386e5decf42"
+ url: "https://pub.dev"
source: hosted
version: "1.8.0"
mime:
dependency: transitive
description:
name: mime
- url: "https://pub.dartlang.org"
+ sha256: dab22e92b41aa1255ea90ddc4bc2feaf35544fd0728e209638cad041a6e3928a
+ url: "https://pub.dev"
source: hosted
version: "1.0.2"
mockito:
dependency: "direct dev"
description:
name: mockito
- url: "https://pub.dartlang.org"
+ sha256: "2a8a17b82b1bde04d514e75d90d634a0ac23f6cb4991f6098009dd56836aeafe"
+ url: "https://pub.dev"
source: hosted
version: "5.3.2"
neat_cache:
dependency: "direct main"
description:
name: neat_cache
- url: "https://pub.dartlang.org"
+ sha256: "98f528e6787988b85dc1384cfe9ed0b472a7277a1c7ea5a40cbed51e22f71163"
+ url: "https://pub.dev"
source: hosted
version: "2.0.2"
node_preamble:
dependency: transitive
description:
name: node_preamble
- url: "https://pub.dartlang.org"
+ sha256: "8ebdbaa3b96d5285d068f80772390d27c21e1fa10fb2df6627b1b9415043608d"
+ url: "https://pub.dev"
source: hosted
version: "2.0.1"
normalize:
dependency: transitive
description:
name: normalize
- url: "https://pub.dartlang.org"
+ sha256: baf8caf2d8b745af5737cca6c24f7fe3cf3158897fdbcde9a909b9c8d3e2e5af
+ url: "https://pub.dev"
source: hosted
version: "0.7.2"
package_config:
dependency: transitive
description:
name: package_config
- url: "https://pub.dartlang.org"
+ sha256: "1c5b77ccc91e4823a5af61ee74e6b972db1ef98c2ff5a18d3161c982a55448bd"
+ url: "https://pub.dev"
source: hosted
version: "2.1.0"
path:
dependency: transitive
description:
name: path
- url: "https://pub.dartlang.org"
+ sha256: db9d4f58c908a4ba5953fcee2ae317c94889433e5024c27ce74a37f94267945b
+ url: "https://pub.dev"
source: hosted
version: "1.8.2"
pointycastle:
dependency: transitive
description:
name: pointycastle
- url: "https://pub.dartlang.org"
+ sha256: db7306cf0249f838d1a24af52b5a5887c5bf7f31d8bb4e827d071dc0939ad346
+ url: "https://pub.dev"
source: hosted
version: "3.6.2"
pool:
dependency: transitive
description:
name: pool
- url: "https://pub.dartlang.org"
+ sha256: "20fe868b6314b322ea036ba325e6fc0711a22948856475e2c2b6306e8ab39c2a"
+ url: "https://pub.dev"
source: hosted
version: "1.5.1"
protobuf:
dependency: transitive
description:
name: protobuf
- url: "https://pub.dartlang.org"
+ sha256: "01dd9bd0fa02548bf2ceee13545d4a0ec6046459d847b6b061d8a27237108a08"
+ url: "https://pub.dev"
source: hosted
version: "2.1.0"
pub_semver:
dependency: transitive
description:
name: pub_semver
- url: "https://pub.dartlang.org"
+ sha256: b959af0a045c3484c4a8f4997731f5bfe4cac60d732fd8ce35b351f2d6a459fe
+ url: "https://pub.dev"
source: hosted
version: "2.1.2"
pubspec_parse:
dependency: transitive
description:
name: pubspec_parse
- url: "https://pub.dartlang.org"
+ sha256: "75f6614d6dde2dc68948dffbaa4fe5dae32cd700eb9fb763fe11dfb45a3c4d0a"
+ url: "https://pub.dev"
source: hosted
version: "1.2.1"
retry:
dependency: "direct main"
description:
name: retry
- url: "https://pub.dartlang.org"
+ sha256: "45dfeebaf095b606fdb9dbfb4c114cc204449bc274783b452658365e03afdbab"
+ url: "https://pub.dev"
source: hosted
version: "3.1.0"
rsa_pkcs:
dependency: transitive
description:
name: rsa_pkcs
- url: "https://pub.dartlang.org"
+ sha256: "17a52b0c010319f0d4c7bcc635eb89e2efeaec44975b3fb45f850b350a2b0513"
+ url: "https://pub.dev"
source: hosted
version: "2.0.1"
rxdart:
dependency: transitive
description:
name: rxdart
- url: "https://pub.dartlang.org"
+ sha256: "5d22055fd443806c03ef24a02000637cf51eae49c2a0168d38a43fc166b0209c"
+ url: "https://pub.dev"
source: hosted
version: "0.27.5"
shelf:
dependency: "direct main"
description:
name: shelf
- url: "https://pub.dartlang.org"
+ sha256: c24a96135a2ccd62c64b69315a14adc5c3419df63b4d7c05832a346fdb73682c
+ url: "https://pub.dev"
source: hosted
version: "1.4.0"
shelf_packages_handler:
dependency: transitive
description:
name: shelf_packages_handler
- url: "https://pub.dartlang.org"
+ sha256: aef74dc9195746a384843102142ab65b6a4735bb3beea791e63527b88cc83306
+ url: "https://pub.dev"
source: hosted
version: "3.0.1"
shelf_router:
dependency: "direct main"
description:
name: shelf_router
- url: "https://pub.dartlang.org"
+ sha256: "0b0bfb835e8b2bb43c5341ee689f0d2851e9cea377a4f2db4ec06a1a99beace4"
+ url: "https://pub.dev"
source: hosted
version: "1.1.3"
shelf_static:
dependency: transitive
description:
name: shelf_static
- url: "https://pub.dartlang.org"
+ sha256: e792b76b96a36d4a41b819da593aff4bdd413576b3ba6150df5d8d9996d2e74c
+ url: "https://pub.dev"
source: hosted
version: "1.1.1"
shelf_web_socket:
dependency: transitive
description:
name: shelf_web_socket
- url: "https://pub.dartlang.org"
+ sha256: "6db16374bc3497d21aa0eebe674d3db9fdf82082aac0f04dc7b44e4af5b08afc"
+ url: "https://pub.dev"
source: hosted
version: "1.0.2"
source_gen:
dependency: transitive
description:
name: source_gen
- url: "https://pub.dartlang.org"
+ sha256: "2d79738b6bbf38a43920e2b8d189e9a3ce6cc201f4b8fc76be5e4fe377b1c38d"
+ url: "https://pub.dev"
source: hosted
version: "1.2.6"
source_helper:
dependency: transitive
description:
name: source_helper
- url: "https://pub.dartlang.org"
+ sha256: "3b67aade1d52416149c633ba1bb36df44d97c6b51830c2198e934e3fca87ca1f"
+ url: "https://pub.dev"
source: hosted
version: "1.3.3"
source_map_stack_trace:
dependency: transitive
description:
name: source_map_stack_trace
- url: "https://pub.dartlang.org"
+ sha256: "84cf769ad83aa6bb61e0aa5a18e53aea683395f196a6f39c4c881fb90ed4f7ae"
+ url: "https://pub.dev"
source: hosted
version: "2.1.1"
source_maps:
dependency: transitive
description:
name: source_maps
- url: "https://pub.dartlang.org"
+ sha256: "490098075234dcedb83c5d949b4c93dad5e6b7702748de000be2b57b8e6b2427"
+ url: "https://pub.dev"
source: hosted
version: "0.10.11"
source_span:
dependency: transitive
description:
name: source_span
- url: "https://pub.dartlang.org"
+ sha256: dd904f795d4b4f3b870833847c461801f6750a9fa8e61ea5ac53f9422b31f250
+ url: "https://pub.dev"
source: hosted
version: "1.9.1"
stack_trace:
dependency: transitive
description:
name: stack_trace
- url: "https://pub.dartlang.org"
+ sha256: c3c7d8edb15bee7f0f74debd4b9c5f3c2ea86766fe4178eb2a18eb30a0bdaed5
+ url: "https://pub.dev"
source: hosted
version: "1.11.0"
stream_channel:
dependency: transitive
description:
name: stream_channel
- url: "https://pub.dartlang.org"
+ sha256: "83615bee9045c1d322bbbd1ba209b7a749c2cbcdcb3fdd1df8eb488b3279c1c8"
+ url: "https://pub.dev"
source: hosted
version: "2.1.1"
stream_transform:
dependency: transitive
description:
name: stream_transform
- url: "https://pub.dartlang.org"
+ sha256: f1d172e22a5432c042b5adfa9aff621372e4292231d9d73ad00f486ad01c2395
+ url: "https://pub.dev"
source: hosted
version: "2.0.1"
string_scanner:
dependency: transitive
description:
name: string_scanner
- url: "https://pub.dartlang.org"
+ sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde"
+ url: "https://pub.dev"
source: hosted
version: "1.2.0"
term_glyph:
dependency: transitive
description:
name: term_glyph
- url: "https://pub.dartlang.org"
+ sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84
+ url: "https://pub.dev"
source: hosted
version: "1.2.1"
test:
dependency: "direct dev"
description:
name: test
- url: "https://pub.dartlang.org"
+ sha256: a5fcd2d25eeadbb6589e80198a47d6a464ba3e2049da473943b8af9797900c2d
+ url: "https://pub.dev"
source: hosted
version: "1.22.0"
test_api:
dependency: transitive
description:
name: test_api
- url: "https://pub.dartlang.org"
+ sha256: ad540f65f92caa91bf21dfc8ffb8c589d6e4dc0c2267818b4cc2792857706206
+ url: "https://pub.dev"
source: hosted
version: "0.4.16"
test_core:
dependency: transitive
description:
name: test_core
- url: "https://pub.dartlang.org"
+ sha256: "0ef9755ec6d746951ba0aabe62f874b707690b5ede0fecc818b138fcc9b14888"
+ url: "https://pub.dev"
source: hosted
version: "0.4.20"
timing:
dependency: transitive
description:
name: timing
- url: "https://pub.dartlang.org"
+ sha256: c386d07d7f5efc613479a7c4d9d64b03710b03cfaa7e8ad5f2bfb295a1f0dfad
+ url: "https://pub.dev"
source: hosted
version: "1.0.0"
typed_data:
dependency: transitive
description:
name: typed_data
- url: "https://pub.dartlang.org"
+ sha256: "26f87ade979c47a150c9eaab93ccd2bebe70a27dc0b4b29517f2904f04eb11a5"
+ url: "https://pub.dev"
source: hosted
version: "1.3.1"
uuid:
dependency: transitive
description:
name: uuid
- url: "https://pub.dartlang.org"
+ sha256: "2469694ad079893e3b434a627970c33f2fa5adc46dfe03c9617546969a9a8afc"
+ url: "https://pub.dev"
source: hosted
version: "3.0.6"
vm_service:
dependency: transitive
description:
name: vm_service
- url: "https://pub.dartlang.org"
+ sha256: e7fb6c2282f7631712b69c19d1bff82f3767eea33a2321c14fa59ad67ea391c7
+ url: "https://pub.dev"
source: hosted
version: "9.4.0"
watcher:
dependency: transitive
description:
name: watcher
- url: "https://pub.dartlang.org"
+ sha256: "6a7f46926b01ce81bfc339da6a7f20afbe7733eff9846f6d6a5466aa4c6667c0"
+ url: "https://pub.dev"
source: hosted
version: "1.0.2"
web_socket_channel:
dependency: transitive
description:
name: web_socket_channel
- url: "https://pub.dartlang.org"
+ sha256: "3a969ddcc204a3e34e863d204b29c0752716f78b6f9cc8235083208d268a4ccd"
+ url: "https://pub.dev"
source: hosted
version: "2.2.0"
webkit_inspection_protocol:
dependency: transitive
description:
name: webkit_inspection_protocol
- url: "https://pub.dartlang.org"
+ sha256: "67d3a8b6c79e1987d19d848b0892e582dbb0c66c57cc1fef58a177dd2aa2823d"
+ url: "https://pub.dev"
source: hosted
version: "1.2.0"
yaml:
dependency: transitive
description:
name: yaml
- url: "https://pub.dartlang.org"
+ sha256: "23812a9b125b48d4007117254bca50abb6c712352927eece9e155207b1db2370"
+ url: "https://pub.dev"
source: hosted
version: "3.1.1"
sdks:
- dart: ">=2.18.0 <3.0.0"
+ dart: ">=2.18.0 <4.0.0"
diff --git a/auto_submit/test/requests/check_pull_request_test.dart b/auto_submit/test/requests/check_pull_request_test.dart
index af518e6..c4826c6 100644
--- a/auto_submit/test/requests/check_pull_request_test.dart
+++ b/auto_submit/test/requests/check_pull_request_test.dart
@@ -38,7 +38,7 @@
late FakeConfig config;
late FakeCronAuthProvider auth;
late FakeGraphQLClient githubGraphQLClient;
- final FakeGithubService githubService = FakeGithubService();
+ late FakeGithubService githubService;
late MockJobsResource jobsResource;
late FakeBigqueryService bigqueryService;
late MockPullRequestsService pullRequests;
@@ -60,6 +60,7 @@
auth = FakeCronAuthProvider();
pubsub = FakePubSub();
expectedOptions = <QueryOptions>[];
+ githubService = FakeGithubService();
githubGraphQLClient.mutateResultForOptions = (MutationOptions options) => createFakeQueryResult();
@@ -127,16 +128,14 @@
checkPullRequest = CheckPullRequest(config: config, pubsub: pubsub, cronAuthProvider: auth);
cocoonRequest = PullRequestHelper(prNumber: 0, lastCommitHash: oid);
+
+ final Map<int, RepositorySlug> expectedMergeRequestMap = {};
+ expectedMergeRequestMap[0] = RepositorySlug('flutter', cocoonRepo);
+
await checkPullRequest.get();
- githubGraphQLClient.verifyMutations(
- <MutationOptions>[
- MutationOptions(
- document: mergePullRequestMutation,
- variables: getMergePullRequestVariables(pullRequest1.number!.toString(), pullRequest1.number!.toString()),
- ),
- ],
- );
+ githubService.verifyMergePullRequests(expectedMergeRequestMap);
+
expect(0, pubsub.messagesQueue.length);
});
@@ -161,8 +160,9 @@
test('Merge exception is handled correctly', () async {
final PullRequest pullRequest1 = generatePullRequest(prNumber: 0);
final PullRequest pullRequest2 = generatePullRequest(prNumber: 1, repoName: cocoonRepo);
+
githubService.pullRequestData = pullRequest1;
- int errorIndex = 0;
+
final List<PullRequest> pullRequests = <PullRequest>[pullRequest1, pullRequest2];
for (PullRequest pr in pullRequests) {
unawaited(pubsub.publish(testTopic, pr));
@@ -174,13 +174,26 @@
lastCommitHash: oid,
);
cocoonRequest = PullRequestHelper(prNumber: 1, lastCommitHash: oid);
- githubGraphQLClient.mutateResultForOptions = (_) {
- if (errorIndex == 0) {
- errorIndex++;
- throw const GraphQLError(message: 'error');
- }
- return createQueryResult(cocoonRequest);
- };
+
+ githubService.useMergeRequestMockList = true;
+ githubService.pullRequestMergeMockList.add(
+ PullRequestMerge(
+ merged: false,
+ message: 'Unable to merge pull request',
+ ),
+ );
+ githubService.pullRequestMergeMockList.add(
+ PullRequestMerge(
+ merged: true,
+ sha: 'sha',
+ message: 'Pull request merged successfully',
+ ),
+ );
+
+ final Map<int, RepositorySlug> expectedMergeRequestMap = {};
+ expectedMergeRequestMap[0] = RepositorySlug('flutter', 'flutter');
+ expectedMergeRequestMap[1] = RepositorySlug('flutter', cocoonRepo);
+
final List<LogRecord> records = <LogRecord>[];
log.onRecord.listen((LogRecord record) => records.add(record));
// this is the test.
@@ -204,6 +217,7 @@
}
checkPullRequest = CheckPullRequest(config: config, pubsub: pubsub, cronAuthProvider: auth);
+
flutterRequest = PullRequestHelper(prNumber: 0, lastCommitHash: oid);
cocoonRequest = PullRequestHelper(prNumber: 1, lastCommitHash: oid);
@@ -211,18 +225,29 @@
expectedOptions.add(flutterOption);
expectedOptions.add(cocoonOption);
verifyQueries(expectedOptions);
- githubGraphQLClient.verifyMutations(
- <MutationOptions>[
- MutationOptions(
- document: mergePullRequestMutation,
- variables: getMergePullRequestVariables(pullRequest1.number!.toString(), pullRequest1.number!.toString()),
- ),
- MutationOptions(
- document: mergePullRequestMutation,
- variables: getMergePullRequestVariables(pullRequest2.number!.toString(), pullRequest2.number!.toString()),
- ),
- ],
+
+ githubService.useMergeRequestMockList = true;
+ githubService.pullRequestMergeMockList.add(
+ PullRequestMerge(
+ merged: true,
+ sha: 'sha1',
+ message: 'Pull request merged successfully',
+ ),
);
+ githubService.pullRequestMergeMockList.add(
+ PullRequestMerge(
+ merged: true,
+ sha: 'sha2',
+ message: 'Pull request merged successfully',
+ ),
+ );
+
+ Map<int, RepositorySlug> expectedMergeRequestMap = {};
+ expectedMergeRequestMap[0] = RepositorySlug('flutter', 'flutter');
+ expectedMergeRequestMap[1] = RepositorySlug('flutter', cocoonRepo);
+
+ githubService.verifyMergePullRequests(expectedMergeRequestMap);
+
assert(pubsub.messagesQueue.isEmpty);
});
@@ -244,28 +269,24 @@
reviews: const <PullRequestReviewHelper>[],
lastCommitHash: oid,
);
- cocoonRequest = PullRequestHelper(
- prNumber: 1,
- author: 'dependabot',
- reviews: const <PullRequestReviewHelper>[],
- );
await checkPullRequest.get();
expectedOptions.add(flutterOption);
verifyQueries(expectedOptions);
- githubGraphQLClient.verifyMutations(
- <MutationOptions>[
- MutationOptions(
- document: mergePullRequestMutation,
- variables: getMergePullRequestVariables(pullRequest.number!.toString(), pullRequest.number!.toString()),
- ),
- ],
- );
+
+ final Map<int, RepositorySlug> expectedMergeRequestMap = {};
+ expectedMergeRequestMap[0] = RepositorySlug('flutter', 'flutter');
+
+ githubService.mergeRequestMock =
+ PullRequestMerge(merged: true, sha: 'sha1', message: 'Pull request merged successfully');
+
+ githubService.verifyMergePullRequests(expectedMergeRequestMap);
+
assert(pubsub.messagesQueue.isEmpty);
});
test('Merges PR with failed tree status if override tree status label is provided', () async {
- PullRequest pullRequest = generatePullRequest(prNumber: 0, labelName: labelName);
+ final PullRequest pullRequest = generatePullRequest(prNumber: 0, labelName: labelName);
githubService.pullRequestData = pullRequest;
unawaited(pubsub.publish(testTopic, pullRequest));
@@ -282,19 +303,20 @@
await checkPullRequest.get();
expectedOptions.add(flutterOption);
verifyQueries(expectedOptions);
- githubGraphQLClient.verifyMutations(
- <MutationOptions>[
- MutationOptions(
- document: mergePullRequestMutation,
- variables: getMergePullRequestVariables(pullRequest.number!.toString(), pullRequest.number!.toString()),
- ),
- ],
- );
+
+ final Map<int, RepositorySlug> expectedMergeRequestMap = {};
+ expectedMergeRequestMap[0] = RepositorySlug('flutter', 'flutter');
+
+ githubService.mergeRequestMock =
+ PullRequestMerge(merged: true, sha: 'sha1', message: 'Pull request merged successfully');
+
+ githubService.verifyMergePullRequests(expectedMergeRequestMap);
+
assert(pubsub.messagesQueue.isEmpty);
});
test('Merges a clean revert PR with in progress tests', () async {
- PullRequest pullRequest = generatePullRequest(prNumber: 0);
+ final PullRequest pullRequest = generatePullRequest(prNumber: 0);
githubService.pullRequestData = pullRequest;
unawaited(pubsub.publish(testTopic, pullRequest));
checkPullRequest = CheckPullRequest(config: config, pubsub: pubsub, cronAuthProvider: auth);
@@ -311,19 +333,20 @@
await checkPullRequest.get();
expectedOptions.add(flutterOption);
verifyQueries(expectedOptions);
- githubGraphQLClient.verifyMutations(
- <MutationOptions>[
- MutationOptions(
- document: mergePullRequestMutation,
- variables: getMergePullRequestVariables(pullRequest.number!.toString(), pullRequest.number!.toString()),
- ),
- ],
- );
+
+ final Map<int, RepositorySlug> expectedMergeRequestMap = {};
+ expectedMergeRequestMap[0] = RepositorySlug('flutter', 'flutter');
+
+ githubService.mergeRequestMock =
+ PullRequestMerge(merged: true, sha: 'sha1', message: 'Pull request merged successfully');
+
+ githubService.verifyMergePullRequests(expectedMergeRequestMap);
+
assert(pubsub.messagesQueue.isEmpty);
});
test('Merges PR with successful checks on repo without tree status', () async {
- PullRequest pullRequest = generatePullRequest(prNumber: 1, repoName: cocoonRepo);
+ final PullRequest pullRequest = generatePullRequest(prNumber: 1, repoName: cocoonRepo);
githubService.pullRequestData = pullRequest;
unawaited(pubsub.publish(testTopic, pullRequest));
@@ -337,20 +360,21 @@
await checkPullRequest.get();
expectedOptions.add(cocoonOption);
verifyQueries(expectedOptions);
- githubGraphQLClient.verifyMutations(
- <MutationOptions>[
- MutationOptions(
- document: mergePullRequestMutation,
- variables: getMergePullRequestVariables('0', pullRequest.number!.toString()),
- ),
- ],
- );
+
+ final Map<int, RepositorySlug> expectedMergeRequestMap = {};
+ expectedMergeRequestMap[1] = RepositorySlug('flutter', cocoonRepo);
+
+ githubService.mergeRequestMock =
+ PullRequestMerge(merged: true, sha: 'sha1', message: 'Pull request merged successfully');
+
+ githubService.verifyMergePullRequests(expectedMergeRequestMap);
+
assert(pubsub.messagesQueue.isEmpty);
});
test('Merges PR with neutral status checkrun', () async {
- PullRequest pullRequest1 = generatePullRequest(prNumber: 0);
- PullRequest pullRequest2 = generatePullRequest(prNumber: 1, repoName: cocoonRepo);
+ final PullRequest pullRequest1 = generatePullRequest(prNumber: 0);
+ final PullRequest pullRequest2 = generatePullRequest(prNumber: 1, repoName: cocoonRepo);
githubService.pullRequestData = pullRequest1;
final List<PullRequest> pullRequests = <PullRequest>[pullRequest1, pullRequest2];
for (PullRequest pr in pullRequests) {
@@ -369,8 +393,8 @@
});
test('Removes the label for the PR with failed tests', () async {
- PullRequest pullRequest1 = generatePullRequest(prNumber: 0);
- PullRequest pullRequest2 = generatePullRequest(prNumber: 1, repoName: cocoonRepo);
+ final PullRequest pullRequest1 = generatePullRequest(prNumber: 0);
+ final PullRequest pullRequest2 = generatePullRequest(prNumber: 1, repoName: cocoonRepo);
githubService.pullRequestData = pullRequest1;
final List<PullRequest> pullRequests = <PullRequest>[pullRequest1, pullRequest2];
for (PullRequest pr in pullRequests) {
@@ -389,7 +413,7 @@
});
test('Removes the label for the PR with failed status', () async {
- PullRequest pullRequest = generatePullRequest(prNumber: 0);
+ final PullRequest pullRequest = generatePullRequest(prNumber: 0);
githubService.pullRequestData = pullRequest;
unawaited(pubsub.publish(testTopic, pullRequest));
@@ -410,7 +434,7 @@
});
test('Removes the label if non member does not have at least 2 member reviews', () async {
- PullRequest pullRequest = generatePullRequest(prNumber: 0, authorAssociation: '');
+ final PullRequest pullRequest = generatePullRequest(prNumber: 0, authorAssociation: '');
githubService.pullRequestData = pullRequest;
unawaited(pubsub.publish(testTopic, pullRequest));
@@ -431,7 +455,7 @@
});
test('Removes the label for the PR with null checks and statuses', () async {
- PullRequest pullRequest = generatePullRequest(prNumber: 0);
+ final PullRequest pullRequest = generatePullRequest(prNumber: 0);
githubService.pullRequestData = pullRequest;
unawaited(pubsub.publish(testTopic, pullRequest));
@@ -450,8 +474,8 @@
});
test('Does not merge PR with in progress checks', () async {
- PullRequest pullRequest1 = generatePullRequest(prNumber: 0);
- PullRequest pullRequest2 = generatePullRequest(prNumber: 1, repoName: cocoonRepo);
+ final PullRequest pullRequest1 = generatePullRequest(prNumber: 0);
+ final PullRequest pullRequest2 = generatePullRequest(prNumber: 1, repoName: cocoonRepo);
githubService.pullRequestData = pullRequest1;
final List<PullRequest> pullRequests = <PullRequest>[pullRequest1, pullRequest2];
for (PullRequest pr in pullRequests) {
@@ -470,8 +494,8 @@
});
test('Does not merge PR if no autosubmit label any more', () async {
- PullRequest pullRequest1 = generatePullRequest(prNumber: 0, autosubmitLabel: noAutosubmitLabel);
- PullRequest pullRequest2 =
+ final PullRequest pullRequest1 = generatePullRequest(prNumber: 0, autosubmitLabel: noAutosubmitLabel);
+ final PullRequest pullRequest2 =
generatePullRequest(prNumber: 1, autosubmitLabel: noAutosubmitLabel, repoName: cocoonRepo);
githubService.pullRequestData = pullRequest1;
final List<PullRequest> pullRequests = <PullRequest>[pullRequest1, pullRequest2];
@@ -486,7 +510,7 @@
});
test('Self review is disallowed', () async {
- PullRequest pullRequest = generatePullRequest(prNumber: 0, author: 'some_rando');
+ final PullRequest pullRequest = generatePullRequest(prNumber: 0, author: 'some_rando');
githubService.pullRequestData = pullRequest;
unawaited(pubsub.publish(testTopic, pullRequest));
checkPullRequest = CheckPullRequest(config: config, pubsub: pubsub, cronAuthProvider: auth);
diff --git a/auto_submit/test/service/validation_service_test.dart b/auto_submit/test/service/validation_service_test.dart
index 50c7b30..6c5ba14 100644
--- a/auto_submit/test/service/validation_service_test.dart
+++ b/auto_submit/test/service/validation_service_test.dart
@@ -116,7 +116,6 @@
group('Processing revert reqeuests.', () {
test('Merge valid revert request, issue created and message is acknowledged.', () async {
- githubGraphQLClient.mutateResultForOptions = (MutationOptions options) => createFakeQueryResult();
final PullRequestHelper flutterRequest = PullRequestHelper(
prNumber: 0,
lastCommitHash: oid,
@@ -125,6 +124,12 @@
githubService.checkRunsData = checkRunsMock;
githubService.createCommentData = createCommentMock;
+ githubService.mergeRequestMock = PullRequestMerge(
+ merged: true,
+ sha: 'sha',
+ message: 'Pull Request successfully merged',
+ );
+
final FakePubSub pubsub = FakePubSub();
final PullRequest pullRequest = generatePullRequest(
prNumber: 0,
@@ -149,7 +154,7 @@
githubService.pullRequestMock = pullRequest;
unawaited(pubsub.publish('auto-submit-queue-sub', pullRequest));
- final auto.QueryResult queryResult = createQueryResult(flutterRequest);
+ auto.QueryResult queryResult = createQueryResult(flutterRequest);
await validationService.processRevertRequest(
config: config,
@@ -248,7 +253,6 @@
});
test('Fail to create follow up review issue, comment is added and message is acknowledged.', () async {
- githubGraphQLClient.mutateResultForOptions = (MutationOptions options) => createFakeQueryResult();
final PullRequestHelper flutterRequest = PullRequestHelper(
prNumber: 0,
lastCommitHash: oid,
@@ -259,6 +263,12 @@
githubService.createCommentData = createCommentMock;
githubService.throwOnCreateIssue = true;
githubService.useRealComment = true;
+ githubService.mergeRequestMock = PullRequestMerge(
+ merged: true,
+ sha: 'sha',
+ message: 'Pull Request successfully merged',
+ );
+
final FakePubSub pubsub = FakePubSub();
final PullRequest pullRequest = generatePullRequest(
prNumber: 0,
@@ -349,6 +359,7 @@
maxAttempts: 1,
),
);
+
githubGraphQLClient.mutateResultForOptions = (MutationOptions options) => createFakeQueryResult(
exception: OperationException(
graphqlErrors: [
@@ -356,6 +367,7 @@
],
),
);
+
final PullRequestHelper flutterRequest = PullRequestHelper(
prNumber: 0,
lastCommitHash: oid,
@@ -530,22 +542,27 @@
test('Merge fails the first time but then succeeds after retry.', () async {
validationService = ValidationService(
config,
- retryOptions: const RetryOptions(delayFactor: Duration.zero, maxDelay: Duration.zero, maxAttempts: 3),
- );
-
- // Create a result that will trigger a retry.
- QueryResult queryResultException = createFakeQueryResult(
- exception: OperationException(
- graphqlErrors: [
- const GraphQLError(message: 'Base branch was modified. Review and try the merge again'),
- ],
+ retryOptions: const RetryOptions(
+ delayFactor: Duration.zero,
+ maxDelay: Duration.zero,
+ maxAttempts: 3,
),
);
- QueryResult queryResultSuccess = createFakeQueryResult();
- githubGraphQLClient.useMutationMapOnMutate = true;
- githubGraphQLClient.mutationMap.add(queryResultException);
- githubGraphQLClient.mutationMap.add(queryResultSuccess);
+ githubService.useMergeRequestMockList = true;
+ githubService.pullRequestMergeMockList.add(
+ PullRequestMerge(
+ merged: false,
+ message: 'Unable to merge pull request.',
+ ),
+ );
+ githubService.pullRequestMergeMockList.add(
+ PullRequestMerge(
+ merged: true,
+ sha: 'sha',
+ message: 'Pull Request successfully merged',
+ ),
+ );
final PullRequestHelper flutterRequest = PullRequestHelper(
prNumber: 0,
@@ -556,6 +573,7 @@
githubService.checkRunsData = checkRunsMock;
githubService.createCommentData = createCommentMock;
githubService.useRealComment = true;
+
final FakePubSub pubsub = FakePubSub();
final PullRequest pullRequest = generatePullRequest(
prNumber: 0,
diff --git a/auto_submit/test/src/service/fake_github_service.dart b/auto_submit/test/src/service/fake_github_service.dart
index e39a1d0..e7e8e2d 100644
--- a/auto_submit/test/src/service/fake_github_service.dart
+++ b/auto_submit/test/src/service/fake_github_service.dart
@@ -36,6 +36,14 @@
String? pullRequestFilesJsonMock;
Issue? githubIssueMock;
+ bool useMergeRequestMockList = false;
+ bool trackMergeRequestCalls = false;
+ PullRequestMerge? mergeRequestMock;
+ List<PullRequestMerge> pullRequestMergeMockList = [];
+
+ /// map to track pull request calls using pull number and repository slug.
+ Map<int, RepositorySlug> verifyPullRequestMergeCallMap = {};
+
bool throwOnCreateIssue = false;
/// Setting either of these flags to true will pop the front element from the
@@ -276,4 +284,33 @@
Future<Issue> getIssue({required RepositorySlug slug, required int issueNumber}) async {
return githubIssueMock!;
}
+
+ /// If useMergeRequestMockList is true then we will return elements from that
+ /// list until it is empty.
+ ///
+ /// The developer should track the number of times this method is called as
+ /// managing an empty list is not done here.
+ @override
+ Future<PullRequestMerge> mergePullRequest(
+ RepositorySlug slug,
+ int number, {
+ String? commitMessage,
+ MergeMethod? mergeMethod,
+ String? requestSha,
+ }) async {
+ verifyPullRequestMergeCallMap[number] = slug;
+ if (useMergeRequestMockList) {
+ return pullRequestMergeMockList.removeAt(0);
+ } else {
+ return mergeRequestMock!;
+ }
+ }
+
+ void verifyMergePullRequests(Map<int, RepositorySlug> expected) {
+ assert(verifyPullRequestMergeCallMap.length == expected.length);
+ verifyPullRequestMergeCallMap.forEach((key, value) {
+ assert(expected.containsKey(key));
+ assert(expected[key] == value);
+ });
+ }
}
diff --git a/auto_submit/test/utilities/mocks.mocks.dart b/auto_submit/test/utilities/mocks.mocks.dart
index ac4aea8..a031c03 100644
--- a/auto_submit/test/utilities/mocks.mocks.dart
+++ b/auto_submit/test/utilities/mocks.mocks.dart
@@ -1344,6 +1344,8 @@
_i5.RepositorySlug? slug,
int? number, {
String? message,
+ _i5.MergeMethod? mergeMethod = _i5.MergeMethod.merge,
+ String? requestSha,
}) =>
(super.noSuchMethod(
Invocation.method(
@@ -1352,7 +1354,11 @@
slug,
number,
],
- {#message: message},
+ {
+ #message: message,
+ #mergeMethod: mergeMethod,
+ #requestSha: requestSha,
+ },
),
returnValue: _i7.Future<_i5.PullRequestMerge>.value(_FakePullRequestMerge_23(
this,
@@ -1362,7 +1368,11 @@
slug,
number,
],
- {#message: message},
+ {
+ #message: message,
+ #mergeMethod: mergeMethod,
+ #requestSha: requestSha,
+ },
),
)),
) as _i7.Future<_i5.PullRequestMerge>);
diff --git a/codesign/pubspec.lock b/codesign/pubspec.lock
index 31d1f0d..d8e57f6 100644
--- a/codesign/pubspec.lock
+++ b/codesign/pubspec.lock
@@ -5,365 +5,417 @@
dependency: transitive
description:
name: _fe_analyzer_shared
- url: "https://pub.dartlang.org"
+ sha256: "3444216bfd127af50bbe4862d8843ed44db946dd933554f0d7285e89f10e28ac"
+ url: "https://pub.dev"
source: hosted
version: "50.0.0"
analyzer:
dependency: transitive
description:
name: analyzer
- url: "https://pub.dartlang.org"
+ sha256: "68796c31f510c8455a06fed75fc97d8e5ad04d324a830322ab3efc9feb6201c1"
+ url: "https://pub.dev"
source: hosted
version: "5.2.0"
archive:
dependency: "direct main"
description:
name: archive
- url: "https://pub.dartlang.org"
+ sha256: "80e5141fafcb3361653ce308776cfd7d45e6e9fbb429e14eec571382c0c5fecb"
+ url: "https://pub.dev"
source: hosted
version: "3.3.2"
args:
dependency: "direct main"
description:
name: args
- url: "https://pub.dartlang.org"
+ sha256: b003c3098049a51720352d219b0bb5f219b60fbfb68e7a4748139a06a5676515
+ url: "https://pub.dev"
source: hosted
version: "2.3.1"
async:
dependency: transitive
description:
name: async
- url: "https://pub.dartlang.org"
+ sha256: bfe67ef28df125b7dddcea62755991f807aa39a2492a23e1550161692950bbe0
+ url: "https://pub.dev"
source: hosted
version: "2.10.0"
boolean_selector:
dependency: transitive
description:
name: boolean_selector
- url: "https://pub.dartlang.org"
+ sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66"
+ url: "https://pub.dev"
source: hosted
version: "2.1.1"
clock:
dependency: transitive
description:
name: clock
- url: "https://pub.dartlang.org"
+ sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf
+ url: "https://pub.dev"
source: hosted
version: "1.1.1"
collection:
dependency: transitive
description:
name: collection
- url: "https://pub.dartlang.org"
+ sha256: cfc915e6923fe5ce6e153b0723c753045de46de1b4d63771530504004a45fae0
+ url: "https://pub.dev"
source: hosted
version: "1.17.0"
convert:
dependency: transitive
description:
name: convert
- url: "https://pub.dartlang.org"
+ sha256: "0f08b14755d163f6e2134cb58222dd25ea2a2ee8a195e53983d57c075324d592"
+ url: "https://pub.dev"
source: hosted
version: "3.1.1"
coverage:
dependency: transitive
description:
name: coverage
- url: "https://pub.dartlang.org"
+ sha256: d2494157c32b303f47dedee955b1479f2979c4ff66934eb7c0def44fd9e0267a
+ url: "https://pub.dev"
source: hosted
version: "1.6.1"
crypto:
dependency: "direct main"
description:
name: crypto
- url: "https://pub.dartlang.org"
+ sha256: aa274aa7774f8964e4f4f38cc994db7b6158dd36e9187aaceaddc994b35c6c67
+ url: "https://pub.dev"
source: hosted
version: "3.0.2"
fake_async:
dependency: "direct main"
description:
name: fake_async
- url: "https://pub.dartlang.org"
+ sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78"
+ url: "https://pub.dev"
source: hosted
version: "1.3.1"
file:
dependency: "direct main"
description:
name: file
- url: "https://pub.dartlang.org"
+ sha256: "1b92bec4fc2a72f59a8e15af5f52cd441e4a7860b49499d69dfa817af20e925d"
+ url: "https://pub.dev"
source: hosted
version: "6.1.4"
flutter_lints:
dependency: "direct main"
description:
name: flutter_lints
- url: "https://pub.dartlang.org"
+ sha256: aeb0b80a8b3709709c9cc496cdc027c5b3216796bc0af0ce1007eaf24464fd4c
+ url: "https://pub.dev"
source: hosted
version: "2.0.1"
frontend_server_client:
dependency: transitive
description:
name: frontend_server_client
- url: "https://pub.dartlang.org"
+ sha256: "82715f8041a85a534a7bf64400b2ee0bb3d594ccf695d97c0bb017259657ff5d"
+ url: "https://pub.dev"
source: hosted
version: "3.1.0"
glob:
dependency: transitive
description:
name: glob
- url: "https://pub.dartlang.org"
+ sha256: c51b4fdfee4d281f49b8c957f1add91b815473597f76bcf07377987f66a55729
+ url: "https://pub.dev"
source: hosted
version: "2.1.0"
http_multi_server:
dependency: transitive
description:
name: http_multi_server
- url: "https://pub.dartlang.org"
+ sha256: "97486f20f9c2f7be8f514851703d0119c3596d14ea63227af6f7a481ef2b2f8b"
+ url: "https://pub.dev"
source: hosted
version: "3.2.1"
http_parser:
dependency: transitive
description:
name: http_parser
- url: "https://pub.dartlang.org"
+ sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b"
+ url: "https://pub.dev"
source: hosted
version: "4.0.2"
io:
dependency: transitive
description:
name: io
- url: "https://pub.dartlang.org"
+ sha256: "0d4c73c3653ab85bf696d51a9657604c900a370549196a91f33e4c39af760852"
+ url: "https://pub.dev"
source: hosted
version: "1.0.3"
js:
dependency: transitive
description:
name: js
- url: "https://pub.dartlang.org"
+ sha256: "5528c2f391ededb7775ec1daa69e65a2d61276f7552de2b5f7b8d34ee9fd4ab7"
+ url: "https://pub.dev"
source: hosted
version: "0.6.5"
lints:
dependency: "direct dev"
description:
name: lints
- url: "https://pub.dartlang.org"
+ sha256: "5e4a9cd06d447758280a8ac2405101e0e2094d2a1dbdd3756aec3fe7775ba593"
+ url: "https://pub.dev"
source: hosted
version: "2.0.1"
logging:
dependency: "direct main"
description:
name: logging
- url: "https://pub.dartlang.org"
+ sha256: c0bbfe94d46aedf9b8b3e695cf3bd48c8e14b35e3b2c639e0aa7755d589ba946
+ url: "https://pub.dev"
source: hosted
version: "1.1.0"
matcher:
dependency: transitive
description:
name: matcher
- url: "https://pub.dartlang.org"
+ sha256: "16db949ceee371e9b99d22f88fa3a73c4e59fd0afed0bd25fc336eb76c198b72"
+ url: "https://pub.dev"
source: hosted
version: "0.12.13"
meta:
dependency: "direct main"
description:
name: meta
- url: "https://pub.dartlang.org"
+ sha256: "6c268b42ed578a53088d834796959e4a1814b5e9e164f147f580a386e5decf42"
+ url: "https://pub.dev"
source: hosted
version: "1.8.0"
mime:
dependency: transitive
description:
name: mime
- url: "https://pub.dartlang.org"
+ sha256: dab22e92b41aa1255ea90ddc4bc2feaf35544fd0728e209638cad041a6e3928a
+ url: "https://pub.dev"
source: hosted
version: "1.0.2"
node_preamble:
dependency: transitive
description:
name: node_preamble
- url: "https://pub.dartlang.org"
+ sha256: "8ebdbaa3b96d5285d068f80772390d27c21e1fa10fb2df6627b1b9415043608d"
+ url: "https://pub.dev"
source: hosted
version: "2.0.1"
package_config:
dependency: transitive
description:
name: package_config
- url: "https://pub.dartlang.org"
+ sha256: "1c5b77ccc91e4823a5af61ee74e6b972db1ef98c2ff5a18d3161c982a55448bd"
+ url: "https://pub.dev"
source: hosted
version: "2.1.0"
path:
dependency: transitive
description:
name: path
- url: "https://pub.dartlang.org"
+ sha256: db9d4f58c908a4ba5953fcee2ae317c94889433e5024c27ce74a37f94267945b
+ url: "https://pub.dev"
source: hosted
version: "1.8.2"
platform:
dependency: "direct main"
description:
name: platform
- url: "https://pub.dartlang.org"
+ sha256: "4a451831508d7d6ca779f7ac6e212b4023dd5a7d08a27a63da33756410e32b76"
+ url: "https://pub.dev"
source: hosted
version: "3.1.0"
pool:
dependency: transitive
description:
name: pool
- url: "https://pub.dartlang.org"
+ sha256: "20fe868b6314b322ea036ba325e6fc0711a22948856475e2c2b6306e8ab39c2a"
+ url: "https://pub.dev"
source: hosted
version: "1.5.1"
process:
dependency: "direct main"
description:
name: process
- url: "https://pub.dartlang.org"
+ sha256: "53fd8db9cec1d37b0574e12f07520d582019cb6c44abf5479a01505099a34a09"
+ url: "https://pub.dev"
source: hosted
version: "4.2.4"
pub_semver:
dependency: transitive
description:
name: pub_semver
- url: "https://pub.dartlang.org"
+ sha256: b959af0a045c3484c4a8f4997731f5bfe4cac60d732fd8ce35b351f2d6a459fe
+ url: "https://pub.dev"
source: hosted
version: "2.1.2"
shelf:
dependency: transitive
description:
name: shelf
- url: "https://pub.dartlang.org"
+ sha256: c24a96135a2ccd62c64b69315a14adc5c3419df63b4d7c05832a346fdb73682c
+ url: "https://pub.dev"
source: hosted
version: "1.4.0"
shelf_packages_handler:
dependency: transitive
description:
name: shelf_packages_handler
- url: "https://pub.dartlang.org"
+ sha256: aef74dc9195746a384843102142ab65b6a4735bb3beea791e63527b88cc83306
+ url: "https://pub.dev"
source: hosted
version: "3.0.1"
shelf_static:
dependency: transitive
description:
name: shelf_static
- url: "https://pub.dartlang.org"
+ sha256: e792b76b96a36d4a41b819da593aff4bdd413576b3ba6150df5d8d9996d2e74c
+ url: "https://pub.dev"
source: hosted
version: "1.1.1"
shelf_web_socket:
dependency: transitive
description:
name: shelf_web_socket
- url: "https://pub.dartlang.org"
+ sha256: "6db16374bc3497d21aa0eebe674d3db9fdf82082aac0f04dc7b44e4af5b08afc"
+ url: "https://pub.dev"
source: hosted
version: "1.0.2"
source_map_stack_trace:
dependency: transitive
description:
name: source_map_stack_trace
- url: "https://pub.dartlang.org"
+ sha256: "84cf769ad83aa6bb61e0aa5a18e53aea683395f196a6f39c4c881fb90ed4f7ae"
+ url: "https://pub.dev"
source: hosted
version: "2.1.1"
source_maps:
dependency: transitive
description:
name: source_maps
- url: "https://pub.dartlang.org"
+ sha256: "490098075234dcedb83c5d949b4c93dad5e6b7702748de000be2b57b8e6b2427"
+ url: "https://pub.dev"
source: hosted
version: "0.10.11"
source_span:
dependency: transitive
description:
name: source_span
- url: "https://pub.dartlang.org"
+ sha256: dd904f795d4b4f3b870833847c461801f6750a9fa8e61ea5ac53f9422b31f250
+ url: "https://pub.dev"
source: hosted
version: "1.9.1"
stack_trace:
dependency: transitive
description:
name: stack_trace
- url: "https://pub.dartlang.org"
+ sha256: c3c7d8edb15bee7f0f74debd4b9c5f3c2ea86766fe4178eb2a18eb30a0bdaed5
+ url: "https://pub.dev"
source: hosted
version: "1.11.0"
stream_channel:
dependency: transitive
description:
name: stream_channel
- url: "https://pub.dartlang.org"
+ sha256: "83615bee9045c1d322bbbd1ba209b7a749c2cbcdcb3fdd1df8eb488b3279c1c8"
+ url: "https://pub.dev"
source: hosted
version: "2.1.1"
string_scanner:
dependency: transitive
description:
name: string_scanner
- url: "https://pub.dartlang.org"
+ sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde"
+ url: "https://pub.dev"
source: hosted
version: "1.2.0"
term_glyph:
dependency: transitive
description:
name: term_glyph
- url: "https://pub.dartlang.org"
+ sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84
+ url: "https://pub.dev"
source: hosted
version: "1.2.1"
test:
dependency: "direct dev"
description:
name: test
- url: "https://pub.dartlang.org"
+ sha256: a5fcd2d25eeadbb6589e80198a47d6a464ba3e2049da473943b8af9797900c2d
+ url: "https://pub.dev"
source: hosted
version: "1.22.0"
test_api:
dependency: transitive
description:
name: test_api
- url: "https://pub.dartlang.org"
+ sha256: ad540f65f92caa91bf21dfc8ffb8c589d6e4dc0c2267818b4cc2792857706206
+ url: "https://pub.dev"
source: hosted
version: "0.4.16"
test_core:
dependency: transitive
description:
name: test_core
- url: "https://pub.dartlang.org"
+ sha256: "0ef9755ec6d746951ba0aabe62f874b707690b5ede0fecc818b138fcc9b14888"
+ url: "https://pub.dev"
source: hosted
version: "0.4.20"
typed_data:
dependency: transitive
description:
name: typed_data
- url: "https://pub.dartlang.org"
+ sha256: "26f87ade979c47a150c9eaab93ccd2bebe70a27dc0b4b29517f2904f04eb11a5"
+ url: "https://pub.dev"
source: hosted
version: "1.3.1"
vm_service:
dependency: transitive
description:
name: vm_service
- url: "https://pub.dartlang.org"
+ sha256: e7fb6c2282f7631712b69c19d1bff82f3767eea33a2321c14fa59ad67ea391c7
+ url: "https://pub.dev"
source: hosted
version: "9.4.0"
watcher:
dependency: transitive
description:
name: watcher
- url: "https://pub.dartlang.org"
+ sha256: "6a7f46926b01ce81bfc339da6a7f20afbe7733eff9846f6d6a5466aa4c6667c0"
+ url: "https://pub.dev"
source: hosted
version: "1.0.2"
web_socket_channel:
dependency: transitive
description:
name: web_socket_channel
- url: "https://pub.dartlang.org"
+ sha256: "3a969ddcc204a3e34e863d204b29c0752716f78b6f9cc8235083208d268a4ccd"
+ url: "https://pub.dev"
source: hosted
version: "2.2.0"
webkit_inspection_protocol:
dependency: transitive
description:
name: webkit_inspection_protocol
- url: "https://pub.dartlang.org"
+ sha256: "67d3a8b6c79e1987d19d848b0892e582dbb0c66c57cc1fef58a177dd2aa2823d"
+ url: "https://pub.dev"
source: hosted
version: "1.2.0"
yaml:
dependency: transitive
description:
name: yaml
- url: "https://pub.dartlang.org"
+ sha256: "23812a9b125b48d4007117254bca50abb6c712352927eece9e155207b1db2370"
+ url: "https://pub.dev"
source: hosted
version: "3.1.1"
sdks:
- dart: ">=2.18.0 <3.0.0"
+ dart: ">=2.18.0 <4.0.0"
diff --git a/dashboard/pubspec.lock b/dashboard/pubspec.lock
index da03b86..261a251 100644
--- a/dashboard/pubspec.lock
+++ b/dashboard/pubspec.lock
@@ -5,168 +5,192 @@
dependency: transitive
description:
name: _fe_analyzer_shared
- url: "https://pub.dartlang.org"
+ sha256: "3444216bfd127af50bbe4862d8843ed44db946dd933554f0d7285e89f10e28ac"
+ url: "https://pub.dev"
source: hosted
- version: "46.0.0"
+ version: "50.0.0"
analyzer:
dependency: transitive
description:
name: analyzer
- url: "https://pub.dartlang.org"
+ sha256: "68796c31f510c8455a06fed75fc97d8e5ad04d324a830322ab3efc9feb6201c1"
+ url: "https://pub.dev"
source: hosted
- version: "4.6.0"
+ version: "5.2.0"
args:
dependency: transitive
description:
name: args
- url: "https://pub.dartlang.org"
+ sha256: b003c3098049a51720352d219b0bb5f219b60fbfb68e7a4748139a06a5676515
+ url: "https://pub.dev"
source: hosted
version: "2.3.1"
async:
dependency: transitive
description:
name: async
- url: "https://pub.dartlang.org"
+ sha256: "271b8899fc99f9df4f4ed419fa14e2fff392c7b2c162fbb87b222e2e963ddc73"
+ url: "https://pub.dev"
source: hosted
version: "2.9.0"
boolean_selector:
dependency: transitive
description:
name: boolean_selector
- url: "https://pub.dartlang.org"
+ sha256: "5bbf32bc9e518d41ec49718e2931cd4527292c9b0c6d2dffcf7fe6b9a8a8cf72"
+ url: "https://pub.dev"
source: hosted
version: "2.1.0"
build:
dependency: transitive
description:
name: build
- url: "https://pub.dartlang.org"
+ sha256: "3fbda25365741f8251b39f3917fb3c8e286a96fd068a5a242e11c2012d495777"
+ url: "https://pub.dev"
source: hosted
- version: "2.3.0"
+ version: "2.3.1"
build_config:
dependency: transitive
description:
name: build_config
- url: "https://pub.dartlang.org"
+ sha256: bf80fcfb46a29945b423bd9aad884590fb1dc69b330a4d4700cac476af1708d1
+ url: "https://pub.dev"
source: hosted
- version: "1.1.0"
+ version: "1.1.1"
build_daemon:
dependency: transitive
description:
name: build_daemon
- url: "https://pub.dartlang.org"
+ sha256: "6bc5544ea6ce4428266e7ea680e945c68806c4aae2da0eb5e9ccf38df8d6acbf"
+ url: "https://pub.dev"
source: hosted
version: "3.1.0"
build_resolvers:
dependency: transitive
description:
name: build_resolvers
- url: "https://pub.dartlang.org"
+ sha256: "7c35a3a7868626257d8aee47b51c26b9dba11eaddf3431117ed2744951416aab"
+ url: "https://pub.dev"
source: hosted
- version: "2.0.9"
+ version: "2.1.0"
build_runner:
dependency: "direct dev"
description:
name: build_runner
- url: "https://pub.dartlang.org"
+ sha256: "6f48c61a9dcd2c3a9e62d3dcdab1ba382790e2f31026288cbabe55d6003c9c23"
+ url: "https://pub.dev"
source: hosted
version: "2.3.2"
build_runner_core:
dependency: transitive
description:
name: build_runner_core
- url: "https://pub.dartlang.org"
+ sha256: "14febe0f5bac5ae474117a36099b4de6f1dbc52df6c5e55534b3da9591bf4292"
+ url: "https://pub.dev"
source: hosted
- version: "7.2.3"
+ version: "7.2.7"
built_collection:
dependency: transitive
description:
name: built_collection
- url: "https://pub.dartlang.org"
+ sha256: "376e3dd27b51ea877c28d525560790aee2e6fbb5f20e2f85d5081027d94e2100"
+ url: "https://pub.dev"
source: hosted
version: "5.1.1"
built_value:
dependency: transitive
description:
name: built_value
- url: "https://pub.dartlang.org"
+ sha256: "59e08b0079bb75f7e27392498e26339387c1089c6bd58525a14eb8508637277b"
+ url: "https://pub.dev"
source: hosted
- version: "8.4.1"
+ version: "8.4.2"
characters:
dependency: transitive
description:
name: characters
- url: "https://pub.dartlang.org"
+ sha256: e6a326c8af69605aec75ed6c187d06b349707a27fbff8222ca9cc2cff167975c
+ url: "https://pub.dev"
source: hosted
version: "1.2.1"
checked_yaml:
dependency: transitive
description:
name: checked_yaml
- url: "https://pub.dartlang.org"
+ sha256: dd007e4fb8270916820a0d66e24f619266b60773cddd082c6439341645af2659
+ url: "https://pub.dev"
source: hosted
version: "2.0.1"
clock:
dependency: transitive
description:
name: clock
- url: "https://pub.dartlang.org"
+ sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf
+ url: "https://pub.dev"
source: hosted
version: "1.1.1"
code_builder:
dependency: transitive
description:
name: code_builder
- url: "https://pub.dartlang.org"
+ sha256: "02ce3596b459c666530f045ad6f96209474e8fee6e4855940a3cee65fb872ec5"
+ url: "https://pub.dev"
source: hosted
- version: "4.2.0"
+ version: "4.3.0"
collection:
dependency: "direct main"
description:
name: collection
- url: "https://pub.dartlang.org"
+ sha256: cfc915e6923fe5ce6e153b0723c753045de46de1b4d63771530504004a45fae0
+ url: "https://pub.dev"
source: hosted
- version: "1.16.0"
+ version: "1.17.0"
convert:
dependency: transitive
description:
name: convert
- url: "https://pub.dartlang.org"
+ sha256: "0f08b14755d163f6e2134cb58222dd25ea2a2ee8a195e53983d57c075324d592"
+ url: "https://pub.dev"
source: hosted
- version: "3.0.2"
+ version: "3.1.1"
crypto:
dependency: transitive
description:
name: crypto
- url: "https://pub.dartlang.org"
+ sha256: aa274aa7774f8964e4f4f38cc994db7b6158dd36e9187aaceaddc994b35c6c67
+ url: "https://pub.dev"
source: hosted
version: "3.0.2"
dart_style:
dependency: transitive
description:
name: dart_style
- url: "https://pub.dartlang.org"
+ sha256: "7a03456c3490394c8e7665890333e91ae8a49be43542b616e414449ac358acd4"
+ url: "https://pub.dev"
source: hosted
- version: "2.2.3"
+ version: "2.2.4"
fake_async:
dependency: transitive
description:
name: fake_async
- url: "https://pub.dartlang.org"
+ sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78"
+ url: "https://pub.dev"
source: hosted
version: "1.3.1"
file:
dependency: transitive
description:
name: file
- url: "https://pub.dartlang.org"
+ sha256: "1b92bec4fc2a72f59a8e15af5f52cd441e4a7860b49499d69dfa817af20e925d"
+ url: "https://pub.dev"
source: hosted
version: "6.1.4"
fixnum:
dependency: "direct main"
description:
name: fixnum
- url: "https://pub.dartlang.org"
+ sha256: "04be3e934c52e082558cc9ee21f42f5c1cd7a1262f4c63cd0357c08d5bba81ec"
+ url: "https://pub.dev"
source: hosted
version: "1.0.1"
flutter:
@@ -178,14 +202,16 @@
dependency: "direct main"
description:
name: flutter_app_icons
- url: "https://pub.dartlang.org"
+ sha256: "908ebb6cb6adab5ee10a7fb3242d619b644e02f96625cf4c61896ce0b0ea5036"
+ url: "https://pub.dev"
source: hosted
version: "0.0.8"
flutter_lints:
dependency: "direct dev"
description:
name: flutter_lints
- url: "https://pub.dartlang.org"
+ sha256: aeb0b80a8b3709709c9cc496cdc027c5b3216796bc0af0ce1007eaf24464fd4c
+ url: "https://pub.dev"
source: hosted
version: "2.0.1"
flutter_test:
@@ -202,231 +228,264 @@
dependency: transitive
description:
name: frontend_server_client
- url: "https://pub.dartlang.org"
+ sha256: "82715f8041a85a534a7bf64400b2ee0bb3d594ccf695d97c0bb017259657ff5d"
+ url: "https://pub.dev"
source: hosted
- version: "3.0.0"
+ version: "3.1.0"
glob:
dependency: transitive
description:
name: glob
- url: "https://pub.dartlang.org"
+ sha256: c51b4fdfee4d281f49b8c957f1add91b815473597f76bcf07377987f66a55729
+ url: "https://pub.dev"
source: hosted
version: "2.1.0"
google_sign_in:
dependency: "direct main"
description:
name: google_sign_in
- url: "https://pub.dartlang.org"
+ sha256: d3e31052ce068d0fe2eb9975ee4409266a044592cf67737ec230be07343c6bdf
+ url: "https://pub.dev"
source: hosted
version: "5.4.2"
google_sign_in_android:
dependency: transitive
description:
name: google_sign_in_android
- url: "https://pub.dartlang.org"
+ sha256: "25449f21c7c8c28520576cab82e58fbb33b11055ebf69189cf255e2611cac6da"
+ url: "https://pub.dev"
source: hosted
version: "6.1.1"
google_sign_in_ios:
dependency: transitive
description:
name: google_sign_in_ios
- url: "https://pub.dartlang.org"
+ sha256: "673c0b07eb512ea7097df316a4706e6fe9ccef7c7c258761005e8aa420fe955f"
+ url: "https://pub.dev"
source: hosted
version: "5.5.0"
google_sign_in_platform_interface:
dependency: transitive
description:
name: google_sign_in_platform_interface
- url: "https://pub.dartlang.org"
+ sha256: "61306213c76bb8170c3aa20017df296c0131c24d7f6c0cc7e2eeaeac34c9f457"
+ url: "https://pub.dev"
source: hosted
- version: "2.2.0"
+ version: "2.3.0"
google_sign_in_web:
dependency: transitive
description:
name: google_sign_in_web
- url: "https://pub.dartlang.org"
+ sha256: "5b35c221169a7b3e0fc15043ac09102ef542300ef92f2e1f05d5d8efde263af5"
+ url: "https://pub.dev"
source: hosted
version: "0.10.2"
graphs:
dependency: transitive
description:
name: graphs
- url: "https://pub.dartlang.org"
+ sha256: f9e130f3259f52d26f0cfc0e964513796dafed572fa52e45d2f8d6ca14db39b2
+ url: "https://pub.dev"
source: hosted
- version: "2.1.0"
+ version: "2.2.0"
http:
dependency: "direct main"
description:
name: http
- url: "https://pub.dartlang.org"
+ sha256: "6aa2946395183537c8b880962d935877325d6a09a2867c3970c05c0fed6ac482"
+ url: "https://pub.dev"
source: hosted
version: "0.13.5"
http_multi_server:
dependency: transitive
description:
name: http_multi_server
- url: "https://pub.dartlang.org"
+ sha256: "97486f20f9c2f7be8f514851703d0119c3596d14ea63227af6f7a481ef2b2f8b"
+ url: "https://pub.dev"
source: hosted
version: "3.2.1"
http_parser:
dependency: transitive
description:
name: http_parser
- url: "https://pub.dartlang.org"
+ sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b"
+ url: "https://pub.dev"
source: hosted
- version: "4.0.1"
+ version: "4.0.2"
io:
dependency: transitive
description:
name: io
- url: "https://pub.dartlang.org"
+ sha256: "0d4c73c3653ab85bf696d51a9657604c900a370549196a91f33e4c39af760852"
+ url: "https://pub.dev"
source: hosted
version: "1.0.3"
js:
dependency: transitive
description:
name: js
- url: "https://pub.dartlang.org"
+ sha256: "5528c2f391ededb7775ec1daa69e65a2d61276f7552de2b5f7b8d34ee9fd4ab7"
+ url: "https://pub.dev"
source: hosted
- version: "0.6.4"
+ version: "0.6.5"
json_annotation:
dependency: transitive
description:
name: json_annotation
- url: "https://pub.dartlang.org"
+ sha256: "3520fa844009431b5d4491a5a778603520cdc399ab3406332dcc50f93547258c"
+ url: "https://pub.dev"
source: hosted
- version: "4.6.0"
+ version: "4.7.0"
lints:
dependency: transitive
description:
name: lints
- url: "https://pub.dartlang.org"
+ sha256: "5e4a9cd06d447758280a8ac2405101e0e2094d2a1dbdd3756aec3fe7775ba593"
+ url: "https://pub.dev"
source: hosted
- version: "2.0.0"
+ version: "2.0.1"
logging:
dependency: transitive
description:
name: logging
- url: "https://pub.dartlang.org"
+ sha256: c0bbfe94d46aedf9b8b3e695cf3bd48c8e14b35e3b2c639e0aa7755d589ba946
+ url: "https://pub.dev"
source: hosted
- version: "1.0.2"
+ version: "1.1.0"
matcher:
dependency: transitive
description:
name: matcher
- url: "https://pub.dartlang.org"
+ sha256: "80c2989398773fa06e2457e9ff08580f24e9858b28462a722241cb53e5613478"
+ url: "https://pub.dev"
source: hosted
version: "0.12.12"
material_color_utilities:
dependency: transitive
description:
name: material_color_utilities
- url: "https://pub.dartlang.org"
+ sha256: d92141dc6fe1dad30722f9aa826c7fbc896d021d792f80678280601aff8cf724
+ url: "https://pub.dev"
source: hosted
version: "0.2.0"
meta:
dependency: transitive
description:
name: meta
- url: "https://pub.dartlang.org"
+ sha256: "6c268b42ed578a53088d834796959e4a1814b5e9e164f147f580a386e5decf42"
+ url: "https://pub.dev"
source: hosted
version: "1.8.0"
mime:
dependency: transitive
description:
name: mime
- url: "https://pub.dartlang.org"
+ sha256: dab22e92b41aa1255ea90ddc4bc2feaf35544fd0728e209638cad041a6e3928a
+ url: "https://pub.dev"
source: hosted
version: "1.0.2"
mockito:
dependency: "direct dev"
description:
name: mockito
- url: "https://pub.dartlang.org"
+ sha256: "2a8a17b82b1bde04d514e75d90d634a0ac23f6cb4991f6098009dd56836aeafe"
+ url: "https://pub.dev"
source: hosted
- version: "5.3.0"
+ version: "5.3.2"
nested:
dependency: transitive
description:
name: nested
- url: "https://pub.dartlang.org"
+ sha256: "03bac4c528c64c95c722ec99280375a6f2fc708eec17c7b3f07253b626cd2a20"
+ url: "https://pub.dev"
source: hosted
version: "1.0.0"
package_config:
dependency: transitive
description:
name: package_config
- url: "https://pub.dartlang.org"
+ sha256: "1c5b77ccc91e4823a5af61ee74e6b972db1ef98c2ff5a18d3161c982a55448bd"
+ url: "https://pub.dev"
source: hosted
version: "2.1.0"
path:
dependency: "direct dev"
description:
name: path
- url: "https://pub.dartlang.org"
+ sha256: db9d4f58c908a4ba5953fcee2ae317c94889433e5024c27ce74a37f94267945b
+ url: "https://pub.dev"
source: hosted
version: "1.8.2"
plugin_platform_interface:
dependency: transitive
description:
name: plugin_platform_interface
- url: "https://pub.dartlang.org"
+ sha256: dbf0f707c78beedc9200146ad3cb0ab4d5da13c246336987be6940f026500d3a
+ url: "https://pub.dev"
source: hosted
- version: "2.1.2"
+ version: "2.1.3"
pool:
dependency: transitive
description:
name: pool
- url: "https://pub.dartlang.org"
+ sha256: "20fe868b6314b322ea036ba325e6fc0711a22948856475e2c2b6306e8ab39c2a"
+ url: "https://pub.dev"
source: hosted
version: "1.5.1"
protobuf:
dependency: "direct main"
description:
name: protobuf
- url: "https://pub.dartlang.org"
+ sha256: "01dd9bd0fa02548bf2ceee13545d4a0ec6046459d847b6b061d8a27237108a08"
+ url: "https://pub.dev"
source: hosted
version: "2.1.0"
provider:
dependency: "direct main"
description:
name: provider
- url: "https://pub.dartlang.org"
+ sha256: e1e7413d70444ea3096815a60fe5da1b11bda8a9dc4769252cc82c53536f8bcc
+ url: "https://pub.dev"
source: hosted
version: "6.0.4"
pub_semver:
dependency: transitive
description:
name: pub_semver
- url: "https://pub.dartlang.org"
+ sha256: b959af0a045c3484c4a8f4997731f5bfe4cac60d732fd8ce35b351f2d6a459fe
+ url: "https://pub.dev"
source: hosted
- version: "2.1.1"
+ version: "2.1.2"
pubspec_parse:
dependency: transitive
description:
name: pubspec_parse
- url: "https://pub.dartlang.org"
+ sha256: "75f6614d6dde2dc68948dffbaa4fe5dae32cd700eb9fb763fe11dfb45a3c4d0a"
+ url: "https://pub.dev"
source: hosted
version: "1.2.1"
quiver:
dependency: transitive
description:
name: quiver
- url: "https://pub.dartlang.org"
+ sha256: "93982981971e812c94d4a6fa3a57b89f9ec12b38b6380cd3c1370c3b01e4580e"
+ url: "https://pub.dev"
source: hosted
version: "3.1.0"
shelf:
dependency: transitive
description:
name: shelf
- url: "https://pub.dartlang.org"
+ sha256: c24a96135a2ccd62c64b69315a14adc5c3419df63b4d7c05832a346fdb73682c
+ url: "https://pub.dev"
source: hosted
- version: "1.3.2"
+ version: "1.4.0"
shelf_web_socket:
dependency: transitive
description:
name: shelf_web_socket
- url: "https://pub.dartlang.org"
+ sha256: "6db16374bc3497d21aa0eebe674d3db9fdf82082aac0f04dc7b44e4af5b08afc"
+ url: "https://pub.dev"
source: hosted
version: "1.0.2"
sky_engine:
@@ -438,163 +497,186 @@
dependency: transitive
description:
name: source_gen
- url: "https://pub.dartlang.org"
+ sha256: "2d79738b6bbf38a43920e2b8d189e9a3ce6cc201f4b8fc76be5e4fe377b1c38d"
+ url: "https://pub.dev"
source: hosted
- version: "1.2.2"
+ version: "1.2.6"
source_span:
dependency: transitive
description:
name: source_span
- url: "https://pub.dartlang.org"
+ sha256: dd904f795d4b4f3b870833847c461801f6750a9fa8e61ea5ac53f9422b31f250
+ url: "https://pub.dev"
source: hosted
version: "1.9.1"
stack_trace:
dependency: transitive
description:
name: stack_trace
- url: "https://pub.dartlang.org"
+ sha256: c3c7d8edb15bee7f0f74debd4b9c5f3c2ea86766fe4178eb2a18eb30a0bdaed5
+ url: "https://pub.dev"
source: hosted
- version: "1.10.0"
+ version: "1.11.0"
stream_channel:
dependency: transitive
description:
name: stream_channel
- url: "https://pub.dartlang.org"
+ sha256: "83615bee9045c1d322bbbd1ba209b7a749c2cbcdcb3fdd1df8eb488b3279c1c8"
+ url: "https://pub.dev"
source: hosted
version: "2.1.1"
stream_transform:
dependency: transitive
description:
name: stream_transform
- url: "https://pub.dartlang.org"
+ sha256: f1d172e22a5432c042b5adfa9aff621372e4292231d9d73ad00f486ad01c2395
+ url: "https://pub.dev"
source: hosted
- version: "2.0.0"
+ version: "2.0.1"
string_scanner:
dependency: transitive
description:
name: string_scanner
- url: "https://pub.dartlang.org"
+ sha256: "862015c5db1f3f3c4ea3b94dc2490363a84262994b88902315ed74be1155612f"
+ url: "https://pub.dev"
source: hosted
version: "1.1.1"
term_glyph:
dependency: transitive
description:
name: term_glyph
- url: "https://pub.dartlang.org"
+ sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84
+ url: "https://pub.dev"
source: hosted
version: "1.2.1"
test_api:
dependency: transitive
description:
name: test_api
- url: "https://pub.dartlang.org"
+ sha256: ceeddf59d613e862e77f4b506cfc2945ac9637ce0b4c00f4f4c1ac639f3e9731
+ url: "https://pub.dev"
source: hosted
version: "0.4.14"
timing:
dependency: transitive
description:
name: timing
- url: "https://pub.dartlang.org"
+ sha256: c386d07d7f5efc613479a7c4d9d64b03710b03cfaa7e8ad5f2bfb295a1f0dfad
+ url: "https://pub.dev"
source: hosted
version: "1.0.0"
truncate:
dependency: "direct main"
description:
name: truncate
- url: "https://pub.dartlang.org"
+ sha256: ac4f0c447d440886e53dc583423d2ce963add32160bf7790d5f72cbda5dc76c2
+ url: "https://pub.dev"
source: hosted
version: "3.0.1"
typed_data:
dependency: transitive
description:
name: typed_data
- url: "https://pub.dartlang.org"
+ sha256: "26f87ade979c47a150c9eaab93ccd2bebe70a27dc0b4b29517f2904f04eb11a5"
+ url: "https://pub.dev"
source: hosted
version: "1.3.1"
url_launcher:
dependency: "direct main"
description:
name: url_launcher
- url: "https://pub.dartlang.org"
+ sha256: "568176fc8ab5ac1d88ff0db8ff28659d103851670dda55e83b485664c2309299"
+ url: "https://pub.dev"
source: hosted
version: "6.1.6"
url_launcher_android:
dependency: transitive
description:
name: url_launcher_android
- url: "https://pub.dartlang.org"
+ sha256: "2514dc16ac169adf55159268d7bf70317d9f2fc9ef5bb02020bb7ad710c0aeb4"
+ url: "https://pub.dev"
source: hosted
- version: "6.0.17"
+ version: "6.0.21"
url_launcher_ios:
dependency: transitive
description:
name: url_launcher_ios
- url: "https://pub.dartlang.org"
+ sha256: "6ba7dddee26c9fae27c9203c424631109d73c8fa26cfa7bc3e35e751cb87f62e"
+ url: "https://pub.dev"
source: hosted
version: "6.0.17"
url_launcher_linux:
dependency: transitive
description:
name: url_launcher_linux
- url: "https://pub.dartlang.org"
+ sha256: "360fa359ab06bcb4f7c5cd3123a2a9a4d3364d4575d27c4b33468bd4497dd094"
+ url: "https://pub.dev"
source: hosted
version: "3.0.1"
url_launcher_macos:
dependency: transitive
description:
name: url_launcher_macos
- url: "https://pub.dartlang.org"
+ sha256: a9b3ea9043eabfaadfa3fb89de67a11210d85569086d22b3854484beab8b3978
+ url: "https://pub.dev"
source: hosted
version: "3.0.1"
url_launcher_platform_interface:
dependency: "direct dev"
description:
name: url_launcher_platform_interface
- url: "https://pub.dartlang.org"
+ sha256: "4eae912628763eb48fc214522e58e942fd16ce195407dbf45638239523c759a6"
+ url: "https://pub.dev"
source: hosted
version: "2.1.1"
url_launcher_web:
dependency: transitive
description:
name: url_launcher_web
- url: "https://pub.dartlang.org"
+ sha256: "5669882643b96bb6d5786637cac727c6e918a790053b09245fd4513b8a07df2a"
+ url: "https://pub.dev"
source: hosted
version: "2.0.13"
url_launcher_windows:
dependency: transitive
description:
name: url_launcher_windows
- url: "https://pub.dartlang.org"
+ sha256: e3c3b16d3104260c10eea3b0e34272aaa57921f83148b0619f74c2eced9b7ef1
+ url: "https://pub.dev"
source: hosted
version: "3.0.1"
vector_math:
dependency: transitive
description:
name: vector_math
- url: "https://pub.dartlang.org"
+ sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803"
+ url: "https://pub.dev"
source: hosted
version: "2.1.4"
watcher:
dependency: transitive
description:
name: watcher
- url: "https://pub.dartlang.org"
+ sha256: "6a7f46926b01ce81bfc339da6a7f20afbe7733eff9846f6d6a5466aa4c6667c0"
+ url: "https://pub.dev"
source: hosted
- version: "1.0.1"
+ version: "1.0.2"
web_socket_channel:
dependency: transitive
description:
name: web_socket_channel
- url: "https://pub.dartlang.org"
+ sha256: "3a969ddcc204a3e34e863d204b29c0752716f78b6f9cc8235083208d268a4ccd"
+ url: "https://pub.dev"
source: hosted
version: "2.2.0"
yaml:
dependency: transitive
description:
name: yaml
- url: "https://pub.dartlang.org"
+ sha256: "23812a9b125b48d4007117254bca50abb6c712352927eece9e155207b1db2370"
+ url: "https://pub.dev"
source: hosted
version: "3.1.1"
sdks:
- dart: ">=2.18.0 <3.0.0"
+ dart: ">=2.18.0 <4.0.0"
flutter: ">=2.10.0"
diff --git a/device_doctor/pubspec.lock b/device_doctor/pubspec.lock
index ecb752d..548ac72 100644
--- a/device_doctor/pubspec.lock
+++ b/device_doctor/pubspec.lock
@@ -5,484 +5,553 @@
dependency: transitive
description:
name: _fe_analyzer_shared
- url: "https://pub.dartlang.org"
+ sha256: "3444216bfd127af50bbe4862d8843ed44db946dd933554f0d7285e89f10e28ac"
+ url: "https://pub.dev"
source: hosted
version: "50.0.0"
analyzer:
dependency: "direct main"
description:
name: analyzer
- url: "https://pub.dartlang.org"
+ sha256: "68796c31f510c8455a06fed75fc97d8e5ad04d324a830322ab3efc9feb6201c1"
+ url: "https://pub.dev"
source: hosted
version: "5.2.0"
args:
dependency: "direct main"
description:
name: args
- url: "https://pub.dartlang.org"
+ sha256: b003c3098049a51720352d219b0bb5f219b60fbfb68e7a4748139a06a5676515
+ url: "https://pub.dev"
source: hosted
version: "2.3.1"
async:
dependency: transitive
description:
name: async
- url: "https://pub.dartlang.org"
+ sha256: bfe67ef28df125b7dddcea62755991f807aa39a2492a23e1550161692950bbe0
+ url: "https://pub.dev"
source: hosted
version: "2.10.0"
boolean_selector:
dependency: transitive
description:
name: boolean_selector
- url: "https://pub.dartlang.org"
+ sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66"
+ url: "https://pub.dev"
source: hosted
version: "2.1.1"
build:
dependency: transitive
description:
name: build
- url: "https://pub.dartlang.org"
+ sha256: "3fbda25365741f8251b39f3917fb3c8e286a96fd068a5a242e11c2012d495777"
+ url: "https://pub.dev"
source: hosted
version: "2.3.1"
build_config:
dependency: transitive
description:
name: build_config
- url: "https://pub.dartlang.org"
+ sha256: bf80fcfb46a29945b423bd9aad884590fb1dc69b330a4d4700cac476af1708d1
+ url: "https://pub.dev"
source: hosted
version: "1.1.1"
build_daemon:
dependency: transitive
description:
name: build_daemon
- url: "https://pub.dartlang.org"
+ sha256: "6bc5544ea6ce4428266e7ea680e945c68806c4aae2da0eb5e9ccf38df8d6acbf"
+ url: "https://pub.dev"
source: hosted
version: "3.1.0"
build_resolvers:
dependency: transitive
description:
name: build_resolvers
- url: "https://pub.dartlang.org"
+ sha256: "7c35a3a7868626257d8aee47b51c26b9dba11eaddf3431117ed2744951416aab"
+ url: "https://pub.dev"
source: hosted
version: "2.1.0"
build_runner:
dependency: "direct dev"
description:
name: build_runner
- url: "https://pub.dartlang.org"
+ sha256: "6f48c61a9dcd2c3a9e62d3dcdab1ba382790e2f31026288cbabe55d6003c9c23"
+ url: "https://pub.dev"
source: hosted
version: "2.3.2"
build_runner_core:
dependency: transitive
description:
name: build_runner_core
- url: "https://pub.dartlang.org"
+ sha256: "14febe0f5bac5ae474117a36099b4de6f1dbc52df6c5e55534b3da9591bf4292"
+ url: "https://pub.dev"
source: hosted
version: "7.2.7"
built_collection:
dependency: transitive
description:
name: built_collection
- url: "https://pub.dartlang.org"
+ sha256: "376e3dd27b51ea877c28d525560790aee2e6fbb5f20e2f85d5081027d94e2100"
+ url: "https://pub.dev"
source: hosted
version: "5.1.1"
built_value:
dependency: transitive
description:
name: built_value
- url: "https://pub.dartlang.org"
+ sha256: "59e08b0079bb75f7e27392498e26339387c1089c6bd58525a14eb8508637277b"
+ url: "https://pub.dev"
source: hosted
version: "8.4.2"
checked_yaml:
dependency: transitive
description:
name: checked_yaml
- url: "https://pub.dartlang.org"
+ sha256: dd007e4fb8270916820a0d66e24f619266b60773cddd082c6439341645af2659
+ url: "https://pub.dev"
source: hosted
version: "2.0.1"
clock:
dependency: transitive
description:
name: clock
- url: "https://pub.dartlang.org"
+ sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf
+ url: "https://pub.dev"
source: hosted
version: "1.1.1"
code_builder:
dependency: transitive
description:
name: code_builder
- url: "https://pub.dartlang.org"
+ sha256: "02ce3596b459c666530f045ad6f96209474e8fee6e4855940a3cee65fb872ec5"
+ url: "https://pub.dev"
source: hosted
version: "4.3.0"
collection:
dependency: transitive
description:
name: collection
- url: "https://pub.dartlang.org"
+ sha256: cfc915e6923fe5ce6e153b0723c753045de46de1b4d63771530504004a45fae0
+ url: "https://pub.dev"
source: hosted
version: "1.17.0"
convert:
dependency: transitive
description:
name: convert
- url: "https://pub.dartlang.org"
+ sha256: "0f08b14755d163f6e2134cb58222dd25ea2a2ee8a195e53983d57c075324d592"
+ url: "https://pub.dev"
source: hosted
version: "3.1.1"
coverage:
dependency: transitive
description:
name: coverage
- url: "https://pub.dartlang.org"
+ sha256: d2494157c32b303f47dedee955b1479f2979c4ff66934eb7c0def44fd9e0267a
+ url: "https://pub.dev"
source: hosted
version: "1.6.1"
crypto:
dependency: transitive
description:
name: crypto
- url: "https://pub.dartlang.org"
+ sha256: aa274aa7774f8964e4f4f38cc994db7b6158dd36e9187aaceaddc994b35c6c67
+ url: "https://pub.dev"
source: hosted
version: "3.0.2"
dart_style:
dependency: transitive
description:
name: dart_style
- url: "https://pub.dartlang.org"
+ sha256: "7a03456c3490394c8e7665890333e91ae8a49be43542b616e414449ac358acd4"
+ url: "https://pub.dev"
source: hosted
version: "2.2.4"
fake_async:
dependency: "direct dev"
description:
name: fake_async
- url: "https://pub.dartlang.org"
+ sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78"
+ url: "https://pub.dev"
source: hosted
version: "1.3.1"
file:
dependency: transitive
description:
name: file
- url: "https://pub.dartlang.org"
+ sha256: "1b92bec4fc2a72f59a8e15af5f52cd441e4a7860b49499d69dfa817af20e925d"
+ url: "https://pub.dev"
source: hosted
version: "6.1.4"
fixnum:
dependency: transitive
description:
name: fixnum
- url: "https://pub.dartlang.org"
+ sha256: "04be3e934c52e082558cc9ee21f42f5c1cd7a1262f4c63cd0357c08d5bba81ec"
+ url: "https://pub.dev"
source: hosted
version: "1.0.1"
frontend_server_client:
dependency: transitive
description:
name: frontend_server_client
- url: "https://pub.dartlang.org"
+ sha256: "82715f8041a85a534a7bf64400b2ee0bb3d594ccf695d97c0bb017259657ff5d"
+ url: "https://pub.dev"
source: hosted
version: "3.1.0"
glob:
dependency: transitive
description:
name: glob
- url: "https://pub.dartlang.org"
+ sha256: c51b4fdfee4d281f49b8c957f1add91b815473597f76bcf07377987f66a55729
+ url: "https://pub.dev"
source: hosted
version: "2.1.0"
graphs:
dependency: transitive
description:
name: graphs
- url: "https://pub.dartlang.org"
+ sha256: f9e130f3259f52d26f0cfc0e964513796dafed572fa52e45d2f8d6ca14db39b2
+ url: "https://pub.dev"
source: hosted
version: "2.2.0"
http_multi_server:
dependency: transitive
description:
name: http_multi_server
- url: "https://pub.dartlang.org"
+ sha256: "97486f20f9c2f7be8f514851703d0119c3596d14ea63227af6f7a481ef2b2f8b"
+ url: "https://pub.dev"
source: hosted
version: "3.2.1"
http_parser:
dependency: transitive
description:
name: http_parser
- url: "https://pub.dartlang.org"
+ sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b"
+ url: "https://pub.dev"
source: hosted
version: "4.0.2"
io:
dependency: transitive
description:
name: io
- url: "https://pub.dartlang.org"
+ sha256: "0d4c73c3653ab85bf696d51a9657604c900a370549196a91f33e4c39af760852"
+ url: "https://pub.dev"
source: hosted
version: "1.0.3"
js:
dependency: transitive
description:
name: js
- url: "https://pub.dartlang.org"
+ sha256: "5528c2f391ededb7775ec1daa69e65a2d61276f7552de2b5f7b8d34ee9fd4ab7"
+ url: "https://pub.dev"
source: hosted
version: "0.6.5"
json_annotation:
dependency: transitive
description:
name: json_annotation
- url: "https://pub.dartlang.org"
+ sha256: "3520fa844009431b5d4491a5a778603520cdc399ab3406332dcc50f93547258c"
+ url: "https://pub.dev"
source: hosted
version: "4.7.0"
logging:
dependency: "direct main"
description:
name: logging
- url: "https://pub.dartlang.org"
+ sha256: c0bbfe94d46aedf9b8b3e695cf3bd48c8e14b35e3b2c639e0aa7755d589ba946
+ url: "https://pub.dev"
source: hosted
version: "1.1.0"
matcher:
dependency: transitive
description:
name: matcher
- url: "https://pub.dartlang.org"
+ sha256: "16db949ceee371e9b99d22f88fa3a73c4e59fd0afed0bd25fc336eb76c198b72"
+ url: "https://pub.dev"
source: hosted
version: "0.12.13"
meta:
dependency: "direct main"
description:
name: meta
- url: "https://pub.dartlang.org"
+ sha256: "6c268b42ed578a53088d834796959e4a1814b5e9e164f147f580a386e5decf42"
+ url: "https://pub.dev"
source: hosted
version: "1.8.0"
mime:
dependency: transitive
description:
name: mime
- url: "https://pub.dartlang.org"
+ sha256: dab22e92b41aa1255ea90ddc4bc2feaf35544fd0728e209638cad041a6e3928a
+ url: "https://pub.dev"
source: hosted
version: "1.0.2"
mockito:
dependency: "direct dev"
description:
name: mockito
- url: "https://pub.dartlang.org"
+ sha256: "2a8a17b82b1bde04d514e75d90d634a0ac23f6cb4991f6098009dd56836aeafe"
+ url: "https://pub.dev"
source: hosted
version: "5.3.2"
node_preamble:
dependency: transitive
description:
name: node_preamble
- url: "https://pub.dartlang.org"
+ sha256: "8ebdbaa3b96d5285d068f80772390d27c21e1fa10fb2df6627b1b9415043608d"
+ url: "https://pub.dev"
source: hosted
version: "2.0.1"
package_config:
dependency: transitive
description:
name: package_config
- url: "https://pub.dartlang.org"
+ sha256: "1c5b77ccc91e4823a5af61ee74e6b972db1ef98c2ff5a18d3161c982a55448bd"
+ url: "https://pub.dev"
source: hosted
version: "2.1.0"
path:
dependency: "direct main"
description:
name: path
- url: "https://pub.dartlang.org"
+ sha256: db9d4f58c908a4ba5953fcee2ae317c94889433e5024c27ce74a37f94267945b
+ url: "https://pub.dev"
source: hosted
version: "1.8.2"
platform:
dependency: transitive
description:
name: platform
- url: "https://pub.dartlang.org"
+ sha256: "4a451831508d7d6ca779f7ac6e212b4023dd5a7d08a27a63da33756410e32b76"
+ url: "https://pub.dev"
source: hosted
version: "3.1.0"
pool:
dependency: transitive
description:
name: pool
- url: "https://pub.dartlang.org"
+ sha256: "20fe868b6314b322ea036ba325e6fc0711a22948856475e2c2b6306e8ab39c2a"
+ url: "https://pub.dev"
source: hosted
version: "1.5.1"
process:
dependency: "direct main"
description:
name: process
- url: "https://pub.dartlang.org"
+ sha256: "53fd8db9cec1d37b0574e12f07520d582019cb6c44abf5479a01505099a34a09"
+ url: "https://pub.dev"
source: hosted
version: "4.2.4"
pub_semver:
dependency: transitive
description:
name: pub_semver
- url: "https://pub.dartlang.org"
+ sha256: b959af0a045c3484c4a8f4997731f5bfe4cac60d732fd8ce35b351f2d6a459fe
+ url: "https://pub.dev"
source: hosted
version: "2.1.2"
pubspec_parse:
dependency: transitive
description:
name: pubspec_parse
- url: "https://pub.dartlang.org"
+ sha256: "75f6614d6dde2dc68948dffbaa4fe5dae32cd700eb9fb763fe11dfb45a3c4d0a"
+ url: "https://pub.dev"
source: hosted
version: "1.2.1"
retry:
dependency: "direct main"
description:
name: retry
- url: "https://pub.dartlang.org"
+ sha256: "45dfeebaf095b606fdb9dbfb4c114cc204449bc274783b452658365e03afdbab"
+ url: "https://pub.dev"
source: hosted
version: "3.1.0"
shelf:
dependency: transitive
description:
name: shelf
- url: "https://pub.dartlang.org"
+ sha256: c24a96135a2ccd62c64b69315a14adc5c3419df63b4d7c05832a346fdb73682c
+ url: "https://pub.dev"
source: hosted
version: "1.4.0"
shelf_packages_handler:
dependency: transitive
description:
name: shelf_packages_handler
- url: "https://pub.dartlang.org"
+ sha256: aef74dc9195746a384843102142ab65b6a4735bb3beea791e63527b88cc83306
+ url: "https://pub.dev"
source: hosted
version: "3.0.1"
shelf_static:
dependency: transitive
description:
name: shelf_static
- url: "https://pub.dartlang.org"
+ sha256: e792b76b96a36d4a41b819da593aff4bdd413576b3ba6150df5d8d9996d2e74c
+ url: "https://pub.dev"
source: hosted
version: "1.1.1"
shelf_web_socket:
dependency: transitive
description:
name: shelf_web_socket
- url: "https://pub.dartlang.org"
+ sha256: "6db16374bc3497d21aa0eebe674d3db9fdf82082aac0f04dc7b44e4af5b08afc"
+ url: "https://pub.dev"
source: hosted
version: "1.0.2"
source_gen:
dependency: transitive
description:
name: source_gen
- url: "https://pub.dartlang.org"
+ sha256: "2d79738b6bbf38a43920e2b8d189e9a3ce6cc201f4b8fc76be5e4fe377b1c38d"
+ url: "https://pub.dev"
source: hosted
version: "1.2.6"
source_map_stack_trace:
dependency: transitive
description:
name: source_map_stack_trace
- url: "https://pub.dartlang.org"
+ sha256: "84cf769ad83aa6bb61e0aa5a18e53aea683395f196a6f39c4c881fb90ed4f7ae"
+ url: "https://pub.dev"
source: hosted
version: "2.1.1"
source_maps:
dependency: transitive
description:
name: source_maps
- url: "https://pub.dartlang.org"
+ sha256: "490098075234dcedb83c5d949b4c93dad5e6b7702748de000be2b57b8e6b2427"
+ url: "https://pub.dev"
source: hosted
version: "0.10.11"
source_span:
dependency: transitive
description:
name: source_span
- url: "https://pub.dartlang.org"
+ sha256: dd904f795d4b4f3b870833847c461801f6750a9fa8e61ea5ac53f9422b31f250
+ url: "https://pub.dev"
source: hosted
version: "1.9.1"
stack_trace:
dependency: transitive
description:
name: stack_trace
- url: "https://pub.dartlang.org"
+ sha256: c3c7d8edb15bee7f0f74debd4b9c5f3c2ea86766fe4178eb2a18eb30a0bdaed5
+ url: "https://pub.dev"
source: hosted
version: "1.11.0"
stream_channel:
dependency: transitive
description:
name: stream_channel
- url: "https://pub.dartlang.org"
+ sha256: "83615bee9045c1d322bbbd1ba209b7a749c2cbcdcb3fdd1df8eb488b3279c1c8"
+ url: "https://pub.dev"
source: hosted
version: "2.1.1"
stream_transform:
dependency: transitive
description:
name: stream_transform
- url: "https://pub.dartlang.org"
+ sha256: f1d172e22a5432c042b5adfa9aff621372e4292231d9d73ad00f486ad01c2395
+ url: "https://pub.dev"
source: hosted
version: "2.0.1"
string_scanner:
dependency: transitive
description:
name: string_scanner
- url: "https://pub.dartlang.org"
+ sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde"
+ url: "https://pub.dev"
source: hosted
version: "1.2.0"
term_glyph:
dependency: transitive
description:
name: term_glyph
- url: "https://pub.dartlang.org"
+ sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84
+ url: "https://pub.dev"
source: hosted
version: "1.2.1"
test:
dependency: "direct dev"
description:
name: test
- url: "https://pub.dartlang.org"
+ sha256: a5fcd2d25eeadbb6589e80198a47d6a464ba3e2049da473943b8af9797900c2d
+ url: "https://pub.dev"
source: hosted
version: "1.22.0"
test_api:
dependency: transitive
description:
name: test_api
- url: "https://pub.dartlang.org"
+ sha256: ad540f65f92caa91bf21dfc8ffb8c589d6e4dc0c2267818b4cc2792857706206
+ url: "https://pub.dev"
source: hosted
version: "0.4.16"
test_core:
dependency: transitive
description:
name: test_core
- url: "https://pub.dartlang.org"
+ sha256: "0ef9755ec6d746951ba0aabe62f874b707690b5ede0fecc818b138fcc9b14888"
+ url: "https://pub.dev"
source: hosted
version: "0.4.20"
timing:
dependency: transitive
description:
name: timing
- url: "https://pub.dartlang.org"
+ sha256: c386d07d7f5efc613479a7c4d9d64b03710b03cfaa7e8ad5f2bfb295a1f0dfad
+ url: "https://pub.dev"
source: hosted
version: "1.0.0"
typed_data:
dependency: transitive
description:
name: typed_data
- url: "https://pub.dartlang.org"
+ sha256: "26f87ade979c47a150c9eaab93ccd2bebe70a27dc0b4b29517f2904f04eb11a5"
+ url: "https://pub.dev"
source: hosted
version: "1.3.1"
vm_service:
dependency: transitive
description:
name: vm_service
- url: "https://pub.dartlang.org"
+ sha256: e7fb6c2282f7631712b69c19d1bff82f3767eea33a2321c14fa59ad67ea391c7
+ url: "https://pub.dev"
source: hosted
version: "9.4.0"
watcher:
dependency: transitive
description:
name: watcher
- url: "https://pub.dartlang.org"
+ sha256: "6a7f46926b01ce81bfc339da6a7f20afbe7733eff9846f6d6a5466aa4c6667c0"
+ url: "https://pub.dev"
source: hosted
version: "1.0.2"
web_socket_channel:
dependency: transitive
description:
name: web_socket_channel
- url: "https://pub.dartlang.org"
+ sha256: "3a969ddcc204a3e34e863d204b29c0752716f78b6f9cc8235083208d268a4ccd"
+ url: "https://pub.dev"
source: hosted
version: "2.2.0"
webkit_inspection_protocol:
dependency: transitive
description:
name: webkit_inspection_protocol
- url: "https://pub.dartlang.org"
+ sha256: "67d3a8b6c79e1987d19d848b0892e582dbb0c66c57cc1fef58a177dd2aa2823d"
+ url: "https://pub.dev"
source: hosted
version: "1.2.0"
yaml:
dependency: "direct main"
description:
name: yaml
- url: "https://pub.dartlang.org"
+ sha256: "23812a9b125b48d4007117254bca50abb6c712352927eece9e155207b1db2370"
+ url: "https://pub.dev"
source: hosted
version: "3.1.1"
sdks:
- dart: ">=2.18.0 <3.0.0"
+ dart: ">=2.18.0 <4.0.0"
diff --git a/device_doctor/test/src/utils.dart b/device_doctor/test/src/utils.dart
index ffbb84f..dd1379c 100644
--- a/device_doctor/test/src/utils.dart
+++ b/device_doctor/test/src/utils.dart
@@ -66,9 +66,9 @@
_err = err,
_out = out;
- int _exitCode;
- List<List<int>>? _err;
- List<List<int>>? _out;
+ final int _exitCode;
+ final List<List<int>>? _err;
+ final List<List<int>>? _out;
@override
Future<int> get exitCode => Future.value(_exitCode);
diff --git a/licenses/pubspec.lock b/licenses/pubspec.lock
index a0de09d..bb9f31c 100644
--- a/licenses/pubspec.lock
+++ b/licenses/pubspec.lock
@@ -5,239 +5,273 @@
dependency: transitive
description:
name: _fe_analyzer_shared
- url: "https://pub.dartlang.org"
+ sha256: "3444216bfd127af50bbe4862d8843ed44db946dd933554f0d7285e89f10e28ac"
+ url: "https://pub.dev"
source: hosted
version: "50.0.0"
analyzer:
dependency: transitive
description:
name: analyzer
- url: "https://pub.dartlang.org"
+ sha256: "68796c31f510c8455a06fed75fc97d8e5ad04d324a830322ab3efc9feb6201c1"
+ url: "https://pub.dev"
source: hosted
version: "5.2.0"
args:
dependency: transitive
description:
name: args
- url: "https://pub.dartlang.org"
+ sha256: b003c3098049a51720352d219b0bb5f219b60fbfb68e7a4748139a06a5676515
+ url: "https://pub.dev"
source: hosted
version: "2.3.1"
async:
dependency: transitive
description:
name: async
- url: "https://pub.dartlang.org"
+ sha256: bfe67ef28df125b7dddcea62755991f807aa39a2492a23e1550161692950bbe0
+ url: "https://pub.dev"
source: hosted
version: "2.10.0"
boolean_selector:
dependency: transitive
description:
name: boolean_selector
- url: "https://pub.dartlang.org"
+ sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66"
+ url: "https://pub.dev"
source: hosted
version: "2.1.1"
build:
dependency: transitive
description:
name: build
- url: "https://pub.dartlang.org"
+ sha256: "3fbda25365741f8251b39f3917fb3c8e286a96fd068a5a242e11c2012d495777"
+ url: "https://pub.dev"
source: hosted
version: "2.3.1"
built_collection:
dependency: transitive
description:
name: built_collection
- url: "https://pub.dartlang.org"
+ sha256: "376e3dd27b51ea877c28d525560790aee2e6fbb5f20e2f85d5081027d94e2100"
+ url: "https://pub.dev"
source: hosted
version: "5.1.1"
built_value:
dependency: transitive
description:
name: built_value
- url: "https://pub.dartlang.org"
+ sha256: "59e08b0079bb75f7e27392498e26339387c1089c6bd58525a14eb8508637277b"
+ url: "https://pub.dev"
source: hosted
version: "8.4.2"
code_builder:
dependency: transitive
description:
name: code_builder
- url: "https://pub.dartlang.org"
+ sha256: "02ce3596b459c666530f045ad6f96209474e8fee6e4855940a3cee65fb872ec5"
+ url: "https://pub.dev"
source: hosted
version: "4.3.0"
collection:
dependency: transitive
description:
name: collection
- url: "https://pub.dartlang.org"
+ sha256: cfc915e6923fe5ce6e153b0723c753045de46de1b4d63771530504004a45fae0
+ url: "https://pub.dev"
source: hosted
version: "1.17.0"
convert:
dependency: transitive
description:
name: convert
- url: "https://pub.dartlang.org"
+ sha256: "0f08b14755d163f6e2134cb58222dd25ea2a2ee8a195e53983d57c075324d592"
+ url: "https://pub.dev"
source: hosted
version: "3.1.1"
crypto:
dependency: transitive
description:
name: crypto
- url: "https://pub.dartlang.org"
+ sha256: aa274aa7774f8964e4f4f38cc994db7b6158dd36e9187aaceaddc994b35c6c67
+ url: "https://pub.dev"
source: hosted
version: "3.0.2"
dart_style:
dependency: transitive
description:
name: dart_style
- url: "https://pub.dartlang.org"
+ sha256: "7a03456c3490394c8e7665890333e91ae8a49be43542b616e414449ac358acd4"
+ url: "https://pub.dev"
source: hosted
version: "2.2.4"
file:
dependency: transitive
description:
name: file
- url: "https://pub.dartlang.org"
+ sha256: "1b92bec4fc2a72f59a8e15af5f52cd441e4a7860b49499d69dfa817af20e925d"
+ url: "https://pub.dev"
source: hosted
version: "6.1.4"
fixnum:
dependency: transitive
description:
name: fixnum
- url: "https://pub.dartlang.org"
+ sha256: "04be3e934c52e082558cc9ee21f42f5c1cd7a1262f4c63cd0357c08d5bba81ec"
+ url: "https://pub.dev"
source: hosted
version: "1.0.1"
glob:
dependency: transitive
description:
name: glob
- url: "https://pub.dartlang.org"
+ sha256: c51b4fdfee4d281f49b8c957f1add91b815473597f76bcf07377987f66a55729
+ url: "https://pub.dev"
source: hosted
version: "2.1.0"
logging:
dependency: transitive
description:
name: logging
- url: "https://pub.dartlang.org"
+ sha256: c0bbfe94d46aedf9b8b3e695cf3bd48c8e14b35e3b2c639e0aa7755d589ba946
+ url: "https://pub.dev"
source: hosted
version: "1.1.0"
matcher:
dependency: transitive
description:
name: matcher
- url: "https://pub.dartlang.org"
+ sha256: "16db949ceee371e9b99d22f88fa3a73c4e59fd0afed0bd25fc336eb76c198b72"
+ url: "https://pub.dev"
source: hosted
version: "0.12.13"
meta:
dependency: transitive
description:
name: meta
- url: "https://pub.dartlang.org"
+ sha256: "6c268b42ed578a53088d834796959e4a1814b5e9e164f147f580a386e5decf42"
+ url: "https://pub.dev"
source: hosted
version: "1.8.0"
mockito:
dependency: "direct dev"
description:
name: mockito
- url: "https://pub.dartlang.org"
+ sha256: "2a8a17b82b1bde04d514e75d90d634a0ac23f6cb4991f6098009dd56836aeafe"
+ url: "https://pub.dev"
source: hosted
version: "5.3.2"
package_config:
dependency: transitive
description:
name: package_config
- url: "https://pub.dartlang.org"
+ sha256: "1c5b77ccc91e4823a5af61ee74e6b972db1ef98c2ff5a18d3161c982a55448bd"
+ url: "https://pub.dev"
source: hosted
version: "2.1.0"
path:
dependency: "direct main"
description:
name: path
- url: "https://pub.dartlang.org"
+ sha256: db9d4f58c908a4ba5953fcee2ae317c94889433e5024c27ce74a37f94267945b
+ url: "https://pub.dev"
source: hosted
version: "1.8.2"
platform:
dependency: "direct main"
description:
name: platform
- url: "https://pub.dartlang.org"
+ sha256: "4a451831508d7d6ca779f7ac6e212b4023dd5a7d08a27a63da33756410e32b76"
+ url: "https://pub.dev"
source: hosted
version: "3.1.0"
pub_semver:
dependency: transitive
description:
name: pub_semver
- url: "https://pub.dartlang.org"
+ sha256: b959af0a045c3484c4a8f4997731f5bfe4cac60d732fd8ce35b351f2d6a459fe
+ url: "https://pub.dev"
source: hosted
version: "2.1.2"
source_gen:
dependency: transitive
description:
name: source_gen
- url: "https://pub.dartlang.org"
+ sha256: "2d79738b6bbf38a43920e2b8d189e9a3ce6cc201f4b8fc76be5e4fe377b1c38d"
+ url: "https://pub.dev"
source: hosted
version: "1.2.6"
source_span:
dependency: transitive
description:
name: source_span
- url: "https://pub.dartlang.org"
+ sha256: dd904f795d4b4f3b870833847c461801f6750a9fa8e61ea5ac53f9422b31f250
+ url: "https://pub.dev"
source: hosted
version: "1.9.1"
stack_trace:
dependency: transitive
description:
name: stack_trace
- url: "https://pub.dartlang.org"
+ sha256: c3c7d8edb15bee7f0f74debd4b9c5f3c2ea86766fe4178eb2a18eb30a0bdaed5
+ url: "https://pub.dev"
source: hosted
version: "1.11.0"
stream_channel:
dependency: transitive
description:
name: stream_channel
- url: "https://pub.dartlang.org"
+ sha256: "83615bee9045c1d322bbbd1ba209b7a749c2cbcdcb3fdd1df8eb488b3279c1c8"
+ url: "https://pub.dev"
source: hosted
version: "2.1.1"
string_scanner:
dependency: transitive
description:
name: string_scanner
- url: "https://pub.dartlang.org"
+ sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde"
+ url: "https://pub.dev"
source: hosted
version: "1.2.0"
term_glyph:
dependency: transitive
description:
name: term_glyph
- url: "https://pub.dartlang.org"
+ sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84
+ url: "https://pub.dev"
source: hosted
version: "1.2.1"
test_api:
dependency: "direct dev"
description:
name: test_api
- url: "https://pub.dartlang.org"
+ sha256: ad540f65f92caa91bf21dfc8ffb8c589d6e4dc0c2267818b4cc2792857706206
+ url: "https://pub.dev"
source: hosted
version: "0.4.16"
typed_data:
dependency: transitive
description:
name: typed_data
- url: "https://pub.dartlang.org"
+ sha256: "26f87ade979c47a150c9eaab93ccd2bebe70a27dc0b4b29517f2904f04eb11a5"
+ url: "https://pub.dev"
source: hosted
version: "1.3.1"
watcher:
dependency: transitive
description:
name: watcher
- url: "https://pub.dartlang.org"
+ sha256: "6a7f46926b01ce81bfc339da6a7f20afbe7733eff9846f6d6a5466aa4c6667c0"
+ url: "https://pub.dev"
source: hosted
version: "1.0.2"
yaml:
dependency: transitive
description:
name: yaml
- url: "https://pub.dartlang.org"
+ sha256: "23812a9b125b48d4007117254bca50abb6c712352927eece9e155207b1db2370"
+ url: "https://pub.dev"
source: hosted
version: "3.1.1"
sdks:
- dart: ">=2.18.0 <3.0.0"
+ dart: ">=2.18.0 <4.0.0"
diff --git a/test_utilities/pubspec.lock b/test_utilities/pubspec.lock
index 6d0584d..a7717dd 100644
--- a/test_utilities/pubspec.lock
+++ b/test_utilities/pubspec.lock
@@ -5,57 +5,57 @@
dependency: "direct dev"
description:
name: args
- url: "https://pub.dartlang.org"
+ sha256: b003c3098049a51720352d219b0bb5f219b60fbfb68e7a4748139a06a5676515
+ url: "https://pub.dev"
source: hosted
version: "2.3.1"
- charcode:
- dependency: transitive
- description:
- name: charcode
- url: "https://pub.dartlang.org"
- source: hosted
- version: "1.3.1"
collection:
dependency: transitive
description:
name: collection
- url: "https://pub.dartlang.org"
+ sha256: cfc915e6923fe5ce6e153b0723c753045de46de1b4d63771530504004a45fae0
+ url: "https://pub.dev"
source: hosted
- version: "1.16.0"
+ version: "1.17.0"
path:
dependency: "direct dev"
description:
name: path
- url: "https://pub.dartlang.org"
+ sha256: db9d4f58c908a4ba5953fcee2ae317c94889433e5024c27ce74a37f94267945b
+ url: "https://pub.dev"
source: hosted
version: "1.8.2"
source_span:
dependency: transitive
description:
name: source_span
- url: "https://pub.dartlang.org"
+ sha256: dd904f795d4b4f3b870833847c461801f6750a9fa8e61ea5ac53f9422b31f250
+ url: "https://pub.dev"
source: hosted
- version: "1.9.0"
+ version: "1.9.1"
string_scanner:
dependency: transitive
description:
name: string_scanner
- url: "https://pub.dartlang.org"
+ sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde"
+ url: "https://pub.dev"
source: hosted
- version: "1.1.0"
+ version: "1.2.0"
term_glyph:
dependency: transitive
description:
name: term_glyph
- url: "https://pub.dartlang.org"
+ sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84
+ url: "https://pub.dev"
source: hosted
- version: "1.2.0"
+ version: "1.2.1"
yaml:
dependency: "direct dev"
description:
name: yaml
- url: "https://pub.dartlang.org"
+ sha256: "23812a9b125b48d4007117254bca50abb6c712352927eece9e155207b1db2370"
+ url: "https://pub.dev"
source: hosted
version: "3.1.1"
sdks:
- dart: ">=2.14.0 <3.0.0"
+ dart: ">=2.18.0 <4.0.0"