Skip to content

Commit 61d3f72

Browse files
committed
New format.
1 parent 50e0308 commit 61d3f72

13 files changed

+1271
-730
lines changed

pkgs/package_config/lib/package_config.dart

+56-30
Original file line numberDiff line numberDiff line change
@@ -28,15 +28,18 @@ export 'package_config_types.dart';
2828
/// The returned package configuration is a *best effort* attempt to create
2929
/// a valid configuration from the invalid configuration file.
3030
/// If no [onError] is provided, errors are thrown immediately.
31-
Future<PackageConfig> loadPackageConfig(File file,
32-
{void Function(Object error)? onError}) =>
33-
readConfigFile(file, onError ?? throwError);
31+
Future<PackageConfig> loadPackageConfig(
32+
File file, {
33+
void Function(Object error)? onError,
34+
}) => readConfigFile(file, onError ?? throwError);
3435

3536
/// @nodoc
3637
@Deprecated('use loadPackageConfig instead')
37-
Future<PackageConfig> loadAnyPackageConfig(File file,
38-
{bool preferNewest = true, void Function(Object error)? onError}) =>
39-
loadPackageConfig(file, onError: onError);
38+
Future<PackageConfig> loadAnyPackageConfig(
39+
File file, {
40+
bool preferNewest = true,
41+
void Function(Object error)? onError,
42+
}) => loadPackageConfig(file, onError: onError);
4043

4144
/// Reads a specific package configuration URI.
4245
///
@@ -66,16 +69,19 @@ Future<PackageConfig> loadAnyPackageConfig(File file,
6669
/// The returned package configuration is a *best effort* attempt to create
6770
/// a valid configuration from the invalid configuration file.
6871
/// If no [onError] is provided, errors are thrown immediately.
69-
Future<PackageConfig> loadPackageConfigUri(Uri file,
70-
{Future<Uint8List?> Function(Uri uri)? loader,
71-
void Function(Object error)? onError}) =>
72-
readConfigFileUri(file, loader, onError ?? throwError);
72+
Future<PackageConfig> loadPackageConfigUri(
73+
Uri file, {
74+
Future<Uint8List?> Function(Uri uri)? loader,
75+
void Function(Object error)? onError,
76+
}) => readConfigFileUri(file, loader, onError ?? throwError);
7377

7478
/// @nodoc
7579
@Deprecated('use loadPackageConfigUri instead')
76-
Future<PackageConfig> loadAnyPackageConfigUri(Uri uri,
77-
{bool preferNewest = true, void Function(Object error)? onError}) =>
78-
loadPackageConfigUri(uri, onError: onError);
80+
Future<PackageConfig> loadAnyPackageConfigUri(
81+
Uri uri, {
82+
bool preferNewest = true,
83+
void Function(Object error)? onError,
84+
}) => loadPackageConfigUri(uri, onError: onError);
7985

8086
/// Finds a package configuration relative to [directory].
8187
///
@@ -99,16 +105,25 @@ Future<PackageConfig> loadAnyPackageConfigUri(Uri uri,
99105
/// any lower-version configuration files are ignored in the search.
100106
///
101107
/// Returns `null` if no configuration file is found.
102-
Future<PackageConfig?> findPackageConfig(Directory directory,
103-
{bool recurse = true,
104-
void Function(Object error)? onError,
105-
int minVersion = 1}) {
108+
Future<PackageConfig?> findPackageConfig(
109+
Directory directory, {
110+
bool recurse = true,
111+
void Function(Object error)? onError,
112+
int minVersion = 1,
113+
}) {
106114
if (minVersion > PackageConfig.maxVersion) {
107-
throw ArgumentError.value(minVersion, 'minVersion',
108-
'Maximum known version is ${PackageConfig.maxVersion}');
115+
throw ArgumentError.value(
116+
minVersion,
117+
'minVersion',
118+
'Maximum known version is ${PackageConfig.maxVersion}',
119+
);
109120
}
110121
return discover.findPackageConfig(
111-
directory, minVersion, recurse, onError ?? throwError);
122+
directory,
123+
minVersion,
124+
recurse,
125+
onError ?? throwError,
126+
);
112127
}
113128

114129
/// Finds a package configuration relative to [location].
@@ -153,17 +168,27 @@ Future<PackageConfig?> findPackageConfig(Directory directory,
153168
/// any lower-version configuration files are ignored in the search.
154169
///
155170
/// Returns `null` if no configuration file is found.
156-
Future<PackageConfig?> findPackageConfigUri(Uri location,
157-
{bool recurse = true,
158-
int minVersion = 1,
159-
Future<Uint8List?> Function(Uri uri)? loader,
160-
void Function(Object error)? onError}) {
171+
Future<PackageConfig?> findPackageConfigUri(
172+
Uri location, {
173+
bool recurse = true,
174+
int minVersion = 1,
175+
Future<Uint8List?> Function(Uri uri)? loader,
176+
void Function(Object error)? onError,
177+
}) {
161178
if (minVersion > PackageConfig.maxVersion) {
162-
throw ArgumentError.value(minVersion, 'minVersion',
163-
'Maximum known version is ${PackageConfig.maxVersion}');
179+
throw ArgumentError.value(
180+
minVersion,
181+
'minVersion',
182+
'Maximum known version is ${PackageConfig.maxVersion}',
183+
);
164184
}
165185
return discover.findPackageConfigUri(
166-
location, minVersion, loader, onError ?? throwError, recurse);
186+
location,
187+
minVersion,
188+
loader,
189+
onError ?? throwError,
190+
recurse,
191+
);
167192
}
168193

169194
/// Writes a package configuration to the provided directory.
@@ -175,5 +200,6 @@ Future<PackageConfig?> findPackageConfigUri(Uri location,
175200
/// A comment is generated if `[PackageConfig.extraData]` contains a
176201
/// `"generator"` entry.
177202
Future<void> savePackageConfig(
178-
PackageConfig configuration, Directory directory) =>
179-
writePackageConfigJsonFile(configuration, directory);
203+
PackageConfig configuration,
204+
Directory directory,
205+
) => writePackageConfigJsonFile(configuration, directory);

pkgs/package_config/lib/src/discovery.dart

+37-19
Original file line numberDiff line numberDiff line change
@@ -31,16 +31,23 @@ final Uri parentPath = Uri(path: '..');
3131
///
3232
/// If [minVersion] is greater than the version read from the
3333
/// `package_config.json` file, it too is ignored.
34-
Future<PackageConfig?> findPackageConfig(Directory baseDirectory,
35-
int minVersion, bool recursive, void Function(Object error) onError) async {
34+
Future<PackageConfig?> findPackageConfig(
35+
Directory baseDirectory,
36+
int minVersion,
37+
bool recursive,
38+
void Function(Object error) onError,
39+
) async {
3640
var directory = baseDirectory;
3741
if (!directory.isAbsolute) directory = directory.absolute;
3842
if (!await directory.exists()) {
3943
return null;
4044
}
4145
do {
42-
var packageConfig =
43-
await findPackageConfigInDirectory(directory, minVersion, onError);
46+
var packageConfig = await findPackageConfigInDirectory(
47+
directory,
48+
minVersion,
49+
onError,
50+
);
4451
if (packageConfig != null) return packageConfig;
4552
if (!recursive) break;
4653
// Check in parent directories.
@@ -53,23 +60,30 @@ Future<PackageConfig?> findPackageConfig(Directory baseDirectory,
5360

5461
/// Similar to [findPackageConfig] but based on a URI.
5562
Future<PackageConfig?> findPackageConfigUri(
56-
Uri location,
57-
int minVersion,
58-
Future<Uint8List?> Function(Uri uri)? loader,
59-
void Function(Object error) onError,
60-
bool recursive) async {
63+
Uri location,
64+
int minVersion,
65+
Future<Uint8List?> Function(Uri uri)? loader,
66+
void Function(Object error) onError,
67+
bool recursive,
68+
) async {
6169
if (location.isScheme('package')) {
62-
onError(PackageConfigArgumentError(
63-
location, 'location', 'Must not be a package: URI'));
70+
onError(
71+
PackageConfigArgumentError(
72+
location,
73+
'location',
74+
'Must not be a package: URI',
75+
),
76+
);
6477
return null;
6578
}
6679
if (loader == null) {
6780
if (location.isScheme('file')) {
6881
return findPackageConfig(
69-
Directory.fromUri(location.resolveUri(currentPath)),
70-
minVersion,
71-
recursive,
72-
onError);
82+
Directory.fromUri(location.resolveUri(currentPath)),
83+
minVersion,
84+
recursive,
85+
onError,
86+
);
7387
}
7488
loader = defaultLoader;
7589
}
@@ -102,8 +116,11 @@ Future<PackageConfig?> findPackageConfigUri(
102116
///
103117
/// If [minVersion] is greater than the version read from the
104118
/// `package_config.json` file, it too is ignored.
105-
Future<PackageConfig?> findPackageConfigInDirectory(Directory directory,
106-
int minVersion, void Function(Object error) onError) async {
119+
Future<PackageConfig?> findPackageConfigInDirectory(
120+
Directory directory,
121+
int minVersion,
122+
void Function(Object error) onError,
123+
) async {
107124
var packageConfigFile = await checkForPackageConfigJsonFile(directory);
108125
if (packageConfigFile != null) {
109126
var config = await readPackageConfigJsonFile(packageConfigFile, onError);
@@ -115,8 +132,9 @@ Future<PackageConfig?> findPackageConfigInDirectory(Directory directory,
115132

116133
Future<File?> checkForPackageConfigJsonFile(Directory directory) async {
117134
assert(directory.isAbsolute);
118-
var file =
119-
File(pathJoin(directory.path, '.dart_tool', 'package_config.json'));
135+
var file = File(
136+
pathJoin(directory.path, '.dart_tool', 'package_config.json'),
137+
);
120138
if (await file.exists()) return file;
121139
return null;
122140
}

pkgs/package_config/lib/src/errors.dart

+11-6
Original file line numberDiff line numberDiff line change
@@ -13,20 +13,25 @@ abstract class PackageConfigError {
1313
class PackageConfigArgumentError extends ArgumentError
1414
implements PackageConfigError {
1515
PackageConfigArgumentError(
16-
Object? super.value, String super.name, String super.message)
17-
: super.value();
16+
Object? super.value,
17+
String super.name,
18+
String super.message,
19+
) : super.value();
1820

1921
PackageConfigArgumentError.from(ArgumentError error)
20-
: super.value(error.invalidValue, error.name, error.message);
22+
: super.value(error.invalidValue, error.name, error.message);
2123
}
2224

2325
class PackageConfigFormatException extends FormatException
2426
implements PackageConfigError {
25-
PackageConfigFormatException(super.message, Object? super.source,
26-
[super.offset]);
27+
PackageConfigFormatException(
28+
super.message,
29+
Object? super.source, [
30+
super.offset,
31+
]);
2732

2833
PackageConfigFormatException.from(FormatException exception)
29-
: super(exception.message, exception.source, exception.offset);
34+
: super(exception.message, exception.source, exception.offset);
3035
}
3136

3237
/// The default `onError` handler.

0 commit comments

Comments
 (0)