<!-- 
RSS generated by JIRA (1001.0.0-SNAPSHOT#100246-sha1:7a5c50119eb0633d306e14180817ddef5e80c75d) at Thu Feb 08 23:24:40 UTC 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 add field=key&field=summary to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>FOLIO Jira</title>
    <link>https://folio-org.atlassian.net</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>1001.0.0-SNAPSHOT</version>
        <build-number>100246</build-number>
        <build-date>07-02-2024</build-date>
    </build-info>

<item>
            <title>[FOLIO-2976] Create tool to gather schema changes since previous FOLIO flower release</title>
                <link>https://folio-org.atlassian.net/browse/FOLIO-2976</link>
                <project id="10290" key="FOLIO">FOLIO</project>
                    <description>&lt;p&gt;Implementers would like early warning about schema changes (both database and API) in each module since the previous flower release, regularly during the development cycle. This would enable preparation of changes to mapping and ETL code, to be ready with data migration as soon as the next release is available.&lt;/p&gt;

&lt;p&gt;Some design notes:&lt;br/&gt;
&lt;a href=&quot;https://docs.google.com/document/d/1Asqeg-lqVjhzW87CE48EjnKEg2Qpy_6OXFHvUjUoe_U/edit#&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;https://docs.google.com/document/d/1Asqeg-lqVjhzW87CE48EjnKEg2Qpy_6OXFHvUjUoe_U/edit#&lt;/a&gt;&lt;/p&gt;</description>
                <environment></environment>
        <key id="81880">FOLIO-2976</key>
            <summary>Create tool to gather schema changes since previous FOLIO flower release</summary>
                <type id="10002" iconUrl="https://folio-org.atlassian.net/rest/api/2/universal_avatar/view/type/issuetype/avatar/10322?size=medium">New Feature</type>
                                            <priority id="10005" iconUrl="https://dev.folio.org/assets/jira-priority/tbd.svg">TBD</priority>
                        <status id="6" iconUrl="https://folio-org.atlassian.net/images/icons/statuses/closed.png" description="The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.">Closed</status>
                    <statusCategory id="3" key="done" colorName="green"/>
                                    <resolution id="10003">Done</resolution>
                                                        <assignee accountid="61cd0ca0bce5e00069e98be7">David Crossley</assignee>
                                                                <reporter accountid="61cd0ca0bce5e00069e98be7">David Crossley</reporter>
                                    <labels>
                    </labels>
                <created>Mon, 25 Jan 2021 00:45:42 +0000</created>
                <updated>Thu, 6 Oct 2022 00:11:20 +0000</updated>
                            <resolved>Tue, 2 Mar 2021 10:21:38 +0000</resolved>
                                                                        <due></due>
                            <votes>0</votes>
                                    <watches>2</watches>
                                                                <comments>
                                                            <comment id="198777" author="61cd0ca0bce5e00069e98be7" created="Wed, 10 Feb 2021 22:46:51 +0000"  >&lt;p&gt;The initial prototype is ready. The branch is not yet merged, and the GitHub Workflow is not yet automated.&lt;/p&gt;

&lt;p&gt;For each backend module version in the current q3-2020 branch of platform-complete, it compares each JSON schema under the api directory (e.g. ./ramls/) of the release git checkout with the current main branch.&lt;/p&gt;

&lt;p&gt;If a file has differences, then this is stored at a matching path (e.g. mod-users/api/usergroup-17.2.3.diff and mod-notes/api/types/notes/note-2.10.2.diff) and there is a companion file with extension .txt which also has some extra metadata.&lt;/p&gt;

&lt;p&gt;For each module that has a database schema, any differences are noted in a top-level file (e.g. mod-notes/db-2.10.2.diff).&lt;/p&gt;

&lt;p&gt;The JSON &quot;diff&quot; uses the &quot;jd&quot; tool. Refer to the concise &quot;&lt;a href=&quot;https://github.com/josephburnett/jd#diff-language&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;Diff language&lt;/a&gt;&quot;.&lt;/p&gt;

&lt;p&gt;Each module has a &quot;summary.json&quot; listing the files that are changed, and any processing errors encountered.&lt;/p&gt;

&lt;p&gt;The set of changes for all modules is published to an S3 space. There is a complete archive (replaced on each harvest run) at &lt;a href=&quot;https://s3.amazonaws.com/foliodocs/schemadiff/q3-2020/schema-diff-q3-2020.zip&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;https://s3.amazonaws.com/foliodocs/schemadiff/q3-2020/schema-diff-q3-2020.zip&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;At this stage, all shared git submodules are ignored (e.g. ramls/raml-util) as these would also have other additional changes not relevant to the particular module.&lt;/p&gt;

&lt;p&gt;The next version of the prototype intends to discover each schema that is declared in each api description file (called &quot;parent schema&quot;) and dereference the files that are included by reference ($ref) thereby providing an overview of the total changes for each main parent schema.&lt;/p&gt;</comment>
                                                            <comment id="198779" author="61cd0ca0bce5e00069e98be7" created="Thu, 18 Feb 2021 04:39:27 +0000"  >&lt;p&gt;The prototype is now running automatically. Every Monday and Thursday, early morning UTC.&lt;/p&gt;</comment>
                                                            <comment id="198781" author="61cd0ca0bce5e00069e98be7" created="Wed, 24 Feb 2021 05:27:37 +0000"  >&lt;p&gt;The prototype 2 is now operating to &quot;dereference parent schema&quot; as described in the earlier Jira comment.&lt;/p&gt;

&lt;p&gt;As explained before there is a complete archive (replaced on each harvest run) at &lt;a href=&quot;https://s3.amazonaws.com/foliodocs/schemadiff/q3-2020/schema-diff-q3-2020.zip&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;https://s3.amazonaws.com/foliodocs/schemadiff/q3-2020/schema-diff-q3-2020.zip&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;See an example at mod-permissions/api/parents/permissionListObject-5.12.2.diff&lt;/p&gt;</comment>
                                                            <comment id="198783" author="61cd0ca0bce5e00069e98be7" created="Tue, 2 Mar 2021 10:21:21 +0000"  >&lt;p&gt;The workflows are automated.&lt;/p&gt;

&lt;p&gt;The &quot;get-release-versions&quot; happens daily. If it discovers that new module versions have been added to the q3-2020 platform-complete, then it opens a PR for the updated data file.&lt;/p&gt;

&lt;p&gt;The &quot;gather-schema-changes&quot; happens twice weekly very Monday and Thursday, early morning UTC.&lt;br/&gt;
Before that, each day the &quot;get-release-versions&quot; happens.&lt;/p&gt;

&lt;p&gt;The workflow runs are here: &lt;a href=&quot;https://github.com/folio-org/folio-org.github.io/actions&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;https://github.com/folio-org/folio-org.github.io/actions&lt;/a&gt;&lt;br/&gt;
The workflow code and config: &lt;a href=&quot;https://github.com/folio-org/folio-org.github.io/tree/master/.github/workflows&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;https://github.com/folio-org/folio-org.github.io/tree/master/.github/workflows&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;(GitHub cron has a &lt;a href=&quot;https://github.community/t/scheduled-action-running-consistently-late/138025&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;delay&lt;/a&gt; of up to an hour or so.)&lt;/p&gt;</comment>
                                                            <comment id="198785" author="61cd0ca0bce5e00069e98be7" created="Tue, 4 May 2021 13:21:49 +0000"  >&lt;p&gt;This is now instead tracking the schema changes since the release of the R1-2021 Iris release branch of platform-complete.&lt;/p&gt;</comment>
                                                            <comment id="198786" author="61cd0ca0bce5e00069e98be7" created="Thu, 6 Oct 2022 00:11:20 +0000"  >&lt;p&gt;The tool is updated soon after each subsequent Flower release, e.g. now tracking morning-glory.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10003">
                    <name>Relates</name>
                                            <outwardlinks description="relates to">
                                        <issuelink>
            <issuekey id="81969">FOLIO-3137</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_10000" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummarycf">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10057" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Development Team</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10155"><![CDATA[FOLIO DevOps]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_10019" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|i029en:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_10020" key="com.pyxis.greenhopper.jira:gh-sprint">
                        <customfieldname>Sprint</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue id="1880">DevOps Sprint 107</customfieldvalue>
    <customfieldvalue id="1881">DevOps Sprint 108</customfieldvalue>
    <customfieldvalue id="1980">DevOps Sprint 106</customfieldvalue>

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