<!--
RSS generated by JIRA (4.4#649-r158309) at Wed May 22 13:50: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/sr/jira.issueviews:searchrequest-xml/temp/SearchRequest.xml?jqlQuery=project+%3D+TGEN+ORDER+BY+updated+DESC%2C+priority+DESC%2C+created+ASC&tempMax=1000&field=key&field=summary
-->
<!-- If you wish to do custom client-side styling of RSS, uncomment this:
<?xml-stylesheet href="http://dev.clojure.org/jira/styles/jiraxml2html.xsl" type="text/xsl"?>
-->
<rss version="0.92">
    <channel>
        <title>Clojure JIRA</title>
        <link>http://dev.clojure.org/jira/secure/IssueNavigator.jspa?reset=true&amp;jqlQuery=project+%3D+TGEN+ORDER+BY+updated+DESC%2C+priority+DESC%2C+created+ASC</link>
        <description>An XML representation of a search request</description>
                <language>en-us</language>
                        <issue start="0" end="4" total="4"/>
                <build-info>
            <version>4.4</version>
            <build-number>649</build-number>
            <build-date>25-07-2011</build-date>
        </build-info>
<item>
            <title>[TGEN-4] Typo in defspec docstring</title>
                <link>http://dev.clojure.org/jira/browse/TGEN-4</link>
                <project id="10081" key="TGEN">test.generative</project>
                        <description>&lt;p&gt;The docstring for `defspec` misspells &quot;metdata&quot;.&lt;/p&gt;</description>
                <environment></environment>
            <key id="16077">TGEN-4</key>
            <summary>Typo in defspec docstring</summary>
                <type id="4" iconUrl="http://dev.clojure.org/jira/images/icons/improvement.gif">Enhancement</type>
                                <priority id="5" iconUrl="http://dev.clojure.org/jira/images/icons/priority_trivial.gif">Trivial</priority>
                    <status id="1" iconUrl="http://dev.clojure.org/jira/images/icons/status_open.gif">Open</status>
                    <resolution id="-1">Unresolved</resolution>
                                <assignee username="stu">Stuart Halloway</assignee>
                                <reporter username="ambrosebs">Ambrose Bonnaire-Sergeant</reporter>
                        <labels>
                    </labels>
                <created>Mon, 11 Mar 2013 12:31:55 -0500</created>
                <updated>Mon, 11 Mar 2013 12:31:55 -0500</updated>
                                                                            <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                                <attachments>
                </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>

<item>
            <title>[TGEN-3] binding *seed* does not change the basis</title>
                <link>http://dev.clojure.org/jira/browse/TGEN-3</link>
                <project id="10081" key="TGEN">test.generative</project>
                        <description>&lt;p&gt;This is what I&apos;m observing:&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;user=&amp;gt; (binding [gen/*seed* 7] (gen/uniform))
-6880819372607069048
user=&amp;gt; (binding [gen/*seed* 7] (gen/uniform))
5065957067589062886
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;This is what I&apos;m expecting:&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;user=&amp;gt; (binding [gen/*seed* 7] (gen/uniform))
-4967725919621401576
user=&amp;gt; (binding [gen/*seed* 7] (gen/uniform))
-4967725919621401576
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;The work-around is to bind &lt;tt&gt;&amp;#42;rnd&amp;#42;&lt;/tt&gt; to a new &lt;tt&gt;java.util.Random&lt;/tt&gt; constructed appropriately:&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;(binding [gen/*rnd* (java.util.Random. 7)] (gen/uniform))
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;I&apos;m not sure: Is this is a bug in the doc string of &lt;tt&gt;&amp;#42;seed&amp;#42;&lt;/tt&gt;? Is the bug the very existence of &lt;tt&gt;&amp;#42;seed&amp;#42;&lt;/tt&gt;? (&lt;tt&gt;&amp;#42;seed&amp;#42;&lt;/tt&gt; is never used.) Should the doc-string for &lt;tt&gt;&amp;#42;rnd&amp;#42;&lt;/tt&gt; suggest something like the code above as a way to get a consistent basis? Should generators provide a &lt;tt&gt;with-seed&lt;/tt&gt; macro to do this for us?&lt;/p&gt;</description>
                <environment></environment>
            <key id="15752">TGEN-3</key>
            <summary>binding *seed* does not change the basis</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="6" iconUrl="http://dev.clojure.org/jira/images/icons/status_closed.gif">Closed</status>
                    <resolution id="1">Completed</resolution>
                                <assignee username="stu">Stuart Halloway</assignee>
                                <reporter username="bsmith.occs@gmail.com">Ben Smith-Mannschott</reporter>
                        <labels>
                    </labels>
                <created>Sat, 13 Oct 2012 07:45:14 -0500</created>
                <updated>Sun, 3 Feb 2013 07:13:49 -0600</updated>
                    <resolved>Sun, 3 Feb 2013 07:13:49 -0600</resolved>
                                                                    <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="30535" author="stu" created="Sun, 3 Feb 2013 07:13:49 -0600"  >&lt;p&gt;this is fixed on master in the data.generators project&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                </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>

<item>
            <title>[TGEN-2] ASCII DEL (0x7f, 127) is not a printable character</title>
                <link>http://dev.clojure.org/jira/browse/TGEN-2</link>
                <project id="10081" key="TGEN">test.generative</project>
                        <description>&lt;p&gt;ASCII 127 is a control character.&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;Dec Hex    Dec Hex    Dec Hex  Dec Hex  Dec Hex  Dec Hex   Dec Hex   Dec Hex  
  0 00 NUL  16 10 DLE  
  1 01 SOH  17 11 DC1  
  2 02 STX  18 12 DC2  
  3 03 ETX  19 13 DC3  
  4 04 EOT  20 14 DC4  
  5 05 ENQ  21 15 NAK  
  6 06 ACK  22 16 SYN  
  7 07 BEL  23 17 ETB  
  8 08 BS   24 18 CAN  
  9 09 HT   25 19 EM   
 10 0A LF   26 1A SUB  
 11 0B VT   27 1B ESC  
 12 0C FF   28 1C FS   
 13 0D CR   29 1D GS   
 14 0E SO   30 1E RS   
 15 0F SI   31 1F US                                                 127 7F DEL
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</description>
                <environment></environment>
            <key id="15750">TGEN-2</key>
            <summary>ASCII DEL (0x7f, 127) is not a printable character</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="bsmith.occs@gmail.com">Ben Smith-Mannschott</assignee>
                                <reporter username="bsmith.occs@gmail.com">Ben Smith-Mannschott</reporter>
                        <labels>
                    </labels>
                <created>Sat, 13 Oct 2012 03:26:16 -0500</created>
                <updated>Sun, 14 Oct 2012 11:14:38 -0500</updated>
                    <resolved>Sun, 14 Oct 2012 11:14:38 -0500</resolved>
                                                                    <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="29648" author="bsmith.occs@gmail.com" created="Sun, 14 Oct 2012 11:14:38 -0500"  >&lt;p&gt;Fixed by &lt;a href=&quot;https://github.com/clojure/test.generative/commit/a73c11e38191e980c817c88fd27901be2f5205ea&quot;&gt;a73c11e3&lt;/a&gt; on &lt;a href=&quot;https://github.com/clojure/test.generative&quot;&gt;test.generative&lt;/a&gt;.&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                    <attachment id="11559" name="ascii-127-is-not-printable.diff" size="939" author="bsmith.occs@gmail.com" created="Sat, 13 Oct 2012 03:26:16 -0500" />
                </attachments>
            <subtasks>
        </subtasks>
                <customfields>
                                <customfield id="customfield_10002" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                <customfieldname>Approval</customfieldname>
                <customfieldvalues>
                        <customfieldvalue key="10005">Accepted</customfieldvalue>

                </customfieldvalues>
            </customfield>
                                                                                    <customfield id="customfield_10010" key="com.pyxis.greenhopper.jira:gh-global-rank">
                <customfieldname>Global Rank</customfieldname>
                <customfieldvalues>
                    
                </customfieldvalues>
            </customfield>
                                            <customfield id="customfield_10000" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                <customfieldname>Patch</customfieldname>
                <customfieldvalues>
                        <customfieldvalue key="10001">Code</customfieldvalue>

                </customfieldvalues>
            </customfield>
                                                                                        </customfields>
    </item>

<item>
            <title>[TGEN-1] generators/shuffle violates contract of Comparable</title>
                <link>http://dev.clojure.org/jira/browse/TGEN-1</link>
                <project id="10081" key="TGEN">test.generative</project>
                        <description>&lt;p&gt;JDK 7&apos;s sort function is stricter about verifying that implementations of the comparison function actually obey their contract. It will even helpfully throw an exception when this is not the case:&lt;/p&gt;

&lt;p&gt;&lt;tt&gt;java.lang.IllegalArgumentException: Comparison method violates its general contract!&lt;/tt&gt;&lt;/p&gt;

&lt;p&gt;The root cause is this gem:&lt;/p&gt;

&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeHeader panelHeader&quot; style=&quot;border-bottom-width: 1px;&quot;&gt;&lt;b&gt;generators.clj&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;(defn shuffle
      &lt;span class=&quot;code-quote&quot;&gt;&quot;Shuffle coll&quot;&lt;/span&gt;
      [coll]
      (sort-by (fn [_] (&lt;span class=&quot;code-object&quot;&gt;long&lt;/span&gt;)) coll))&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Which does not work on JDK7 since TimSort is clever enough to detect that the ordering function is behaving inconsistently, resulting in the previously mentioned exception.&lt;/p&gt;

&lt;p&gt;Also, this is just a bad idea:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;A variant of the above method that has seen some use in languages that support sorting with user-specified comparison functions is to shuffle a list by sorting it with a comparison function that returns random values. However, this is an extremely bad method: it is very likely to produce highly non-uniform distributions, which in addition depends heavily on the sorting algorithm used.&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;(&lt;a href=&quot;http://en.wikipedia.org/wiki/Fisher-Yates_shuffle#Comparison_with_other_shuffling_algorithms&quot;&gt;wikipedia&lt;/a&gt;)&lt;/p&gt;
</description>
                <environment>Mac OS X 10.8.2&lt;br/&gt;
java version &amp;quot;1.7.0_06&amp;quot;&lt;br/&gt;
Java(TM) SE Runtime Environment (build 1.7.0_06-b24)&lt;br/&gt;
Java HotSpot(TM) 64-Bit Server VM (build 23.2-b09, mixed mode)&lt;br/&gt;
</environment>
            <key id="15749">TGEN-1</key>
            <summary>generators/shuffle violates contract of Comparable</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="bsmith.occs@gmail.com">Ben Smith-Mannschott</assignee>
                                <reporter username="bsmith.occs@gmail.com">Ben Smith-Mannschott</reporter>
                        <labels>
                    </labels>
                <created>Sat, 13 Oct 2012 03:11:45 -0500</created>
                <updated>Sun, 14 Oct 2012 11:13:39 -0500</updated>
                    <resolved>Sun, 14 Oct 2012 11:13:39 -0500</resolved>
                                                                    <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="29647" author="bsmith.occs@gmail.com" created="Sun, 14 Oct 2012 11:13:39 -0500"  >&lt;p&gt;Fixed by &lt;a href=&quot;https://github.com/clojure/test.generative/commit/5a59bf0fcddde12397d575e40aea3487f1f61825&quot;&gt;5a59bf0f&lt;/a&gt; on &lt;a href=&quot;https://github.com/clojure/test.generative&quot;&gt;test.generative&lt;/a&gt;.&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                    <attachment id="11558" name="fisher-yates-shuffle.diff" size="2634" author="bsmith.occs@gmail.com" created="Sat, 13 Oct 2012 03:20:42 -0500" />
                </attachments>
            <subtasks>
        </subtasks>
                <customfields>
                                <customfield id="customfield_10002" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                <customfieldname>Approval</customfieldname>
                <customfieldvalues>
                        <customfieldvalue key="10005">Accepted</customfieldvalue>

                </customfieldvalues>
            </customfield>
                                                                                    <customfield id="customfield_10010" key="com.pyxis.greenhopper.jira:gh-global-rank">
                <customfieldname>Global Rank</customfieldname>
                <customfieldvalues>
                    
                </customfieldvalues>
            </customfield>
                                            <customfield id="customfield_10000" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                <customfieldname>Patch</customfieldname>
                <customfieldvalues>
                        <customfieldvalue key="10001">Code</customfieldvalue>

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