-
-
Notifications
You must be signed in to change notification settings - Fork 73
Comparing changes
Open a pull request
base repository: swiftwasm/JavaScriptKit
base: 0.50.2
head repository: swiftwasm/JavaScriptKit
compare: 0.51.0
- 10 commits
- 158 files changed
- 6 contributors
Commits on Apr 14, 2026
-
Configuration menu - View commit details
-
Copy full SHA for ff90c3e - Browse repository at this point
Copy the full SHA ff90c3eView commit details
Commits on Apr 21, 2026
-
JavaScriptKit: import Android module for non-Wasm Android targets (#722)
Building JavaScriptKit for the Swift 6.3 Android SDK triples (e.g. aarch64-unknown-linux-android28, x86_64-unknown-linux-android30) fails in ThreadLocal.swift with: error: cannot find 'pthread_key_create' in scope error: cannot find 'pthread_key_t' in scope Android uses Bionic, exposed to Swift as the `Android` module, rather than Glibc. The existing conditional falls through to `#error("Unsupported platform")` on Android. Add a `canImport(Android)` branch between the Darwin and Glibc branches, matching the pattern already used by Foundation and swift-corelibs-libdispatch. No Wasm, Darwin, or Glibc behavior changes.Configuration menu - View commit details
-
Copy full SHA for 94f02c3 - Browse repository at this point
Copy the full SHA 94f02c3View commit details -
Bump actions/upload-pages-artifact from 4 to 5 (#721)
Bumps [actions/upload-pages-artifact](https://github.com/actions/upload-pages-artifact) from 4 to 5. - [Release notes](https://github.com/actions/upload-pages-artifact/releases) - [Commits](actions/upload-pages-artifact@v4...v5) --- updated-dependencies: - dependency-name: actions/upload-pages-artifact dependency-version: '5' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for f458fb6 - Browse repository at this point
Copy the full SHA f458fb6View commit details
Commits on Apr 22, 2026
-
Configuration menu - View commit details
-
Copy full SHA for d70aaff - Browse repository at this point
Copy the full SHA d70aaffView commit details
Commits on Apr 24, 2026
-
Configuration menu - View commit details
-
Copy full SHA for 1f8710b - Browse repository at this point
Copy the full SHA 1f8710bView commit details -
Merge pull request #723 from swiftwasm/feat/identity-mode-upstream
feat: Add opt-in pointer identity mode for SwiftHeapObject wrappers
Configuration menu - View commit details
-
Copy full SHA for f3ce20c - Browse repository at this point
Copy the full SHA f3ce20cView commit details
Commits on Apr 26, 2026
-
Add Utilities/setup-dev.sh for one-command contributor setup (#726)
Wraps the manual steps already documented in CONTRIBUTING.md: - Verifies required tools (swiftly, swift, jq, npm, make, curl). - If a .swift-version file is present, installs the pinned toolchain via swiftly. - Resolves and installs a matching Wasm SDK from swift-sdk-index (idempotent — skipped if already installed). - Runs `make bootstrap` to install JS deps. - Prints SWIFT_SDK_ID for use with `make unittest`. The script runs under bash via shebang; the export instructions it prints work unchanged in zsh and bash. The repo does not track .swift-version; contributors who want it ignored locally can add it to .git/info/exclude. The original manual instructions are kept in CONTRIBUTING.md as a fallback.Configuration menu - View commit details
-
Copy full SHA for 8d279a0 - Browse repository at this point
Copy the full SHA 8d279a0View commit details
Commits on Apr 28, 2026
-
Configuration menu - View commit details
-
Copy full SHA for 016fa5b - Browse repository at this point
Copy the full SHA 016fa5bView commit details
Commits on Apr 30, 2026
-
BridgeJS: Use
@JStypes from other modules in the same package (#730)* BridgeJS: Use `@JS` types from other modules in the same package * BridgeJS: Improve diagnostics with multi-module AOT * BridgeJS: Fix an issue where the skeleton was being treated as a resource * Fix typo * Documentation improvements
Configuration menu - View commit details
-
Copy full SHA for 09b3f4e - Browse repository at this point
Copy the full SHA 09b3f4eView commit details -
[BridgeJS] Synthesize typed-closure init access from declaration surf…
…ace (#709) (#727) * [BridgeJS] Synthesize typed-closure init access from declaration surface Resolves #709: a public `@JSClass` exposing a `JSTypedClosure<...>` parameter could not be consumed from another target because the synthesized `extension JSTypedClosure { init(...) }` was always internal, leaving downstream callers no way to construct the closure value without hand-rolling a public wrapper. Imported skeleton entries now record the source access level (`public`/`package`/`internal`); the closure-signature collector takes the maximum across every surface that references a given signature, and `ClosureCodegen` prefixes the synthesized init with the resulting modifier (internal stays bare). This matches the pattern `JSClassMacro` already uses for `init(unsafelyWrapping:)`. * [BridgeJS] Address PR feedback and refresh generated artifacts - Make `accessLevel` decode-tolerant on imported skeleton structs (`ImportedFunctionSkeleton`, `ImportedConstructorSkeleton`, `ImportedGetterSkeleton`, `ImportedSetterSkeleton`, `ImportedTypeSkeleton`) by writing explicit `init(from:)` decoders that fall back to `.internal` when the key is missing. Without this, any pre-existing skeleton JSON without the new field fails decoding — the `build-examples` CI job hit `DecodingError.keyNotFound` for `accessLevel` against externally consumed skeletons. - Extract a private `recordSignature` helper so `visitClosure` and `recordInjectedSignature` share a single merge implementation. - Assert in `withAccessLevel(rawLevel:)` so unknown access strings ("open", "private", future schema additions) surface in debug builds instead of silently inheriting the outer level. - Document the `.internal` seeding assumption on `ClosureSignatureCollectorVisitor.init(moduleName:signatures:)`. - Regenerate the BridgeJS pre-generated artifacts under Benchmarks/, Examples/PlayBridgeJS/, Tests/BridgeJSIdentityTests/, and Tests/BridgeJSRuntimeTests/ via `./Utilities/bridge-js-generate.sh`, per CONTRIBUTING.md. The runtime-tests Swift output now emits `public init` on three `JSTypedClosure` extensions whose signatures surface through public exported types. * [BridgeJS] Refresh identity tests skeleton after merge with main #731 added the GC lifecycle test (with new imported function entries) to main while this branch was open. Re-running the BridgeJS regen against the merged tree fills in the `accessLevel` field on the new entries that were absent at merge time. * ci: retry flaky JSPromiseTests.testPromiseAndTimer
Configuration menu - View commit details
-
Copy full SHA for f483b91 - Browse repository at this point
Copy the full SHA f483b91View commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff 0.50.2...0.51.0