You are viewing a plain text version of this content. The canonical link for it is here.
Posted to github@beam.apache.org by GitBox <gi...@apache.org> on 2023/01/03 04:13:21 UTC

[GitHub] [beam] dependabot[bot] opened a new pull request, #24858: Bump github.com/tetratelabs/wazero from 1.0.0-pre.4 to 1.0.0-pre.7 in /sdks

dependabot[bot] opened a new pull request, #24858:
URL: https://github.com/apache/beam/pull/24858

   Bumps [github.com/tetratelabs/wazero](https://github.com/tetratelabs/wazero) from 1.0.0-pre.4 to 1.0.0-pre.7.
   <details>
   <summary>Release notes</summary>
   <p><em>Sourced from <a href="https://github.com/tetratelabs/wazero/releases">github.com/tetratelabs/wazero's releases</a>.</em></p>
   <blockquote>
   <p>wazero v1.0.0-pre.7 fixes a compilation problem affecting those building <code>GOARCH=386</code>. Other users can skip this version.</p>
   <p>wazero v1.0.0-pre.6 improves performance, CLI and adds a writeable filesystem.</p>
   <p>Performance, reliability and usability have been recurring trends in wazero this year, and they will continue into next. We're thankful to have so many end users and enthusiasts active, and wow.. it was an active month!</p>
   <h2>Performance</h2>
   <p>This December, <a href="https://github.com/mathetake"><code>@​mathetake</code></a> has been working hard on the compiler backend, while <a href="https://github.com/ckaznocha"><code>@​ckaznocha</code></a> put in time to optimize various parts of module initialization. We've also put many more benchmarks in place including I/O functions like WASI. Results were dramatic.</p>
   <p>For example, our benchmark of go compiled to wasm (<code>GOOS=js GOARCH=wasm</code>) improved almost 25%, while our benchmark for WASI+TinyGo improved compilation time by almost 25% and instantiation time nearly 10%.</p>
   <p>While these improvements are great, wazero still won't beat optimizing compilers. The good news is that <a href="https://github.com/mathetake"><code>@​mathetake</code></a> proved it is possible to do JIT-ish compilation and execution in pure Go. Moreover, <a href="https://tetrate.io/">Tetrate</a> has hired an extremely bright engineer to start working with Takeshi on this problem next month. For those interested in how wazero works today, take a look at this year's <a href="https://www.youtube.com/watch?v=HcRSe4Y-1Fc">GopherCon presentation</a>.</p>
   <h2>CLI</h2>
   <p>wazero works with diverse wasm compilers. Many re-use the same libraries to perform tasks such as I/O, like wasi-libc. However, even those who use that routinely drop down to pure wasm functions to optimize or decouple. Moreover, Go's compiler uses its own syscall ABI which is unlike WASI. In order for us to be more efficient, we've significantly enhanced our CLI.</p>
   <p>Most notably, we added <code>--hostlogging=filesystem</code> which can show you what's happening during a command.</p>
   <pre lang="bash"><code>$ tinygo build -target wasi -o cat.wasm cat.go
   $ echo hello world &gt; /tmp/hello.txt
   $ wazero run -mount=/tmp:/ --hostlogging=filesystem cat.wasm /hello.txt
   ==&gt; wasi_snapshot_preview1.fd_prestat_get(fd=3)
   &lt;== (prestat={pr_name_len=1},errno=ESUCCESS)
   --snip--
   </code></pre>
   <p>We also detect if you are using Go generated wasm automatically now (<code>GOOS=js GOARCH=wasm</code>). We support logging on that, even though the functions underneath act wildly differently.</p>
   <pre lang="bash"><code>$ GOARCH=wasm GOOS=js go build -o cat.wasm cat.go
   $ wazero run -mount=/tmp:/ --hostlogging=filesystem cat.wasm /hello.txt
   ==&gt; go.syscall/js.valueCall(fs.open(name=/hello.txt,flags=,perm=----------))
   &lt;== (err=&lt;nil&gt;,fd=4)
   --snip--
   </code></pre>
   <p>We've also added a <code>-cachedir</code> flag which allows running the same wasm faster the second time. Those building images can use the <code>compile</code> command first, as that allows you to build cache without actually executing the module.</p>
   <p>Ex. This command took almost 140ms as it implied compilation. By precompiling, it executes 100ms quicker.</p>
   <pre lang="bash"><code>$ time wazero run -mount=/tmp:/ cat.wasm /hello.txt
   hello world
   <p>real	0m0.139s
   user	0m0.178s
   sys	0m0.036s</p>
   <p>&lt;/tr&gt;&lt;/table&gt;
   </code></pre></p>
   </blockquote>
   <p>... (truncated)</p>
   </details>
   <details>
   <summary>Commits</summary>
   <ul>
   <li><a href="https://github.com/tetratelabs/wazero/commit/4197caa05bb6fd529eecae56a9eea6bcb1b1780e"><code>4197caa</code></a> Ensures 32-bit platforms build (<a href="https://github-redirect.dependabot.com/tetratelabs/wazero/issues/996">#996</a>)</li>
   <li><a href="https://github.com/tetratelabs/wazero/commit/94491fef0b85807f5fa309ad2b98fc2fe6791dec"><code>94491fe</code></a> Implements rename in GOOS=js and WASI (<a href="https://github-redirect.dependabot.com/tetratelabs/wazero/issues/991">#991</a>)</li>
   <li><a href="https://github.com/tetratelabs/wazero/commit/e4740efef4a2c33cc7e1e87a88ed4edb9c82064d"><code>e4740ef</code></a> site: updates wasi support table (<a href="https://github-redirect.dependabot.com/tetratelabs/wazero/issues/993">#993</a>)</li>
   <li><a href="https://github.com/tetratelabs/wazero/commit/2fbf83e0b3a61f4cad9f5f65cc0252fa6f92b414"><code>2fbf83e</code></a> wasi: fixes or'd open flags (<a href="https://github-redirect.dependabot.com/tetratelabs/wazero/issues/990">#990</a>)</li>
   <li><a href="https://github.com/tetratelabs/wazero/commit/c9868d89cbab60046a74cb4ea5a1877cfcf57e7c"><code>c9868d8</code></a> Removes internal dependency on fs.FS (<a href="https://github-redirect.dependabot.com/tetratelabs/wazero/issues/987">#987</a>)</li>
   <li><a href="https://github.com/tetratelabs/wazero/commit/2045f7136399ceebd08b7ee3d0579bd2f24396b1"><code>2045f71</code></a> enginetest: fixes panic om memory def (<a href="https://github-redirect.dependabot.com/tetratelabs/wazero/issues/989">#989</a>)</li>
   <li><a href="https://github.com/tetratelabs/wazero/commit/da3aa7a5ad4609457cb685cc44686e0bba1796ff"><code>da3aa7a</code></a> Adds ExportedFunctionDefinitions and ExportedMemoryDefinitions (<a href="https://github-redirect.dependabot.com/tetratelabs/wazero/issues/986">#986</a>)</li>
   <li><a href="https://github.com/tetratelabs/wazero/commit/e7018d19ff01daf992b56c5208666d3056faeca9"><code>e7018d1</code></a> compiler: force moduleContext initialization after Go function calls (<a href="https://github-redirect.dependabot.com/tetratelabs/wazero/issues/988">#988</a>)</li>
   <li><a href="https://github.com/tetratelabs/wazero/commit/efc72de1e6d4fb0a9b60aa568f0489b8bdde4ae0"><code>efc72de</code></a> gojs: implements timeout events (<a href="https://github-redirect.dependabot.com/tetratelabs/wazero/issues/984">#984</a>)</li>
   <li><a href="https://github.com/tetratelabs/wazero/commit/67cc6d37796176cae9da3bd304efb58bad066157"><code>67cc6d3</code></a> compilationcache: uses version-specific subdirectory (<a href="https://github-redirect.dependabot.com/tetratelabs/wazero/issues/982">#982</a>)</li>
   <li>Additional commits viewable in <a href="https://github.com/tetratelabs/wazero/compare/v1.0.0-pre.4...v1.0.0-pre.7">compare view</a></li>
   </ul>
   </details>
   <br />
   
   
   [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=github.com/tetratelabs/wazero&package-manager=go_modules&previous-version=1.0.0-pre.4&new-version=1.0.0-pre.7)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
   
   Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
   
   [//]: # (dependabot-automerge-start)
   [//]: # (dependabot-automerge-end)
   
   ---
   
   <details>
   <summary>Dependabot commands and options</summary>
   <br />
   
   You can trigger Dependabot actions by commenting on this PR:
   - `@dependabot rebase` will rebase this PR
   - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
   - `@dependabot merge` will merge this PR after your CI passes on it
   - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
   - `@dependabot cancel merge` will cancel a previously requested merge and block automerging
   - `@dependabot reopen` will reopen this PR if it is closed
   - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
   - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
   - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
   - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
   
   
   </details>


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@beam.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [beam] jrmccluskey merged pull request #24858: Bump github.com/tetratelabs/wazero from 1.0.0-pre.4 to 1.0.0-pre.7 in /sdks

Posted by GitBox <gi...@apache.org>.
jrmccluskey merged PR #24858:
URL: https://github.com/apache/beam/pull/24858


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@beam.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [beam] codecov[bot] commented on pull request #24858: Bump github.com/tetratelabs/wazero from 1.0.0-pre.4 to 1.0.0-pre.7 in /sdks

Posted by GitBox <gi...@apache.org>.
codecov[bot] commented on PR #24858:
URL: https://github.com/apache/beam/pull/24858#issuecomment-1369382335

   # [Codecov](https://codecov.io/gh/apache/beam/pull/24858?src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=The+Apache+Software+Foundation) Report
   > Merging [#24858](https://codecov.io/gh/apache/beam/pull/24858?src=pr&el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=The+Apache+Software+Foundation) (c2dcd96) into [master](https://codecov.io/gh/apache/beam/commit/b802c023b276655785d55b37253aa12aa3451a4a?el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=The+Apache+Software+Foundation) (b802c02) will **increase** coverage by `0.00%`.
   > The diff coverage is `n/a`.
   
   ```diff
   @@           Coverage Diff           @@
   ##           master   #24858   +/-   ##
   =======================================
     Coverage   73.12%   73.13%           
   =======================================
     Files         731      731           
     Lines       97960    97960           
   =======================================
   + Hits        71638    71641    +3     
   + Misses      24966    24964    -2     
   + Partials     1356     1355    -1     
   ```
   
   | Flag | Coverage Δ | |
   |---|---|---|
   | go | `51.46% <ø> (+<0.01%)` | :arrow_up: |
   
   Flags with carried forward coverage won't be shown. [Click here](https://docs.codecov.io/docs/carryforward-flags?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=The+Apache+Software+Foundation#carryforward-flags-in-the-pull-request-comment) to find out more.
   
   | [Impacted Files](https://codecov.io/gh/apache/beam/pull/24858?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=The+Apache+Software+Foundation) | Coverage Δ | |
   |---|---|---|
   | [sdks/go/pkg/beam/core/metrics/dumper.go](https://codecov.io/gh/apache/beam/pull/24858/diff?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=The+Apache+Software+Foundation#diff-c2Rrcy9nby9wa2cvYmVhbS9jb3JlL21ldHJpY3MvZHVtcGVyLmdv) | `53.96% <0.00%> (+4.76%)` | :arrow_up: |
   
   :mega: We’re building smart automated test selection to slash your CI/CD build times. [Learn more](https://about.codecov.io/iterative-testing/?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=The+Apache+Software+Foundation)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@beam.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [beam] github-actions[bot] commented on pull request #24858: Bump github.com/tetratelabs/wazero from 1.0.0-pre.4 to 1.0.0-pre.7 in /sdks

Posted by GitBox <gi...@apache.org>.
github-actions[bot] commented on PR #24858:
URL: https://github.com/apache/beam/pull/24858#issuecomment-1369388168

   Assigning reviewers. If you would like to opt out of this review, comment `assign to next reviewer`:
   
   R: @jrmccluskey for label go.
   
   Available commands:
   - `stop reviewer notifications` - opt out of the automated review tooling
   - `remind me after tests pass` - tag the comment author after tests pass
   - `waiting on author` - shift the attention set back to the author (any comment or push by the author will return the attention set to the reviewers)
   
   The PR bot will only process comments in the main thread (not review comments).


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@beam.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org