<feed xmlns='http://www.w3.org/2005/Atom'>
<title>raidgrep/src/filters, branch v1.1.0</title>
<subtitle>Guild Wars 2/arcdps evtc log searching tool</subtitle>
<link rel='alternate' type='text/html' href='https://git.kingdread.de/cgit.cgi/raidgrep/'/>
<entry>
<title>add -class player filter</title>
<updated>2020-05-04T13:25:33+00:00</updated>
<author>
<name>Daniel</name>
<email>kingdread@gmx.de</email>
</author>
<published>2020-05-04T13:25:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.kingdread.de/cgit.cgi/raidgrep/commit/?id=74dc6574650a157ab57779dc633e140d020b792a'/>
<id>74dc6574650a157ab57779dc633e140d020b792a</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>include missing semicolon</title>
<updated>2020-05-04T10:31:18+00:00</updated>
<author>
<name>Daniel</name>
<email>kingdread@gmx.de</email>
</author>
<published>2020-05-04T10:31:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.kingdread.de/cgit.cgi/raidgrep/commit/?id=e74e9d393bdf687002ccdbd706a929b4bbf2920e'/>
<id>e74e9d393bdf687002ccdbd706a929b4bbf2920e</id>
<content type='text'>
Rust doesn't necessarily need this, but it's good formatting to include
it anyway.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Rust doesn't necessarily need this, but it's good formatting to include
it anyway.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add a -log-before &amp; -log-after predicate</title>
<updated>2020-05-04T10:24:24+00:00</updated>
<author>
<name>Daniel</name>
<email>kingdread@gmx.de</email>
</author>
<published>2020-05-04T10:24:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.kingdread.de/cgit.cgi/raidgrep/commit/?id=17e27776ea152509e1095bbf80f5af65bc7a7997'/>
<id>17e27776ea152509e1095bbf80f5af65bc7a7997</id>
<content type='text'>
With the file name heuristic for -before and -after in place, we might
want a way for the user to disable it. For now, we simply do this by
providing a new set of predicates without the filter.

In the future, we might have a --disable-heuristics switch to disable
the heuristics, in case we ever add more.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
With the file name heuristic for -before and -after in place, we might
want a way for the user to disable it. For now, we simply do this by
providing a new set of predicates without the filter.

In the future, we might have a --disable-heuristics switch to disable
the heuristics, in case we ever add more.
</pre>
</div>
</content>
</entry>
<entry>
<title>enable date parsing from filenames</title>
<updated>2020-05-01T12:09:30+00:00</updated>
<author>
<name>Daniel</name>
<email>kingdread@gmx.de</email>
</author>
<published>2020-05-01T12:09:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.kingdread.de/cgit.cgi/raidgrep/commit/?id=f3af2cf6966b6033563d315492fc6b84f433f780'/>
<id>f3af2cf6966b6033563d315492fc6b84f433f780</id>
<content type='text'>
This allows the date-based filters to work much faster.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This allows the date-based filters to work much faster.
</pre>
</div>
</content>
</entry>
<entry>
<title>change LogFilter to take EarlyLogResult</title>
<updated>2020-05-01T11:29:38+00:00</updated>
<author>
<name>Daniel</name>
<email>kingdread@gmx.de</email>
</author>
<published>2020-05-01T11:29:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.kingdread.de/cgit.cgi/raidgrep/commit/?id=5f765b749f793b2866262546d28ff138a5654dfc'/>
<id>5f765b749f793b2866262546d28ff138a5654dfc</id>
<content type='text'>
This allows us to attach some additional metadata that is not found in
the PartialEvtc otherwise, such as the file name.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This allows us to attach some additional metadata that is not found in
the PartialEvtc otherwise, such as the file name.
</pre>
</div>
</content>
</entry>
<entry>
<title>fix timestamp handling</title>
<updated>2020-05-01T10:51:06+00:00</updated>
<author>
<name>Daniel</name>
<email>kingdread@gmx.de</email>
</author>
<published>2020-05-01T10:51:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.kingdread.de/cgit.cgi/raidgrep/commit/?id=cb757209d438afe23b5bdbfa5f62d00b195ad367'/>
<id>cb757209d438afe23b5bdbfa5f62d00b195ad367</id>
<content type='text'>
As it turns out, the "local timestamp" as advertised by arcdps is a bit
misleading, because the timestamp is still in UTC. The "local" refers to
the fact that it can lag behind the server timestamp a bit (but usually
they seem to be within +-1 of each other), not that the timestamp is in
the local timezone.

This makes date handling a bit harder for raidgrep, but thanks to
chrono, not by much. The idea is that we simply deal with Utc pretty
much everywhere, except at the user boundary. This means that

1. Input timestamps for -before and -after are converted to Utc right
   after input
2. When outputting, we convert to a local timestamp first

This makes the output consistent with the filenames now (and the "wall
time" that the player saw).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
As it turns out, the "local timestamp" as advertised by arcdps is a bit
misleading, because the timestamp is still in UTC. The "local" refers to
the fact that it can lag behind the server timestamp a bit (but usually
they seem to be within +-1 of each other), not that the timestamp is in
the local timezone.

This makes date handling a bit harder for raidgrep, but thanks to
chrono, not by much. The idea is that we simply deal with Utc pretty
much everywhere, except at the user boundary. This means that

1. Input timestamps for -before and -after are converted to Utc right
   after input
2. When outputting, we convert to a local timestamp first

This makes the output consistent with the filenames now (and the "wall
time" that the player saw).
</pre>
</div>
</content>
</entry>
<entry>
<title>fix BossFilter::filter_early</title>
<updated>2020-04-29T14:18:02+00:00</updated>
<author>
<name>Daniel</name>
<email>kingdread@gmx.de</email>
</author>
<published>2020-04-29T14:18:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.kingdread.de/cgit.cgi/raidgrep/commit/?id=f956baf7e6b77e48e3f845459560f1f8fb77eb7c'/>
<id>f956baf7e6b77e48e3f845459560f1f8fb77eb7c</id>
<content type='text'>
If the boss is unknown, we exclude the log - that is how
BossFilter::filter operates, and it is probably what the user wants if
they specify a -boss filter. However, in filter_early, the default for
unknown bosses was to return Inclusion::Include, which is not consistent
with filter. That lead to some logs being included, parsed and then
thrown away again.

This change makes the behaviour for unknown bosses between filter_early
and filter consistent, and therefore speeds up the search if -boss is
used.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
If the boss is unknown, we exclude the log - that is how
BossFilter::filter operates, and it is probably what the user wants if
they specify a -boss filter. However, in filter_early, the default for
unknown bosses was to return Inclusion::Include, which is not consistent
with filter. That lead to some logs being included, parsed and then
thrown away again.

This change makes the behaviour for unknown bosses between filter_early
and filter consistent, and therefore speeds up the search if -boss is
used.
</pre>
</div>
</content>
</entry>
<entry>
<title>update evtclib to 0.2.0</title>
<updated>2020-04-29T13:49:24+00:00</updated>
<author>
<name>Daniel</name>
<email>kingdread@gmx.de</email>
</author>
<published>2020-04-29T13:49:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.kingdread.de/cgit.cgi/raidgrep/commit/?id=16019515dffe4dd790adc72ed8a8ece8fc54c260'/>
<id>16019515dffe4dd790adc72ed8a8ece8fc54c260</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>use free functions instead of Filter::new</title>
<updated>2020-04-25T11:19:42+00:00</updated>
<author>
<name>Daniel</name>
<email>kingdread@gmx.de</email>
</author>
<published>2020-04-25T11:14:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.kingdread.de/cgit.cgi/raidgrep/commit/?id=5dbea93266c3a30dac5ec6f5a7915d73a440f573'/>
<id>5dbea93266c3a30dac5ec6f5a7915d73a440f573</id>
<content type='text'>
Having a ::new on each of the filter types was a bit weird, especially
because we returned Box&lt;dyn ...&gt; instead of Self (and clippy rightfully
complained). With this patch, we now have a bunch of normal functions,
and we don't show to the outside how a filter is actually implemented
(or what struct is behind it).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Having a ::new on each of the filter types was a bit weird, especially
because we returned Box&lt;dyn ...&gt; instead of Self (and clippy rightfully
complained). With this patch, we now have a bunch of normal functions,
and we don't show to the outside how a filter is actually implemented
(or what struct is behind it).
</pre>
</div>
</content>
</entry>
<entry>
<title>better error outputs</title>
<updated>2020-04-21T11:59:28+00:00</updated>
<author>
<name>Daniel</name>
<email>kingdread@gmx.de</email>
</author>
<published>2020-04-21T11:59:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.kingdread.de/cgit.cgi/raidgrep/commit/?id=185a5b2f802f9d05c3eb40f807c0488f168c6661'/>
<id>185a5b2f802f9d05c3eb40f807c0488f168c6661</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
