Commit Graph

2815 Commits

Author SHA1 Message Date
Georg Brandl 7be19aabe2 Factor out docstring dedenting from inspect.getdoc() into inspect.cleandoc()
to ease standalone use of the algorithm.
2008-06-07 15:59:10 +00:00
Thomas Heller fbb9c0bf3c Issue #1798: Add ctypes calling convention that allows safe access of errno.
ctypes maintains thread-local storage that has space for two error
numbers: private copies of the system 'errno' value and, on Windows,
the system error code accessed by the GetLastError() and
SetLastError() api functions.

Foreign functions created with CDLL(..., use_errno=True), when called,
swap the system 'errno' value with the private copy just before the
actual function call, and swapped again immediately afterwards.  The
'use_errno' parameter defaults to False, in this case 'ctypes_errno'
is not touched.

On Windows, foreign functions created with CDLL(...,
use_last_error=True) or WinDLL(..., use_last_error=True) swap the
system LastError value with the ctypes private copy.

The values are also swapped immeditately before and after ctypes
callback functions are called, if the callbacks are constructed using
the new optional use_errno parameter set to True: CFUNCTYPE(...,
use_errno=TRUE) or WINFUNCTYPE(..., use_errno=True).

New ctypes functions are provided to access the ctypes private copies
from Python:

- ctypes.set_errno(value) and ctypes.set_last_error(value) store
  'value' in the private copy and returns the previous value.

- ctypes.get_errno() and ctypes.get_last_error() returns the current
  ctypes private copies value.
2008-06-06 08:33:46 +00:00
Thomas Heller 59475e9739 Backport from py3k: Implement the new buffer interface from pep3118
for ctypes instances.  Closes issue #2404.
2008-06-05 17:52:59 +00:00
Ronald Oussoren 5640ce2f1e MacOS X: Enable 4-way universal builds
This patch adds a new configure argument on OSX:
        --with-universal-archs=[32-bit|64-bit|all]

When used with the --enable-universalsdk option this controls which
CPU architectures are includes in the framework. The default is 32-bit,
meaning i386 and ppc. The most useful alternative is 'all', which includes
all 4 CPU architectures supported by MacOS X (i386, ppc, x86_64 and ppc64).

This includes limited support for the Carbon bindings in 64-bit mode as well,
limited because (a) I haven't done extensive testing and (b) a large portion
of the Carbon API's aren't available in 64-bit mode anyway.

I've also duplicated a feature of Apple's build of python: setting the
environment variable 'ARCHFLAGS' controls the '-arch' flags used for building
extensions using distutils.
2008-06-05 12:58:24 +00:00
Thomas Heller d5bb9215c9 Revert revisions 63943 and 63942 (Issue #1798: Add ctypes calling
convention that allows safe access to errno)

This code does not yet work on OS X (__thread storage specifier not
available), so i needs a configure check plus a more portable
solution.
2008-06-04 20:22:05 +00:00
Thomas Heller e70c3378c0 Issue #1798: Add ctypes calling convention that allows safe access to
errno (and LastError, on Windows).

ctypes maintains a module-global, but thread-local, variable that
contains an error number; called 'ctypes_errno' for this discussion.
This variable is a private copy of the systems 'errno' value; the copy
is swapped with the 'errno' variable on several occasions.

Foreign functions created with CDLL(..., use_errno=True), when called,
swap the values just before the actual function call, and swapped
again immediately afterwards.  The 'use_errno' parameter defaults to
False, in this case 'ctypes_errno' is not touched.

The values are also swapped immeditately before and after ctypes
callback functions are called, if the callbacks are constructed using
the new optional use_errno parameter set to True: CFUNCTYPE(..., use_errno=TRUE)
or WINFUNCTYPE(..., use_errno=True).

Two new ctypes functions are provided to access the 'ctypes_errno'
value from Python:

- ctypes.set_errno(value) sets ctypes_errno to 'value', the previous
  ctypes_errno value is returned.

- ctypes.get_errno() returns the current ctypes_errno value.

---

On Windows, the same scheme is implemented for the error value which
is managed by the GetLastError() and SetLastError() windows api calls.

The ctypes functions are 'ctypes.set_last_error(value)' and
'ctypes.get_last_error()', the CDLL and WinDLL optional parameter is
named 'use_last_error', defaults to False.

---

On Windows, TlsSetValue and TlsGetValue calls are used to provide
thread local storage for the variables; ctypes compiled with __GNUC__
uses __thread variables.
2008-06-04 18:59:03 +00:00
Martin v. Löwis ffe62ed46d Patch #2125: Add GetInteger and GetString methods for
msilib.Record objects.
2008-06-02 08:40:06 +00:00
Gregory P. Smith 137d824148 Fix issue 2782: be less strict about the format string type in strftime.
Accept unicode and anything else ParseTuple "s#" can deal with.  This
matches the time.strftime behavior.
2008-06-02 04:05:52 +00:00
Gregory P. Smith 8856ddae25 Adds a Thread.getIdent() method to provide the _get_ident() value for
any given threading.Thread object.  feature request issue 2871.
2008-06-01 23:48:47 +00:00
Georg Brandl ac19d85e04 Deprecate htmllib and sgmllib for 3.0. 2008-06-01 21:19:14 +00:00
Robert Schuppenies 51df064767 Issue #2898: Added sys.getsizeof() to retrieve size of objects in bytes. 2008-06-01 16:16:17 +00:00
Martin v. Löwis 99815892f6 New environment variable PYTHONIOENCODING. 2008-06-01 07:20:46 +00:00
Raymond Hettinger 6d7702ecd1 Implement heapq in terms of less-than (to match list.sort()). 2008-05-31 03:24:31 +00:00
Marc-André Lemburg adff65bc3e Update the locale module alias table.
Closes #3011.
2008-05-30 20:52:18 +00:00
Thomas Heller 9287acf83d ctypes NULL function pointers have a boolean False value now. 2008-05-29 19:42:34 +00:00
Georg Brandl d0b592f8e8 #2985: allow i8 in XMLRPC responses. 2008-05-29 07:45:26 +00:00
Brett Cannon abb34fe9f3 UserString.MutableString has been removed in Python 3.0.
Works on issue #2877. Thanks Quentin Gallet-Gilles for the patch.
2008-05-29 05:08:50 +00:00
Georg Brandl 74a1deaab3 #2989: add PyType_Modified(). 2008-05-28 11:21:39 +00:00
Lars Gustäbel b1a54a3530 Do not close external file objects passed to tarfile.open(mode='w:bz2')
when the TarFile is closed.
2008-05-27 12:39:23 +00:00
Benjamin Peterson dacde0d6ae turn PyErr_WarnPy3k into a macro 2008-05-26 17:43:53 +00:00
Christian Heimes 7a9906162b Updated NEWS 2008-05-26 13:15:11 +00:00
Gregory P. Smith 5d7d6c37c2 note about r63617 2008-05-25 08:32:04 +00:00
Georg Brandl e08e3d0686 #2959: allow multiple close() calls for GzipFile. 2008-05-25 08:07:37 +00:00
Georg Brandl 392c6fc02d ConfigParser renaming reversal part 3: move module into place and adapt imports. 2008-05-25 07:25:25 +00:00
Georg Brandl e152a77d96 socketserver renaming reversal part 3: move the module into the right
place and fix all references to it.  Closes #2926.
2008-05-24 18:31:28 +00:00
Martin v. Löwis 27e4a179f2 Issue #1390: Raise ValueError in toxml when an invalid comment would
otherwise be produced.
2008-05-23 15:18:28 +00:00
Martin v. Löwis 8c255e4173 Patch #1722225: Support QNX 6. 2008-05-23 15:06:50 +00:00
Brett Cannon 2ee0e8eaec Revert the renaming of repr to reprlib. 2008-05-23 05:03:59 +00:00
Mark Dickinson 99dfe92759 Issue #2819: Add math.sum, a function that sums a sequence of floats
efficiently but with no intermediate loss of precision.  Based on
Raymond Hettinger's ASPN recipe.  Thanks Jean Brouwers for the patch.
2008-05-23 01:35:30 +00:00
Jesus Cea ca3939cd52 bsddb module updated to version 4.7.0 2008-05-22 15:27:38 +00:00
Vinay Sajip c01288387c Updated with fixes for #2914 and #2929. 2008-05-20 15:37:22 +00:00
Georg Brandl 88659b0ab2 #2592: delegate nb_index and the floor/truediv slots in weakref.proxy. 2008-05-20 08:40:43 +00:00
Georg Brandl 112aa50329 Patch #1775025: allow opening zipfile members via ZipInfo instances.
Patch by Graham Horler.
2008-05-20 08:25:48 +00:00
Martin v. Löwis 4dd019fde3 Patch #2488: Add sys.maxsize. 2008-05-20 08:11:19 +00:00
Georg Brandl 6634bf2919 Tkinter rename reversal: remove tkinter package, adapt imports and docs. 2008-05-20 07:13:37 +00:00
Fred Drake d995e1150c revert creation of the html.entities and html.parser modules
(http://bugs.python.org/issue2882)
2008-05-20 06:08:38 +00:00
Georg Brandl a9916b55de #2353: raise Py3k warning in file.xreadlines(). 2008-05-17 22:11:54 +00:00
Fred Drake 91ae250273 rename HTMLParser to html.parser, htmlentitydefs to html.entities
(http://bugs.python.org/issue2882)
2008-05-17 20:30:04 +00:00
Georg Brandl 3ee81df3bb Rewrap consistently to 70 chars, and standardize the way of referring to issues. 2008-05-17 18:14:43 +00:00
Georg Brandl 28fdfa9839 #961805: fix Edit.text_modified(). 2008-05-17 17:57:01 +00:00
Gregory P. Smith 664782e1c8 issue2858: Fix potential memory corruption when bsddb.db.DBEnv.lock_get
and other bsddb.db object constructors raised an exception.
Debugging & patch by Neal Norowitz.
2008-05-17 06:12:02 +00:00
Thomas Heller 95ba13fa85 Issue 1793: Add ctypes.util.find_msvcrt() function (on Windows). 2008-05-16 20:06:31 +00:00
Georg Brandl 5e7b1c07bc NEWS entry for Tkinter rename. 2008-05-16 17:40:23 +00:00
Georg Brandl 5049a858ba #2890: support os.O_ASYNC and fcntl.FASYNC. 2008-05-16 13:10:15 +00:00
Christian Heimes 0bd23c0a98 Fixed #2870: cmathmodule.c compile error 2008-05-16 10:23:31 +00:00
Alexandre Vassalotti 95d97c7390 Renamed the repr module to reprlib.
Added stub module for repr.
2008-05-16 06:37:57 +00:00
Brett Cannon fa40bbf625 Deprecated statvfs for removal in 3.0. 2008-05-16 00:50:02 +00:00
Brett Cannon 2224817cdf Deprecate sunaudiodev/SUNAUDIODEV for removal in 3.0. 2008-05-16 00:10:24 +00:00
Georg Brandl c91210c06b #2863: add gen.__name__ and add this name to generator repr(). 2008-05-15 15:08:32 +00:00
Brett Cannon 74a596c068 Deprecate WAIT for removal in 3.0. 2008-05-15 04:17:35 +00:00
Brett Cannon f56b6aeb06 Deprecated torgb for removal in 3.0. 2008-05-15 04:15:25 +00:00
Brett Cannon 518c5da219 Deprecate SV for removal in 3.0. 2008-05-15 04:13:19 +00:00
Brett Cannon cd2de08257 Deprecate readcd for removal in 3.0. 2008-05-15 03:51:21 +00:00
Brett Cannon 11ae6e7151 Deprecated panelparser for removal in 3.0. 2008-05-15 03:49:00 +00:00
Brett Cannon 7e37586c50 The panel module for IRIX has been deprecated for removal in 3.0. 2008-05-15 03:46:27 +00:00
Brett Cannon 89f5d9cc81 Deprecate jpeg for IRIX for removal in 3.0. 2008-05-15 03:44:00 +00:00
Brett Cannon d8c41ecc17 Deprecate IOCTL from IRIX for removal in 3.0. 2008-05-15 03:41:55 +00:00
Brett Cannon 6328b297dc Deprecate IN from IRIX for removal in 3.0. 2008-05-15 03:36:13 +00:00
Brett Cannon 4652537ba4 Deprecate imgfile for removal in 3.0. 2008-05-15 03:32:11 +00:00
Brett Cannon 707e384a7a Deprecate GLWS from IRIX for removal in 3.0. 2008-05-15 03:29:18 +00:00
Brett Cannon 82bd94e651 Deprecate GET from IRIX for removal in 3.0. 2008-05-15 03:27:12 +00:00
Brett Cannon 75ba465099 Deprecated 'fm' for removal in 3.0. 2008-05-15 03:23:17 +00:00
Brett Cannon 178582e2a4 FL, flp, and fl from IRIX have been deprecated for removal in 3.0. 2008-05-15 03:20:36 +00:00
Brett Cannon 72ccc40db5 FILE from IRIX has been deprecated for removal in 3.0. 2008-05-15 03:17:24 +00:00
Brett Cannon 2773b6f1c9 Deprecate ERRNO for removal in 3.0. 2008-05-15 03:14:57 +00:00
Brett Cannon 044616aa24 Deprecate DEVICE, GL, gl, and the related modules cgen and cgensupport for removal in 3.0. 2008-05-15 02:33:55 +00:00
Alexandre Vassalotti e3a23c0734 Renamed the ConfigParser module to 'configparser'. 2008-05-14 22:07:07 +00:00
Brett Cannon 650f5161f4 Deprecate CL, CL_old, and cl for 3.0. 2008-05-14 21:12:12 +00:00
Brett Cannon 54c77aa459 Deprecate the cdplayer module for IRIX for 3.0. 2008-05-14 21:08:41 +00:00
Brett Cannon 9eebe49d07 The cddb module for IRIX has been deprecated for 3.0. 2008-05-14 20:34:22 +00:00
Brett Cannon ddf949f194 The CD and cd modules for IRIX are deprecated for 3.0. 2008-05-14 20:31:38 +00:00
Georg Brandl bd85eb1167 Add NEWS entry for #2831. 2008-05-14 06:34:15 +00:00
Brett Cannon 34721d5683 Deprecate al/AL for removal in 3.0. 2008-05-14 01:08:21 +00:00
Jesus Cea ef9764f1a4 bsddb module updated to version 4.6.4 2008-05-13 18:45:46 +00:00
Benjamin Peterson 236819310d Add warnings to and deprecated all those Mac modules 2008-05-12 21:42:13 +00:00
Amaury Forgeot d'Arc f9b54c2411 Sync code with documentation, and remove Win95 support in winsound module. 2008-05-12 21:30:24 +00:00
Georg Brandl 23da6e6545 #1713041: fix pprint's handling of maximum depth. 2008-05-12 16:26:52 +00:00
Brett Cannon bb141bb1f4 Deprecate the timing module for removal in Python 3.0. 2008-05-12 03:47:47 +00:00
Brett Cannon ac861b5a17 Deprecate the sv module as per PEP 4. 2008-05-12 03:45:59 +00:00
Brett Cannon 43e5ef49b1 Deprecate the multifile module as per PEP 4. 2008-05-12 03:19:20 +00:00
Alexandre Vassalotti fb9ce65a91 Renamed SocketServer to 'socketserver'.
Deprecated old name.
2008-05-12 01:37:10 +00:00
Benjamin Peterson b9030f4f0d #2196 hasattr now allows SystemExit and KeyboardInterrupt to propagate 2008-05-12 00:41:23 +00:00
Brett Cannon 42bfa90f02 Depreate imageop for removal in 3.0. 2008-05-12 00:08:34 +00:00
Brett Cannon b61d801adb Put Lib/lib-old back on to sys.path for module renames. 2008-05-11 23:39:04 +00:00
Georg Brandl 627a666db0 - #2250: Exceptions raised during evaluation of names in rlcompleter's
``Completer.complete()`` method are now caught and ignored.
2008-05-11 21:03:42 +00:00
Georg Brandl 9020ff88e6 Add some sentence endings. 2008-05-11 14:17:13 +00:00
Benjamin Peterson 98353941ea Add the "until" command to pdb 2008-05-11 14:13:25 +00:00
Andrew M. Kuchling aac5c8669f #1858: re-apply patch for this, adding the missing files 2008-05-11 14:00:00 +00:00
Georg Brandl 6f95ae55b1 #2659: add ``break_on_hyphens`` to TextWrapper. 2008-05-11 10:42:28 +00:00
Brett Cannon 2a86913864 Deprecated the mhlib module for removal in 3.0. 2008-05-11 03:01:47 +00:00
Brett Cannon df0a717037 The linuxaudidev module has been deprecated for removal in Python 3.0. 2008-05-11 00:50:51 +00:00
Brett Cannon 27508d4eb9 Deprecate ihooks for removal in 3.0. 2008-05-10 22:45:07 +00:00
Brett Cannon fe5985188d Deprecate the fpformat module for removal in 3.0. 2008-05-10 22:11:45 +00:00
Brett Cannon e35a3a1d6b Add an entry for the deprecation of the dl module. 2008-05-10 21:22:43 +00:00
Brett Cannon 10f5db6424 Revert r62998 as it broke the build (seems distutils.config is missing). 2008-05-10 20:52:01 +00:00
Andrew M. Kuchling cd8001c8ed #1858 from Tarek Ziade:
Allow multiple repositories in .pypirc; see http://wiki.python.org/moin/EnhancedPyPI
for discussion.

The patch is slightly revised from Tarek's last patch: I've simplified
the PyPIRCCommand.finalize_options() method to not look at sys.argv.
Tests still pass.
2008-05-10 19:51:55 +00:00
Brett Cannon d5a0985265 The Canvas module has been deprecated for removal in 3.0. 2008-05-10 03:14:32 +00:00
Brett Cannon 6192df10b6 Deprecate the compiler package for removal in 3.0. 2008-05-10 02:58:26 +00:00
Brett Cannon cda73a4b4e Add an entry on the deprecation of Bastion and rexec. 2008-05-10 02:53:46 +00:00
Brett Cannon 768d44f54d Deprecate the bsddb185 module for removal in 3.0. 2008-05-10 02:47:54 +00:00
Brett Cannon 9ac3974de8 Deprecate the pure module for 3.0. 2008-05-09 22:51:58 +00:00
Mark Dickinson f8476c1573 Issue #2487. math.ldexp(x, n) raised OverflowError when n was large and
negative; fix to return an (appropriately signed) zero instead.
2008-05-09 17:54:23 +00:00
Mark Dickinson e81c376080 Issue #2801: fix bug in float.is_integer where ValueError
could be incorrectly raised.  This is a backport of the
Py3k fix in r62939.  (Should really have been fixed
in the trunk first and svnmerged into py3k.)
2008-05-09 16:14:15 +00:00
Brett Cannon fa24d9a71c Deprecate the toaiff module for removal in 3.0. 2008-05-09 05:32:42 +00:00
Brett Cannon 3c75914434 Deprecate test.testall for removal in 3.0. 2008-05-09 05:25:37 +00:00
Brett Cannon d7265d6483 Deprecate the new module for removal in 3.0. 2008-05-09 05:18:40 +00:00
Benjamin Peterson 0893a0a961 Add Py3k warnings to os.path.walk 2008-05-09 00:27:01 +00:00
Brett Cannon e3b1940eb9 Deprecate the user module for removal in 3.0. 2008-05-08 20:36:09 +00:00
Brett Cannon cae4f5f4ac Add test.test_support.catch_warning()'s new argument. 2008-05-08 20:24:43 +00:00
Brett Cannon 3c1d50a5d1 Add a missing entry on the fix for issue #2790. 2008-05-08 20:23:54 +00:00
Brett Cannon 6071cc8fb0 Deprecate stringold for removal in 3.0. 2008-05-08 19:52:45 +00:00
Brett Cannon 9d44182427 The mutex module has been deprecated for removal in 3.0. 2008-05-08 19:26:08 +00:00
Brett Cannon 80bb9d92e3 Deprecate the imputil module for removal in 3.0. 2008-05-08 18:15:14 +00:00
Barry Warsaw 6cc7940e10 Bump to 2.6a3 2008-05-08 13:16:19 +00:00
Brett Cannon f843682fa6 Add an entry about audiodev being slated for removal in 3.0. 2008-05-06 23:41:32 +00:00
Christian Heimes af748c3ab8 Implemented PEP 370 2008-05-06 22:41:46 +00:00
Brett Cannon 4b964f9c90 Add the 'json' package. Code taken from simplejson 1.9 and contributed by Bob
Ippolito.

Closes issue #2750.
2008-05-05 20:21:38 +00:00
Martin v. Löwis 471617d6d3 Issue #1734346: Support Unicode file names for zipfiles. 2008-05-05 17:16:58 +00:00
Brett Cannon 8a232cc385 Add a DeprecationWarning for when warnings.showwarning() is set to a function
that lacks support for the new 'line' argument.
2008-05-05 05:32:07 +00:00
Ronald Oussoren 580c7fec67 Fix for issue #2573: Can't change the framework name on OS X builds
This introduces a new configure option: --with-framework-name=NAME
(defaulting to 'Python'). This allows you to install several copies
of the Python framework with different names (such as a normal build
and a debug build).
2008-05-02 19:45:11 +00:00
Mark Hammond 7c5c8e6823 #2581: Vista UAC/elevation support for bdist_wininst 2008-05-02 12:48:15 +00:00
Brett Cannon b457ddaff2 Fix a backwards-compatibility mistake where a new optional argument for
warnings.showwarning() was being used. This broke pre-existing replacements for
the function since they didn't support the extra argument.

Closes issue 2705.
2008-05-02 02:25:09 +00:00
Georg Brandl 28e0873f1f #2719: backport next() from 3k. 2008-04-30 19:47:09 +00:00
Andrew M. Kuchling 46d6b689b2 Typo fix 2008-04-30 16:19:55 +00:00
Benjamin Peterson a692c4df63 Added PyErr_WarnPy3k function. (issue 2671) I will be converting current Py3k warnings to the use of this function soon. 2008-04-27 02:28:02 +00:00
Mark Dickinson fe536f53ea Issue 2635: fix bug in the fix_sentence_endings option to textwrap.fill. 2008-04-25 16:59:09 +00:00
Mark Dickinson 6513466270 Issue #1496032. Add -mieee to BASECFLAGS on alpha, when gcc is
the compiler.  This should(?) help to fix failures in test_math
and test_cmath on Linux/alpha.

Also add configure message reporting the result of uname -m, as
a debugging aid.
2008-04-25 16:11:04 +00:00
Thomas Heller 6ad5fbb7ea Add from_buffer and from_buffer_copy class methods to ctypes types. 2008-04-25 15:44:16 +00:00
Neal Norwitz 2b0bea5d27 Fix typo (now -> no) 2008-04-25 03:40:17 +00:00
Thomas Heller bf027c48c8 Remove cyclic reference in CFuncPtr instances; see issue #2682.
Backport candidate for the release25-maint branch.
2008-04-24 18:14:19 +00:00
Amaury Forgeot d'Arc 5216721a53 Issue2681: the literal 0o8 was wrongly accepted, and evaluated as float(0.0).
This happened only when 8 is the first digit.
Credits go to Lukas Meuser.
2008-04-24 18:07:05 +00:00
Amaury Forgeot d'Arc 9686585a82 Issue #2670: urllib2.build_opener() failed when two handlers
derive the same default base class.

Will backport.
2008-04-22 21:14:41 +00:00
Gregory P. Smith d59fefb23a update the getpass entry 2008-04-22 08:11:33 +00:00
Gregory P. Smith 41e3018336 If sys.stdin is not a tty, fall back to default_getpass after printing
a warning instead of failing with a termios.error.
2008-04-21 21:31:08 +00:00
Christian Heimes e74c8f2879 Added kill, terminate and send_signal to subprocess.Popen
The bits and pieces for the Windows side were already in place. The POSIX side is trivial (as usual) and uses os.kill().
2008-04-19 02:23:57 +00:00
Christian Heimes 6f34109384 I finally got the time to update and merge Mark's and my trunk-math branch. The patch is collaborated work of Mark Dickinson and me. It was mostly done a few months ago. The patch fixes a lot of loose ends and edge cases related to operations with NaN, INF, very small values and complex math.
The patch also adds acosh, asinh, atanh, log1p and copysign to all platforms. Finally it fixes differences between platforms like different results or exceptions for edge cases. Have fun :)
2008-04-18 23:13:07 +00:00
Skip Montanaro b131f0468f resolve issue 2014 2008-04-18 20:35:46 +00:00
Nick Coghlan 106fc48336 Issue 2439: add pkgutils.get_data() as a convenience wrapper for the PEP 302 get_data() API (contributed by Paul Moore) 2008-04-15 10:25:31 +00:00
Thomas Heller 046e6a43ff Issue #2616: Implement ctypes.pointer() and ctypes.POINTER() in C for
better performance.
2008-04-14 16:10:07 +00:00
Brett Cannon e974689038 Re-implement the 'warnings' module in C. This allows for usage of the
'warnings' code in places where it was previously not possible (e.g., the
parser). It could also potentially lead to a speed-up in interpreter start-up
if the C version of the code (_warnings) is imported over the use of the
Python version in key places.

Closes issue #1631171.
2008-04-12 23:44:07 +00:00
Christian Heimes 7a98d2730c Applied patch #2617 from Frank Wierzbicki wit some extras from me
-J and -X are now reserved for Jython and non-standard arguments (e.g. IronPython). I've added some extra comments to make sure the reservation don't get missed in the future.
2008-04-12 13:03:03 +00:00
Gregory P. Smith 671c5d9fb5 Add a note about the zlib.decompressobj().flush() fix. 2008-04-09 18:18:43 +00:00
Trent Nelson e41b0061dd - Issue #2550: The approach used by client/server code for obtaining ports
to listen on in network-oriented tests has been refined in an effort to
  facilitate running multiple instances of the entire regression test suite
  in parallel without issue.  test_support.bind_port() has been fixed such
  that it will always return a unique port -- which wasn't always the case
  with the previous implementation, especially if socket options had been
  set that affected address reuse (i.e. SO_REUSEADDR, SO_REUSEPORT).  The
  new implementation of bind_port() will actually raise an exception if it
  is passed an AF_INET/SOCK_STREAM socket with either the SO_REUSEADDR or
  SO_REUSEPORT socket option set.  Furthermore, if available, bind_port()
  will set the SO_EXCLUSIVEADDRUSE option on the socket it's been passed.
  This currently only applies to Windows.  This option prevents any other
  sockets from binding to the host/port we've bound to, thus removing the
  possibility of the 'non-deterministic' behaviour, as Microsoft puts it,
  that occurs when a second SOCK_STREAM socket binds and accepts to a
  host/port that's already been bound by another socket.  The optional
  preferred port parameter to bind_port() has been removed.  Under no
  circumstances should tests be hard coding ports!

  test_support.find_unused_port() has also been introduced, which will pass
  a temporary socket object to bind_port() in order to obtain an unused port.
  The temporary socket object is then closed and deleted, and the port is
  returned.  This method should only be used for obtaining an unused port
  in order to pass to an external program (i.e. the -accept [port] argument
  to openssl's s_server mode) or as a parameter to a server-oriented class
  that doesn't give you direct access to the underlying socket used.

  Finally, test_support.HOST has been introduced, which should be used for
  the host argument of any relevant socket calls (i.e. bind and connect).

  The following tests were updated to following the new conventions:
    test_socket, test_smtplib, test_asyncore, test_ssl, test_httplib,
    test_poplib, test_ftplib, test_telnetlib, test_socketserver,
    test_asynchat and test_socket_ssl.

  It is now possible for multiple instances of the regression test suite to
  run in parallel without issue.
2008-04-08 23:47:30 +00:00
Amaury Forgeot d'Arc 02f33b43dc Add a NEWS entry for previous checkin 2008-04-08 23:10:07 +00:00
Mark Hammond 495cf99aaf Issue #2513: enable 64bit cross compilation on windows. 2008-04-07 01:53:39 +00:00
Gregory P. Smith aa63d0d4af Make file objects as thread safe as the underlying libc FILE* implementation.
close() will now raise an IOError if any operations on the file object
are currently in progress in other threads.

Most code was written by Antoine Pitrou (pitrou).  Additional testing,
documentation and test suite cleanup done by me (gregory.p.smith).

Fixes issue 815646 and 595601 (as well as many other bugs and
references to this problem dating back to the dawn of Python).
2008-04-06 23:11:17 +00:00
Thomas Heller f790648c8c News entry for: Sync with files from the just released libffi 3.0.5 version. 2008-04-04 19:43:25 +00:00
Thomas Heller dc96a77c3a Issue #2544: On HP-UX systems, use 'gcc -shared' for linking when gcc
is used as compiler.
2008-04-04 10:07:55 +00:00
Fred Drake 46c58c17f1 - Issue #2385: distutils.core.run_script() makes __file__ available, so the
controlled environment will more closely mirror the typical script
  environment.  This supports setup.py scripts that refer to data files.
2008-04-04 05:41:30 +00:00
Barry Warsaw ba43774d1c post release updates 2008-04-04 01:34:41 +00:00
Amaury Forgeot d'Arc d7a265129c #1733757: the interpreter would hang on shutdown, if the function set by sys.settrace
calls threading.currentThread.

The correction somewhat improves the code, but it was close.
Many thanks to the "with" construct, which turns python code into C calls.

I wonder if it is not better to sys.settrace(None) just after
running the __main__ module and before finalization.
2008-04-03 23:07:55 +00:00
Vinay Sajip b7edfc4e17 Added updates with respect to recent changes to TimedRotatingFileHandler. 2008-04-02 21:10:23 +00:00
Georg Brandl 91e0cdaedc Backport #1442: report exception when startup file cannot be run. 2008-03-29 01:50:06 +00:00
Amaury Forgeot d'Arc 69b747b735 Fix a reference leak found by Georg, when compiling a class nested in another class.
Now "regrtest.py -R:: test_compile" is satisfied.

Will backport.
2008-03-28 20:30:50 +00:00
Georg Brandl fc8eef3c78 Patch #1810 by Thomas Lee, reviewed by myself:
allow compiling Python AST objects into code objects
in compile().
2008-03-28 12:11:56 +00:00
Gregory P. Smith b9803421d2 Accept patch issue2426 by Paul Kippes (kippesp).
Adds sqlite3.Connection.iterdump to allow dumping of databases.
2008-03-28 08:32:09 +00:00
Amaury Forgeot d'Arc da0c025a43 Issue2495: tokenize.untokenize did not insert space between two consecutive string literals:
"" "" => """", which is invalid code.

Will backport
2008-03-27 23:23:54 +00:00
Georg Brandl deaf2cafbd #2248: return result of QUIT from quit(). 2008-03-27 13:27:31 +00:00
Christian Heimes 3c60833e1e Patch #2477: Added from __future__ import unicode_literals
The new PyParser_*Ex() functions are based on Neal's suggestion and initial patch. The new __future__ feature makes all '' and r'' unicode strings. b'' and br'' stay (byte) strings.
2008-03-26 22:01:37 +00:00
Christian Heimes 8c78cc3b6c Updated Misc/NEWS 2008-03-26 12:53:58 +00:00
Mark Dickinson 8e85ffa4b2 Issue #2482: Make sure that the coefficient of a Decimal
instance is always stored as a str instance, even
when that Decimal has been created from a unicode string.
2008-03-25 18:47:59 +00:00
Mark Dickinson 3b24ccbe7e Issue #2478: Decimal(sqrt(0)) failed when the decimal context
was not explicitly supplied.
2008-03-25 14:33:23 +00:00
Georg Brandl 1e7c37514d #2359: add Py3k warning for array.read/array.write. 2008-03-25 08:37:23 +00:00
Georg Brandl 80055f6295 #2355: py3k warning for buffer(). 2008-03-25 07:56:27 +00:00
Martin v. Löwis aef18b1c67 Patch #2240: Implement signal.setitimer and signal.getitimer. 2008-03-24 13:31:16 +00:00
Martin v. Löwis cdbc977c03 Install 2to3 script. 2008-03-24 12:57:53 +00:00
Raymond Hettinger b72233ce63 Issue 2460: Make Ellipsis objects copyable. 2008-03-24 08:17:39 +00:00
Raymond Hettinger bbc50eafe5 Issue 1681432: Add triangular distribution the random module. 2008-03-23 13:32:32 +00:00
Amaury Forgeot d'Arc 9a0d3462fc #1477: ur'\U0010FFFF' raised in narrow unicode builds.
Corrected the raw-unicode-escape codec to use UTF-16 surrogates in
this case, just like the unicode-escape codec.
2008-03-23 09:55:29 +00:00
Christian Heimes 0e9ab5f2f0 Applied patch #1657 epoll and kqueue wrappers for the select module
The patch adds wrappers for the Linux epoll syscalls and the BSD kqueue syscalls. Thanks to Thomas Herve and the Twisted people for their support and help.
TODO: Finish documentation documentation
2008-03-21 23:49:44 +00:00
Georg Brandl 65bb42dc1b #2348: add py3k warning for file.softspace. 2008-03-21 20:38:24 +00:00
Georg Brandl 07e5681fd3 #2346/#2347: add py3k warning for __methods__ and __members__. Patch by Jack Diederich. 2008-03-21 20:21:46 +00:00
Georg Brandl 5a44424c5e #2358: add py3k warning to sys.exc_clear(). 2008-03-21 20:11:46 +00:00
Georg Brandl 77354cf5ef Issue #2432: give DictReader the dialect and line_num attributes
advertised in the docs.
2008-03-21 20:01:51 +00:00
Georg Brandl 331243270d #2136: allow single quotes in realm spec. 2008-03-21 19:54:00 +00:00
Marc-André Lemburg a1867750f6 Add news items for platform module changes. 2008-03-20 18:08:00 +00:00
Sean Reifscheider 68fa8e6c45 Forgot to add NEWS item about smtplib SSL readline hang fix. 2008-03-20 00:50:07 +00:00
Brett Cannon 7919d98d56 test_nis would fail if test.test_support.verbose was true but NIS was not set
up on the machine.

Closes issue2411. Thanks Michael Bishop.
2008-03-19 16:50:13 +00:00
Martin v. Löwis 5e37baea80 Import lib2to3. 2008-03-19 04:43:46 +00:00
Martin v. Löwis a4d77898db Issue #2400: Allow relative imports to "import *". 2008-03-19 04:39:13 +00:00
Eric Smith 7c47894a2a Backport of the print function, using a __future__ import.
This work is substantially Anthony Baxter's, from issue
1633807.  I just freshened it, made a few minor tweaks,
and added the test cases.  I also created issue 2412,
which is to check for 2to3's behavior with the print
function.  I also added myself to ACKS.
2008-03-18 23:45:49 +00:00
Gregory P. Smith 37f3f430b8 news entry for the chown fix 2008-03-18 20:40:01 +00:00
Sean Reifscheider 493894c3e0 Issue 1577: shutil.move() where destination is a directory was doing a
copy, now it is doing a os.rename() if it's on the same file-system.
2008-03-18 17:24:12 +00:00
Neal Norwitz b1d3d96374 Issue 2332: add new attribute names for instance method objects 2008-03-18 04:46:00 +00:00
Guido van Rossum 6d91be3758 - Issue 2379: Raise a Py3K warning for __getitem__ or __getslice__ on
exception instances.
2008-03-18 04:42:22 +00:00
Guido van Rossum 504153d55b Issue #2341: Add a Py3k warning when raising an exception that doesn't
derive from BaseException.
2008-03-18 04:26:48 +00:00
Brett Cannon a5573b3153 The output directory for tests that compare against stdout is now gone! 2008-03-18 04:16:06 +00:00
Brett Cannon aa5778d1b8 Remove our implementation of memmove() and strerror(); both are in the C89
standard library.
2008-03-18 04:09:00 +00:00
Brett Cannon b7ec8e5a9e test_errno was a no-op test; now it actually tests things and uses unittest. 2008-03-18 03:46:22 +00:00
Guido van Rossum 04edb528ca - Issue #2371: Add a Py3k warning when catching an exception that
doesn't derive from BaseException.
2008-03-18 02:49:46 +00:00
Brett Cannon 0bb7950829 Move test_extcall to doctest. 2008-03-18 01:58:56 +00:00
Brett Cannon ba17cfc66c Convert test_dummy_threading and test_dbm to unittest. 2008-03-18 01:50:25 +00:00
Brett Cannon 6eeaddc341 Convert test_strftime, test_getargs, and test_pep247 to use unittest. 2008-03-18 01:00:07 +00:00
Neal Norwitz 419fd49abe Issue 2321: reduce memory usage (increase the memory that is returned
to the system) by using pymalloc for the data of unicode objects.

Will backport.
2008-03-17 20:22:43 +00:00
Eric Smith 0aed07ad80 Added PEP 3127 support to tokenize (with tests); added PEP 3127 to NEWS. 2008-03-17 19:43:40 +00:00
Gregory P. Smith f48f9d38c0 Force zlib.crc32 and zlib.adler32 to return a signed integer on all platforms
regardless of the native sizeof(long) used in the integer object.

This somewhat odd behavior of returning a signed is maintained in 2.x for
compatibility reasons of always returning an integer rather than a long object.

Fixes Issue1202 for Python 2.6
2008-03-17 18:48:05 +00:00
Jeffrey Yasskin 1b4e45bab9 Allow Gnu gcc's to build python on OSX by removing -Wno-long-double,
-no-cpp-precomp, and -mno-fused-madd from configure.
 * r22183 added -no-cpp-precomp, which
   http://gcc.gnu.org/ml/gcc/2005-12/msg00368.html claims hasn't been
   needed since gcc-3.1.
 * r25607 added -Wno-long-double to avoid a warning in
   Include/objimpl.h (issue 525481). The long double is still there,
   but OSX 10.4's gcc no longer warns about it.
 * r33666 fixed issue 775892 on OSX 10.3 by adding -mno-fused-madd,
   which changed the sign of some float 0s. Tim Peters said it wasn't
   a real issue anyway, and it no longer causes test failures.
Fixes issue #1779871.
2008-03-17 14:40:53 +00:00
Neal Norwitz 400aedacc0 Add a warning for code like:
assert (0, 'message')

An empty tuple does not create a warning.  While questionable usage:
  assert (), 'message'

should not display a warning.  Tested manually.
The warning message could be improved.  Feel free to update it.
2008-03-15 22:03:18 +00:00
Skip Montanaro 32ed8c267c . 2008-03-15 16:07:11 +00:00
Mark Dickinson c23b8a7af9 Issue 705836: Fix struct.pack(">f", 1e40) to behave consistently
across platforms:  it should now raise OverflowError on all
platforms.  (Previously it raised OverflowError only on
non IEEE 754 platforms.)

Also fix the (already existing) test for this behaviour
so that it actually raises TestFailed instead of just
referencing it.
2008-03-14 14:23:37 +00:00