<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 20:09:27 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 append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>OpenDaylight JIRA</title>
    <link>https://jira.opendaylight.org</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>8.20.10</version>
        <build-number>820010</build-number>
        <build-date>22-06-2022</build-date>
    </build-info>


<item>
            <title>[MDSAL-301] Rework javadoc generation in bindings</title>
                <link>https://jira.opendaylight.org/browse/MDSAL-301</link>
                <project id="10137" key="MDSAL">mdsal</project>
                    <description>&lt;p&gt;This is a top-level tracker issue, which will need to be addressed in mdsal-binding-generator-impl and in mdsal-binding2-generator-impl.&lt;/p&gt;

&lt;p&gt;The code here is twisted and inefficient, causing huge memory usage for strings during code generation, especially with large models.&lt;/p&gt;

&lt;p&gt;Two things need to happen:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;YANG snippet needs to be generated and filtered as a CharSource, e.g. lazily, without instantiating the full thing before the class is actually output&lt;/li&gt;
	&lt;li&gt;Snippet generation needs to work on top of org.opendaylight.yangtools.yang.model.api.meta.DeclaredStatement view of the world, so that &apos;uses&apos; are not expanded, but rather the snippet quotes the actual YANG text&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;&#160;&lt;/p&gt;</description>
                <environment></environment>
        <key id="29117">MDSAL-301</key>
            <summary>Rework javadoc generation in bindings</summary>
                <type id="10000" iconUrl="https://jira.opendaylight.org/images/icons/issuetypes/epic.svg">Epic</type>
                                            <priority id="3" iconUrl="https://jira.opendaylight.org/images/icons/priorities/major.svg">Medium</priority>
                        <status id="5" iconUrl="https://jira.opendaylight.org/images/icons/statuses/resolved.png" description="A resolution has been taken, and it is awaiting verification by reporter. From here issues are either reopened, or are closed.">Resolved</status>
                    <statusCategory id="3" key="done" colorName="green"/>
                                    <resolution id="10000">Done</resolution>
                                        <assignee username="rovarga">Robert Varga</assignee>
                                    <reporter username="rovarga">Robert Varga</reporter>
                        <labels>
                    </labels>
                <created>Thu, 25 Jan 2018 15:43:16 +0000</created>
                <updated>Tue, 27 Mar 2018 01:37:18 +0000</updated>
                            <resolved>Tue, 27 Mar 2018 01:37:18 +0000</resolved>
                                                    <fixVersion>Oxygen SR1</fixVersion>
                                    <component>Binding codegen</component>
                    <component>Binding V2 codegen</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="60966" author="rovarga" created="Wed, 7 Feb 2018 12:51:55 +0000"  >&lt;p&gt;Actually CharSource is rather inefficient and needlessly complex. The class exposing a YANG text snippet is coming in yang-model-export-2.0.2 and it has the shape of Iterable&amp;lt;String&amp;gt;, which is perfectly fine. It will need to be integrated once we adopt yangtools-2.0.2.&lt;/p&gt;</comment>
                            <comment id="60970" author="rovarga" created="Wed, 7 Feb 2018 17:43:31 +0000"  >&lt;p&gt;binding v1 use of YangTextSnippet: &lt;a href=&quot;https://git.opendaylight.org/gerrit/68031&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/68031&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;binding v2 use of YangTextSnippet: &lt;a href=&quot;https://git.opendaylight.org/gerrit/68032&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/68032&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;</comment>
                            <comment id="60972" author="rovarga" created="Wed, 7 Feb 2018 17:47:32 +0000"  >&lt;p&gt;As it turns out, these two patches end up slimming our runtime support jars by ~260kB.&lt;/p&gt;</comment>
                            <comment id="61058" author="rovarga" created="Wed, 14 Feb 2018 13:08:41 +0000"  >&lt;p&gt;Picking this up once again, this actually is a fault at how &lt;a href=&quot;https://jira.opendaylight.org/browse/YANGTOOLS-193&quot; title=&quot;Add snippet of yang file into comments of generated classes&quot; class=&quot;issue-link&quot; data-issue-key=&quot;YANGTOOLS-193&quot;&gt;&lt;del&gt;YANGTOOLS-193&lt;/del&gt;&lt;/a&gt; was implemented. It confused DocumentedType.getDescription() and GeneratedType.getComment() &#8211; the two have differing semantics and getComment() is actually unused. It is the latter method which should encapsulate enough data to reconstruct the javadoc.&lt;/p&gt;</comment>
                            <comment id="61059" author="rovarga" created="Wed, 14 Feb 2018 13:10:00 +0000"  >&lt;p&gt;&lt;a href=&quot;https://git.opendaylight.org/gerrit/68191&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/68191&lt;/a&gt; moved the template code, creating an abstract layer to make the old structure work &#8211; this needs to be followed-up with cleaning up the API and eliminating the unneeded layer.&lt;/p&gt;</comment>
                            <comment id="61060" author="rovarga" created="Wed, 14 Feb 2018 17:11:55 +0000"  >&lt;p&gt;&lt;a href=&quot;https://git.opendaylight.org/gerrit/68254&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/68254&lt;/a&gt; cleans the entire mess up, so that we properly capture state and push it towards the templates.&lt;/p&gt;</comment>
                            <comment id="61061" author="rovarga" created="Wed, 14 Feb 2018 17:35:47 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.opendaylight.org/secure/ViewProfile.jspa?name=JieHan2017&quot; class=&quot;user-hover&quot; rel=&quot;JieHan2017&quot;&gt;JieHan2017&lt;/a&gt; can you port last two patches to binding V2, please?&lt;/p&gt;</comment>
                            <comment id="61071" author="jiehan2017" created="Thu, 15 Feb 2018 03:25:26 +0000"  >&lt;p&gt;Yes, I will.&lt;/p&gt;</comment>
                            <comment id="61192" author="jiehan2017" created="Sat, 24 Feb 2018 07:32:38 +0000"  >&lt;p&gt;Ported to binding v2 master: &lt;br/&gt;
&lt;a href=&quot;https://git.opendaylight.org/gerrit/68657&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/68657&lt;/a&gt;&lt;/p&gt;</comment>
                    </comments>
                    <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                            <customfield id="customfield_11400" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10005" key="com.pyxis.greenhopper.jira:gh-epic-color">
                        <customfieldname>Epic Color</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>ghx-label-1</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_10004" key="com.pyxis.greenhopper.jira:gh-epic-label">
                        <customfieldname>Epic Name</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>YANG javadoc snippet optimization</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10003" key="com.pyxis.greenhopper.jira:gh-epic-status">
                        <customfieldname>Epic Status</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10000"><![CDATA[To Do]]></customfieldvalue>

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

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