build_runner_core 1.0.2

  • README.md
  • CHANGELOG.md
  • Installing
  • Versions
  • 72

Core functionality of the build_runner package. Exposes the imperative apis for running pure Dart builds for package:build.
Build Status Issues related to build_runner_core Pub Package Version Latest Dartdocs Join the chat on Gitter

1.0.2

  • Support the latest package:json_annotation.

1.0.1

  • Update package:build version constraint to >1.0.0 <1.0.1.

1.0.0

Breaking Changes

  • The performance tracking apis have changed significantly, and performance tracking now uses the timing package.
  • The BuildOptions static factory now takes a LogSubscription instead of a BuildEnvironment. Logging should be start as early as possible to catch logs emitted during setup.

New Features

  • Use the timing package for performance tracking.
  • Added support for BuildStep.trackStage to track performance of custom build stages within your builder.

Bug Fixes

  • Fixed a node invalidation issue when fixing build errors that could cause a situation which was only resolvable with a full rebuild.

0.3.1+5

  • Fixed an issue where builders that didn't read their primary input would get invalidated on fresh builds when they shouldn't.

0.3.1+4

  • Removed the constraint on reading files that output to cache from files that output to source.

0.3.1+3

  • Bug Fix: Don't output a packages symlink within the packages directory.

0.3.1+2

  • Restore new keyword for a working release on Dart 1 VM.
  • Bug Fix: Don't include any non-lib assets from dependencies in the build, even if they are a source in a target.

0.3.1+1

  • Bug Fix: Don't include any non-lib assets from dependencies in the build, even if they are a source in a target.
  • Release broken on Dart 1 VM.

0.3.1

  • Migrated glob tracking to a specialized node type to fix dart-lang/build#1702.

0.3.0

Breaking Changes

  • Implementations of BuildEnvironment must now implement the finalizeBuild method. There is a default implementation if you extend BuildEnvironment that is a no-op.
    • This method is invoked at the end of the build that allows you to do arbitrary additional work, such as creating merged output directories.
  • The assumeTty argument on IOEnvironment has moved to a named argument since null is an accepted value.
  • The outputMap field on BuildOptions has moved to the IOEnvironment class.

New Features/Updates

  • Added a outputSymlinksOnly option to IOEnvironment constructor, that causes the merged output directories to contain only symlinks, which is much faster than copying files.
  • Added the FinalizedAssetView class which provides a list of all available assets to the BuildEnvironment during the build finalization phase.
    • outputMap has moved from BuildOptions to this constructor, as a named argument.
  • The OverridableEnvironment now supports overriding the new finalizeBuild api.
  • The number of concurrent actions per phase is now limited (currently to 16), which should help with memory and cpu usage for large builds.

0.2.2+2

  • Support package:json_annotation v1.

0.2.2+1

  • Tag errors from cached actions when they are printed.

0.2.2

  • Changed the default file caching logic to use an LRU cache.

0.2.1+2

  • Clarify wording for conflicting output directory options. No behavioral differences.
  • Reduce the memory consumption required to create an output dir significantly.
  • Increased the upper bound for the sdk to <3.0.0.

0.2.1+1

  • Allow reuse cache between machines with different OS

0.2.1

  • The hash dir for the asset graph under .dart_tool/build is now based on a relative path to the build script instead of the absolute path.
    • This enables .dart_tool/build directories to be reused across different computers and directories for the same project.

0.2.0

New Features

  • The BuildPerformance class is now serializable, it has a fromJson constructor and a toJson instance method.
  • Added BuildOptions.logPerformanceDir, performance logs will be continuously written to that directory if provided.
  • Added support for global_options in build.yaml of the root package.
  • Allow overriding the default Resolvers implementation.
  • Allows building with symlinked files. Note that changes to the linked files will not trigger rebuilds in watch or serve mode.

Breaking changes

  • BuildPhasePerformance.action has been replaced with BuildPhasePerformance.builderKeys.
  • BuilderActionPerformance.builder has been replaced with BuilderActionPerformance.builderKey.
  • BuildResult no longer has an exception or stackTrace field.
  • Dropped failOnSevere arguments. Severe logs are always considered failing.

Internal changes

  • Remove dependency on package:cli_util.

0.1.0

Initial release, migrating the core functionality of package:build_runner to this package.

Use this package as a library

1. Depend on it

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


dependencies:
  build_runner_core: ^1.0.2

2. Install it

You can install packages from the command line:

with pub:


$ pub get

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

3. Import it

Now in your Dart code, you can use:


import 'package:build_runner_core/build_runner_core.dart';
  
Version Uploaded Documentation Archive
1.0.2 Oct 23, 2018 Go to the documentation of build_runner_core 1.0.2 Download build_runner_core 1.0.2 archive
1.0.1 Sep 25, 2018 Go to the documentation of build_runner_core 1.0.1 Download build_runner_core 1.0.1 archive
1.0.0 Sep 24, 2018 Go to the documentation of build_runner_core 1.0.0 Download build_runner_core 1.0.0 archive
0.3.1+5 Aug 29, 2018 Go to the documentation of build_runner_core 0.3.1+5 Download build_runner_core 0.3.1+5 archive
0.3.1+4 Aug 13, 2018 Go to the documentation of build_runner_core 0.3.1+4 Download build_runner_core 0.3.1+4 archive
0.3.1+3 Aug 13, 2018 Go to the documentation of build_runner_core 0.3.1+3 Download build_runner_core 0.3.1+3 archive
0.3.1+2 Aug 10, 2018 Go to the documentation of build_runner_core 0.3.1+2 Download build_runner_core 0.3.1+2 archive
0.3.1+1 Aug 9, 2018 Go to the documentation of build_runner_core 0.3.1+1 Download build_runner_core 0.3.1+1 archive
0.3.1 Aug 7, 2018 Go to the documentation of build_runner_core 0.3.1 Download build_runner_core 0.3.1 archive
0.3.0 Aug 1, 2018 Go to the documentation of build_runner_core 0.3.0 Download build_runner_core 0.3.0 archive

All 17 versions...

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

We analyzed this package on Oct 23, 2018, and provided a score, details, and suggestions below. Analysis was completed with status completed using:

  • Dart: 2.0.0
  • pana: 0.12.4

Platforms

Detected platforms: other

Primary library: package:build_runner_core/build_runner_core.dart with components: io, isolate, build, mirrors.

Maintenance suggestions

The description is too short. (-20 points)

Add more detail about the package, what it does and what is its target use case. Try to write at least 60 characters.

Maintain an example. (-10 points)

Create a short demo in the example/ directory to show how to use this package. Common file name patterns include: main.dart, example.dart or you could also use build_runner_core.dart.

Dependencies

Package Constraint Resolved Available
Direct dependencies
Dart SDK >=2.0.0 <3.0.0
async >=1.13.3 <3.0.0 2.0.8
build >=1.0.0 <1.1.0 1.0.1
build_config ^0.3.1 0.3.1+4
build_resolvers ^0.2.0 0.2.2+6
collection ^1.14.0 1.14.11
convert ^2.0.1 2.0.2
crypto >=0.9.2 <3.0.0 2.0.6
glob ^1.1.0 1.1.7
graphs ^0.1.0 0.1.2+1
json_annotation >=1.0.0 <3.0.0 2.0.0
logging ^0.11.2 0.11.3+2
meta ^1.1.0 1.1.6
path ^1.1.0 1.6.2
pedantic ^1.0.0 1.3.0
pool ^1.0.0 1.3.6
stream_transform ^0.0.13 0.0.14+1
timing ^0.1.1 0.1.1+1
watcher ^0.9.7 0.9.7+10
yaml ^2.1.0 2.1.15
Transitive dependencies
analyzer 0.33.0
args 1.5.0
charcode 1.1.2
csslib 0.14.6
front_end 0.1.6
html 0.13.3+3
kernel 0.3.6
package_config 1.0.5
plugin 0.2.0+3
pub_semver 1.4.2
pubspec_parse 0.1.2+3
source_span 1.4.1
stack_trace 1.9.3
string_scanner 1.0.4
typed_data 1.1.6
utf 0.9.0+5
Dev dependencies
_test_common
build_test ^0.10.0
json_serializable ^1.0.0
package_resolver ^1.0.2
source_gen ^0.9.0
test ^1.0.0
test_descriptor ^1.0.0
test_process ^1.0.0