I think I&#39;ve just found a showstopper bug, but I&#39;m still working on producing a reduced test case.  Will keep you guys posted.<br><br><div class="gmail_quote">On Wed, Sep 8, 2010 at 5:00 PM, Brad Roberts <span dir="ltr">&lt;<a href="mailto:braddr@puremagic.com">braddr@puremagic.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">What&#39;s the state of the union?  Er.. code base?<br>
<br>
IMHO, it&#39;s about time to consider cutting the next release.  Who has<br>
opinions on what&#39;s unfinished that they believe needs to be in it?<br>
<br>
Here&#39;s the current changelog for the trunk (probably needs to be validated<br>
with some of the fixes having to be reverted):<br>
<br>
    $(WHATSNEW<br>
        $(LI std.algorithm:  reduce now works with non-range-based iteration, such as opApply.)<br>
        $(LI std.numeric:  Added FFT.)<br>
        $(LI std.process: Added environment, an AA-like interface for environment variables.)<br>
        $(LI std.range:  Iota, Stride, Transversal, FrontTransveral now support slicing where possible.)<br>
        $(LI std.range:  Added Lockstep, hasLvalueElements.)<br>
        $(LI std.range:  Added virtual function-based wrappers (InputRangeObject, OutputRangeObject) for when a binary interface to a range is required.)<br>
        $(LI std.typecons:  Added convenience functions for Rebindable.)<br>
        $(L1 std.traits:  Added isAssignable, isIterable, ForeachType, isSafe, isUnsafe, EnumMembers.)<br>
        $(L1 std.traits:  hasLocalAliasing, hasLocalObjects and hasLocalRawAliasing are now hasUnsharedAliasing, hasUnsharedObjects and hasUnsharedRawAliasing.  Aliases to the old names are included for now for backwards compatibility.)<br>

        $(LI std.typetuple:  Added anySatisfy.)<br>
        $(LI $(LINK2 phobos/std_stopwatch.html,std.swopwatch):  Added StopWatch, Ticks, systime, apptime, comparingBenchmark, measureTime.)<br>
    )<br>
    $(BUGSFIXED<br>
        $(LI Unlisted Bug:  std.math.pow doesn&#39;t work on immutable numbers.)<br>
        $(LI Unlisted Bug:  std.math.pow floating point overload expects both arguments to be exact same type.)<br>
        $(LI Unlisted Bug:  std.path.join(&quot;&quot;, &quot;foo&quot;) returns &quot;/foo&quot; instead of &quot;foo&quot; on Posix.)<br>
        $(LI Unlisted Bug:  std.range.iota() random access primitives inconsistent after popFront on floating point version)<br>
        $(LI Several unlisted bugs in std.range.chain)<br>
        $(LI $(BUGZILLA 2903): Splitter should be bi-dir if the input range is bi-dir.)<br>
        $(LI $(BUGZILLA 2951): std.random.dice() should be templated on proportions.)<br>
        $(LI $(BUGZILLA 2958): std.getopt RangeError on missing arg)<br>
        $(LI $(BUGZILLA 3123): std.algorithm.zip fails on &#39;lazy&#39; ranges)<br>
        $(LI $(BUGZILLA 3294): forward reference to inferred return type of function call)<br>
        $(LI $(BUGZILLA 3312): std.string.count should use const(char)[], not immutable.)<br>
        $(LI $(BUGZILLA 3348): Documentation for many std.process functions has disappeared)<br>
        $(LI $(BUGZILLA 3361): code in std.zlib concatenates void[] arrays )<br>
        $(LI $(BUGZILLA 3877): std.range.chain do not manage infinite ranges correctly)<br>
        $(LI $(BUGZILLA 3894): std.range.Stride!R requires R.front() and R.back() to return by reference)<br>
        $(LI $(BUGZILLA 3946): schwartzSort - SwapStrategy always unstable)<br>
        $(LI $(BUGZILLA 4402): std.range.Zip doesn&#39;t work w/ non-lvalue ranges.)<br>
        $(LI $(BUGZILLA 4408): Ambiguity when using std.algorithm.splitter with generic ranges.)<br>
        $(LI $(BUGZILLA 4292): CommonType fails for singular alias value.)<br>
        $(LI $(BUGZILLA 4345): std.range.take!string: &quot;Nonsensical finite range with slicing but no length&quot;.)<br>
        $(LI $(BUGZILLA 4345): More flexible std.array.array.)<br>
        $(LI $(BUGZILLA 4363): Some phobos ranges are not forward ranges (but should be).)<br>
        $(LI $(BUGZILLA 4381): Length attribute for std.typecons.Tuple.)<br>
        $(LI $(BUGZILLA 4387): std.range.Cycle assumes lvalue elements.)<br>
        $(LI $(BUGZILLA 4388): std.range.Radial assumes lvalue elements.)<br>
        $(LI $(BUGZILLA 4403): std.range.FrontTransversal assumes lvalue elements.)<br>
        $(LI $(BUGZILLA 4404): std.range.Transversal assumes lvalue elements.)<br>
        $(LI $(BUGZILLA 4455): Taking the sqrt of an integer shouldn&#39;t require an explicit cast.)<br>
        $(LI $(BUGZILLA 4464): std.range.take does not always return Take!R.)<br>
        $(LI $(BUGZILLA 4518): to!string(enum w/invalid value) produces a somewhat unhelpful error)<br>
        $(LI $(BUGZILLA 4603): array(iota(1, 0)) error.)<br>
        $(LI $(BUGZILLA 4643): Shared values are unwritable.)<br>
        $(LI $(BUGZILLA 4700): to!float(&quot;0&quot;) fails)<br>
        $(LI $(BUGZILLA 4748): Shadowing declaration error in std.string.tolower)<br>
        $(LI $(BUGZILLA 4789): std.algorithm.sort bug)<br>
        $(LI $(BUGZILLA 4810): dotProduct problem with ints)<br>
        $(LI $(BUGZILLA 4834): Implicit sharing via delegates in std.concurrency)<br>
_______________________________________________<br>
dmd-internals mailing list<br>
<a href="mailto:dmd-internals@puremagic.com">dmd-internals@puremagic.com</a><br>
<a href="http://lists.puremagic.com/mailman/listinfo/dmd-internals" target="_blank">http://lists.puremagic.com/mailman/listinfo/dmd-internals</a><br>
</blockquote></div><br>