Releases: software-mansion/scarb
0.6.0-alpha.4
Welcome to the release notes for Scarb v0.6.0-alpha.4! This release bumps Cairo, adds scarb fetch
command, fixes some bugs and brings internal changes paving the road for workspaces support.
scarb fetch
This small command is analogous to cargo fetch
. Its job is simple: just pull dependencies of current project and do nothing else. In the future, this command will also update the lock file.
Big thank you to @GianfrancoBazzani for implementing this! 👏🏻
Git interdependencies bug fix
We have fixed a bug which prevented from using following dependency tree:
┌───┐ git ┌───┐
│ X ├─────────►│ A │
└─┬─┘ └───┘
│ ▲
│ │ path = "../a"
│ │
│ git ┌─┴─┐
└───────────►│ B │
└───┘
Workspaces support
We have started merging the PR stack, which implements workspaces. Not everything was merged, and thus we do not advise making use of these changes yet!
Cairo version
This version of Scarb comes with Cairo v2.1.0-rc4
.
What's Changed
- Remove asdf plugin repo link from docs by @maciektr in #505
- Cairo-test: Warn when scarb version does not match by @maciektr in #503
- Converted Protostar references and updated docs links by @MrDenkoV in #507
- Publish the roadmap in readme and update architecture docs by @mkaput in #512
- Add workspace example by @maciektr in #446
- Bump clap from 4.3.10 to 4.3.19 by @dependabot in #521
- Bump camino from 1.1.4 to 1.1.6 by @dependabot in #520
- Bump async-trait from 0.1.68 to 0.1.72 by @dependabot in #519
- Bump thiserror from 1.0.40 to 1.0.44 by @dependabot in #517
- Bump actions/upload-pages-artifact from 1 to 2 by @dependabot in #522
- Format only selected packages by @maciektr in #490
- Make build tests not fail if they run too long by @mkaput in #523
- Patch path dependencies for git sources by @maciektr in #514
- Add runtime check for Core library and Cairo compiler versions by @MrDenkoV in #524
- Update Cairo to
2.1.0-rc4
by @maciektr in #528 - Add compile time check for Core library and Cairo compiler versions by @MrDenkoV in #513
- Add info about .tool-versions and caching to CI docs section by @szymmis in #511
- Adds
scarb fetch
by @GianfrancoBazzani in #509
New Contributors
- @MrDenkoV made their first contribution in #507
- @szymmis made their first contribution in #511
- @GianfrancoBazzani made their first contribution in #509
Full Changelog: v0.6.0-alpha.2...v0.6.0-alpha.4
0.6.0-alpha.2
Scarb 0.6.0-alpha.2
Welcome to the release notes for Scarb v0.6.0-alpha.2! This quick release is primarily Cairo upgrade to v2.1.0-rc2.
It includes some foundational work towards Scarb nightlies. 🌃
Cairo version
This version of Scarb comes with Cairo v2.1.0-rc2
.
What's Changed
Full Changelog: v0.6.0-alpha.1...v0.6.0-alpha.2
0.6.0-alpha.1
Scarb 0.6.0-alpha.1
Welcome to the release notes for Scarb 0.6.0-alpha.1! This release is primarily Cairo upgrade to v2.1.0-rc1. There are only small cosmetic changes to Scarb itself in this release, but we're heavily working on some big stuff 👀
Cairo version
This version of Scarb comes with Cairo v2.1.0-rc1
.
What's Changed
- Add file is_hidden check by @maciektr in #444
- Fix misleading help message for --manifest-path argument by @mkaput in #488
- Fix commands listing table cells width by @maciektr in #492
- Upgrade Cairo to
2.1.0-rc1
by @mkaput in #498
Full Changelog: v0.6.0-alpha.0...v0.6.0-alpha.1
0.6.0-alpha.0
Scarb 0.6.0-alpha.0
Welcome to the release notes for the first Scarb 0.6.0 line release! As Cairo 2.1.0-rc0 has been released, we are doing next major version bump.
There are no user-visible changes to Scarb itself in this release, but we did a lot of improvements to documentation and to our internal workflows this cycle.
Cairo version
This version of Scarb comes with Cairo v2.1.0-rc0
.
What's Changed
- Extract
CommandExt
to support module by @mkaput in #470 - Split tests into many binaries and move support module to a separate crate by @mkaput in #471
- Partition tests using nextest by @mkaput in #472
- Make CI workflow run on Linux only by @mkaput in #473
- Temporarily remove
asdf plugin add scarb
until it will work by @mkaput in #476 - Update CI docs page by @mkaput in #477
- Mention ASDF installation on the home page by @mkaput in #478
- Do not run Scarb CI on website-only changes by @mkaput in #479
- Ensure everything required is passing for branch protection by @mkaput in #480
- Partially revert recent CI changes and consolidate all CI workflows into one by @mkaput in #481
- Fix lints reported by Clippy 1.71 by @mkaput in #484
- Update guides to latest changes in ecosystem by @mkaput in #485
- Upgrade Cairo to
2.1.0-rc0
by @mkaput in #486
Full Changelog: v0.5.2...v0.6.0-alpha.0
0.5.2
Scarb 0.5.2
Welcome to the release notes for Scarb 0.5.2! This release upgrades Cairo to 2.0.2 and brings one small feature.
Compiling external contracts
While compiling the Scarb project, by default, no artefacts are emitted for contracts defined in dependencies. It is now possible to instruct scarb build
to include external contracts in the compilation of your package. This can be for example useful in some custom testing flows as requested by several Scarb users. For example, if your package depends on hypothetical package utility_contracts
which provides Account
contract, you can tell Scarb to compile Hello
as part of your build:
[dependencies]
starknet = "2.0.0"
utility_contracts = { path = "../shared_contracts" }
[[target.starknet-contract]]
build-external-contracts = ["utility_contracts::Account"]
See relevant documentation section for more information.
Cairo version
This version of Scarb comes with Cairo v2.0.2
.
What's Changed
- Combine download & install pages and mention ASDF plugin by @mkaput in #462
- Build external contracts by @maciektr in #458
- Upgrade Cairo to
2.0.2
by @mkaput in #467
Full Changelog: v0.5.1...v0.5.2
0.5.1
Scarb 0.5.1
Welcome to the release notes for Scarb v0.5.1
! This release upgrades Cairo to 2.0.1 and brings some bugfixes.
Compiled contracts and starknet_artifacts
files rename
Given the following package manifest:
[package]
name = "PACKAGE"
[[target.starknet-contract]]
name = "TARGET"
Until this version, compiler contracts and the artefacts file followed the following naming scheme:
TARGET_contract.json
PACKAGE.starknet_contracts.json
This is incorrect, as when the package defined multiple starknet-contract
targets, they will override each other outputs. Since this Scarb version, it will now follow this naming scheme:
TARGET_contract.json
TARGET.starknet_contracts.json
Technically, this is a breaking change. But, because of the following reasons, we decided not to cut a major release and treat this as a bugfix:
- Unless explicitly set
TARGET == PACKAGE
, so the outcome does not change. - It should not be noticeable for humans when they look for files in file managers.
- While to our knowledge, tools do not rely on these files names anyway and instead look for all
*.starknet_contracts.json
files in order to look for contract files.
Cairo version
This version of Scarb comes with Cairo v2.0.1
.
What's Changed
- Document
starknet_artifacts.json
file by @cptartur in #454 - Use
target_name
instead ofpackage_name
forstarknet_artifacts
map file by @maciektr in #459 - Update Cairo to
2.0.1
by @mkaput in #461 - Resolver: add all dependencies to graph by @maciektr in #441
New Contributors
Full Changelog: v0.5.0...v0.5.1
0.5.0
Scarb 0.5.0
Welcome to the release notes for Scarb v0.5.0
! This release brings stable Cairo 2.0 in preparation for Starknet 0.12 🎉 There are no other significant changes since last pre-release, solidifying stability of Scarb 0.5 release line.
Cairo version
This version of Scarb comes with Cairo v2.0.0
.
What's Changed
- Fix typo in default profile in cheatsheet by @maciektr in #439
- Use packages filter in fmt by @maciektr in #440
- Bump clap from 4.3.2 to 4.3.10 by @dependabot in #452
- Bump libc from 0.2.146 to 0.2.147 by @dependabot in #449
- Bump log from 0.4.18 to 0.4.19 by @dependabot in #448
- Bump tokio from 1.28.2 to 1.29.1 by @dependabot in #450
- Upgrade Cairo to
2.0.0
by @mkaput in #453 - Bump toml from 0.7.4 to 0.7.5 by @dependabot in #451
Full Changelog: v0.5.0-alpha.4...v0.5.0
Changelog since Scarb 0.4: v0.4.0...v0.5.0
0.5.0-alpha.4
Scarb 0.5.0-alpha.4
Welcome to the release notes for Scarb v0.5.0-alpha.4
!
Note: This version is not yet supported on Starknet! If you want to develop contracts deployable to current Starknet v0.11, please stick with Scarb v0.4.
Cairo version
This version of Scarb comes with Cairo v2.0.0-rc6
.
What's Changed
Full Changelog: v0.5.0-alpha.3...v0.5.0-alpha.4
0.5.0-alpha.3
Scarb 0.5.0-alpha.3
Welcome to the release notes for Scarb v0.5.0-alpha.3
!
Note: This version is not yet supported on Starknet! If you want to develop contracts deployable to current Starknet v0.11, please stick with Scarb v0.4.
Cairo version
This version of Scarb comes with Cairo v2.0.0-rc5
.
What's Changed
- Update install script by @maciektr in #426
- Bump semver from 7.5.1 to 7.5.2 in /website by @dependabot in #431
- Run compiler in a new thread with increased stack size by @mkaput in #432
- Cairo Runner show parsing errors by @maciektr in #434
Full Changelog: v0.5.0-alpha.2...v0.5.0-alpha.3
0.4.1
Scarb 0.4.1
Welcome to the release notes for Scarb 0.4.1
! This release comes with Cairo 1.1.1
. It also backports several features and changes from 0.5
, primarily: scarb cairo-run
.
Cairo version
This version of Scarb comes with Cairo 1.1.1
.
What's Changed
This release just cherry picks several commits from main
branch. Checkout full changelog for details.
Full Changelog: v0.4.0...v0.4.1