Skip to main content

Python wrapper around the simctl utility

Project description

isim

Python Version Xcode 15.0

This is a Python wrapper around the xcrun simctl utility that Apple provides for interacting with the various Xcode developer tools.

xcrun simctl is the tool for interacting with the iOS simulator and is the main focus of this module. The syntax is designed to remain as close to that which would be used on the command line as possible. For example, to list all runtimes on the command line you would do:

xcrun simctl list runtimes

With this module you can simply do:

from isim import Runtime
print(Runtime.list_all())

Most functions are on the item that they affect. So instead of running something on a device like:

xcrun simctl do_thing <DEVICE_ID> arg1 arg2 ...

You can do this:

from isim import Device
iPhone7 = Device.from_name("iPhone 7")
iPhone7.do_thing(arg1, arg2, ...)

Testing

To run the tests, all you need to do is run python -m pytest tests from the root directory.

isim and Xcode Versioning

isim follows the current supported version of Xcode for its version scheme.

For example, if the currently supported version of Xcode is 11, then isim will be versioned as 11.minor.patch. The minor version will only be increased if there is a breaking change in Xcode requiring it (which is unlikely). The patch version will be increased with each patch that is made.

There is no expectation of backwards compatibility. If you need to support an older version of Xcode, you'll almost always need an older major version.

Note: The Xcode developer tools are installed with new betas. That means that if you are running Xcode 10.2.1, but then install the Xcode 11 beta, the simulator tools will be for Xcode 11, rather than Xcode 10, even if you run xcode-select -s. That means that as soon as you install a beta on your machine, you will need to use that version of isim.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

isim-15.0.0.tar.gz (10.6 kB view details)

Uploaded Source

Built Distribution

isim-15.0.0-py3-none-any.whl (12.6 kB view details)

Uploaded Python 3

File details

Details for the file isim-15.0.0.tar.gz.

File metadata

  • Download URL: isim-15.0.0.tar.gz
  • Upload date:
  • Size: 10.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.11.4 Darwin/22.6.0

File hashes

Hashes for isim-15.0.0.tar.gz
Algorithm Hash digest
SHA256 7b174e3557db28846f3a033449b2d29a057f4c54457120a660946363065ae957
MD5 18eae45759b534880c6be1ae6e807f47
BLAKE2b-256 41e9f673aae28f9ed913daf6d67e01be0280ac3a3506ce95aeead7798f459dc0

See more details on using hashes here.

File details

Details for the file isim-15.0.0-py3-none-any.whl.

File metadata

  • Download URL: isim-15.0.0-py3-none-any.whl
  • Upload date:
  • Size: 12.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.11.4 Darwin/22.6.0

File hashes

Hashes for isim-15.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f472020627d9a9ddd3007aba8153aeb153fef0a3d2194f1223428a0ca104a014
MD5 4bb19efc2a6756df0905a43dd23d2b1a
BLAKE2b-256 7c480f5a43e1be2921f203edecda8b2ffa5edd46cce754dfce3a5b9e8a960575

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page