From fcc12bd20e2dcd44919eb962443b3ed974683a13 Mon Sep 17 00:00:00 2001 From: Myriad-Dreamin Date: Tue, 9 Sep 2025 09:41:46 +0800 Subject: [PATCH] fix: compile with 0.6.1-rc3 g a --- Cargo.lock | 532 +++++++++++++++---- Cargo.toml | 53 +- crates/tinymist-analysis/src/upstream/mod.rs | 13 +- crates/tinymist-vfs/src/system.rs | 2 +- crates/tinymist-world/src/world.rs | 22 +- crates/typlite/src/parser/media.rs | 10 +- 6 files changed, 465 insertions(+), 167 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 68032204c..bff149b8d 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -825,7 +825,7 @@ dependencies = [ [[package]] name = "crityp" -version = "0.13.22" +version = "0.13.27" dependencies = [ "anyhow", "base64", @@ -834,8 +834,8 @@ dependencies = [ "criterion", "ecow", "insta", - "tinymist-project", - "tinymist-std", + "tinymist-project 0.13.16", + "tinymist-std 0.13.16", "typst 0.14.0", "typst-syntax 0.14.0", ] @@ -1761,7 +1761,7 @@ dependencies = [ "flate2", "hayro-syntax", "log", - "pdf-writer", + "pdf-writer 0.13.0", ] [[package]] @@ -2505,7 +2505,7 @@ dependencies = [ "image-webp 0.2.4", "imagesize", "once_cell", - "pdf-writer", + "pdf-writer 0.13.0", "png 0.17.16", "rayon", "rustc-hash 2.1.1", @@ -2947,6 +2947,18 @@ version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "df94ce210e5bc13cb6651479fa48d14f601d9858cfe0467f43ae157023b938d3" +[[package]] +name = "pdf-writer" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5df03c7d216de06f93f398ef06f1385a60f2c597bb96f8195c8d98e08a26b1d5" +dependencies = [ + "bitflags 2.9.4", + "itoa", + "memchr", + "ryu", +] + [[package]] name = "pdf-writer" version = "0.13.0" @@ -3025,6 +3037,15 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" +[[package]] +name = "pixglyph" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d15afa937836bf3d876f5a04ce28810c06045857bf46c3d0d31073b8aada5494" +dependencies = [ + "ttf-parser 0.24.1", +] + [[package]] name = "pixglyph" version = "0.6.0" @@ -3489,13 +3510,12 @@ dependencies = [ [[package]] name = "reflexo" -version = "0.6.1-rc2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49bb801abf7897f79246c3ad6f24a209946068cfcd7b5023a87b4e193c379036" +version = "0.6.1-rc3" +source = "git+https://github.com/ParaN3xus/typst.ts/?branch=nightly#0df6aae4fd903b5f1ed0d3355bbedaa354dcc42b" dependencies = [ "base64", "bitvec", - "comemo 0.4.0", + "comemo 0.5.0", "dashmap", "ecow", "fxhash", @@ -3509,19 +3529,18 @@ dependencies = [ "serde_with", "siphasher", "tiny-skia-path", - "tinymist-std", - "tinymist-world", - "typst 0.13.1", + "tinymist-std 0.13.24", + "tinymist-world 0.13.24", + "typst 0.14.0", ] [[package]] name = "reflexo-typst" -version = "0.6.1-rc2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52aec9144a211331de8a5c3049f6208a011ec237aea942a44d5fad348c85dcbc" +version = "0.6.1-rc3" +source = "git+https://github.com/ParaN3xus/typst.ts/?branch=nightly#0df6aae4fd903b5f1ed0d3355bbedaa354dcc42b" dependencies = [ "codespan-reporting", - "comemo 0.4.0", + "comemo 0.5.0", "ecow", "futures", "fxhash", @@ -3538,23 +3557,22 @@ dependencies = [ "serde", "serde_json", "tar", - "tinymist-project", - "tinymist-task", - "tinymist-world", + "tinymist-project 0.13.24", + "tinymist-task 0.13.24", + "tinymist-world 0.13.24", "tokio", - "typst 0.13.1", - "typst-eval 0.13.1", + "typst 0.14.0", + "typst-eval 0.14.0", "web-sys", ] [[package]] name = "reflexo-typst2vec" -version = "0.6.1-rc2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8cf52ed5c3ebb05573ee1b866726f42307de567eeb9bd26575f44e2bae52addc" +version = "0.6.1-rc3" +source = "git+https://github.com/ParaN3xus/typst.ts/?branch=nightly#0df6aae4fd903b5f1ed0d3355bbedaa354dcc42b" dependencies = [ "bitvec", - "comemo 0.4.0", + "comemo 0.5.0", "crossbeam-queue", "dashmap", "flate2", @@ -3569,23 +3587,24 @@ dependencies = [ "svgtypes", "tiny-skia", "tiny-skia-path", - "ttf-parser 0.24.1", - "typst 0.13.1", + "ttf-parser 0.25.1", + "typst 0.14.0", + "typst-html 0.14.0", + "typst-svg 0.14.0", "xmlparser", ] [[package]] name = "reflexo-vec2svg" -version = "0.6.1-rc2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee562f404dbb724c33361281eb5fca8f30fa7a50184c8d4fcfa9e336eda79c3c" +version = "0.6.1-rc3" +source = "git+https://github.com/ParaN3xus/typst.ts/?branch=nightly#0df6aae4fd903b5f1ed0d3355bbedaa354dcc42b" dependencies = [ "base64", - "comemo 0.4.0", + "comemo 0.5.0", "log", "reflexo", "reflexo-typst2vec", - "typst 0.13.1", + "typst 0.14.0", ] [[package]] @@ -4355,6 +4374,26 @@ version = "2.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" +[[package]] +name = "svg2pdf" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5014c9dadcf318fb7ef8c16438e95abcc9de1ae24d60d5bccc64c55100c50364" +dependencies = [ + "fontdb 0.21.0", + "image", + "log", + "miniz_oxide", + "once_cell", + "pdf-writer 0.12.1", + "resvg 0.43.0", + "siphasher", + "subsetter", + "tiny-skia", + "ttf-parser 0.24.1", + "usvg 0.43.0", +] + [[package]] name = "svgtypes" version = "0.15.3" @@ -4389,7 +4428,7 @@ dependencies = [ [[package]] name = "sync-ls" -version = "0.13.22" +version = "0.13.27" dependencies = [ "anyhow", "clap", @@ -4518,7 +4557,7 @@ dependencies = [ [[package]] name = "tests" -version = "0.13.22" +version = "0.13.27" dependencies = [ "insta", "insta-cmd", @@ -4526,7 +4565,7 @@ dependencies = [ "serde", "serde_json", "sync-ls", - "tinymist-std", + "tinymist-std 0.13.16", ] [[package]] @@ -4642,7 +4681,7 @@ dependencies = [ [[package]] name = "tinymist" -version = "0.13.22" +version = "0.13.27" dependencies = [ "anyhow", "async-trait", @@ -4684,16 +4723,16 @@ dependencies = [ "strum 0.26.3", "sync-ls", "temp-env", - "tinymist-assets 0.13.22 (registry+https://github.com/rust-lang/crates.io-index)", + "tinymist-assets 0.13.22", "tinymist-core", "tinymist-debug", - "tinymist-l10n", + "tinymist-l10n 0.13.16", "tinymist-preview", - "tinymist-project", + "tinymist-project 0.13.16", "tinymist-query", "tinymist-render", - "tinymist-std", - "tinymist-task", + "tinymist-std 0.13.16", + "tinymist-task 0.13.16", "tokio", "tokio-util", "toml", @@ -4702,9 +4741,9 @@ dependencies = [ "typst 0.14.0", "typst-ansi-hl", "typst-html 0.14.0", - "typst-pdf", - "typst-render", - "typst-shim", + "typst-pdf 0.14.0", + "typst-render 0.14.0", + "typst-shim 0.13.16", "typst-svg 0.14.0", "typst-timing 0.14.0", "typstfmt", @@ -4716,7 +4755,7 @@ dependencies = [ [[package]] name = "tinymist-analysis" -version = "0.13.22" +version = "0.13.27" dependencies = [ "comemo 0.5.0", "dashmap", @@ -4735,31 +4774,31 @@ dependencies = [ "serde", "serde_yaml", "strum 0.26.3", - "tinymist-derive", - "tinymist-std", - "tinymist-world", + "tinymist-derive 0.13.16", + "tinymist-std 0.13.16", + "tinymist-world 0.13.16", "toml", "triomphe", "typst 0.14.0", "typst-macros 0.14.0", - "typst-shim", + "typst-shim 0.13.16", "typst-timing 0.14.0", "unscanny", ] -[[package]] -name = "tinymist-assets" -version = "0.13.22" - [[package]] name = "tinymist-assets" version = "0.13.22" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "67f57fcd7639be764c7493e02c7119208982057bf313f64b3595814ec99d0431" +[[package]] +name = "tinymist-assets" +version = "0.13.27" + [[package]] name = "tinymist-bench-font-load" -version = "0.13.22" +version = "0.13.27" dependencies = [ "divan", "tinymist", @@ -4767,21 +4806,21 @@ dependencies = [ [[package]] name = "tinymist-core" -version = "0.13.22" +version = "0.13.27" dependencies = [ "anyhow", "cargo_metadata", "console_error_panic_hook", "js-sys", "reflexo-typst", - "tinymist-world", + "tinymist-world 0.13.16", "vergen", "wasm-bindgen", ] [[package]] name = "tinymist-dap" -version = "0.13.22" +version = "0.13.27" dependencies = [ "base64", "comemo 0.5.0", @@ -4792,15 +4831,15 @@ dependencies = [ "serde_json", "tinymist-analysis", "tinymist-debug", - "tinymist-std", - "tinymist-world", + "tinymist-std 0.13.16", + "tinymist-world 0.13.16", "typst 0.14.0", "typst-library 0.14.0", ] [[package]] name = "tinymist-debug" -version = "0.13.22" +version = "0.13.27" dependencies = [ "base64", "comemo 0.5.0", @@ -4810,8 +4849,8 @@ dependencies = [ "serde", "serde_json", "tinymist-analysis", - "tinymist-std", - "tinymist-world", + "tinymist-std 0.13.16", + "tinymist-world 0.13.16", "typst 0.14.0", "typst-library 0.14.0", ] @@ -4824,6 +4863,16 @@ dependencies = [ "syn 2.0.106", ] +[[package]] +name = "tinymist-derive" +version = "0.13.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff3a5322833d5cf1d8d4230b32d1817f861af0aa472f68dc8b135653e78f331f" +dependencies = [ + "quote", + "syn 2.0.106", +] + [[package]] name = "tinymist-l10n" version = "0.13.16" @@ -4838,16 +4887,31 @@ dependencies = [ "walkdir", ] +[[package]] +name = "tinymist-l10n" +version = "0.13.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ec50384638f9fd5a5ee23f8848278895fbfe050df92dcf881eba6138daac5ca" +dependencies = [ + "anyhow", + "clap", + "ecow", + "rayon", + "rustc-hash 2.1.1", + "serde_json", + "walkdir", +] + [[package]] name = "tinymist-lint" -version = "0.13.22" +version = "0.13.27" dependencies = [ "comemo 0.5.0", "insta", "rayon", "tinymist-analysis", - "tinymist-project", - "tinymist-std", + "tinymist-project 0.13.16", + "tinymist-std 0.13.16", "typst 0.14.0", "typst-library 0.14.0", ] @@ -4871,7 +4935,7 @@ dependencies = [ "serde", "serde_json", "tar", - "tinymist-std", + "tinymist-std 0.13.16", "toml", "typst 0.14.0", "walkdir", @@ -4879,9 +4943,36 @@ dependencies = [ "web-sys", ] +[[package]] +name = "tinymist-package" +version = "0.13.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "18e75a2aa5d6c1e6e223c23445ae9f691457bcadb0de3e0e9fe2ff0564452d3e" +dependencies = [ + "base64", + "comemo 0.4.0", + "dirs", + "ecow", + "flate2", + "js-sys", + "log", + "parking_lot", + "rayon", + "reqwest", + "serde", + "serde_json", + "tar", + "tinymist-std 0.13.24", + "toml", + "typst 0.13.1", + "walkdir", + "wasm-bindgen", + "web-sys", +] + [[package]] name = "tinymist-preview" -version = "0.13.22" +version = "0.13.27" dependencies = [ "clap", "comemo 0.5.0", @@ -4894,8 +4985,8 @@ dependencies = [ "reflexo-vec2svg", "serde", "serde_json", - "tinymist-assets 0.13.22 (registry+https://github.com/rust-lang/crates.io-index)", - "tinymist-std", + "tinymist-assets 0.13.22", + "tinymist-std 0.13.16", "tokio", "typst 0.14.0", "typst-assets 0.13.1 (git+https://github.com/typst/typst-assets?rev=edf0d64)", @@ -4920,20 +5011,50 @@ dependencies = [ "semver", "serde", "serde_json", - "tinymist-derive", - "tinymist-l10n", - "tinymist-std", - "tinymist-task", - "tinymist-world", + "tinymist-derive 0.13.16", + "tinymist-l10n 0.13.16", + "tinymist-std 0.13.16", + "tinymist-task 0.13.16", + "tinymist-world 0.13.16", "tokio", "toml", "typst 0.14.0", "typst-assets 0.13.1 (git+https://github.com/typst/typst-assets?rev=edf0d64)", ] +[[package]] +name = "tinymist-project" +version = "0.13.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3193fe229a33b5ad9bae801e83cbed1f42fdb929ac34358e0415862e366e1019" +dependencies = [ + "anyhow", + "clap", + "comemo 0.4.0", + "dirs", + "ecow", + "log", + "notify", + "parking_lot", + "rayon", + "rpds", + "semver", + "serde", + "serde_json", + "tinymist-derive 0.13.24", + "tinymist-l10n 0.13.24", + "tinymist-std 0.13.24", + "tinymist-task 0.13.24", + "tinymist-world 0.13.24", + "tokio", + "toml", + "typst 0.13.1", + "typst-assets 0.13.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "tinymist-query" -version = "0.13.22" +version = "0.13.27" dependencies = [ "anyhow", "base64", @@ -4965,20 +5086,20 @@ dependencies = [ "siphasher", "strum 0.26.3", "tinymist-analysis", - "tinymist-derive", - "tinymist-l10n", + "tinymist-derive 0.13.16", + "tinymist-l10n 0.13.16", "tinymist-lint", - "tinymist-project", - "tinymist-std", + "tinymist-project 0.13.16", + "tinymist-std 0.13.16", "tinymist-tests", - "tinymist-world", + "tinymist-world 0.13.16", "toml", "ttf-parser 0.25.1", "typlite", "typst 0.14.0", "typst-assets 0.13.1 (git+https://github.com/typst/typst-assets?rev=edf0d64)", "typst-macros 0.14.0", - "typst-shim", + "typst-shim 0.13.16", "typst-timing 0.14.0", "unscanny", "walkdir", @@ -4987,7 +5108,7 @@ dependencies = [ [[package]] name = "tinymist-render" -version = "0.13.22" +version = "0.13.27" dependencies = [ "base64", "log", @@ -4995,7 +5116,7 @@ dependencies = [ "reflexo-vec2svg", "serde", "tinymist-query", - "tinymist-std", + "tinymist-std 0.13.16", ] [[package]] @@ -5030,7 +5151,45 @@ dependencies = [ "time", "typst 0.14.0", "typst-html 0.14.0", - "typst-shim", + "typst-shim 0.13.16", + "wasm-bindgen", + "web-time", + "windows-sys 0.59.0", +] + +[[package]] +name = "tinymist-std" +version = "0.13.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d600d9692370412528714a508c6601202ff2e8f1e74da715dd09d32fd5e78b95" +dependencies = [ + "anyhow", + "base64", + "bitvec", + "comemo 0.4.0", + "core-foundation", + "dashmap", + "ecow", + "fxhash", + "js-sys", + "libc", + "log", + "lsp-types", + "parking_lot", + "path-clean", + "pathdiff", + "rkyv", + "rustc-hash 2.1.1", + "same-file", + "serde", + "serde_json", + "serde_repr", + "serde_with", + "siphasher", + "tempfile", + "time", + "typst 0.13.1", + "typst-shim 0.13.24", "wasm-bindgen", "web-time", "windows-sys 0.59.0", @@ -5054,31 +5213,66 @@ dependencies = [ "serde", "serde_json", "serde_yaml", - "tinymist-derive", - "tinymist-std", - "tinymist-world", + "tinymist-derive 0.13.16", + "tinymist-std 0.13.16", + "tinymist-world 0.13.16", "tokio", "toml", "typst 0.14.0", "typst-assets 0.13.1 (git+https://github.com/typst/typst-assets?rev=edf0d64)", "typst-eval 0.14.0", "typst-html 0.14.0", - "typst-pdf", - "typst-render", - "typst-shim", + "typst-pdf 0.14.0", + "typst-render 0.14.0", + "typst-shim 0.13.16", "typst-svg 0.14.0", ] +[[package]] +name = "tinymist-task" +version = "0.13.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3def345b371706618f0ba58b5497a460224d04fb67cd2d29750fbae27a9fda55" +dependencies = [ + "anyhow", + "clap", + "comemo 0.4.0", + "dirs", + "ecow", + "log", + "notify", + "parking_lot", + "rayon", + "rpds", + "semver", + "serde", + "serde_json", + "serde_yaml", + "tinymist-derive 0.13.24", + "tinymist-std 0.13.24", + "tinymist-world 0.13.24", + "tokio", + "toml", + "typst 0.13.1", + "typst-assets 0.13.1 (registry+https://github.com/rust-lang/crates.io-index)", + "typst-eval 0.13.1", + "typst-html 0.13.1", + "typst-pdf 0.13.1", + "typst-render 0.13.1", + "typst-shim 0.13.24", + "typst-svg 0.13.1", +] + [[package]] name = "tinymist-tests" -version = "0.13.22" +version = "0.13.27" dependencies = [ "comemo 0.5.0", "insta", "rayon", "tinymist-analysis", - "tinymist-project", - "tinymist-std", + "tinymist-project 0.13.16", + "tinymist-std 0.13.16", "typst 0.14.0", ] @@ -5094,12 +5288,32 @@ dependencies = [ "nohash-hasher", "parking_lot", "rpds", - "tinymist-std", + "tinymist-std 0.13.16", "typst 0.14.0", "wasm-bindgen", "web-sys", ] +[[package]] +name = "tinymist-vfs" +version = "0.13.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "487b3954f1bb6810f5e3672062ffbe6e231486bdfb90e9dffa6e83e97fc45b30" +dependencies = [ + "comemo 0.4.0", + "ecow", + "indexmap 2.11.4", + "js-sys", + "log", + "nohash-hasher", + "parking_lot", + "rpds", + "tinymist-std 0.13.24", + "typst 0.13.1", + "wasm-bindgen", + "web-sys", +] + [[package]] name = "tinymist-world" version = "0.13.16" @@ -5128,9 +5342,9 @@ dependencies = [ "sha2", "strum 0.26.3", "tar", - "tinymist-package", - "tinymist-std", - "tinymist-vfs", + "tinymist-package 0.13.16", + "tinymist-std 0.13.16", + "tinymist-vfs 0.13.16", "ttf-parser 0.25.1", "typst 0.14.0", "typst-assets 0.13.1 (git+https://github.com/typst/typst-assets?rev=edf0d64)", @@ -5138,6 +5352,46 @@ dependencies = [ "web-sys", ] +[[package]] +name = "tinymist-world" +version = "0.13.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc44037f9c5d3250f758323ef69b8d787cafdb0a17fa6365fbc11c961cbcac48" +dependencies = [ + "anyhow", + "chrono", + "clap", + "codespan-reporting", + "comemo 0.4.0", + "dirs", + "ecow", + "flate2", + "fontdb 0.21.0", + "hex", + "js-sys", + "log", + "lsp-types", + "parking_lot", + "rayon", + "reqwest", + "rpds", + "serde", + "serde-wasm-bindgen", + "serde_json", + "serde_with", + "sha2", + "strum 0.26.3", + "tar", + "tinymist-package 0.13.24", + "tinymist-std 0.13.24", + "tinymist-vfs 0.13.24", + "ttf-parser 0.24.1", + "typst 0.13.1", + "typst-assets 0.13.1 (registry+https://github.com/rust-lang/crates.io-index)", + "wasm-bindgen", + "web-sys", +] + [[package]] name = "tinystr" version = "0.7.6" @@ -5441,7 +5695,7 @@ checksum = "1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f" [[package]] name = "typlite" -version = "0.13.22" +version = "0.13.27" dependencies = [ "base64", "clap", @@ -5453,9 +5707,9 @@ dependencies = [ "insta", "regex", "resvg 0.43.0", - "tinymist-derive", - "tinymist-project", - "tinymist-std", + "tinymist-derive 0.13.16", + "tinymist-project 0.13.16", + "tinymist-std 0.13.16", "tinymist-tests", "typst 0.14.0", "typst-html 0.14.0", @@ -5820,6 +6074,34 @@ dependencies = [ "syn 2.0.106", ] +[[package]] +name = "typst-pdf" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a78718a94c28b5ed5e9ee9826fa995004a81abbcc1c9d0e88a7e87656cbec5a4" +dependencies = [ + "arrayvec", + "base64", + "bytemuck", + "comemo 0.4.0", + "ecow", + "image", + "indexmap 2.11.4", + "miniz_oxide", + "pdf-writer 0.12.1", + "serde", + "subsetter", + "svg2pdf", + "ttf-parser 0.24.1", + "typst-assets 0.13.1 (registry+https://github.com/rust-lang/crates.io-index)", + "typst-library 0.13.1", + "typst-macros 0.13.1", + "typst-syntax 0.13.1", + "typst-timing 0.13.1", + "typst-utils 0.13.1", + "xmp-writer", +] + [[package]] name = "typst-pdf" version = "0.14.0" @@ -5877,6 +6159,24 @@ dependencies = [ "typst-utils 0.14.0", ] +[[package]] +name = "typst-render" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2e76277edcc37998910fa4a2e403056cdadd25e0f85dfbef1e98ac0377d9f04e" +dependencies = [ + "bytemuck", + "comemo 0.4.0", + "image", + "pixglyph 0.5.1", + "resvg 0.43.0", + "tiny-skia", + "ttf-parser 0.24.1", + "typst-library 0.13.1", + "typst-macros 0.13.1", + "typst-timing 0.13.1", +] + [[package]] name = "typst-render" version = "0.14.0" @@ -5886,7 +6186,7 @@ dependencies = [ "comemo 0.5.0", "hayro", "image", - "pixglyph", + "pixglyph 0.6.0", "resvg 0.45.1", "tiny-skia", "ttf-parser 0.25.1", @@ -5907,6 +6207,19 @@ dependencies = [ "typst-syntax 0.14.0", ] +[[package]] +name = "typst-shim" +version = "0.13.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c89d5b1e2bd02f4787d30261f50b158d598d89b6f8bc4151e02e431f0bf860ac" +dependencies = [ + "cfg-if", + "comemo 0.4.0", + "typst 0.13.1", + "typst-eval 0.13.1", + "typst-syntax 0.13.1", +] + [[package]] name = "typst-svg" version = "0.13.1" @@ -7169,18 +7482,3 @@ checksum = "29ce2c8a9384ad323cf564b67da86e21d3cfdff87908bc1223ed5c99bc792713" dependencies = [ "zune-core", ] - -[[patch.unused]] -name = "reflexo" -version = "0.6.1-rc3" -source = "git+https://github.com/ParaN3xus/typst.ts/?branch=nightly#96ff8a8ea19f6ed6837a26806c35cd7ade206513" - -[[patch.unused]] -name = "reflexo-typst" -version = "0.6.1-rc3" -source = "git+https://github.com/ParaN3xus/typst.ts/?branch=nightly#96ff8a8ea19f6ed6837a26806c35cd7ade206513" - -[[patch.unused]] -name = "reflexo-vec2svg" -version = "0.6.1-rc3" -source = "git+https://github.com/ParaN3xus/typst.ts/?branch=nightly#96ff8a8ea19f6ed6837a26806c35cd7ade206513" diff --git a/Cargo.toml b/Cargo.toml index 97432ad07..e63aef790 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,8 +1,8 @@ [workspace.package] description = "An integrated language service for Typst." authors = ["Myriad-Dreamin ", "Nathan Varner"] -version = "0.13.22" -edition = "2021" +version = "0.13.27" +edition = "2024" readme = "README.md" license = "Apache-2.0" homepage = "https://github.com/Myriad-Dreamin/tinymist" @@ -137,12 +137,11 @@ env_logger = "0.11.3" log = "0.4" # Typst -reflexo = { version = "=0.6.1-rc2", default-features = false, features = [ +reflexo = { version = "=0.6.1-rc3", default-features = false, features = [ "flat-vector", ] } -reflexo-typst = { version = "=0.6.1-rc2", default-features = false } -reflexo-vec2svg = { version = "=0.6.1-rc2" } - +reflexo-typst = { version = "=0.6.1-rc3", default-features = false } +reflexo-vec2svg = { version = "=0.6.1-rc3" } typst = "0.14.0" typst-html = "0.14.0" typst-library = "0.14.0" @@ -200,16 +199,16 @@ typst-shim = { path = "./crates/typst-shim", version = "0.13.16" } tinymist-tests = { path = "./crates/tinymist-tests/" } -sync-ls = { path = "./crates/sync-lsp", version = "0.13.22" } -tinymist = { path = "./crates/tinymist/", version = "0.13.22" } -tinymist-analysis = { path = "./crates/tinymist-analysis/", version = "0.13.22" } -tinymist-core = { path = "./crates/tinymist-core/", version = "0.13.22", default-features = false } -tinymist-debug = { path = "./crates/tinymist-debug/", version = "0.13.22" } -tinymist-lint = { path = "./crates/tinymist-lint/", version = "0.13.22" } -tinymist-query = { path = "./crates/tinymist-query/", version = "0.13.22" } -tinymist-render = { path = "./crates/tinymist-render/", version = "0.13.22" } -tinymist-preview = { path = "./crates/typst-preview", version = "0.13.22" } -typlite = { path = "./crates/typlite", version = "0.13.22", default-features = false } +sync-ls = { path = "./crates/sync-lsp", version = "0.13.27" } +tinymist = { path = "./crates/tinymist/", version = "0.13.27", default-features = false } +tinymist-analysis = { path = "./crates/tinymist-analysis/", version = "0.13.27" } +tinymist-core = { path = "./crates/tinymist-core/", version = "0.13.27", default-features = false } +tinymist-debug = { path = "./crates/tinymist-debug/", version = "0.13.27" } +tinymist-lint = { path = "./crates/tinymist-lint/", version = "0.13.27" } +tinymist-query = { path = "./crates/tinymist-query/", version = "0.13.27" } +tinymist-render = { path = "./crates/tinymist-render/", version = "0.13.27" } +tinymist-preview = { path = "./crates/typst-preview", version = "0.13.27" } +typlite = { path = "./crates/typlite", version = "0.13.27", default-features = false } [profile.dev.package.insta] opt-level = 3 @@ -271,7 +270,7 @@ extend-exclude = ["/.git", "fixtures"] # However, it is not suggested to install it in that way. The suggested ways are: # - Installation: https://github.com/Myriad-Dreamin/tinymist?tab=readme-ov-file#installation # - Installing pre-built artifacts from GitHub : https://github.com/Myriad-Dreamin/tinymist?tab=readme-ov-file#installing-regularnightly-prebuilds-from-github -# tinymist-assets = { path = "./crates/tinymist-assets/" } +tinymist-assets = { path = "./crates/tinymist-assets/" } # These patches use a different version of `typst`, which only exports some private functions and information for code analysis. # @@ -313,16 +312,6 @@ reflexo-vec2svg = { git = "https://github.com/ParaN3xus/typst.ts/", branch = "ni # reflexo-typst = { path = "../typst.ts/crates/reflexo-typst/" } # reflexo-vec2svg = { path = "../typst.ts/crates/conversion/vec2svg/" } -typst-shim = { path = "crates/typst-shim" } -tinymist-analysis = { path = "crates/tinymist-analysis" } -tinymist-std = { path = "crates/tinymist-std" } -tinymist-vfs = { path = "crates/tinymist-vfs" } -tinymist-world = { path = "crates/tinymist-world" } -tinymist-project = { path = "crates/tinymist-project" } -tinymist-task = { path = "crates/tinymist-task" } - -# If reflexo use the tinymist from git, you should use the following patch. -# [patch."https://github.com/Myriad-Dreamin/tinymist.git"] # typst-shim = { path = "crates/typst-shim" } # tinymist-analysis = { path = "crates/tinymist-analysis" } # tinymist-std = { path = "crates/tinymist-std" } @@ -330,3 +319,13 @@ tinymist-task = { path = "crates/tinymist-task" } # tinymist-world = { path = "crates/tinymist-world" } # tinymist-project = { path = "crates/tinymist-project" } # tinymist-task = { path = "crates/tinymist-task" } + +# If reflexo use the tinymist from git, you should use the following patch. +[patch."https://github.com/ParaN3xus/tinymist.git"] +typst-shim = { path = "crates/typst-shim" } +tinymist-analysis = { path = "crates/tinymist-analysis" } +tinymist-std = { path = "crates/tinymist-std" } +tinymist-vfs = { path = "crates/tinymist-vfs" } +tinymist-world = { path = "crates/tinymist-world" } +tinymist-project = { path = "crates/tinymist-project" } +tinymist-task = { path = "crates/tinymist-task" } diff --git a/crates/tinymist-analysis/src/upstream/mod.rs b/crates/tinymist-analysis/src/upstream/mod.rs index 35cfefc23..008e6e321 100644 --- a/crates/tinymist-analysis/src/upstream/mod.rs +++ b/crates/tinymist-analysis/src/upstream/mod.rs @@ -1,23 +1,24 @@ //! Functions from typst-ide +mod tooltip; + +pub use tooltip::{Tooltip, tooltip_}; + use std::{collections::HashMap, fmt::Write, sync::LazyLock}; use comemo::Tracked; -use ecow::{eco_format, EcoString}; +use ecow::{EcoString, eco_format}; use serde::Deserialize; use serde_yaml as yaml; use typst::{ - diag::{bail, StrResult}, + Category, Library, LibraryExt, World, + diag::{StrResult, bail}, foundations::{Binding, Content, Func, Module, Type, Value}, introspection::MetadataElem, syntax::Span, text::{FontInfo, FontStyle}, - Category, Library, LibraryExt, World, }; -mod tooltip; -pub use tooltip::*; - /// Extract the first sentence of plain text of a piece of documentation. /// /// Removes Markdown formatting. diff --git a/crates/tinymist-vfs/src/system.rs b/crates/tinymist-vfs/src/system.rs index 1f431e860..ac153f0de 100644 --- a/crates/tinymist-vfs/src/system.rs +++ b/crates/tinymist-vfs/src/system.rs @@ -57,7 +57,7 @@ impl LazyFile { impl ReadAllOnce for LazyFile { fn read_all(mut self, buf: &mut Vec) -> std::io::Result { let file = self.file.get_or_insert_with(|| File::open(&self.path)); - let Ok(ref mut file) = file else { + let Ok(file) = file else { let err = file.as_ref().unwrap_err(); // todo: clone error or hide error return Err(std::io::Error::new(err.kind(), err.to_string())); diff --git a/crates/tinymist-world/src/world.rs b/crates/tinymist-world/src/world.rs index 7745d75c5..0c9af5192 100644 --- a/crates/tinymist-world/src/world.rs +++ b/crates/tinymist-world/src/world.rs @@ -7,33 +7,33 @@ use std::{ }; use crate::{ + CompileSnapshot, MEMORY_MAIN_ENTRY, package::{PackageRegistry, PackageSpec}, source::SourceDb, - CompileSnapshot, MEMORY_MAIN_ENTRY, }; use crate::{ - parser::{ - get_semantic_tokens_full, get_semantic_tokens_legend, OffsetEncoding, SemanticToken, - SemanticTokensLegend, - }, WorldComputeGraph, + parser::{ + OffsetEncoding, SemanticToken, SemanticTokensLegend, get_semantic_tokens_full, + get_semantic_tokens_legend, + }, }; use ecow::EcoVec; -use tinymist_std::{error::prelude::*, ImmutPath}; +use tinymist_std::{ImmutPath, error::prelude::*}; use tinymist_vfs::{ FileId, FsProvider, PathResolution, RevisingVfs, SourceCache, Vfs, WorkspaceResolver, }; use typst::{ - diag::{eco_format, At, EcoString, FileError, FileResult, SourceResult}, + Features, Library, LibraryExt, World, WorldExt, + diag::{At, EcoString, FileError, FileResult, SourceResult, eco_format}, foundations::{Bytes, Datetime, Dict}, syntax::{Source, Span, VirtualPath}, text::{Font, FontBook}, utils::LazyHash, - Features, Library, LibraryExt, World, WorldExt, }; // use crate::source::{SharedState, SourceCache, SourceDb}; -use crate::entry::{EntryManager, EntryReader, EntryState, DETACHED_ENTRY}; -use crate::{font::FontResolver, CompilerFeat, ShadowApi, WorldDeps}; +use crate::entry::{DETACHED_ENTRY, EntryManager, EntryReader, EntryState}; +use crate::{CompilerFeat, ShadowApi, WorldDeps, font::FontResolver}; type CodespanResult = Result; type CodespanError = codespan_reporting::files::Error; @@ -807,7 +807,7 @@ impl World for CompilerWorld { /// return an error. #[cfg(not(any(feature = "web", feature = "system")))] fn today(&self, offset: Option) -> Option { - use tinymist_std::time::{now, to_typst_time, Duration}; + use tinymist_std::time::{Duration, now, to_typst_time}; let now = self.now.get_or_init(|| { if let Some(timestamp) = self.creation_timestamp { diff --git a/crates/typlite/src/parser/media.rs b/crates/typlite/src/parser/media.rs index d83ef5fbd..041a82f1d 100644 --- a/crates/typlite/src/parser/media.rs +++ b/crates/typlite/src/parser/media.rs @@ -5,20 +5,20 @@ use std::path::PathBuf; use std::sync::{Arc, LazyLock}; use crate::{ - attributes::{md_attr, IdocAttr, TypliteAttrsParser}, - common::ExternalFrameNode, ColorTheme, + attributes::{IdocAttr, TypliteAttrsParser, md_attr}, + common::ExternalFrameNode, }; use base64::Engine; use cmark_writer::ast::{HtmlAttribute, HtmlElement as CmarkHtmlElement, Node}; -use ecow::{eco_format, EcoString}; +use ecow::{EcoString, eco_format}; use tinymist_project::system::print_diagnostics_to_string; -use tinymist_project::{base::ShadowApi, EntryReader, TaskInputs, MEMORY_MAIN_ENTRY}; +use tinymist_project::{EntryReader, MEMORY_MAIN_ENTRY, TaskInputs, base::ShadowApi}; use typst::{ + World, foundations::{Bytes, Dict, IntoValue}, layout::{Abs, Frame}, utils::LazyHash, - World, }; use typst_html::{HtmlElement, HtmlNode};