pub repository
mirror.p-hatan.irsource_gen
1.2.0Source code generation builders and utilities for the Dart build system
Readme
Overview
source_gen provides utilities for automated source code generation for Dart:
- A framework for writing Builders that consume and produce Dart code.
- A convention for human and tool generated Dart code to coexist with clean separation, and for multiple code generators to integrate in the same project.
It's main purpose is to expose a developer-friendly API on top of lower-level
packages like the analyzer or build. You don't have to use
source_gen in order to generate source code; we also expose a set of library
APIs that might be useful in your generators.
Quick Start Guide for writing a Generator
Add a dependency on source_gen in your pubspec.
dependencies:
source_gen:
If you're only using source_gen in your own project to generate code and you
won't publish your Generator for others to use, it can be a dev_dependency:
dev_dependencies:
source_gen:
Once you have source_gen setup, you should reference the examples below.
Writing a generator to output Dart source code
Extend the Generator or GeneratorForAnnotation class and source_gen will
call your generator for a Dart library or for each element within a library
tagged with the annotation you are interested in.
Configuring and Running generators
source_gen is based on the build package and exposes options for using
your Generator in a Builder. Choose a Builder based on where you want the
generated code to end up:
- If you want to write to
.g.dartfiles which are referenced as apartin the original source file, useSharedPartBuilder. This is the convention for generated code in part files, and this file may also contain code fromGenerators provided by other packages. - If you want to write to
.some_name.dartfiles which are referenced as apartin the original source file, usePartBuilder. You should choose an extension unique to your package. MultipleGenerators may output to this file, but they will all come from your package and you will set up the entire list when constructing the builder. - If you want to write standalone Dart library which can be
imported useLibraryBuilder. Only a singleGeneratormay be used as aLibraryBuilder.
In order to get the Builder used with build_runner it must be configured
in a build.yaml file. See build_config for more details. Whenever you are
publishing a package that includes a build.yaml file you should include a
dependency on build_config in your pubspec.
When using SharedPartBuilder it should always be configured to build_to: cache (hidden files) and apply the combining_builder from this package. The
combining builder reads in all the pieces written by different shared part
builders and writes them to the final .g.dart output in the user's source
directory. You should never use the .g.dart extension for any other Builder.
builders:
some_cool_builder:
import: "package:this_package/builder.dart"
builder_factories: ["someCoolBuilder"]
# The `partId` argument to `SharedPartBuilder` is "some_cool_builder"
build_extensions: {".dart": [".some_cool_builder.g.part"]}
auto_apply: dependents
build_to: cache
# To copy the `.g.part` content into `.g.dart` in the source tree
applies_builders: ["source_gen|combining_builder"]
Configuring combining_builder ignore_for_file
Sometimes generated code does not support all of the
lints specified in the target package.
When using a Builder based on package:source_gen which applies
combining_builder, set the ignore_for_file option to a list of lints you
wish to be ignored in all generated libraries.
Example build.yaml configuration:
targets:
$default:
builders:
source_gen|combining_builder:
options:
ignore_for_file:
- lint_alpha
- lint_beta
If you provide a builder that uses SharedPartBuilder and combining_builder,
you should document this feature for your users.
Generating files in different directories
The output location for an input file can be changed:
- when using
PartBuilderorLibraryBuilder. - when using
SharedPartBuilderwhich apply thecombining_builderas part of the build.
By default, a .g.dart or .some_name.dart file is generated next to the input.
To change this, set the build_extensions option on the corresponding builder. In
the options, build_extensions is a map from String to String, where the
key is matches inputs and the value is a single build output.
For more details on build extensions, see the docs in the build package.
For example, you can use these options to generate files under lib/generated
with the following build configuration:
targets:
$default:
builders:
# A SharedPartBuilder which uses the combining builder
source_gen|combining_builder:
options:
build_extensions:
'^lib/{{}}.dart': 'lib/generated/{{}}.g.dart'
# A PartBuilder or LibraryBuilder
some_cool_builder:
options:
build_extensions:
'^lib/models/{{}}.dart': 'lib/models/generated/{{}}.foo.dart'
Remember to change the part statement in the input to refer to the correct
output file in the other directory.
Note that builder options are part of source_gen's public api! When using
them in a build configuration, always add a dependency on source_gen as well:
dev_dependencies:
source_gen: ^1.1.0
FAQ
What is the difference between source_gen and build?
Build is a platform-agnostic framework for Dart asset or code generation that is pluggable into build systems including bazel, and standalone tools like build_runner. You could also build your own.
Meanwhile, source_gen provides an API and tooling that is easily usable on
top of build to make common tasks easier and more developer friendly. For
example the PartBuilder class wraps one or more
Generator instances to make a Builder which
creates part of files, while the LibraryBuilder class
wraps a single Generator to make a Builder which creates Dart library files.
Changelog
1.2.0
- Include the
LibraryElementinLibraryReader.allElements,LibraryReader.annotatedWith, andLibraryReader.annotatedWithExact. RunGeneratorForAnnotationgenerators on library elements when thelibrarystatement has the annotation. - Add support for
build_extensionsconfiguration to thePartBuilderandLibraryBuilder. You must forward theBuilderOptionsobject to the super constructor for this to work. - Fix a bug finding source locations for reporting unresolved annotations on parameters.
- Fix a bug checking for
partstatements on Windows.
1.1.1
- Drop dependency on
package:pedantic.
1.1.0
- Add the
build_extensionsoption tocombining_builder, allowing output files to be generated into a different directory.
1.0.5
- Fix a bug with reviving constant expressions which are fields defined on a different class than their type (but in the same library).
1.0.4
- Fix warnings with latest analyzer, require analyzer 2.x.
1.0.3
- Allow the latest version of
package:analyzer.
1.0.2
- Fix
TypeChecker.fromRuntimeTypefor types that come from non-package uris.
1.0.1
- Improve the error message for a missing part directive.
- Upgrade to
package:analyzerversion1.7.0.
1.0.0
- Migrate to null safety.
- Drop deprecated APIs:
ConstantReader.isAny.ConstantReader.anyValue.LibraryReader.classElements.
0.9.10+4
- Upgrade to
package:buildversion2.0.0. - Handle alias types with
DartType.aliasElement.
0.9.10+3
- Allow the latest version of
package:analyzer.
0.9.10+2
- Expand allowed versions for the glob package as source_gen is compatible to break circular dependency issues in the ecosystem.
0.9.10+1
- Fix a bug in the early bailout optimization where it wouldn't check for annotations in part files.
0.9.10
- Optimize for the case where we have only GeneratorForAnnotation generators, and we know there are no annotations present in the file at all.
0.9.9
- Allow
package:analyzerversion0.41.x.
0.9.8
- Add support for
allowSyntaxErrorsflag introduced inpackage:buildversion1.4.0. - Update minimum Dart SDK to
2.10.0.
0.9.7+1
- Allow
package:analyzerversion0.40.x.
0.9.7
- Match Dart language version overrides parts generated by
PartBuilder.
0.9.6
- Add support for
SetinConstantReader.- Updated
isLiteralandliteralValueto handleSet. - Added
isSetandsetValuemembers.
- Updated
- Include matching Dart language version overrides in generated parts if the source library has a language version override.
- Streamlined error handling in all builders. There should be no user-visible behavior change.
- Improve the error message when source code formatting fails.
- Update minimum Dart SDK to
2.7.0. - Changed the behavior of
LibraryReader.allElementsto include extensions.
0.9.5
-
Add support for an
ignore_for_fileoption tocombining_builder. -
Expand documentation for
GeneratorForAnnotationto make it clear that it only targets elements at the top level of a library.
0.9.4+7
- Fix an exception during error reporting when the
Elementreported is in a summary file rather than a source file.
0.9.4+6
- Allow
package:analyzerversion0.39.x.
0.9.4+5
- Fix a bug for finding the element for a function with recent versions of
analyzer.
0.9.4+4
- Allow
pkg:analyzerversion0.38.x.
0.9.4+3
- Allow
pkg:analyzerversion0.37.x.
0.9.4+2
- Allow
pkg:analyzerversion0.36.x.
0.9.4+1
- Support the latest
pkg:analyzer.
0.9.4
- Use
ParsedLibraryResultto find source spans for unresolvable annotations.
0.9.3
- Rename
LibraryReader.classElementstoLibraryReader.classesto better reflect the behavior. Deprecate the old name. - Add
LibraryReader.enums.
0.9.2
- Avoid using the AST analyzer model from
LibraryReader. - Don't create part files with no corresponding library.
- Update analyzer constraint to allow 0.34.x.
0.9.1+3
- Support the latest
pkg:analyzer.
0.9.1+2
- Correctly handle properties in
spanForElement.
0.9.1+1
- Allow
package:buildversion 1.0.0.
0.9.1
-
The result of
ConstantReader.revive()now returns aRevivablethat assumes access to a private class, constructor, or function instead ofnullwhere possible. This allows generators that usepartfiles to still use this functionality and allows generators that use separate libraries to emit more actionable error messages (i.e."cannot use private class _X"). -
Revivable.isPrivatenow returnstruewhen the underlying class was public but the constructor was private, or theRevivablewas pointing to a top-level or static private field or method. Previously it was onlytruewhen referencing a private class.
0.9.0+1
- Fix
LibraryReader.classElementsto return classes from parts, if they exist, as well as from the defining library file.
0.9.0
- Introduce
SharedPartBuilderfor creating part files that can be merged with a newCombiningBuilder. Note thatCombiningBuilderonly outputs.g.dartfiles. - Breaking
PartBuildernow requires ageneratedExtensionsargument. The value should not be.g.dart. To produce.g.dartfiles please use theSharedPartBuilder.
0.8.3+1
- Allow using non-dev Dart 2 SDK.
0.8.3
GeneratorForAnnotationgenerateForAnnotatedElementnow allow multiple return values when implementations return anIterableorStream.- Values from
generateForAnnotatedElementhave whitespace trimmed.nulland empty values are ignored. - Duplicate values are collapsed into a single values. This allows emitting shared, top-level members without naming collisions.
0.8.2
-
Simplification to the output of generator names in header sections.
-
Update handling of whitespace in generator outputs.
- If the output from a generator has wrapping whitespace, it is trimmed.
- If the output from a generator is empty or whitespace-only, it is ignored.
- These changes will likely have no effect on output, unless you customize the code formatter.
0.8.1+3
- More redundant new lines elimination.
0.8.1+2
- Eliminate redundant new lines in the core builder. These were almost removed by running the default formatter. Now the unformatted code more closely matches the default output.
0.8.1+1
- Support
package:analyzer0.32.0.
0.8.1
-
Cleanup logging output that duplicates headers provided by
package:build_runner. -
InvalidGenerationSourceErroradded an optionalelementparameter to support more helpful error messages.
0.8.0
-
BREAKING removed the deprecated
requireLibraryDirectiveparameter inPartBuilder. -
Revivableno longer throws a type error when attempting to revive a reference to a top-level function or static-class method. Now is returns a reference to that function or method, as expected.
0.7.6
TypeCheckernow throws anUnresolvedAnnotationExceptionwith a more detailed exception body (and properties useful for further debugging) instead ofCould not resolve @null.
0.7.5+1
LibraryBuilderandPartBuildernow have a more readabletoString(), which is useful when emitting a warning or error in a build system. For example you may seeGenerating .g.dart: MyBuilderinstead ofInstance of LibraryBuilderin your build logs.
0.7.5
-
The
PartBuilderconstructor parameterrequireLibraryDirectivenow defaults tofalse. It will be removed in0.8.0. -
Require at least Dart
2.0.0-dev.19.0.
0.7.4+3
- Support the latest
analyzerpackage.
0.7.4+2
-
BUG FIX:
ConstantReader.revive()now properly returns no URL fragment when the constant expression is resolved from a top-level or static-field. The documentation had said otherwise, and it was impossible to tell the difference between a constructor and a field. Now, fields are always in the form of accessor ={clazz}.{field}or{topLevelField}. -
Fix file URIs on windows.
0.7.4+1
- Removed a
log.finestwith the output source of each generator. This allows a verbose option (-v) for tools like bazel or build_runner to be much more readable and debuggable. Files are emitted to disk for inspection in any case.
0.7.4
-
Added
typeNameOf, which is a safe way to get the name of aDartType, even when the type is aFunctionType, which has anullname in newer versions of the Dart analyzer. -
Added
LibraryReader.pathToUrl(Uri|String), which computes theimportorexportpath necessary to reach the provided URL from the current library. Also addedpathToAssetandpathToElementas convenience functions. -
Expanded
package:buildsupport to allow version0.12.0.
0.7.3
- Allow null and empty outputs form
GeneratorForAnnotation.
0.7.2+1
- Allow
package:buildversion 0.11.0
0.7.2
- Support an optional
headerargument toPartBuilderandLibraryBuilder.
0.7.1
Generator{ForAnnotation}
- Return type of
generate{ForAnnotatedElement}is nowFutureOr<String>.
LibraryReader
- Added
annotatedElementsto return all elements annotated with something. - Added
classElementsgetter for returning allclass-es in a library.
TypeChecker
- Added
hasAnnotationOfandhasAnnotationOfExact.
ConstantReader
- Added
isAny(for consistency, but deprecated) andisLiteral. - Added
literalValueas an alias for the now deprecatedanyValue. - Allow
literalValueto returnnullif the value is actuallynull. - Fixed a bug where a
Symbolwould return as aStringforanyValue. - Fixed a bug where a
ListandMapwere not considered literals.
0.7.0
-
Breaking changes: See the wiki for help upgrading.
Generator.generatenow operates on aLibraryReaderrather than being called for everyElementwithin a library. Generators can iterate over elements usingLibraryReader.allElements.GeneratorForAnnotationwill continue to callgenerateForAnnotatedElementrepeatedly for each element.GeneratorForAnnotationpasses in aConstantReaderfor the annotation instance rather than re-creating it using mirrors.GeneratorBuilderis replaced withPartBuilderandLibraryBuilderdepending on whether the output is meant to be included in apartfile.- Removed
JsonSerializableand related classes. These are moved topackage:json_serializable. - Removed
lib/builder.dart. Import throughsource_gen.dartinstead. - Removed
OutputFormattertypedef.
-
Add
LibraryReader.allElements- a utility to iterate across allElementinstances contained in Dart library. -
Add
LibraryReader.elementto get back to theLibraryElementinstance. -
Add
ConstantReader.objectValueto get back to theDartObjectinstance. -
Add
ConstantReader.peekto read a value that returnsnullif not found:
// Tries to read the field "token" first, then "_token".
findTokenField(DartObject o) {
final reader = new ConstantReader(o);
final token = o.peek('token') ?? o.read('_token');
}
- Add
throwOnUnresolvedoptional parameter toTypeChecker.annotationsOf,TypeChecker.annotationsOfExact,TypeChecker.firstAnnotationOf, andTypeChecker.firstAnnotationOfExact. Setting this tofalsewill enable you to check for matching annotations with incomplete type information (at your own risk). - Builder logs now log the primary inputs
AssetIdinstead of thelibrary, which is more useful for tracking down the actual files.
0.6.1+1
- Tighten constraint on
source_span.
0.6.1
- Added
spanForElement; returns aSourceSpanfor an analyzerElement. - Logs a warning to the console when a
GeneratorBuilderoutputs a part file for a given input, but that input does not definepart 'name.g.dart';.
0.6.0
- Breaking change:
TypeChecker#annotationsOf|firstAnnotationOfnow returns annotations that are assignable to theTypeChecker's type. As a result we've added#annotationsOfExact|firstAnnotationOfExactwhich has the old behavior for precise checks. TypeChecker#annotations...-methods now throw aStateErrorif one or more annotations on an element are not resolvable. This is usually a sign of a misspelling, missing import, or missing dependency.- Added
TypeChecker.any, which delegates to multiple otherTypeCheckerimplementations when making a type check.
0.5.10+1
- Update minimum
analyzerpackage to0.29.10.
0.5.10
- Bug fixes:
- Do not fail when "library" is omitted but nothing would be output.
- Do not fail on extensions that don't end in ".dart" (valid use case).
0.5.9
-
Update the minimum Dart SDK to
1.22.1. -
Deprecated
builder.dart: importsource_gen.dartinstead. -
Added
TypeChecker, a high-level API for performing static type checks:import 'package:analyzer/dart/element/type.dart'; import 'package:source_gen/source_gen.dart'; void checkType(DartType dartType) { // Checks compared to runtime type `SomeClass`. print(const TypeChecker.forRuntime(SomeClass).isExactlyType(dartType)); // Checks compared to a known Url/Symbol: const TypeChecker.forUrl('package:foo/foo.dart#SomeClass'); // Checks compared to another resolved `DartType`: const TypeChecker.forStatic(anotherDartType); } -
Failing to add a
librarydirective to a library that is being used as a generator target that generates partial files (part of) is now an explicit error that gives a hint on how to name and fix your library:> Could not find library identifier so a "part of" cannot be built. > > Consider adding the following to your source file: > > "library foo.bar;"In Dart SDK
>=1.25.0this can be relaxed aspart ofcan refer to a path. To opt-in,GeneratorBuildernow has a new flag,requireLibraryDirective. Set it tofalse, and also set yoursdkconstraint appropriately:sdk: '>=1.25.0 <2.0.0' -
Added
LibraryReader, a utility class forLibraryElementthat exposes high-level APIs, includingfindType, which traversesexportdirectives for publicly exported types. For example, to findGeneratorfrompackage:source_gen/source_gen.dart:void example(LibraryElement pkgSourceGen) { var library = new LibraryReader(pkgSourceGen); // Instead of pkgSourceGen.getType('Generator'), which is null. library.findType('Generator'); } -
Added
ConstantReader, a high-level API for reading from constant (static) values from Dart source code (usually represented byDartObjectfrom theanalyzerpackage):abstract class ConstantReader { factory ConstantReader(DartObject object) => ... // Other methods and properties also exist. /// Reads[ field] from the constant as another constant value. ConstantReader read(String field); /// Reads [field] from the constant as a boolean. /// /// If the resulting value is `null`, uses [defaultTo] if defined. bool readBool(String field, {bool defaultTo()}); /// Reads [field] from the constant as an int. /// /// If the resulting value is `null`, uses [defaultTo] if defined. int readInt(String field, {int defaultTo()}); /// Reads [field] from the constant as a string. /// /// If the resulting value is `null`, uses [defaultTo] if defined. String readString(String field, {String defaultTo()}); }
0.5.8
- Add
formatOutputoptional parameter to theGeneratorBuilderconstructor. This is a lambda of the formString formatOutput(String originalCode)which allows you do do custom formatting.
0.5.7
- Support for package:analyzer 0.30.0
0.5.6
- Support for package:build 0.9.0
0.5.5
- Support package:build 0.8.x
- Less verbose errors when analyzer fails to resolve the input.
0.5.4+3
- Support the latest release of
pkg/dart_style.
0.5.4+2
- Use the new
logfield instead of the deprecatedbuildStep.logger
0.5.4+1
- Give more information when
dartfmtfails.
0.5.4
- Update to latest
build,build_runner, andbuild_testreleases.
0.5.3+2
- BugFix: Always release the Resolver instance, even when generation does not run
0.5.3+1
- Don't throw when running against a non-library asset and getting no LibraryElement
0.5.3
- Add matchTypes method. As with anything imported from /src/ this is use-at-your-own-risk since it is not guaranteed to be stable
- Internal cleanup
- Drop some unused utility methods
- Move cli_util to dev_dependencies
- Avoid some deprecated analyzer apis
- Syntax tweaks
- Drop results.dart which had no usages
0.5.2
- Use library URIs (not names) to look up annotations in the mirror system.
- Loosen version constraint to allow package:build version 0.6
- Fix a bug against the latest SDK checking whether List implements Iterable
0.5.1+7
- Generate valid strong-mode code for typed lists.
0.5.1+6
- Support the latest version of
pkg/build.
0.5.1+5
- Remove "experimental" comment in
README.md.
0.5.1+4
- Support
package:analyzer0.29.0
0.5.1+3
- Upgrade to be compatible with the breaking changes in analyzer 0.28.0
0.5.1+2
- Avoid calling
computeNode()while instantiating annotation values
0.5.1+1
- Support the latest version of
buildpackage.
0.5.1
- Added GeneratorBuilder option isStandalone to generate files that aren't part of source file.
0.5.0+3
- Fixed multi-line error output.
0.5.0+2
-
Remove an outdated work-around.
-
Make strong-mode clean.
0.5.0+1
- Support the latest version of
pkg/build.
0.5.0
-
Breaking: Switch to the
buildpackage for runningGenerators. This means that the top levelbuildandgeneratefunctions are no longer available, and have been replaced by the top levelbuild,watch, andservefunctions from thebuildpackage, and theGeneratorBuilderclass. Seetool/build.dart,tool/watch.dart, andtool/phases.dartfor usage.- Note that the
buildpackage is experimental, and likely to change.
- Note that the
-
Breaking: The build package provides an abstraction for reading/writing files via the
BuildStepclass, and that is now also provided toGenerator#generateandGeneratorForAnnotation#generateForAnnotatedElementas a second argument. -
Timestamps are no longer included in generated code.
-
There is no longer a need to specify the files related to an individual generator via
AssociatedFileSet. Simply use theBuildStepinstance to read and write files and thebuildpackage will track any files you read in and run incremental rebuilds as necessary.
0.4.8
-
Added support for
SymbolandTypein annotations. -
Improved error output when unable to create an instance from an annotation.
0.4.7+2
- Upgrade to
analyzer '^0.27.1'and removed a work-around for a fixedanalyzerissue.
0.4.7+1
- Upgrade to
analyzer '^0.27.0'.
0.4.7
JsonSerializableGeneratornow supports classes with read-only properties.
0.4.6
-
JsonSerializable: AddedJsonKeyannotation. -
Improved output of generation errors and stack traces.
-
Require
analyzer '^0.26.2'.
0.4.5+1
- Handle
nullvalues forListproperties.
0.4.5
JsonSerializable: add support forListvalues.
0.4.4+1
- Updated
README.mdto highlight thebuild_systempackage and de-emphasize Dart Editor.
0.4.4
-
Added
omitGenerateTimestampandfollowLinksnamed args tobuild. -
Added
followLinkstogenerate.
0.4.3+1
- Update tests to use a more reliable method to find the current package root.
0.4.3
-
Require Dart
1.12. -
Add implicit support for
.packages. If the file exists, it is used. If not, we fall back to using thepackagesdirectory. -
Support the latest releases of
analyzeranddart_stylepackages.
0.4.2
- Use
fromJsonif it's defined in a child field.
0.4.1
- Match annotations defined in parts. Thanks, Greg!
0.4.0+1
- Support the latest release of
analyzerandargs.
0.4.0
- Analysis no longer parses function bodies. This greatly speeds up generation, but it could break any usage that needs function bodies.
0.3.0+2
- Fixed
README.md.
0.3.0+1
- Updates for move to
dart-langorg on GitHub.
0.3.0
-
BREAKING Returning a descriptive value from
generate. -
BREAKING Fixed incorrectly named argument
omitGenerateTimestamp. -
JsonSerializable: Handledynamicandvaras field types.
0.2.4
- Added
associatedFileSettoGenerator. Allows a generator to specify that changes to any file in a directory next to a Dart source file can initiate a generation run.
0.2.3
-
Use
async *. Requires SDK >=1.9.0-dev.10 -
Protect against crash during code format.
0.2.2
-
Added
omitGenerateTimestamp(incorrectly spelled) named argument togeneratemethod. -
Generator.generateis now called with theLibraryElement, too.
0.2.1
-
Fixed critical bug affecting annotation matching. #35
-
Started using published
dart_stylepackage.
0.2.0+2
0.2.0+1
- Updated
README.mdwith new examples. - Fixed sub-bullet indenting in
CHANGELOG.md.
0.2.0
- BREAKING Moved and renamed JSON serialization classes.
- Added a
JsonLiteralgenerator. - Improved handling and reporting of Generator errors.
JsonGenerator- Learned how to use constructor arguments.
- Learned how to properly handle
DateTime.
0.1.1
- Support for parametrized annotations.
- Add named arguments to
JsonGenerator.
0.1.0+1
README.mdupdates.
0.1.0
- BREAKING
Generator.generateis now async โ returnsFuture<String> - Big update to
README.md.
0.0.1
- Ready for experimentation.
0.0.0+1
- First play release.
Installing
export PUB_HOSTED_URL=https://pub.mirror.p-hatan.ir
flutter pub add source_genpubspec.yaml
name: source_gen
version: 1.2.0
description: >-
Source code generation builders and utilities for the Dart build system
repository: https://github.com/dart-lang/source_gen
environment:
sdk: ">=2.12.0 <3.0.0"
dependencies:
analyzer: ^2.1.0
async: ^2.5.0
build: ^2.1.0
dart_style: ^2.0.0
glob: ^2.0.0
meta: ^1.3.0
path: ^1.8.0
source_span: ^1.8.0
yaml: ^3.0.0
dev_dependencies:
_test_annotations:
path: ../_test_annotations
build_test: ^2.0.0
term_glyph: ^1.2.0
test: ^1.16.0
Version history
| Version | Published | Archive | SHA-256 |
|---|---|---|---|
| 0.0.0 | 2015-01-30T21:13:01.757720Z | Download | 6781d7a42ffccb9534ac8f813b24d714f664ade3a4864c0565a91c068e3c4512 |
| 0.0.0+1 | 2015-01-30T21:14:01.851Z | Download | 01436e160d2a9621bbeb13fcee592dd32729c6c41a9e7b2903a3729e3a3e3b05 |
| 0.0.1 | 2015-02-12T18:35:09.912260Z | Download | 49d7832f4b94bed87ef401a177cdd2bcca9b9cc717ddc2ccc953e47f83eb87da |
| 0.1.0 | 2015-02-14T02:47:15.083390Z | Download | 4c04d6bcd2c9518892c43dc2c6d26fb43f3eb13e22385d6d4c2fdbdaf2eefd38 |
| 0.1.0+1 | 2015-02-14T03:00:47.621650Z | Download | 45fa06dc132e192dfea197d6ba6db67fe00f248fbe411bd4353a7bbcc5867d61 |
| 0.1.1 | 2015-02-16T01:22:27.215440Z | Download | 185777c4d8647237d8e1945768e66983a3155b531e8257e1dec39e5597826a9e |
| 0.2.0 | 2015-02-16T23:07:41.360490Z | Download | 8aa3a515cb1af7eb09302576dd6eaa6956b07492f79c1040117a097452b19fbe |
| 0.2.0+1 | 2015-02-16T23:12:16.887230Z | Download | f616295e640597234c920d4a8715ec5fab7992918e0e6702730087ebee7a9a33 |
| 0.2.0+2 | 2015-02-17T02:47:01.803100Z | Download | b7d15ae2ebaa862237418c96b12e91c8c6423edb30d864889e6b61bd488aa2e5 |
| 0.2.1 | 2015-02-21T00:35:24.286100Z | Download | f987ed93ad5d91568e75576d623306e9a08cc8780e612a63f4559c5af0ac7ce1 |
| 0.2.2 | 2015-03-03T18:57:19.176980Z | Download | 028c11209fae6020ffbd7f5df25345f7b4c9cb9bbca9cd35efde9fb39d3d20e7 |
| 0.2.3-dev | 2015-03-09T00:37:57.142910Z | Download | 114b0d794138a54ac0f33a084e1a997f828dcb90d95414ddd34970ca2b4b2932 |
| 0.2.4 | 2015-03-09T05:10:40.630790Z | Download | 9450550fb03493410372865688e44cde387fc010efe595a4aa293babab2f3998 |
| 0.3.0 | 2015-03-30T15:40:46.794370Z | Download | a966f30cb7837a583e6ab4e70276a2f5f16da28ea08acc59d54ce779825b238e |
| 0.3.0+1 | 2015-03-31T16:11:09.597310Z | Download | 4d9b54721c9c987b7f376e0f9f8838906ad29302f96beb6efbd428c287b6998a |
| 0.3.0+2 | 2015-03-31T16:20:22.562800Z | Download | a61f5a848399ece2a0d09744bcc7acb9fc61ec0e2c528d8576be23b4f2421b8b |
| 0.4.0 | 2015-04-15T02:40:34.327950Z | Download | b186a8ad1f09c754c099ded64b47368a626cfab8c6b552fb13993df2d9ea86bd |
| 0.4.0+1 | 2015-04-23T20:22:47.678590Z | Download | 7ab4489e449673119345a2bc979725e1da9ff64d23fdb5f2d96dc12f532bf598 |
| 0.4.1 | 2015-06-04T23:40:28.402Z | Download | 5d34516bd3fd940774cb0cedb928471ac65b511bf9c1b6495ee08688fe72753e |
| 0.4.2 | 2015-06-24T03:31:15.966Z | Download | f9b8c91d5c58924117dfd002512ce054f352f127eb24223f0c73ddd5d172972f |
| 0.4.3 | 2015-08-11T19:54:28.367Z | Download | 21d2df19ff4e55c092745e81bdff71e51a0f6fd264adf01d2edefdc593c61199 |
| 0.4.3+1 | 2015-08-12T01:21:03.454Z | Download | ee8e88c8cb2912d91656989971fbde96d7322a0c8d10c9a4da0db6fca37723e4 |
| 0.4.4 | 2015-09-03T09:40:25.938Z | Download | 7d741875c518f7df2a3fa0898c86019df238884f0acfd88faf95d9f2563c3885 |
| 0.4.4+1 | 2015-09-06T12:16:51.691Z | Download | 68b0ecdc1cd41cc11b1861ff35685055dbc19624e514436899df1b652c437259 |
| 0.4.5 | 2015-09-17T21:12:04.251Z | Download | 6b09f7fec39276e1e1e8257ce8a3f4959d755270e359fc1da1e073145e4a895a |
| 0.4.5+1 | 2015-09-27T18:09:13.774Z | Download | c7f2f502c6b57306b4fc2942054c13d4116b611b65d5f3dd204803316bf98aa3 |
| 0.4.6 | 2015-11-23T21:24:02.772Z | Download | d9af0d1ed0862c0d6c3e345bfc80d76aa66fe4c66881494183caade7628f038e |
| 0.4.7 | 2015-12-09T23:25:25.022Z | Download | f4989f03570d457b08d28648ce166f3a0b40fa6c63c350ed7e83db6dcdaf1aa2 |
| 0.4.7+1 | 2015-12-10T21:02:53.477Z | Download | 79cc126d9bdb7cdab61774d1d2600a5abf624d5a6f0df9687aa102e43f4d1bf4 |
| 0.4.7+2 | 2015-12-16T23:39:04.798Z | Download | ce29f74384e219a3ca1e1d3856de6b062f4ef96f04e6d6c2a51b6493609d2da5 |
| 0.4.8-dev | 2015-12-30T00:00:43.437Z | Download | ad6e3f26aa31ef273d61757901a219ea0ef2f85c46ff4997279e4660cd93a948 |
| 0.4.8 | 2015-12-30T00:07:23.384Z | Download | 9f4c430b63f56b52391ba8d946ecd60e8899723d6d6bfab0e4b7a3ea598781d9 |
| 0.5.0 | 2016-03-15T18:14:53.590Z | Download | 92bacb604834306b3c03329610ab21cf2cfc60aaaeb56148f14d77c3ba664d76 |
| 0.5.0+1 | 2016-04-29T17:37:04.038Z | Download | df0e403bb006d65f1ec623d29451df4281da5817848d3fc1850c186175735eea |
| 0.5.0+2 | 2016-06-03T20:23:29.525Z | Download | c12d5b1a8c85c81f839d358915982ead119969c88416ff76f8391f36898572ca |
| 0.5.0+3 | 2016-06-06T17:17:34.237Z | Download | f278bed2b07759590f74c7fbfe6f3b615a3480285b30f3c80c6dd6e015d603b3 |
| 0.5.1 | 2016-08-05T20:15:55.395Z | Download | 8a2cdb5401bdd27b5ac95816aa1899fe74a061cfd3ceca7f216f06367e4b9c0b |
| 0.5.1+1 | 2016-09-08T04:16:30.055Z | Download | a080f2fd13a3e5fcef24b4817045b54d02473ba7ace2338984fb737215cc2ed8 |
| 0.5.1+2 | 2016-09-13T20:13:40.042Z | Download | c3ad10f9cc3daae89ad03733fdde1deb93e348d83d0e6392cd098c07f65a16c7 |
| 0.5.1+3 | 2016-09-15T22:06:25.310Z | Download | b32d9d5ae84966eecbd1e5ad51e091070b8dfb04a356b9ef732bc47aef4d93c8 |
| 0.5.1+4 | 2016-10-17T22:31:49.434Z | Download | 880571a71ee3f769dbaee2fecfde17a1c55b8567f0cfec879060dd9ef6d5588e |
| 0.5.1+5 | 2016-11-01T19:54:22.799Z | Download | 2e276a6e66274d48d516f3705259e88468daf3686d2102bb1b2a33b42a7f6fe0 |
| 0.5.1+6 | 2016-11-12T20:55:05.353Z | Download | 16cf51784d9c4a271449bd10adc3e6e9d430d4a1267866250156b6e6fd542741 |
| 0.5.1+7 | 2016-11-18T16:42:59.641Z | Download | 56ca91c734958e50c9ff6a9e75d39743529d255e91b2c0ab74fea1c34ced3df1 |
| 0.5.2 | 2016-11-30T19:19:05.809Z | Download | 824c5936959d2174d60b25ffe9976672de323c2db7581c7e50909a5d85c18b99 |
| 0.5.3 | 2017-01-09T22:10:19.073Z | Download | 27004611311c2e7b99a7808871ccc665871fed2a1ab59d0c8b7004bbc096cb5c |
| 0.5.3+1 | 2017-01-10T20:52:59.987Z | Download | b131d9d04902e6c6748bdf3c25c85572610b7e8a7a5de50be5b3611db7346924 |
| 0.5.3+2 | 2017-01-11T17:49:28.719Z | Download | 889a26373fca9da46145eb3d28c94b86b98f6a0e8c7e3873f301901600866fbf |
| 0.5.4 | 2017-01-27T21:52:43.401Z | Download | d2ccef13bbbc67fcf9a63f902292d0aa718ec3f3d417c08481026f90a34c6e4c |
| 0.5.4+1 | 2017-02-13T22:27:13.218Z | Download | 93b904a0e31f7fc4240f63c5f9d2db1386a7b1c99c6f6aa8be055c109d44a2bd |
| 0.5.4+2 | 2017-02-14T20:02:38.487Z | Download | 9729871b12f938c181592a5452c1ac16c586e5551b496feb4441b670d6ba5ecd |
| 0.5.4+3 | 2017-04-01T22:13:00.800764Z | Download | b1525500f06d5dc30010b81cd502499ee7b12d186b62996960cfb3d800907330 |
| 0.5.5 | 2017-04-18T20:49:14.706652Z | Download | 29880a14f5164dd39daed86af137c561de87ca568e3a1bea9cdbf469ad4eace5 |
| 0.5.6 | 2017-04-25T19:09:33.115523Z | Download | 4b3f9e88c1b24b41c0965a39336981ea5cd4379a57f0cba821f1559eca3a2414 |
| 0.5.7 | 2017-05-05T16:46:44.951542Z | Download | 6b998111e1f1db4329f6708d9a685289d52f03f6efde792179fe222d63e6bd01 |
| 0.5.8 | 2017-06-01T17:56:53.159572Z | Download | 84d385101935e06bbd053650b5e9e79b3bfa8524fba3cdbdf37b56940509b18d |
| 0.5.9 | 2017-06-23T16:23:50.608723Z | Download | 490ff70a5b96ac61a1f33ea06617ddd1637eba26bf0af3418c1e65148f47ec18 |
| 0.5.10 | 2017-06-28T19:45:32.572648Z | Download | db6f3d0ce38abfa651ec284d5dbdf77eab887ac1437300915fe9aea4d989428c |
| 0.5.10+1 | 2017-06-28T22:19:52.620223Z | Download | 592e69acc52543d15e338c71635040281512b2b8102c1789fcf7124d966a2fa6 |
| 0.6.0 | 2017-07-06T17:55:22.898508Z | Download | 55ab465973b8609fbea8ad2264791574e5a8b8a61baebcbfb731e86bfa41cd03 |
| 0.6.1 | 2017-07-11T20:17:56.066833Z | Download | c57306131212b485c3d2aca3ca3d5bf754b716fb734dd78355a6e0ee3803eb91 |
| 0.6.1+1 | 2017-07-18T19:01:32.464515Z | Download | 88bf04d9a95f802a80d2aa44951af97ecc78694cd619e371aa7e6c258b1fd341 |
| 0.7.0 | 2017-07-26T15:53:26.972230Z | Download | 82fed6a7b543292967f5ee117a4ac70f46ce0e606b70e5598442a718667b664e |
| 0.7.1 | 2017-08-14T19:39:54.400066Z | Download | f0836d67102e990e91d241f959c9d11d9649adddae018de81ced2d311dda5c06 |
| 0.7.2 | 2017-10-09T17:29:13.448439Z | Download | 490ebbe2fe810dfad89b4f65faef17cf3196075d2f6289aa4e2efd8488c55bb5 |
| 0.7.2+1 | 2017-11-02T21:40:20.664766Z | Download | fa5f1f08c17393694aefb99dbf48ccd7b655c7d1dcdfa7711f1ccb270330123b |
| 0.7.3 | 2017-12-14T22:11:59.192075Z | Download | a37e18e80f040c32c7a2f4bc8c7432a469ed7c2862a5d9289a6ff48e4ba6a2f5 |
| 0.7.4 | 2018-01-18T22:48:40.751043Z | Download | a92f61c75587d6b857342a6245112d88284e5af859111f08a33a5115d186f104 |
| 0.7.4+1 | 2018-01-22T22:41:46.493430Z | Download | cb305e60d3510a8e0e0a71fe9288d05102d4f2a7b2a7919bdaf9a81e2a97008f |
| 0.7.4+2 | 2018-01-31T18:05:12.173299Z | Download | 1c76eccb339d59e754817cd2d8d3dda0324fe96758a47fe88a8e47bb09776889 |
| 0.7.4+3 | 2018-02-03T00:36:31.323017Z | Download | 70f568ebc07b1eb98d15b4d68ac72fe682ab408d4fa361803634308a7d2d4c91 |
| 0.7.5 | 2018-02-10T00:45:18.400325Z | Download | 771af51fd09d58dd508a5f9484942e03705e669fadeaa0a2c656398368404016 |
| 0.7.5+1 | 2018-02-15T17:56:57.268360Z | Download | 86671b875a05bf94d52580accb762a2782e8d05e1c8d31924698cf9c531cab8f |
| 0.7.6 | 2018-03-07T21:42:28.661927Z | Download | 67c812824acd5a97d5bbfa55b87dd89e787c30b40f4cbd7b5f732380837f37ea |
| 0.8.0 | 2018-03-29T16:54:59.795537Z | Download | ec67c64ddf9245c3c0cba5f6a83bd58bd33680016d1a8b316404ca0564e1c5c3 |
| 0.8.1 | 2018-04-16T17:31:46.859327Z | Download | e91eb866e1cfb74d184617bea7c7aa0f0c63e3631c4bad0561b7c638e8e17884 |
| 0.8.1+1 | 2018-05-15T15:44:46.282077Z | Download | ba7471ea154b3004035e6111489575a98ff104215c5f517ccaea417e6f1db5a2 |
| 0.8.1+2 | 2018-05-24T20:31:30.308119Z | Download | bf809804245d2d64a4994f515dced1c7c9259f8ac02dd5beaca9f96ee33bb3e5 |
| 0.8.1+3 | 2018-05-24T20:51:58.315339Z | Download | ab4292cf29e51dea46152382f8d5b8238828b5e57cdfab1f64a66cf91b433dda |
| 0.8.2 | 2018-06-14T22:52:56.982288Z | Download | 5c803a46675661abf1fe3e9e8d41f51d91b049d5687a3210b24b21b979c0c5ba |
| 0.8.3 | 2018-06-27T17:09:22.969533Z | Download | 78e4ce142c5ff175c8d6de7142e14b020baf2cd26d11cbca6f1ca1c3237d6f9e |
| 0.8.3+1 | 2018-07-19T20:54:50.068799Z | Download | 6dc2966238f5ef91b386b7f389ed1509734f9ac3c611eb500744d2c42adb6777 |
| 0.9.0 | 2018-07-24T17:50:42.508978Z | Download | b6e742cfdae20fb5b7df501ec149de20e163d0f31237d66327d5ae7acc2fcee7 |
| 0.9.0+1 | 2018-08-09T20:39:24.258451Z | Download | c3483de972cc4900ac0c9a48b5502d0ee6989c31b9210716fdcd0cb7eb3dbff5 |
| 0.9.1 | 2018-09-10T19:30:06.459444Z | Download | b3ec830d2c8c1a9e401d73eef9c9d6b37be68b9e8a978fdd2dbaac689119084d |
| 0.9.1+1 | 2018-09-25T19:54:25.977637Z | Download | e4f38b82c9c61da9ca6d467bc820ec83fe2042b9ddf0a696251dedc35c6b17eb |
| 0.9.1+2 | 2018-10-03T18:13:53.860043Z | Download | c5caec5d6b49c2fb4de3f5ad3690cf15f243f092e1429ebc9cca41456a0d6fc6 |
| 0.9.1+3 | 2018-10-08T17:07:20.573049Z | Download | 7bb4d7a400d0ce12db8294ea38a17b45cd2160f3e7f067db4babd634bb7dc207 |
| 0.9.2 | 2018-12-06T16:24:30.692927Z | Download | 3589f0bda85b22fcf5bf278a131bef39b708dbbb366231577a03583654118691 |
| 0.9.3 | 2018-12-12T23:44:59.894671Z | Download | 6803c60b479569b66f4eeeccd729516a8a206f18fb65d43c9c7dd353969a18c1 |
| 0.9.4 | 2019-01-15T00:15:06.443357Z | Download | aec5ac8442d984f64b2a4ce607cc584c36130ace31905edfc87cf18f6aec79da |
| 0.9.4+1 | 2019-02-01T01:52:39.081298Z | Download | 05169692a6710e977386f839f701554e8694f57efedf7799d756778b100d3672 |
| 0.9.4+2 | 2019-04-03T23:33:19.607371Z | Download | 5e3adef59bc366c2017f57740c7d8d1dc0a4e31163e24ebf99c956f8137ba4f4 |
| 0.9.4+3 | 2019-07-20T00:35:49.585853Z | Download | 160003b8992a32aa8c1d1fe14989884694d447830200200fb5fc866456ed92f3 |
| 0.9.4+4 | 2019-08-21T20:01:24.876211Z | Download | d586b21439d5e97945a43d37ca3e4d5c9a604789acde852fec8795e4d4771b1a |
| 0.9.4+5 | 2019-09-26T21:40:25.521586Z | Download | edc0c486ed5372738a73e0696c40dd5bdf82bb9e5cfa94343c3ff6b0bfc1c749 |
| 0.9.4+6 | 2019-10-29T21:13:10.010070Z | Download | 8a2a0f83d2e40e39d1801b1930474842702f224747a8579a2607515c0e79a8ae |
| 0.9.4+7 | 2020-01-02T16:19:31.323269Z | Download | 842b2fd8a62d3906cf9acfe49fc7943367a339d9f56f4c996f21813b469a637a |
| 0.9.5 | 2020-02-24T21:05:02.838501Z | Download | 7e5d13ff3527bfb4c3b60332fbf9d41e422e36171df6245fe74aa2cea67ddcff |
| 0.9.6 | 2020-07-10T20:50:33.135194Z | Download | dbc6ebc1601b93872c398568b35a2d76bdf064b06e47d88dd5d013eb09183651 |
| 0.9.7+1 | 2020-09-22T18:44:01.420797Z | Download | 1976da708bee8c500319cdac0928b14c39d24f04844ab7eb1ce393374ffddad7 |
| 0.9.8 | 2020-10-27T14:21:47.361069Z | Download | e98921e3fcbf1c7ce0426480e08297daa339fb58aec80732acb18279dbb33887 |
| 0.9.9 | 2020-12-02T16:38:09.111402Z | Download | 8979d98fd8236d4c2444dca9929ae53fdc7b3fb287624f435d34f2dab412037c |
| 0.9.10 | 2020-12-08T22:20:17.647894Z | Download | 066cbf2951859914e50e9fedcd1208eb1fd0cad0a7d2a8096e5469c5bd0d16cf |
| 0.9.10+1 | 2020-12-14T17:19:52.558479Z | Download | 42da85edf0db1e00985bd8c742347798a3a45961253628574a95eb978b73d26f |
| 0.9.10+2 | 2021-02-10T17:20:03.868506Z | Download | ca667420729cb6b44e4712d6854ba31057a4ecb3f130c074872615421813915c |
| 0.9.10+3 | 2021-02-18T16:10:10.952298Z | Download | 0359bf4f1c924ccacb89594b0e077d524a5ced4f39f138a4f3099f0915674a13 |
| 0.9.10+4 | 2021-03-15T18:00:30.325581Z | Download | 69bd9e57e5868239b9a5af665ec89c3e0bd5383b1e0204c743d5dc649e2c4f1a |
| 0.9.10+5 | 2022-01-05T01:10:52.759806Z | Download | f6f2cbed82fcba49d43f2ed4632a5c778c97f3942dcf744f00c9024330113750 |
| 1.0.0 | 2021-03-18T22:47:27.927452Z | Download | 02df8471ce494d13135214d4ddeca5515860fe9aa23c7d647cefd902656ad5fe |
| 1.0.1 | 2021-05-26T02:31:25.396479Z | Download | 6738dd60a81607f6fbb03a1937b805edc2252f5d3df3ee27a59d2dcbefd0f3f8 |
| 1.0.2 | 2021-06-10T14:27:09.092497Z | Download | 64d757138a28ddfd6a5d81ae6d4fa817a12866a72a2f46fc0d794cdaf0c25cb4 |
| 1.0.3 | 2021-07-13T17:14:18.976566Z | Download | ffb7124eb6752de71e87a122cc50a8a191044add69fd990d76958bc38ee552fd |
| 1.0.4 | 2021-07-19T18:05:04.295700Z | Download | aeb82049b7500ffc19680f705eb0662a2fe396922af16fdb13fe3452b04bc41e |
| 1.0.5 | 2021-07-21T20:47:13.088139Z | Download | 3e743f02b0916cf719347492bc475f1fc270302c4f650544f16a55e9a463a143 |
| 1.1.0 | 2021-08-19T16:53:54.186085Z | Download | f6f2e0bd328c2ae57037a396c66248abe882f07440c5f41bb5e11e02977f8578 |
| 1.1.1 | 2021-09-27T19:55:46.369581Z | Download | 0789859e3153ff27166759475653f63d0e2634d687af3eb9be3af4373734452d |
| 1.2.0 | 2021-11-29T21:02:48.763054Z | Download | cd200d4210d2c746f7ebbd7ef64c53f867484074f4512ec48d1bb157104861c0 |
| 1.2.1 | 2021-12-16T23:28:00.534751Z | Download | d5aa894fcfa327e19196d6f4f733597a10b42a7e55c8cb2b0dd60d7e7d27dccf |
| 1.2.2 | 2022-04-14T18:59:24.510923Z | Download | 00f8b6b586f724a8c769c96f1d517511a41661c0aede644544d8d86a1ab11142 |
| 1.2.3 | 2022-09-13T17:57:50.664750Z | Download | 0f5cf4243080b2c57650128ac1841498282da5ca1da0e826a03c9e208186c59d |
| 1.2.4 | 2022-09-20T19:28:57.987850Z | Download | f596f11cb219b3a0ae74639f8528c93cb1688c6d538e6ace5be03378803b33c1 |
| 1.2.5 | 2022-09-20T20:57:43.789847Z | Download | 85f8c7d6425dff95475db618404732f034c87fe23efe05478cea50520a2517a3 |
| 1.2.6 | 2022-10-11T19:33:09.765553Z | Download | 2d79738b6bbf38a43920e2b8d189e9a3ce6cc201f4b8fc76be5e4fe377b1c38d |
| 1.2.7 | 2023-01-31T21:42:43.749118Z | Download | c2bea18c95cfa0276a366270afaa2850b09b4a76db95d546f3d003dcc7011298 |
| 1.3.0 | 2023-05-05T02:03:50.687671Z | Download | b20e191de6964e98032573cecb1d2b169d96ba63fdb586d24dcd1003ba7e94f6 |
| 1.3.1 | 2023-05-09T16:35:28.042766Z | Download | 378a173055cd1fcd2a36e94bf254786d6812688b5f53b6038a2fd180a5a5e210 |
| 1.3.2 | 2023-05-11T22:16:44.366357Z | Download | 373f96cf5a8744bc9816c1ff41cf5391bbdbe3d7a96fe98c622b6738a8a7bd33 |
| 1.4.0 | 2023-06-29T18:48:44.825404Z | Download | fc0da689e5302edb6177fdd964efcb7f58912f43c28c2047a808f5bfff643d16 |
| 1.5.0 | 2023-12-13T22:53:11.649167Z | Download | 14658ba5f669685cd3d63701d01b31ea748310f7ab854e471962670abcf57832 |
| 2.0.0 | 2024-12-17T17:42:11.443838Z | Download | 35c8150ece9e8c8d263337a265153c3329667640850b9304861faea59fc98f6b |
| 3.0.0-dev | 2025-06-27T06:36:54.182475Z | Download | b9e3027417cb348083c375318f3aa993a8f54508d0e1defe332ce6baa8516333 |
| 3.0.0 | 2025-07-17T17:14:37.601825Z | Download | fc787b1f89ceac9580c3616f899c9a447413cbdac1df071302127764c023a134 |
| 3.1.0 | 2025-08-11T16:39:52.344200Z | Download | 7b19d6ba131c6eb98bfcbf8d56c1a7002eba438af2e7ae6f8398b2b0f4f381e3 |
| 4.0.0 | 2025-08-27T16:39:24.558832Z | Download | 800f12fb87434defa13432ab37e33051b43b290a174e15259563b043cda40c46 |
| 4.0.1 | 2025-09-04T06:58:09.137390Z | Download | ccf30b0c9fbcd79d8b6f5bfac23199fb354938436f62475e14aea0f29ee0f800 |
| 4.0.2 | 2025-10-09T16:07:31.945450Z | Download | 9098ab86015c4f1d8af6486b547b11100e73b193e1899015033cb3e14ad20243 |
| 4.1.0 | 2025-11-18T17:13:45.285144Z | Download | 0d6c4e1080176801112ed1111226d13cd4f74947383aabafbd9726a22083aeaa |
| 4.1.1 | 2025-11-19T15:54:15.465395Z | Download | 07b277b67e0096c45196cbddddf2d8c6ffc49342e88bf31d460ce04605ddac75 |
| 4.1.2 | 2026-01-13T18:21:40.936048Z | Download | 585bc140f20da42c584ece2df28f4d9ef2566955332b626f655957b3a8c8ad54 |
| 4.2.0 | 2026-01-20T08:12:05.809971Z | Download | 1d562a3c1f713904ebbed50d2760217fd8a51ca170ac4b05b0db490699dbac17 |
| 4.2.1 | 2026-03-13T18:17:48.674680Z | Download | adc962c96fffb2de1728ef396a995aaedcafbe635abdca13d2a987ce17e57751 |
| 4.2.2 | 2026-03-20T18:23:58.206313Z | Download | 732792cfd197d2161a65bb029606a46e0a18ff30ef9e141a7a82172b05ea8ecd |
| 4.2.3 | 2026-04-29T00:11:56.314655Z | Download | ec37cc0e6694374cbef59ed79685572c870a54ede6fa30a3e420feb3adffea02 |
| 4.2.4 | 2026-07-23T15:32:25.334278Z | Download | a603f1fb984a7391ae5978d1b92bfaaa08b350dca5c825256f925818f7943bf5 |
| 4.3.0 | 2026-08-19T18:31:41.506676Z | Download | 11b6047da8e4eb6c643ccac3d0fda3f9c9e11651695f7da24a85ade8aff15a44 |
| 4.3.1 | 2026-10-14T14:37:11.648771Z | Download | 833ea7d15b5be79949d3d6c077da0267a0bd93c16897b36a771395a91e63086e |
Dependencies
analyzer "^2.1.0"
async "^2.5.0"
build "^2.1.0"
dart_style "^2.0.0"
glob "^2.0.0"
meta "^1.3.0"
path "^1.8.0"
source_span "^1.8.0"
yaml "^3.0.0"