<!-- 
RSS generated by JIRA (4.4#649-r158309) at Mon May 20 12:52:27 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/CLJS-418/CLJS-418.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>[CLJS-418] Unspecified dependency on google-closure-library-third-party</title>
                <link>http://dev.clojure.org/jira/browse/CLJS-418</link>
                <project id="10040" key="CLJS">ClojureScript</project>
                        <description>&lt;p&gt;Temporary fix to this issue: Add the G.Closure Library third-party extensions as a project dependency. &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;;; In :dependencies vector of Leiningen&apos;s project.clj
[org.clojure/google-closure-library-third-party &lt;span class=&quot;code-quote&quot;&gt;&quot;0.0-2029&quot;&lt;/span&gt;]&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;hr /&gt;

&lt;p&gt;We currently distribute the Google Closure Library in two separate JARs: the main library and the third-party extensions. We do this because the third-party extensions are covered by different licenses.&lt;/p&gt;

&lt;p&gt;But, as it turns out, various classes in the main library have explicit dependencies on things in the third-party extensions. See See also this &lt;a href=&quot;https://groups.google.com/d/msg/closure-library-discuss/4DG-XJn0s4E/i7nlq84V41kJ&quot;&gt;G.Closure mailing list discussion&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;As a result, the ClojureScript browser-connected REPL has a transitive dependency on the Google Closure Library third-party extensions. This manifests as an error in script/cljsc and a NullPointerException in lein-cljsbuild.&lt;/p&gt;

&lt;p&gt;See the &lt;a href=&quot;https://groups.google.com/d/msg/clojure/kzzBoCZiAx0/W_wlfiSTMZgJ&quot;&gt;initial Clojure-dev mailing list discussion&lt;/a&gt; and &lt;a href=&quot;https://groups.google.com/d/msg/clojure/SFX4m0h6Z0g/gLLGOJFhSwsJ&quot;&gt;discussion of this ticket&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;See also &lt;a href=&quot;https://github.com/emezeske/lein-cljsbuild/issues/155&quot;&gt;lein-cljsbuild issue #155&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;It seems that the dependency on third-party extensions is unavoidable. There are several possible fixes:&lt;/p&gt;

&lt;p&gt;1. Release a new G.Closure Library JAR with a &lt;b&gt;declared dependency&lt;/b&gt; on the third-party extensions JAR. This best reflects the &lt;b&gt;actual&lt;/b&gt; dependency relationships.&lt;/p&gt;

&lt;p&gt;2. Release a new G.Closure Library JAR with the third-party extensions included in the JAR. This would make it harder to exclude the third-party-licensed code from projects which do not actually require it.&lt;/p&gt;

&lt;p&gt;3. Release a new version of ClojureScript with a declared dependency on the third-party extensions JAR. This makes the dependency more visible to ClojureScript developers.&lt;/p&gt;

&lt;p&gt;Regardless of the approach taken, developers can always use explicit dependencies/exclusions to choose which version of the G.Closure library to include in their projects.&lt;/p&gt;</description>
                <environment></environment>
            <key id="15827">CLJS-418</key>
            <summary>Unspecified dependency on google-closure-library-third-party</summary>
                <type id="1" iconUrl="http://dev.clojure.org/jira/images/icons/bug.gif">Defect</type>
                                <priority id="3" iconUrl="http://dev.clojure.org/jira/images/icons/priority_major.gif">Major</priority>
                    <status id="5" iconUrl="http://dev.clojure.org/jira/images/icons/status_resolved.gif">Resolved</status>
                    <resolution id="1">Completed</resolution>
                                <assignee username="stuart.sierra">Stuart Sierra</assignee>
                                <reporter username="stuart.sierra">Stuart Sierra</reporter>
                        <labels>
                    </labels>
                <created>Fri, 16 Nov 2012 18:50:02 -0600</created>
                <updated>Sat, 16 Feb 2013 14:59:54 -0600</updated>
                    <resolved>Sat, 16 Feb 2013 14:59:54 -0600</resolved>
                                                                    <due></due>
                    <votes>3</votes>
                        <watches>3</watches>
                        <comments>
                    <comment id="30173" author="bendlas" created="Tue, 4 Dec 2012 19:10:36 -0600"  >&lt;p&gt;Attached patch implements option 1&lt;/p&gt;

&lt;p&gt;The generated closure-library depends on the old clojure-library-third-party.&lt;br/&gt;
Still, I would recommend releasing the -2 version of third-party too, in case someone includes third-party by c&amp;amp;p the library version.&lt;/p&gt;</comment>
                    <comment id="30245" author="emezeske" created="Sun, 16 Dec 2012 20:29:25 -0600"  >&lt;p&gt;I added a workaround for this so that I can release lein-cljsbuild without breaking every single project that uses it: &lt;a href=&quot;https://github.com/emezeske/lein-cljsbuild/issues/163&quot;&gt;https://github.com/emezeske/lein-cljsbuild/issues/163&lt;/a&gt; .&lt;/p&gt;

&lt;p&gt;I would like to revert this workaround ASAP.  I&apos;m going to do a bad job of maintaining the right version of the third party libraries, and it will cause problems down the road.&lt;/p&gt;</comment>
                    <comment id="30498" author="cemerick" created="Sun, 27 Jan 2013 17:37:17 -0600"  >&lt;p&gt;Option 1 is proper, 3 is acceptable.  &lt;b&gt;Any&lt;/b&gt; solution will do though; drove myself nuts with this today for longer than I&apos;d like to admit before I discovered this ticket.&lt;/p&gt;</comment>
                    <comment id="30499" author="dnolen" created="Sun, 27 Jan 2013 17:41:05 -0600"  >&lt;p&gt;Is everyone cool with option 1? It would be nice to resolve this one soon as people are running into non-working browser REPLs.&lt;/p&gt;</comment>
                    <comment id="30501" author="michalmarczyk" created="Sun, 27 Jan 2013 19:29:33 -0600"  >&lt;p&gt;+1 for option 1.&lt;/p&gt;</comment>
                    <comment id="30537" author="stuart.sierra" created="Sun, 3 Feb 2013 15:50:49 -0600"  >&lt;p&gt;Deployed new version of Google Closure library to Sonatype OSS today. Please try it out.&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;[org.clojure/google-closure-library &lt;span class=&quot;code-quote&quot;&gt;&quot;0.0-2029-2&quot;&lt;/span&gt;]&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;This release declares an explicit dependency from google-closure-library on google-closure-library-third-party (Option 1 in the ticket description).&lt;/p&gt;

&lt;p&gt;It will be available in the Maven Central repository within 24 hours. Until then, you can get it from the Sonatype repository with these instructions:&lt;br/&gt;
&lt;a href=&quot;http://dev.clojure.org/display/doc/Maven+Settings+and+Repositories&quot;&gt;http://dev.clojure.org/display/doc/Maven+Settings+and+Repositories&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If it works, we can update the ClojureScript POM to depend on it.&lt;/p&gt;

&lt;p&gt;-S&lt;/p&gt;</comment>
                    <comment id="30612" author="stuart.sierra" created="Sat, 16 Feb 2013 14:59:54 -0600"  >&lt;p&gt;pom.template updated in commit &lt;a href=&quot;https://github.com/clojure/clojurescript/commit/f2e0d9050a1b3244b23d2be16ec34af60061121f&quot;&gt;f2e0d9050a1b&lt;/a&gt;&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                    <attachment id="11746" name="0001-CLJS-418-closure-r0.0-2029-2-specifies-dependency-on.patch" size="2117" author="bendlas" created="Tue, 4 Dec 2012 19:37:52 -0600" />
                </attachments>
            <subtasks>
        </subtasks>
                <customfields>
                                                                                            <customfield id="customfield_10010" key="com.pyxis.greenhopper.jira:gh-global-rank">
                <customfieldname>Global Rank</customfieldname>
                <customfieldvalues>
                    
                </customfieldvalues>
            </customfield>
                                                                                                            </customfields>
    </item>
</channel>
</rss>