Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support Tact 1.4.0 #180

Open
10 tasks
anton-trunov opened this issue Jun 9, 2024 · 1 comment
Open
10 tasks

Support Tact 1.4.0 #180

anton-trunov opened this issue Jun 9, 2024 · 1 comment

Comments

@anton-trunov
Copy link

anton-trunov commented Jun 9, 2024

The following is the list of IDE-relevant changes for Tact v1.4.0 which has been released. This issue is a follow-up on #177. The full changelog is here: https://github.com/tact-lang/tact/blob/main/CHANGELOG.md#140---2024-06-21.

New or changed syntax

  • Unary bitwise NOT operation: ~.
  • Augmented assignment bitwise operators: |=, &=, ^=.
  • foreach loop for the Map type now works not only with simple identifiers, but with contract storage and struct fields too: foreach (k, v in self.map) {...} or foreach (k, v in struct.map) {...}.
  • Trailing semicolons in struct/message declarations are optional now: struct Foo {x: Int} is valid syntax now.
  • Trailing semicolon in for the last statement in a block is optional now: { let x: Int = 42 } is valid syntax now.
  • Type annotation for let-statements are optional now: let x = 42 is valid syntax now.

stdlib functions

  • Fixed the return type of skipBits in stdlib/std/cells.tact: extends mutates native skipBits(self: Slice, l: Int) (used to return Int, now it's void).
  • New loadBool method for slices.
  • New fromCell and fromSlice methods for struct parsing.
  • nativeThrowWhen has been renamed to nativeThrowIf.
@anton-trunov
Copy link
Author

Tact v1.4.0 has just been released, looking forward to see it supported in Intellij TON!

andreypfau added a commit that referenced this issue Jul 10, 2024
andreypfau added a commit that referenced this issue Jul 15, 2024
### Added

- Support for the latest Tact
  1.4.0 ([#177](#177), [#180](#180))
- Inspections for out of range integer values in FunC and Tact
- Inspections for integer division by zero in FunC and Tact
- Inspections for integer overflow in FunC
- Constant expression evaluation in FunC and Tact (with inline
  hints!) ([#22](#22))

### Fixed

- `message` and `bounced` highlight not working in Tact ([#174](#174))
- `com.intellij.diagnostic.PluginException: Template not found: Fift File` ([#182](#182))
- `Storage for FuncNamedElementIndex.storage is already registered` ([#181](#181))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant