<!-- 
RSS generated by JIRA (9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b) at Mon Feb 12 00:36:34 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>[MGNLCT-38] Tracking CT definition changes</title>
                <link>https://jira.magnolia-cms.com/browse/MGNLCT-38</link>
                <project id="14481" key="MGNLCT">Content Types</project>
                    <description>&lt;p&gt;Detects what&apos;re changes in CT definition at runtime.&lt;/p&gt;

&lt;p&gt;Supports storing snapshots, versioning of definitions&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;Wrapper provider approach:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;POC for&#160;Wrap definition provider with additional info.&lt;/li&gt;
	&lt;li&gt;Keep previous version of contentType with wrapper provider&lt;/li&gt;
&lt;/ul&gt;


&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;Keeping one previous content type definition&lt;/li&gt;
&lt;/ul&gt;
</description>
                <environment></environment>
        <key id="66609">MGNLCT-38</key>
            <summary>Tracking CT definition changes</summary>
                <type id="3" iconUrl="https://jira.magnolia-cms.com/secure/viewavatar?size=xsmall&amp;avatarId=10898&amp;avatarType=issuetype">Task</type>
                                            <priority id="6" iconUrl="https://jira.magnolia-cms.com/images/icons/priorities/neutral.gif">Neutral</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="oanh.thai">Oanh Thai Hoang</assignee>
                                    <reporter username="oanh.thai">Oanh Thai Hoang</reporter>
                        <labels>
                    </labels>
                <created>Mon, 28 May 2018 11:28:55 +0200</created>
                <updated>Mon, 3 Dec 2018 16:51:48 +0100</updated>
                            <resolved>Thu, 7 Jun 2018 09:12:55 +0200</resolved>
                                                    <fixVersion>1.0</fixVersion>
                                        <due></due>
                            <votes>0</votes>
                                    <watches>2</watches>
                                                    <progress percentage="69">
                                    <originalProgress>
                                                    <row percentage="0" backgroundColor="#89afd7"/>
                                                    <row percentage="100" backgroundColor="transparent"/>
                                            </originalProgress>
                                                    <currentProgress>
                                                    <row percentage="69" backgroundColor="#51a825"/>
                                                    <row percentage="31" backgroundColor="#ec8e00"/>
                                            </currentProgress>
                            </progress>
                                    <aggregateprogress percentage="69">
                                    <originalProgress>
                                                    <row percentage="0" backgroundColor="#89afd7"/>
                                                    <row percentage="100" backgroundColor="transparent"/>
                                            </originalProgress>
                                                    <currentProgress>
                                                    <row percentage="69" backgroundColor="#51a825"/>
                                                    <row percentage="31" backgroundColor="#ec8e00"/>
                                            </currentProgress>
                            </aggregateprogress>
                                            <timeestimate seconds="28800">1d</timeestimate>
                            <timespent seconds="64800">2.25d</timespent>
                                <comments>
                            <comment id="161221" author="oanh.thai" created="Mon, 28 May 2018 11:34:00 +0200"  >&lt;p&gt;POC is introduced in&#160;&lt;a href=&quot;https://git.magnolia-cms.com/projects/VNPD/repos/content-types/pull-requests?create&amp;amp;sourceBranch=refs%2Fheads%2FMGNLCT-38&amp;amp;targetRepoId=1883&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.magnolia-cms.com/projects/VNPD/repos/content-types/pull-requests?create&amp;amp;sourceBranch=refs%2Fheads%2FMGNLCT-38&amp;amp;targetRepoId=1883&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="161465" author="ngoc.nguyenthanh" created="Thu, 31 May 2018 13:07:35 +0200"  >&lt;h6&gt;&lt;a name=&quot;UsingJAVERSObjectauditinganddiffframeworkforJavajavers.org&quot;&gt;&lt;/a&gt;Using JAVERS - Object auditing and diff framework for Java - javers.org&lt;/h6&gt;

&lt;p&gt;Usages - &lt;a href=&quot;https://javers.org/features&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://javers.org/features&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;Compare complex object structures - May useful for changes detection, especially for model definition change.&lt;/li&gt;
	&lt;li&gt;&lt;font color=&quot;#333333&quot;&gt;Track every change of object fields as well as relations changes - Know exactly what&apos;re changes in our definition&lt;/font&gt;&lt;/li&gt;
	&lt;li&gt;&lt;font color=&quot;#333333&quot;&gt;Browse data history in views: Changes, Shadows, Snapshots&lt;/font&gt;&lt;/li&gt;
	&lt;li&gt;&lt;font color=&quot;#333333&quot;&gt;Javers Query Language - Use Javers Query Language to easily query for changes of a given class, object or property&lt;/font&gt;&lt;/li&gt;
	&lt;li&gt;&lt;font color=&quot;#333333&quot;&gt;Persist data change history in&#160;&lt;b&gt;MongoDB&lt;/b&gt;,&#160;&lt;b&gt;PostgreSQL&lt;/b&gt;,&#160;&lt;b&gt;MySQL&lt;/b&gt;,&#160;&lt;b&gt;Oracle&lt;/b&gt;&#160;or&#160;&lt;b&gt;Microsoft SQL Server&lt;/b&gt;. =&amp;gt; We may need to write our custom repository for JCR storage. But I think it&apos;s not a hard part.&lt;/font&gt;
	&lt;ul&gt;
		&lt;li&gt;&lt;font color=&quot;#333333&quot;&gt;By default InMemoryRepository is using.&lt;/font&gt;&lt;/li&gt;
	&lt;/ul&gt;
	&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;&lt;font color=&quot;#333333&quot;&gt;Downside&lt;/font&gt;&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;&lt;font color=&quot;#333333&quot;&gt;Only support Java 8 and above&lt;/font&gt;&lt;/li&gt;
	&lt;li&gt;&lt;font color=&quot;#333333&quot;&gt;Doesn&apos;t support JCR or File System for history storage&lt;/font&gt;&lt;/li&gt;
	&lt;li&gt;&lt;font color=&quot;#333333&quot;&gt;Can&apos;t find changes based on interface. Requires type mapping&lt;/font&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;An attempt to detect changes in node type definition - &lt;a href=&quot;https://git.magnolia-cms.com/projects/VNPD/repos/content-types/pull-requests?create&amp;amp;targetBranch=refs%2Fheads%2FMGNLCT-37&amp;amp;sourceBranch=refs%2Fheads%2FMGNLCT-38-Javers&amp;amp;targetRepoId=2687#magnolia-content-types/src/main/java/info/magnolia/types/datasource/jcr/JackrabbitInitializer.java&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;Detects removed node types&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;</comment>
                    </comments>
                    <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, 31 May 2018 13:07:35 +0200</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_10246" key="com.pyxis.greenhopper.jira:gh-epic-link">
                        <customfieldname>Epic Link</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>MGNLCT-81</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_10061" key="com.atlassian.jira.toolkit:lastusercommented">
                        <customfieldname>Last comm is not jira-dev</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>true</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10071" key="com.atlassian.jira.toolkit:lastupdaterorcommenter">
                        <customfieldname>Last participant</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>mgeljic</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_13136" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            5 years, 37 weeks, 3 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>2.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_10011" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>ngoc.nguyenthanh</customfieldvalue>
            <customfieldvalue>oanh.thai</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                <customfield id="customfield_10833" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|y004c8:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10244" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>9223372036854775807</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_10245" key="com.pyxis.greenhopper.jira:gh-sprint">
                        <customfieldname>Sprint</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue id="739">Saigon 147</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_10242" key="com.atlassian.jira.plugin.system.customfieldtypes:float">
                        <customfieldname>Story Points</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>3.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_14167" key="com.okapya.jira.checklist:checklist">
                        <customfieldname>Task DoR</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_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>