aboutsummaryrefslogtreecommitdiff
path: root/Cargo.toml
AgeCommit message (Collapse)Author
2019-05-24lazily parse log eventsDaniel
A lot of time is spent parsing the actual log events, especially when they are zipped, as they have to be decompressed first. This results in huge run-time hits, especially for files where we could determine very early if we actually need it. For example, player names are saved in the header, which can be examined very quickly. If we can determine at that stage that a log file will not appear in the result set, we don't need to parse all the log events. This patch relies on the partial parsing support of evtclib to do exactly that. It parses only the header with the player names, and only if there's a match, it will proceed to parse the events and do more filtering. In the future, we can extend this even more, for example we can also check the boss ID that way, since we can also access that in the header. On the downside, we now have the zip handling logic replicated in raidgrep, as we want a "common" interface to extract the actual data stream. But this logic could be pushed back to evtclib after polishing it a bit. There are some problems with Rust's borrow checking though, which is why it looks a bit convoluted.
2018-10-15add time based filteringDaniel
This accepts timestamps in the following formats: * Human-readable, like "15d", taken relative to the current time. * rfc3339-like "2018-03-14 13:13:00" More formats might be added in the future.
2018-10-15properly use encounter ID to get the nameDaniel
The previous method was nice because it "just worked" for most of the bosses, but with the introduction of W6 shenanigans (CA being a gadget, and Largos Twins being two bosses), the method was a bit unreliable. Now, the encounter ID that is saved by ArcDPS is used, and a predefined list of encounter names is consulted, which makes this work better for most bosses and allows us to change the name when appropriate (Nightmare Oratuss -> Siax)
2018-09-14add evtclib as submoduleDaniel
2018-09-14add license (GPL-3)Daniel
2018-09-07parallelize log searchingDaniel
2018-09-06initial commitDaniel