<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:Wingdings;
        panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:"Segoe UI";
        panose-1:2 11 5 2 4 2 4 2 2 3;}
@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;
        mso-fareast-language:EN-US;}
h1
        {mso-style-priority:9;
        mso-style-link:"Otsikko 1 Char";
        mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:24.0pt;
        font-family:"Calibri",sans-serif;
        font-weight:bold;}
h2
        {mso-style-priority:9;
        mso-style-link:"Otsikko 2 Char";
        mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:18.0pt;
        font-family:"Calibri",sans-serif;
        font-weight:bold;}
h3
        {mso-style-priority:9;
        mso-style-link:"Otsikko 3 Char";
        mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:13.5pt;
        font-family:"Calibri",sans-serif;
        font-weight:bold;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
code
        {mso-style-priority:99;
        font-family:"Courier New";}
pre
        {mso-style-priority:99;
        mso-style-link:"HTML-esimuotoiltu Char";
        margin:0cm;
        font-size:10.0pt;
        font-family:"Courier New";}
span.Shkpostityyli17
        {mso-style-type:personal-compose;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
span.Otsikko1Char
        {mso-style-name:"Otsikko 1 Char";
        mso-style-priority:9;
        mso-style-link:"Otsikko 1";
        font-family:"Calibri",sans-serif;
        mso-fareast-language:FI;
        font-weight:bold;}
span.Otsikko2Char
        {mso-style-name:"Otsikko 2 Char";
        mso-style-priority:9;
        mso-style-link:"Otsikko 2";
        font-family:"Calibri",sans-serif;
        mso-fareast-language:FI;
        font-weight:bold;}
span.Otsikko3Char
        {mso-style-name:"Otsikko 3 Char";
        mso-style-priority:9;
        mso-style-link:"Otsikko 3";
        font-family:"Calibri",sans-serif;
        mso-fareast-language:FI;
        font-weight:bold;}
span.HTML-esimuotoiltuChar
        {mso-style-name:"HTML-esimuotoiltu Char";
        mso-style-priority:99;
        mso-style-link:HTML-esimuotoiltu;
        font-family:"Courier New";
        mso-fareast-language:FI;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;
        mso-fareast-language:EN-US;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:70.85pt 2.0cm 70.85pt 2.0cm;}
div.WordSection1
        {page:WordSection1;}
/* List Definitions */
@list l0
        {mso-list-id:805705904;
        mso-list-template-ids:-1265357614;}
@list l0:level1
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:36.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l0:level2
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:72.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:"Courier New";
        mso-bidi-font-family:"Times New Roman";}
@list l0:level3
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:108.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l0:level4
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:144.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l0:level5
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:180.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l0:level6
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:216.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l0:level7
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:252.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l0:level8
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:288.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l0:level9
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:324.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l1
        {mso-list-id:1608805068;
        mso-list-template-ids:-1149437592;}
@list l1:level1
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:36.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l1:level2
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:72.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:"Courier New";
        mso-bidi-font-family:"Times New Roman";}
@list l1:level3
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:108.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l1:level4
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:144.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l1:level5
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:180.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l1:level6
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:216.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l1:level7
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:252.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l1:level8
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:288.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l1:level9
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:324.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l2
        {mso-list-id:1796487036;
        mso-list-template-ids:-2078800592;}
@list l2:level1
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:36.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l2:level2
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:72.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:"Courier New";
        mso-bidi-font-family:"Times New Roman";}
@list l2:level3
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:108.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l2:level4
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:144.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l2:level5
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:180.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l2:level6
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:216.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l2:level7
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:252.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l2:level8
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:288.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l2:level9
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:324.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l3
        {mso-list-id:1976061585;
        mso-list-template-ids:-1928017022;}
@list l3:level1
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:36.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l3:level2
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:72.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:"Courier New";
        mso-bidi-font-family:"Times New Roman";}
@list l3:level3
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:108.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l3:level4
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:144.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l3:level5
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:180.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l3:level6
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:216.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l3:level7
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:252.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l3:level8
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:288.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l3:level9
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:324.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
ol
        {margin-bottom:0cm;}
ul
        {margin-bottom:0cm;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="FI" link="#0563C1" vlink="#954F72" style="word-wrap:break-word">
<div class="WordSection1">
<p class="MsoNormal"><span lang="EN-US" style="font-family:"Segoe UI",sans-serif">Good news everyone,<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:"Segoe UI",sans-serif"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:"Segoe UI",sans-serif">We released Oskari 2.9.0 yesterday and it is now available on GitHub (<a href="https://github.com/oskariorg">https://github.com/oskariorg</a>) and Oskari.org Maven repository.
 The sample application package has been updated on the download link in Oskari.org (<a href="https://oskari.org/download">https://oskari.org/download</a>) and
<a href="http://download.osgeo.org/oskari/">http://download.osgeo.org/oskari/</a>. As always you can take a peek at the latest release at
<a href="https://demo.oskari.org/">https://demo.oskari.org/</a>.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:"Segoe UI",sans-serif"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:"Segoe UI",sans-serif">This time we have a bunch of smaller improvements, bug fixes and library updates and we have migrated the “guided tour” functionality on geoportal and the layer list functionality
 on embedded maps from jQuery to React.js. You might need to update application specific code if you used the guided tour by pushing your app-specific content to it. The layer list on embedded maps now has the “default UI” option present the rounded dark style
 like most other tools and the old text-based UI is no longer available. We also added new options for “draw tools” for programmatic usage (on embedded maps for example).<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<h1 style="mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:12.0pt;margin-left:0cm;background:white">
<span lang="EN-US" style="font-size:22.0pt;font-family:"Segoe UI",sans-serif;color:#24292F">Release Notes<o:p></o:p></span></h1>
<h2 style="mso-margin-top-alt:18.0pt;margin-right:0cm;margin-bottom:12.0pt;margin-left:0cm;background:white;box-sizing: border-box;border-bottom:var(--color-border-muted);font-variant-ligatures: normal;font-variant-caps: normal;orphans: 2;text-align:start;widows: 2;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;word-spacing:0px">
<span lang="EN-US" style="font-size:16.5pt;font-family:"Segoe UI",sans-serif;color:#24292F">Oskari-frontend<o:p></o:p></span></h2>
<p style="mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:12.0pt;margin-left:0cm;background:white;box-sizing: border-box;font-variant-ligatures: normal;font-variant-caps: normal;orphans: 2;text-align:start;widows: 2;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;word-spacing:0px">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif;color:#24292F">For a full list of changes see: </span><span style="font-size:12.0pt;font-family:"Segoe UI",sans-serif;color:#24292F"><a href="https://github.com/oskariorg/oskari-frontend/milestone/39?closed=1"><span lang="EN-US">https://github.com/oskariorg/oskari-frontend/milestone/39?closed=1</span></a></span><span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif;color:#24292F"><o:p></o:p></span></p>
<h3 style="mso-margin-top-alt:18.0pt;margin-right:0cm;margin-bottom:12.0pt;margin-left:0cm;background:white;box-sizing: border-box;font-variant-ligatures: normal;font-variant-caps: normal;orphans: 2;text-align:start;widows: 2;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;word-spacing:0px">
<span lang="EN-US" style="font-size:14.0pt;font-family:"Segoe UI",sans-serif;color:#24292F">Draw tools<o:p></o:p></span></h3>
<p style="margin:0cm;background:white;box-sizing: border-box;font-variant-ligatures: normal;font-variant-caps: normal;orphans: 2;text-align:start;widows: 2;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;word-spacing:0px">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif;color:#24292F">Added an option for draw tools to use a validation limit for length of a line and area of a polygon. The limits can be set with </span><code><span lang="EN-US" style="font-size:10.0pt;font-family:Consolas;color:#24292F">StartDrawingRequest</span></code><span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif;color:#24292F"> options:<o:p></o:p></span></p>
<pre style="background:white;box-sizing: border-box;overflow-wrap: normal;background-color:var(--color-canvas-subtle);border-radius: 6px;overflow:auto"><code><span lang="EN-US" style="font-family:Consolas;color:#24292F;border:none windowtext 1.0pt;padding:0cm">{<o:p></o:p></span></code></pre>
<pre style="background:white"><code><span lang="EN-US" style="font-family:Consolas;color:#24292F;border:none windowtext 1.0pt;padding:0cm">    ...,<o:p></o:p></span></code></pre>
<pre style="background:white"><code><span lang="EN-US" style="font-family:Consolas;color:#24292F;border:none windowtext 1.0pt;padding:0cm">    limits: {<o:p></o:p></span></code></pre>
<pre style="background:white"><code><span lang="EN-US" style="font-family:Consolas;color:#24292F;border:none windowtext 1.0pt;padding:0cm">        area: `number in m2 limiting area size`,<o:p></o:p></span></code></pre>
<pre style="background:white"><code><span lang="EN-US" style="font-family:Consolas;color:#24292F;border:none windowtext 1.0pt;padding:0cm">        length: `number in meters limiting line length`<o:p></o:p></span></code></pre>
<pre style="background:white"><code><span lang="EN-US" style="font-family:Consolas;color:#24292F;border:none windowtext 1.0pt;padding:0cm">    }<o:p></o:p></span></code></pre>
<pre style="background:white"><code><span lang="EN-US" style="font-family:Consolas;color:#24292F;border:none windowtext 1.0pt;padding:0cm">} <o:p></o:p></span></code></pre>
<p style="margin:0cm;background:white;box-sizing: border-box;font-variant-ligatures: normal;font-variant-caps: normal;orphans: 2;text-align:start;widows: 2;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;word-spacing:0px">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif;color:#24292F">Enabled modifying a geometry with a limited shape for </span><code><span lang="EN-US" style="font-size:10.0pt;font-family:Consolas;color:#24292F">Circle</span></code><span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif;color:#24292F">, </span><code><span lang="EN-US" style="font-size:10.0pt;font-family:Consolas;color:#24292F">Box</span></code><span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif;color:#24292F"> and </span><code><span lang="EN-US" style="font-size:10.0pt;font-family:Consolas;color:#24292F">Square</span></code><span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif;color:#24292F">.
 Previously modifying a polygon shape was always done in a way that resulted in losing the original shape (new points could be added and individual points could be moved to skew the geometry). The previous method for editing is still available when using the
 shape </span><code><span lang="EN-US" style="font-size:10.0pt;font-family:Consolas;color:#24292F">Polygon</span></code><span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif;color:#24292F"> to be used for editing.<o:p></o:p></span></p>
<p style="mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:12.0pt;margin-left:0cm;background:white;box-sizing: border-box;font-variant-ligatures: normal;font-variant-caps: normal;orphans: 2;text-align:start;widows: 2;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;word-spacing:0px">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif;color:#24292F">Fixed issues with intersection checks and measurements results when editing a feature.<o:p></o:p></span></p>
<h3 style="mso-margin-top-alt:18.0pt;margin-right:0cm;margin-bottom:12.0pt;margin-left:0cm;background:white;box-sizing: border-box;font-variant-ligatures: normal;font-variant-caps: normal;orphans: 2;text-align:start;widows: 2;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;word-spacing:0px">
<span lang="EN-US" style="font-size:14.0pt;font-family:"Segoe UI",sans-serif;color:#24292F">Guided tour<o:p></o:p></span></h3>
<p style="mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:12.0pt;margin-left:0cm;background:white;box-sizing: border-box;font-variant-ligatures: normal;font-variant-caps: normal;orphans: 2;text-align:start;widows: 2;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;word-spacing:0px">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif;color:#24292F">Guided tour implementation has been migrated from jQuery to React. This might affect custom/app-specific bundles that add content to the Guided tour.<o:p></o:p></span></p>
<p style="mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:12.0pt;margin-left:0cm;background:white;box-sizing: border-box;font-variant-ligatures: normal;font-variant-caps: normal;orphans: 2;text-align:start;widows: 2;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;word-spacing:0px">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif;color:#24292F">Text content should work like before/without changes but any custom actions that for example open a functionality etc needs to be migrated. You can see the changes required
 for bundles on this PR: </span><span style="font-size:12.0pt;font-family:"Segoe UI",sans-serif;color:#24292F"><a href="https://github.com/oskariorg/oskari-frontend/pull/1927/files"><span lang="EN-US">https://github.com/oskariorg/oskari-frontend/pull/1927/files</span></a></span><span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif;color:#24292F"><o:p></o:p></span></p>
<h3 style="mso-margin-top-alt:18.0pt;margin-right:0cm;margin-bottom:12.0pt;margin-left:0cm;background:white;box-sizing: border-box;font-variant-ligatures: normal;font-variant-caps: normal;orphans: 2;text-align:start;widows: 2;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;word-spacing:0px">
<span lang="EN-US" style="font-size:14.0pt;font-family:"Segoe UI",sans-serif;color:#24292F">Admin layer-editor<o:p></o:p></span></h3>
<p style="mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:12.0pt;margin-left:0cm;background:white;box-sizing: border-box;font-variant-ligatures: normal;font-variant-caps: normal;orphans: 2;text-align:start;widows: 2;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;word-spacing:0px">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif;color:#24292F">Admin now has an option to visualize the layer coverage area (when available) on the map in the layer admin visualization tab. This is helpful for debugging issues where
 layer contents are not shown properly due to coverage area issues.<o:p></o:p></span></p>
<p style="mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:12.0pt;margin-left:0cm;background:white;box-sizing: border-box;font-variant-ligatures: normal;font-variant-caps: normal;orphans: 2;text-align:start;widows: 2;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;word-spacing:0px">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif;color:#24292F">Vector tile layers now have an option to enable "declutter" which draws labels separately from features. This has some performance implications but can be used to fix
 an issue where labels are clipped at tile edges.<o:p></o:p></span></p>
<h3 style="mso-margin-top-alt:18.0pt;margin-right:0cm;margin-bottom:12.0pt;margin-left:0cm;background:white;box-sizing: border-box;font-variant-ligatures: normal;font-variant-caps: normal;orphans: 2;text-align:start;widows: 2;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;word-spacing:0px">
<span lang="EN-US" style="font-size:14.0pt;font-family:"Segoe UI",sans-serif;color:#24292F">Swipe tool<o:p></o:p></span></h3>
<p style="mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:12.0pt;margin-left:0cm;background:white;box-sizing: border-box;font-variant-ligatures: normal;font-variant-caps: normal;orphans: 2;text-align:start;widows: 2;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;word-spacing:0px">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif;color:#24292F">Hover on vector features is now disabled when the "swipe" tool is active. This prevents an issue where features that are not shown due to swipe could be hovered on,
 bringing them visible.<o:p></o:p></span></p>
<p style="mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:12.0pt;margin-left:0cm;background:white;box-sizing: border-box;font-variant-ligatures: normal;font-variant-caps: normal;orphans: 2;text-align:start;widows: 2;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;word-spacing:0px">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif;color:#24292F">GFI/vector object data is no longer queried for clicks on "hidden" side of the swipe tool for the layer that is not shown due to swipe.<o:p></o:p></span></p>
<h3 style="mso-margin-top-alt:18.0pt;margin-right:0cm;margin-bottom:12.0pt;margin-left:0cm;background:white;box-sizing: border-box;font-variant-ligatures: normal;font-variant-caps: normal;orphans: 2;text-align:start;widows: 2;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;word-spacing:0px">
<span lang="EN-US" style="font-size:14.0pt;font-family:"Segoe UI",sans-serif;color:#24292F">Layer selection tool on embedded maps<o:p></o:p></span></h3>
<p style="mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:12.0pt;margin-left:0cm;background:white;box-sizing: border-box;font-variant-ligatures: normal;font-variant-caps: normal;orphans: 2;text-align:start;widows: 2;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;word-spacing:0px">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif;color:#24292F">The layer list implementation for embedded maps has been rewritten with React.<o:p></o:p></span></p>
<p style="mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:12.0pt;margin-left:0cm;background:white;box-sizing: border-box;font-variant-ligatures: normal;font-variant-caps: normal;orphans: 2;text-align:start;widows: 2;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;word-spacing:0px">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif;color:#24292F">The default UI option is now the rounded dark one with an icon (like most of the other tools) instead of the textual button on the map.<o:p></o:p></span></p>
<h3 style="mso-margin-top-alt:18.0pt;margin-right:0cm;margin-bottom:12.0pt;margin-left:0cm;background:white;box-sizing: border-box;font-variant-ligatures: normal;font-variant-caps: normal;orphans: 2;text-align:start;widows: 2;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;word-spacing:0px">
<span style="font-size:14.0pt;font-family:"Segoe UI",sans-serif;color:#24292F">Publisher<o:p></o:p></span></h3>
<ul type="disc">
<li class="MsoNormal" style="color:#24292F;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l3 level1 lfo1;background:white;box-sizing: border-box">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif">First steps has been taken on publisher for jQuery -> React migration<o:p></o:p></span></li><li class="MsoNormal" style="color:#24292F;margin-top:3.0pt;mso-margin-bottom-alt:auto;mso-list:l3 level1 lfo1;background:white;box-sizing: border-box">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif">Layer selection tool now allows showing metadata links for layers (option in publisher)<o:p></o:p></span></li><li class="MsoNormal" style="color:#24292F;margin-top:3.0pt;mso-margin-bottom-alt:auto;mso-list:l3 level1 lfo1;background:white;box-sizing: border-box">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif">Fixed an error where map size was not always properly reset from preview size to full size when exiting the publisher<o:p></o:p></span></li><li class="MsoNormal" style="color:#24292F;margin-top:3.0pt;mso-margin-bottom-alt:auto;mso-list:l3 level1 lfo1;background:white;box-sizing: border-box">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif">Fixed an issue where the mobile toolbar was not shown properly when tools were added with the map size preview set to small<o:p></o:p></span></li></ul>
<h3 style="mso-margin-top-alt:18.0pt;margin-right:0cm;margin-bottom:12.0pt;margin-left:0cm;background:white;box-sizing: border-box;font-variant-ligatures: normal;font-variant-caps: normal;orphans: 2;text-align:start;widows: 2;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;word-spacing:0px">
<span style="font-size:14.0pt;font-family:"Segoe UI",sans-serif;color:#24292F">Other fixes<o:p></o:p></span></h3>
<ul type="disc">
<li class="MsoNormal" style="color:#24292F;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l1 level1 lfo2;background:white;box-sizing: border-box">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif">Marker size backward compatibility fix: </span><span style="font-size:12.0pt;font-family:"Segoe UI",sans-serif"><a href="https://github.com/oskariorg/oskari-frontend/pull/1947"><span lang="EN-US">#1947</span></a></span><span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif"><o:p></o:p></span></li><li class="MsoNormal" style="color:#24292F;margin-top:3.0pt;mso-margin-bottom-alt:auto;mso-list:l1 level1 lfo2;background:white;box-sizing: border-box">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif">Improved support to show diverging statistical data with choropleth visualization<o:p></o:p></span></li><li class="MsoNormal" style="color:#24292F;margin-top:3.0pt;mso-margin-bottom-alt:auto;mso-list:l1 level1 lfo2;background:white;box-sizing: border-box">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif">Searching/filtering layers with text has been improved<o:p></o:p></span></li><li class="MsoNormal" style="color:#24292F;margin-top:3.0pt;mso-margin-bottom-alt:auto;mso-list:l1 level1 lfo2;background:white;box-sizing: border-box">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif">Replaced lot of custom Delete-button impls with the generic on under oskari-ui<o:p></o:p></span></li><li class="MsoNormal" style="color:#24292F;margin-top:3.0pt;mso-margin-bottom-alt:auto;mso-list:l1 level1 lfo2;background:white;box-sizing: border-box">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif">Fixed a visual issue where some icons on buttons were clipped from the bottom when using Safari as browser<o:p></o:p></span></li><li class="MsoNormal" style="color:#24292F;margin-top:3.0pt;mso-margin-bottom-alt:auto;mso-list:l1 level1 lfo2;background:white;box-sizing: border-box">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif">The frontend no longer expects WMTS-layers to have resource urls<o:p></o:p></span></li><li class="MsoNormal" style="color:#24292F;margin-top:3.0pt;mso-margin-bottom-alt:auto;mso-list:l1 level1 lfo2;background:white;box-sizing: border-box">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif">An error notification is now displayed to user if there is a technical problem showing a WMTS-layer (tile matrix can't be parsed etc)<o:p></o:p></span></li><li class="MsoNormal" style="color:#24292F;margin-top:3.0pt;mso-margin-bottom-alt:auto;mso-list:l1 level1 lfo2;background:white;box-sizing: border-box">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif">Added a notification when user adds a layer to map that was previously hidden (a very specific scenario where user adds a layer, hides it, removes it from map and adds it to map again)<o:p></o:p></span></li><li class="MsoNormal" style="color:#24292F;margin-top:3.0pt;mso-margin-bottom-alt:auto;mso-list:l1 level1 lfo2;background:white;box-sizing: border-box">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif">Fixed an issue with the table-component where large continuous content on a cell (like my places feature with a long name without any spaces etc) could push the rest of table columns
 "off screen"<o:p></o:p></span></li><li class="MsoNormal" style="color:#24292F;margin-top:3.0pt;mso-margin-bottom-alt:auto;mso-list:l1 level1 lfo2;background:white;box-sizing: border-box">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif">Restored proper data provider "groups" for user generated content (my places, userlayers etc)<o:p></o:p></span></li><li class="MsoNormal" style="color:#24292F;margin-top:3.0pt;mso-margin-bottom-alt:auto;mso-list:l1 level1 lfo2;background:white;box-sizing: border-box">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif">Fixed an issue where removing a personal default view on geoportal could reload the page with an unexpected system default (like a 3d geoportal instead of the default 2d)<o:p></o:p></span></li><li class="MsoNormal" style="color:#24292F;margin-top:3.0pt;mso-margin-bottom-alt:auto;mso-list:l1 level1 lfo2;background:white;box-sizing: border-box">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif">Vector tile layers are now listed under "raster layers" filter since they behave more like raster than vector layers from end-user perspective (previously they were not listed under
 any layer type filters)<o:p></o:p></span></li></ul>
<h3 style="mso-margin-top-alt:18.0pt;margin-right:0cm;margin-bottom:12.0pt;margin-left:0cm;background:white;box-sizing: border-box;font-variant-ligatures: normal;font-variant-caps: normal;orphans: 2;text-align:start;widows: 2;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;word-spacing:0px">
<span style="font-size:14.0pt;font-family:"Segoe UI",sans-serif;color:#24292F">Library updates<o:p></o:p></span></h3>
<ul type="disc">
<li class="MsoNormal" style="color:#24292F;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l2 level1 lfo3;background:white;box-sizing: border-box">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif">OpenLayers 6.13 -> 7.1 (NOTE! OpenLayers 7.0 dropped support for Internet Explorer)<o:p></o:p></span></li><li class="MsoNormal" style="color:#24292F;margin-top:3.0pt;mso-margin-bottom-alt:auto;mso-list:l2 level1 lfo3;background:white;box-sizing: border-box">
<span style="font-size:12.0pt;font-family:"Segoe UI",sans-serif">geostats 1.8.0 -> 2.0.0<o:p></o:p></span></li><li class="MsoNormal" style="color:#24292F;margin-top:3.0pt;mso-margin-bottom-alt:auto;mso-list:l2 level1 lfo3;background:white;box-sizing: border-box">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif">Unused libraries that were stored under oskari-frontend/libraries have been removed: jstree, clipper<o:p></o:p></span></li></ul>
<h2 style="mso-margin-top-alt:18.0pt;margin-right:0cm;margin-bottom:12.0pt;margin-left:0cm;background:white">
<span lang="EN-US" style="font-size:16.5pt;font-family:"Segoe UI",sans-serif;color:#24292F">Oskari-server<o:p></o:p></span></h2>
<p style="mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:12.0pt;margin-left:0cm;background:white;box-sizing: border-box;font-variant-ligatures: normal;font-variant-caps: normal;orphans: 2;text-align:start;widows: 2;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;word-spacing:0px">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif;color:#24292F">For a full list of changes see: </span><span style="font-size:12.0pt;font-family:"Segoe UI",sans-serif;color:#24292F"><a href="https://github.com/oskariorg/oskari-server/milestone/42?closed=1"><span lang="EN-US">https://github.com/oskariorg/oskari-server/milestone/42?closed=1</span></a></span><span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif;color:#24292F"><o:p></o:p></span></p>
<ul type="disc">
<li class="MsoNormal" style="color:#24292F;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l0 level1 lfo4;background:white;box-sizing: border-box">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif">Allow users to include metadata flyout in embedded maps.<o:p></o:p></span></li><li class="MsoNormal" style="color:#24292F;margin-top:3.0pt;mso-margin-bottom-alt:auto;mso-list:l0 level1 lfo4;background:white;box-sizing: border-box">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif">Allow admins to override capabilities based max features limit for vector sources with layer attributes.<o:p></o:p></span></li><li class="MsoNormal" style="color:#24292F;margin-top:3.0pt;mso-margin-bottom-alt:auto;mso-list:l0 level1 lfo4;background:white;box-sizing: border-box">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif">Handle missing legend url for proxied layer to reduce noise in server logs.<o:p></o:p></span></li><li class="MsoNormal" style="color:#24292F;margin-top:3.0pt;mso-margin-bottom-alt:auto;mso-list:l0 level1 lfo4;background:white;box-sizing: border-box">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif">Enable region mapping for search results in WFS search channels: </span><span style="font-size:12.0pt;font-family:"Segoe UI",sans-serif"><a href="https://github.com/oskariorg/oskari-server/pull/883"><span lang="EN-US">#883</span></a></span><span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif"><o:p></o:p></span></li><li class="MsoNormal" style="color:#24292F;margin-top:3.0pt;mso-margin-bottom-alt:auto;mso-list:l0 level1 lfo4;background:white;box-sizing: border-box">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif">Handle timeseries layer with single time value and no resolution part as normal layer.<o:p></o:p></span></li><li class="MsoNormal" style="color:#24292F;margin-top:3.0pt;mso-margin-bottom-alt:auto;mso-list:l0 level1 lfo4;background:white;box-sizing: border-box">
<span lang="EN-US" style="font-size:12.0pt;font-family:"Segoe UI",sans-serif">Pass user generated statistical indicators for frontend even when they don't have data (since user can add data for them later).<o:p></o:p></span></li><li class="MsoNormal" style="color:#24292F;margin-top:3.0pt;mso-margin-bottom-alt:auto;mso-list:l0 level1 lfo4;background:white;box-sizing: border-box">
<span style="font-size:12.0pt;font-family:"Segoe UI",sans-serif">Library updates:<o:p></o:p></span></li><ul type="circle">
<li class="MsoNormal" style="color:#24292F;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l0 level2 lfo4;background:white;box-sizing: border-box">
<span style="font-size:12.0pt;font-family:"Segoe UI",sans-serif">GeoTools: 25.1 => 27.1<o:p></o:p></span></li><li class="MsoNormal" style="color:#24292F;margin-top:3.0pt;mso-margin-bottom-alt:auto;mso-list:l0 level2 lfo4;background:white;box-sizing: border-box">
<span style="font-size:12.0pt;font-family:"Segoe UI",sans-serif">JTS: 1.18.1 => 1.18.2<o:p></o:p></span></li><li class="MsoNormal" style="color:#24292F;margin-top:3.0pt;mso-margin-bottom-alt:auto;mso-list:l0 level2 lfo4;background:white;box-sizing: border-box">
<span style="font-size:12.0pt;font-family:"Segoe UI",sans-serif">MVT (no.ecc.vectortile): 1.3.15 => 1.3.16<o:p></o:p></span></li><li class="MsoNormal" style="color:#24292F;margin-top:3.0pt;mso-margin-bottom-alt:auto;mso-list:l0 level2 lfo4;background:white;box-sizing: border-box">
<span style="font-size:12.0pt;font-family:"Segoe UI",sans-serif">JSoup 1.14.2 -> 1.15.3<o:p></o:p></span></li><li class="MsoNormal" style="color:#24292F;margin-top:3.0pt;mso-margin-bottom-alt:auto;mso-list:l0 level2 lfo4;background:white;box-sizing: border-box">
<span style="font-size:12.0pt;font-family:"Segoe UI",sans-serif">postgres JDBC 42.3.3 -> 42.5.0<o:p></o:p></span></li><li class="MsoNormal" style="color:#24292F;margin-top:3.0pt;mso-margin-bottom-alt:auto;mso-list:l0 level2 lfo4;background:white;box-sizing: border-box">
<span style="font-size:12.0pt;font-family:"Segoe UI",sans-serif">Jetty 9.4.44.v20210927 -> 9.4.48.v20220622<o:p></o:p></span></li></ul>
</ul>
<p class="MsoNormal" style="margin-top:3.0pt;mso-margin-bottom-alt:auto;background:white">
<span style="font-size:12.0pt;font-family:"Segoe UI",sans-serif;color:#24292F"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:"Segoe UI",sans-serif">Happy updating,<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:"Segoe UI",sans-serif">    Sami<o:p></o:p></span></p>
</div>
</body>
</html>