flutter_plugin_tools 0.0.18+1

Flutter Plugin Tools #

Build Status pub package

Flutter Plugin Tools implements a CLI with various productivity tools for hosting multiple Flutter plugins in one github repository. It is mainly used by the flutter/plugins and flutter/flutterfire repositories. It was mainly written to facilitate testing on Travis for these repositories (see travis.yaml).

As an example, Flutter Plugin Tools allows you to:

  • Build all plugin example apps with one command
  • Run the tests of all plugins with one command
  • Format all Dart, Java, and Objective-C code in the repository
  • Define shards of the above tasks

Installation #

In order to use the tools you need to enable them once by running the following command:

$ pub global activate flutter_plugin_tools

Requirements #

To use all features of flutter_plugin_tools you'll need the following commands in your PATH:

  • flutter
  • git
  • pub (recommended: version from <path/to/flutter>/bin/cache/dart-sdk/bin)
  • clang-format version 5 (alternatively, you can provide the path via --clang-format=)

Usage #

$ pub global run flutter_plugin_tools <command>
$ pub global run flutter_plugin_tools <command> --shardIndex 0 --shardCount 3

Run commands from the flutter/plugins directory. Replace <command> with help to print a list of available commands. The sharded example above divides the plugins into three shards and executes the tool on the first shard (index 0).

v0.0.18+1 #

  • Skip version check if it contains publish_to: none.

v0.0.18 #

  • Add option to exclude packages from generated pubspec command.

v0.0.17+4 #

  • Avoid trying to version-check pubspecs that are missing a version.

v0.0.17+3 #

v0.0.17+2 #

  • Fix exception handling for version checker

v0.0.17+1 #

  • Fix bug where we used a flag instead of an option

v0.0.17 #

  • Add a command for checking the version number

v0.0.16 #

  • Add a command for generating pubspec.yaml for All Plugins app.

v0.0.15 #

  • Add a command for running driver tests of plugin examples.

v0.0.14 #

  • Check for dependencies->flutter instead of top level flutter node.

v0.0.13 #

  • Differentiate between Flutter and non-Flutter (but potentially Flutter consumed) Dart packages.

Use this package as a library

1. Depend on it

Add this to your package's pubspec.yaml file:


dependencies:
  flutter_plugin_tools: ^0.0.18+1

2. Install it

You can install packages from the command line:

with pub:


$ pub get

with Flutter:


$ flutter pub get

Alternatively, your editor might support pub get or flutter pub get. Check the docs for your editor to learn more.

Popularity:
Describes how popular the package is relative to other packages. [more]
0
Health:
Code health derived from static analysis. [more]
98
Maintenance:
Reflects how tidy and up-to-date the package is. [more]
80
Overall:
Weighted score of the above. [more]
45
Learn more about scoring.

We analyzed this package on Jul 18, 2019, and provided a score, details, and suggestions below. Analysis was completed with status completed using:

  • Dart: 2.4.0
  • pana: 0.12.19

Platforms

Detected platforms: Flutter, web, other

No platform restriction found in libraries.

Health suggestions

Fix lib/src/common.dart. (-1.99 points)

Analysis of lib/src/common.dart reported 4 hints:

line 197 col 44: Use = to separate a named parameter from its default value.

line 200 col 3: Future results in async function bodies must be awaited or marked unawaited using package:pedantic.

line 201 col 3: Future results in async function bodies must be awaited or marked unawaited using package:pedantic.

line 212 col 44: Use = to separate a named parameter from its default value.

Fix lib/src/drive_examples_command.dart. (-0.50 points)

Analysis of lib/src/drive_examples_command.dart reported 1 hint:

line 75 col 9: Future results in async function bodies must be awaited or marked unawaited using package:pedantic.

Maintenance issues and suggestions

Support latest dependencies. (-10 points)

The version constraint in pubspec.yaml does not support the latest published versions for 1 dependency (http).

Package is pre-v0.1 release. (-10 points)

While nothing is inherently wrong with versions of 0.0.*, it might mean that the author is still experimenting with the general direction of the API.

Dependencies

Package Constraint Resolved Available
Direct dependencies
Dart SDK >=1.8.0 <3.0.0
args ^1.4.3 1.5.2
async ^2.0.7 2.3.0
colorize ^2.0.0 2.0.0
git ^1.0.0 1.0.1
http ^0.11.3+17 0.11.3+17 0.12.0+2
meta ^1.1.7 1.1.7
path ^1.6.1 1.6.2
pub_semver ^1.4.2 1.4.2
pubspec_parse ^0.1.4 0.1.4
quiver ^2.0.2 2.0.3
test ^1.6.4 1.6.5
yaml ^2.1.15 2.1.16
Transitive dependencies
analyzer 0.37.0
boolean_selector 1.0.5
charcode 1.1.2
collection 1.14.11
convert 2.1.1
crypto 2.0.6
csslib 0.16.1
front_end 0.1.20
glob 1.1.7
html 0.14.0+2
http_multi_server 2.1.0
http_parser 3.1.3
io 0.3.3
js 0.6.1+1
json_annotation 2.4.0
kernel 0.3.20
matcher 0.12.5
mime 0.9.6+3
multi_server_socket 1.0.2
node_preamble 1.4.4
package_config 1.0.5
package_resolver 1.0.10
pedantic 1.8.0+1
pool 1.4.0
shelf 0.7.5
shelf_packages_handler 1.0.4
shelf_static 0.2.8
shelf_web_socket 0.2.3
source_map_stack_trace 1.1.5
source_maps 0.10.8
source_span 1.5.5
stack_trace 1.9.3
stream_channel 2.0.0
stream_transform 0.0.19
string_scanner 1.0.4
term_glyph 1.1.0
test_api 0.2.6
test_core 0.2.7
typed_data 1.1.6
vm_service_lib 3.22.2
watcher 0.9.7+12
web_socket_channel 1.0.14

Admin