Breaking changes
- [stdlib] Compiler now reports an error if
VarAddress
orparseVarAddress()
is used, since starting
from TVM 10 they are mostly not supported: PR #3067.
Language features
- [fix] Compiler now correctly handles optional slices, builders, and strings when generating serialization logic: PR #3053
- [fix] Compiler now disallows type usages as value (e.g.
let x = Int
orlet x = MyStruct
): PR #3065
Code generation
Tooling
- [fix] Formatter now correctly handles floating comments: PR #2995
- [fix] Formatter now correctly handles inline comments after the last declaration: PR #3064
- [fix] Formatter now correctly handles floating comments after import: PR #3071
- [fix] Formatter now better supports comments inside chained method calls: PR #3070
Docs
- Enabled format checking across the Cookbook: PR #2980
- Added references to https://github.com/tact-lang/defi-cookbook: PR #2985
- Added description of the "unreachable code" errors and enhanced the descriptions of the
return
statement: PR #2750 - Fixed description of the unary plus
+
operator: PR #3016 - Documented that map key-value types and the inner message type of the
bounced<M>
type constructor cannot be nullable: PR #3017 - Lowercased "Struct" everywhere except at the beginning of sentences: PR #3021
- Reworked the optionals page: PR #3002