In addition to a CLI tool associated with a single compiler version, and equivalent to Rust's rustup tool is needed to manage multiple compiler versions. Blockchains require deterministic contract compilation for verifiability, which requires being able to manage multiple compiler versions. Ref: FuelLabs/fuelup#1.
IDE
Integration as an IDE plugin. Specifically, as an extension to Visual Studio Code similar to this one for Rust. Additional IDEs are reserved for the distant future.
[x] Syntax highlighting. (#48)
[ ] Linguist integration for GitHub syntax highlighting.
[x] Build command.
[x] Build on save.
[x] Report errors and warning inline.
[ ] Run all tests.
[x] Run one test.
[x] Mouse-over function and field documentation.
[x] Mouse-over type information.
[x] Goto uses.
[x] Goto declaration.
[x] Refactor/rename.
[ ] Launch and interact with debugger (including breakpoints and watch variables).
This issue tracks various features we want out of the command-line and IDE integration tooling surrounding the HLL. cc @sezna @SilentCicero
CLI
The CLI is tentatively called the "Fuel Orchestrator"
forc
. It is intended to be the equivalent of Rust'scargo
.cargo new
. (#48)rustfmt
. (#80)Installing Different Versions
In addition to a CLI tool associated with a single compiler version, and equivalent to Rust's
rustup
tool is needed to manage multiple compiler versions. Blockchains require deterministic contract compilation for verifiability, which requires being able to manage multiple compiler versions. Ref: FuelLabs/fuelup#1.IDE
Integration as an IDE plugin. Specifically, as an extension to Visual Studio Code similar to this one for Rust. Additional IDEs are reserved for the distant future.