1. 31 Aug, 2017 1 commit
  2. 29 Aug, 2017 1 commit
    • Chris Bracken's avatar
      Extract snapshotting logic to Snapshotter class (#11820) · 27d3e8a4
      Chris Bracken authored
      Extract a Snapshotter class that can be shared between FLX snapshotting,
      AOT snapshotting, and assembly AOT snapshotting. Allows for better
      testability of snapshotting logic.
      
      * Extracts script snapshotting used in FLX build.
      * Adds tests for snapshot checksumming, build invalidation/skipping.
      
      Remaining work: disentangle + extract AOT snapshotting and Assembly AOT
      snapshotting logic from build_aot.dart.
      27d3e8a4
  3. 28 Aug, 2017 1 commit
    • Chris Bracken's avatar
      Avoid rebuilding snapshots if no change to source (#11551) (#11793) · 1ee94001
      Chris Bracken authored
      This change re-introduces skipping AOT snapshot builds if input sources
      and outputs have not changed since the last snapshot build, assuming a
      build for the same platform in the same build mode.
      
      This reverts commit 3d5afb5a.
      It includes the following changes relative to the original:
        1. Include the entrypoint source in the checksums
        2. include the build mode in the checksums
        3. include the target platform in the checksums
      1ee94001
  4. 25 Aug, 2017 1 commit
    • Chris Bracken's avatar
      Add version, build mode to the snapshot checksums (#11787) · fd54bd4c
      Chris Bracken authored
      This change ensures that snapshot build checksums used to avoid
      duplicate builds are invalidated by a change to framework revision
      (in case gen_snapshot is updated), as well as by build mode.
      
      Currently, only FLX snapshotting uses checksums to avoid duplicate
      builds. FLX snapshotting is always done with BuildMode.debug, so didn't
      include build mode in the checksum file.
      fd54bd4c
  5. 23 Aug, 2017 1 commit
  6. 16 Aug, 2017 3 commits
  7. 11 Aug, 2017 1 commit
  8. 08 Aug, 2017 1 commit
    • Chris Bracken's avatar
      Avoid rebuilding snapshots if no change to source (#11551) · 74835db5
      Chris Bracken authored
      This change re-introduces skipping snapshot builds if input sources (and
      outputs) have not changed since the last snapshot build, with a bugfix
      to include the entry-point source in the checksum used to check whether
      rebuild can be skipped. This ensures that the following sequence
      invalidates the cached build, resulting in two snapshot builds:
      
        flutter build ios lib/foo.dart
        flutter build ios lib/bar.dart
      
      This reverts commit 3d5afb5a.
      74835db5
  9. 01 Aug, 2017 1 commit
  10. 05 Jul, 2017 1 commit
    • Chris Bracken's avatar
      Skip AOT snapshot build if inputs are unchanged (#11084) · b5e522e2
      Chris Bracken authored
      Previously, the snapshot file was recomputed on every build. We now
      record checksums for all snapshot inputs (which are catalogued in the
      snapshot dependencies file output alongside the snapshot) and only
      rebuild if the checksum for any input file (or the previous output file) has
      changed.
      b5e522e2
  11. 30 Jun, 2017 2 commits
    • Chris Bracken's avatar
      Skip snapshot build if inputs are unchanged (#11047) · 1438ae85
      Chris Bracken authored
      Previously, the snapshot file was recomputed on every build. We now
      record checksums for all snapshot inputs (which are catalogued in the
      snapshot dependencies file output alongside the snapshot) and only
      rebuild if the checksum for any input file has changed.
      1438ae85
    • Chris Bracken's avatar
      Make _createSnapshot private, depfilePath required (#11054) · c1c15225
      Chris Bracken authored
      * Only one call to createSnapshot exists, and it's in the same library.
      
      * Eliminate conditional logic around the presence of depfilePath, the
        only existing call always passes a non-null depfilePath.
      c1c15225
  12. 06 Apr, 2017 1 commit
  13. 31 Mar, 2017 1 commit
  14. 23 Mar, 2017 2 commits
  15. 20 Mar, 2017 1 commit
    • Jakob Andersen's avatar
      Remove legacy .apk build. (#8793) · 7b2367ed
      Jakob Andersen authored
      * Remove legacy .apk build.
      
      Print out an error message telling the user to upgrade the project if
      it's not Gradle-based. Removed all the obvious traces of the legacy
      build.
      
      Added support for Dart VM kernel snapshots in Gradle builds.
      
      Fixed Android installs to verify that the app is actually installed, and
      not just rely on the presence of the .sha1 file.
      7b2367ed
  16. 14 Mar, 2017 2 commits
    • Jason Simmons's avatar
      Fix the gen_snapshot path for a local_engine FLX build in debug mode (#8754) · e44f513e
      Jason Simmons authored
      gen_snapshot is now used for both JIT and AOT snapshots.  The JIT version
      used in debug mode will be a 64-bit binary.
      e44f513e
    • Jakob Andersen's avatar
      Use snapshot's .d file as source inputs in Gradle build. (#8756) · 9c6ffc82
      Jakob Andersen authored
      * Use snapshot's .d file as source inputs in Gradle build.
      
      If we don't yet have a .d file (first build), fall back to using the
      .dart files in the current directory. This enables us to detect changes
      in dependent source files (Flutter framework, packages outside the
      source directory, etc.), and re-generate the snapshots as needed.
      
      Unfortunately, Gradle requires knowing the source files before executing
      the task, and can't update them after building, so Gradle considers the
      second build to be out-of-date (because it has more input files than the
      first build). Sub-sequent builds have the correct dependency
      information, and will be skipped if the source files haven't changed.
      
      Also added a dependency on gen_snapshot. The snapshot ABI isn't stable,
      so we need to re-generate the snapshots when we roll the Dart SDK
      dependency.
      
      Fixes #8315
      Fixes #8687
      Fixes #8607
      9c6ffc82
  17. 08 Mar, 2017 1 commit
  18. 04 Mar, 2017 1 commit
  19. 02 Mar, 2017 1 commit
  20. 23 Feb, 2017 1 commit
  21. 22 Feb, 2017 1 commit
  22. 17 Feb, 2017 1 commit
    • Michael Goderbauer's avatar
      Refactor how Artifacts are located (#8234) · cd8434d9
      Michael Goderbauer authored
      Artifacts are now located in a central place.
      This will enable us to downlaod artifacts when we need them (instead of
      downloading them all upfront).
      This also makes replacing sky_snapshot with gen_snapshot easier.
      cd8434d9
  23. 15 Feb, 2017 1 commit
  24. 14 Feb, 2017 1 commit
  25. 24 Jan, 2017 1 commit
  26. 22 Jan, 2017 1 commit
    • Dan Rubel's avatar
      Refactor DevFS for kernel code (#7529) · 0295def2
      Dan Rubel authored
      Refactor DevFS so that it's easier to add new types of content such as kernel code
      * add tests for DevFS package scanning
      * add tests for DevFS over VMService protocol
      * which covers _DevFSHttpWriter and ServiceProtocolDevFSOperations
      * replace AssetBundleEntry and DevFSEntry with DevFSContent
      * refactor to cleanup common code and replace some fields with locals
      * rework .package file generation refactor away DevFSOperations.writeSource
      * only update .package file if it has changed
      * only write/delete/evict assets that have been changed/removed
      0295def2
  27. 07 Jan, 2017 1 commit
    • Todd Volkert's avatar
      Update flutter_tools to use package:file throughout (#7385) · 8bb27034
      Todd Volkert authored
      This removes direct file access from within flutter_tools
      in favor of using `package:file` via a `FileSystem` that's
      accessed via the `ApplicationContext`.
      
      This lays the groundwork for us to be able to easily swap
      out the underlying file system when running Flutter tools,
      which will be used to provide a record/replay file system,
      analogous to what we have for process invocations.
      8bb27034
  28. 14 Nov, 2016 1 commit
    • Dan Rubel's avatar
      Refactor flutter command exit code - part 2 (#6817) · e384c0d9
      Dan Rubel authored
      * convert pubGet to throw ToolExit on non-zero exit code
      * convert commandValidator to throw ToolExit for non-zero exit code
      * convert flutter commands to throw ToolExit for non-zero exit code
      * use convenience method throwToolExit
      * only show "if this problem persists" for unusual exceptions
      e384c0d9
  29. 04 Nov, 2016 1 commit
  30. 03 Nov, 2016 1 commit
  31. 02 Nov, 2016 1 commit
    • Petr Hosek's avatar
      Use prebuilt Dart snapshot when assembling bundle (#6660) · 93a2d07c
      Petr Hosek authored
      This is causing issues when integratting Flutter into GN as the
      generated depfile refers to snapshot as the target instead of the
      bundle. We instead use a separate GN action to generate the
      snapshot use the Flutter compiler to only assemble the bundle.
      93a2d07c
  32. 20 Oct, 2016 1 commit
  33. 30 Sep, 2016 1 commit
  34. 25 Aug, 2016 1 commit
    • Chris Bracken's avatar
      Support a configurable build directory (#5601) · b5f763b4
      Chris Bracken authored
      This change adds a top-level getBuildDirectory func and funcs for
      android, aot, asset, ios build products.
      
      Developers may now add a "build-dir" mapping to their
      ~/.flutter_settings (JSON format) config file. Output directory is
      relative to the main flutter application directory.
      
      This change also changes the default build directory for iOS builds to a
      subdirectory of the configured build directory, 'build/ios' by default.
      b5f763b4
  35. 10 Aug, 2016 1 commit