head 1.1; access; symbols pkgsrc-2026Q1:1.1.0.32 pkgsrc-2026Q1-base:1.1 pkgsrc-2025Q4:1.1.0.30 pkgsrc-2025Q4-base:1.1 pkgsrc-2025Q3:1.1.0.28 pkgsrc-2025Q3-base:1.1 pkgsrc-2025Q2:1.1.0.26 pkgsrc-2025Q2-base:1.1 pkgsrc-2025Q1:1.1.0.24 pkgsrc-2025Q1-base:1.1 pkgsrc-2024Q4:1.1.0.22 pkgsrc-2024Q4-base:1.1 pkgsrc-2024Q3:1.1.0.20 pkgsrc-2024Q3-base:1.1 pkgsrc-2024Q2:1.1.0.18 pkgsrc-2024Q2-base:1.1 pkgsrc-2024Q1:1.1.0.16 pkgsrc-2024Q1-base:1.1 pkgsrc-2023Q4:1.1.0.14 pkgsrc-2023Q4-base:1.1 pkgsrc-2023Q3:1.1.0.12 pkgsrc-2023Q3-base:1.1 pkgsrc-2023Q2:1.1.0.10 pkgsrc-2023Q2-base:1.1 pkgsrc-2023Q1:1.1.0.8 pkgsrc-2023Q1-base:1.1 pkgsrc-2022Q4:1.1.0.6 pkgsrc-2022Q4-base:1.1 pkgsrc-2022Q3:1.1.0.4 pkgsrc-2022Q3-base:1.1 pkgsrc-2022Q2:1.1.0.2 pkgsrc-2022Q2-base:1.1; locks; strict; comment @# @; 1.1 date 2022.03.28.14.11.01; author wiz; state Exp; branches; next ; commitid OPDDkjmBQ7RnrZxD; desc @@ 1.1 log @taplo-cli: update to 0.6.0. One of the reasons why I always kept postponing patches and updates in this project was the fact that it was pretty hard to maintain. When I originally wrote most of it, I barely had time and just wanted to get features out ASAP. The Even Better TOML has recently passed the 100K installs mark, I felt that some cleanup and care was long overdue. This PR is pretty much a rewrite and/or a major refactor of Taplo with the only exception of the parser, which I would love to rewrite as well but I'm already pushing my time-limits. Features * Rewrite of the DOM, it now uses a reference-counted implementation where each node is cheap to clone and to juggle around. * Rewrite of the CLI as well, it is now a first-class citizen not just something quickly thrown together. * Integration of jsonschema, most (all?) JSON Schema features are now supported and the limitations of the current implementation are non-existent. * Support of schema store catalog and schemas * The shared code between the CLI and the language server is now properly extracted into taplo-common, so the CLI and the LSP are no longer out of sync. * The external environment is now abstracted away into a trait, so both the LSP and the CLI should run pretty much anywhere with minimal plumbing * tracing is used for all logging * Refactor and workspace support in the LSP * All toml-test tests now pass * Proper benchmarks via criterion (the new DOM is slightly slower initially due to allocations, but not too much) * Completions and hover in the LSP (the building blocks are there, but the cursor queries require some plumbing) * The LSP is part of the CLI as well, and the VSCode extension works with it, WASM bindings are yet to be reimplemented * Flexible configuration options in the LSP * Proper directives in TOML files (e.g. schema) Breaking Changes Probably a lot, but here are a few notable ones: * The DOM API is completely different, although migration should be rather easy. * Chrono feature has been removed, it can be reintroduced later though if needed. * As with the DOM layout, error types have also changed. * Date types are now separate syntax-kinds. * Even though we had no MSRV policy, I clearly used 1.58 features during the rewrite * The Even Better Toml vscode extension also gets a facelift with some configuration options changed @ text @$NetBSD$ Compatibility with rust<1.59. --- Cargo.toml.orig 2022-03-27 00:08:44.000000000 +0000 +++ Cargo.toml @@@@ -6,7 +6,6 @@@@ members = ["crates/*"] codegen-units = 1 lto = "thin" opt-level = 3 -strip = "debuginfo" [profile.bench] lto = true @