<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<p>Dear contributors,<br>
</p>
<p>using the extra.* fields was not so easy and could easily lead to
errors with overwriting[1]. In PR#1046[2] I proposed a new
behavior for this field.</p>
<p>This introduces a new harmonization type 'JSONDict' which is the
same as 'JSON' but requires the content to be a dictionary.<br>
The harmonization now allows "subfields" as they are used by the
new 'JSONDict' type, including validity checks for the values.<br>
The message library now handles any read/write access to extra.*
transparently, no workarounds are needed. That's the main feature.<br>
The field is properly exploded, see bug #791[3].<br>
All bots currently present in certtools/develop are converted to
use the new simpler behavior, including the tests.</p>
<p>This change requires backwards compatibility:<br>
Bots can still use the old interfaces (reading and writing the
whole field), that behavior should either be removed in 2.0 or be
made consistent for all hierarchical fields.<br>
Old configurations (type of extra is JSON) still work, but raises
a warning in the `intelmqctl check` tool. This behavior will be
removed in 2.0 too.<br>
So compatibility with 1.0 is achieved, both for code and
configuration.<br>
</p>
<p>Do you see any issues with this approach?</p>
<p>Sebastian<br>
</p>
<p>[1]: For example here: <a class="moz-txt-link-freetext"
href="https://github.com/certtools/intelmq/pull/1004#discussion_r121417044">https://github.com/certtools/intelmq/pull/1004#discussion_r121417044</a><br>
[2]: <a class="moz-txt-link-freetext"
href="https://github.com/certtools/intelmq/pull/1046">https://github.com/certtools/intelmq/pull/1046</a><br>
[3]: <a class="moz-txt-link-freetext"
href="https://github.com/certtools/intelmq/issues/791">https://github.com/certtools/intelmq/issues/791</a><br>
</p>
<pre class="moz-signature" cols="72">--
// Sebastian Wagner <a class="moz-txt-link-rfc2396E" href="mailto:wagner@cert.at"><wagner@cert.at></a> - T: +43 1 5056416 7201
// CERT Austria - <a class="moz-txt-link-freetext" href="https://www.cert.at/">https://www.cert.at/</a>
// Eine Initiative der nic.at GmbH - <a class="moz-txt-link-freetext" href="https://www.nic.at/">https://www.nic.at/</a>
// Firmenbuchnummer 172568b, LG Salzburg</pre>
</body>
</html>