Skip to content

Commit 7aaa025

Browse files
authored
[native_assets_builder] Pass packageName in to builds (#150)
Closes: #142
1 parent c9bdc9a commit 7aaa025

File tree

19 files changed

+66
-26
lines changed

19 files changed

+66
-26
lines changed

.github/workflows/dart.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ jobs:
2323
sdk: [stable, dev]
2424
package: [native_assets_builder, native_assets_cli, native_toolchain_c]
2525
# Breaking changes temporarily break the example run on the Dart SDK until native_assets_builder is rolled into the Dart SDK dev build.
26-
breaking-change: [false]
26+
breaking-change: [true]
2727
exclude:
2828
# Only run analyze against dev on one host.
2929
- os: macos

pkgs/native_assets_builder/CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
## 0.3.0
2+
3+
- Bump `package:native_assets_cli` to 0.3.0
4+
([#142](https://github.com/dart-lang/native/issues/142)).
5+
16
## 0.2.3
27

38
- Quicker build planning for 0 or 1 packages with native assets

pkgs/native_assets_builder/lib/src/build_runner/build_runner.dart

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,7 @@ class NativeAssetsBuildRunner {
8484
targetMetadata: metadata,
8585
);
8686
final config = await _cliConfig(
87+
packageName: package.name,
8788
packageRoot: packageLayout.packageRoot(package.name),
8889
target: target,
8990
buildMode: buildMode,
@@ -310,6 +311,7 @@ build_output.yaml contained a format error.
310311
}
311312

312313
static Future<BuildConfig> _cliConfig({
314+
required String packageName,
313315
required Uri packageRoot,
314316
required Target target,
315317
IOSSdk? targetIOSSdk,
@@ -321,6 +323,7 @@ build_output.yaml contained a format error.
321323
DependencyMetadata? dependencyMetadata,
322324
}) async {
323325
final buildDirName = BuildConfig.checksum(
326+
packageName: packageName,
324327
packageRoot: packageRoot,
325328
targetOs: target.os,
326329
targetArchitecture: target.architecture,
@@ -339,6 +342,7 @@ build_output.yaml contained a format error.
339342
}
340343
return BuildConfig(
341344
outDir: outDirUri,
345+
packageName: packageName,
342346
packageRoot: packageRoot,
343347
targetOs: target.os,
344348
targetArchitecture: target.architecture,
@@ -366,6 +370,7 @@ build_output.yaml contained a format error.
366370
}
367371
return BuildConfig.dryRun(
368372
outDir: outDirUri,
373+
packageName: packageName,
369374
packageRoot: packageRoot,
370375
targetOs: targetOs,
371376
linkModePreference: linkMode,
@@ -470,9 +475,4 @@ extension on DateTime {
470475
millisecondsSinceEpoch % Duration(seconds: 1).inMilliseconds);
471476
}
472477

473-
extension on BuildConfig {
474-
String get packageName =>
475-
packageRoot.pathSegments.lastWhere((e) => e.isNotEmpty);
476-
}
477-
478478
int _uriCompare(Uri u1, Uri u2) => u1.toString().compareTo(u2.toString());

pkgs/native_assets_builder/pubspec.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
name: native_assets_builder
22
description: >-
33
This package is the backend that invokes top-level `build.dart` scripts.
4-
version: 0.2.3
4+
version: 0.3.0
55
repository: https://github.com/dart-lang/native/tree/main/pkgs/native_assets_builder
66

77
environment:
@@ -10,7 +10,7 @@ environment:
1010
dependencies:
1111
graphs: ^2.3.1
1212
logging: ^1.2.0
13-
native_assets_cli: ^0.2.0
13+
native_assets_cli: ^0.3.0
1414
package_config: ^2.1.0
1515

1616
dev_dependencies:

pkgs/native_assets_builder/test/build_runner/build_runner_asset_id_test.dart

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,4 +40,28 @@ void main() async {
4040
}
4141
});
4242
});
43+
44+
test('right asset id but other directory', timeout: longTimeout, () async {
45+
await inTempDir((tempUri) async {
46+
final packageUri = tempUri.resolve('different_root_dir/');
47+
await copyTestProjects(
48+
sourceUri: testDataUri.resolve('native_add/'),
49+
targetUri: packageUri,
50+
);
51+
52+
await runPubGet(
53+
workingDirectory: packageUri,
54+
logger: logger,
55+
);
56+
57+
{
58+
final result = await build(
59+
packageUri,
60+
logger,
61+
dartExecutable,
62+
);
63+
expect(result.success, true);
64+
}
65+
});
66+
});
4367
}

pkgs/native_assets_builder/test/data/cyclic_package_1/pubspec.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ dependencies:
1111
cli_config: ^0.1.1
1212
cyclic_package_2:
1313
path: ../cyclic_package_2
14-
native_assets_cli: ^0.2.0
14+
native_assets_cli: ^0.3.0
1515
yaml: ^3.1.1
1616
yaml_edit: ^2.1.0
1717

pkgs/native_assets_builder/test/data/cyclic_package_2/pubspec.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ dependencies:
1111
cli_config: ^0.1.1
1212
cyclic_package_1:
1313
path: ../cyclic_package_1
14-
native_assets_cli: ^0.2.0
14+
native_assets_cli: ^0.3.0
1515
yaml: ^3.1.1
1616
yaml_edit: ^2.1.0
1717

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
- build.dart
2+
- ffigen.yaml
3+
- lib/native_add.dart
4+
- lib/src/native_add_bindings_generated.dart
5+
- lib/src/native_add.dart
6+
- pubspec.yaml
7+
- src/native_add.c
8+
- src/native_add.h
9+
- test/native_add_test.dart

pkgs/native_assets_builder/test/data/native_add/pubspec.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@ environment:
1010
dependencies:
1111
cli_config: ^0.1.1
1212
logging: ^1.1.1
13-
native_assets_cli: ^0.2.0
14-
native_toolchain_c: ^0.2.2
13+
native_assets_cli: ^0.3.0
14+
native_toolchain_c: ^0.3.0
1515

1616
dev_dependencies:
1717
ffigen: ^8.0.2

pkgs/native_assets_builder/test/data/native_add_add_source/pubspec.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@ environment:
1010
dependencies:
1111
cli_config: ^0.1.1
1212
logging: ^1.1.1
13-
native_assets_cli: ^0.2.0
14-
native_toolchain_c: ^0.2.2
13+
native_assets_cli: ^0.3.0
14+
native_toolchain_c: ^0.3.0
1515

1616
dev_dependencies:
1717
ffigen: ^8.0.2

pkgs/native_assets_builder/test/data/native_subtract/pubspec.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@ environment:
1010
dependencies:
1111
cli_config: ^0.1.1
1212
logging: ^1.1.1
13-
native_assets_cli: ^0.2.0
14-
native_toolchain_c: ^0.2.2
13+
native_assets_cli: ^0.3.0
14+
native_toolchain_c: ^0.3.0
1515

1616
dev_dependencies:
1717
ffigen: ^8.0.2

pkgs/native_assets_builder/test/data/package_reading_metadata/pubspec.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ environment:
99

1010
dependencies:
1111
cli_config: ^0.1.1
12-
native_assets_cli: ^0.2.0
12+
native_assets_cli: ^0.3.0
1313
package_with_metadata:
1414
path: ../package_with_metadata/
1515
yaml: ^3.1.1

pkgs/native_assets_builder/test/data/package_with_metadata/pubspec.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ environment:
99

1010
dependencies:
1111
cli_config: ^0.1.1
12-
native_assets_cli: ^0.2.0
12+
native_assets_cli: ^0.3.0
1313
yaml: ^3.1.1
1414
yaml_edit: ^2.1.0
1515

pkgs/native_assets_builder/test/data/wrong_build_output/pubspec.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ environment:
99

1010
dependencies:
1111
cli_config: ^0.1.1
12-
native_assets_cli: ^0.2.0
12+
native_assets_cli: ^0.3.0
1313
yaml: ^3.1.1
1414
yaml_edit: ^2.1.0
1515

pkgs/native_assets_builder/test/data/wrong_build_output_2/pubspec.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ environment:
99

1010
dependencies:
1111
cli_config: ^0.1.1
12-
native_assets_cli: ^0.2.0
12+
native_assets_cli: ^0.3.0
1313
yaml: ^3.1.1
1414
yaml_edit: ^2.1.0
1515

pkgs/native_assets_builder/test/data/wrong_build_output_3/pubspec.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ environment:
99

1010
dependencies:
1111
cli_config: ^0.1.1
12-
native_assets_cli: ^0.2.0
12+
native_assets_cli: ^0.3.0
1313
yaml: ^3.1.1
1414
yaml_edit: ^2.1.0
1515

pkgs/native_assets_builder/test/data/wrong_namespace_asset/pubspec.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ environment:
99

1010
dependencies:
1111
cli_config: ^0.1.1
12-
native_assets_cli: ^0.2.0
12+
native_assets_cli: ^0.3.0
1313
yaml: ^3.1.1
1414
yaml_edit: ^2.1.0
1515

pkgs/native_assets_cli/example/native_add_library/pubspec.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@ environment:
1111
dependencies:
1212
cli_config: ^0.1.1
1313
logging: ^1.1.1
14-
native_assets_cli: ^0.2.0
15-
native_toolchain_c: ^0.2.2
14+
native_assets_cli: ^0.3.0
15+
native_toolchain_c: ^0.3.0
1616

1717
dev_dependencies:
1818
ffigen: ^8.0.2

pkgs/native_assets_cli/test/example/native_add_library_test.dart

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ import '../helpers.dart';
1717

1818
void main() async {
1919
late Uri tempUri;
20+
const name = 'native_add_library';
2021

2122
setUp(() async {
2223
tempUri = (await Directory.systemTemp.createTemp()).uri;
@@ -31,14 +32,15 @@ void main() async {
3132
test('native_add build$testSuffix', () async {
3233
final testTempUri = tempUri.resolve('test1/');
3334
await Directory.fromUri(testTempUri).create();
34-
final testPackageUri = packageUri.resolve('example/native_add_library/');
35+
final testPackageUri = packageUri.resolve('example/$name/');
3536
final dartUri = Uri.file(Platform.resolvedExecutable);
3637

3738
final processResult = await Process.run(
3839
dartUri.toFilePath(),
3940
[
4041
'build.dart',
4142
'-Dout_dir=${tempUri.toFilePath()}',
43+
'-Dpackage_name=$name',
4244
'-Dpackage_root=${testPackageUri.toFilePath()}',
4345
'-Dtarget_os=${OS.current}',
4446
'-Dversion=${BuildConfig.version}',
@@ -80,7 +82,7 @@ void main() async {
8082
expect(
8183
dependencies.dependencies,
8284
[
83-
testPackageUri.resolve('src/native_add_library.c'),
85+
testPackageUri.resolve('src/$name.c'),
8486
testPackageUri.resolve('build.dart'),
8587
],
8688
);

0 commit comments

Comments
 (0)