Skip to content

Releases: ios-control/simctl

v3.0.0

19 Nov 05:22
v3.0.0
74f0955

Choose a tag to compare

Breaking Changes:

  • Spawn Output Now Always UTF-8 Strings

    All methods that call spawnSync now always return UTF-8–encoded strings for stdout, stderr, and within output.

    Buffer output is no longer supported.

    Any code that relied on Buffers—for example, performing Buffer operations or handling raw binary data—will need to be updated to work with string output.

  • Updated Method Signature: spawn

    The spawn method signature has changed:

    Before:

    spawn: function (waitForDebugger, arch, device, pathToExecutable, argv) {

    Now:

    spawn: function (device, pathToExecutable, argv = [], options = {}) {

    The waitForDebugger and arch arguments are no longer passed directly.These have been moved into the options object.

    Update your calls accordingly so any previous waitForDebugger or arch usage is now provided as properties inside options.

  • Updated Method Signature: launch

    The launch method signature has changed:

    Before:

    launch: function (waitForDebugger, device, appIdentifier, argv) {

    Now:

    launch: function (device, appIdentifier, argv = [], options = {}) {

    The waitForDebugger argument has been moved into the options object.

    Additional optional properties have been added to options:

    • archive
    • stderr (path to a log file)
    • stdout (path to a log file)

    Update any existing calls to pass these values via the options object rather than as separate parameters.


What's Changed

Breaking Changes:

  • feat!: replace shelljs.exec with child_process.spawnSync by @dpogue in #46
  • feat!: use @cordova/eslint-config (supports ESLint 9) by @erisu in #49
  • feat!: move logging logic to launch method by @erisu in #57
  • feat!: restructured spawn method by @erisu in #59
  • feat!: return encoding everywhere by @erisu in #62

Features:

  • feat: Add functions to retrieve simctl and xcode versions by @dpogue in #51
  • feat: add pair and unpair support by @erisu in #60

Fixes:

  • fix(list): Fix calls to list with no arguments by @dpogue in #52
  • fix(publish): Don't try to globally install npm by @dpogue in #55
  • fix(start): Properly handle xcode-select output by @dpogue in #56

Others:

  • chore: Clean up unused files & document Node version support. by @dpogue in #50
  • chore: rebuild package-lock.json by @erisu in #58
  • ci: Add workflow to publish tagged versions to npm by @dpogue in #53
  • dep: bump minimist from 1.2.5 to 1.2.6 by @dependabot[bot] in #37
  • dep: bump minimatch from 3.0.4 to 3.1.2 by @dependabot[bot] in #38
  • dep: update dev dependencies w/ rebuilt package-lock v2 by @erisu in #40
  • dep: bump word-wrap from 1.2.3 to 1.2.4 by @dependabot[bot] in #41
  • dep: bump braces from 3.0.2 to 3.0.3 by @dependabot[bot] in #42
  • dep: bump @babel/traverse from 7.20.12 to 7.25.9 by @dependabot[bot] in #44
  • dep: bump brace-expansion from 1.1.11 to 1.1.12 by @dependabot[bot] in #45
  • tests: Replace Jest with Node Test Runner & add GHA CI by @dpogue in #48
  • test: Add some more test cases and turn on coverage reporting by @dpogue in #54

New Contributors


Full Changelog: v2.0.3...v3.0.0

v2.0.3

11 Feb 16:03

Choose a tag to compare

v2.0.2...v2.0.3

fix regression

09 Feb 09:36

Choose a tag to compare

  • Fix shelljs exec return object usage. (#31) e54fc06

v2.0.1...v2.0.2

fix dependency updates, update appveyor node testing

30 Jan 16:12

Choose a tag to compare

  • fix: incorrect error message (fixes #19) d558c5c
  • fix: update node tests to 14, 16 c4f0a45
  • Revert "fix: downgrade eslint to 6.8.0" 2b3f55c
  • fix: downgrade eslint to 6.8.0 2bd0885
  • fix: update node versions 779fa08
  • fix: update build badge 49cb366
  • fix: remove travis ci build d97781f
  • chore(package): update eslint to v8 8415c5f
  • Bump path-parse from 1.0.6 to 1.0.7 (#25) 286ab6b
  • Bump js-yaml from 3.12.0 to 3.14.1 (#28) 6162e8b
  • Bump hosted-git-info from 2.7.1 to 2.8.9 (#24) 4db0715
  • Bump lodash from 4.17.15 to 4.17.21 (#23) 00f5418
  • Bump shelljs from 0.2.6 to 0.8.5 (#26) 9f2ef9a
  • Bump lodash from 4.17.11 to 4.17.15 (#20) 06afda9

2.0.0...v2.0.1

Changed 'start' behaviour. Simulator re-use (not restarted)

05 Dec 09:18

Choose a tag to compare

See #17. The simulator is re-used, if it has already been started. simctl will not kill the simulator each time.

Xcode 8 and 9 fixes for Simulator launches

05 Dec 09:24

Choose a tag to compare

  • Add newline to help text for check_prerequisites
  • Fixes for Xcode 8 and Xcode 9 quirks

Xcode 9 simulator fix

05 Dec 09:23

Choose a tag to compare

  • Fix xcrun instruments can't launch Simulators on Xcode 9 issue (#15)
  • Updated error text from check_prerequisites to reflect Xcode 8
  • use xcrun simctl list --json #12

Fix check_prerequisites help text to Xcode 8

14 Jun 22:39

Choose a tag to compare

1.0.1

Updated error text from check_prerequisites to reflect Xcode 8

Use new `xcrun simctl list --json` feature in Xcode 8

14 Jun 22:38

Choose a tag to compare

Fixes #12 - use xcrun simctl list --json
Bump requirement to Xcode 8

Fixed for new iPad Pro sizes

20 Oct 06:26

Choose a tag to compare

  • Fixed #11 - Does not handle "iPad Pro (9.7 inch)" and "iPad Pro (12.9 inch)" in listing devices