Skip to content

Files

Latest commit

0e5f2b7 · Mar 20, 2025

History

History
281 lines (229 loc) · 24.2 KB

CHANGELOG.md

File metadata and controls

281 lines (229 loc) · 24.2 KB

Changelog

All notable changes to this project will be documented in this file.

[0.4.1] - 2025-03-20

  • fix(indexing): search of stdlib for new projects, and Tact toolchain in Tact compiler repo in #470
  • fix(documentation): grammar and spelling, ordering, links in #465

[0.4.0] - 2025-03-10

Improvements

  • feat(completion): add completion variants for TL-B types for fields in #455
  • feat(resolving): initial implementation of import-based resolving in #445
  • feat(resolving): prefer local definition when find definitions in #439
  • feat(indexing): improve indexes logic in #443
  • feat(definition): prefer project definitions over stdlib one in #441
  • feat(inlay-hints): don't show parameter hints for call argument with matching name in #425
  • feat(tests): better tests + fixes in #383
  • feat(vscode): add problem matcher to highlight errors after build in #437
  • feat(vscode): add command to run Misti on a project with installation if not installed in #456
  • feat(all): initial support for contract parameters in #374
  • feat(stubs): add doc comments for fromSlice and fromCell functions in #420
  • feat(documentation): add exit code documentation in #400
  • feat(documentation): better documentation for assembly instructions in #459
  • feat(foldings): add folding for Fift blocks in #379
  • feat(inspections): rewrite send() with message() or deploy() in #405
  • feat(inspections): rewrite context().sender with sender() in #404
  • feat(inspections): add inspection for Deployable with quickfix in #457
  • feat(intentions/inspections): add inspection and quickfix for text receivers in #396
  • feat(intentions): support init(init: Init) pattern in #452

Fixed

  • fix(indexing): fix indexing on Windows in #436
  • fix(building): fix constructor modifier in #442
  • fix(document-symbols): document symbols now return whole range of declaration, not only name in #454
  • fix(inlay-hints): don't show size hint for toCellI() in method chain in #432
  • fix(foldings): add missing folding for messages in #428
  • fix(manual): fix link to issues in #427
  • fix(semantic-tokens): fix highlighting for some keywords in doc comments in #424
  • fix(vscode): don't cache disasm for BoC in #422
  • fix(signature-help): fix signature help for initOf for contracts with parameters in #410
  • fix(vscode): fix type of command, add selection of expression on a result, fix type of storage parameter in #406
  • fix(go-to-references): fix use scope for contract parameters in #401
  • fix(tests): fix tests in #382
  • fix(completion): fix completion for types of fields in #381
  • fix(completion): don't show getter completion for incomplete field in #433
  • fix(inspections): run inspections only on Tact files in #378
  • fix(inspections): run some inspections only on Tact 1.6 in #458
  • fix(documentation): correctly show T? type in #380
  • fix(documentation): fix contract parameters in contract documentation in #426
  • fix(documentation/inlay-hints): fix size calculation in #377

Other

  • test: add folding tests in #414
  • chore: fix grammar in README.md in #408
  • chore: better README.md in #397
  • chore: add image to readme in #402

[0.3.2] - 2025-03-03

Bump a version of decompiler to v0.3.0.

[0.3.1] - 2025-03-01

Improvements

  • feat(all): initial support for contract parameters in #374
  • feat(foldings): add folding for Fift blocks in #379

Fixed

  • fix(completion): fix completion for types of fields in #381
  • fix(documentation): correctly show T? type in #380
  • fix(documentation/inlay-hints): fix size calculation in #377
  • fix(inspections): run inspections only on Tact files in #378

Other

  • feat(tests): better tests, test fixes in #383
  • fix(tests): fix tests in #382

[0.3.0] - 2025-02-24

Improvements

  • feat(all): initial support for a destruct statement in #355
  • feat(all): initial support for codeOf in #356
  • feat(all): add support for get methods with explicit ID in #358
  • feat(grammar): port remaining grammar changes for 1.6.0 in #359
  • feat(vscode): integrate BoC decompiler in #281
  • feat(vscode): split settings to groups in #312
  • feat(vscode): port the latest version of TextMate grammar in #353
  • feat(inlay-hints): improve type hints in #286
  • feat(inlay-hints): don't show an obvious type hint for variable initialized with Foo.fromCell() in #347
  • feat(documentation/inlay-hints): show type for struct, messages and toCell() calls in #318
  • feat(highlighting): highlight code in doc comments in #309
  • feat(completion): add completion for getters in #310
  • feat(foldings): folding of doc comments in #311
  • feat(linters): run compiler and Misti checks on files in #267
  • feat(gas): take branching into account for gas calculation in #321
  • feat(build-system): add a Test task for Blueprint and Tact Template in #335
  • feat(build-system): add "build all contracts", "build and test all contracts" commands in #336

Manual

  • manual: add initial completion page in #289
  • manual: add troubleshooting.md in #314
  • manual: add code lenses in #305
  • manual: add highlighting in #315
  • manual: add initial navigation in #316
  • manual: add gas-calculation page in #322
  • manual: add inlay hints in #350

Fixed

  • fix(vscode): use flat settings keys in #313
  • fix(vscode): fix LS run on workspace without an open folder and on non-saved buffers in #320
  • fix(vscode): better wording for compiler path setting in #328
  • fix(imports): check for name.tact as well in #323
  • fix(linters): run compiler and Misti even for projects without tact.config.json in #333
  • fix(vscode): make command names uniform in #334
  • fix(completion): for contract/trait top-level in #348
  • fix(completion): fix auto imports for the current file elements and elements from files on level - X in #296
  • fix(resolving): support path with explicit .tact extension in #349
  • fix(indexing): don't ignore too many files in Tact compiler repo in #351

Other

  • feat(ci): add changelog to nightly builds in #324
  • fix(tests): fix inlay hints tests in #299
  • feat(test): add completion tests with applying in editor by @xpyctumo in #276
  • feat(test): more completion tests in #279
  • feat(test): more intentions tests in #280
  • chore: update README.md in #266
  • chore: change priorities of editors in the README by @novusnota in #278
  • disabling postinstall scripts for third-party dependencies by @Danil42Russia in #288
  • chore: use @tact-lang/opcode v0.2 in #295
  • chore(documentation): override completions in Sublime Text by @novusnota in #354

[0.2.1] - 2025-02-20

Fixed critical bug in auto-import completion.

[0.2.0] - 2025-02-18

Improvements

  • feat(inlay-hints): add parameters hints for initOf Foo() in #216
  • feat(inlay-hints): show as int257 hint inside map types as well in #228
  • feat(inlay-hints): don't show inlay hints in some cases in #230
  • feat(inlay-hints): show stack info for ASM instruction (disabled by default) in #244
  • feat(vscode): add Tact code highlighting inside Markdown code blocks in #212
  • feat(vscode): initial support for Blueprint and Tact Template build systems in #237
  • feat(documentation): add missing functions to stubs/ and adjust the format to match the rest of other stdlib doc /// comments by @novusnota in #189
  • feat(documentation): show use documentation for receiver and init functions in #227
  • feat(documentation): show exit code in hover documentation of require() in #243
  • feat(documentation): add missing comptime functions to stubs.tact by @novusnota in #248
  • feat(documentation): show members of trait and contract in hover documentation in #256
  • feat(completion): automatically add necessary imports for symbols from other files in #257
  • feat(completion): show self type fields/methods in completion list in #262
  • feat(asm): better asm functions support in #225
  • feat(asm): show hint for top element in stack info, show new styled stack info in doc and completion in #264
  • feat(completion/resolving): better handling of imports in #241
  • feat(completion/resolving/documentation): add support for fromCell and fromSlice methods on structs and messages in #233
  • feat(linters): add Misti static analyzer to display by @skulidropek in #26
  • feat(compiler): initial compiler integration in #236

Fixed

  • fix(fift): parsing of DECLGLOBVAR in Fift ASM in #215
  • fix(completion): fix documentation for function completion items in #210
  • fix(completion): for functions return type in #218
  • fix(completion): don't add extra () in initOf completion in #226
  • fix(completion): add parameters to contract completion inside initOf in #258
  • fix(inspections): don't warn on symbols with several declarations in #232
  • fix(documentation): fix list rendering in #255
  • fix(signature-help): for struct init inside function call in #259
  • fix(inspections): fix unused params inspection for function declarations in #260
  • fix(inlay-hints): don't show parameters hints for unary functions from stubs in #263
  • fix(resolving/completion): for methods on T? in #229

Testing

  • feat(tests): add tests for Inlay Hints by @xpyctumo in #206
  • feat(tests): add more tests for inlay hints in #209
  • feat(tests): add tests for Signature Help by @xpyctumo in #253

Other

  • adding unicorn for eslint by @Danil42Russia in #192
  • more strict typescript-eslint rules by @Danil42Russia in #194
  • updated the nightly build by @Danil42Russia in #195
  • chore: add mention of Open VSX Registry in #213
  • feat(documentation): add installation instructions for Vim 8+ by @novusnota in #231

New Contributors

  • @xpyctumo made their first contribution in #206

[0.1.0] - 2025-02-10

Improvements

  • feat(definition): add go to definition for initOf keyword in #101
  • feat(references): add find references for init function in #104
  • feat(completion): add completion for initOf and contracts in it in #102
  • feat(completion): take into account type of field inside default value completion in #100
  • feat(completion): add do snippet in #106
  • feat(completion): add constant declaration completion in traits and contracts in #105
  • feat(completion): add empty receiver() {} to completion in #108
  • feat(completion): add external() {} to completion in #111
  • feat(completion): add bounced<> to completion in #112
  • feat(completion): add virtual fun foo() {} to completion in #114
  • feat(completion): add extends mutates fun foo(self: Type) {} to completion in #115
  • feat(completion): add struct/message/trait/constant declaration completion in #116
  • feat(completion): show only messages in bounced() and external() receivers in #124
  • feat(completion): add initial implementation of postfix completion in #166
  • feat(completion): add as keyword completion in #158
  • feat(hover): show name of struct/message in hover documentation for fields/constants/functions in #95
  • feat(hover): show TL-B types in field documentation in #125
  • feat(hover): add documentation for TL-B types in #110
  • feat(hover): add documentation for receivers (receive, bounced, external) and init() constructor in #145
  • feat(signature-help): add Signature help for initOf in #103
  • feat(signature-help): add signature help for struct/message fields in #135
  • feat(document-symbols): sort elements by position in #136
  • feat(document-symbols): add imports, init() and message receivers (receive, external, bounced) in #137
  • feat(document-symbols): add settings to turn on/off fields in #143
  • feat(documentation): add mention of VSCodium / Cursor / Windsurf in README.md in #138
  • feat(documentation): add tact as language of code blocks for better highlighting in Helix/Neovim in #139
  • feat(ci): add archive with LS to nightly releases in #147
  • feat(find-usages): add setting for "Find Usages" scope in #157
  • feat(vscode-language-configuration): auto-insertion of /// and concealment of /**/ comments by @novusnota in #93
  • feat(vscode-language-configuration): add foldings of // region: and // endregion: and colorizedBracketPairs in #160
  • feat(intentions): initial intention to fill all/required struct/message fields in #133
  • feat(intention): add "Add explicit type" intention in #127
  • feat(intention): add initial implementation of intention to initialize field in init() in #164
  • feat(intention): add initial implementation of "wrap to" with try, try-catch and repeat in #165
  • feat(inline-hints): show as int257 for Int fields in #97
  • feat(inspections): add inspection for symbols from other files without explicit import in #129
  • feat(configuration): add configuration for all type hints, code lenses and inspections in #131
  • feat(workspace): show error message if stdlib not found in #132

Fixed

  • fix(hover): LS hangs when calling hover documentation on receive() {} in #96
  • fix(resolving): don't resolve variable before its declaration in #118
  • fix(completion): fix completion of variants with the same name in #119
  • fix(completion): and add brackets only if they are not there yet in #120
  • fix(completion): disable completion in variable declaration name in #121
  • fix(completion): disable completion in all function declaration names in #122
  • fix(completion): don't complete anything in parameters in #156
  • fix(resolve) resolving of inherited constants in #45
  • fix(resolve): inherit trait fields in child trait in #99
  • fix(resolve): function call with same name variable in scope in #159
  • fix(intention): don't do anything for "Fill in required fields..." if there are no such fields, or no fields to fill in at all in #162
  • fix(type-inference): for ternary expression with null branch in #141
  • fix(vscode-extension): fix Tact file icons in #168
  • fix(inspections): fix unused inspection for _ names in #107

Other

  • use vscode-tact id in #37
  • More eslint rules in #56
  • added eslint to the husky pre-hook by @Danil42Russia in #134
  • feat(CI): add nightly builds in #142
  • chore: update README.md in #146
  • refactor: fix eslint unicorn issues in #169
  • refactor: enable eslint all in #170
  • refactor: enable more eslint rules in #171

New Contributors

  • @novusnota made their first contribution in #93

[0.0.1-alpha] - 2025-02-06

Initial development release for alpha testers