Skip to content

Commit

Permalink
build: bump tinymist to 0.12.0-rc1 (#708)
Browse files Browse the repository at this point in the history
* 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 <[email protected]>
Co-authored-by: Myriad-Dreamin <[email protected]>

* 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 <[email protected]>
Co-authored-by: ricOC3 <[email protected]>
  • Loading branch information
3 people authored Oct 19, 2024
1 parent d9d10df commit 66fff06
Show file tree
Hide file tree
Showing 41 changed files with 1,935 additions and 1,116 deletions.
974 changes: 651 additions & 323 deletions Cargo.lock

Large diffs are not rendered by default.

60 changes: 32 additions & 28 deletions Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[workspace.package]
description = "An integrated language service for Typst."
authors = ["Myriad-Dreamin <[email protected]>", "Nathan Varner"]
version = "0.11.32"
version = "0.11.34-rc1"
edition = "2021"
readme = "README.md"
license = "Apache-2.0"
Expand Down Expand Up @@ -91,31 +91,34 @@ env_logger = "0.11.3"
log = "0.4"

# Typst
reflexo = { version = "0.5.0-rc7", default-features = false, features = [
reflexo = { version = "0.5.0-rc8", default-features = false, features = [
"flat-vector",
] }
reflexo-world = { version = "0.5.0-rc7", features = ["system"] }
reflexo-typst = { version = "0.5.0-rc7", features = [
reflexo-world = { version = "0.5.0-rc8", features = ["system"] }
reflexo-typst = { version = "0.5.0-rc8", features = [
"system",
], default-features = false }
reflexo-vec2svg = { version = "0.5.0-rc7" }
typst = "0.11.1"
typst-timing = "0.11.1"
typst-pdf = "0.11.1"
typst-svg = "0.11.1"
typst-render = "0.11.1"
typst-assets = "0.11.1"
typst-syntax = "0.11.1"
reflexo-vec2svg = { version = "0.5.0-rc8" }
reflexo-typst-shim = { version = "0.5.0-rc8", features = ["nightly"] }


typst = "0.12.0"
typst-timing = "0.12.0"
typst-svg = "0.12.0"
typst-render = "0.12.0"
typst-pdf = "0.12.0"
typst-syntax = "0.12.0"
typst-assets = "0.12.0"
typstfmt_lib = { git = "https://github.com/astrale-sharp/typstfmt", tag = "0.2.7" }
typstyle = { version = "0.11.32", default-features = false }
typstyle = { version = "0.12.0", default-features = false }
typlite = { path = "./crates/typlite" }
typst-shim = { path = "./crates/typst-shim", features = [] }
typst-shim = { path = "./crates/typst-shim", features = ["nightly"] }

# LSP
crossbeam-channel = "0.5.12"
lsp-server = "0.7.6"
lsp-types = { version = "=0.95.0", features = ["proposed"] }
sync-lsp = { path = "./crates/sync-lsp" }
sync-lsp = { path = "./crates/sync-lsp", features = ["clap"] }

# CLI
clap = { version = "4.5", features = ["derive", "env", "unicode", "wrap_help"] }
Expand All @@ -137,9 +140,10 @@ dhat = "0.3.3"
divan = "0.1.14"
insta = { version = "1.39", features = ["glob"] }


# Our Own Crates
typst-preview = { path = "./crates/typst-preview/" }
tinymist-assets = { version = "0.11.32" }
typst-preview = { path = "./crates/typst-preview" }
tinymist-assets = { version = "0.11.34-rc1" }
tinymist = { path = "./crates/tinymist/" }
tinymist-derive = { path = "./crates/tinymist-derive/" }
tinymist-analysis = { path = "./crates/tinymist-analysis/" }
Expand Down Expand Up @@ -176,12 +180,12 @@ undocumented_unsafe_blocks = "warn"

# tinymist-assets = { path = "./crates/tinymist-assets/" }

typst = { git = "https://github.com/Myriad-Dreamin/typst.git", branch = "tinymist-v0.11.30" }
typst-timing = { git = "https://github.com/Myriad-Dreamin/typst.git", branch = "tinymist-v0.11.30" }
typst-svg = { git = "https://github.com/Myriad-Dreamin/typst.git", branch = "tinymist-v0.11.30" }
typst-render = { git = "https://github.com/Myriad-Dreamin/typst.git", branch = "tinymist-v0.11.30" }
typst-pdf = { git = "https://github.com/Myriad-Dreamin/typst.git", branch = "tinymist-v0.11.30" }
typst-syntax = { git = "https://github.com/Myriad-Dreamin/typst.git", branch = "tinymist-v0.11.30" }
typst = { git = "https://github.com/Myriad-Dreamin/typst.git", branch = "tinymist-v0.12.0-rc1" }
typst-timing = { git = "https://github.com/Myriad-Dreamin/typst.git", branch = "tinymist-v0.12.0-rc1" }
typst-svg = { git = "https://github.com/Myriad-Dreamin/typst.git", branch = "tinymist-v0.12.0-rc1" }
typst-render = { git = "https://github.com/Myriad-Dreamin/typst.git", branch = "tinymist-v0.12.0-rc1" }
typst-pdf = { git = "https://github.com/Myriad-Dreamin/typst.git", branch = "tinymist-v0.12.0-rc1" }
typst-syntax = { git = "https://github.com/Myriad-Dreamin/typst.git", branch = "tinymist-v0.12.0-rc1" }

# typst = { path = "../typst/crates/typst" }
# typst-timing = { path = "../typst/crates/typst-timing" }
Expand All @@ -190,11 +194,11 @@ typst-syntax = { git = "https://github.com/Myriad-Dreamin/typst.git", branch = "
# typst-render = { path = "../typst/crates/typst-render" }
# typst-syntax = { path = "../typst/crates/typst-syntax" }

# typst-ts-svg-exporter = { git = "https://github.com/Myriad-Dreamin/typst.ts/", rev = "11b1ef0909ee6ded49eb84db999af14276125a62" }
# reflexo = { git = "https://github.com/Myriad-Dreamin/typst.ts/", rev = "11b1ef0909ee6ded49eb84db999af14276125a62" }
# reflexo-world = { git = "https://github.com/Myriad-Dreamin/typst.ts/", rev = "11b1ef0909ee6ded49eb84db999af14276125a62" }
# typst-ts-core = { git = "https://github.com/Myriad-Dreamin/typst.ts/", rev = "11b1ef0909ee6ded49eb84db999af14276125a62" }
# typst-ts-compiler = { git = "https://github.com/Myriad-Dreamin/typst.ts/", rev = "11b1ef0909ee6ded49eb84db999af14276125a62" }
# reflexo = { git = "https://github.com/Myriad-Dreamin/typst.ts/", rev = "5b79e34ad52d0418e22e88966e52d984a9fde110" }
# reflexo-world = { git = "https://github.com/Myriad-Dreamin/typst.ts/", rev = "5b79e34ad52d0418e22e88966e52d984a9fde110" }
# reflexo-typst = { git = "https://github.com/Myriad-Dreamin/typst.ts/", rev = "5b79e34ad52d0418e22e88966e52d984a9fde110" }
# reflexo-vec2svg = { git = "https://github.com/Myriad-Dreamin/typst.ts/", rev = "5b79e34ad52d0418e22e88966e52d984a9fde110" }
# reflexo-typst-shim = { git = "https://github.com/Myriad-Dreamin/typst.ts/", rev = "5b79e34ad52d0418e22e88966e52d984a9fde110" }

# typst-ts-svg-exporter = { path = "../typst.ts/exporter/svg" }
# reflexo = { path = "../typst.ts/crates/reflexo/" }
Expand Down
7 changes: 7 additions & 0 deletions crates/tinymist-query/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,12 @@ edition.workspace = true
homepage.workspace = true
repository.workspace = true

[features]
default = ["no-content-hint"]

no-content-hint = ["reflexo-typst/no-content-hint"]


[dependencies]

anyhow.workspace = true
Expand Down Expand Up @@ -38,6 +44,7 @@ typst.workspace = true

reflexo.workspace = true
typst-shim.workspace = true
reflexo-typst.workspace = true

lsp-types.workspace = true
if_chain.workspace = true
Expand Down
10 changes: 6 additions & 4 deletions crates/tinymist-query/src/analysis/global.rs
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@ use reflexo::{debug_loc::DataSource, ImmutPath};
use tinymist_world::LspWorld;
use tinymist_world::DETACHED_ENTRY;
use typst::diag::{eco_format, At, FileError, FileResult, PackageError, SourceResult};
use typst::engine::Route;
use typst::eval::{Eval, Tracer};
use typst::engine::{Route, Sink, Traced};
use typst::eval::Eval;
use typst::foundations::{Bytes, Module, Styles};
use typst::layout::Position;
use typst::syntax::{package::PackageSpec, Span, VirtualPath};
Expand Down Expand Up @@ -343,12 +343,14 @@ impl<'w> AnalysisContext<'w> {
/// Get (Create) a module by source.
pub fn module_by_src(&self, source: Source) -> SourceResult<Module> {
let route = Route::default();
let mut tracer = Tracer::default();
let traced = Traced::default();
let mut sink = Sink::default();

typst::eval::eval(
(self.world() as &dyn World).track(),
traced.track(),
sink.track_mut(),
route.track(),
tracer.track_mut(),
&source,
)
}
Expand Down
34 changes: 17 additions & 17 deletions crates/tinymist-query/src/analysis/track_values.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,10 @@
use comemo::Track;
use ecow::*;
use typst::engine::{Engine, Route};
use typst::eval::{Tracer, Vm};
use typst::engine::{Engine, Route, Sink, Traced};
use typst::eval::Vm;
use typst::foundations::{Context, Label, Scopes, Styles, Value};
use typst::introspection::{Introspector, Locator};
use typst::introspection::Introspector;
use typst::model::{BibliographyElem, Document};
use typst::syntax::{ast, LinkedNode, Span, SyntaxKind};
use typst::World;
Expand Down Expand Up @@ -37,10 +37,7 @@ pub fn analyze_expr_(world: &dyn World, node: &LinkedNode) -> EcoVec<(Value, Opt
}
}

let mut tracer = Tracer::new();
tracer.inspect(node.span());
typst::compile(world, &mut tracer).ok();
return tracer.values();
return typst::trace(world, node.span());
}
};

Expand All @@ -49,21 +46,22 @@ pub fn analyze_expr_(world: &dyn World, node: &LinkedNode) -> EcoVec<(Value, Opt

/// Try to load a module from the current source file.
pub fn analyze_import_(world: &dyn World, source: &LinkedNode) -> Option<Value> {
// Use span in the node for resolving imports with relative paths.
let source_span = source.span();
let (source, _) = analyze_expr_(world, source).into_iter().next()?;
if source.scope().is_some() {
return Some(source);
}

let mut locator = Locator::default();
let introspector = Introspector::default();
let mut tracer = Tracer::new();
let traced = Traced::default();
let mut sink = Sink::new();
let engine = Engine {
world: world.track(),
route: Route::default(),
introspector: introspector.track(),
locator: &mut locator,
tracer: tracer.track_mut(),
traced: traced.track(),
sink: sink.track_mut(),
route: Route::default(),
};

let context = Context::none();
Expand All @@ -73,6 +71,7 @@ pub fn analyze_import_(world: &dyn World, source: &LinkedNode) -> Option<Value>
Scopes::new(Some(world.library())),
Span::detached(),
);

typst::eval::import(&mut vm, source, source_span, true)
.ok()
.map(Value::Module)
Expand Down Expand Up @@ -106,12 +105,13 @@ pub fn analyze_labels(document: &Document) -> (Vec<DynLabel>, usize) {
let (is_derived, details) = {
let derived = elem
.get_by_name("caption")
.or_else(|| elem.get_by_name("body"));
.or_else(|_| elem.get_by_name("body"));

match derived {
Some(Value::Content(content)) => (true, content.plain_text()),
Some(Value::Str(s)) => (true, s.into()),
_ => (false, elem.plain_text()),
Ok(Value::Content(content)) => (true, content.plain_text()),
Ok(Value::Str(s)) => (true, s.into()),
Ok(_) => (false, elem.plain_text()),
Err(_) => (false, elem.plain_text()),
}
};
output.push(DynLabel {
Expand All @@ -131,7 +131,7 @@ pub fn analyze_labels(document: &Document) -> (Vec<DynLabel>, usize) {
// Bibliography keys.
for (key, detail) in BibliographyElem::keys(document.introspector.track()) {
output.push(DynLabel {
label: Label::new(&key),
label: Label::new(key.as_str()),
label_desc: detail.clone(),
detail: detail.clone(),
bib_title: detail,
Expand Down
4 changes: 3 additions & 1 deletion crates/tinymist-query/src/analysis/tyck/convert.rs
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ pub fn term_value(ctx: &mut AnalysisContext, value: &Value) -> Ty {
let values = m
.scope()
.iter()
.map(|(k, v)| (k.into(), term_value_rec(v), Span::detached()))
.map(|(k, v, _)| (k.into(), term_value_rec(v), Span::detached()))
.collect();
Ty::Dict(RecordTy::new(values))
}
Expand All @@ -40,6 +40,7 @@ pub fn term_value(ctx: &mut AnalysisContext, value: &Value) -> Ty {
| Value::Bool(..)
| Value::Int(..)
| Value::Float(..)
| Value::Decimal(..)
| Value::Length(..)
| Value::Angle(..)
| Value::Ratio(..)
Expand Down Expand Up @@ -75,6 +76,7 @@ pub fn term_value_rec(value: &Value) -> Ty {
| Value::Bool(..)
| Value::Int(..)
| Value::Float(..)
| Value::Decimal(..)
| Value::Length(..)
| Value::Angle(..)
| Value::Ratio(..)
Expand Down
4 changes: 3 additions & 1 deletion crates/tinymist-query/src/analysis/tyck/syntax.rs
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@ impl<'a, 'w> TypeChecker<'a, 'w> {
SyntaxKind::TermMarker => Ty::Builtin(BuiltinTy::Content),
SyntaxKind::MathAlignPoint => Ty::Builtin(BuiltinTy::Content),
SyntaxKind::MathPrimes => Ty::Builtin(BuiltinTy::Content),
SyntaxKind::MathShorthand => Ty::Builtin(BuiltinTy::Content),

SyntaxKind::Strong => return self.check_children(root),
SyntaxKind::Emph => return self.check_children(root),
Expand All @@ -57,7 +58,7 @@ impl<'a, 'w> TypeChecker<'a, 'w> {
SyntaxKind::LoopContinue => Ty::Builtin(BuiltinTy::None),
SyntaxKind::FuncReturn => Ty::Builtin(BuiltinTy::None),
SyntaxKind::Error => Ty::Builtin(BuiltinTy::None),
SyntaxKind::Eof => Ty::Builtin(BuiltinTy::None),
SyntaxKind::End => Ty::Builtin(BuiltinTy::None),

SyntaxKind::None => Ty::Builtin(BuiltinTy::None),
SyntaxKind::Auto => Ty::Builtin(BuiltinTy::Auto),
Expand Down Expand Up @@ -105,6 +106,7 @@ impl<'a, 'w> TypeChecker<'a, 'w> {
SyntaxKind::Spread => Ty::Builtin(BuiltinTy::Clause),
SyntaxKind::Params => Ty::Builtin(BuiltinTy::Clause),
SyntaxKind::ImportItems => Ty::Builtin(BuiltinTy::Clause),
SyntaxKind::ImportItemPath => Ty::Builtin(BuiltinTy::Clause),
SyntaxKind::RenamedImportItem => Ty::Builtin(BuiltinTy::Clause),
SyntaxKind::Hash => Ty::Builtin(BuiltinTy::Clause),
SyntaxKind::LeftBrace => Ty::Builtin(BuiltinTy::Clause),
Expand Down
2 changes: 1 addition & 1 deletion crates/tinymist-query/src/docs/module.rs
Original file line number Diff line number Diff line change
Expand Up @@ -176,7 +176,7 @@ impl ScanSymbolCtx<'_, '_> {

let symbols = module.scope().iter();
let symbols = symbols
.map(|(k, v)| {
.map(|(k, v, _)| {
let mut path = path.clone();
path.push(k);
self.sym(k, path.clone(), Some(&fid), v)
Expand Down
7 changes: 6 additions & 1 deletion crates/tinymist-query/src/document_metrics.rs
Original file line number Diff line number Diff line change
Expand Up @@ -162,7 +162,12 @@ impl<'a, 'w> DocumentMetricsWorker<'a, 'w> {
match elem {
FrameItem::Text(text) => self.work_text(text),
FrameItem::Group(frame) => self.work_frame(&frame.frame),
FrameItem::Shape(..) | FrameItem::Image(..) | FrameItem::Meta(..) => Some(()),
FrameItem::Shape(..)
| FrameItem::Image(..)
| FrameItem::Tag(..)
| FrameItem::Link(..) => Some(()),
#[cfg(not(feature = "no-content-hint"))]
FrameItem::ContentHint(..) => Some(()),
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ input_file: crates/tinymist-query/src/fixtures/completion/half_completion.typ
{
"kind": 5,
"label": "font",
"sortText": "013",
"sortText": "014",
"textEdit": {
"newText": "font: ${1:}, ",
"range": {
Expand All @@ -34,7 +34,7 @@ input_file: crates/tinymist-query/src/fixtures/completion/half_completion.typ
{
"kind": 5,
"label": "font",
"sortText": "013",
"sortText": "014",
"textEdit": {
"newText": "font: ${1:}",
"range": {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,4 @@ description: "Check on \"(\" (18)"
expression: literal_type
input_file: crates/tinymist-query/src/fixtures/post_type_check/with_element.typ
---
( ⪯ Type(content) & "alternates": Any & "baseline": Any & "bottom-edge": Any & "cjk-latin-spacing": Any & "dir": Any & "discretionary-ligatures": Any & "fallback": Any & "features": Any & "fill": Any & "font": Any & "fractions": Any & "historical-ligatures": Any & "hyphenate": Any & "kerning": Any & "lang": Any & "ligatures": Any & "number-type": Any & "number-width": Any & "overhang": Any & "region": Any & "script": Any & "size": Any & "slashed-zero": Any & "spacing": Any & "stretch": Any & "stroke": Any & "style": Any & "stylistic-set": Any & "top-edge": Any & "tracking": Any & "weight": Any)
( ⪯ Type(content) & "alternates": Any & "baseline": Any & "bottom-edge": Any & "cjk-latin-spacing": Any & "costs": Any & "dir": Any & "discretionary-ligatures": Any & "fallback": Any & "features": Any & "fill": Any & "font": Any & "fractions": Any & "historical-ligatures": Any & "hyphenate": Any & "kerning": Any & "lang": Any & "ligatures": Any & "number-type": Any & "number-width": Any & "overhang": Any & "region": Any & "script": Any & "size": Any & "slashed-zero": Any & "spacing": Any & "stretch": Any & "stroke": Any & "style": Any & "stylistic-set": Any & "top-edge": Any & "tracking": Any & "weight": Any)
2 changes: 1 addition & 1 deletion crates/tinymist-query/src/hover.rs
Original file line number Diff line number Diff line change
Expand Up @@ -193,7 +193,7 @@ fn star_tooltip(

let mut results = vec![];

let mut names = scope.iter().map(|(name, _)| name).collect::<Vec<_>>();
let mut names = scope.iter().map(|(name, _, _)| name).collect::<Vec<_>>();
names.sort();
let items = typst::foundations::repr::separated_list(&names, "and");

Expand Down
8 changes: 4 additions & 4 deletions crates/tinymist-query/src/syntax/matcher.rs
Original file line number Diff line number Diff line change
Expand Up @@ -119,20 +119,20 @@ pub(crate) fn interpret_mode_at(k: SyntaxKind) -> Option<InterpretMode> {
| RightBrace | LeftBracket | RightBracket | LeftParen | RightParen | Comma | Semicolon
| Colon | Star | Underscore | Dollar | Plus | Minus | Slash | Hat | Prime | Dot | Eq
| EqEq | ExclEq | Lt | LtEq | Gt | GtEq | PlusEq | HyphEq | StarEq | SlashEq | Dots
| Arrow | Root | Not | And | Or | None | Auto | As | Named | Keyed | Error | Eof => {
| Arrow | Root | Not | And | Or | None | Auto | As | Named | Keyed | Error | End => {
return Option::None
}
Text | Strong | Emph | Link | Label | Ref | RefMarker | Heading | HeadingMarker
| ListItem | ListMarker | EnumItem | EnumMarker | TermItem | TermMarker => {
InterpretMode::Markup
}
MathIdent | MathAlignPoint | MathDelimited | MathAttach | MathPrimes | MathFrac
| MathRoot => InterpretMode::Math,
| MathRoot | MathShorthand => InterpretMode::Math,
Let | Set | Show | Context | If | Else | For | In | While | Break | Continue | Return
| Import | Include | Args | Spread | Closure | Params | LetBinding | SetRule | ShowRule
| Contextual | Conditional | WhileLoop | ForLoop | LoopBreak | ModuleImport
| ImportItems | RenamedImportItem | ModuleInclude | LoopContinue | FuncReturn
| FuncCall | Unary | Binary | Parenthesized | Dict | Array | Destructuring
| ImportItems | ImportItemPath | RenamedImportItem | ModuleInclude | LoopContinue
| FuncReturn | FuncCall | Unary | Binary | Parenthesized | Dict | Array | Destructuring
| DestructAssignment => InterpretMode::Code,
})
}
Expand Down
2 changes: 1 addition & 1 deletion crates/tinymist-query/src/tests.rs
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ pub fn compile_doc_for_test(
return None;
}

let doc = typst::compile(ctx.world(), &mut Default::default()).unwrap();
let doc = typst::compile(ctx.world()).output.unwrap();
Some(VersionedDocument {
version: 0,
document: Arc::new(doc),
Expand Down
Loading

0 comments on commit 66fff06

Please sign in to comment.