Commit Graph

45 Commits

Author SHA1 Message Date
Kat Marchán d013ece76a
fix(deps): remove nom 2024-10-08 22:48:10 -07:00
Kat Marchán 5eb9442297
chore: Release kdl version 6.0.0-alpha.1 2024-10-05 21:04:58 -07:00
Kat Marchán c9898cdbd2
feat(parser): v2 parser (#70)
This is a major rewrite of kdl-rs to comply with the KDL v2 spec.
2024-10-05 20:51:09 -07:00
Kat Marchán 7cdeb98dd7
misc: set msrv 2023-03-31 22:13:12 -07:00
Kat Marchán 498d2ec4bd
chore: Release kdl version 5.0.0-alpha.1 2023-03-31 17:45:02 -07:00
Kat Marchán db0a395fb4
feat(deps): bump miette and thiserror 2023-03-31 17:38:30 -07:00
Kat Marchán 8c028e5ea1
(cargo-release) version 5.0.0-alpha.0 2022-12-04 19:46:37 -08:00
Kat Marchán 6d1a516eb9
feat(kql): implement KQL query engine (#61)
Fixes: https://github.com/kdl-org/kdl-rs/issues/32

This implements a proposed draft of a KQL engine,
allowing CSS selector-style querying of KDL documents (and nodes)
in a variety of different ways.
2022-12-04 19:22:10 -08:00
Kat Marchán c7b6b823e9
(cargo-release) start next development iteration 4.6.1-alpha.0 2022-10-09 12:10:49 -07:00
Kat Marchán 232d253cbf
(cargo-release) version 4.6.0 2022-10-09 12:10:17 -07:00
Kat Marchán ae5705c388
(cargo-release) start next development iteration 4.5.1-alpha.0 2022-08-30 20:26:33 -07:00
Kat Marchán 6315cd550a
(cargo-release) version 4.5.0 2022-08-30 20:26:08 -07:00
Aria Beingessner b17ef8e2c6
feat(spans): add spans to most elements (#57)
This necessitates passing the input around through all the sub-parsers so they
can compute their own sub-spans, which in turn necessitates making most of the
subparsers into nom-style 'function builders' by wrapping them in closures and
returning the closures.

The current impl hides this functionality behind an on-by-default "span" feature.

Some fallout of this change:

There is now a private parser::KdlParser type that must be constructed with the
full input for all span computation. The parser::parser method has been moved to
a method of this to make sure the full_input used for span computation is the
same one passed to parsing. In doing this a bug where the span of errors would
be incorrectly computed for non-ascii strings has been fixed.

Types now manually implement PartialEq and Hash to avoid incorporating the span
of the item into those computations.

All parser combinators must first have the KdlParser applied before using them,
making their signatures far more complex. Unfortunately KdlParser::parse can't
apply that for you because I don't think it's possible to express that complex
of a signature and not have the lifetimes get messed up.
2022-08-30 20:24:06 -07:00
Kat Marchán bbd011512a
(cargo-release) start next development iteration 4.4.1-alpha.0 2022-08-18 12:40:20 -07:00
Kat Marchán 857089dcae
(cargo-release) version 4.4.0 2022-08-18 12:39:55 -07:00
Kat Marchán 8d0f36ceb1
feat(deps): bump miette 2022-08-18 12:27:59 -07:00
Kat Marchán 6d32700b95
(cargo-release) start next development iteration 4.3.1-alpha.0 2022-06-10 17:08:20 -07:00
Kat Marchán 58a60f9a30
(cargo-release) version 4.3.0 2022-06-10 17:07:50 -07:00
Kat Marchán 5ef8eeef52
(cargo-release) start next development iteration 4.2.1-alpha.0 2022-05-11 08:29:48 -07:00
Kat Marchán 0bf6f953ff
(cargo-release) version 4.2.0 2022-05-11 08:29:27 -07:00
Kat Marchán ac3ca5773f
(cargo-release) start next development iteration 4.1.2-alpha.0 2022-04-27 23:28:33 -07:00
Kat Marchán f21bf8b49e
(cargo-release) version 4.1.1 2022-04-27 23:28:13 -07:00
Kat Marchán 71df712c0c
(cargo-release) start next development iteration 4.1.1-alpha.0 2022-04-23 22:37:03 -07:00
Kat Marchán 6577a10c85
(cargo-release) version 4.1.0 2022-04-23 22:36:44 -07:00
Kat Marchán e068d33b3a
(cargo-release) start next development iteration 4.0.1-alpha.0 2022-04-23 02:36:19 -07:00
Kat Marchán ace541a7aa
(cargo-release) version 4.0.0 2022-04-23 02:36:00 -07:00
Kat Marchán 8106d65732 deps: bump thiserror 2022-04-23 01:21:28 -07:00
Kat Marchán 5846bea079 deps: remove phf dep 2022-04-23 01:21:28 -07:00
Kat Marchán 8ed6a5cd06
feat(errors): improve parsing errors and fix some bugs (#33) 2022-04-22 19:41:28 -07:00
Kat Marchán 364ea6173c
feat(api): complete rewrite into document-oriented parser (#29)
This new version of kdl-rs is a complete rewrite that introduces
a formatting-aware-and-preserving parser, much like toml_edit et al.

BREAKING CHANGE: Completely new API and bumped MSRV to 1.56.0.
2022-04-22 02:20:30 -07:00
Kat Marchán a358750d89
(cargo-release) start next development iteration 3.0.1-alpha.0 2021-09-16 01:32:27 -07:00
Kat Marchán 3f3c8721a2
(cargo-release) version 3.0.0 2021-09-16 01:32:05 -07:00
Kat Marchán f811c5c89c
feat(spec): update parser to handle KDL 1.0.0
Fixes: https://github.com/kdl-org/kdl-rs/issues/18

BREAKING CHANGE: Various things have changed in the process of moving to KDL 1.0.0. Please test your stuff
2021-09-16 01:30:58 -07:00
Kat Marchán cd98acddd1
(cargo-release) start next development iteration 2.0.1-alpha.0 2021-09-16 00:02:39 -07:00
Kat Marchán b62f81e1f7
(cargo-release) version 2.0.0 2021-09-16 00:02:19 -07:00
Kat Marchán 63c21684da
doc: make it official? 2021-09-16 00:00:16 -07:00
Kat Marchán 0dbf75c78e
feat(license): change license to Apache-2.0
BREAKING CHANGE: This is a significant licensing change. Please review.
2021-09-15 23:59:34 -07:00
Kat Marchán 87f836134c
1.1.0 2021-05-08 14:42:29 -07:00
jam1garner 9bc5363bb5
fix(deps): Remove nom dependency on `bitvec` and `lexical` (#14) 2021-05-08 14:40:23 -07:00
hclarke b8c8b52748
feat(display): implemented Display for KdlNode (#6) 2021-05-08 14:39:35 -07:00
Kat Marchán b9d7ac4ca0
1.0.0 2020-12-19 13:14:37 -08:00
Kat Marchán b325d58e68
update Cargo.toml 2020-12-19 13:14:12 -08:00
Kat Marchán 3296cc83a0
wip parser 2020-12-12 11:50:34 -08:00
Kat Marchán 419da47cfc
add license and description 2020-12-10 18:53:27 -08:00
Kat Marchán a8475fd2c7
initial commit 2020-12-10 18:42:50 -08:00