Commit Graph

414 Commits

Author SHA1 Message Date
Max Desiatov 0a28655e5c
Update dependencies (#282) 2021-12-26 08:58:01 +01:00
Max Desiatov 52b7f6ba2d
Update dependencies (#279)
Co-authored-by: MaxDesiatov <MaxDesiatov@users.noreply.github.com>
2021-12-19 16:26:55 +01:00
Max Desiatov a778c2ba7e
Update dependencies (#273)
Co-authored-by: MaxDesiatov <MaxDesiatov@users.noreply.github.com>
2021-12-17 16:11:16 +01:00
Max Desiatov e291a02940
Fix Wasmer installation issues in `Dockerfile` (#276)
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`.
2021-12-13 01:18:24 +01:00
Max Desiatov 9fef513d69
Use PAT secret for Docker in `release.yml` 2021-12-01 15:29:51 +01:00
Max Desiatov d3c3fd885e
Don't build Catalina Homebrew bottle in `release.yml`
GitHub Actions agents with macOS Catalina don't support Xcode 12.5, which is required to build `carton`.
2021-12-01 15:28:39 +01:00
Max Desiatov b3b060d625
Bump version to 0.12.1, update `CHANGELOG.md` (#271) 2021-12-01 15:09:41 +01:00
Max Desiatov db4e3ca202
Bump SwiftWasm to 5.5 in `Dockerfile`, bump AHC (#269)
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.
2021-12-01 13:48:34 +01:00
Max Desiatov 367f0bc01f
Add ICU linker flags to all build invocation (#270)
Resolves https://github.com/swiftwasm/carton/issues/268.
2021-12-01 13:47:53 +01:00
Max Desiatov 04de1c2229
Update dependencies (#261) 2021-11-28 22:25:53 +01:00
Max Desiatov 30a80d0db1
Update `CHANGELOG.md` for 0.12.0, bump Tokamak (#267)
* Update `CHANGELOG.md` for 0.12.0, bump Tokamak

* Bump Tokamak to 0.9.0 in Milk fixture

* Update CHANGELOG.md

Co-authored-by: yonihemi <jonathan@hemi.dev>
2021-11-27 22:52:42 +01:00
Max Desiatov 0e163ec9aa
Use SwiftWasm 5.5.0, bump version to 0.12.0 (#266)
`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
2021-11-24 17:14:42 +01:00
yonihemi 4514347a25
Update JavaScriptKit to v0.11.1 (#265)
* Update JavaScriptKit to v0.11.1

* Update static.zip URL
2021-11-23 17:02:41 +08:00
Max Desiatov 596730b005
Update dependencies, add support for SwiftWasm 5.5 (#263)
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
2021-11-18 13:59:32 +01:00
Michael Schwarz 2c1ec6ff04
Fix environment detection from User-Agent header (#249)
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
2021-10-07 22:10:11 +01:00
Max Desiatov 2c85cdb8b3
Update dependencies (#260) 2021-09-26 11:23:56 +01:00
Max Desiatov e505504d19
Update dependencies (#259) 2021-09-19 12:30:39 +01:00
Max Desiatov 78daa62620
Update dependencies (#258) 2021-09-12 12:08:29 +01:00
Max Desiatov cdcdd7f82c
Disable `--enable-test-discovery` for old versions (#257) 2021-09-08 09:16:55 +01:00
Max Desiatov 8d29e6d585
Update dependencies (#256) 2021-09-06 09:51:56 +01:00
Max Desiatov 43f23b4981 Update `CHANGELOG.md` 2021-09-02 21:36:41 +01:00
Max Desiatov 43cad1abb2 Fix dynamic linking issue in `Dockerfile` 2021-09-02 21:34:17 +01:00
Max Desiatov f6ae632383 Update error message in `Server.swift` 2021-09-02 20:52:51 +01:00
Max Desiatov febf591329
Add Big Sur jobs for Homebrew release workflow 2021-09-02 19:01:20 +01:00
Max Desiatov 022849f9a2
Update `Dockerfile` for SwiftWasm 5.4.0 (#255)
* Update `Dockerfile` for SwiftWasm 5.4.0

* Push Docker image on release

* Use `GITHUB_TOKEN` for GHCR
2021-09-02 17:02:32 +01:00
Max Desiatov e2544afcb5 Clean up `README.md` 2021-09-01 20:51:50 +01:00
Max Desiatov 44930ecfe4 Add a section for version 0.11.0 to `CHANGELOG.md` 2021-09-01 20:50:14 +01:00
Max Desiatov dd6439700f
Bump version to 0.11.0, update dependencies (#251)
* 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
2021-09-01 15:07:00 +01:00
Max Desiatov 1c9502e833
Update link in `README.md` (#252)
Use direct OpenCombine link instead of relying on a redirect
2021-08-26 15:33:07 +01:00
Max Desiatov 00f3dcbb6c
Update dependencies (#247) 2021-08-23 14:19:27 +01:00
Max Desiatov 0c918b5019 Fix release CI script 2021-05-30 10:52:12 +01:00
Max Desiatov ed06b25ab0
Bump version to 0.10.0, update `CHANGELOG.md` (#244) 2021-05-30 10:37:08 +01:00
Max Desiatov b67fe181ef
Update dependencies (#245) 2021-05-30 10:09:35 +01:00
Max Desiatov 6da6dade9f
Update JSKit and Tokamak versions in templates (#243) 2021-05-29 21:45:13 +01:00
Max Desiatov 10c21db4bf
Fix Ubuntu deps, clarify Linux support in README (#242)
Resolves #237.

* Fix Ubuntu deps, clarify Linux support in README

* Avoid using `sudo` if it's not installed
2021-05-28 22:00:38 +01:00
Jed Fox 7204aa4e78
Add support for Chrome and Safari to DestinationEnvironment (#228)
Ref #227. Not sure if `.edge` is intended to represent Chrome-Edge or legacy Edge.
2021-05-28 16:55:13 +01:00
Max Desiatov 18113a1a67
Update dependencies (#232) 2021-05-24 12:35:38 +01:00
Max Desiatov ae8015413b
Fix `carton dev` crashing with SO sanitizer (#239)
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.
2021-05-24 12:03:38 +01:00
Max Desiatov 227efcd07a
Avoid building in `release` mode when testing (#240)
This fixes the issue with Linux builds, as Linux CI hosts were updated to Swift 5.4 which no longer supports testing with release builds.

* Avoid building in `release` mode when testing

* Remove deprecated `LinuxMain.swift`
2021-05-23 15:06:22 +01:00
Max Desiatov abfd10d0cd
Update SwiftPM dependencies (#229) 2021-04-27 14:41:23 +01:00
Max Desiatov 846a05dc89
Update JS dependencies in `package-lock.json` (#231) 2021-04-27 14:39:02 +01:00
Yuta Saito 1acf9c3ad7
Integrate stack sanitizer (#230)
* Update WasmTransformer

* Add build flavor to determine build options

* Enable stack overflow sanitizer pass

* Embed import entry in binary

* Remove sanitize support from bundle command

* Update WasmTransformer and add --stack-first option

* Fix carton-release hash-archive for CartonKit renaming

* Run carton-release hash-archive

* Update WasmTransformer

* Use run-p

* Use matrix in CI

* Build and install pre-released resource

* Exclude fixture directory from linting

* Fix failing tests

* Turn off sanitizer on test command
2021-04-18 16:45:10 +09:00
Max Desiatov 09e8718cb7
Update dependencies (#226) 2021-03-21 21:07:00 +00:00
Max Desiatov 2e82b501a7
Update dependencies (#225)
Co-authored-by: MaxDesiatov <MaxDesiatov@users.noreply.github.com>
2021-03-07 10:45:24 +00:00
Max Desiatov c36f4ad840
Update dependencies (#224)
Co-authored-by: MaxDesiatov <MaxDesiatov@users.noreply.github.com>
2021-02-28 15:13:28 +00:00
Max Desiatov 99d8dde99c
Update dependencies (#223)
Co-authored-by: MaxDesiatov <MaxDesiatov@users.noreply.github.com>
2021-02-21 20:11:34 +00:00
Max Desiatov 1eba1689ac
Update dependencies (#220)
Co-authored-by: MaxDesiatov <MaxDesiatov@users.noreply.github.com>
2021-02-16 18:12:04 +00:00
thecb4 45850d66e0
Add `carton init` with template test. Supports #99 (#221)
* Added init with template test. Supports #99

* Moved expectedTemplateSource outside of test function.  Supports #99

Co-authored-by: thecb4 <cavelle@tehcb4.io>
2021-02-14 11:08:02 -05:00
Max Desiatov 2385b04252
Update dependencies (#219)
Co-authored-by: MaxDesiatov <MaxDesiatov@users.noreply.github.com>
2021-02-07 11:18:27 +00:00
thecb4 4b062aef86
Add tests for `sdk versions` and `sdk local` commands (#218)
* Added tests for version and local

* Debugging versions tests on ci

* Added brew install for swiftenv

* Changed fetchAllSwiftVersions to return empty array if .swiftenv/versions doesnt exist

* Remove commented out code. Removed debug flag for versions test

* Removed swiftenv from Brewfile

Co-authored-by: thecb4 <cavelle@tehcb4.io>
2021-02-01 20:27:37 -05:00