Also creating a variable for making upgrades easily in the future.
* Upgrade binaryen binary version
* Add trailing newline to `install_ubuntu_deps.sh`
Co-authored-by: Max Desiatov <max@desiatov.com>
This makes our codebase smaller by ~80 lines and arguably more readable. Also removes OpenCombine dependency.
* Use `async`/`await` and actors instead of Combine
* Remove OpenCombine dependency
* Fix progress animation not updated
* Stop building with Swift 5.4, clean up terminal output
* Update requirements in `README.md`
* Add `description` to `InvalidResponseCode`
* Fix Linux build error
* Rename `main.swift` to `Main.swift`
* Work around IR/TDB warnings
* Pass IR/TDB arguments correctly to `swift build`
* Support `async` process runner in `carton-release`
* Use Xcode 13.2.1 on macOS
* Pass TDB/IR flags to `swift test` as well
* Make `Install` command async
* Add doc comments, handle subsequent rebuilds
Resolves#274.
* Statically link with `SwiftPMDataModel`
* Use 5.6 upstream branches in `Package.swift`
* Update Swift Argument Parser to 1.0.2
* Use latest SwiftPM 5.5
* Avoid copying non-existent `.so` in `Dockerfile`
Co-authored-by: Max Desiatov <max@desiatov.com>
This makes it possible to test latest `carton` Docker builds from the `main` branch.
* Attempt to push Docker image in `swift.yml`
* Update swift.yml
* Update swift.yml
* Push only a single tag
* Use secrets.PAT for GHCR login
* Move nightly tags to separate `docker.yml` workflow
* Rename `nightly` to `main`
Currently https://github.com/swiftwasm/carton/pull/273 fails because of `libtinfo.so.5: cannot open shared object file: No such file or directory` error happening during Wasmer installation. This should be resolved by installing `libncurses5` package explicitly in `Dockerfile`.
Our `Dockerfile` should be updated to depend on SwiftWasm 5.5.
Additionally, Async HTTP Client has fixed the toolchain downloads issue in 1.8.1, I'm setting it as a minimum version in `Package.swift` here.
`async-http-client` package is now pinned to 1.6.4, as 1.7.0 and later versions caused issues with toolchain downloads (see https://github.com/swift-server/async-http-client/issues/488 for more details).
I've also updated toolchain downloader code to bubble up download errors, which previously were hidden and made it very hard to diagnose these issues.
* Use SwiftWasm 5.5.0, bump version to 0.12.0
* Pin AHC to 1.8.0
* Pin AHC to 1.6.4, always remove downloaded archives
* Fix `defer` build issue
I've dropped support for Swift 5.2, and SwiftLint now requires Xcode 12.5.1, which is unavailable on macOS 10.15 with GitHub Actions. This makes it impossible to test with Swift 5.3 on CI, so I'm bumping the required version to Swift 5.4.
Resolves https://github.com/swiftwasm/carton/issues/262.
* Update dependencies, add support for SwiftWasm 5.5
* Bump dependencies in `.github/workflows/swift.yml`
* Add explicit dependency on `NIOFoundationCompat`
* Lower Splash version to 0.15 for Swift 5.3 compat
* Update DefaultToolchain.swift
* Update swift.yml
* Revert "Lower Splash version to 0.15 for Swift 5.3 compat"
This reverts commit 6e04a7f158.
* Require Swift 5.4 in `Package.swift`
* Update README.md
* Use older 5.5 snapshot, unblock tests on failure
* Update DefaultToolchain.swift
* Select correct CPU architecture when downloading
* Disable hanging test
* Use latest 5.5 toolchain
* Use 2021-11-16 snapshot of SwiftWasm 5.5
* Add missing linker flags, re-enable browser test
* Address PR feedback
The `DestinationEnvironment` was not correctly detected from the `User-Agent` header of a WebSocket connection, always resulted in `.other`. This disabled any stack trace demangling.
Fixes#248.
* Add failing test for DestinationEnvironment.init?()
* Fix environment detection from User-Agent header
* Bump version to 0.11.0, update dependencies
* Test on Big Sur with Xcode 12.5
* Update test fixture dependencies
* Remove `LinuxMain.swift` expectations
* Test with `wasm-5.4-SNAPSHOT-2021-08-26-a`
* Remove expectations for `XCTestManifests.swift`
* Enable debugging output
* Try the latest 5.4 toolchain
* print debug output
* More debug output
* Test on macOS 11 with Xcode 13
* Pipe errors to stdout
* Update DefaultToolchain.swift
* Revert "Update DefaultToolchain.swift"
This reverts commit 4ff15f938a.
* Remove Xcode 13 from the CI matrix
* Update DefaultToolchain.swift
* Reduce the diff
Previously, the file we need to include with the build to enable the stack overflow sanitizer was written as a temporary file. This didn't happen though on watcher rebuilds with `carton dev` and caused crashes when a code line containing `try!` relying on this file to be present was executed.
I think it's easier and more efficient to bundle this file in the `static.zip` file that already includes our JS entrypoints. We require `static.zip` to be downloaded and unpacked successfully into `~/.carton/static` before every build anyway. It makes more sense to sense the sanitizer file in `~/.carton/static/so_sanitizer.wasm` and use that instead writing and deleting it at a temporary path on every build.
I've also updated the JSKit dependency and cleaned up some linter warnings by moving large tuple values into a separate `BuildDescription` type.