Bump to 3.3b2.
diff --git a/Include/patchlevel.h b/Include/patchlevel.h
index 8e6c9c1..775e4c5 100644
--- a/Include/patchlevel.h
+++ b/Include/patchlevel.h
@@ -20,10 +20,10 @@
 #define PY_MINOR_VERSION	3
 #define PY_MICRO_VERSION	0
 #define PY_RELEASE_LEVEL	PY_RELEASE_LEVEL_BETA
-#define PY_RELEASE_SERIAL	1
+#define PY_RELEASE_SERIAL	2
 
 /* Version as a string */
-#define PY_VERSION      	"3.3.0b1"
+#define PY_VERSION      	"3.3.0b2"
 /*--end constants--*/
 
 /* Version as a single 4-byte hex number, e.g. 0x010502B2 == 1.5.2b2.
diff --git a/Lib/distutils/__init__.py b/Lib/distutils/__init__.py
index 7a7b8d6..1504277 100644
--- a/Lib/distutils/__init__.py
+++ b/Lib/distutils/__init__.py
@@ -13,5 +13,5 @@
 # Updated automatically by the Python release process.
 #
 #--start constants--
-__version__ = "3.3.0b1"
+__version__ = "3.3.0b2"
 #--end constants--
diff --git a/Lib/idlelib/idlever.py b/Lib/idlelib/idlever.py
index 7de1b07..db5b373 100644
--- a/Lib/idlelib/idlever.py
+++ b/Lib/idlelib/idlever.py
@@ -1 +1 @@
-IDLE_VERSION = "3.3.0b1"
+IDLE_VERSION = "3.3.0b2"
diff --git a/Misc/NEWS b/Misc/NEWS
index 3de6805..2dacd7b 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -5,7 +5,7 @@
 What's New in Python 3.3.0 Beta 2?
 ==================================
 
-*Release date: xx-xxx-2012*
+*Release date: 12-Aug-2012*
 
 Core and Builtins
 -----------------
@@ -19,38 +19,38 @@
 - Issue #15534: Fix the fast-search function for non-ASCII Unicode strings.
 
 - Issue #15508: Fix the docstring for __import__ to have the proper default
-  value of 0 for 'level' and to not mention negative levels since they are
-  not supported.
+  value of 0 for 'level' and to not mention negative levels since they are not
+  supported.
 
 - Issue #15425: Eliminated traceback noise from more situations involving
-  importlib
+  importlib.
 
 - Issue #14578: Support modules registered in the Windows registry again.
 
-- Issue #15466: Stop using TYPE_INT64 in marshal, to make importlib.h
-  (and other byte code files) equal between 32-bit and 64-bit systems.
+- Issue #15466: Stop using TYPE_INT64 in marshal, to make importlib.h (and other
+  byte code files) equal between 32-bit and 64-bit systems.
 
-- Issue #1692335: Move initial args assignment to
-  BaseException.__new__ to help pickling of naive subclasses.
+- Issue #1692335: Move initial exception args assignment to
+  "BaseException.__new__" to help pickling of naive subclasses.
 
 - Issue #12834: Fix PyBuffer_ToContiguous() for non-contiguous arrays.
 
-- Issue #15456: Fix code __sizeof__ after #12399 change.
-  Patch by Serhiy Storchaka.
+- Issue #15456: Fix code __sizeof__ after #12399 change.  Patch by Serhiy
+  Storchaka.
 
 - Issue #15404: Refleak in PyMethodObject repr.
 
-- Issue #15394: An issue in PyModule_Create that caused references to
-  be leaked on some error paths has been fixed.  Patch by Julia Lawall.
+- Issue #15394: An issue in PyModule_Create that caused references to be leaked
+  on some error paths has been fixed.  Patch by Julia Lawall.
 
-- Issue #15368: An issue that caused bytecode generation to be
-  non-deterministic has been fixed.
+- Issue #15368: An issue that caused bytecode generation to be non-deterministic
+  has been fixed.
 
-- Issue #15202: Consistently use the name "follow_symlinks" for
-  new parameters in os and shutil functions.
+- Issue #15202: Consistently use the name "follow_symlinks" for new parameters
+  in os and shutil functions.
 
-- Issue #15314: __main__.__loader__ is now set correctly during
-  interpreter startup
+- Issue #15314: __main__.__loader__ is now set correctly during interpreter
+  startup.
 
 - Issue #15111: When a module imported using 'from import' has an ImportError
   inside itself, don't mask that fact behind a generic ImportError for the
@@ -61,8 +61,8 @@
 - Issue #15291: Fix a memory leak where AST nodes where not properly
   deallocated.
 
-- Issue #15110: Fix the tracebacks generated by "import xxx" to not show
-  the importlib stack frames.
+- Issue #15110: Fix the tracebacks generated by "import xxx" to not show the
+  importlib stack frames.
 
 - Issue #15020: The program name used to search for Python's path is now
   "python3" under Unix, not "python".
@@ -71,22 +71,22 @@
   return the proper failure return value (1). Patch contributed by Jeff Knupp.
 
 - Issue #15229: An OSError subclass whose __init__ doesn't call back
-  OSError.__init__ could produce incomplete instances, leading to crashes
-  when calling str() on them.
+  OSError.__init__ could produce incomplete instances, leading to crashes when
+  calling str() on them.
 
-- Issue 15307: Virtual environments now use symlinks with framework builds
-  on Mac OS X, like other POSIX builds.
+- Issue 15307: Virtual environments now use symlinks with framework builds on
+  Mac OS X, like other POSIX builds.
 
 Library
 -------
 
-- Issue #15424: Add a __sizeof__ implementation for array objects.
-  Patch by Ludwig Hähne.
+- Issue #15424: Add a __sizeof__ implementation for array objects.  Patch by
+  Ludwig Hähne.
 
 - Issue #15576: Allow extension modules to act as a package's __init__ module.
 
-- Issue #15502: Have importlib.invalidate_caches() work on sys.meta_path
-  instead of sys.path_importer_cache.
+- Issue #15502: Have importlib.invalidate_caches() work on sys.meta_path instead
+  of sys.path_importer_cache.
 
 - Issue #15163: Pydoc shouldn't list __loader__ as module data.
 
@@ -104,81 +104,80 @@
   ended with '\'. Patch by Roger Serwy.
 
 - Issue #12655: Instead of requiring a custom type, os.sched_getaffinity and
-  os.sched_setaffinity now use regular sets of integers to represent the CPUs
-  a process is restricted to.
+  os.sched_setaffinity now use regular sets of integers to represent the CPUs a
+  process is restricted to.
 
-- Issue #15538: Fix compilation of the getnameinfo() / getaddrinfo()
-  emulation code.  Patch by Philipp Hagemeister.
+- Issue #15538: Fix compilation of the getnameinfo() / getaddrinfo() emulation
+  code.  Patch by Philipp Hagemeister.
 
-- Issue #15519: Properly expose WindowsRegistryFinder in importlib (and use
-  the correct term for it). Original patch by Eric Snow.
+- Issue #15519: Properly expose WindowsRegistryFinder in importlib (and use the
+  correct term for it). Original patch by Eric Snow.
 
-- Issue #15502: Bring the importlib ABCs into line with the current state
-  of the import protocols given PEP 420. Original patch by Eric Snow.
+- Issue #15502: Bring the importlib ABCs into line with the current state of the
+  import protocols given PEP 420. Original patch by Eric Snow.
 
-- Issue #15499: Launching a webbrowser in Unix used to sleep for a few
-  seconds.  Original patch by Anton Barkovsky.
+- Issue #15499: Launching a webbrowser in Unix used to sleep for a few seconds.
+  Original patch by Anton Barkovsky.
 
-- Issue #15463: the faulthandler module truncates strings to 500 characters,
-  instead of 100, to be able to display long file paths
+- Issue #15463: The faulthandler module truncates strings to 500 characters,
+  instead of 100, to be able to display long file paths.
 
-- Issue #6056: Make multiprocessing use setblocking(True) on the
-  sockets it uses.  Original patch by J Derek Wilson.
+- Issue #6056: Make multiprocessing use setblocking(True) on the sockets it
+  uses.  Original patch by J Derek Wilson.
 
-- Issue #15364: Fix sysconfig.get_config_var('srcdir') to be an
-  absolute path.
+- Issue #15364: Fix sysconfig.get_config_var('srcdir') to be an absolute path.
 
-- Issue #15041: update "see also" list in tkinter documentation.
+- Issue #15041: Update "see also" list in tkinter documentation.
 
 - Issue #15413: os.times() had disappeared under Windows.
 
 - Issue #15402: An issue in the struct module that caused sys.getsizeof to
-  return incorrect results for struct.Struct instances has been fixed.
-  Initial patch by Serhiy Storchaka.
+  return incorrect results for struct.Struct instances has been fixed.  Initial
+  patch by Serhiy Storchaka.
 
-- Issue #15232: when mangle_from is True, email.Generator now correctly mangles
+- Issue #15232: When mangle_from is True, email.Generator now correctly mangles
   lines that start with 'From ' that occur in a MIME preamble or epilogue.
 
-- Issue #15094: Incorrectly placed #endif in _tkinter.c.
-  Patch by Serhiy Storchaka.
+- Issue #15094: Incorrectly placed #endif in _tkinter.c.  Patch by Serhiy
+  Storchaka.
 
-- Issue #13922: argparse no longer incorrectly strips '--'s that appear
-  after the first one.
+- Issue #13922: argparse no longer incorrectly strips '--'s that appear after
+  the first one.
 
 - Issue #12353: argparse now correctly handles null argument values.
 
-- Issues #10017 and #14998: Fix TypeError using pprint on dictionaries with
+- Issue #10017, issue #14998: Fix TypeError using pprint on dictionaries with
   user-defined types as keys or other unorderable keys.
 
-- Issue #15397: inspect.getmodulename() is now based directly on importlib
-  via a new importlib.machinery.all_suffixes() API.
+- Issue #15397: inspect.getmodulename() is now based directly on importlib via a
+  new importlib.machinery.all_suffixes() API.
 
-- Issue #14635: telnetlib will use poll() rather than select() when possible
-  to avoid failing due to the select() file descriptor limit.
+- Issue #14635: telnetlib will use poll() rather than select() when possible to
+  avoid failing due to the select() file descriptor limit.
 
-- Issue #15180: Clarify posixpath.join() error message when mixing str & bytes
+- Issue #15180: Clarify posixpath.join() error message when mixing str & bytes.
 
-- Issue #15343: pkgutil now includes an iter_importer_modules implementation
-  for importlib.machinery.FileFinder (similar to the way it already handled
-  zipimport.zipimporter)
+- Issue #15343: pkgutil now includes an iter_importer_modules implementation for
+  importlib.machinery.FileFinder (similar to the way it already handled
+  zipimport.zipimporter).
 
-- Issue #15314: runpy now sets __main__.__loader__ correctly
+- Issue #15314: runpy now sets __main__.__loader__ correctly.
 
-- Issue #15357: The import emulation in pkgutil is now deprecated. pkgutil
-  uses importlib internally rather than the emulation
+- Issue #15357: The import emulation in pkgutil is now deprecated. pkgutil uses
+  importlib internally rather than the emulation.
 
-- Issue #15233: Python now guarantees that callables registered with
-  the atexit module will be called in a deterministic order.
+- Issue #15233: Python now guarantees that callables registered with the atexit
+  module will be called in a deterministic order.
 
 - Issue #15238: shutil.copystat now copies Linux "extended attributes".
 
-- Issue #15230: runpy.run_path now correctly sets __package__ as described
-  in the documentation
+- Issue #15230: runpy.run_path now correctly sets __package__ as described in
+  the documentation.
 
 - Issue #15315: Support VS 2010 in distutils cygwincompiler.
 
-- Issue #15294: Fix a regression in pkgutil.extend_path()'s handling of
-  nested namespace packages.
+- Issue #15294: Fix a regression in pkgutil.extend_path()'s handling of nested
+  namespace packages.
 
 - Issue #15056: imp.cache_from_source() and source_from_cache() raise
   NotImplementedError when sys.implementation.cache_tag is set to None.
@@ -186,62 +185,60 @@
 - Issue #15256: Grammatical mistake in exception raised by imp.find_module().
 
 - Issue #5931: wsgiref environ variable SERVER_SOFTWARE will specify an
-  implementation specific term like Cpython, Jython instead of generic "Python"
+  implementation specific term like CPython, Jython instead of generic "Python".
 
-- Issue #13248: Remove obsolete argument "max_buffer_size" of BufferedWriter
-  and BufferedRWPair, from the io module.
+- Issue #13248: Remove obsolete argument "max_buffer_size" of BufferedWriter and
+  BufferedRWPair, from the io module.
 
 - Issue #13248: Remove obsolete argument "version" of argparse.ArgumentParser.
 
-- Issue #14814: implement more consistent ordering and sorting behaviour
-  for ipaddress objects
+- Issue #14814: Implement more consistent ordering and sorting behaviour for
+  ipaddress objects.
 
-- Issue #14814: ipaddress network objects correctly return NotImplemented
-  when compared to arbitrary objects instead of raising TypeError
+- Issue #14814: ipaddress network objects correctly return NotImplemented when
+  compared to arbitrary objects instead of raising TypeError.
 
-- Issue #14990: Correctly fail with SyntaxError on invalid encoding
-  declaration.
+- Issue #14990: Correctly fail with SyntaxError on invalid encoding declaration.
 
 - Issue #14814: ipaddress now provides more informative error messages when
   constructing instances directly (changes permitted during beta due to
-  provisional API status)
+  provisional API status).
 
-- Issue #15247: FileIO now raises an error when given a file descriptor
-  pointing to a directory.
+- Issue #15247: FileIO now raises an error when given a file descriptor pointing
+  to a directory.
 
 - Issue #15261: Stop os.stat(fd) crashing on Windows when fd not open.
 
 - Issue #15166: Implement imp.get_tag() using sys.implementation.cache_tag.
 
-- Issue #15210: Catch KeyError when imprortlib.__init__ can't find
+- Issue #15210: Catch KeyError when importlib.__init__ can't find
   _frozen_importlib in sys.modules, not ImportError.
 
 - Issue #15030: importlib.abc.PyPycLoader now supports the new source size
   header field in .pyc files.
 
-- Issue #5346: Preserve permissions of mbox, MMDF and Babyl mailbox
-  files on flush().
+- Issue #5346: Preserve permissions of mbox, MMDF and Babyl mailbox files on
+  flush().
 
-- Issue #10571: Fix the "--sign" option of distutils' upload command.
-  Patch by Jakub Wilk.
+- Issue #10571: Fix the "--sign" option of distutils' upload command.  Patch by
+  Jakub Wilk.
 
-- Issue #9559: If messages were only added, a new file is no longer
-  created and renamed over the old file when flush() is called on an
-  mbox, MMDF or Babyl mailbox.
+- Issue #9559: If messages were only added, a new file is no longer created and
+  renamed over the old file when flush() is called on an mbox, MMDF or Babyl
+  mailbox.
 
-- Issue 10924: Fixed mksalt() to use a RNG that is suitable for cryptographic
-  purpose.
+- Issue 10924: Fixed crypt.mksalt() to use a RNG that is suitable for
+  cryptographic purpose.
 
-- Issue #15184: Ensure consistent results of OS X configuration
-  tailoring for universal builds by factoring out common OS X-specific
-  customizations from sysconfig, distutils.sysconfig, distutils.util,
-  and distutils.unixccompiler into a new module _osx_support.
+- Issue #15184: Ensure consistent results of OS X configuration tailoring for
+  universal builds by factoring out common OS X-specific customizations from
+  sysconfig, distutils.sysconfig, distutils.util, and distutils.unixccompiler
+  into a new module _osx_support.
 
 C API
 -----
 
-- Issue #15610: PyImport_ImportModuleEx() now uses a 'level' of 0 instead of
-  -1.
+- Issue #15610: PyImport_ImportModuleEx() now uses a 'level' of 0 instead of -1.
 
 - Issues #15169, #14599: Strip out the C implementation of
   imp.source_from_cache() used by PyImport_ExecCodeModuleWithPathnames() and
@@ -260,14 +257,14 @@
 Tools/Demos
 -----------
 
-- Issue #15458: python-config gets a new option --configdir to print the
-  $LIBPL value.
+- Issue #15458: python-config gets a new option --configdir to print the $LIBPL
+  value.
 
 - Move importlib.test.benchmark to Tools/importbench.
 
-- Issue #12605: The gdb hooks for debugging CPython (within Tools/gdb) have
-  been enhanced to show information on more C frames relevant to CPython within
-  the "py-bt" and "py-bt-full" commands:
+- Issue #12605: The gdb hooks for debugging CPython (within Tools/gdb) have been
+  enhanced to show information on more C frames relevant to CPython within the
+  "py-bt" and "py-bt-full" commands:
     * C frames that are waiting on the GIL
     * C frames that are garbage-collecting
     * C frames that are due to the invocation of a PyCFunction
@@ -277,8 +274,8 @@
 
 - Issue #15295: Reorganize and rewrite the documentation on the import system.
 
-- Issue #15230: Clearly document some of the limitations of the runpy
-  module and nudge readers towards importlib when appropriate.
+- Issue #15230: Clearly document some of the limitations of the runpy module and
+  nudge readers towards importlib when appropriate.
 
 - Issue #15053: Copy Python 3.3 import lock change notice to all relevant
   functions in imp instead of just at the top of the relevant section.
@@ -297,11 +294,11 @@
 Tests
 -----
 
-- Issue #15467: Move helpers for __sizeof__ tests into test_support.
-  Patch by Serhiy Storchaka.
+- Issue #15467: Move helpers for __sizeof__ tests into test_support.  Patch by
+  Serhiy Storchaka.
 
-- Issue #15320: Make iterating the list of tests thread-safe when running
-  tests in multiprocess mode. Patch by Chris Jerdonek.
+- Issue #15320: Make iterating the list of tests thread-safe when running tests
+  in multiprocess mode. Patch by Chris Jerdonek.
 
 - Issue #15168: Move importlib.test to test.test_importlib.
 
@@ -317,33 +314,33 @@
 - Issue #15284: Skip {send,recv}msg tests in test_socket when IPv6 is not
   enabled. Patch by Brian Brazil.
 
-- Issue #15277: Fix a resource leak in support.py when IPv6 is disabled.
-  Patch by Brian Brazil.
+- Issue #15277: Fix a resource leak in support.py when IPv6 is disabled.  Patch
+  by Brian Brazil.
 
 Build
 -----
 
-- Issue #11715: Fix multiarch detection without having Debian development
-  tools (dpkg-dev) installed.
+- Issue #11715: Fix multiarch detection without having Debian development tools
+  (dpkg-dev) installed.
 
 - Issue #15037: Build OS X installers with local copy of ncurses 5.9 libraries
   to avoid curses.unget_wch bug present in older versions of ncurses such as
   those shipped with OS X.
 
-- Issue #15560: Fix building _sqlite3 extension on OS X with an SDK.
-  Also, for OS X installers, ensure consistent sqlite3 behavior and feature
-  availability by building a local copy of libsqlite3 rather than
-  depending on the wide range of versions supplied with various OS X releases.
+- Issue #15560: Fix building _sqlite3 extension on OS X with an SDK.  Also, for
+  OS X installers, ensure consistent sqlite3 behavior and feature availability
+  by building a local copy of libsqlite3 rather than depending on the wide range
+  of versions supplied with various OS X releases.
 
 - Issue #8847: Disable COMDAT folding in Windows PGO builds.
 
 - Issue #14018: Fix OS X Tcl/Tk framework checking when using OS X SDKs.
 
-- Issue #15431: Add _freeze_importlib project to regenerate importlib.h
-  on Windows. Patch by Kristján Valur Jónsson.
+- Issue #15431: Add _freeze_importlib project to regenerate importlib.h on
+  Windows. Patch by Kristján Valur Jónsson.
 
-- Issue #14197: For OS X framework builds, ensure links to the shared
-  library are created with the proper ABI suffix.
+- Issue #14197: For OS X framework builds, ensure links to the shared library
+  are created with the proper ABI suffix.
 
 - Issue #14330: For cross builds, don't use host python, use host search paths
   for host compiler.
diff --git a/Misc/RPM/python-3.3.spec b/Misc/RPM/python-3.3.spec
index 5da076d..825e46c 100644
--- a/Misc/RPM/python-3.3.spec
+++ b/Misc/RPM/python-3.3.spec
@@ -39,7 +39,7 @@
 
 %define name python
 #--start constants--
-%define version 3.3.0b1
+%define version 3.3.0b2
 %define libvers 3.3
 #--end constants--
 %define release 1pydotorg
diff --git a/README b/README
index 13f3df4..eded8fd 100644
--- a/README
+++ b/README
@@ -1,4 +1,4 @@
-This is Python version 3.3.0 beta 1
+This is Python version 3.3.0 beta 2
 ===================================
 
 Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011,