<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 20:55: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 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>[YANGTOOLS-1089] Cannot parse yang files containing plus </title>
                <link>https://jira.opendaylight.org/browse/YANGTOOLS-1089</link>
                <project id="10188" key="YANGTOOLS">yangtools</project>
                    <description>&lt;p&gt;We have tried to use:&lt;/p&gt;

&lt;p&gt;dependency&amp;gt;&lt;/p&gt;

&lt;p&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; &amp;lt;groupId&amp;gt;org.opendaylight.yangtools&amp;lt;/groupId&amp;gt;&lt;/p&gt;

&lt;p&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; &amp;lt;artifactId&amp;gt;yang-parser-impl&amp;lt;/artifactId&amp;gt;&lt;/p&gt;

&lt;p&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; &amp;lt;version&amp;gt;2.1.8&amp;lt;/version&amp;gt;&lt;/p&gt;

&lt;p&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; &amp;lt;type&amp;gt;jar&amp;lt;/type&amp;gt;&lt;/p&gt;

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

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

&lt;p&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; &amp;lt;groupId&amp;gt;org.opendaylight.yangtools&amp;lt;/groupId&amp;gt;&lt;/p&gt;

&lt;p&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; &amp;lt;artifactId&amp;gt;yang-parser-api&amp;lt;/artifactId&amp;gt;&lt;/p&gt;

&lt;p&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; &amp;lt;version&amp;gt;2.1.8&amp;lt;/version&amp;gt;&lt;/p&gt;

&lt;p&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; &amp;lt;type&amp;gt;jar&amp;lt;/type&amp;gt;&lt;/p&gt;

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

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

&lt;p&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; &amp;lt;groupId&amp;gt;org.opendaylight.yangtools&amp;lt;/groupId&amp;gt;&lt;/p&gt;

&lt;p&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; &amp;lt;artifactId&amp;gt;yang-model-api&amp;lt;/artifactId&amp;gt;&lt;/p&gt;

&lt;p&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; &amp;lt;version&amp;gt;2.1.8&amp;lt;/version&amp;gt;&lt;/p&gt;

&lt;p&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; &amp;lt;type&amp;gt;jar&amp;lt;/type&amp;gt;&lt;/p&gt;

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

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

&lt;p&gt;and even 3.0.5 &lt;/p&gt;

&lt;p&gt;Problem appeared for example ( but is not limited to since we tried same for &lt;b&gt;description&lt;/b&gt;)&lt;/p&gt;

&lt;p&gt;unquoted string for &lt;b&gt;default&lt;/b&gt; like this:&lt;/p&gt;

&lt;p&gt;&#160;&#160;&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;
&#160;&#160;&#160;&#160;&#160; leaf timeOffset {
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; type string {
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; length &lt;span class=&quot;code-quote&quot;&gt;&quot;5..6&quot;&lt;/span&gt;;
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; }
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;description &lt;span class=&quot;code-quote&quot;&gt;&quot;The time offset from UTC&quot;&lt;/span&gt;;
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; &lt;span class=&quot;code-keyword&quot;&gt;default&lt;/span&gt; +00:00;
&#160;&#160;&#160;&#160;&#160;&#160;&#160; }
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;We will get the following exception when parsing.&lt;/p&gt;

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

&lt;p&gt;&#160;&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;
2020-03-10 21:33:02,578 (YangErrorListener.java:36)DEBUG : Syntax error in RevisionSourceIdentifier [name=company-timesettings-radio] at 1:3887: no viable alternative at input &lt;span class=&quot;code-quote&quot;&gt;&apos; +&apos;&lt;/span&gt;
org.antlr.v4.runtime.NoViableAltException
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; at org.antlr.v4.runtime.atn.ParserATNSimulator.noViableAlt(ParserATNSimulator.java:2028)
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; at org.antlr.v4.runtime.atn.ParserATNSimulator.execATN(ParserATNSimulator.java:467)
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; at org.antlr.v4.runtime.atn.ParserATNSimulator.adaptivePredict(ParserATNSimulator.java:393)
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; at org.opendaylight.yangtools.antlrv4.code.gen.YangStatementParser.statement(YangStatementParser.java:154)
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; at org.opendaylight.yangtools.antlrv4.code.gen.YangStatementParser.statement(YangStatementParser.java:229)
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; at org.opendaylight.yangtools.antlrv4.code.gen.YangStatementParser.statement(YangStatementParser.java:229)
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; at org.opendaylight.yangtools.antlrv4.code.gen.YangStatementParser.statement(YangStatementParser.java:229)
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; at org.opendaylight.yangtools.yang.parser.rfc7950.repo.YangStatementStreamSource.parseYangSource(YangStatementStreamSource.java:192)
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; at org.opendaylight.yangtools.yang.parser.rfc7950.repo.YangStatementStreamSource.create(YangStatementStreamSource.java:95)
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; at org.opendaylight.yangtools.yang.parser.impl.YangParserImpl.sourceToStatementStream(YangParserImpl.java:136)
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; at org.opendaylight.yangtools.yang.parser.impl.YangParserImpl.addSource(YangParserImpl.java:69)
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; at org.opendaylight.yangtools.yang.model.parser.api.YangParser.addSources(YangParser.java:80)
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;div class=&quot;preformatted panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;preformattedContent panelContent&quot;&gt;
&lt;pre&gt;*no* further _formatting_ is done here&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;Is it possible to fix in any of the above versions since 4.x has major refactoring?&lt;/p&gt;

&lt;p&gt;We cannot continue to parse our yang model files due to this issue. It is a stopper.&lt;/p&gt;

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

&lt;p&gt;//mikael&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;</description>
                <environment>&lt;p&gt;Jdk 1.8.0_181 and Redhat 7&lt;/p&gt;</environment>
        <key id="32467">YANGTOOLS-1089</key>
            <summary>Cannot parse yang files containing plus </summary>
                <type id="10104" iconUrl="https://jira.opendaylight.org/secure/viewavatar?size=xsmall&amp;avatarId=10303&amp;avatarType=issuetype">Bug</type>
                                            <priority id="2" iconUrl="https://jira.opendaylight.org/images/icons/priorities/critical.svg">High</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="eraonel">mikael petterson</reporter>
                        <labels>
                    </labels>
                <created>Wed, 11 Mar 2020 06:38:13 +0000</created>
                <updated>Wed, 26 Aug 2020 16:05:29 +0000</updated>
                            <resolved>Fri, 14 Aug 2020 18:49:44 +0000</resolved>
                                    <version>2.1.8</version>
                    <version>3.0.5</version>
                    <version>4.0.7</version>
                                    <fixVersion>4.0.14</fixVersion>
                    <fixVersion>5.0.6</fixVersion>
                    <fixVersion>3.0.17</fixVersion>
                                    <component>parser</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>3</watches>
                                                                                                                <comments>
                            <comment id="67961" author="jluhrsen" created="Wed, 11 Mar 2020 16:03:16 +0000"  >&lt;p&gt;I lowered the priority here so it doesn&apos;t show up as a release blocker.&lt;/p&gt;</comment>
                            <comment id="68022" author="rovarga" created="Fri, 17 Apr 2020 17:52:27 +0000"  >&lt;p&gt;a workaround would be to quote the string, I think&lt;/p&gt;</comment>
                            <comment id="68023" author="rovarga" created="Fri, 17 Apr 2020 18:04:25 +0000"  >&lt;p&gt;The problem is STRING definition in YangParserLexer.g4. I am not sure how far back can we backport the fix &#8211; 2.1.x has been desupported some time ago.&lt;/p&gt;</comment>
                            <comment id="68467" author="rovarga" created="Wed, 22 Jul 2020 11:11:58 +0000"  >&lt;p&gt;The fix causes a regression in the following construct:&lt;/p&gt;
&lt;div class=&quot;preformatted panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;preformattedContent panelContent&quot;&gt;
&lt;pre&gt;description &quot;foo&quot; +&quot;bar&quot;;&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;this will need to be completely revisited, as the Lexer/Parser seem to have large number of other edge cases.&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_10000" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|i03rdz:</customfieldvalue>

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