Do not mark cache generation as local (#1533)local=True marks a repository rule to unconditionally re-execute anytime
bazel re-evaluates the workspace (almost every invocation) It works well
for processes that execute in <10ms, not large ones like the embuilder
cache generation.
I have tested this locally and it seems to work fine, but I'll be honest
that I don't understand the nuances of repository rules that well, nor
do I know much of...
Bazel: Pass nodejs binary path as an environment variable. (#1518)The current way to derive the binary path relies on a specific name for
the nodejs repository. This blocks migrating to bzlmod, as bzlmod
prefixes repository directories with the module name that created them.
By asking bazel for the path instead we always get the correct path, so
we can work with both bzlmod and WORKSPACE based dependencies at the
same time.
The repository @nodejs, used in th...
Allow overriding version number in create_release.py (#1512)This changes the CLI syntax for create_relase.py to be more compatible
with
argparse, but we don't run it often manually anyway.
bazel: update rules_nodejs and migrate to rules_js (#1436)This finishes the work started in
https://github.com/emscripten-core/emsdk/pull/1388 by fixing CI. It
avoids a breaking change by:
* Using the latest rules_js 1.x.x version, instead of updating to
rules_js 2 (which removes support for bazel 5).
* Copying the contents of
[rules_js_dependencies](https://github.com/aspect-build/rules_js/blob/main/js/repositories.bzl)
instead of calling it, as the ...
Update release tagging workflow to handle external triggering (#1482)When triggered from Chromium CI, the credential is for the
emscripten-bot account.
Don't install java when installing windows sdk (#1324)We use the native version of closure compiler these days so we don't
need to install java on windows IIUC.
See https://github.com/emscripten-core/emscripten/pull/20919
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.
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.
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?
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.
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:
https://github.com/emscripte...
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 correspondi...
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).
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
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
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.