<!-- 
RSS generated by JIRA (9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b) at Mon Feb 12 10:19:13 CET 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>Magnolia - Issue tracker</title>
    <link>https://jira.magnolia-cms.com</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-uk</language>    <build-info>
        <version>9.4.2</version>
        <build-number>940002</build-number>
        <build-date>19-01-2023</build-date>
    </build-info>


<item>
            <title>[MGNLMIGRATION-322] Improve comparison of users/userGroups/userRoles workspace</title>
                <link>https://jira.magnolia-cms.com/browse/MGNLMIGRATION-322</link>
                <project id="10574" key="MGNLMIGRATION">Migration 4.4 to 4.5 (closed)</project>
                    <description>&lt;p&gt;&lt;tt&gt;info.magnolia.module.migrationtests.CompareConfigsTest.testCompareUsersWorkspace()&lt;/tt&gt; currently has a lot of ignores specified:&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;
&lt;span class=&quot;code-keyword&quot;&gt;public&lt;/span&gt; void testCompareUsersWorkspace() &lt;span class=&quot;code-keyword&quot;&gt;throws&lt;/span&gt; Exception {
        assertTrue(compare(&lt;span class=&quot;code-quote&quot;&gt;&quot;/&quot;&lt;/span&gt;, RepositoryConstants.USERS, &lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; &lt;span class=&quot;code-object&quot;&gt;String&lt;/span&gt;[] {
                &lt;span class=&quot;code-quote&quot;&gt;&quot;/system/superuser/lastaccess&quot;&lt;/span&gt;,
                &lt;span class=&quot;code-quote&quot;&gt;&quot;/system/superuser/pswd&quot;&lt;/span&gt;,
                &lt;span class=&quot;code-quote&quot;&gt;&quot;/system/anonymous/pswd&quot;&lt;/span&gt;,
        }));
    }
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;Although ignoring of &lt;tt&gt;password&lt;/tt&gt; and &lt;tt&gt;lastaccess&lt;/tt&gt; properties is not so bad, bigger problem is with ids of roles which could be added in different order on fresh/updated instance:&lt;br/&gt;
&lt;a href=&quot;http://hudson.magnolia-cms.com/job/int_migration-tests_4.4-to-4.5.x-branch/ws/magnolia-migration-integration/diff-reports/users.html&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://hudson.magnolia-cms.com/job/int_migration-tests_4.4-to-4.5.x-branch/ws/magnolia-migration-integration/diff-reports/users.html&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;same applies to (&lt;tt&gt;userGroups&lt;/tt&gt; - switched assigned roles and &lt;tt&gt;userRoles&lt;/tt&gt; - switched permissions)&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Implement comparison which handle such cases (parse out the report if no better idea). Please move such tests out of &lt;tt&gt;CompareConfigsTest&lt;/tt&gt; to something like &lt;tt&gt;Compare*Workspace&lt;/tt&gt; if it would require new implementation.&lt;/p&gt;</description>
                <environment></environment>
        <key id="36690">MGNLMIGRATION-322</key>
            <summary>Improve comparison of users/userGroups/userRoles workspace</summary>
                <type id="4" iconUrl="https://jira.magnolia-cms.com/secure/viewavatar?size=xsmall&amp;avatarId=10890&amp;avatarType=issuetype">Improvement</type>
                                            <priority id="3" iconUrl="https://jira.magnolia-cms.com/images/icons/priorities/major.svg">Major</priority>
                        <status id="6" iconUrl="https://jira.magnolia-cms.com/images/icons/statuses/closed.png" description="The issue is considered finished, the resolution is correct. Issues which are not closed can be reopened.">Closed</status>
                    <statusCategory id="3" key="done" colorName="success"/>
                                    <resolution id="1">Fixed</resolution>
                                        <assignee username="rsiska">Robert &#352;i&#353;ka</assignee>
                                    <reporter username="rkovarik">Roman Kova&#345;&#237;k</reporter>
                        <labels>
                            <label>maintenance</label>
                    </labels>
                <created>Mon, 24 Feb 2014 10:09:29 +0100</created>
                <updated>Fri, 9 May 2014 11:29:00 +0200</updated>
                            <resolved>Fri, 9 May 2014 08:48:00 +0200</resolved>
                                                    <fixVersion>1.2.10</fixVersion>
                                        <due></due>
                            <votes>0</votes>
                                    <watches>3</watches>
                                                                                                                <comments>
                            <comment id="82287" author="mdivilek" created="Thu, 27 Mar 2014 17:04:35 +0100"  >&lt;p&gt;Reopen:&lt;/p&gt;

&lt;p&gt;Seems that &quot;deepcompare&quot; doesn&apos;t work at all and also ignoring path looks broken.&lt;/p&gt;

&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;
assertTrue(compare(&lt;span class=&quot;code-quote&quot;&gt;&quot;/&quot;&lt;/span&gt;, &lt;span class=&quot;code-quote&quot;&gt;&quot;users&quot;&lt;/span&gt;, &lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; &lt;span class=&quot;code-object&quot;&gt;String&lt;/span&gt;[] {
                &lt;span class=&quot;code-quote&quot;&gt;&quot;/system/superuser/lastaccess&quot;&lt;/span&gt;,
                &lt;span class=&quot;code-quote&quot;&gt;&quot;/system/superuser/pswd&quot;&lt;/span&gt;,
                &lt;span class=&quot;code-quote&quot;&gt;&quot;/system/anonymous/pswd&quot;&lt;/span&gt;,
                &lt;span class=&quot;code-quote&quot;&gt;&quot;/admin/peter/pswd&quot;&lt;/span&gt;,
                &lt;span class=&quot;code-quote&quot;&gt;&quot;/admin/eric/pswd&quot;&lt;/span&gt;,
        }, &lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; &lt;span class=&quot;code-object&quot;&gt;String&lt;/span&gt;[] { &lt;span class=&quot;code-comment&quot;&gt;// subdirectories of these paths might be shuffled, but values have to match.
&lt;/span&gt;                &lt;span class=&quot;code-quote&quot;&gt;&quot;/system/superuser/roles&quot;&lt;/span&gt;,
                &lt;span class=&quot;code-quote&quot;&gt;&quot;/system/anonymous/roles&quot;&lt;/span&gt;
        }));
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;see &lt;a href=&quot;http://hudson.magnolia-cms.com/view/MaintenanceX/job/int_migration-tests_4.4-to-4.5.x-branch/ws/magnolia-migration-integration/diff-reports/users.html&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://hudson.magnolia-cms.com/view/MaintenanceX/job/int_migration-tests_4.4-to-4.5.x-branch/ws/magnolia-migration-integration/diff-reports/users.html&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For example all password properties should be ignored, but they are not.&lt;/p&gt;

&lt;p&gt;On &quot;/system/anonymous/roles&quot; &quot;deepcompare&quot; should be used, but roles are still marked as different because of different order.&lt;/p&gt;


&lt;p&gt;&quot;Deepcompare&quot; needs to be used also is usergroups and user roles workspaces.&lt;/p&gt;

&lt;p&gt;For example&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;
&lt;span class=&quot;code-quote&quot;&gt;&quot;/demo-project-editors/groups&quot;&lt;/span&gt;,
&lt;span class=&quot;code-quote&quot;&gt;&quot;/demo-project-editors/roles&quot;&lt;/span&gt;,
&lt;span class=&quot;code-quote&quot;&gt;&quot;/demo-project-members/groups&quot;&lt;/span&gt;,
&lt;span class=&quot;code-quote&quot;&gt;&quot;/demo-project-members/roles&quot;&lt;/span&gt;,
&lt;span class=&quot;code-quote&quot;&gt;&quot;/demo-project-publishers/groups&quot;&lt;/span&gt;,
&lt;span class=&quot;code-quote&quot;&gt;&quot;/demo-project-publishers/roles&quot;&lt;/span&gt;
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</comment>
                            <comment id="82415" author="rkovarik" created="Tue, 1 Apr 2014 08:13:38 +0200"  >&lt;ol&gt;
	&lt;li&gt;The tests in &lt;tt&gt;users&lt;/tt&gt; workspace is still failing because &lt;tt&gt;pswd&lt;/tt&gt; properties are not ignored.&lt;br/&gt;
It would be also good if we don&apos;t have to explicitly specify paths. e.g.:
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;
&lt;span class=&quot;code-quote&quot;&gt;&quot;/demo-project-editors/groups&quot;&lt;/span&gt;,
&lt;span class=&quot;code-quote&quot;&gt;&quot;/demo-project-editors/roles&quot;&lt;/span&gt;,
&lt;span class=&quot;code-quote&quot;&gt;&quot;/demo-project-members/groups&quot;&lt;/span&gt;,
&lt;span class=&quot;code-quote&quot;&gt;&quot;/demo-project-members/roles&quot;&lt;/span&gt;,
&lt;span class=&quot;code-quote&quot;&gt;&quot;/demo-project-publishers/groups&quot;&lt;/span&gt;,
&lt;span class=&quot;code-quote&quot;&gt;&quot;/demo-project-publishers/roles&quot;&lt;/span&gt;
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;and for example &lt;tt&gt;X/roles&lt;/tt&gt; a &lt;tt&gt;/X/groups&lt;/tt&gt; would be considered automatically for &lt;tt&gt;usergroups&lt;/tt&gt; workspace so we wouldn&apos;t have to specify paths again when a new role would be added (if possible).&lt;/p&gt;&lt;/li&gt;
	&lt;li&gt;Would be cool if empty ACL nodes would be considered same as missing ACL nodes:
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;
Expected presence of child node &lt;span class=&quot;code-quote&quot;&gt;&apos;&lt;span class=&quot;code-keyword&quot;&gt;null&lt;/span&gt;&apos;&lt;/span&gt; but was &lt;span class=&quot;code-quote&quot;&gt;&apos;acl_config&apos;&lt;/span&gt; - comparing  at &lt;span class=&quot;code-keyword&quot;&gt;null&lt;/span&gt; to &amp;lt;acl_config...&amp;gt; at /ROOT/admin/eric/acl_config
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;Otherwise really good! That&apos;s what we need &lt;img class=&quot;emoticon&quot; src=&quot;https://jira.magnolia-cms.com/images/icons/emoticons/wink.png&quot; height=&quot;16&quot; width=&quot;16&quot; align=&quot;absmiddle&quot; alt=&quot;&quot; border=&quot;0&quot;/&gt;&lt;/p&gt;</comment>
                            <comment id="84894" author="rsiska" created="Fri, 9 May 2014 08:48:00 +0200"  >&lt;p&gt;XSLT now sorts the roles&apos;/groups&apos; IDs on &lt;tt&gt;user*&lt;/tt&gt; workspaces and ignores &lt;tt&gt;pswd&lt;/tt&gt; and &lt;tt&gt;lastaccess&lt;/tt&gt; properties.&lt;/p&gt;

&lt;p&gt;The Java code for comparing (linked to this ticket) is therefore useless but might have a use for other repositories...&lt;/p&gt;

&lt;p&gt;If any problems related to this emerge, let&apos;s create a new more specific ticket.&lt;/p&gt;</comment>
                            <comment id="84913" author="rkovarik" created="Fri, 9 May 2014 11:29:00 +0200"  >&lt;p&gt;Final commit:&lt;br/&gt;
&lt;a href=&quot;http://git.magnolia-cms.com/gitweb/?p=modules/4-5-migration.git;a=commitdiff;h=6a72683a8d9b278a3750901a8f8054beb0478de3&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://git.magnolia-cms.com/gitweb/?p=modules/4-5-migration.git;a=commitdiff;h=6a72683a8d9b278a3750901a8f8054beb0478de3&lt;/a&gt;&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10020">
                    <name>dependency</name>
                                                                <inwardlinks description="is depended upon by">
                                        <issuelink>
            <issuekey id="37223">MGNLSTK-1374</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                            <customfield id="customfield_14166" key="com.okapya.jira.checklist:checklist">
                        <customfieldname>Acceptance criteria</customfieldname>
                        <customfieldvalues>
                            
        <checklist>
        <![CDATA[
                            




                
                                    <div class="o-completion" style="display: flex; flex-shrink: 0;"><span  class="aui-lozenge aui-lozenge-complete" style="font-size: 12px; font-weight: normal; display: flex; flex-direction: row; align-items: center;" ><span style="padding-right: 4px; vertical-align: middle;"><svg width="15" height="15" viewBox="0 0 15 15" xmlns="http://www.w3.org/2000/svg" fill="white"><path clip-rule="evenodd" d="m10.41037,3.42544l-7.86501,0c-0.72395,0 -1.31084,0.58688 -1.31084,1.31084l0,7.86508c0,0.7239 0.58689,1.3108 1.31084,1.3108l7.86501,0c0.724,0 1.3109,-0.5869 1.3109,-1.3108l0,-7.86508c0,-0.72396 -0.5869,-1.31084 -1.3109,-1.31084zm-7.86501,-0.65542c-1.08593,0 -1.96626,0.88032 -1.96626,1.96626l0,7.86508c0,1.0859 0.88033,1.9662 1.96626,1.9662l7.86501,0c1.086,0 1.9663,-0.8803 1.9663,-1.9662l0,-7.86508c0,-1.08594 -0.8803,-1.96626 -1.9663,-1.96626l-7.86501,0z" fill-rule="evenodd"/><path d="m5.09049,10.18526l-1.82767,-1.82766l-0.78479,0.78479l2.61246,2.61246l5.38758,-5.38754l-0.78483,-0.78479l-4.60275,4.60274z"/></svg></span><span>Empty</span></span></div>
                        ]]>
    </checklist>


                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10111" key="com.atlassian.jira.toolkit:reporterdomain">
                        <customfieldname>Company</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>magnolia-cms.com</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_10031" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of First Response</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Thu, 27 Mar 2014 17:04:35 +0100</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_12730" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_14151" key="com.atlassian.jira.toolkit:message">
                        <customfieldname>Docu info</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_10061" key="com.atlassian.jira.toolkit:lastusercommented">
                        <customfieldname>Last comm is not jira-dev</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>false</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10071" key="com.atlassian.jira.toolkit:lastupdaterorcommenter">
                        <customfieldname>Last participant</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>mmuehlebach</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_13136" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            9 years, 41 weeks, 2 days ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                            <customfield id="customfield_10020" key="com.atlassian.jira.toolkit:attachments">
                        <customfieldname>Number of attachments</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10150" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname>Number of comments</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>4.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_10011" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>mdivilek</customfieldvalue>
            <customfieldvalue>rsiska</customfieldvalue>
            <customfieldvalue>rkovarik</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                <customfield id="customfield_10833" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|i035bj:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10244" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>18456</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_14145" key="com.intenso.jira.issue-templates:issue-templates-customfield">
                        <customfieldname>Template</customfieldname>
                        <customfieldvalues>
                            


                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                            <customfield id="customfield_15131" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Time in Discovery</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10032" key="com.atlassian.jira.ext.charting:timeinstatus">
                        <customfieldname>Time in Status</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        </customfields>
    </item>
</channel>
</rss>