I think I've just found a showstopper bug, but I'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"><<a href="mailto:braddr@puremagic.com">braddr@puremagic.com</a>></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's the state of the union? Er.. code base?<br>
<br>
IMHO, it's about time to consider cutting the next release. Who has<br>
opinions on what's unfinished that they believe needs to be in it?<br>
<br>
Here'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'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("", "foo") returns "/foo" instead of "foo" 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 'lazy' 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'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: "Nonsensical finite range with slicing but no length".)<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'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("0") 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>