Commit Graph

1029 Commits

Author SHA1 Message Date
juj
861ce44b24 Pin python requests library to 2.32.3. (latest at the time of writing) (#1478) 2024-10-19 01:30:52 +03:00
juj
1e2f1a239e Update Node from 18.20.3 LTS to 20.18.0 in precompiled releases. (#1476)
Update Node from 18.20.3 LTS to 20.18.0 in precompiled releases. This
does have an effect of retroactively updating Node version also to old
releases, but this is expected to be fine.
2024-10-19 00:48:45 +03:00
juj
5e398ab4bc Update Node to 20.18.0 LTS and add support for Windows on ARM64 to Node packages. (#1473)
Earlier Node 18.20.3 LTS did not yet support Windows on ARM64 builds.

Node 20.18.0 LTS is released on
https://nodejs.org/en/blog/release/v20.18.0.

This update currently only affects the "compiled from source" builds,
and not the Google precompiled releases.
2024-10-19 00:20:02 +03:00
juj
8a99ae8698 Use zip_cmd() and unzip_cmd() in update_node.py as well. (#1471)
This way update_node.py can be called on Windows host machines as well.
2024-10-18 23:34:04 +03:00
juj
eda31dc972 Only upload node with gsutil in update_node.py if --upload is passed. (#1472)
This allows running the script locally.

Is there some kind of automated script that needs a matching update, or
was this always run manually?
2024-10-18 23:29:38 +03:00
juj
dc6e0d42c4 Remove temp zip after uncompressing in update_python.py (#1470)
Remove temp zip after uncompressing in update_python.py to avoid
confusing it with the output artifact zip. Adjust comments.
2024-10-18 23:03:08 +03:00
juj
2ba3fcabb9 Remove old unsupported MinGW and Gnu grep tools. (#1468) 2024-10-18 12:17:40 +03:00
juj
53249b91e7 Remove old unused node.js versions from manifest. (#1467) 2024-10-17 20:41:30 +03:00
juj
35439da1cd Include psutil module in the python build to enable emrun to track when browser process finishes. (#1464)
Without this, emrun web server will be left running after user code
quits the page abnormally without calling `exit()` (e.g. due to a page
awwsnap crash), and there are multiple processes in use by the browser.

emrun has a graceful fallback to weaker browser process detection when
psutil is not available, so this is easy to miss if not running emrun
with --verbose:
814ec05f74/emrun.py (L330-L339)
2024-10-17 19:47:19 +03:00
juj
2c42698bcd Remove old Python versions from manifest: no package uses these python versions anymore. (#1465) 2024-10-17 19:47:11 +03:00
Derek Schuff
8e661c80d4 Add release reviewers to release creation PRs (#1455) 2024-10-14 17:27:03 -07:00
slowriot
50dffe11fa Add git pull to README.md (#1460)
Minor addition to bring README.md in line with the web documentation.
Resolves #1447.
2024-10-14 15:55:16 -07:00
github-actions[bot]
a36df02dc4 Release 3.1.69 (#1456)
With emscripten-releases revisions:

https://chromium.googlesource.com/emscripten-releases/+/8fe01288bc35668c13316324336ea00195dfb814
(LTO)

https://chromium.googlesource.com/emscripten-releases/+/cf6f9d1b4026ec7aec33aceb68077c704b52b068
(asserts)

---------

Co-authored-by: Derek Schuff <dschuff@chromium.org>
Co-authored-by: dschuff <1122856+dschuff@users.noreply.github.com>
2024-10-11 18:27:36 -07:00
github-actions[bot]
54ef088329 Release 3.1.68 (#1453)
With emscripten-releases revisions:

https://chromium.googlesource.com/emscripten-releases/+/b52d8c9150dc7d4c8e4a7a08c7a9b4006c9abe49
(LTO)

https://chromium.googlesource.com/emscripten-releases/+/1565c9e5a4547215a1b63013607bf7a1cbb3d9d3
(asserts)

Co-authored-by: emscripten-bot <179889221+emscripten-bot@users.noreply.github.com>
2024-09-30 08:35:23 -07:00
Victor
f809c11ce3 [NFC] Fix a typo in README.md (#1451) 2024-09-19 10:01:24 -07:00
github-actions[bot]
a2383b3358 Release 3.1.67 (#1448)
With emscripten-releases revisions:

https://chromium.googlesource.com/emscripten-releases/+/4ae62984ea36ef0e5bfcbd0ed9b62f04bee6426a
(LTO)

https://chromium.googlesource.com/emscripten-releases/+/7cfc00962efe07f2e2ff3383f59519dc5bea4f82
(asserts)

Co-authored-by: emscripten-bot <179889221+emscripten-bot@users.noreply.github.com>
2024-09-16 22:35:23 -07:00
Derek Schuff
20edf66145 Switch token name in release action (#1446)
Rename secret from test to production name
2024-09-09 19:56:11 -07:00
github-actions[bot]
a72a42afc3 Release 3.1.66 (#1445)
With emscripten-releases revisions:

https://chromium.googlesource.com/emscripten-releases/+/243eae09cf5c20c4fde51a620b92f483255c8214
(LTO)

https://chromium.googlesource.com/emscripten-releases/+/c5d25114210455d19cb9232171824292005a5080
(asserts)

Co-authored-by: emscripten-bot <179889221+emscripten-bot@users.noreply.github.com>
2024-09-10 00:57:00 +00:00
juj
a3fb5e8198 Fix 'emsdk install sdk-main-64bit' to produce a functioning installation. (#1444) 2024-09-03 18:02:32 +00:00
Derek Schuff
122b38f2ce Automatically dispatch emscripten release tag action (#1442)
This PR add several features to release automation:

1. The existing tag-release job has an output that indicates whether the
triggering commit
    is a release (i.e. whether it matches the regex)
2. The new followup job runs a new script which fetches the recent
emscripten-releases
revisions, reads the DEPS file from the 'latest' release in
emscripten-releases-tags.json
to find the corresponding emscripten revision and writes it into the
environment
2. The final step reads the emscripten revision from the environment and
creates a
workflow_dispatch event to run the tag-release.yml job on the emscripten
repo
2024-08-29 17:07:00 -07:00
Derek Schuff
d09b3c3815 Add Actions workflow to automatically create release tags (#1439)
For commits created by the new create-release.yml workflow, we can add
the corresponding release tag. This only runs for changes to the tag
JSON file (and the workflow itself) and only acts on changes created by
the automation (so that it won't interfere if we want to do things
manually).
2024-08-23 10:46:25 -07:00
Derek Schuff
f010ca9fdc Add a github actions workflow to create a release PR (#1437)
The action runs the existing create_release.py script in a new mode
created for github actions. Rather than using local git commands, it
uses a public action for creating a PR in the repository. The action can
be triggered from the website or via the CLI tool, for example

gh workflow run create-release.yml -R emscripten-core/emsdk -F
lto-sha=abc123 -F nonlto-sha=234567
2024-08-22 22:14:14 +00:00
Sam Clegg
3eb3e02dfd 3.1.65 (#1438) 2024-08-22 15:08:35 -07:00
Kiryl
63d09a889e [bazel] Fix some inaccuracies in bazel readme. NFC (#1434)
Edit some version variables to make correct installation and text under.
2024-08-20 09:25:41 -07:00
Sam Clegg
476dc4e01f Add missing comma from #1429 (#1433)
Turns out this is what was causing the OOM when building binaryen since
we were clobbering the EMSDK_NUM_CORES environment variable by mistake.

See #1429
2024-07-31 18:59:43 -07:00
mtb
fad40cf1f4 fix: improve Fish shell support (and Cshell) (#1429)
I faced the same issue mentioned in #1299, this PR fixes the issue by
taking in account specific `set` and `unset` syntax for Fish shell.

The post install instruction (i.e : `./emsdk activate latest`) provides
wrong instructions in Fish shell and Cshell cases.
This should be fixed by this PR too, although the code is a bit
redundant and it could be more cleaner.
2024-07-31 17:41:32 -07:00
Kirill
cc7ef523f6 [bazel] Update README.md (#1427)
Provides simpler using and less errors
2024-07-24 15:36:24 -04:00
Alon Zakai
0b3bcbc3b0 3.1.64 (#1426) 2024-07-22 12:40:15 -07:00
Sam Clegg
772828321a 3.1.63 (#1425) 2024-07-12 09:23:42 -07:00
Sam Clegg
0fde048800 3.1.62 (#1421) 2024-07-02 11:06:41 -07:00
Michael Allwright
82d41a76d3 [Bazel] Support generating a secondary cache (#1405)
This is a working solution for generating a separate Emscripten cache.
Note that this requires an additional entry in the workspace as follows:
```starlark
load("@emsdk//:emscripten_cache.bzl", emsdk_emscripten_cache = "emscripten_cache")
emsdk_emscripten_cache()
```
When used like this, the default Emscripten cache will be used. However,
if the entry is as follows:
```starlark
load("@emsdk//:emscripten_cache.bzl", emsdk_emscripten_cache = "emscripten_cache")
emsdk_emscripten_cache(flags = ["--lto"])
```
Then embuilder will be called to build all system libraries and ports
(i.e., the `ALL` option to embuilder) with the LTO option enabled. This
can take awhile, so I have also made possible to specify which libraries
you want to build explicitly:
```starlark
load("@emsdk//:emscripten_cache.bzl", emsdk_emscripten_cache = "emscripten_cache")
emsdk_emscripten_cache(
    flags = ["--lto"],
    libraries = [
        "crtbegin",
        "libprintf_long_double-debug",
        "libstubs-debug",
        "libnoexit",
        "libc-debug",
        "libdlmalloc",
        "libcompiler_rt",
        "libc++-noexcept",
        "libc++abi-debug-noexcept",
        "libsockets"
    ]
)
```

Resolves #807, resolves #971, resolves #1099, resolves #1362, resolves
#1401
2024-07-01 09:23:07 -07:00
Alexander Köplinger
7fbd555dbe Use "command -v" instead of "which" to detect python executable (#1419)
On a Linux distro that doesn't have the `which` program installed we're
getting the following error:

    $ ./emsdk install latest
    ./emsdk: line 39: exec: python: not found

It's failing to detect the installed `python3` and falls back to using
`python`, but this distro doesn't provide a python -> python3 symlink so
we fail.

Fix this by using `command -v` instead which is a POSIX standard.
The same change went into emscripten a couple years ago:
https://github.com/emscripten-core/emscripten/pull/15071
2024-07-01 09:22:28 -07:00
Daniel Kalmar
a33daf378c Ensure temporary files have proper unique names for bazel builds. (#1415)
This attempts to fix #1386.
2024-06-27 13:50:03 -04:00
Sam Clegg
8caaa25afb Add some logging after download is finished. NFC (#1413)
Also move some code outside of the `using` block.
2024-06-25 13:04:03 -07:00
Sam Clegg
a6db8d2872 Add logging of sys.executable on startup. NFC (#1412) 2024-06-25 13:03:25 -07:00
Derek Schuff
4b9e83d629 Remove Intel mac CircleCI configuration (#1409)
Also switch bazel-mac to the arm64 config.
The CircleCI Intel mac config will be turned down soon.
2024-06-20 16:16:05 -07:00
William Izzo
0e8c5bb1e3 Sets wasm_worning_as_error disabled by default. (#1406)
This removes `-Werror` set by default, thus conforming with default
bazel cc toolchain.

Co-authored-by: William Izzo <william.izzo@hey.com>
2024-06-20 13:34:22 -04:00
William Izzo
d29161158e [Bazel] Let audio workout bootstrap js file be generated. (#1404)
* Allows generation of audio worklet bootstrap js file

In order to allow users to generate the file, the allowed extension list in `link_wrapper.py` has been updated accordingly.

* adds audio worklet js to wasm_cc_binary too

---------

Co-authored-by: William Izzo <william.izzo@hey.com>
2024-06-14 12:13:50 -04:00
Derek Schuff
ca7b40ae22 3.1.61 (#1394) 2024-05-31 22:11:07 -07:00
Yolanda-Chen
dd3b9c6208 Add feature to support WASM Relaxed SIMD (#1389) 2024-05-30 15:27:47 -04:00
Sam Clegg
4205979286 Remove setting of SSL_CERT_FILE from emsdk launcher script (#1391)
Since we use curl now (#1355) this should no longer be needed.
2024-05-28 15:12:09 -07:00
Sam Clegg
8c38d2f915 Upgrade node from v16.20.0 to v18.20.3 (#1387)
Node v18 is that current LTS release of node and v18.20.3 is the latest
release of v18.

This change means that emsdk is no longer installable on Ubuntu/Bionic
18.04, and we now require Ubuntu/Focal 20.04.

See: #1183
Fixes: #1173
2024-05-28 12:12:17 -07:00
冰雪殇璃陌梦
fc9146e09f Upgrade CI to Ubuntu 20.04 LTS (Focal) (#1183)
# Why
On one hand Ubuntu18's free LTS cycle is ended, and on the other hand Ubuntu18 does not support nodejs greater than v18.
# What's changed.
1. update the Linux Docker image to buildpack-deps:focal
2. some compatibility changes
3. use the new recommended way to install Docker ([see here](https://docs.docker.com/engine/install/ubuntu/))

See #1173
2024-05-28 11:34:36 -07:00
Derek Schuff
ce74ca2b1c 3.1.60 (#1385) 2024-05-20 23:41:54 +00:00
walkingeyerobot
399e5396df [bazel] add tarball as an optional output (#1383)
Usage would be something like:
```
filegroup(
    name = "hello-world-tarball",
    srcs = [":hello-world-wasm"],
    output_group = "_wasm_tar",
)
```
2024-05-15 17:20:54 -04:00
Sam Clegg
d52c465201 3.1.59 (#1377) 2024-04-30 07:56:18 -07:00
Anita Hammer
f58f80d3ba Update docker/README.md (#1375) 2024-04-27 20:25:02 -07:00
Sam Clegg
e0a6aa06b1 3.1.58 (#1372) 2024-04-23 10:13:28 -07:00
Ezekiel Warren
ad59642673 fix(bazel): use param file for compile (#1373)
* fixes issues on windows when dealing with many dependencies causing a
  'command line too long' error
2024-04-22 14:19:11 -04:00
Sam Clegg
176dec4875 arm64-linux binaries are now available for all releases (#1369) 2024-04-10 16:32:54 -07:00