[phobos] [D-Programming-Language/phobos] 8da0f1: Issue 10269 - RandomSample should use popFrontExac...

GitHub noreply at github.com
Sun Jun 16 11:00:13 PDT 2013


  Branch: refs/heads/master
  Home:   https://github.com/D-Programming-Language/phobos
  Commit: 8da0f13596125478b8c3c71ae7fecbe5626fb076
      https://github.com/D-Programming-Language/phobos/commit/8da0f13596125478b8c3c71ae7fecbe5626fb076
  Author: Joseph Rushton Wakeling <joe at webdrake.net>
  Date:   2013-06-09 (Sun, 09 Jun 2013)

  Changed paths:
    M std/random.d

  Log Message:
  -----------
  Issue 10269 - RandomSample should use popFrontExactly, not popFrontN, when skipping across input range

This small tweak has been accompanied by a couple of extra checks
to ensure that users do not request more sample points than are
available in the input, which could otherwise be the source of
exceptions.

There exists one remaining case where RandomSample may fail: if it
is given an InputRange without the .length property, and the user
indicates that the total number of items available is greater
than what the InputRange actually contains.  In this case an
exception is thrown from std.array.popFront() line 450,
"Attempting to popFront() past the end of an array", or from
std.array.front() line 624, "Attempting to fetch the front of an
empty array."


  Commit: a998d0249820f173403533e8d44bb3b0f832c617
      https://github.com/D-Programming-Language/phobos/commit/a998d0249820f173403533e8d44bb3b0f832c617
  Author: Joseph Rushton Wakeling <joe at webdrake.net>
  Date:   2013-06-09 (Sun, 09 Jun 2013)

  Changed paths:
    M std/random.d

  Log Message:
  -----------
  RandomSample assertions to ensure skip sizes respect number of items remaining.


  Commit: ca7abe9454994e7a2be86122be88fcd5b30ec0fc
      https://github.com/D-Programming-Language/phobos/commit/ca7abe9454994e7a2be86122be88fcd5b30ec0fc
  Author: Joseph Rushton Wakeling <joe at webdrake.net>
  Date:   2013-06-09 (Sun, 09 Jun 2013)

  Changed paths:
    M std/random.d

  Log Message:
  -----------
  Indentation corrections. :-(


  Commit: 91b2c664c7c435ed65f9eec3cbb13dc4602f40b9
      https://github.com/D-Programming-Language/phobos/commit/91b2c664c7c435ed65f9eec3cbb13dc4602f40b9
  Author: Joseph Rushton Wakeling <joe at webdrake.net>
  Date:   2013-06-16 (Sun, 16 Jun 2013)

  Changed paths:
    M std/random.d

  Log Message:
  -----------
  Fix up spacing and brackets for if statements.


  Commit: 22d26ef8c1776441b174ed1f27f14df3d6f20179
      https://github.com/D-Programming-Language/phobos/commit/22d26ef8c1776441b174ed1f27f14df3d6f20179
  Author: Joseph Rushton Wakeling <joe at webdrake.net>
  Date:   2013-06-16 (Sun, 16 Jun 2013)

  Changed paths:
    M std/random.d

  Log Message:
  -----------
  Simplify assert conditions.


  Commit: 643a2565a1e9e7c339eb22913931f6bfe86aad14
      https://github.com/D-Programming-Language/phobos/commit/643a2565a1e9e7c339eb22913931f6bfe86aad14
  Author: Joseph Rushton Wakeling <joe at webdrake.net>
  Date:   2013-06-16 (Sun, 16 Jun 2013)

  Changed paths:
    M std/random.d

  Log Message:
  -----------
  More formatting corrections.


  Commit: bc386eed72ba486fae0775efb1f01924a9237b69
      https://github.com/D-Programming-Language/phobos/commit/bc386eed72ba486fae0775efb1f01924a9237b69
  Author: Joseph Rushton Wakeling <joe at webdrake.net>
  Date:   2013-06-16 (Sun, 16 Jun 2013)

  Changed paths:
    M std/random.d

  Log Message:
  -----------
  Spread long statements across several lines.


  Commit: 201e5c2dd17e6c8f151c01276a2545c4d7e0d372
      https://github.com/D-Programming-Language/phobos/commit/201e5c2dd17e6c8f151c01276a2545c4d7e0d372
  Author: Andrei Alexandrescu <andrei at erdani.com>
  Date:   2013-06-16 (Sun, 16 Jun 2013)

  Changed paths:
    M std/random.d

  Log Message:
  -----------
  Merge pull request #1342 from WebDrake/randomsample-popfront

Issue 10269 - RandomSample should use popFrontExactly, not popFrontN ...


Compare: https://github.com/D-Programming-Language/phobos/compare/22c75c7904dd...201e5c2dd17e


More information about the phobos mailing list