v0.46.0
What's Changed
- Fix forc-fmt panic when lexing fails by @sdankel in #5011
- LSP: Don't recompile workspace when moving between files by @JoshuaBatty in #5032
- Add module AST cache. by @tritao in #4733
- ci: change rust version used by CI to v1.72.0 by @kayagokalp in #5043
- Ensure generic values used with a
StorageMap
are hashable by @bitzoic in #5045 - Fix panic in forc-fmt with special chars by @sdankel in #5014
- Add CI check to ensure forc-fmt doesn't panic by @sdankel in #5051
- Add Appendix A: Keywords to Sway book by @andrewvious in #4992
- [1645] Enhanced PackageManifest parsing by @cr-fuel in #5038
- Add
Eq
implementation forString
by @bitzoic in #5055 - Fixes assert_eq always passing for U256 by @esdrubal in #5054
- u256 bitwise and comparison operators by @xunilrj in #4947
- feat: sway-test-rs load store config & beta-4 bump by @cold-briu in #5062
- Split compilation and traversal stages by @JoshuaBatty in #5074
- Parallelize traversing AST's in the language server by @JoshuaBatty in #5001
- Accumulate typechecking methods in
impl TypeCheckContext
, part 1 by @anton-trunov in #5087 - Implement
Hash
trait forBytes
andString
types by @bitzoic in #5089 - Fix clippy warnings by @cr-fuel in #5093
- Emit compile error if a match arm variable is declared more than once by @ironcev in #5085
- Introduce the
AssetId
type by @SwayStar123 in #4955 - Accumulate typechecking methods in
impl TypeCheckContext
, part 2 by @anton-trunov in #5088 - Catch compiler panics in Sway unit tests by @anton-trunov in #5098
- Ignore patches from workspace members by @cr-fuel in #5092
- Add a "this" method to ContractId by @SwayStar123 in #5099
- Fixed formatting of
Module
doc comments by @andrewvious in #5101 - Add
new()
function toStorageKey
by @bitzoic in #5096 - Adjust existing Diagnostic API according to the Expressive Diagnostics RFC by @ironcev in #5100
- String slices by @xunilrj in #4996
- Fix Check Links tests by @bitzoic in #5112
- SwayFmt: remove {} around single imports by @brandonsurh in #5109
- Fix catch-all OR match arms by @ironcev in #5117
- Fixes generic types unification of empty structs. by @esdrubal in #5115
- Type checking refactorings and optimizations by @tritao in #5113
- Fix rename for alias and function prefixes by @sdankel in #5118
- Optimize Storage read/write api by @bitzoic in #4795
- Bump to v0.46.0 by @IGI-111 in #5120
New Contributors
- @cr-fuel made their first contribution in #5038
- @brandonsurh made their first contribution in #5109
Breaking Changes
- String literals will now return the string slice type
str
instead of a string array type, conversion to and from string arrays and slices can be done using the newly introduced intrinsics.
Full Changelog: v0.45.0...v0.46.0