Releases: FuelLabs/sway
Releases · FuelLabs/sway
v0.61.0
What's Changed
- Unify arguments before desugaring contract call by @xunilrj in #6053
- chore: fund test suite's account by default in local-test node by @kayagokalp in #5935
- chore: fix some comments by @cuishuang in #5989
- Show forc plugin path warning only in verbose mode by @sdankel in #6004
- fix: fund default signer account in ci by @kayagokalp in #6055
- Add examples on how to import storage types to the book by @bitzoic in #6051
- Implement
EqWithEngines
andPartialEqWithEngines
for parsed declarations by @tritao in #6054 - Rename module terminology to program by @JoshuaBatty in #6056
- chore: Improve the error message for unresolved manifest reference by @sdankel in #6061
- Add generated bytecode size to verbose test output by @ironcev in #6063
- feat: Add primitive types to forc-doc by @sdankel in #6032
- Tuning the optimizer pipeline by @vaivaswatha in #6072
- feat: Updating all templates to rust v0.62.0 by @calldelegation in #6067
- Bash script to help benchmark the compiler by @xunilrj in #6076
- Add
EnumVariant
parsed decl and minor refactors to namespace-related code by @tritao in #6062 - Set code owners by @IGI-111 in #6078
- Unify parsed and typed symbols namespace maps. by @tritao in #6070
- Fix code owner precedence by @IGI-111 in #6082
- Refactor trait handling when doing namespace item imports. by @tritao in #6080
- Do not panic when there is auto impl type check by @xunilrj in #6094
- chore: bump fuel-core to v0.27.0 by @kayagokalp in #6090
- fix: remove Forc.lock files from template projects by @sdankel in #6101
- chore: add issue templates by @sdankel in #6097
- Update codeowners
application-dev
toswayex
by @bitzoic in #6095 - Automatically import contract return type by @xunilrj in #6089
- Add primitive conversions submodules to the prelude by @bitzoic in #6105
- Increase test coverage on std-lib by @bitzoic in #6087
- Faster access for configurables by @xunilrj in #6058
- Fix issue with name clash on auto implementation of AbiEncode and AbiDecode by @jjcnn in #6044
- Update
Inputs
library return types to match VM specs by @bitzoic in #6108 - Fix mod by zero constant folding by @xunilrj in #6112
- Use immediates instead of data section when possible by @vaivaswatha in #6098
- Adds method and function deduplication to frontend. by @esdrubal in #5967
- Change
StorageMap
'sremove()
to usesha256(key, self.field_id())
instead ofsha256(key, self.slot())
by @bitzoic in #6135 - Fix doc comment by @GearedPaladin in #6138
- Unify namespace import logic for parsed and typed declarations by @tritao in #6057
- chore: fix some comments by @tsinghuacoder in #6139
- Storage name based slots and namespaces. by @esdrubal in #6064
- Resolve memory overflow when
b256::TryFrom<Bytes>
is not 32 bytes by @bitzoic in #6136 - Support for string slices in contracts/predicates/scripts by @xunilrj in #6079
- Bump to v0.61.0 by @IGI-111 in #6144
Breaking Changes
- now using fuel-core 0.27.0
- Storage slot calculations use a new formula to enable namespacing syntax, please consult the documentation about storage namespacing and the
in
keyword for more details - Inputs and return types have been updated according to VM spec changes
New Contributors
- @cuishuang made their first contribution in #5989
- @tsinghuacoder made their first contribution in #6139
Full Changelog: v0.60.0...v0.61.0
v0.60.0
What's Changed
- fix: add forc-doc impls for enums and fix sidebar by @sdankel in #6020
- fix dca for encoding v1 autogenerated code by @xunilrj in #6006
- Don't contrain type arguments of StorageMap by @IGI-111 in #6034
- TryFrom< B512 > for b256, u256 by @SwayStar123 in #6010
- Allow storage access in fallback only contracts by @IGI-111 in #6031
- Fix containing
StorageString
s inStorageVec
s by @ironcev in #6043 - Add
AbiEncode
andAbiDecode
forString
by @bitzoic in #6037 - fix bug in fndedup for fuelvm instructions by @vaivaswatha in #6045
- Introduce
Self::zero
andself::is_zero()
for 13 types by @bitzoic in #5973 - Optimization pipeline: switch order of fndedup and inlining by @vaivaswatha in #6024
- Enable OrdEq on U128 by @IGI-111 in #6048
- Bump to v0.60.0 by @IGI-111 in #6049
Full Changelog: v0.59.0...v0.60.0
v0.59.0
What's Changed
- Update clap and deps to latest version by @IGI-111 in #5994
- feat: add log decoding capabilities to show decoded log values for forc-test by @kayagokalp in #5812
- change to use
parking_lot::RwLock
for better performance by @JoshuaBatty in #6014 - feat: only show forc examples with explicit --help flag by @kayagokalp in #6013
- feat: point --testnet flag to latest testnet instead of
devnet
by @kayagokalp in #6019 - feat: Add implementations to forc-doc by @sdankel in #6017
- Add
ContractId::this()
documentation to book by @bitzoic in #6008 - Improve IR printing CLI in
forc
by @ironcev in #6025 - chore: use fuels-rs v0.62.0, fuel-abi-types v0.5.0 by @kayagokalp in #6027
- Remove frontend section from Sway docs. by @SilentCicero in #5743
- fail const eval if return_type is error by @xunilrj in #6023
- Implement
Display
andDisplayWithEngines
for some more types by @tritao in #5999 - ABI hash based ids for Logs. by @esdrubal in #5980
- Return type of output_asset_to changed to Address by @dmihal in #5424
- Bump to v0.59.0 by @IGI-111 in #6030
Breaking changes
- now using fuels-rs v0.62.0, fuel-abi-types v0.5.0
logId
fields of ABI specification files now usestring
instead ofnumber
.
New Contributors
Full Changelog: v0.58.0...v0.59.0
v0.58.0
What's Changed
- Enable
name-resolution-after-monomorphization
again by @xunilrj in #5996 - feat: fee estimation for forc-deploy and point --testnet to devnet by @kayagokalp in #5990
- chore: bump to v0.58.0 by @kayagokalp in #6003
Full Changelog: v0.57.0...v0.58.0
v0.57.0
What's Changed
- ci: fixing typos programmatically by @sdankel in #5975
- Refactor forc-doc into a lib and add tests folder by @JoshuaBatty in #5971
- Rework book intro by @IGI-111 in #5972
- Wrap
BaseIdent
name_override_opt
&TraitName
in anArc
by @JoshuaBatty in #5978 - change submodules to use
im::HashMap
instead ofim::OrdMap
by @JoshuaBatty in #5976 - Add function deduplication in debug mode, but considering metadata equality (debug info) by @vaivaswatha in #5977
- Make ControlFlowGraph store a reference to Engines to remove clones by @JoshuaBatty in #5983
- chore: bump to fuel-core v0.26.0 by @kayagokalp in #5981
- Update library inline docs descriptions by @bitzoic in #5984
- feat: take dynamic asset id into account with
forc-client
by @kayagokalp in #5987 - Name clash in star imports should result in error when the name is used by @jjcnn in #5963
- Encoding v1 for Configurables by @xunilrj in #5942
- Bump to v0.57.0 by @IGI-111 in #5993
- upgrade sdk-harness test to use fuels-rs v0.61 by @xunilrj in #5995
- Improve ASM printing CLI in
forc
by @ironcev in #5997 - Remove redundant IR generation of constants and unused IR main inlining by @ironcev in #5998
Breaking changes
- Configurables now use the ABI encoding v1 instead of raw memory representation
- Shadowed star imports will now throw an error if a common ambiguous name is used
Full Changelog: v0.56.1...v0.57.0
v0.56.1
What's Changed
- Remove syntax highlighting of Sway files as Rust by @bitzoic in #5926
- ci: add a job for checking fuel-core versions between sdk-harness and test suite by @kayagokalp in #5930
- Add conversion methods for u256,b256 from tuple of u64s by @SwayStar123 in #5889
- chore: use rust-sdk v0.58.0 by @kayagokalp in #5933
- chore: update ci_checks script to represent current ci better by @kayagokalp in #5934
- Implement From< U128 > for u256, b256 by @SwayStar123 in #5887
- Dereferencing as reassignment target by @ironcev in #5923
- Refactor: Move import name resolution to Root by @jjcnn in #5916
- Implement TryFrom< U128 > for all primitive u types by @SwayStar123 in #5888
- Run clippy::pedantic on sway-lsp by @JoshuaBatty in #5939
- Fail nicer on missing expected_result in test.toml files by @jjcnn in #5941
- Eliminate alias map from lexical scope by @jjcnn in #5931
- Clean up dead code. by @tritao in #5946
- docs: rewrite introduction by @sarahschwartz in #5956
- docs: fix typos by @sarahschwartz in #5959
- Larger clippy::pedantic and code quality pass on whole repo by @JoshuaBatty in #5945
- Fix non idiomatic function names warnings in the std lib. by @tritao in #5949
- Cleanup duplicated data from
ty::TyDecl
by @tritao in #5751 - Fixes to accessing the data section during bytecode gen by @vaivaswatha in #5927
- Refactor: Split contract-specific namespace module code into its own file. by @tritao in #5948
- Code quality pass on forc doc by @JoshuaBatty in #5962
- Fix inline docs example for
From<T> for b256
implementations forContractId
,AssetId
,Address
, andEvmAddress
by @bitzoic in #5970 - Adds documentation about the compiler internals. by @tritao in #5937
- Reference Sway-Libs, Sway-Standards, and Sway-Applications In Sway Book by @bitzoic in #5944
- docs: add external code doc by @sarahschwartz in #5840
- Bump to v0.56.1 by @IGI-111 in #5974
Full Changelog: v0.56.0...v0.56.1
v0.56.0
What's Changed
- Remove
contract_id()
in favor ofContractId::this()
by @bitzoic in #5867 - chore: fix some typos in comments by @yudrywet in #5855
- Update docs on how to disable LSP by @sdankel in #5877
- Refactor read and write access to namespace modules. by @tritao in #5868
- feat!: add
call_with_function_selector
version for new encoding by @hal3e in #5869 - Use GM opcode to fetch the base_asset_id by @bitzoic in #5806
- docs: Wallet Example Clarification by @calldelegation in #5878
- Fixes missing error when using trait constraint. by @esdrubal in #5882
- Fixes type inference on inlined method applications. by @esdrubal in #5823
- Adds test that proves unexpected error no longer occcurs. by @esdrubal in #5910
- Allow conversions between native u types and U128 by @SwayStar123 in #5825
- Refactor: Split use synonyms into separate maps for glob and item imports by @jjcnn in #5914
- Simplify Asset Transfer and Mint Functions by @bitzoic in #5891
- set new encoding as true by default and allow it to be disabled by @xunilrj in #5915
- Disabling run_external by @xunilrj in #5918
- chore: fix some comments by @toofooboo in #5880
- Bump to v0.56.0 by @IGI-111 in #5919
New Contributors
- @yudrywet made their first contribution in #5855
- @toofooboo made their first contribution in #5880
Full Changelog: v0.55.0...v0.56.0
v0.55.0
What's Changed
- Fix and improve
Unimplemented
compile errors by @ironcev in #5847 - Update test SDK Harness to fuel-core v0.24.2 and Fuels v0.57.0 by @bitzoic in #5858
- Improves debug build times. by @esdrubal in #5861
- Do not force inling functions that have pointer args. by @vaivaswatha in #5762
- move documents from
Session
toServerState
by @JoshuaBatty in #5862 - Use
ModuleId
instead ofSourceId
as the metrics map key by @JoshuaBatty in #5871 - chore: bump to v0.55.0 by @JoshuaBatty in #5872
Full Changelog: v0.54.0...v0.55.0
v0.54.0
What's Changed
- Add expect to option and result by @SwayStar123 in #5431
- Improves DCA warnings after divergent expressions. by @esdrubal in #5726
- AbiDecode for Vec using
with_capacity
by @xunilrj in #5849 - chore: bump fuel-core to 0.24.2, fuel-vm to 0.48.0, sdk to 0.57.0 by @kayagokalp in #5844
- Bump to v0.54.0 by @IGI-111 in #5853
Full Changelog: v0.53.0...v0.54.0
v0.53.0
What's Changed
- From<u8, u16, u32> for u64 implementations by @SwayStar123 in #5817
- Refactor trait map and module symbol resolution code to allow usage for parsed declarations by @tritao in #5810
- Add support for fig completions by @crodas in #5669
- Cache in front of check_if_trait_constraints_are_satisfied_for_type by @xunilrj in #5827
- Add
ZERO_U256
constant by @bitzoic in #5829 - Fix ZERO_B256 docs by @GearedPaladin in #5835
- Expand Native Asset Docs by @bitzoic in #5808
- change ConcurrentSlab to use Vec by @xunilrj in #5838
- Fix and improve errors when the entry fns cannot be generated by @xunilrj in #5824
- Optimize retrieve_interface_surface_and_items_and_implemented_items_for_type by @xunilrj in #5837
- Fixes compiler performance in mega_example. by @esdrubal in #5841
- Fixes FQP root type not found when inside a library. by @esdrubal in #5832
- chore:bump sdk to v0.56, fuel-core to 0.23.0, fuel-vm to 0.47.1 by @kayagokalp in #5759
- Fix critical GC <> LSP bug and enable dynamic GC configuration. by @JoshuaBatty in #5813
- chore: bump to v0.53.0 by @JoshuaBatty in #5831
New Contributors
- @GearedPaladin made their first contribution in #5835
Full Changelog: v0.52.1...v0.53.0