1. 06 May, 2016 1 commit
  2. 05 May, 2016 1 commit
  3. 24 Apr, 2016 1 commit
  4. 22 Apr, 2016 5 commits
  5. 19 Apr, 2016 1 commit
    • Drew's avatar
      Silence some warnings · 3ad73a90
      Drew authored
      We have overlays that are set automatically by atbuild now, it is
      expected that they won't have an effect across every task.
      3ad73a90
  6. 15 Apr, 2016 3 commits
    • Drew's avatar
      Add NSFileManager back · 1e79aacd
      Drew authored
      1e79aacd
    • Drew's avatar
      Revise required-overlays check · 3bf876c1
      Drew authored
      It is inappropriate to check for required-overlays at parse-time,
      because we may not be interested in the task with the required-overlays.
      
      Specifically, a case arose where a build task required linux/macosx
      overlays, but a clean task did not.  However, the user was required to
      run clean with the platform overlay for the (unused) build task to be
      valid.
      
      The resolution here is to move the required overlays check to a separate
      API.  The downside here is that callers have to opt-in to this behavior.
      
      An alternate design would be to intercept this in the task subscript,
      but that was considered too invasive.
      
      Resolves https://github.com/AnarchyTools/atbuild/issues/66
      3bf876c1
    • Drew's avatar
      The great renaming is now slightly different · 57c9722c
      Drew authored
      57c9722c
  7. 14 Apr, 2016 1 commit
  8. 07 Apr, 2016 2 commits
    • Drew's avatar
      Use trailing slash for pathOnDisk · 9afedad9
      Drew authored
      This significantly simplifies tools that want to work with paths that
      are relative to the atpkg file.  They can simply use task.importedPath +
      task[field].string! etc.
      9afedad9
    • Drew's avatar
      Implement a substition engine for variable expansion · edafd8e4
      Drew authored
      For many reasons it is desireable to support custom variable expansion
      inside an atpkg file.  This commit does that.
      
      This feature is "opt-in", meaning an individual tool's field must opt in
      to varaible expansion.  This is because:
      
      * Variable substition is not appropriate for all fields and tools
      * The particular expansion I'm PRing here requires a complete parse in
        order to be well-defined.
      
      Here is the syntax:
      
      * `${VARIABLE}` means to substitite for the value `VARIABLE`
      
      * We require two tokens `${` to begin a substition.  This is because `$`
        alone is already in use, and we don't want to immediately break
        compatibility (and CI, etc.)  We reserve the right to deprecate
        unescaped `$` in a future release.
      * We support escape syntax `\${VARIABLE}`
      
      * We also support escape syntax `$?{VARIABLE}` (where `?` is a non-`{`
        character).  We reserve the right to deprecate unescaped `$` in a
        future release.
      
      We also implement the first expansion `${collect_sources:taskname}`.
      This expands to the "collected sources" of the specified task name,
      using the same definition as `atllbuild`.
      
      The intent here is to allow the creation of arbitrary tasks that accept
      source files as arguments.  `xcode-emit` is an obvious candidate, and
      would allow it to break its dependence on atpkg, which it only uses for
      this single feature.
      
      There are other obvious programs that we might want to call with "all
      sources" (e.g. preprocessors, etc.) and they may not want to take a
      dependency on atpkg either.
      edafd8e4
  9. 21 Mar, 2016 3 commits
  10. 19 Mar, 2016 1 commit
  11. 14 Mar, 2016 1 commit
  12. 09 Feb, 2016 4 commits
  13. 06 Feb, 2016 1 commit
    • Drew's avatar
      Mute warnings · 80e10424
      Drew authored
      We have too many warnings; this patch silences some of them.
      
      * Silencing a certain class of duplicate warnings.  We currently are quite conservative with continuing to process overlays until we are quite sure they are all applied; this produces duplicate warnings in common cases.  We now filter those before we print them.
      * We have a new parameter `focusOnTask` which focuses some verbose warnings on the particular task, not everything in the package file.
      80e10424
  14. 04 Feb, 2016 2 commits
    • Drew's avatar
      Publish appliedOverlays property · 79b2af45
      Drew authored
      We can provide a diagnostic for this inside atbuild
      79b2af45
    • Drew's avatar
      Strongly type Tool keys · 17c1df6f
      Drew authored
      We now strongly type the tool keys, continuing our saga of killing the
      stringly-typing.
      
      Additionally, this allows some tools to provide better diagnostics.
      17c1df6f
  15. 02 Feb, 2016 4 commits
  16. 31 Jan, 2016 1 commit
    • Drew's avatar
      Flatten overlay hierarchy · be41dddb
      Drew authored
      This flattens the namespace of overlays to match the flattened hierarchy of tasks
      be41dddb
  17. 28 Jan, 2016 6 commits
  18. 27 Jan, 2016 2 commits