ENH: Allow objects to use the array interface without specifying data
BUG: Make shape check for special case a bit stricter
TST: Add test for special case in array interface
BUG: Make sure empty shapes are disallowed when data is specified
BUG: Fixes for Python 3.x
BUG: Handle scalars correctly.
ENH: Assume object is scalar if no shape and data attribute are given
BUG: Disallow shapesize > 1 when coercing scalar to array
TST: Add more tests.
FIX: Add multiarch paths to the distutils' ones

Thanks to Julian Taylor and Sandro Tosi from Debian for the original patch.
Ralf has posted a link to the patch here:

http://article.gmane.org/gmane.comp.python.numeric.general/51454

I have modified the patch to remove the bare except command only catch the
OSError. Also I suppress the stderr.
BUG: Attempt to fix sparc segfault (gh-2668)
TST: Add a test for bug gh-2668

This is the test attached to the bug from Matthew Brett.
I tried to make a simpler test, but it didn't repro
the problem.
Merge pull request #2815 from certik/backport444

Backport444
Merge pull request #2816 from certik/backport2792

Backports #2792
Merge pull request #2817 from certik/backport2794

Backport2794
ENH: make random.choice size argument default to None and allow tuple

The size argument to random.choice should work like it does for all
other functions in random as well.
BUG: Do not sort new indices in random.choice.

Random choice used np.unique to find new indices when replace
was False and p given. This is wrong since unique will sort the
indices. This solves the bug, but likely not ideal.
BUG: Fix various problems in the previous commits.

Thanks to @alan-isaac for pointing out the 0-d vs. scalar issue.
TST: Add tests for new feature and fix in random.choice
MAINT: Regenerate mtrand.c