翻訳：WasmEdge Rust SDK のバグを報告して Nintendo Switch を勝ち取ろう

## はじめに

WasmEdgeは軽量かつ高性能なオープンソースWebAssemblyランタイムです。Second State社が中心となって開発し、現在はCloud Native Computing Foundation（CNCF）のサンドボックスプロジェクトの一つになっています。

* [WasmEdge Runtime](https://www.cncf.io/projects/wasmedge-runtime/) &mdash; Cloud Native Computing Foundation
* [コンテナ標準のOCI対応、クラウドネイティブなWebAssemblyランタイム「WasmEdge」が、CNCFのサンドボックスプロジェクトに採用](https://www.publickey1.jp/blog/21/ociwebassemblywasmedgecncf.html) &mdash; Publickey

WasmEdgeは主にC++で記述されており、公式のSDKを使うことで、C、Rust、Goなどで書かれたアプリケーションにWebAssemblyランタイムを組み込むことができます。

先日、WasmEdgeの最新版である[v0.10.1](https://github.com/WasmEdge/WasmEdge/releases/tag/0.10.1) がリリースされました。また、それに合わせてRust SDKの[v0.3.0](https://crates.io/crates/wasmedge-sdk/0.3.0)もリリースされています。このRust SDKは内容が一新されているそうです。

開発元のSecond State社は、このRust SDKの利用と開発を促進するために、期間限定の懸賞プログラムを発表しています。

- [Win a Switch with the WasmEdge Rust SDK Bug Hunt](https://www.secondstate.io/articles/wasmedge-rust-sdk-bug-hunt/) &mdash; Second State

その発表記事を日本語に翻訳しましたので参考にしてください。（翻訳協力: @tatsuya6502）

<!--
English translation of the above chapter:

## Introduction

WasmEdge is a lightweight, high-performance open source WebAssembly runtime, developed primarily by Second State and now one of the Cloud Native Computing Foundation (CNCF) sandbox projects:

* [WasmEdge Runtime](https://www.cncf.io/projects/wasmedge-runtime/) &mdash; Cloud Native Computing Foundation
* [WasmEdge, the container standard OCI-compliant, cloud-native WebAssembly runtime, is a CNCF sandbox project](https://www.publickey1.jp/blog/21/o ciwebassemblywasmedgecncf.html) &mdash; Publickey

WasmEdge is written primarily in C++, and the official SDK allows WebAssembly runtime to be embedded in applications written in C, Rust, Go, etc.

The latest version of WasmEdge, [v0.10.1](https://github.com/WasmEdge/WasmEdge/releases/tag/0.10.1), was recently released. The Rust SDK [v0.3.0](https://crates.io/crates/wasmedge-sdk/0.3.0) was also released along with it. This Rust SDK was completely redesigned.

Second State, the developer of WasmEdge, has announced a limited time sweepstakes program to promote the use and development of this Rust SDK.

- [Win a Switch with the WasmEdge Rust SDK Bug Hunt](https://www.secondstate.io/articles/wasmedge-rust-sdk-bug-hunt/) &mdash; Second State

For your reference, we have translated the announcement article into Japanese. (Translation assistance: @tatsuya6502)
-->

## 翻訳：WasmEdge Rust SDKのバグを報告してNintendo Switchを勝ち取ろう

WasmEdge 0.10.1のリリースに伴い、WasmEdge Rustバインディングが一新されました！

WasmEdge RustバインディングSDKは、RustアプリケーションにWebAssembly関数やモジュールを埋め込むことを可能にします。これは、Rustベースのクラウドネイティブソフトウェアやブロックチェーン基盤ソフトウェアに特に有効で、信頼できないユーザーコードの実行を、安全かつ効率的な方法でサポートできます。

> WasmEdge Rustバインディングの詳細については、この[記事](https://www.secondstate.io/articles/wasmedge-rust-bindings/)を参照してください。

WasmEdge Rustバインディングは`wasmedge-sys`クレートと`wasmedge-sdk`クレートに分かれています。`wasmedge-sdk`クレートはアプリケーション開発者向けで、WasmEdgeを使ってサードパーティのコードを簡単かつ安全に自分のRustアプリケーションに組み込めるようになります。`wasmedge-sdk`はRust開発者にスムーズな体験を提供するように設計されています。

WasmEdge Rustバインディングをコミュニティにとってより良いものにし、開発体験を最適化するために、WasmEdge Rust SDKバグ・ハントへの参加を歓迎します。

![wasmedge-rust-sdk-bug-hunt-01.jpeg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2777985/55d31422-9984-577a-78b6-de0409db3af8.jpeg)

### バグ・ハントへの参加方法

Rust好きの皆さんへ、2022年8月1日（リリース日）から2022年9月1日までの間に、ぜひ以下のタスクを実行してください。

* WasmEdge Rustバインディングの使用中に遭遇したバグや問題を、[WasmEdgeのGitHubリポジトリー](https://github.com/WasmEdge/WasmEdge)で報告する
* WasmEdge Rustバインディングを使用した経験を記事にまとめ、投稿する。（投稿先のブログプラットフォームは問いません）
* WasmEdgeにサンプルコードや新機能を追加する

タスクの内容に応じたポイントが付与され、最も多くのポイントを獲得した3名の方には、日本版Nintendo Switchをプレゼントします。

### ポイントとルール

タスクによってポイントが付与されます。ポイントの基準は以下の通りです。

> これらのタスクはあくまで参考です。新しいアイデアも歓迎します。

| タスク | ポイント | 説明 | 難易度 |
| -------- | -------- | -------- |-------- |
| WasmEdge Rustバインディングに関する記事を書く | 2ポイント | ウェブサイトと言語は問わない | 初級 |
| WasmEdge Rustバインディングに関する問題を報告する | 2ポイント | どのような問題でも可、バグなら追加ポイント | 初級 |
| あなた自身のサンプルコードを使用して、WasmEdge Rustバインディングに関する記事を書く| 4ポイント | ウェブサイトと言語は問わない | 中級 |
| WasmEdge Rustバインディングのバグを発見する | 6ポイント | 詳細なバグ再現手順が必要 | 中級 |
| WasmEdge Rustバインディングに新しいサンプルコードを追加する | 6ポイント | PRがマージされること | 中級 |
| WasmEdge Rustバインディングに新機能を追加する | 12ポイント | PRがマージされること | 上級 |
| WasmEdge RustバインディングをRustプロジェクトに統合する | 20ポイント | 2名チーム可、各10ポイント | 上級 | 

#### ルール

30ポイント以上獲得した参加者の中から上位3名に「Nintendo Switch（日本版）」がプレゼントされます。

| 特典 | 必要ポイント | 補足事項 |
| -------- | -------- | -------- |
| WasmEdge Tシャツ、フリスビー、バッジ、ステッカー | 2 | |
| Keychron K3 バージョン2 キーボード | 15 |
| Nintendo Switch | 20ポイント以上 | 上位3名のみ |

タスクを完了し、提出する準備ができたら、[このフォーム](https://forms.gle/WpNpLytMMx1wVdU78)に記入してください。

### ドキュメント 

* [WasmEdge Rust SDK](https://wasmedge.org/book/en/embed/rust.html)
* [WasmEdge Rust SDKソースコード](https://github.com/WasmEdge/WasmEdge/tree/master/bindings/rust)
* [`wasmedge-sdk`クレート](https://crates.io/crates/wasmedge-sdk)

詳しく知りたい人は、ぜひ、WasmEdgeの[Discord Server](https://discord.gg/U4B5sFTkFc)に参加してください。