**Project Information **
* Name of tool/project: Wikifunctions
* Project home page: wikifunctions.org
* Name of team requesting review: Abstract Wikipedia
* Primary contact: Cory Massaro
* Target date for deployment: March 31, 2025 (end of Q3 FY25)
* Link to code repository / patchset: [[ https://gitlab.wikimedia.org/repos/abstract-wiki/wikifunctions/function-evaluator/-/tree/main/rustversion?ref_type=heads | function-evaluator (rustversion) ]]
* Link to scc output for general sizing of codebases (https://github.com/boyter/scc): TODO
**Description of the tool/project: **
This project is a new version of the function evaluator service (current Node version is [[ https://gitlab.wikimedia.org/repos/abstract-wiki/wikifunctions/function-evaluator | here ]]). It is largely a rewrite of the existing functionality, in Rust instead of JavaScript. This will afford us finer control over the WASI runtime we're using to run community-submitted code in Python and JS.
**Description of how the tool will be used at WMF:**
This will eventually replace the existing function evaluator.
**Dependencies**
>List dependencies, or upstream projects that this project relies on.
Current dependencies from Cargo.toml:
```
[dependencies]
ambient-authority = "0.0.2"
json = "0.12.4"
serde_json = "1.0.132"
tokio = { version = "1.41.0", features = [ "full" ] }
wasi-common = { version = "26.0.0", features = [ "tokio" ] }
wasmtime = "26.0.0"
wasmtime-wasi = "26.0.0"
```
**Has this project been reviewed before?**
> Please link to tasks or wiki pages of previous reviews.
No.
**Working test environment**
>Please link or describe setup process for setting up a test environment.
TODO
**Post-deployment**
> Name of team responsible for tool/project after deployment and primary contact.
Abstract Wikipedia