This fixes issue7900 by adding code that deals
with the fact that getgroups(2) might return
more that MAX_GROUPS on OSX.

See the issue (and python-dev archives) for the
gory details. Summarized: OSX behaves rather oddly
and Apple says this is intentional.
diff --git a/Misc/NEWS b/Misc/NEWS
index 4756daf..294ced7 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -316,6 +316,13 @@
 Extension Modules
 -----------------
 
+- Issue #7900: The getgroups(2) system call on MacOSX behaves rather oddly
+  compared to other unix systems. In particular, os.getgroups() does
+  not reflect any changes made using os.setgroups() but basicly always
+  returns the same information as the id command.
+
+  os.getgroups() can now return more than 16 groups on MacOSX.
+
 - Issue #7384: If the system readline library is linked against
   ncurses, do not link the readline module against ncursesw. The
   additional restriction of linking the readline and curses modules