<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kondou/src/api, branch master</title>
<subtitle>Guild Wars 2 build template visualizer</subtitle>
<link rel='alternate' type='text/html' href='https://git.kingdread.de/cgit.cgi/kondou/'/>
<entry>
<title>add workaround for Alliance not being in the API</title>
<updated>2022-11-28T21:07:08+00:00</updated>
<author>
<name>Daniel Schadt</name>
<email>kingdread@gmx.de</email>
</author>
<published>2022-11-28T21:07:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.kingdread.de/cgit.cgi/kondou/commit/?id=40e6c6b25fc2c7da89be6fe8c55b13dc95e4f85a'/>
<id>40e6c6b25fc2c7da89be6fe8c55b13dc95e4f85a</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Render Revenant legends instead of skills</title>
<updated>2022-11-28T20:40:58+00:00</updated>
<author>
<name>Daniel Schadt</name>
<email>kingdread@gmx.de</email>
</author>
<published>2022-11-28T20:40:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.kingdread.de/cgit.cgi/kondou/commit/?id=b9b890b24146fde7d3aa2a8fd1998b27caded462'/>
<id>b9b890b24146fde7d3aa2a8fd1998b27caded462</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>update dependencies</title>
<updated>2022-11-23T22:46:43+00:00</updated>
<author>
<name>Daniel Schadt</name>
<email>kingdread@gmx.de</email>
</author>
<published>2022-11-23T22:46:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.kingdread.de/cgit.cgi/kondou/commit/?id=7ba6206ec8bd904c53a662a2fce1e5f48961c431'/>
<id>7ba6206ec8bd904c53a662a2fce1e5f48961c431</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Modernize error handling</title>
<updated>2021-10-07T21:19:31+00:00</updated>
<author>
<name>Daniel Schadt</name>
<email>kingdread@gmx.de</email>
</author>
<published>2021-10-07T21:19:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.kingdread.de/cgit.cgi/kondou/commit/?id=8510ed3e43ff0a92565815b02645cc7bf5cb6b18'/>
<id>8510ed3e43ff0a92565815b02645cc7bf5cb6b18</id>
<content type='text'>
This sprinkles in some thiserror and anyhow instead of the hand-rolled
'error_froms!' macros and the MainResult. The benefit of this is that
we're hooking into an established ecosystem of error handling and we're
saving a lot of effort in the hand-written Display and Error
implementations.

The reason for not sprinkling anyhow everywhere is because the
retrieval/rendering part of kondou could be split off into a library at
some point, in which case we want to have a proper KondouError type.
However, the argument could be made that the current split of errors is
not very good, especially because many of them boil down to the same
inner errors (RenderError wrapping ApiError wrapping reqwest::Error),
which keeps unnecessary information.

Some future improvements may include
1.) Unifying those error enums into one bigger enum
2.) Attaching more context through anyhow in the application layer
3.) Properly define an API and split off the inner logic from the UI
  logic
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This sprinkles in some thiserror and anyhow instead of the hand-rolled
'error_froms!' macros and the MainResult. The benefit of this is that
we're hooking into an established ecosystem of error handling and we're
saving a lot of effort in the hand-written Display and Error
implementations.

The reason for not sprinkling anyhow everywhere is because the
retrieval/rendering part of kondou could be split off into a library at
some point, in which case we want to have a proper KondouError type.
However, the argument could be made that the current split of errors is
not very good, especially because many of them boil down to the same
inner errors (RenderError wrapping ApiError wrapping reqwest::Error),
which keeps unnecessary information.

Some future improvements may include
1.) Unifying those error enums into one bigger enum
2.) Attaching more context through anyhow in the application layer
3.) Properly define an API and split off the inner logic from the UI
  logic
</pre>
</div>
</content>
</entry>
<entry>
<title>update dependencies</title>
<updated>2020-02-19T11:27:22+00:00</updated>
<author>
<name>Daniel Schadt</name>
<email>kingdread@gmx.de</email>
</author>
<published>2020-02-19T11:27:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.kingdread.de/cgit.cgi/kondou/commit/?id=e8ce405349f2473e1353632bd455261b8ef9d479'/>
<id>e8ce405349f2473e1353632bd455261b8ef9d479</id>
<content type='text'>
image should also be updated to 0.23, but imageproc currently still uses
0.22, so we need to match it.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
image should also be updated to 0.23, but imageproc currently still uses
0.22, so we need to match it.
</pre>
</div>
</content>
</entry>
<entry>
<title>remove hard coded palette IDs</title>
<updated>2019-12-20T17:04:24+00:00</updated>
<author>
<name>Daniel Schadt</name>
<email>kingdread@gmx.de</email>
</author>
<published>2019-12-20T17:04:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.kingdread.de/cgit.cgi/kondou/commit/?id=9f4a4eaa06f3d0136de9088c0e60a0c077248c91'/>
<id>9f4a4eaa06f3d0136de9088c0e60a0c077248c91</id>
<content type='text'>
Now that the API actually returns the proper palette IDs, we can use
those values instead of relying on the hard coded values.

This also gets rid of the make_table script that was mostly hackish
anyway, and the lazy static HashMap.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Now that the API actually returns the proper palette IDs, we can use
those values instead of relying on the hard coded values.

This also gets rid of the make_table script that was mostly hackish
anyway, and the lazy static HashMap.
</pre>
</div>
</content>
</entry>
<entry>
<title>don't error when cache value can't be deserialized</title>
<updated>2019-12-20T16:04:45+00:00</updated>
<author>
<name>Daniel Schadt</name>
<email>kingdread@gmx.de</email>
</author>
<published>2019-12-20T16:04:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.kingdread.de/cgit.cgi/kondou/commit/?id=087580b3c269dbc5b2298ff6f4590f010279d339'/>
<id>087580b3c269dbc5b2298ff6f4590f010279d339</id>
<content type='text'>
The cache is meant to help out by saving old responses. If those
responses do not conform anymore to an updated struct definition, the
whole application should not crash. Instead, the value is silently
ignored and then overwritten by the proper value that has been fetched
from the API.

That way, users don't have to manually clear out the cache if a new API
schema or new features are released.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The cache is meant to help out by saving old responses. If those
responses do not conform anymore to an updated struct definition, the
whole application should not crash. Instead, the value is silently
ignored and then overwritten by the proper value that has been fetched
from the API.

That way, users don't have to manually clear out the cache if a new API
schema or new features are released.
</pre>
</div>
</content>
</entry>
<entry>
<title>don't need trait descriptions</title>
<updated>2019-12-13T01:26:00+00:00</updated>
<author>
<name>Daniel Schadt</name>
<email>kingdread@gmx.de</email>
</author>
<published>2019-12-13T01:26:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.kingdread.de/cgit.cgi/kondou/commit/?id=b66dc9a5863ecdb42e823db8d7ed0b253c0b75d0'/>
<id>b66dc9a5863ecdb42e823db8d7ed0b253c0b75d0</id>
<content type='text'>
As it looks, not every trait comes with this field, which prevents some
traitlines (notably the Firebrand one) from rendering successfully, as
serde refuses to deserialize the Trait.

We never displayed the description, and it's trivial to add back, so
that's why it was removed.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
As it looks, not every trait comes with this field, which prevents some
traitlines (notably the Firebrand one) from rendering successfully, as
serde refuses to deserialize the Trait.

We never displayed the description, and it's trivial to add back, so
that's why it was removed.
</pre>
</div>
</content>
</entry>
<entry>
<title>remove quick_error</title>
<updated>2019-12-12T01:16:27+00:00</updated>
<author>
<name>Daniel Schadt</name>
<email>kingdread@gmx.de</email>
</author>
<published>2019-12-12T01:16:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.kingdread.de/cgit.cgi/kondou/commit/?id=3c92e88164db6a94177fb4adeb18c80dffc377e4'/>
<id>3c92e88164db6a94177fb4adeb18c80dffc377e4</id>
<content type='text'>
quick_error used the deprecated Error::cause interface, therefore we
want to use our own error enums with proper methods.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
quick_error used the deprecated Error::cause interface, therefore we
want to use our own error enums with proper methods.
</pre>
</div>
</content>
</entry>
<entry>
<title>use helper traits for better code</title>
<updated>2019-12-12T00:25:28+00:00</updated>
<author>
<name>Daniel Schadt</name>
<email>kingdread@gmx.de</email>
</author>
<published>2019-12-12T00:25:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.kingdread.de/cgit.cgi/kondou/commit/?id=a6afa81d1d9f2dd7d10fe7c0555ae8a8a6d84867'/>
<id>a6afa81d1d9f2dd7d10fe7c0555ae8a8a6d84867</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
