Skip to content

Commit 1691de0

Browse files
committed
Removed timestamps from generated files
1 parent e41c42e commit 1691de0

File tree

5 files changed

+18
-30
lines changed

5 files changed

+18
-30
lines changed

CHANGELOG.md

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@
1212
files via the `BuildStep` class, and that is now also provided to
1313
`Generator#generate` and `GeneratorForAnnotation#generateForAnnotatedElement`
1414
as a second argument.
15+
16+
* Timestamps are no longer included in generated code.
1517

1618
* There is no longer a need to specify the files related to an individual
1719
generator via `AssociatedFileSet`. Simply use the `BuildStep` instance to read
@@ -26,7 +28,8 @@
2628

2729
## 0.4.7+2
2830

29-
* Upgrade to `analyzer '^0.27.1'` and removed a work-around for a fixed `analyzer` issue.
31+
* Upgrade to `analyzer '^0.27.1'` and removed a work-around for a fixed
32+
`analyzer` issue.
3033

3134
## 0.4.7+1
3235

@@ -54,7 +57,8 @@
5457

5558
## 0.4.4+1
5659

57-
* Updated `README.md` to highlight the `build_system` package and deemphasize Dart Ediotr.
60+
* Updated `README.md` to highlight the `build_system` package and de-emphasize
61+
Dart Editor.
5862

5963
## 0.4.4
6064

example/example.g.dart

Lines changed: 0 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

lib/src/builder.dart

Lines changed: 9 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,9 @@ import 'utils.dart';
1313

1414
class GeneratorBuilder extends Builder {
1515
final List<Generator> generators;
16-
final bool omitGenerateTimestamp;
1716
final String generatedExtension;
1817

19-
GeneratorBuilder(this.generators,
20-
{this.omitGenerateTimestamp: false, this.generatedExtension: '.g.dart'}) {
18+
GeneratorBuilder(this.generators, {this.generatedExtension: '.g.dart'}) {
2119
// TODO: validate that generatedExtension starts with a `.'
2220
// not null, empty, etc
2321
}
@@ -27,7 +25,7 @@ class GeneratorBuilder extends Builder {
2725
var id = buildStep.input.id;
2826
var resolver = await buildStep.resolve(id, resolveAllConstants: false);
2927
var lib = resolver.getLibrary(id);
30-
await _generateForLibrary(lib, !omitGenerateTimestamp, buildStep);
28+
await _generateForLibrary(lib, buildStep);
3129
resolver.release();
3230
}
3331

@@ -40,8 +38,8 @@ class GeneratorBuilder extends Builder {
4038
AssetId _generatedFile(AssetId input) =>
4139
input.changeExtension(generatedExtension);
4240

43-
Future _generateForLibrary(LibraryElement library, bool includeTimestamp,
44-
BuildStep buildStep) async {
41+
Future _generateForLibrary(
42+
LibraryElement library, BuildStep buildStep) async {
4543
buildStep.logger.fine('Running $generators for ${buildStep.input.id}');
4644
var generatedOutputs =
4745
await _generate(library, generators, buildStep).toList();
@@ -82,22 +80,9 @@ if approppriate.""",
8280
}
8381

8482
var outputId = _generatedFile(buildStep.input.id);
85-
var output =
86-
new Asset(outputId, '${_getHeader(includeTimestamp)}$genPartContent');
83+
var output = new Asset(outputId, '$_topHeader$genPartContent');
8784
buildStep.writeAsString(output);
8885
}
89-
90-
String _getHeader(bool includeTimestamp) {
91-
var buffer = new StringBuffer('// GENERATED CODE - DO NOT MODIFY BY HAND');
92-
buffer.writeln();
93-
94-
if (includeTimestamp) {
95-
buffer.writeln("// ${new DateTime.now().toUtc().toIso8601String()}");
96-
}
97-
98-
buffer.writeln();
99-
return buffer.toString();
100-
}
10186
}
10287

10388
Stream<GeneratedOutput> _generate(LibraryElement unit,
@@ -125,4 +110,8 @@ Stream<GeneratedOutput> _processUnitMember(
125110
}
126111
}
127112

113+
const _topHeader = '''// GENERATED CODE - DO NOT MODIFY BY HAND
114+
115+
''';
116+
128117
final _headerLine = '// '.padRight(77, '*');

test/builder_test.dart

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,7 @@ void main() {
2020
test('Bad generated source', () async {
2121
var srcs = _createPackageStub(pkgName);
2222
var phaseGroup = new PhaseGroup.singleAction(
23-
new GeneratorBuilder([const _BadOutputGenerator()],
24-
omitGenerateTimestamp: true),
23+
new GeneratorBuilder([const _BadOutputGenerator()]),
2524
new InputSet(pkgName, ['lib/test_lib.dart']));
2625

2726
await testPhases(phaseGroup, pkgName, srcs,
@@ -53,8 +52,7 @@ void main() {
5352
var srcs =
5453
_createPackageStub(pkgName, testLibContent: _testLibContentWithError);
5554
var phaseGroup = new PhaseGroup.singleAction(
56-
new GeneratorBuilder([const CommentGenerator()],
57-
omitGenerateTimestamp: true),
55+
new GeneratorBuilder([const CommentGenerator()]),
5856
new InputSet(pkgName, ['lib/test_lib.dart']));
5957
await testPhases(phaseGroup, pkgName, srcs,
6058
{'$pkgName|lib/test_lib.g.dart': _testGenPartContentError,});
@@ -67,8 +65,7 @@ Future _simpleTest() => _generateTest(
6765

6866
Future _generateTest(CommentGenerator gen, String expectedContent) async {
6967
var srcs = await _createPackageStub(pkgName);
70-
var phaseGroup = new PhaseGroup.singleAction(
71-
new GeneratorBuilder([gen], omitGenerateTimestamp: true),
68+
var phaseGroup = new PhaseGroup.singleAction(new GeneratorBuilder([gen]),
7269
new InputSet(pkgName, ['lib/test_lib.dart']));
7370

7471
await testPhases(phaseGroup, pkgName, srcs,

test/test_files/json_test_example.g.dart

Lines changed: 0 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)