<!-- 
RSS generated by JIRA (4.4#649-r158309) at Tue May 21 19:35:50 CDT 2013

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.
For example:
http://dev.clojure.org/jira/si/jira.issueviews:issue-xml/CLJ-148/CLJ-148.xml?field=key&field=summary
-->
<rss version="0.92" >
<channel>
    <title>Clojure JIRA</title>
    <link>http://dev.clojure.org/jira</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>4.4</version>
        <build-number>649</build-number>
        <build-date>25-07-2011</build-date>
    </build-info>

<item>
            <title>[CLJ-148] Poor reporting of symbol conflicts when using (ns)</title>
                <link>http://dev.clojure.org/jira/browse/CLJ-148</link>
                <project id="10010" key="CLJ">Clojure</project>
                        <description>&lt;p&gt;I have a module that includes pprint and my own utils.&lt;/p&gt;

&lt;p&gt;When com.howard.lewisship.cascade.dom/write was changed from private to public I get the following error:&lt;/p&gt;

&lt;p&gt;java.lang.IllegalStateException: write already refers to: #&apos;clojure.contrib.pprint/write in namespace: com.howardlewisship.cascade.test-views (test_views.clj:0)&lt;/p&gt;

&lt;p&gt;(ns com.howardlewisship.cascade.test-views ; line 15&lt;br/&gt;
  (:use&lt;br/&gt;
   (clojure.contrib test-is pprint duck-streams)&lt;br/&gt;
   (app1 views fragments)&lt;br/&gt;
   (com.howardlewisship.cascade config dom view-manager)&lt;br/&gt;
   com.howardlewisship.cascade.internal.utils))&lt;/p&gt;

&lt;p&gt;That line number is wrong but better yet, identifying the true conflict (com.howard.lewisship.cascade.dom/write) would be even more important.&lt;/p&gt;</description>
                <environment></environment>
            <key id="13545">CLJ-148</key>
            <summary>Poor reporting of symbol conflicts when using (ns)</summary>
                <type id="4" iconUrl="http://dev.clojure.org/jira/images/icons/improvement.gif">Enhancement</type>
                                        <status id="1" iconUrl="http://dev.clojure.org/jira/images/icons/status_open.gif">Open</status>
                    <resolution id="-1">Unresolved</resolution>
                                <assignee username="-1">Unassigned</assignee>
                                <reporter username="-1">None</reporter>
                        <labels>
                    </labels>
                <created>Fri, 10 Jul 2009 00:08:00 -0500</created>
                <updated>Tue, 28 Jun 2011 18:42:50 -0500</updated>
                                                    <fixVersion>Backlog</fixVersion>
                                        <due></due>
                    <votes>1</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="22990" author="importer" created="Tue, 24 Aug 2010 03:54:00 -0500"  >&lt;p&gt;Converted from &lt;a href=&quot;http://www.assembla.com/spaces/clojure/tickets/148&quot;&gt;http://www.assembla.com/spaces/clojure/tickets/148&lt;/a&gt;&lt;/p&gt;</comment>
                    <comment id="22991" author="importer" created="Tue, 24 Aug 2010 03:54:00 -0500"  >&lt;p&gt;scgilardi said: It&apos;s saying that the symbol com.howardlewisship.cascade.test-views/write already resolves to #&#65533;&#65533;&#65533;clojure.contrib.pprint/write, so you can&apos;t def a new write in com.howardlewisship.cascade.test-views.&lt;/p&gt;

&lt;p&gt;What do you propose for an alternate wording of the error message here?&lt;/p&gt;</comment>
                    <comment id="26430" author="rosejn" created="Thu, 12 May 2011 09:49:03 -0500"  >&lt;p&gt;I think the issue is that only one side of the conflict is reported in the error, so if you get this kind of error in the middle of a large project it can be hard to figure out which namespace is conflicting.  Take a toy example:&lt;/p&gt;

&lt;p&gt;user=&amp;gt; (ns foo)&lt;br/&gt;
foo=&amp;gt; (def foobar 42)&lt;br/&gt;
foo=&amp;gt; (ns bar)&lt;br/&gt;
bar=&amp;gt; (def foobar 0)&lt;br/&gt;
bar=&amp;gt; (ns problem)&lt;br/&gt;
problem=&amp;gt; (refer &apos;foo)&lt;br/&gt;
problem=&amp;gt; (refer &apos;bar)&lt;br/&gt;
java.lang.IllegalStateException: foobar already refers to: #&apos;foo/foobar in namespace: problem (NO_SOURCE_FILE:0)&lt;/p&gt;

&lt;p&gt;In this case it would be best if the error said something like:&lt;/p&gt;

&lt;p&gt;&quot;Conflict referring to #&apos;bar/foobar in #&amp;lt;Namespace problem&amp;gt; because foobar already refers to: #&apos;foo/foobar.&quot;&lt;/p&gt;

&lt;p&gt;This way the error message clearly identifies the location of the conflict, and the locations of the two conflicting vars.&lt;/p&gt;

&lt;p&gt;Hopefully this helps clarify.  I think I see where to fix it in warnOrFailOnReplace on line 88 of src/jvm/clojure/lang/Namespace.java, and this reminds me I need to send in a CA so I can pitch in next time...&lt;/p&gt;</comment>
                    <comment id="26539" author="aaron" created="Tue, 28 Jun 2011 18:42:50 -0500"  >&lt;p&gt;It looks like the true conflict is in test-views, not in dom. A small example of the line number breakage showing the problem on master (1.3) would be very helpful.&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
                <customfields>
                                <customfield id="customfield_10002" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                <customfieldname>Approval</customfieldname>
                <customfieldvalues>
                        <customfieldvalue key="10008">Not Approved</customfieldvalue>

                </customfieldvalues>
            </customfield>
                                                                                    <customfield id="customfield_10010" key="com.pyxis.greenhopper.jira:gh-global-rank">
                <customfieldname>Global Rank</customfieldname>
                <customfieldvalues>
                    
                </customfieldvalues>
            </customfield>
                                                                                                            </customfields>
    </item>
</channel>
</rss>