Skip to content

Releases: Myriad-Dreamin/tinymist

v0.12.4

23 Nov 08:05
ce125a2
Compare
Choose a tag to compare
  • Updated roadmap (typst v0.13.0+) in #876

Announcement: New Maintainers

We have added maintainers to GitHub since 2024-11-22:

  • @ParaN3xus has become a maintainer of the "Nightly Releases" feature in #783
  • @max397574 has become a maintainer of the "Editor integration" feature in #784
  • @Eric-Song-Nop has become a maintainer of the "Language Service" feature in #796
  • @alerque has become a maintainer of the "Neovim integration" feature in #810

Compiler

  • Added package related arguments to typstExtraArgs in #832 and #833
    • (Help Wanted) Reverted because of the OpenSSL problem. See #885.
  • Taking configuration items from tinymist section in #835
    • Some editors, e.g. Emacs, use a shared configuration object for all language servers, so it would be better to allow wrapping all configuration items in a single object.

Editor

  • Statically registering formatting and semantic tokens capabilities by @MrLego8-9 in #814
    • Some editors, e.g. Kate, support neither to dynamic register formatting and semantic tokens capabilities nor pass configuration when initialization, which causes problem.
  • Opening exported files using rust's open crate in #838 and #855
    • Check #837 for more information.

Completion

  • Added more completion tests in #845

  • Completing bracket if the function accepts an only content argument in #848, #860, #867, and #870

    2024-11-22.16-46-24.mp4
  • Providing UFCS-style completion on content types in #849

    2024-11-22.16-47-47.mp4
  • Providing postfix completion on values in #850 and #880

    2024-11-22.16-49-34.mp4
  • Improved and filtered completion in show/set syntax in #858 and #859

  • (Fix) Using correct base directory for path completion by @Eric-Song-Nop in #854

  • Preferring to guide coding by signature help than completion list in #874

  • (Fix) Skipping code completion when editing length in #882

Docstring

  • Checking union type annotation in #842

Syntax/Semantic Highlighting

  • (Fix) match brackets in content block recursively in #856

Rename

  • Added search index to quickly filter unrelated files in #864
  • Added support to rename resource paths in files in #869

References

  • Added search index to quickly filter unrelated files in #864

Code Action

  • Added code action to wrap content blocks in #881

Misc

  • Caching link expressions in #866
  • Improved caches of calls and module exports type checking in #847

Full Changelog: v0.12.2...v0.12.4

v0.12.4-rc3

23 Nov 06:22
e184848
Compare
Choose a tag to compare
v0.12.4-rc3 Pre-release
Pre-release

Reverted "feat: add package related arguments to typstExtraArgs (#832 and #833)", which causes failures on building ARM targets.

v0.12.4-rc2

22 Nov 09:54
254c4ce
Compare
Choose a tag to compare
v0.12.4-rc2 Pre-release
Pre-release

Fix an issue of cross building with openssl.

v0.12.4-rc1

22 Nov 08:52
42e97d8
Compare
Choose a tag to compare
v0.12.4-rc1 Pre-release
Pre-release
  • Updated roadmap (typst v0.13.0+) in #876

Announcement: New Maintainers

We have added maintainers to GitHub since 2024-11-22:

  • @ParaN3xus has become a maintainer of the "Nightly Releases" feature in #783
  • @max397574 has become a maintainer of the "Editor integration" feature in #784
  • @Eric-Song-Nop has become a maintainer of the "Language Service" feature in #796
  • @alerque has become a maintainer of the "Neovim integration" feature in #810

Compiler

  • Added package related arguments to typstExtraArgs in #832 and #833
  • Taking configuration items from tinymist section in #835
    • Some editors, e.g. Emacs, use a shared configuration object for all language servers, so it would be better to allow wrapping all configuration items in a single object.

Editor

  • Statically registering formatting and semantic tokens capabilities by @MrLego8-9 in #814
    • Some editors, e.g. Kate, support neither to dynamic register formatting and semantic tokens capabilities nor pass configuration when initialization, which causes problem.
  • Opening exported files using rust's open crate in #838 and #855
    • Check #837 for more information.

Completion

  • Added more completion tests in #845

  • Completing bracket if the function accepts an only content argument in #848, #860, #867, and #870

    2024-11-22.16-46-24.mp4
  • Providing UFCS-style completion on content types in #849

    2024-11-22.16-47-47.mp4
  • Providing postfix completion on values in #850 and #880

    2024-11-22.16-49-34.mp4
  • Improved and filtered completion in show/set syntax in #858 and #859

  • (Fix) Using correct base directory for path completion by @Eric-Song-Nop in #854

  • Preferring to guide coding by signature help than completion list in #874

  • (Fix) Skipping code completion when editing length in #882

Docstring

  • Checking union type annotation in #842

Syntax/Semantic Highlighting

  • (Fix) match brackets in content block recursively in #856

Rename

  • Added search index to quickly filter unrelated files in #864
  • Added support to rename resource paths in files in #869

References

  • Added search index to quickly filter unrelated files in #864

Code Action

  • Added code action to wrap content blocks in #881

Misc

  • Caching link expressions in #866
  • Improved caches of calls and module exports type checking in #847

Full Changelog: v0.12.2...v0.12.4-rc1

v0.12.2

15 Nov 13:40
434f222
Compare
Choose a tag to compare

Announcement: New Maintainers

We are going to add maintainers on GitHub since 2024-11-22 (in 7 days):

Please reply in PRs or DM @Myriad-Dreamin if you have any concerns about adding these maintainers to list.

Docs

image

Editor

  • {En,De}coding base-64 strings with Text{De,En}coder in #719 and #774
  • Removed outdated typst.tmLanguage.json in #725
  • Disabling unicode bracket pair autocompletion in #726
    • This is a degradation, as discussed in #723
  • Added preview icon when clicking outside the document by @supersurviveur in #734

Compiler

  • Implemented expression checker in #714, #736, #756, #759, #773, #775, #777, #798, #801, #815, and #822
    • This is a high-level IR for various analyses above AST, e.g. type checking.
  • Improved ways of checking docstring in #752, #755
  • Locking and taking snapshot {analysis,token} caches on main thread in #806, #817, and #819
  • (Fix) Rendered bitmap and svg glyphs correctly in #745
    • This is broken by update typst to v0.12.0.
  • (Fix) Ensuring expression and type enums are not too big correctly in #811

Commands/Tools

  • Added tinymist query checkPackage command in #742
  • (Fix) Corrected word count when empty line exists by @Eric-Song-Nop in #795
  • (Fix) Corrected usage of /package/symbol in package view in #820
  • (Fix) Querying file type with following symbolic links when listing packages in #821
    • Previously, some directories are not identified because they are behind symbolic links.
  • Showing performance statistics in summary page in #743
    image
  • Completed symbol classification in handwriting recognizer by @summerBreeze03 in #705
    image

Docstring

  • Strictly matching module-level comments in #770

    • Previously both // Docs and /// Docs at the start of some file are regarded as docs of the module (file). However, this is not great because people also usually put shebangs and license information in comments.

    Example:

    // License: Apache 2.0
    /// Some Module Docs.

    The exact documentation of the module should be Some Module Docs. instead of License: Apache 2.0\nSome Module Docs.

  • Rendering examples in docs in #772
    image

  • Emitting errors into docs instead of causing failures in #786
    image

  • Striping out the line containing the return type in #803

Hover (Tooltip)

  • Providing documentation when hovering on module references in #751
    image
  • Improved style of parameter documentation in #813
    • We followed typescript's docs style but it is not pretty. Now we follow scala's docs style, which uses headings to separate parameter docs.
      image
  • Conditionally rendering code in documentation in #824
    • There is a supportHtmlInMarkdown configuration item that controls whether to render equation and remove html in contents. The configuration item is not a user configuration, but for lsp client developers (people who are knowledgeable to configure editors).
    • on VS Code, contents are rendered and embedded as images:
      image
    • on rest clients that aren't aware of supportHtmlInMarkdown, no HTML is embedded in the responding contents:
      image

Completion

  • (Fix) Client-side controlling to whether issue completion callback in #744
  • (Fix) Matching all identifier-like nodes for completion in #747
  • Avoiding trivial completion when the trigger char is an ascii punctuation in #748
  • Added more completion tests in #776
  • Consistently enriching colon after show selectors in #785

Syntax/Semantic Highlighting

Signature Help

  • Improved style of signature docs in #750

Preview

  • (Fix) Bidirectionally jumping if page.fill is set in #728
    • This is broken by update typst to v0.12.0.

On Enter

  • Fully supported onEnter edits inside comments in #823
    • Working with selection with range for all clients.
    • Working with selection with multiple cursors for VS Cod{e,ium} client.

Misc

  • Uploading test snapshot and log for debugging in #760 and #787
  • Added time limit argument to language server's replay command in #816

Full Changelog: v0.12.0...v0.12.2

v0.12.2-rc1

15 Nov 07:22
52a8d0e
Compare
Choose a tag to compare
v0.12.2-rc1 Pre-release
Pre-release

Announcement: New Maintainers

We are going to add maintainers on GitHub since 2024-11-22 (in 7 days):

Please reply in PRs or DM @Myriad-Dreamin if you have any concerns about adding these maintainers to list.

Docs

  • Added coc.nvim config example by @tanloong in #727
  • Maintained docs for tinymist 0.12.2 in #733 and #825
  • Updated neovim's setup section in #749
  • Added documentation about docstring in #771

Editor

  • {En,De}coding base-64 strings with Text{De,En}coder in #719 and #774
  • Removed outdated typst.tmLanguage.json in #725
  • Disabling unicode bracket pair autocompletion in #726
    • This is a degradation, as discussed in #723
  • Added preview icon when clicking outside the document by @supersurviveur in #734

Compiler

  • Implemented expression checker in #714, #736, #756, #759, #773, #775, #777, #798, #801, #815, and #822
    • This is a high-level IR for various analyses above AST, e.g. type checking.
  • Improved ways of checking docstring in #752, #755
  • Locking and taking snapshot {analysis,token} caches on main thread in #806, #817, and #819
  • (Fix) Rendered bitmap and svg glyphs correctly in #745
    • This is broken by update typst to v0.12.0.
  • (Fix) Ensuring expr and type enum are not too big correctly in #811

Commands/Tools

  • Added tinymist query checkPackage command in #742
  • Showing performance statistics in summary page in #743
  • Completed symbol classification in handwriting recognizer by @summerBreeze03 in #705
  • (Fix) Corrected word count when empty line exists by @Eric-Song-Nop in #795
  • (Fix) Corrected usage of /package/symbol in package view in #820
  • (Fix) Querying file type with following symbolic links when listing packages in #821
    • Previously, some directories are not identified because they are behind symbolic links.

Docstring

  • Strictly matching module-level comments in #770

    • Previously both // Docs and /// Docs at the start of some file are regarded as docs of the module (file). However, this is not great because people also usually put shebangs and license information in comments.

    Example:

    // License: Apache 2.0
    /// Some Module Docs.

    The exact docs should be Some Module Docs. instead of License: Apache 2.0\nSome Module Docs.

  • Rendering examples in docs in #772

  • Emitting errors into docs instead of causing failures in #786

  • Striping out the line containing the return type in #803

Hover (Tooltip)

  • Providing docs when hovering on module refs in #751
  • Improved style of hover param docs in #813
  • Conditionally rendering code in docs in #824

Completion

  • (Fix) Client-side controlling to whether issue completion callback in #744
  • (Fix) Matching all identifier-like nodes for completion in #747
  • Avoiding trivial completion when the trigger char is an ascii punctuation in #748
  • Added more completion tests in #776
  • Consistently enriching colon after show selectors in #785

Syntax/Semantic Highlighting

Signature Help

  • Improved style of signature docs in #750

Preview

  • (Fix) Bidirectionally jumping if page.fill is set in #728
    • This is broken by update typst to v0.12.0.

On Enter

  • Fully supported onEnter edits inside comments in #823
    • Working with selection with range for all clients.
    • Working with selection with multiple cursors for VS Cod{e,ium} client.

Misc

  • Uploading test snapshot and log for debugging in #760 and #787
  • Added time limit argument to language server's replay command in #816

Full Changelog: v0.12.0...v0.12.2-rc1

v0.12.0

19 Oct 17:09
4437b3b
Compare
Choose a tag to compare

Full Changelog: v0.11.32...v0.12.0

Important Note!: Since this version, all docstrings will be assumed to be in typst format, according to Add api and style section about documentation. We think of this is important to land it as soon as possible. The documentation converter is now in state of early development, and we are welcomed to receive issues on GitHub. It can convert simple markups and equations:

Rendering:

image

Rendered:

image

But please keep correct format and syntax and avoid using complex markup in docstrings.

Document Link

  • Identifying static path references in documents in #658

image

Compiler

  • Improved code quality of sync-lsp in #632
    • Removed some unwraps that some editors may not love.
  • Using DETACHED_ENTRY if no entry is provided in #647
  • Caching dirs::data_dir and dirs::cache_dir in #659

Editor

  • Added configuration to open exported file by system default app in #636
  • Supported drag and drop of files into the typst editor in #635
2024-10-19.18-12-29.mp4

Profiling

  • Sending trace data via http instead of lsp stdio in #660

Definition

  • Recording and using span where the label is attached in #641
    • Make go to definition more accurate.
2024-10-19.18-13-34.mp4
  • Go to definition of module members in #644
2024-10-19.18-14-10.mp4

Rename

  • Added support to rename modules by path in #645
  • Issuing import changes request during willRenameFiles in #648
2024-10-19.18-14-39.mp4

Preview

  • (Fix) Checking existence of requestIdleCallback before uses in #643

On Enter

  • Adding indent on entering in empty block maths in #646
2024-10-19.18-15-14.mp4

Hover (Tooltip)

  • Made star import tooltip more human readable in #682

    2024-10-19.18-16-34.mp4
  • Rendering hover docs with converted result in #701

    2024-10-19.18-15-48.mp4
  • Providing parameter docs in hover tips in #702

    2024-10-19.18-17-08.mp4

Syntax/Semantic Highlighting

  • Passing to_multiline_tokens2 checking by copilot in #639
  • (Fix) Parsing for clause correctly in #642

Type Checking

  • Implemented ord for Ty in #667
  • Made elementary select checker in #668
  • Made elementary tuple method checker in #669
  • Checking call types with default bindings in #671 and #675
  • Performing type induction on runtime values in #694

Type Checking (Docstring)

  • Reading and checking type annotations in docstring in #679, #680, and #681

Misc

  • Refactored analysis structure in #674
  • Fixed typos in readme by @hougesen in #662
  • Incorporated with static function signature analysis in #688, #692, #696, and #699

v0.12.0-rc1

19 Oct 15:11
7ed731b
Compare
Choose a tag to compare
v0.12.0-rc1 Pre-release
Pre-release

Fix two issues:

  • Fixed the version to bump, which should be v0.12.x.
  • Fixed test failures in CI.

v0.11.34-rc1

19 Oct 10:33
66fff06
Compare
Choose a tag to compare
v0.11.34-rc1 Pre-release
Pre-release

Full Changelog: v0.11.32...v0.11.34-rc1

Important Note!: Since this version, all documentation will be assumed to be in typst format. The documentation converter is now in state of early development, and we are welcomed to receive issues on GitHub. It can convert simple markups and equations:

Rendering:

image

Rendered:

image

Document Link

  • Identifying static path references in documents in #658

image

Compiler

  • Improved code quality of sync-lsp in #632
    • Removed some unwraps that some editors may not love.
  • Using DETACHED_ENTRY if no entry is provided in #647
  • Caching dirs::data_dir and dirs::cache_dir in #659

Editor

  • Added configuration to open exported file by system default app in #636
  • Supported drag and drop of files into the typst editor in #635
2024-10-19.18-12-29.mp4

Profiling

  • Sending trace data via http instead of lsp stdio in #660

Definition

  • Recording and using span where the label is attached in #641
    • Make go to definition more accurate.
2024-10-19.18-13-34.mp4
  • Go to definition of module members in #644
2024-10-19.18-14-10.mp4

Rename

  • Added support to rename modules by path in #645
  • Issuing import changes request during willRenameFiles in #648
2024-10-19.18-14-39.mp4

Preview

  • (Fix) Checking existence of requestIdleCallback before uses in #643

On Enter

  • Adding indent on entering in empty block maths in #646
2024-10-19.18-15-14.mp4

Hover (Tooltip)

  • Made star import tooltip more human readable in #682

    2024-10-19.18-16-34.mp4
  • Rendering hover docs with converted result in #701

    2024-10-19.18-15-48.mp4
  • Providing parameter docs in hover tips in #702

    2024-10-19.18-17-08.mp4

Syntax/Semantic Highlighting

  • Passing to_multiline_tokens2 checking by copilot in #639
  • (Fix) Parsing for clause correctly in #642

Type Checking

  • Implemented ord for Ty in #667
  • Made elementary select checker in #668
  • Made elementary tuple method checker in #669
  • Checking call types with default bindings in #671 and #675

Type Checking (Docstring)

  • Reading and checking type annotations in docstring (Part. 1) in #679, #680, and #681
  • feat: type induction on runtime values in #694

Misc

  • dev: refactor analysis structure in #674
  • docs: fix typos in readme by @hougesen in #662
  • Incorporated with static function signature analysis in #688, #692, #696, and #699

v0.11.33

10 Oct 09:48
Compare
Choose a tag to compare