<!-- 
RSS generated by JIRA (1001.0.0-SNAPSHOT#100246-sha1:7a5c50119eb0633d306e14180817ddef5e80c75d) at Thu Feb 08 23:18:09 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-2092] use -alpha.NNN pre-release version syntax in npm-folio artifacts</title>
                <link>https://folio-org.atlassian.net/browse/FOLIO-2092</link>
                <project id="10290" key="FOLIO">FOLIO</project>
                    <description>&lt;p&gt;When a PR is merged to a UI library such as stripes-core or ui-users, our CI process inflates the patch-number and publishes an NPM to &lt;tt&gt;npm-folioci&lt;/tt&gt;. This can cause all kinds of problems, such as &lt;a href=&quot;https://folio-project.slack.com/archives/CGPMHLX9B/p1559912263002000&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;trouble with lock files&lt;/a&gt; and other issues related to the differences among how dependencies are resolved in CI, developer environments, workspaces, platforms, etc. &lt;/p&gt;

&lt;p&gt;We should investigate whether it would make sense to publish pre-releases, i.e. &lt;tt&gt;-alpha.NNN&lt;/tt&gt;, straight to &lt;tt&gt;npm-folio&lt;/tt&gt;, and to abandon &lt;tt&gt;npm-folioci&lt;/tt&gt;. This would have the benefit of eliminating any differences between dev/prod/CI environments while still allowing developers to depend on commited-but-unreleased (i.e. &#8220;alpha&#8221;) features in libraries. &lt;/p&gt;

&lt;p&gt;There are some wrinkles/risks: &lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;somebody might formally release something with a &lt;tt&gt;-alpha.NNN&lt;/tt&gt; dep, which currently cannot happen because those pre-release versions never show up on &lt;tt&gt;npm-folio&lt;/tt&gt;.&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;`~` and `^` comparators DO NOT match pre-releases. This means we could be trouble when building a platform and apps ask for two different releases, e.g.  &lt;tt&gt;&quot;@folio/stripes&quot;: &quot;^2.7.0&quot;&lt;/tt&gt; and &lt;tt&gt;&quot;@folio/stripes&quot;: &quot;^2.8.0-alpha.001&quot;&lt;/tt&gt;. Apps depend on &lt;tt&gt;@folio/stripes&lt;/tt&gt; only as a peer, to be provided by the platform, so this may just be a problem in workspaces where we&#8217;ll see an &#8220;unmet peer dependency&#8221; warning.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;See also &lt;a href=&quot;https://medium.com/@mbostock/prereleases-and-npm-e778fc5e2420&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;https://medium.com/@mbostock/prereleases-and-npm-e778fc5e2420&lt;/a&gt;, in particular the note that &lt;tt&gt;-alpha.NNN&lt;/tt&gt; releases &lt;em&gt;must&lt;/em&gt; be published like &lt;tt&gt;npm publish --tag foo&lt;/tt&gt; in order to avoid NPM automatically tagging them as &lt;tt&gt;latest&lt;/tt&gt; and thereby providing them to folks who actually want the latest &lt;em&gt;release&lt;/em&gt;, not the latest &lt;em&gt;commit&lt;/em&gt;. &lt;/p&gt;</description>
                <environment></environment>
        <key id="79824">FOLIO-2092</key>
            <summary>use -alpha.NNN pre-release version syntax in npm-folio artifacts</summary>
                <type id="10005" iconUrl="https://folio-org.atlassian.net/rest/api/2/universal_avatar/view/type/issuetype/avatar/10309?size=medium">Story</type>
                                            <priority id="10001" iconUrl="https://dev.folio.org/assets/jira-priority/jira-p2.svg">P2</priority>
                        <status id="10003" iconUrl="https://folio-org.atlassian.net/images/icons/statuses/generic.png" description="The issue cannot be worked on because it is blocked by other issues. (Migrated on 4 Feb 2024 13:41 UTC)">Blocked</status>
                    <statusCategory id="2" key="new" colorName="blue-gray"/>
                                    <resolution id="-1">Unresolved</resolution>
                                                        <assignee accountid="-1">Unassigned</assignee>
                                                                <reporter accountid="615afd1cd9820f0070a09ef0">Zak Burke</reporter>
                                    <labels>
                            <label>platform-backlog</label>
                    </labels>
                <created>Mon, 10 Jun 2019 14:05:01 +0000</created>
                <updated>Mon, 8 Feb 2021 09:10:05 +0000</updated>
                                                                                <due></due>
                            <votes>0</votes>
                                    <watches>4</watches>
                                                                <comments>
                                                            <comment id="190092" author="557058:b8e64633-1f7c-402d-9caf-9959a5ba5d0d" created="Wed, 10 Jul 2019 14:58:38 +0000"  >&lt;p&gt;&lt;a href=&quot;https://folio-org.atlassian.net/secure/ViewProfile.jspa?accountId=615afd1cd9820f0070a09ef0&quot; class=&quot;user-hover&quot; rel=&quot;615afd1cd9820f0070a09ef0&quot; data-account-id=&quot;615afd1cd9820f0070a09ef0&quot; accountid=&quot;615afd1cd9820f0070a09ef0&quot; rel=&quot;noreferrer&quot;&gt;Zak Burke&lt;/a&gt; it looks like we also need a SPIKE for UI and NPM devevelopers to define requirements for the Platform team. I&apos;ll create a ticket for that.&lt;/p&gt;</comment>
                                                            <comment id="190093" author="615afd1cd9820f0070a09ef0" created="Thu, 6 Feb 2020 11:28:32 +0000"  >&lt;p&gt;I was thinking about this recently in the context of 
    &lt;span class=&quot;jira-issue-macro resolved&quot; data-jira-key=&quot;UIREQ-370&quot; &gt;
                &lt;a href=&quot;https://folio-org.atlassian.net/browse/UIREQ-370&quot; class=&quot;jira-issue-macro-key issue-link&quot;  title=&quot;Create/Edit a request | Move Save/Cancel buttons to the footer&quot; &gt;
            &lt;img class=&quot;icon&quot; src=&quot;https://folio-org.atlassian.net/rest/api/2/universal_avatar/view/type/issuetype/avatar/10309?size=medium&quot; /&gt;
            UIREQ-370
        &lt;/a&gt;
                                                    &lt;span class=&quot;aui-lozenge aui-lozenge-subtle aui-lozenge-success jira-macro-single-issue-export-pdf&quot;&gt;Closed&lt;/span&gt;
            &lt;/span&gt;
 when we &lt;a href=&quot;https://github.com/folio-org/ui-requests/pull/503&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;backported it to the &lt;tt&gt;v1.14&lt;/tt&gt; branch&lt;/a&gt;. Tests on the PR failed due to changes in the internal HTML markup of a component from stripes-components, not the public API (hence no major version change) when the branch was built against &lt;tt&gt;npm-folioci&lt;/tt&gt;, i.e. &lt;tt&gt;master&lt;/tt&gt;, but then succeeded when publishing the release because that process builds against &lt;tt&gt;npm-folio&lt;/tt&gt;, i.e. using released artifacts. &lt;/p&gt;

&lt;p&gt;If we published to only one repository but kept the version on master set to something like &lt;tt&gt;v3.6.0-beta.1&lt;/tt&gt; and only released from branches where we had versions like &lt;tt&gt;v3.6.0&lt;/tt&gt; then tests would have passed consistently.&lt;/p&gt;

&lt;p&gt;That said, we probably don&apos;t want to publish every commit to every repository as a new &lt;tt&gt;-beta.nnn&lt;/tt&gt; release to &lt;tt&gt;npm-folio&lt;/tt&gt;. So ... I dunno. This requires a little more thought than I realized. &lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10003">
                    <name>Relates</name>
                                            <outwardlinks description="relates to">
                                        <issuelink>
            <issuekey id="79549">FOLIO-1704</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="11293">UXPROD-2066</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="relates to">
                                        <issuelink>
            <issuekey id="81368">FOLIO-2138</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </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="10144"><![CDATA[Core: Platform]]></customfieldvalue>

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

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_10020" key="com.pyxis.greenhopper.jira:gh-sprint">
                        <customfieldname>Sprint</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue id="994">CP: ready for planning</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_10044" key="com.atlassian.jira.plugin.system.customfieldtypes:float">
                        <customfieldname>Story Points</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>5.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10024" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>[CHART] Date of First Response</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Wed, 10 Jul 2019 14:58:38 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                </customfields>
    </item>
</channel>
</rss>