PackageTrack
Sign in Get early access

barback

A DEPRECATED asset build system for Dart. Given a set of input files and a set of transformations (think compilers, preprocessors and the like), will automatically apply the appropriate transforms and generate output files. When inputs are modified, automatically runs the transforms that are affected. Runs transforms asynchronously and in parallel when possible to maximize responsiveness.

0.15.2 26K downloads/mo #1954 most downloaded on pub.dev dart-lang/barback

What this package is like to depend on

Last release 8 years ago

no release in 18 months

Ships fairly regularly

a new release about every 3 months

Some releases are documented

notes for 30 of 81 stable releases

Nothing withdrawn

no release was ever pulled

13 years old

81 releases · first in 2013

0 releases in the last 12 months

see the full history below

Release timeline

81 releases · Jun 2013 to Apr 2018
2014 2016 2018 2020 2022 2024 2026
Release Pre-release

Releases

latest 60 of 81
  1. 0.15.2 11 Sep 2014
    Release notes
    • Add a StaticPackageProvider class to more efficiently handle immutable, untransformed packages.
    Open source →
  2. 0.15.2+1 11 Sep 2014
    Release notes
    • Properly handle logs from a transformer that's been canceled.
    Open source →
  3. 0.15.2+2 24 Sep 2014
    Release notes
    • Fix a bug in listing all assets from a static package.
    Open source →
  4. 0.15.2+3 10 Feb 2015
    Release notes
    • Clarify that a transform may emit any number of outputs.
    Open source →
  5. 0.15.2+4 11 Feb 2015
    Release notes
    • Fix an incorrect example.
    Open source →
  6. 0.15.2+5 20 Jul 2015
    Release notes
    • If a transformer requests a non-existent asset from another package, it will now be re-run if that asset is later created.
    Open source →
  7. 0.15.2+6 27 Jul 2015
    Release notes
    • Fix a deadlock that occurred occasionally when a declaring transformer was followed by a lazy transformer (most commonly $dart2js).
    Open source →
  8. 0.15.2+7 18 Sep 2015
    Release notes

    Add logging for long running transforms.

    Open source →
    Release notes
    • Add periodic fine-grained logging for long running transformers.
    Open source →
  9. 0.15.2+8 17 May 2016
    Release notes

    Fix all strong-mode warnings in Dart 1.16.

    Open source →
    Release notes
    • Fix all strong-mode warnings in Dart 1.16.
    Open source →
  10. 0.15.2+9 08 Aug 2016
    Release notes

    More strong-mode fixes.

    Open source →
    Release notes
    • Fix all strong-mode warnings in Dart 1.18.
    Open source →
  11. 0.15.2+10 23 Mar 2017
    Release notes

    Update CancelableFuture.then to match the new Future.then type si…

    Open source →
    Release notes
    • Update CancelableFuture to match the new Future.then type signature. The onValue parameter now has a return type of FutureOr<S> instead of S.
    Open source →
  12. 0.15.2+11 03 May 2017
    Release notes

    Update AssetNode.whenAvailable to be a generic method to fix a new strong mode error.

    Open source →
    Release notes
    • Update AssetNode.whenAvailable to be a generic method to fix a new strong mode error.
    Open source →
  13. 0.15.2+12 22 Sep 2017
    Release notes

    Declare support for async 2.0.0.

    Open source →
    Release notes
    • Declare support for async 2.0.0.
    Open source →
  14. 0.15.2+13 05 Oct 2017
    Release notes
    • Enforce ordering of Futures with Future.microtask rather than async and await to account for upcoming behavior changes with async methods.
    Open source →
  15. 0.15.2+14 08 Jan 2018
    Release notes
    • Update code to eliminate Future flattening in Dart 2.0.
    Open source →
  16. 0.15.2+15 22 Mar 2018
    Release notes
    • Officially deprecated this package. Not supported in Dart 2.
    Open source →
  17. 0.15.2+16 23 Apr 2018
    Release notes
    • Updated SDK version to 2.0.0-dev.17.0
    Open source →
  18. 0.15.0 30 Jul 2014
    Release notes
    • Fully switch from source_maps' Span class to source_span's SourceSpan class.
    Open source →
  19. 0.15.0+1 26 Aug 2014
    Release notes
    • Widen the version constraint on the collection package.
    Open source →
  20. 0.14.2 29 Jul 2014
    Release notes
    • All TransformLogger methods now accept SourceSpans from the source_span package in addition to Spans from the source_maps package. In 0.15.0, only SourceSpans will be accepted.
    Open source →
  21. 0.14.1 10 Jun 2014
    Release notes
    • Add an AggregateTransformer type. Aggregate transformers transform groups of assets for which no single asset is primary. For example, one could be used to merge all images in a directory into a single file.

    • Add a message getter to TransformerException and AssetLoadException.

    • Fix a bug where transformers would occasionally emit stale output after their inputs changed.

    Open source →
  22. 0.14.1+1 19 Jun 2014
    Release notes
    • Fix a bug where an event could be added to a closed stream.
    Open source →
  23. 0.14.1+2 01 Jul 2014
    Release notes
    • Automatically log how long it takes long-running transforms to run.
    Open source →
  24. 0.14.1+3 02 Jul 2014
    Release notes
    • Add a dependency on the pool package.
    Open source →
  25. 0.14.0 22 Apr 2014
    Release notes
    • Breaking change: when an output of a lazy transformer is requested, that transformer will run long enough to generate the output, then become lazy again. Previously, it would become eager as soon as an asset had been requested.

    • Only run Transformer.isPrimary and Transformer.declareOutputs once for each asset.

    • Lazy transformers' laziness is preserved when followed by declaring transformers, or by normal transformers for which the lazy outputs aren't primary.

    • Fix a bug where reading the primary input using Transform.readInputAsString had slightly different behavior than reading it using Transform.primary.readAsString.

    • Fix a crashing bug when Barback.getAllAssets is called synchronously after creating a new Barback instance.

    • Don't warn if a lazy or declaring transformer doesn't emit outputs that it has declared. This is valid for transformers like dart2js that need to read their primary input in order to determine whether they should run.

    • Allow Transformer.isPrimary, Transformer.apply, and DeclaringTransformer.declareOutputs to return non-Future values if they run synchronously.

    • Fix a deadlock bug when a lazy primary input to a lazy transformer became dirty while the transformer's apply method was running.

    • Run declaring transformers with lazy inputs eagerly if the inputs become available.

    Open source →
  26. 0.14.0+1 20 May 2014
    Release notes
    • Fix a bug where a transformer group preceded by another transformer group would sometimes fail to load secondary assets.
    Open source →
  27. 0.14.0+2 20 May 2014
    Release notes
    • Fix a bug with the previous bug fix.
    Open source →
  28. 0.14.0+3 28 May 2014
    Release notes
    • Properly handle synchronous errors in PackageProvider.getAsset().
    Open source →
  29. 0.13.0 08 Apr 2014
    Release notes
    • Transformer.isPrimary now takes an AssetId rather than an Asset.

    • DeclaringTransform now only exposes the primary input's AssetId, rather than the primary Asset object.

    • DeclaringTransform no longer supports getInput, readInput, readInputAsString, or hasInput.

    Open source →
  30. 0.12.0 26 Mar 2014
    Release notes
    • Add a Transform.logger.fine function that doesn't print its messages by default. When using Barback with pub in verbose mode, these messages will be printed.

    • Add a Transform.hasInput function that returns whether or not a given secondary input exists.

    • Transformer.allowedExtensions now supports extensions containing multiple periods, such as .dart.js.

    • Transforms now pass their primary inputs through to the next phase by default. A transformer may still overwrite its primary input without causing a collision. If a transformer doesn't overwrite its primary input, it may cause it not to be passed through by calling Transform.consumePrimary. The primary input will be consumed by default if a transformer throws an error.

    • If an input requested with Transform.getInput, Transform.readInput, or Transform.readInputAsString cannot be found, an AssetNotFoundException will be thrown. This was always what the documentation said, but previously a MissingInputException was thrown instead.

    • If a transformer calls Transform.logger.error, the transformer will now be considered to have failed after it finishes running apply(). This means that its outputs will not be consumed by future transformers and its primary input will not be passed through to the next phase.

    • If a transform calls Transform.getInput, Transform.readInput, Transform.readInputAsString, or Transform.hasInput on an input that doesn't exist, the transform will be re-run if that input is created in the future.

    Open source →
  31. 0.11.1 25 Feb 2014

    Nothing published for this version

  32. 0.11.0 13 Dec 2013

    Nothing published for this version

  33. 0.11.0+1 09 Jan 2014

    Nothing published for this version

  34. 0.11.0+2 28 Jan 2014

    Nothing published for this version

  35. 0.11.0+3 29 Jan 2014

    Nothing published for this version

  36. 0.10.4 10 Dec 2013

    Nothing published for this version

  37. 0.10.3 09 Dec 2013

    Nothing published for this version

  38. 0.10.2+1 04 Dec 2013

    Nothing published for this version

  39. 0.10.1+3 26 Nov 2013

    Nothing published for this version

  40. 0.9.0 06 Nov 2013

    Nothing published for this version

  41. 0.8.10 01 Nov 2013

    Nothing published for this version

  42. 0.8.10+3 04 Nov 2013

    Nothing published for this version

  43. 0.8.10+4 05 Nov 2013

    Nothing published for this version

  44. 0.8.9 31 Oct 2013

    Nothing published for this version

  45. 0.8.8 30 Oct 2013

    Nothing published for this version

  46. 0.8.7 28 Oct 2013

    Nothing published for this version

  47. 0.8.6 24 Oct 2013

    Nothing published for this version

  48. 0.8.5 21 Oct 2013

    Nothing published for this version

  49. 0.8.4 19 Oct 2013

    Nothing published for this version

  50. 0.8.3 17 Oct 2013

    Nothing published for this version

  51. 0.8.2 14 Oct 2013

    Nothing published for this version

  52. 0.8.1 04 Oct 2013

    Nothing published for this version

  53. 0.8.0 03 Oct 2013

    Nothing published for this version

  54. 0.7.6 27 Sep 2013

    Nothing published for this version

  55. 0.7.6+4 01 Oct 2013

    Nothing published for this version

  56. 0.7.5 20 Sep 2013

    Nothing published for this version

  57. 0.7.4 18 Sep 2013

    Nothing published for this version

  58. 0.7.3+1 16 Sep 2013

    Nothing published for this version

  59. 0.7.2 06 Sep 2013

    Nothing published for this version

  60. 0.7.2+1 08 Sep 2013

    Nothing published for this version

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive