1. 12 Jan, 2018 1 commit
    • Chris Bracken's avatar
      Decode syslog-encoded iOS logs (#14075) · 6a42ed3f
      Chris Bracken authored
      Apple encodes syslog entries using a 7-bit encoding where input UTF-8 bytes
      are encoded as follows:
      1. 0x00 to 0x19: non-printing range. Some ignored, some encoded as <...>.
      2. 0x20 to 0x7f: as-is, with the exception of 0x5c (backslash).
      3. 0x5c (backslash): octal representation \134.
      4. 0x80 to 0x9f: \M^x (using control-character notation for range 0x00 to 0x40).
      5. 0xa0: octal representation \240.
      6. 0xa1 to 0xf7: \M-x (where x is the input byte stripped of its high-order bit).
      7. 0xf8 to 0xff: unused in 4-byte UTF-8.
      
      As there doesn't appear to be a system tool to decode these strings, we
      implement here in Dart. If we're unable to decode a string (e.g.
      decoding results in an invalid UTF-8 string), we fall back to emitting
      the log line as-is.
      6a42ed3f
  2. 05 Jan, 2018 1 commit
  3. 27 Dec, 2017 3 commits
  4. 19 Dec, 2017 1 commit
    • Alan Russian's avatar
      Change async stubbing to use thenAnswer. (#13521) · 30720bd1
      Alan Russian authored
      * Change async stubbing to use thenAnswer.
      
      Mockito now prohibits calling thenReturn with Futures and Streams. dart-lang/mockito#79
      
      * Update all Mockito deps to 3.0.0.
      
      * Revert "Update all Mockito deps to 3.0.0."
      
      This reverts commit e8ab9d37c33d3d7fe384abde64ea5b4d72623c75.
      
      I did not correctly update the mockito dep, and there's no easy way to update to 3.0 alpha right now.
      
      * Change thenAnswer((_) => to thenAnswer((invocation) =>
      
      * Add Invocation type to thenAnswer lambdas
      30720bd1
  5. 16 Dec, 2017 1 commit
    • Chris Bracken's avatar
      Require Xcode 9.0 or later for iOS builds (#13608) (#13622) · 7fb78523
      Chris Bracken authored
      We now require Xcode 9.0, which ships with the iOS 11 SDK, for iOS
      builds. This change does not affect the minimum supported iOS deployment
      target, which remains iOS 8.
      
      The iOS 11 SDK adds support for safe area insets, which model the status
      bar, iPhone X home indicator, and symmetric horizontal insets to avoid
      the iPhone X sensor housing when in landscape mode.
      
      This re-lands flutter/flutter#13608 now that the devicelab Macs have
      been updated to Xcode 9.
      7fb78523
  6. 15 Dec, 2017 2 commits
  7. 29 Nov, 2017 1 commit
    • Todd Volkert's avatar
      Add support for IOS_SIMULATOR_HOME environment variable in IOSSimulat… (#13236) · 137f0751
      Todd Volkert authored
      Add support for IOS_SIMULATOR_HOME environment variable in IOSSimulator.logFilePath
      
      flutter_tools can be run on environments where the user's HOME directory
      is not the root of the iOS simulators' configs. This change adds support
      for such environments by allowing the caller to set the simulator root
      directory via an environment variable.
      137f0751
  8. 17 Nov, 2017 1 commit
  9. 10 Nov, 2017 1 commit
  10. 07 Nov, 2017 1 commit
  11. 28 Sep, 2017 1 commit
  12. 14 Sep, 2017 1 commit
    • Chris Bracken's avatar
      Migrate to os_log for reading iOS simulator logs (#12079) · dd7e3133
      Chris Bracken authored
      1. Migrate simulator device log tailing to os_log toolchain
      2. When the log tag (component) is available (iOS 11/Xcode 9), filter to
         the set of log lines with tag 'Flutter'.
      
      As of iOS 11 / Xcode 9, Flutter engine logs are no longer recorded in the
      simulator's syslog file, which we previously read using tail -f. Instead
      they're now accessible through Apple's new macOS/iOS os_log facility,
      via /usr/bin/log, which supports a relatively flexible query language.
      
      When run in non-interactive mode, /usr/bin/log buffers its output in 4k
      chunks, which is significantly smaller than what's emitted up to the
      point where the observatory/diagnostics port information is logged. As a
      workaround we force it to run in interactive mode via the script tool.
      dd7e3133
  13. 07 Sep, 2017 2 commits
    • Chris Bracken's avatar
      Eliminate iOS log blacklist (#11981) · 8c61116c
      Chris Bracken authored
      This was introduced to suppress libMobileGestalt noise originating from
      libsystem_asl.dylib. Commit 39680ebf
      suppresses all application log messages not originating from the
      app/engine iteself on iOS 10 and above. Since the log message in
      question is only emitted on devices running iOS >= 10.3.0, this
      blacklist no longer necessary.
      8c61116c
    • Chris Bracken's avatar
      Suppress non-Flutter log messages in terminal (#11969) · 39680ebf
      Chris Bracken authored
      On iOS 10 and above, suppress engine log messages from system components
      other than Flutter. This eliminates a large amount of keyboard/plugin
      related noise during edit-refresh development.
      39680ebf
  14. 05 Sep, 2017 1 commit
  15. 01 Sep, 2017 1 commit
    • Chris Bracken's avatar
      Use idevice_id, ideviceinfo for iOS device listing (#11883) · eba6ceb8
      Chris Bracken authored
      This patch migrates iOS device listing from using Xcode instruments to
      using the libimobiledevice tools idevice_id and ideviceinfo.
      
      ideviceinfo was previously incompatible with iOS 11 physical devices;
      this has now been fixed.
      
      In 37bb5f13 flutter_tools migrated from
      libimobiledevice-based device listing on iOS to using Xcode instruments
      to work around the lack of support for iOS 11. Using instruments entails
      several downsides, including a significantly higher performance hit, and
      leaking hung DTServiceHub processes in certain cases when a simulator is
      running, necessitating workarounds in which we watched for, and cleaned
      up leaked DTServiceHub processes. This patch returns reverts the move to
      instruments now that it's no longer necessary.
      eba6ceb8
  16. 31 Aug, 2017 1 commit
  17. 23 Aug, 2017 2 commits
  18. 22 Aug, 2017 2 commits
  19. 16 Aug, 2017 1 commit
  20. 13 Jul, 2017 3 commits
    • Chris Bracken's avatar
      Clean up orphaned Instruments processes (#11189) · cf96c7db
      Chris Bracken authored
      In some cases, we've seen interactions between Instruments and the iOS
      simulator that cause hung instruments and DTServiceHub processes. If
      enough instances pile up, the host machine eventually becomes
      unresponsive.
      
      Until the underlying issue is resolved, manually kill any orphaned
      instances (where the parent process has died and PPID is 1) before
      launching another instruments run.
      cf96c7db
    • xster's avatar
      Stop sending cocoapods stats (#11120) · 92750833
      xster authored
      * Disable cocoapods stats
      
      * Add a comment for code readers
      
      * fix new test
      92750833
    • xster's avatar
      Create Podfile dynamically part 1 (#11101) · 6a49419b
      xster authored
      * start
      
      * with create
      
      * refactor cocoapod code, add tests
      
      * fix tests
      
      * throw when cocoapod missing
      
      * obj-c projects don’t use use_framework!
      6a49419b
  21. 07 Jul, 2017 1 commit
  22. 29 Jun, 2017 1 commit
  23. 28 Jun, 2017 1 commit
  24. 26 Jun, 2017 3 commits
  25. 24 Jun, 2017 1 commit
  26. 22 Jun, 2017 1 commit
  27. 19 Jun, 2017 1 commit
    • Chris Bracken's avatar
      Re-enable use of instruments for iOS device lookup (#10838) · 1d9f0095
      Chris Bracken authored
      This reverts commit b2909a24.
      
      This resubmits the following patches:
      
      1. Use Xcode instruments to list devices (#10801)
      Eliminates the dependency on idevice_id from libimobiledevice. Instead,
      uses Xcode built-in functionality.
      
      2. Make device discovery asynchronous (#10803)
      Migrates DeviceDiscovery.devices and all device-specific lookup to be
      asynchronous.
      1d9f0095
  28. 17 Jun, 2017 2 commits
    • Chris Bracken's avatar
      Revert use of Xcode instruments for device lookup (#10806) · b2909a24
      Chris Bracken authored
      * Revert "Make device discovery asynchronous (#10803)"
      This reverts commit 972be9c8.
      
      * Revert "Use Xcode instruments to list devices (#10801)"
      This reverts commit 37bb5f13.
      
      This is to resolve a failure that looks related to a bad install of Xcode 8.0
      on our build bots and should be reinstated when the infra issue is diagnosed
      and resolved.
      
      Instruments worked well when this was originally landed, and on the
      following commit, but started failing two commits after this originally
      landed. Manual invocation of instruments on the build host currently
      results in:
      
      ```
      dyld: Library not loaded: @rpath/InstrumentsAnalysisCore.framework/Versions/A/InstrumentsAnalysisCore
        Referenced from: /Applications/Xcode8.0.app/Contents/Developer/usr/bin/instruments
        Reason: image not found
      Abort trap: 6
      ```
      
      It appears the /Applications/Xcode8.0.app/Contents/Applications
      directory (which contains Instruments) is missing on the host.
      b2909a24
    • Chris Bracken's avatar
      Make device discovery asynchronous (#10803) · 972be9c8
      Chris Bracken authored
      Migrates DeviceDiscovery.devices and all device-specific lookup to be
      asynchronous.
      972be9c8
  29. 16 Jun, 2017 1 commit