Skip to content

fix: ios17/xcode 15 changes - #81

Merged
rigor789 merged 3 commits into
NativeScript:masterfrom
jcassidyav:fix-ios17
Oct 6, 2023
Merged

rigor789 merged 3 commits into
NativeScript:masterfrom
jcassidyav:fix-ios17

Conversation

@jcassidyav

Copy link
Copy Markdown
Contributor
  • Leverages the new devicectl from xcode 15 to start and stop the application, as the old way is not supported on xcode >= 15 for ios >=17 devices.

@cla-bot cla-bot Bot added the cla: yes label Sep 28, 2023
@rigor789
rigor789 merged commit c272051 into NativeScript:master Oct 6, 2023
edusperoni added a commit to edusperoni/ios-device-lib that referenced this pull request Sep 3, 2026
The Windows sources have not compiled since the iOS 17 changes in NativeScript#81:
IOSDeviceLib.cpp includes <dlfcn.h> unconditionally and resolves SSL_free
through dlsym, SocketHelper.cpp calls AMDServiceConnectionSend which
Declarations.h only declares for macOS, GDBHelper.cpp passes a HANDLE to
closesocket, and a translation unit pulls winsock.h in ahead of winsock2.h.
That is also why 0.9.5 shipped without bin/win32. The release pipeline
covers what the package can ship today; a windows-latest job belongs in
build-native.yml once the sources build again.
edusperoni added a commit that referenced this pull request Sep 4, 2026
…ions (#87)

* ci: build binaries and publish to npm with provenance from GitHub Actions

Releases were assembled by hand: build with Xcode, build twice with Visual
Studio, copy the results together, npm pack, npm publish. The last release
shipped an arm64-only macOS binary and no Windows binaries as a result.

This adds the same release pipeline the NativeScript CLI uses:

- build-native.yml (reusable) compiles the universal macOS binary on a macOS
  runner and the x64/ia32 Windows binaries on a Windows runner, verifying
  each and uploading them as artifacts.
- tests.yml runs the mocha suite on Node 20/22/24 and the native builds on
  every pull request and push to master.
- npm_release.yml publishes a rolling "next" prerelease on every push to
  master, a stable release on a v* tag, and supports a manual dispatch that
  bumps, tags and releases. Publishing uses npm trusted publishing (OIDC)
  from the npm-publish environment with --provenance, with a granular-token
  fallback behind the USE_NPM_TOKEN repository variable. Tag pushes and
  dispatched releases also create a GitHub release with the tarball and an
  in-toto statement attached.

package.json's repository URL is updated to the NativeScript org: npm refuses
to publish with provenance when it does not match the repository the workflow
runs in. semver and conventional-changelog-cli are added as devDependencies
for the version scripts and the release notes.

* ci: build only the macOS binary

The Windows sources have not compiled since the iOS 17 changes in #81:
IOSDeviceLib.cpp includes <dlfcn.h> unconditionally and resolves SSL_free
through dlsym, SocketHelper.cpp calls AMDServiceConnectionSend which
Declarations.h only declares for macOS, GDBHelper.cpp passes a HANDLE to
closesocket, and a translation unit pulls winsock.h in ahead of winsock2.h.
That is also why 0.9.5 shipped without bin/win32. The release pipeline
covers what the package can ship today; a windows-latest job belongs in
build-native.yml once the sources build again.

* ci: publish preview builds to pkg.pr.new

Mirrors the NativeScript core repo's preview-release workflow. Every push to
master and every pull request publishes the packed package, including the
freshly built macOS binary, so a fix can be tried from a PR with
npm i https://pkg.pr.new/ios-device-lib@<sha> before it is released.
Requires the pkg.pr.new GitHub App to be installed on the repository.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants