diff --git a/lib/generators/console_full.dart b/lib/generators/console_full.dart index 6cb3f88751ca55e49f329d743a7cdfb80865d891..645205ac9c6013fdd5b3618d8af37eb4b7e08119 100644 --- a/lib/generators/console_full.dart +++ b/lib/generators/console_full.dart @@ -12,9 +12,10 @@ import 'console_full_data.dart'; * A generator for a hello world command-line application. */ class ConsoleFullGenerator extends DefaultGenerator { - ConsoleFullGenerator() : super('console-full', 'Console Application', - 'A larger command-line application sample.', - categories: const ['dart', 'console']) { + ConsoleFullGenerator() + : super('console-full', 'Console Application', + 'A larger command-line application sample.', + categories: const ['dart', 'console']) { for (TemplateFile file in decodeConcatenatedData(data)) { addTemplateFile(file); } diff --git a/lib/generators/console_simple.dart b/lib/generators/console_simple.dart index bd6341307661fd86632654f90953a2a922869f38..913932759d4084c68b39a8d44a0ce4db8d0386c8 100644 --- a/lib/generators/console_simple.dart +++ b/lib/generators/console_simple.dart @@ -12,9 +12,10 @@ import 'console_simple_data.dart'; * A generator for a hello world command-line application. */ class ConsoleSimpleGenerator extends DefaultGenerator { - ConsoleSimpleGenerator() : super('console-simple', 'Console Application', - 'A simple command-line application.', - categories: const ['dart', 'console']) { + ConsoleSimpleGenerator() + : super('console-simple', 'Console Application', + 'A simple command-line application.', + categories: const ['dart', 'console']) { for (TemplateFile file in decodeConcatenatedData(data)) { addTemplateFile(file); } @@ -22,5 +23,6 @@ class ConsoleSimpleGenerator extends DefaultGenerator { setEntrypoint(getFile('bin/main.dart')); } - String getInstallInstructions() => "run your app using 'dart ${entrypoint.path}'"; + String getInstallInstructions() => + "run your app using 'dart ${entrypoint.path}'"; } diff --git a/lib/generators/package_simple.dart b/lib/generators/package_simple.dart index 07765fa1166c221e638c66151f74ed8f5824a065..9da3947146eb957cd6f21255be409af811bf26ea 100644 --- a/lib/generators/package_simple.dart +++ b/lib/generators/package_simple.dart @@ -12,9 +12,10 @@ import 'package_simple_data.dart'; * A generator for a pub library. */ class PackageSimpleGenerator extends DefaultGenerator { - PackageSimpleGenerator() : super('package-simple', 'Dart Package', - 'A starting point for Dart libraries or applications.', - categories: const ['dart']) { + PackageSimpleGenerator() + : super('package-simple', 'Dart Package', + 'A starting point for Dart libraries or applications.', + categories: const ['dart']) { for (TemplateFile file in decodeConcatenatedData(data)) { addTemplateFile(file); } diff --git a/lib/generators/server_appengine.dart b/lib/generators/server_appengine.dart index 4f9cbf8c00d5c62b184f27356f18e4f6b038508b..bca95b0c558ba11debd7802d5e15696239911cb1 100644 --- a/lib/generators/server_appengine.dart +++ b/lib/generators/server_appengine.dart @@ -12,9 +12,10 @@ import '../src/common.dart'; * A generator for a hello world AppEngine application. */ class ServerAppEngineGenerator extends DefaultGenerator { - ServerAppEngineGenerator() : super('server-appengine', - 'App Engine Application', 'A simple App Engine application.', - categories: const ['dart', 'appengine', 'server']) { + ServerAppEngineGenerator() + : super('server-appengine', 'App Engine Application', + 'A simple App Engine application.', + categories: const ['dart', 'appengine', 'server']) { for (TemplateFile file in decodeConcatenatedData(data)) { addTemplateFile(file); } diff --git a/lib/generators/server_shelf.dart b/lib/generators/server_shelf.dart index 63cc452fca354eda7b5de070475edd026371f941..9067fca9730284e1285126454447ee7c3b1470d5 100644 --- a/lib/generators/server_shelf.dart +++ b/lib/generators/server_shelf.dart @@ -12,9 +12,10 @@ import 'server_shelf_data.dart'; * A generator for a hello world command-line application. */ class ServerShelfGenerator extends DefaultGenerator { - ServerShelfGenerator() : super('server-shelf', 'Shelf Web Server', - 'A web server built using the shelf package.', - categories: const ['dart', 'shelf', 'server']) { + ServerShelfGenerator() + : super('server-shelf', 'Shelf Web Server', + 'A web server built using the shelf package.', + categories: const ['dart', 'shelf', 'server']) { for (TemplateFile file in decodeConcatenatedData(data)) { addTemplateFile(file); } diff --git a/lib/generators/web_polymer.dart b/lib/generators/web_polymer.dart index 3cf76a471ffa5d3c1fbacf7a743a1eb5757c8374..71fe721ce94cb5a389709ab4c26f4d280aacd4fd 100644 --- a/lib/generators/web_polymer.dart +++ b/lib/generators/web_polymer.dart @@ -12,9 +12,10 @@ import 'web_polymer_data.dart'; * A generator for a polymer.dart application. */ class WebPolymerGenerator extends DefaultGenerator { - WebPolymerGenerator() : super('web-polymer', 'Polymer Web Application', - 'A web app built using polymer.dart.', - categories: const ['dart', 'web']) { + WebPolymerGenerator() + : super('web-polymer', 'Polymer Web Application', + 'A web app built using polymer.dart.', + categories: const ['dart', 'web']) { for (TemplateFile file in decodeConcatenatedData(data)) { addTemplateFile(file); } diff --git a/lib/generators/web_simple.dart b/lib/generators/web_simple.dart index 066b842a04c25dc03bc54ee19e3729bdab584cc8..4516647827a9ed21f7e9b50a426eec82128f0ed0 100644 --- a/lib/generators/web_simple.dart +++ b/lib/generators/web_simple.dart @@ -12,9 +12,10 @@ import 'web_simple_data.dart'; * A generator for a uber-simple web application. */ class WebSimpleGenerator extends DefaultGenerator { - WebSimpleGenerator() : super('web-simple', - 'Uber Simple Web Application', 'An absolute bare-bones web app.', - categories: const ['dart', 'web']) { + WebSimpleGenerator() + : super('web-simple', 'Uber Simple Web Application', + 'An absolute bare-bones web app.', + categories: const ['dart', 'web']) { for (TemplateFile file in decodeConcatenatedData(data)) { addTemplateFile(file); } diff --git a/lib/src/cli_app.dart b/lib/src/cli_app.dart index 95744d96915bc762f54f8771fb78cbc8a494d2ab..02d9eff29f050f3168a82c2bc66917269f6e5bb5 100644 --- a/lib/src/cli_app.dart +++ b/lib/src/cli_app.dart @@ -98,9 +98,10 @@ class CliApp { if (options['help'] || args.isEmpty) { // Prompt to opt into advanced analytics. if (!analytics.hasSetOptIn) { - _out("Welcome to Stagehand! We collect anonymous usage statistics and crash reports in"); - _out("order to improve the tool (http://goo.gl/6wsncI). Would you like to opt-in to"); - _out("additional analytics to help us improve Stagehand [y/yes/no]? "); + _out( + """Welcome to Stagehand! We collect anonymous usage statistics and crash reports in +order to improve the tool (http://goo.gl/6wsncI). Would you like to opt-in to +additional analytics to help us improve Stagehand [y/yes/no]? """); io.stdout.flush(); String response = io.stdin.readLineSync(); response = response.toLowerCase().trim(); @@ -228,7 +229,8 @@ class CliApp { } void _usage(ArgParser argParser) { - _out('Stagehand will generate the given application type into the current directory.'); + _out( + 'Stagehand will generate the given application type into the current directory.'); _out(''); _out('usage: ${APP_NAME} <generator-name>'); _out(argParser.usage); @@ -262,7 +264,8 @@ class CliApp { return dir .listSync(followLinks: false) .where((entity) => entity is io.Directory) - .where((entity) => !isHiddenDir(entity)).isEmpty; + .where((entity) => !isHiddenDir(entity)) + .isEmpty; } } diff --git a/pubspec.yaml b/pubspec.yaml index f1b478b35dcb48d9fdebd388f33d3bcd1a66887a..3909169e50748d2191c5a59ace14f4542c7f9b1d 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -4,7 +4,7 @@ name: stagehand # When changing this version, change the lib/src/cli_app.dart version as well. -version: 0.2.3+1 +version: 0.2.4-dev description: > A scaffolding generator for your Dart projects. Stagehand helps you get set up! @@ -13,16 +13,19 @@ authors: - Seth Ladd <sethladd@google.com> - Devon Carew <devoncarew@google.com> +environment: + sdk: '>=1.9.0 <2.0.0' + # Add the bin/stagehand.dart script to the scripts pub installs. executables: stagehand: dependencies: args: '>=0.12.0+1 <0.14.0' - crypto: '>=0.9.0 <0.10.0' - http: '>=0.11.0 <0.12.0' - path: '>=1.3.0 <2.0.0' - usage: '>=1.0.0 <2.0.0' + crypto: ^0.9.0 + http: ^0.11.0 + path: ^1.3.0 + usage: ^1.0.0 dev_dependencies: browser: ^0.10.0 diff --git a/templates/console-simple/bin/main.dart b/templates/console-simple/bin/main.dart index ee097e0823d86c151c893bbf31ef8b1ba4721914..d7c54ac23cfdaa5193fac2ed9a3f3a5cd7a9c92b 100644 --- a/templates/console-simple/bin/main.dart +++ b/templates/console-simple/bin/main.dart @@ -1,4 +1,3 @@ - main(List<String> args) { print('Hello world!'); } diff --git a/templates/server-appengine/bin/server.dart b/templates/server-appengine/bin/server.dart index f631ab13c288c73323b9fabf7f80c0d5d5479c2c..a2557f20ba5f279dc01095b662a2586cff01dfff 100644 --- a/templates/server-appengine/bin/server.dart +++ b/templates/server-appengine/bin/server.dart @@ -31,8 +31,8 @@ void requestHandler(HttpRequest request) { ..close(); } }).catchError((_) => request.response - ..write('Failed handling request: ${request.toString()}.') - ..close()); + ..write('Failed handling request: ${request.toString()}.') + ..close()); } /// GET request handler. @@ -65,9 +65,10 @@ handleGetRequest(HttpRequest request) { cache.read(response, queryMap.keys); } else if (request.uri.path == '/clear_cache') { // Reintialize the cache. This clears all values and resets the default. - cache.clear() - .then((_) => response.writeln('Cleared cache!')) - .whenComplete(response.close); + cache + .clear() + .then((_) => response.writeln('Cleared cache!')) + .whenComplete(response.close); } else { // Serve some static content. This must be located in 'build/web' or some // subdirectory of 'build/web'. diff --git a/templates/server-shelf/bin/server.dart b/templates/server-shelf/bin/server.dart index e4ce357a007ef469f7a081b2c58c8c4d90492818..4fa9eacb6201fa4a521ea04e68396d31eb3a8403 100644 --- a/templates/server-shelf/bin/server.dart +++ b/templates/server-shelf/bin/server.dart @@ -9,7 +9,7 @@ import 'package:shelf/shelf_io.dart' as io; void main(List<String> args) { var parser = new ArgParser() - ..addOption('port', abbr: 'p', defaultsTo: '8080'); + ..addOption('port', abbr: 'p', defaultsTo: '8080'); var result = parser.parse(args); diff --git a/test/common_test.dart b/test/common_test.dart index ea43d5210f681ece3689ed3dc25564bffd3793eb..78dcbe7d38bf923548ce269d4e819b94e408a6d8 100644 --- a/test/common_test.dart +++ b/test/common_test.dart @@ -28,7 +28,8 @@ void main() { }); test('convertToYamlMultiLine', () { - expect(convertToYamlMultiLine( + expect( + convertToYamlMultiLine( 'one two three four five size seven eight nine ' 'ten eleven twelve thirteen fourteen fifteen'), ' one two three four five size seven eight nine ten eleven twelve ' diff --git a/test/validate_templates.dart b/test/validate_templates.dart index d3f04594b4728d606e59afa350acea2b9d29b85e..5b9b92944162c52b08c3c8cd615b498dd22f2ff0 100644 --- a/test/validate_templates.dart +++ b/test/validate_templates.dart @@ -55,8 +55,8 @@ void _testGenerator(stagehand.Generator generator, Directory tempDir) { !FileSystemEntity.isFileSync(filePath)) { var parent = new Directory(path.dirname(filePath)); - var file = _listSync(parent).firstWhere((f) => f.path.endsWith('.dart'), - orElse: () => null); + var file = _listSync(parent) + .firstWhere((f) => f.path.endsWith('.dart'), orElse: () => null); if (file == null) { filePath = null; @@ -78,7 +78,8 @@ void _testGenerator(stagehand.Generator generator, Directory tempDir) { var devDeps = pubspecContent['dev_dependencies']; if (devDeps != null) { if (devDeps.containsKey('test')) { - Pub.run('test', runOptions: new RunOptions(workingDirectory: tempDir.path)); + Pub.run('test', + runOptions: new RunOptions(workingDirectory: tempDir.path)); } } } diff --git a/tool/grind.dart b/tool/grind.dart index 602a6170a21443a1edfd58f0c229abcaea1306d6..56114892a27f19690a09509fd20a0a5715d91d2d 100644 --- a/tool/grind.dart +++ b/tool/grind.dart @@ -11,16 +11,19 @@ import 'package:path/path.dart' as path; import 'package:stagehand/stagehand.dart' as stagehand; final RegExp _binaryFileTypes = new RegExp( - r'\.(jpe?g|png|gif|ico|svg|ttf|eot|woff|woff2)$', caseSensitive: false); + r'\.(jpe?g|png|gif|ico|svg|ttf|eot|woff|woff2)$', + caseSensitive: false); main(List<String> args) => grind(args); -@Task('Concatenate the template files into data files that the generators can consume') +@Task('Concatenate the template files into data files' + ' that the generators can consume') void build() { stagehand.generators.forEach((generator) { _concatenateFiles( getDir('templates/${generator.id}'), - getFile('lib/generators/${generator.id.replaceAll('-', '_')}_data.dart')); + getFile( + 'lib/generators/${generator.id.replaceAll('-', '_')}_data.dart')); }); // Update the readme.md file. @@ -30,10 +33,7 @@ void build() { return '* `${g.id}` - ${g.description}'; }).join('\n'); String newSource = _replaceInString( - source, - '## Stagehand templates', - '## Installation', - fragment + '\n'); + source, '## Stagehand templates', '## Installation', fragment + '\n'); f.writeAsStringSync(newSource); // Update the site/index.html file. @@ -42,11 +42,8 @@ void build() { fragment = stagehand.generators.map((g) { return ' <li>${g.id} - <em>${g.description}</em></li>'; }).join('\n'); - newSource = _replaceInString( - source, - '<ul id="template-list">', - '</ul>', - fragment); + newSource = + _replaceInString(source, '<ul id="template-list">', '</ul>', fragment); f.writeAsStringSync(newSource); } @@ -134,8 +131,8 @@ List<FileSystemEntity> _listSync(Directory dir, /// Look for [start] and [end] in [source]; replace the current contents with /// [replacement], and return the result. -String _replaceInString(String source, String start, - String end, String replacement) { +String _replaceInString( + String source, String start, String end, String replacement) { int startIndex = source.indexOf(start); int endIndex = source.indexOf(end, startIndex + 1);