v0.6.0
Scarb 0.6.0
Welcome to the release notes for Scarb v0.6.0! This release brings a new big feature: workspaces, and upgrades Cairo to freshly released stable 2.1.0
version!
Workspaces
Scarb now natively supports projects consisting of multiple packages. Such projects are called workspaces and a denoted by a Scarb.toml
file in root directory which contains a new section: [workspace]
:
# [PROJECT_DIR]/Scarb.toml
[workspace]
members = ["hello_world"]
# [PROJECT_DIR]/hello_world/Scarb.toml
[package]
name = "hello_world" # the name of the package
version = "0.1.0" # the current version, obeying semver
authors = ["Alice <[email protected]>", "Bob <[email protected]>"]
Workspaces are properly handled when pulling dependencies, and all commands and extensions should become aware of them on day one if they use scarb-metadata v1.5.0
.
This feature is almost 1:1 copy-paste of Cargo's Workspaces. Therefore, it should feel familiar to Rust coders. For more information, check out relevant piece of documentation.
scarb
crate
Starting with this release, we publicly announce that the scarb
crate on crates.io is deprecated and will not receive further updates (including this Scarb version). We also announce that we plan to deprecate the scarb
crate altogether in the future, but for this to happen we need to bring feature-parity between this crate and Scarb binaries.
We advise our existing users to pull Scarb directly from Git repository, and new users to avoid using Scarb as Rust crate altogether and instead talk to user-installed scarb
CLI via the scarb-metadata
crate. Scarb documentation will be updated accordingly in coming days, as we're reworking it entirely right now.
The reason for this is that the scarb
crate existence is blocking us from doing several improvements we would like to have in the future, such as isolating Cairo compilation in a separate OS process.
If you have any further questions, please reach to us on our Telegram or Discord channels. We'll be happy to respond :-)
Cairo version
This version of Scarb comes with Cairo v2.1.0
.
What's Changed
- Publish nightlies to release repository by @mkaput in #527
- Fix paths issue on Windows by @mkaput in #529
- Filter hidden dirs found in member glob expansion by @maciektr in #508
- Workspace documentation by @maciektr in #532
- Upgrade Cairo to
2.1.0
by @mkaput in #534 - Revert "Run compiler in a new thread with increased stack size" by @mkaput in #535
- Upgrade various dependencies by @mkaput in #536
- Prepare release
0.6.0
by @mkaput in #537
Full Changelog: v0.6.0-alpha.4...v0.6.0
Changelog since Scarb v0.5.2
: v0.5.2...v0.6.0