Skip to content

Commit 42b6aa7

Browse files
authored
Update to latest split build package (#110)
- Loosen version constraint on build to allow anything under '0.7.0'. During development we'll only get 0.6.0 because dev_dependencies will constrain it further - but the code in lib/ is still compatible with older versions - Add dev_dependency on build_runner for the code under tool/ - Bump version of build_test - Use testBuilder instead of testPhases - delete this repo's copy of testPhases
1 parent 4261976 commit 42b6aa7

File tree

7 files changed

+44
-105
lines changed

7 files changed

+44
-105
lines changed

CHANGELOG.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
1-
## 0.5.2-dev
1+
## 0.5.2
22

33
* Use library URIs (not names) to look up annotations in the mirror system.
4+
* Loosen version constraint to allow package:build version 0.6
45

56
## 0.5.1+7
67

pubspec.yaml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,19 @@
11
name: source_gen
2-
version: 0.5.2-dev
2+
version: 0.5.2
33
author: Dart Team <[email protected]>
44
description: Automatic sourcecode generation for Dart
55
homepage: https://github.com/dart-lang/source_gen
66
environment:
77
sdk: '>=1.12.0 <2.0.0'
88
dependencies:
99
analyzer: '>=0.28.0 <0.30.0'
10-
build: '>=0.2.1 <0.6.0'
10+
build: '>=0.2.1 <0.7.0'
1111
cli_util: ^0.0.1
1212
dart_style: '>=0.1.7 <0.3.0'
1313
path: ^1.3.2
1414
dev_dependencies:
15-
build_test: ^0.2.0+1
15+
build_runner: ^0.1.0
16+
build_test: ^0.3.0
1617
collection: ^1.1.2
1718
mockito: '>=0.11.0 <2.0.0'
1819
test: ^0.12.3

test/builder_test.dart

Lines changed: 35 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -5,46 +5,47 @@
55
import 'dart:async';
66

77
import 'package:analyzer/dart/element/element.dart';
8-
import 'package:build/build.dart';
8+
import 'package:build_test/build_test.dart';
99
import 'package:source_gen/builder.dart';
1010
import 'package:source_gen/source_gen.dart';
1111
import 'package:test/test.dart';
1212

1313
import 'src/comment_generator.dart';
14-
import 'src/test_phases.dart';
1514

1615
void main() {
1716
test('Simple Generator test', _simpleTest);
1817

1918
test('Bad generated source', () async {
2019
var srcs = _createPackageStub(pkgName);
21-
var phaseGroup = new PhaseGroup.singleAction(
22-
new GeneratorBuilder([const _BadOutputGenerator()]),
23-
new InputSet(pkgName, ['lib/test_lib.dart']));
20+
var builder = new GeneratorBuilder([const _BadOutputGenerator()]);
2421

25-
await testPhases(phaseGroup, pkgName, srcs, {
26-
'$pkgName|lib/test_lib.g.dart': contains('not valid code!'),
27-
});
22+
await testBuilder(builder, srcs,
23+
generateFor: new Set.from(['$pkgName|lib/test_lib.dart']),
24+
outputs: {
25+
'$pkgName|lib/test_lib.g.dart': contains('not valid code!'),
26+
});
2827
});
2928

3029
test('Generate standalone output file', () async {
3130
var srcs = _createPackageStub(pkgName);
32-
var phaseGroup = new PhaseGroup.singleAction(
33-
new GeneratorBuilder([const CommentGenerator()], isStandalone: true),
34-
new InputSet(pkgName, ['lib/test_lib.dart']));
35-
await testPhases(phaseGroup, pkgName, srcs, {
36-
'$pkgName|lib/test_lib.g.dart': _testGenStandaloneContent,
37-
});
31+
var builder =
32+
new GeneratorBuilder([const CommentGenerator()], isStandalone: true);
33+
await testBuilder(builder, srcs,
34+
generateFor: new Set.from(['$pkgName|lib/test_lib.dart']),
35+
outputs: {
36+
'$pkgName|lib/test_lib.g.dart': _testGenStandaloneContent,
37+
});
3838
});
3939

4040
test('Generate explicitly non-standalone output file', () async {
4141
var srcs = _createPackageStub(pkgName);
42-
var phaseGroup = new PhaseGroup.singleAction(
43-
new GeneratorBuilder([const CommentGenerator()], isStandalone: false),
44-
new InputSet(pkgName, ['lib/test_lib.dart']));
45-
await testPhases(phaseGroup, pkgName, srcs, {
46-
'$pkgName|lib/test_lib.g.dart': _testGenPartContent,
47-
});
42+
var builder =
43+
new GeneratorBuilder([const CommentGenerator()], isStandalone: false);
44+
await testBuilder(builder, srcs,
45+
generateFor: new Set.from(['$pkgName|lib/test_lib.dart']),
46+
outputs: {
47+
'$pkgName|lib/test_lib.g.dart': _testGenPartContent,
48+
});
4849
});
4950

5051
test('Expect error when multiple generators used on a standalone builder',
@@ -78,22 +79,19 @@ void main() {
7879

7980
test('No-op generator produces no generated parts', () async {
8081
var srcs = _createPackageStub(pkgName);
81-
var phaseGroup = new PhaseGroup.singleAction(
82-
new GeneratorBuilder([const _NoOpGenerator()]),
83-
new InputSet(pkgName, ['lib/test_lib.dart']));
84-
85-
await testPhases(phaseGroup, pkgName, srcs, {});
82+
var builder = new GeneratorBuilder([const _NoOpGenerator()]);
83+
await testBuilder(builder, srcs, outputs: {});
8684
});
8785

8886
test('handle generator errors well', () async {
8987
var srcs =
9088
_createPackageStub(pkgName, testLibContent: _testLibContentWithError);
91-
var phaseGroup = new PhaseGroup.singleAction(
92-
new GeneratorBuilder([const CommentGenerator()]),
93-
new InputSet(pkgName, ['lib/test_lib.dart']));
94-
await testPhases(phaseGroup, pkgName, srcs, {
95-
'$pkgName|lib/test_lib.g.dart': _testGenPartContentError,
96-
});
89+
var builder = new GeneratorBuilder([const CommentGenerator()]);
90+
await testBuilder(builder, srcs,
91+
generateFor: new Set.from(['$pkgName|lib/test_lib.dart']),
92+
outputs: {
93+
'$pkgName|lib/test_lib.g.dart': _testGenPartContentError,
94+
});
9795
});
9896
}
9997

@@ -103,12 +101,13 @@ Future _simpleTest() => _generateTest(
103101

104102
Future _generateTest(CommentGenerator gen, String expectedContent) async {
105103
var srcs = _createPackageStub(pkgName);
106-
var phaseGroup = new PhaseGroup.singleAction(new GeneratorBuilder([gen]),
107-
new InputSet(pkgName, ['lib/test_lib.dart']));
104+
var builder = new GeneratorBuilder([gen]);
108105

109-
await testPhases(phaseGroup, pkgName, srcs, {
110-
'$pkgName|lib/test_lib.g.dart': expectedContent,
111-
});
106+
await testBuilder(builder, srcs,
107+
generateFor: new Set.from(['$pkgName|lib/test_lib.dart']),
108+
outputs: {
109+
'$pkgName|lib/test_lib.g.dart': expectedContent,
110+
});
112111
}
113112

114113
/// Creates a package using [pkgName].

test/src/test_phases.dart

Lines changed: 0 additions & 56 deletions
This file was deleted.

tool/build.dart

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
// Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file
22
// for details. All rights reserved. Use of this source code is governed by a
33
// BSD-style license that can be found in the LICENSE file.
4-
library source_gen.tool.build;
5-
6-
import 'package:build/build.dart';
4+
import 'package:build_runner/build_runner.dart';
75

86
import 'phases.dart';
97

tool/phases.dart

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
// Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file
22
// for details. All rights reserved. Use of this source code is governed by a
33
// BSD-style license that can be found in the LICENSE file.
4-
library source_gen.tool.phases;
5-
6-
import 'package:build/build.dart';
4+
import 'package:build_runner/build_runner.dart';
75

86
import 'package:source_gen/generators/json_literal_generator.dart' as literal;
97
import 'package:source_gen/generators/json_serializable_generator.dart' as json;

tool/watch.dart

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
// Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file
22
// for details. All rights reserved. Use of this source code is governed by a
33
// BSD-style license that can be found in the LICENSE file.
4-
library source_gen.tool.watch;
5-
6-
import 'package:build/build.dart';
4+
import 'package:build_runner/build_runner.dart';
75

86
import 'phases.dart';
97

0 commit comments

Comments
 (0)