Commit graph

54 commits

Author SHA1 Message Date
Hong Jiarong
cee5bfa4e6
feat: warning collector and logging for diagnostics in typlite (#2180)
Some checks are pending
tinymist::auto_tag / auto-tag (push) Waiting to run
tinymist::ci / Duplicate Actions Detection (push) Waiting to run
tinymist::ci / Check Clippy, Formatting, Completion, Documentation, and Tests (Linux) (push) Waiting to run
tinymist::ci / Check Minimum Rust version and Tests (Windows) (push) Waiting to run
tinymist::ci / prepare-build (push) Waiting to run
tinymist::ci / announce (push) Blocked by required conditions
tinymist::ci / build (push) Blocked by required conditions
tinymist::gh_pages / build-gh-pages (push) Waiting to run
This PR depends on #2173 and should be merged after it.
2025-10-16 18:18:57 +08:00
Myriad-Dreamin
29a10c144e
fix: import type inference result from other modules (#2168)
Some checks failed
tinymist::auto_tag / auto-tag (push) Has been cancelled
tinymist::ci / Duplicate Actions Detection (push) Has been cancelled
tinymist::ci / Check Clippy, Formatting, Completion, Documentation, and Tests (Linux) (push) Has been cancelled
tinymist::ci / Check Minimum Rust version and Tests (Windows) (push) Has been cancelled
tinymist::ci / prepare-build (push) Has been cancelled
tinymist::gh_pages / build-gh-pages (push) Has been cancelled
tinymist::ci / announce (push) Has been cancelled
tinymist::ci / build (push) Has been cancelled
fix #2131
2025-10-15 11:22:39 +08:00
QuadnucYard
ce447185d1
dev: drop if_chain and collapse if statements (#2097)
Some checks are pending
tinymist::auto_tag / auto-tag (push) Waiting to run
tinymist::ci / Duplicate Actions Detection (push) Waiting to run
tinymist::ci / Check Clippy, Formatting, Completion, Documentation, and Tests (Linux) (push) Waiting to run
tinymist::ci / Check Minimum Rust version and Tests (Windows) (push) Waiting to run
tinymist::ci / prepare-build (push) Waiting to run
tinymist::ci / announce (push) Blocked by required conditions
tinymist::ci / build (push) Blocked by required conditions
tinymist::gh_pages / build-gh-pages (push) Waiting to run
2025-09-01 16:46:54 +08:00
Myriad-Dreamin
05280aec4d
feat: bump edition of most crates to rust 2024 (#2042)
Some checks are pending
tinymist::auto_tag / auto-tag (push) Waiting to run
tinymist::ci / announce (push) Blocked by required conditions
tinymist::ci / Duplicate Actions Detection (push) Waiting to run
tinymist::ci / Check Clippy, Formatting, Completion, Documentation, and Tests (Linux) (push) Waiting to run
tinymist::ci / Check Minimum Rust version and Tests (Windows) (push) Waiting to run
tinymist::ci / prepare-build (push) Waiting to run
tinymist::ci / build (push) Blocked by required conditions
tinymist::gh_pages / build-gh-pages (push) Waiting to run
2025-08-18 16:48:41 +08:00
Myriad-Dreamin
bf081ec347
feat: export package docs to json format and render to html (#1809)
Some checks failed
tinymist::auto_tag / auto-tag (push) Has been cancelled
tinymist::ci / Duplicate Actions Detection (push) Has been cancelled
tinymist::ci / Check Clippy, Formatting, Completion, Documentation, and Tests (Linux) (push) Has been cancelled
tinymist::ci / Check Minimum Rust version and Tests (Windows) (push) Has been cancelled
tinymist::ci / prepare-build (push) Has been cancelled
tinymist::gh_pages / build-gh-pages (push) Has been cancelled
tinymist::ci / announce (push) Has been cancelled
tinymist::ci / build (push) Has been cancelled
It provides a `package-doc.json` and HTML is rendered using a
`package-doc` function.

```typ
#let package-doc(info, path: none) [
  #metadata((
    // more sub paths
  )) <static-paths>
  #render-page(info, path) // the content of $path/.html
]
#package-doc(json("package-doc.json"))
```
2025-08-13 12:12:08 +08:00
Myriad-Dreamin
b102b42d2c
feat: compile diag crate for wasm32 target (#2026) 2025-08-11 08:49:37 +08:00
Hong Jiarong
7a9e1cfb3c
fix: clean typlite markers from doc strings (#2017)
When there's HTML comments in list, the markdown syntax won't be parsed
as expected. This pr cleans typlite markers from doc string to avoid
this behavior.

<img width="654" height="223" alt="bfedf840bc92a34c44212006232a7e17"
src="https://github.com/user-attachments/assets/9015952b-a5de-4d59-a8ff-61a5e3d09d1b"
/>
<img width="641" height="257" alt="0267db904824cf09b67234bdcb0919e7"
src="https://github.com/user-attachments/assets/938fabaa-d6fe-42d4-adca-6c96b59443e2"
/>
2025-08-11 07:03:53 +08:00
Myriad-Dreamin
4426b31ed7
feat: pretty errors in docstrings (#1876)
Some checks are pending
tinymist::ci / E2E Tests (linux-x64 on ubuntu-latest) (push) Blocked by required conditions
tinymist::ci / Duplicate Actions Detection (push) Waiting to run
tinymist::ci / Check Clippy, Formatting, Completion, Documentation, and Tests (Linux) (push) Waiting to run
tinymist::ci / Check Minimum Rust version and Tests (Windows) (push) Waiting to run
tinymist::ci / E2E Tests (darwin-arm64 on macos-latest) (push) Blocked by required conditions
tinymist::ci / E2E Tests (linux-x64 on ubuntu-22.04) (push) Blocked by required conditions
tinymist::ci / E2E Tests (win32-x64 on windows-2022) (push) Blocked by required conditions
tinymist::ci / E2E Tests (win32-x64 on windows-latest) (push) Blocked by required conditions
tinymist::ci / prepare-build (push) Waiting to run
tinymist::ci / build-binary (push) Blocked by required conditions
tinymist::ci / build-vsc-assets (push) Blocked by required conditions
tinymist::ci / build-vscode (push) Blocked by required conditions
tinymist::ci / build-vscode-others (push) Blocked by required conditions
tinymist::ci / publish-vscode (push) Blocked by required conditions
tinymist::gh_pages / build-gh-pages (push) Waiting to run
* feat: print doc errors

* fix: test errors on windows

* fix: tests on windows again

* fix: tests on windows again 2

* Revert "fix: tests on windows again 2"

This reverts commit 63973dcc1f.

* fix: tests on windows again 3
2025-07-06 19:40:02 +08:00
Hong Jiarong
a24c516148
feat: import_context and contexual convert (#1816)
* feat: impl import_context

* dev: fmt, clippy

* fix: update import path handling to use rootless paths and normalize separators

* feat: fix errors for fletcher v0.5.8

---------

Co-authored-by: Myriad-Dreamin <camiyoru@gmail.com>
2025-06-16 16:13:40 +08:00
Myriad-Dreamin
d85bd7428a
refactor: remove unused code (#1728) 2025-05-01 17:58:15 +08:00
Myriad-Dreamin
4d13734fed
feat: clean up log and watch lints (#1659) 2025-04-16 15:02:49 +08:00
Myriad-Dreamin
054d3aecc0
refactor: prepare for linting on syntaxes (#1640)
* refactor: for query

* refactor: for diag

* feat: lazy hash expr info

* feat: hash resolves

* fix: update snapshot
2025-04-09 04:10:47 +08:00
Myriad-Dreamin
ac506dcc31
refactor: move expr and ty defs to analysis crate (#1633) 2025-04-08 05:50:55 +08:00
Myriad-Dreamin
d21ebc38dc
feat: bump typst to v0.13.0-rc1 (#1342)
* dev: use range type from lsp-types

* feat: add html document variant

* feat: use new-style bytes constructors

* fix: broken span usages

* fix: syntax kind is changed

* fix: label use pico str

* fix: bib element is changed

* fix: raw element is changed

* fix: typst use codex

* fix: package fn is removed from world trait

* feat: reflexo accept typst document

* docs: update changelog

* dev: cargo patch

* fix: typst pdf timestamp is changed

* fix: pattern is renamed to tiling

* dev: make eval compat

* test: update snapshots

* build: bump version to nightly 0.12.19-rc4

* build: bump version to 0.12.19-rc1 (#1164)

  * build update changelog

  * build: bump version to 0.12.19-rc1

* build: bump version to nightly 0.12.19-rc2 (#1221)

  * feat: update typst to `85d1778`

  * deps: lock git deps version

  * build: bump version to 0.12.19-rc2

  * docs: remove rc in changelog

  * fix: mathtext formatting of typstyle

  * fix: completion related to mathtext

  * build: update cargo.lock

* build: bump version to nightly 0.12.19-rc3 (#1232)

* build: bump version to nightly 0.12.19-rc4 (#1239)

* feat: add typst-html

* feat: add typst-html

* cargo patch

* fix: features doesn't take effect

* fix: casting

* fix: broken no-content-hint

* fix: snapshot

* fix: remove unnecessary `fs` feature

* fix: move system features feature

* feat: remove nightly shim

* test: update snapshot

* dev: nightly v0.12.21 (#1279)

* feat: update typst to `0ea6680`

feat: update typst to `0ea6680`

build: bump version to nightly 0.12.19 (#1261)

* fix: fix lint errors

* styl: fotmat

* fix: build web ci

* build: update cargo.toml

* build: bump version to nightly 0.12.21-rc1 (#1280)

* build: update typstyle & reflexo (#1336)

* build: update typstyle & reflexo

* dev: remove useless patches

---------

Co-authored-by: Myriad-Dreamin <camiyoru@gmail.com>

* build: update version

* fix: pdf gate were broken (#1285)

* fix: panic on convert_datetime (#1286)

* feat: run language sever with targeting html (#1284)

* dev: add some debug logging

* feat: html compilation

* fix: revert changes

* feat: adjust html interfaces

* feat: lock reflexo

* feat: provide exportTarget configuration

* feat: export html actions when target is html

* build: bump reflexo

* fix: system feature gate

* fix: feature gate 2

* fix: feature gate 3

* feat: make tinymist-world featured by lsp

* feat: text export over typst's HTML export (#1289)

* feat: add more doc, world, and task apis (#1290)

* feat: add num of pages method

* feat: add from_snapshot_inner method

* feat: add clear_dedicates method

* feat: more convertion traits

* feat: add doc_get_as_value method

* feat: add doc_get_as_value method

* feat: add cast_run method

* fix: set is compiling flag (#1293)

* feat: publish {tinymist-{derive,analysis,std,vfs,world,project},typlite,crityp} crates (#1310)

* build: bump version to 0.12.21-pre-rc1

* fix: deps

* build: set nightly in nightly branch

* docs: add readmes for publish

* feat: add release crates action

* dev: remove publish of sync-lsp

* dev: remove useless setup

* fix: remove readme

* fix: publish ignore errors

* fix: specify version for publish

* fix: specify version for publish

* feat: update tinymist-web version

* test: update snapshot

* fix: diverged deps

---------

Co-authored-by: ParaN3xus <136563585+ParaN3xus@users.noreply.github.com>
2025-02-21 03:18:04 +08:00
Myriad-Dreamin
1f01ec1f6c
feat: track fine-grained revisions of font, registry, entry, and vfs (#1192)
* feat: set flag to indicate whether we are compiling files

g1

dev: stateless compile

dev: vfs revise apis

g1

feat: bump revision on state changes

feat: track font and package changes

dev: some cases that can change state of cache

changes

* feat: implement shared source cache

* fix: take db state

* dev: update take state location

* fix: example
2025-01-19 18:23:41 +08:00
Myriad-Dreamin
56714675b7
feat: encode and use workspace information into PackageSpec (#1187)
* feat: remove an unused API

* feat: encode workspace information into `PackageSpec`

* feat: remove unused real_path

* feat: remove unused mtime

* feat: add ResolveAccessModel

* feat: implement id overlay semantics

* feat: remove mtime checking in overlay model

* feat: remove mtime checking in notify model

* feat: format ids

* fix: cases

* feat: resolve root by world

* dev: add untitled root

* fix: warnings

* fix: a wrong usage

* fix: snapshots

* fix: tests
2025-01-19 11:51:00 +08:00
Myriad-Dreamin
6180e343e0
feat: move world implementation (#1183)
* feat: move world implementation

* dev: remove vector ir

* fix: errors

* fix: clippy

* fix: don't build world in web

* fix: unused patches

* fix: fmt

* fix: docs example

* fix: doc examples
2025-01-19 08:25:35 +08:00
Myriad-Dreamin
5659b0bc6c
dev: move package to reflexo_world part (#1177)
* dev: move package to reflexo_world part

fix: compile error

* dev: update the package.json

* fix: compile error

* dev: remove dry compile
2025-01-16 10:13:37 +08:00
Myriad-Dreamin
de8e45a539
refactor: rename local variables (cont.) (#1026) 2024-12-18 19:48:34 +08:00
Myriad-Dreamin
be1d659719
refactor: rename local variables and some types (#1023)
* fix: naming

* refactor: rename local variables and some types
2024-12-18 19:23:31 +08:00
Yifan Song
44b3f3f8c1
fix: simplify types of variables for hover tooltip (#959)
* feat: type for hover on var

* test: update snapshots for hover on params

* fix: simplify type before formatting

* test: update snapshot

---------

Co-authored-by: Myriad-Dreamin <camiyoru@gmail.com>
2024-12-07 19:32:40 +08:00
Myriad-Dreamin
ed79045588
dev: disable all runtime check to log::debug! (#912) 2024-11-29 19:52:42 +08:00
Myriad-Dreamin
1ba6b6c1e0
test: update snapshots in legacy format (#873) 2024-11-21 12:55:57 +08:00
Myriad-Dreamin
57c6c7a4f6
dev: replace FieldTy with ParamTy (#830) 2024-11-16 13:50:50 +08:00
Myriad-Dreamin
da1e68ad1f
feat: conditionally render code in docs (#824)
* feat: conditionally render code in docs

* fix: fmt

* fix: config
2024-11-15 13:40:30 +08:00
Myriad-Dreamin
808da99092
feat: improve style of hover param docs (#813)
* feat: improve style of hover param docs

* feat: give value example in parameter docs
2024-11-14 20:49:14 +08:00
Myriad-Dreamin
c128f633d4
feat: merge func and variable docs parser (#812)
* feat: merge func and variable docs parser

* test: update snapshot
2024-11-14 20:35:21 +08:00
Myriad-Dreamin
41868aa0f4
fix: strip out the line containing the return type (#803) 2024-11-13 23:51:29 +08:00
Myriad-Dreamin
d8886b2065
feat: render error as docs instead of causing failures (#786) 2024-11-09 21:53:55 +08:00
Myriad-Dreamin
d75fd7e74e
feat: render examples in docs (#772)
* feat: render examples in docs

* fix: create `hover-images` on `startHover`

* dev: update snapshot
2024-11-08 15:55:47 +08:00
Myriad-Dreamin
f1f77065d7
dev: collect func.with type information for signature help (#759)
* feat: static analysis on `func.with` bindings

* test: update snapshot
2024-11-02 14:52:25 +08:00
Myriad-Dreamin
8f3566366e
refactor: refactor hover, analysis/global, and docs crates (#755)
* dev: refactor hover.rs

* refactor refactor AnalysisContext

* refactor: refactor docs crate
2024-10-31 10:07:31 +08:00
Myriad-Dreamin
1c1bc19caf
dev: more consistent way to get docs of decls (#752)
* dev: more consistent way to get docs of decls

* test: update snapshot
2024-10-30 22:29:07 +08:00
Myriad-Dreamin
ac97c34d0f
feat: improve signature formatting in docs (#750)
* feat: improve signature formatting in docs

* test: update snapshot

* fix: package docs formatting
2024-10-30 15:17:08 +08:00
Myriad-Dreamin
15785f1deb
feat: add check package command (#742)
* g

* feat: add check package command
2024-10-29 11:16:40 +08:00
Myriad-Dreamin
1d49e110e2
dev: cache expression information correctly (#736)
* dev: cache expression information correctly

* rev
2024-10-27 20:20:59 +08:00
Myriad-Dreamin
81ebc8a635
feat: implement expression checker (#714)
* feat: implements expression checker

* dev: resolve information

* dev: delete def_use

* stage

* stage

* stage

* stage concurrent

* stage concurrent

* dev: better concurrency

* dev: final constant evaluation improvement

* dev: change reference site

* dev: handle comments

* dev: remove indirect import structure

* dev: adjust linked_def impl

* dev: finalize goto definition impl

* dev: replace all old import and def_use analyses with expr analysis

* dev: update expr_of snapshots

* dev: split def/expr, refactor definition

* dev: more consistent definition solver

* dev: rename definition crate

* dev: references work again

* dev: resolve root decl

* dev: resolve root decl

* dev: resolve global definitions

* dev: resolve tokens with world

* feat: render semantic tokens with expression information

* dev: loop detection

* dev: recover type checking

* dev: recover more type checking

* dev: refactor analysis context

* fix: process case of spread left

* dev: label inference

* dev: recover more signature checking

* dev: recover more ident reference checking

* dev: pass all tests

* Revert "dev: dirty changes"

This reverts commit 9ae2dacd0c96851e088feea76c61c184a1cf9722.

* test: update snapshot

* fix: bad cached signatures

* fix: slash problem
2024-10-25 23:52:11 +08:00
Myriad-Dreamin
66fff06dfe
build: bump tinymist to 0.12.0-rc1 (#708)
* feat: support nightly typst (#600)

* feat: support for custom certificate configuration (#592)

* feat: add certificate option

* refactor: move SystemCompilerFeat into tinymist-world

* feat: move HttpRegistry as HttpsRegistry into tinymist-world

* feat: add reading pem file

* feat: update LspUniverseBuilder::build

* feat: fill missing argument of LspUniverseBuilder::build

* chore: update lock file for additional dependencies

* chore:  refine comment for certification

* refactor: simplify by new constructor

* refactor: sort arguments for threaded_http

* refactor: split https.rs from lib.rs in tinymist-world

* feat: provide package view and local documentation (#596)

* feat: move featured components

* feat: provide package view and local documentation

* stage

* fix: compile error by merged commits

* fix: ignore system fonts correctly (#597)

* feat: adapt nightly typst

chore: use mainline typst

fix: `leaf_at` second parameter

fix: build `Engine`

fix: `interpret_mode_at` converage

feat: use my typst

fix: use `typst::trace` to trace

fix: frameitem

fix: new kinds

fix: new scope

fix: lazyhash

fix: result

fix: new SyntaxKinds

fix: utils, lazyhash

chore: remove useless imports

fix: sink

feat: frameitem

fix: export svg with page

fix: deref span

styl:

deps

fix: lazyhash

deps: use my typstyle

fix: enable contenthint with feature

fix: leaf_at side

fix: compile.output

deps

fix: warnings

deps: use new branch name

fix: fix merge error

ci: update ci branch

test: accept new test snap

fix: fix compile

deps: update typst

fix: fix compilation for latest tinymist

fix: fix tests

fix: fix tests

* chore: clean useless imports

---------

Co-authored-by: ricOC3 <100465762+ricOC3@users.noreply.github.com>
Co-authored-by: Myriad-Dreamin <35292584+Myriad-Dreamin@users.noreply.github.com>

* fix: compile warnings and errors

* fix: add round_2 back

* fix: pdf options

* build: bump version to 0.11.33

build: bump version to 0.11.31 (#652)

build: lock git branches

build: bump version to 0.11.23-rc1

dev: update cargo.toml

deps: update typst, typst.ts, typstyle to tagged version (#624)

build: bump version to 0.11.29 (#628)

dev: nightly-0.11.31 (#649)

* deps: update typst

* test: fix snapshot

fix: dependencies

dev: nightly 0.11.33 (#655)

* deps: update typst, typst.ts, typstyle

* test: fix test hash

* fix: compile error

* fix: errors

* build: bump typst to 0.12.0

* dev: final bumps

* build: bump version to 0.11.34-rc1

* build: update cargo.lock

* test: update snapshot

---------

Co-authored-by: ParaN3xus <136563585+ParaN3xus@users.noreply.github.com>
Co-authored-by: ricOC3 <100465762+ricOC3@users.noreply.github.com>
2024-10-19 18:32:37 +08:00
Myriad-Dreamin
d9d10df7a4
feat: provide parameter docs in hover tips (#702)
* feat: supports parameter docs

* dev: update snapshot
2024-10-17 19:21:33 +08:00
Myriad-Dreamin
e57cf36f9b
feat: render hover docs with converted result (#701)
* feat: render hover docs with converted result

* dev: update snapshot
2024-10-17 19:18:36 +08:00
Myriad-Dreamin
e35b9f9c73
feat: handle func.with stack during signature analysis (#699)
* fix: some cases of docs checking

* feat: check signature with binding stack

* feat: handle with stack

* dev: update snapshot

* dev: update snapshot
2024-10-17 18:57:17 +08:00
Myriad-Dreamin
39f343d536
feat: combine signature solving (#696)
* feat: combine signature solving

* dev: update snapshot

* dev: update snapshot
2024-10-17 18:45:52 +08:00
Myriad-Dreamin
02bbdbf8d9
feat: incorporated with static function signature analysis (#688)
* feat: finished function signature analysis

* dev: update snapshot

* dev: broken snapshot
2024-10-16 15:53:43 +08:00
Myriad-Dreamin
a3f100e7cb
refactor: change PrimarySignature structure to merge type checking info (#687)
* dev: support spread left params

* dev: stage merge

* dev: remove ParamSpecShort

* chore: remove useless code

* dev: merge all things back

* fix: testing

* fix: testing

* remove: useless method
2024-10-16 14:35:24 +08:00
Myriad-Dreamin
b9da92175e
dev: merge signature docs and rest docs (#685)
* dev: deduplicate code

* dev: merge signature docs and rest docs

* dev: change struct of the `DocString`

* dev: improve structure of SymbolDocs
2024-10-16 11:16:16 +08:00
Myriad-Dreamin
d121e8279d
refactor: split tinymist-query/docs crate (#684)
* dev: split docs code

* dev: rename a bit

* dev: refactor a bit
2024-10-15 22:58:27 +08:00
Myriad-Dreamin
957b58687e
feat: merge hover and docs function formatter (#683)
* feat: merge hover and docs function formatter

* dev: clean up a bit

* test: update snapshot
2024-10-15 21:31:13 +08:00
Myriad-Dreamin
c17e0c787e
feat: check variable type annotations in docstring (#681)
* feat: check variable type annotations in docstring

* dev: rollback playground changes

* dev: refactor a bit
2024-10-15 21:04:35 +08:00
Myriad-Dreamin
4aeb3747bc
feat: cache docstring building (Part. 2) (#680)
* feat: cache docstring building (Part. 2)

* dev: fix import

* dev: change some variable names
2024-10-15 18:50:43 +08:00
Myriad-Dreamin
3ed401740e
feat: read and check type annotations in docstring (Part. 1) (#679)
* feat: read and check type annotations in docstring

* fix: remove test.snap in playground

* chore: refactor and remove some dirty changes
2024-10-15 14:52:50 +08:00