Commit Graph

57 Commits (f00b921de528b3455733598f8a796c5475a985ef)

Author SHA1 Message Date
Wilfred Hughes 19feab9045 Change entry point to be main.rs
Now that we've removed criterion, a binary-only crate is better, as we
get more unused function warnings.
2021-11-21 11:45:48 +07:00
Wilfred Hughes 7fdbaff6fe Update build dependencies 2021-11-19 23:29:17 +07:00
Wilfred Hughes 7f6b8174d5 Update pretty_assertions and use consistently 2021-11-19 23:27:41 +07:00
Wilfred Hughes 9079567695 Update radix-heap
Upstream has had some optimisations and it saves 7% in instructions
executed for slow_before/slow_after.rs according to `perf stat`.
2021-11-19 23:20:37 +07:00
Wilfred Hughes e8f45d91b8 Roll version 2021-11-19 00:49:14 +07:00
Wilfred Hughes a87882c0a3 Increase required rust version
radix-heap uses macros for built-in arguments, which was added in Rust
1.54:
https://github.com/rust-lang/rust/blob/master/RELEASES.md#version-1540-2021-07-29
2021-10-30 12:46:42 +07:00
Wilfred Hughes c0cd13bd9b Pin Rust version to 1.46
Specify the minimum Rust version in cargo.toml, exercise this version in CI,
and document it in the manual.

We require 1.46 for bitflags, which is a dependency of clap.

Fixes #51
2021-10-29 00:20:07 +07:00
Wilfred Hughes 86724658c0 Update radix-heap version
This avoids us depending on an old version of ordered_float, which has
a security advisory: https://rustsec.org/advisories/RUSTSEC-2020-0082

It also slightly reduces the number of dependencies of difftastic.
2021-10-28 00:51:37 +07:00
Wilfred Hughes 44b025fdc5 Roll version 2021-10-18 22:42:17 +07:00
Wilfred Hughes 3df7bb57e1 Add basic syntax highlighting for keywords and operators
Helps with #32
2021-10-03 15:23:27 +07:00
Wilfred Hughes c92007e5b3 Remove criterion
I've found the numbers pretty noisy on my laptop, and `perf stat` is a
nice way of testing full size files for performance.
2021-10-02 22:00:12 +07:00
Wilfred Hughes 08c68de229 Run `cargo upgrade` 2021-09-26 23:09:20 +07:00
Wilfred Hughes 62b030195e Upgrade to latest treesitter 2021-09-26 23:05:09 +07:00
Wilfred Hughes ec37c5bef1 Add full Mercurial extdiff support 2021-09-26 21:23:22 +07:00
Wilfred Hughes 48efe9d7c4 Roll version 2021-09-24 23:40:07 +07:00
Wilfred Hughes bc4f54da65 Set benchmark path to keep `cargo package` happy 2021-09-22 22:40:53 +07:00
Wilfred Hughes 5991efdcc7 Build tree-sitter parsers in parallel 2021-09-22 22:02:07 +07:00
Wilfred Hughes 8baa083fbf Make debug symbols explicit for release, for easy toggling 2021-09-19 22:47:58 +07:00
Wilfred Hughes d89521e7a3 Improve benchmark name 2021-09-14 22:47:54 +07:00
Wilfred Hughes d5b5f09257 Enable html_reports to silence the crierion warning 2021-09-14 22:42:23 +07:00
Wilfred Hughes f1c59dcfba Add a basic benchmark for the parser 2021-09-14 22:24:25 +07:00
Wilfred Hughes 1e7a39dbbf Make include patterns stricter
Previously we'd match any directory *src, which matched a range of
unwanted files in manual/ and vendor/
2021-09-14 00:45:04 +07:00
Wilfred Hughes d1c5c9d937 Set homepage, keywords and categories in Cargo.toml 2021-09-14 00:41:38 +07:00
Wilfred Hughes 31572a83a9 Roll version following release 2021-09-14 00:34:38 +07:00
Wilfred Hughes ea3cb7737a Use a radix heap to speed up Dijkstra implementation 2021-09-12 22:04:15 +07:00
Wilfred Hughes 6222987872 Move to mimalloc
This produces a small (~10% less runtime) improvement on larger files,
as difftastic spends a lot of time allocating.
2021-09-12 20:14:44 +07:00
Wilfred Hughes 0f042fb160 Roll version 2021-09-05 11:23:00 +07:00
Wilfred Hughes 86a330c44e Add debug logging and log stats on shortest path found 2021-09-04 10:46:51 +07:00
Wilfred Hughes cc93976969 Handle SIGPIPE
Based on the sample code in
https://stackoverflow.com/a/65760807/509706

Closes #28
2021-08-29 16:50:05 +07:00
Wilfred Hughes 763b9d2d17 Roll version 2021-08-24 01:07:07 +07:00
Wilfred Hughes 3123544bed Use an explicit version for cc 2021-08-24 01:04:38 +07:00
Wilfred Hughes efcb02c56c Configure vendor/ for packaging 2021-08-24 01:02:32 +07:00
Wilfred Hughes 001a36a7e3 Define regexp parsers in code rather than TOML 2021-08-21 19:13:01 +07:00
Wilfred Hughes c80ce0d024 Use vendored tree-sitter-rust 2021-08-15 16:50:43 +07:00
Wilfred Hughes e7a6c3b11e Initial tree-sitter prototype 2021-08-15 16:16:48 +07:00
Wilfred Hughes 3ae0b7df84 Allow RHS to be arbitrarily long in a pager
If stdout is not a TTY, assume it's a pager and don't truncate the
RHS.
2021-08-08 17:35:31 +07:00
Wilfred Hughes da63704675 Roll version 2021-07-28 00:04:47 +07:00
Wilfred Hughes 6d5704aed9 Only compile the newline regexp once 2021-07-25 12:56:02 +07:00
Wilfred Hughes 928584676a Only highlight individual comment words for comments that are similar 2021-07-24 17:01:30 +07:00
Wilfred Hughes b81312e88b Roll version 2021-07-22 00:09:13 +07:00
Wilfred Hughes aa87085b95 Remove unused dependency 2021-07-17 15:35:43 +07:00
Wilfred Hughes 4c79267602 Roll version 2021-07-13 23:27:17 +07:00
Wilfred Hughes 9e821956a5 Roll version 2021-07-07 22:25:03 +07:00
Wilfred Hughes 64bfc73a6c Roll version for next release 2021-07-04 11:42:59 +07:00
Wilfred Hughes 78483d7480 More package metadata 2021-07-03 23:14:22 +07:00
Wilfred Hughes cf2b5d762a Bump version for initial release 2021-07-03 23:09:11 +07:00
Wilfred Hughes a38b20d5a6 Prefer rustc-hash for faster hashing
This is hot when profiling.
2021-07-03 15:42:23 +07:00
Wilfred Hughes 3b033c1438 Embed syntax.toml in binary 2021-06-20 16:32:22 +07:00
Wilfred Hughes 48c31ec0ec Read a language block from syntax.toml 2021-06-01 23:57:08 +07:00
Wilfred Hughes cb75585679 Basic .toml language description 2021-05-31 23:10:49 +07:00