Commit Graph

1624 Commits

Author SHA1 Message Date
Benjamin Peterson fbac6c1590 bump version to 2.7b1 2010-04-10 16:22:05 +00:00
Larry Hastings 5ac006dfd3 Capsule-related changes:
* PyCObject_AsVoidPtr() can now open capsules.  This addresses
  most of the remaining backwards-compatibility concerns about
  the conversion of Python 2.7 from CObjects to capsules.
* CObjects were marked Pending Deprecation.
* Documentation about this pending deprecation was added to
  cobject.h.
* The capsule source files were added to the legacy PC build
  processes.
2010-04-02 11:01:35 +00:00
Antoine Pitrou 76c8649038 Issue #8276: PyEval_CallObject() is now only available in macro form. The
function declaration, which was kept for backwards compatibility reasons,
is now removed (the macro was introduced in 1997!).
2010-04-01 16:42:11 +00:00
Antoine Pitrou a57df2cf1d Issue #8268: Old-style classes (not just instances) now support weak
references.
2010-03-31 21:32:15 +00:00
Larry Hastings 4e9830f7ac Remove extraneous experimental code checked in by accident. 2010-03-25 01:23:27 +00:00
Larry Hastings 402b73fb8d Backported PyCapsule from 3.1, and converted most uses of
CObject to PyCapsule.
2010-03-25 00:54:54 +00:00
Victor Stinner d156fa3033 Merged revisions 78638 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r78638 | victor.stinner | 2010-03-04 00:20:25 +0100 (jeu., 04 mars 2010) | 3 lines

  Issue #7544: Preallocate thread memory before creating the thread to avoid a
  fatal error in low memory condition.
........
2010-03-21 13:32:31 +00:00
Barry Warsaw c694183625 Post 2.6.5 final cleanup. 2010-03-19 23:02:15 +00:00
Barry Warsaw d1dd2e307c Bumping to 2.6.5 final. 2010-03-18 22:14:36 +00:00
Collin Winter 001a3952c9 Add support for weak references to code objects. This will be used by an optimization in the incoming Python 3 JIT.
Patch by Reid Kleckner!
2010-03-18 21:54:01 +00:00
Barry Warsaw fb0928d117 Bumping to 2.6.5rc2 2010-03-09 22:31:52 +00:00
Benjamin Peterson 5da7e7ce3f post release update 2010-03-06 22:44:07 +00:00
Benjamin Peterson 8e7c1178a0 bump version to 2.7a4 2010-03-06 20:34:14 +00:00
Victor Stinner 71fb87e64c Issue #7544: Preallocate thread memory before creating the thread to avoid a
fatal error in low memory condition.
2010-03-03 23:20:25 +00:00
Barry Warsaw 5de5914e07 Post 2.6.5rc1 cleanup. 2010-03-03 03:09:49 +00:00
Barry Warsaw fc79e8fd8e Bump to 2.6.5 rc 1. 2010-03-01 22:10:45 +00:00
Amaury Forgeot d'Arc adfc80bd81 #4852: Remove dead code in every thread implementation, unused for many years. 2010-02-23 23:19:39 +00:00
Mark Dickinson 79e1f8a328 Merged revisions 78189 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r78189 | mark.dickinson | 2010-02-14 13:40:30 +0000 (Sun, 14 Feb 2010) | 1 line

  Silence more 'comparison between signed and unsigned' warnings.
........
2010-02-14 14:00:19 +00:00
Mark Dickinson d5fdc069fa Silence more 'comparison between signed and unsigned' warnings. 2010-02-14 13:40:30 +00:00
Benjamin Peterson 2d798ac619 post release updates 2010-02-06 18:26:27 +00:00
Benjamin Peterson a7be9d240a bump version to 2.7a3 2010-02-06 16:37:32 +00:00
Antoine Pitrou 2483728850 Merged revisions 77989 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r77989 | antoine.pitrou | 2010-02-05 18:05:54 +0100 (ven., 05 févr. 2010) | 6 lines

  Issue #5677: Explicitly forbid write operations on read-only file objects,
  and read operations on write-only file objects.  On Windows, the system C
  library would return a bogus result; on Solaris, it was possible to crash
  the interpreter.  Patch by Stefan Krah.
........
2010-02-05 17:11:32 +00:00
Antoine Pitrou bb445a1f22 Issue #5677: Explicitly forbid write operations on read-only file objects,
and read operations on write-only file objects.  On Windows, the system C
library would return a bogus result; on Solaris, it was possible to crash
the interpreter.  Patch by Stefan Krah.
2010-02-05 17:05:54 +00:00
Mark Dickinson a36507c64c Issue #7767: Add new C-API function PyLong_AsLongLongAndOverflow, a
long long variant of PyLong_AsLongAndOverflow.  Patch by Case Van
Horsen.
2010-01-30 10:08:33 +00:00
Ronald Oussoren a55af9a9db - Issue #7658: Ensure that the new pythonw executable works on OSX 10.4
- Issue #7714: Use ``gcc -dumpversion`` to detect the version of GCC on
  MacOSX.

- Make configure look for util.h as well as libutil.h. The former
  is the header file that on OSX contains the defition of openpty.

  (Needed to compile for OSX 10.4 on OSX 10.6)

- Use the correct definition of CC to compile the pythonw executable
2010-01-17 16:25:57 +00:00
Antoine Pitrou 59c6efabb4 Merged revisions 77581 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r77581 | antoine.pitrou | 2010-01-17 16:55:45 +0100 (dim., 17 janv. 2010) | 3 lines

  Use PyAPI_DATA.
........
2010-01-17 16:06:27 +00:00
Antoine Pitrou 60ba2c8bf8 Use PyAPI_DATA. 2010-01-17 15:55:45 +00:00
Antoine Pitrou bb667d433c Merged revisions 77573 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r77573 | antoine.pitrou | 2010-01-17 13:26:20 +0100 (dim., 17 janv. 2010) | 6 lines

  Issue #7561: Operations on empty bytearrays (such as `int(bytearray())`)
  could crash in many places because of the PyByteArray_AS_STRING() macro
  returning NULL.  The macro now returns a statically allocated empty
  string instead.
........
2010-01-17 12:31:10 +00:00
Antoine Pitrou e80a6a4ead Issue #7561: Operations on empty bytearrays (such as `int(bytearray())`)
could crash in many places because of the PyByteArray_AS_STRING() macro
returning NULL.  The macro now returns a statically allocated empty
string instead.
2010-01-17 12:26:20 +00:00
Alexandre Vassalotti 69eb51697c Issue #1967: Backport dictionary views. 2010-01-11 23:17:10 +00:00
Alexandre Vassalotti b646547bb4 Issue #2333: Backport set and dict comprehensions syntax. 2010-01-11 22:36:12 +00:00
Alexandre Vassalotti ee936a2130 Issue #2335: Backport set literals syntax from Python 3.x. 2010-01-09 23:35:54 +00:00
Benjamin Peterson dd6d92a560 post release version adjustment 2010-01-09 17:30:31 +00:00
Benjamin Peterson aa7e51f006 bump version to 2.7a2 2010-01-09 16:34:06 +00:00
Mark Dickinson d3e323215c Refactor some longobject internals: PyLong_AsDouble and _PyLong_AsScaledDouble
(the latter renamed to _PyLong_Frexp) now use the same core code.  The
exponent produced by _PyLong_Frexp now has type Py_ssize_t instead of the
previously used int, and no longer needs scaling by PyLong_SHIFT.  This
frees the math module from having to know anything about the PyLong
implementation.  This closes issue #5576.
2010-01-02 14:45:40 +00:00
Georg Brandl 740cdc3a9f #7033: add new API function PyErr_NewExceptionWithDoc, for easily giving new exceptions a docstring. 2009-12-28 08:34:58 +00:00
Mark Dickinson 12748b003c Issue #7518: Move substitute definitions of C99 math functions from
pymath.c to Modules/_math.c.
2009-12-21 15:22:00 +00:00
Mark Dickinson e31d300664 Issue #7528: Backport PyLong_AsLongAndOverflow from py3k to trunk.
Thanks Case Van Horsen for the patch.
2009-12-21 11:21:25 +00:00
Benjamin Peterson 3095d20a53 initialize to NULL 2009-12-13 21:21:43 +00:00
Mark Dickinson fd25634715 Replace the size check for PyMem_MALLOC and PyMem_REALLOC with an almost
equivalent[*] check that doesn't produce compiler warnings about a 'x < 0'
check on an unsigned type.

[*] it's equivalent for inputs of type size_t or Py_ssize_t, or any smaller
unsigned or signed integer type.
2009-12-10 10:36:32 +00:00
Ronald Oussoren a254302f52 Fix for issue 7452: HAVE_GCC_ASM_FOR_X87 gets set when doing a universal build on
an i386 based machine, but should only be active when compiling the x86 part of
the universal binary.
2009-12-08 16:32:52 +00:00
Benjamin Peterson 4f51baf466 post release version bump 2009-12-05 18:40:02 +00:00
Benjamin Peterson d78cec5f39 bump version to 2.7a1 2009-12-05 17:47:56 +00:00
Ronald Oussoren 7072f74dc8 Fix for issue #7416: SIZEOF_UINTPTR_T can be invalid when configuring a
multi-architecture build (in particular when the architectures don't share
a common pointer size).

Fixed the same issue for SIZEOF_PTHREAD_T.

(No update to the NEWS file because this is a bugfix for an as yet unreleased
feature)
2009-12-01 15:54:01 +00:00
Mark Dickinson 31f0cfef0e Include ieeefp.h (when available) in pyport.h instead of individually in
Objects/floatobject.c and Objects/complexobject.c.  This should silence
compiler warnings about implicit declaration of the 'finite' function
on Solaris.
2009-11-28 12:30:36 +00:00
Mark Dickinson 845688d0c6 Enable short float repr! 2009-11-18 20:14:57 +00:00
Mark Dickinson bd15a06fd3 Issue #7117, continued: Change round implementation to use the correctly-rounded
string <-> float conversions;  this makes sure that the result of the round
operation is correctly rounded, and hence displays nicely using the new float
repr.
2009-11-18 19:33:35 +00:00
Mark Dickinson 82864d1ab1 Issue #7228: Add '%lld' and '%llu' support to PyFormat_FromString,
PyFormat_FromStringV and PyErr_Format.
2009-11-15 16:18:58 +00:00
Barry Warsaw 39f6a74dc5 bump version number 2009-10-27 14:08:18 +00:00
Mark Dickinson 3e1eb0f715 Issue #7117: Backport missing pystrtod.h declarations from py3k. 2009-10-26 21:09:09 +00:00
Eric Smith c1bdf89145 Finished removing _PyOS_double_to_string, as mentioned in issue 7117. 2009-10-26 17:46:17 +00:00
Barry Warsaw 28dbc1f83e bumping to 2.6.4 2009-10-26 01:48:07 +00:00
Mark Dickinson f325407038 Issue #7117: temporarily disable the short float repr while the
pieces are being assembled.  To re-enable, define the preprocessor
symbol PY_SHORT_FLOAT_REPR
2009-10-24 15:54:35 +00:00
Mark Dickinson 1d6e2e1833 Issue #7117 (backport py3k float repr) continued:
- add double endianness detection to configure script
 - add configure-time check to see whether we can use inline
   assembly to get and set x87 control word in configure script
 - add functions to get and set x87 control word in Python/pymath.c
 - add pyport.h logic to determine whether it's safe to use the
   short float repr or not
2009-10-24 13:28:38 +00:00
Mark Dickinson bb28285ea2 Issue #7117: Prepare for backport of py3k float repr.
Add the Python/dtoa.c file containing the main algorithms;
add corresponding include file and include in Python.h;
include license information for Python/dtoa.c;
add dtoa.c and dtoa.h to Makefile.
2009-10-24 12:13:30 +00:00
Barry Warsaw f80ee8ebee done with 2.6.4rc2 2009-10-19 16:00:35 +00:00
Barry Warsaw bde44876de Bump to 2.6.4rc2 2009-10-18 16:50:06 +00:00
Barry Warsaw f71d45a84a Bumping to 2.6.4rc1 2009-10-06 13:21:07 +00:00
Barry Warsaw d3c87657ba Post 2.6.3 cleanup. 2009-10-02 20:23:50 +00:00
Barry Warsaw e948ea01eb Bump to 2.6.3 2009-10-01 23:39:49 +00:00
Barry Warsaw 103e32355d Bumping for 2.6.3rc1 2009-09-29 22:41:09 +00:00
Kristján Valur Jónsson 02ca57ce4c http://bugs.python.org/issue6836
The debug memory api now keeps track of which external API (PyMem_* or PyObject_*) was used to allocate each block and treats any API violation as an error.  Added separate _PyMem_DebugMalloc functions for the Py_Mem API instead of having it use the _PyObject_DebugMalloc functions.
2009-09-28 13:12:38 +00:00
Mark Dickinson aa2adc828a Issue #6713: Improve performance of str(n) and repr(n) for integers n
(up to 3.1 times faster in tests), by special-casing base 10 in
_PyLong_Format.  (Backport of r74851 from py3k.)
2009-09-16 22:10:56 +00:00
Thomas Wouters 448db2155f Merged revisions 74841 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r74841 | thomas.wouters | 2009-09-16 12:55:54 -0700 (Wed, 16 Sep 2009) | 23 lines


  Fix issue #1590864, multiple threads and fork() can cause deadlocks, by
  acquiring the import lock around fork() calls. This prevents other threads
  from having that lock while the fork happens, and is the recommended way of
  dealing with such issues. There are two other locks we care about, the GIL
  and the Thread Local Storage lock. The GIL is obviously held when calling
  Python functions like os.fork(), and the TLS lock is explicitly reallocated
  instead, while also deleting now-orphaned TLS data.

  This only fixes calls to os.fork(), not extension modules or embedding
  programs calling C's fork() directly. Solving that requires a new set of API
  functions, and possibly a rewrite of the Python/thread_*.c mess. Add a
  warning explaining the problem to the documentation in the mean time.

  This also changes behaviour a little on AIX. Before, AIX (but only AIX) was
  getting the import lock reallocated, seemingly to avoid this very same
  problem. This is not the right approach, because the import lock is a
  re-entrant one, and reallocating would do the wrong thing when forking while
  holding the import lock.

  Will backport to 2.6, minus the tiny AIX behaviour change.
........
2009-09-16 20:06:36 +00:00
Thomas Wouters c4dcb3801e Fix issue #1590864, multiple threads and fork() can cause deadlocks, by
acquiring the import lock around fork() calls. This prevents other threads
from having that lock while the fork happens, and is the recommended way of
dealing with such issues. There are two other locks we care about, the GIL
and the Thread Local Storage lock. The GIL is obviously held when calling
Python functions like os.fork(), and the TLS lock is explicitly reallocated
instead, while also deleting now-orphaned TLS data.

This only fixes calls to os.fork(), not extension modules or embedding
programs calling C's fork() directly. Solving that requires a new set of API
functions, and possibly a rewrite of the Python/thread_*.c mess. Add a
warning explaining the problem to the documentation in the mean time.

This also changes behaviour a little on AIX. Before, AIX (but only AIX) was
getting the import lock reallocated, seemingly to avoid this very same
problem. This is not the right approach, because the import lock is a
re-entrant one, and reallocating would do the wrong thing when forking while
holding the import lock.

Will backport to 2.6, minus the tiny AIX behaviour change.
2009-09-16 19:55:54 +00:00
Mark Dickinson 02a9ce3edb Merged revisions 74693 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r74693 | mark.dickinson | 2009-09-06 22:21:05 +0100 (Sun, 06 Sep 2009) | 2 lines

  Issue #6848:  Fix curses module build failure on OS X 10.6.
........
2009-09-06 21:23:05 +00:00
Mark Dickinson 6b3f1ef190 Issue #6848: Fix curses module build failure on OS X 10.6. 2009-09-06 21:21:05 +00:00
Mark Dickinson 2f865b962c Issue #6347: Add inttypes.h to the pyport.h #includes; fixes a build
failure on HP-UX 11.00.
2009-06-30 15:32:30 +00:00
Mark Dickinson 1dcc38456f Remove unused stdint.h includes 2009-06-28 22:37:13 +00:00
Benjamin Peterson 94819cf47c remove some unused symtable constants 2009-06-23 03:01:56 +00:00
Benjamin Peterson d9920c255d remove tmpname support since it's no longer used 2009-06-21 23:03:36 +00:00
Alexandre Vassalotti a6e3474d02 Add const qualifier to PyErr_SetFromErrnoWithFilename and to
PyErr_SetFromErrnoWithUnicodeFilename.
2009-06-12 20:57:12 +00:00
Georg Brandl 944f684ce6 Allow multiple context managers in one with statement, as proposed
in http://codereview.appspot.com/53094 and accepted by Guido.

The construct is transformed into multiple With AST nodes so that
there should be no problems with the semantics.
2009-05-25 21:02:56 +00:00
Benjamin Peterson 1880d8b823 add a SETUP_WITH opcode
It speeds up the with statement and correctly looks up the special
methods involved.
2009-05-25 13:13:44 +00:00
Jeffrey Yasskin 655d835415 Issue #6042:
lnotab-based tracing is very complicated and isn't documented very well.  There
were at least 3 comment blocks purporting to document co_lnotab, and none did a
very good job. This patch unifies them into Objects/lnotab_notes.txt which
tries to completely capture the current state of affairs.

I also discovered that we've attached 2 layers of patches to the basic tracing
scheme. The first layer avoids jumping to instructions that don't start a line,
to avoid problems in if statements and while loops.  The second layer
discovered that jumps backward do need to trace at instructions that don't
start a line, so it added extra lnotab entries for 'while' and 'for' loops, and
added a special case for backward jumps within the same line. I replaced these
patches by just treating forward and backward jumps differently.
2009-05-23 23:23:01 +00:00
Hirokazu Yamamoto b24bb27d22 Issue #3527: Removed Py_WIN_WIDE_FILENAMES which is not used any more. 2009-05-17 02:52:09 +00:00
Jeffrey Yasskin f7f858d141 Issue 5954, PyFrame_GetLineNumber:
Most uses of PyCode_Addr2Line
(http://www.google.com/codesearch?q=PyCode_Addr2Line) are just trying to get
the line number of a specified frame, but there's no way to do that directly.
Forcing people to go through the code object makes them know more about the
guts of the interpreter than they should need.

The remaining uses of PyCode_Addr2Line seem to be getting the line from a
traceback (for example,
http://www.google.com/codesearch/p?hl=en#u_9_nDrchrw/pygame-1.7.1release/src/base.c&q=PyCode_Addr2Line),
which is replaced by the tb_lineno field.  So we may be able to deprecate
PyCode_Addr2Line entirely for external use.
2009-05-08 22:23:21 +00:00
Jeffrey Yasskin 1aa4700234 PyCode_NewEmpty:
Most uses of PyCode_New found by http://www.google.com/codesearch?q=PyCode_New
are trying to build an empty code object, usually to put it in a dummy frame
object. This patch adds a PyCode_NewEmpty wrapper which lets the user specify
just the filename, function name, and first line number, instead of also
requiring lots of code internals.
2009-05-08 21:51:06 +00:00
Benjamin Peterson 399e4c4f8f add _PyObject_LookupSpecial to handle fetching special method lookup 2009-05-08 03:06:00 +00:00
Eric Smith a985a3aee4 Issue #5920: Changed format.__float__ and complex.__float__ to use a precision of 12 when using the empty presentation type. This more closely matches str()'s behavior and reduces surprises when adding alignment flags to an empty format string. Patch by Mark Dickinson. 2009-05-05 18:26:08 +00:00
Antoine Pitrou 653dece278 Issue #4426: The UTF-7 decoder was too strict and didn't accept some legal sequences.
Patch by Nick Barnes and Victor Stinner.
2009-05-04 18:32:32 +00:00
Mark Dickinson e05e8409e1 Issue #5724: Fix cmath failures on Solaris 10. 2009-05-04 13:30:43 +00:00
Eric Smith 9139cc6a3b Issue #1588: Add complex.__format__. 2009-04-30 00:58:58 +00:00
Eric Smith cac7af6863 Issue #5793: rationalize isdigit / isalpha / tolower, etc. Will port to py3k. Should fix Windows buildbot errors. 2009-04-27 19:04:37 +00:00
Eric Smith 068f06568b Issue #5835, deprecate PyOS_ascii_formatd.
If anyone wants to clean up the documentation, feel free. It's my first documentation foray, and it's not that great.

Will port to py3k with a different strategy.
2009-04-25 21:40:15 +00:00
Eric Smith aca19e6a74 Backport of some of the work in r71665 to trunk. This reworks much of
int, long, and float __format__(), and it keeps their implementation
in sync with py3k.

Also added PyOS_double_to_string. This is the "fallback" version
that's also available in trunk, and should be kept in sync with that
code. I'll add an issue to document PyOS_double_to_string in the C
API.

There are many internal cleanups. Externally visible changes include:

- Implement PEP 378, Format Specifier for Thousands Separator, for
  floats, ints, and longs.

- Issue #5515: 'n' formatting for ints, longs, and floats handles
  leading zero formatting poorly.

- Issue #5772: For float.__format__, don't add a trailing ".0" if
  we're using no type code and we have an exponent.
2009-04-22 13:29:05 +00:00
Benjamin Peterson c485361f61 Merged revisions 71734,71738-71739 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r71734 | benjamin.peterson | 2009-04-18 17:15:26 -0500 (Sat, 18 Apr 2009) | 1 line

  many more types to initialize (I had to expose some of them)
........
  r71738 | benjamin.peterson | 2009-04-18 21:32:42 -0500 (Sat, 18 Apr 2009) | 1 line

  initialize weakref some weakref types
........
  r71739 | benjamin.peterson | 2009-04-18 21:40:43 -0500 (Sat, 18 Apr 2009) | 1 line

  make errors consistent
........
2009-04-20 02:09:13 +00:00
Ronald Oussoren 8572e7ba16 Merged revisions 71743 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r71743 | ronald.oussoren | 2009-04-19 12:38:20 +0200 (Sun, 19 Apr 2009) | 2 lines

  Fix for issue5657.
........
2009-04-19 10:39:21 +00:00
Ronald Oussoren 6c0b872f85 Fix for issue5657. 2009-04-19 10:38:20 +00:00
Benjamin Peterson 01c6e6fb35 many more types to initialize (I had to expose some of them) 2009-04-18 22:15:26 +00:00
Mark Dickinson 8e5446f902 Backport r71704 (add configure check for C99 round function) to trunk. 2009-04-18 14:41:37 +00:00
Barry Warsaw 43c2ccc941 Post release version tweak. 2009-04-16 00:49:46 +00:00
Barry Warsaw 63a976e114 Bumping to 2.6.2 (final). 2009-04-14 13:16:19 +00:00
Barry Warsaw 90971e0cd2 Bump to 2.6.2c1. 2009-04-07 01:54:02 +00:00
Matthias Klose 91a3b9e4f0 Issue #1113244: Py_XINCREF, Py_DECREF, Py_XDECREF: Add `do { ... } while (0)'
to avoid compiler warnings.
2009-04-05 21:19:13 +00:00
Matthias Klose 0610e0808b - Py_DECREF: Add `do { ... } while (0)' to avoid compiler warnings.
(avoiding brown paper typo this time)
2009-04-05 12:43:08 +00:00
Benjamin Peterson 08c5c0bb55 Merged revisions 71163 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r71163 | benjamin.peterson | 2009-04-04 11:05:51 -0500 (Sat, 04 Apr 2009) | 1 line

  revert r71159 since it broke the build
........
2009-04-04 16:10:42 +00:00
Benjamin Peterson ea0d7444c8 revert r71159 since it broke the build 2009-04-04 16:05:51 +00:00
Matthias Klose db5d6dc6de Merged revisions 71159 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r71159 | matthias.klose | 2009-04-04 17:51:23 +0200 (Sa, 04 Apr 2009) | 2 lines

  - Py_DECREF: Add `do { ... } while (0)' to avoid compiler warnings.
........
2009-04-04 15:52:50 +00:00
Matthias Klose 8212a82371 - Py_DECREF: Add `do { ... } while (0)' to avoid compiler warnings. 2009-04-04 15:51:23 +00:00
Antoine Pitrou 789be0c0a0 Issue #2396: backport the memoryview object. 2009-04-02 21:18:34 +00:00
Brett Cannon 238cedcd63 Fix two issues introduced by issue #71031 by changing the signature of
PyImport_AppendInittab() to take a const char *.
2009-04-02 03:34:53 +00:00
Antoine Pitrou f8387af262 Issue #4688: Add a heuristic so that tuples and dicts containing only
untrackable objects are not tracked by the garbage collector. This can
reduce the size of collections and therefore the garbage collection overhead
on long-running programs, depending on their particular use of datatypes.

(trivia: this makes the "binary_trees" benchmark from the Computer Language
Shootout 40% faster)
2009-03-23 18:41:45 +00:00
Mark Dickinson f35f8044e4 Rewrite Py_ARITHMETIC_RIGHT_SHIFT so that it's valid for all signed
integer types T, not just those for which "unsigned T" is legal.
2009-03-20 23:16:14 +00:00
Mark Dickinson efc82f7e8e Issue #4258: Use 30-bit digits for Python longs, on 64-bit platforms.
Backport of r70459.
2009-03-20 15:51:55 +00:00
Jeffrey Yasskin 68d6852006 Backport r69961 to trunk, replacing JUMP_IF_{TRUE,FALSE} with
POP_JUMP_IF_{TRUE,FALSE} and JUMP_IF_{TRUE,FALSE}_OR_POP. This avoids executing
a POP_TOP on each conditional and sometimes allows the peephole optimizer to
skip a JUMP_ABSOLUTE entirely. It speeds up list comprehensions significantly.
2009-02-28 19:03:21 +00:00
Benjamin Peterson 5781f32b4f remove some PyBytes_* aliases that are not in 3.x 2009-02-16 21:09:09 +00:00
Mark Dickinson bcf6b18eb7 A few more minor fixes in longobject.c 2009-02-15 15:48:39 +00:00
Mark Dickinson 2ffb26fb83 Issue #5260: Various portability and standards compliance fixes, optimizations
and cleanups in Objects/longobject.c.  The most significant change is that
longs now use less memory:  average savings are 2 bytes per long on 32-bit
systems and 6 bytes per long on 64-bit systems.  (This memory saving already
exists in py3k.)
2009-02-15 10:13:41 +00:00
Hirokazu Yamamoto bcd3ea86a3 Issue #5204: Define _PyVerify_fd on VC6 to make
test_fdopen (test_os.py) pass.
2009-02-11 04:13:06 +00:00
Kristján Valur Jónsson 6a743d3694 Issue 4804. Add a function to test the validity of file descriptors on Windows, and stop using global runtime settings to silence the warnings / assertions. 2009-02-10 13:32:24 +00:00
Mark Dickinson c97c9096ed Issue #4575: fix Py_IS_INFINITY macro to work correctly on x87 FPUs.
It now forces its argument to double before testing for infinity.
2009-02-09 14:18:43 +00:00
Raymond Hettinger 24e2872f0d Issue 1242657: list(obj) can swallow KeyboardInterrupt 2009-02-02 22:44:06 +00:00
Raymond Hettinger b516370bcb Issue 1242657: list(obj) can swallow KeyboardInterrupt. 2009-02-02 21:50:13 +00:00
Georg Brandl c04c2890c7 Merged revisions 68292,68344,68361,68378,68424,68426,68429-68430,68450,68457,68480-68481,68493,68495,68499,68501,68512,68514-68515 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r68292 | skip.montanaro | 2009-01-04 11:36:58 +0100 (So, 04 Jan 2009) | 3 lines

  If user configures --without-gcc give preference to $CC instead of blindly
  assuming the compiler will be "cc".
........
  r68344 | marc-andre.lemburg | 2009-01-05 20:43:35 +0100 (Mo, 05 Jan 2009) | 7 lines

  Fix #4846 (Py_UNICODE_ISSPACE causes linker error) by moving the declaration
  into the extern "C" section.

  Add a few more comments and apply some minor edits to make the file contents
  fit the original structure again.
........
  r68361 | antoine.pitrou | 2009-01-06 19:34:08 +0100 (Di, 06 Jan 2009) | 3 lines

  Use shutil.rmtree rather than os.rmdir.
........
  r68378 | mark.dickinson | 2009-01-07 18:48:33 +0100 (Mi, 07 Jan 2009) | 2 lines

  Issue #4869: clarify documentation for random.expovariate.
........
  r68424 | benjamin.peterson | 2009-01-09 03:53:35 +0100 (Fr, 09 Jan 2009) | 1 line

  specify what -3 warnings are about
........
  r68426 | benjamin.peterson | 2009-01-09 04:03:05 +0100 (Fr, 09 Jan 2009) | 1 line

  fix spelling
........
  r68429 | benjamin.peterson | 2009-01-09 04:05:14 +0100 (Fr, 09 Jan 2009) | 1 line

  add -3 to manpage
........
  r68430 | benjamin.peterson | 2009-01-09 04:07:27 +0100 (Fr, 09 Jan 2009) | 1 line

  be more specific in -3 option help
........
  r68450 | jeffrey.yasskin | 2009-01-09 17:47:07 +0100 (Fr, 09 Jan 2009) | 3 lines

  Fix issue 4884, preventing a crash in the socket code when python is compiled
  with llvm-gcc and run with a glibc <2.10.
........
  r68457 | kristjan.jonsson | 2009-01-09 21:10:59 +0100 (Fr, 09 Jan 2009) | 1 line

  Issue 3677:  Fix import from UNC paths on Windows.
........
  r68480 | vinay.sajip | 2009-01-10 14:38:04 +0100 (Sa, 10 Jan 2009) | 1 line

  Minor documentation changes cross-referencing NullHandler to the documentation on configuring logging in a library.
........
  r68481 | vinay.sajip | 2009-01-10 14:42:04 +0100 (Sa, 10 Jan 2009) | 1 line

  Corrected an incorrect self-reference.
........
  r68493 | benjamin.peterson | 2009-01-10 18:18:55 +0100 (Sa, 10 Jan 2009) | 1 line

  rewrite verbose conditionals
........
  r68495 | benjamin.peterson | 2009-01-10 18:36:44 +0100 (Sa, 10 Jan 2009) | 1 line

  tp_iter only exists with Py_TPFLAGS_HAVE_ITER #4901
........
  r68499 | mark.dickinson | 2009-01-10 20:14:55 +0100 (Sa, 10 Jan 2009) | 2 lines

  Remove an unnecessary check from test_decimal.
........
  r68501 | vinay.sajip | 2009-01-10 20:22:57 +0100 (Sa, 10 Jan 2009) | 1 line

  Corrected minor typo and added .currentmodule directives to fix missing cross-references.
........
  r68512 | benjamin.peterson | 2009-01-10 23:42:10 +0100 (Sa, 10 Jan 2009) | 1 line

  make tests fail if they can't be imported
........
  r68514 | benjamin.peterson | 2009-01-11 00:41:59 +0100 (So, 11 Jan 2009) | 1 line

  move seealso to a more appropiate place
........
  r68515 | benjamin.peterson | 2009-01-11 00:49:08 +0100 (So, 11 Jan 2009) | 1 line

  macos 9 isn't supported
........
2009-01-14 00:00:17 +00:00
Amaury Forgeot d'Arc a40d573664 #3720: Interpreter crashes when an evil iterator removes its own next function.
Now the slot is filled with a function that always raises.

Will not backport: extensions compiled with 2.6.x would not run on 2.6.0.
2009-01-12 23:36:55 +00:00
Jeffrey Yasskin d89f5b20b2 Fix issue 4884, preventing a crash in the socket code when python is compiled
with llvm-gcc and run with a glibc <2.10.
2009-01-09 16:47:07 +00:00
Marc-André Lemburg 3741bfdd3c Fix #4846 (Py_UNICODE_ISSPACE causes linker error) by moving the declaration
into the extern "C" section.

Add a few more comments and apply some minor edits to make the file contents
fit the original structure again.
2009-01-05 19:43:35 +00:00
Mark Dickinson 1bf6401ab2 Use C99 'isfinite' macro in preference to BSD-derived 'finite' function. 2009-01-04 19:53:00 +00:00
Mark Dickinson 0ebfedf38e Fix HAVE_DECL_ISINF/ISNAN test (again). 2009-01-04 17:02:05 +00:00
Mark Dickinson 41fbae1ac9 Oops. Need to check not only that HAVE_DECL_ISINF is defined, but also
that it's equal to 1.  (If isinf isn't defined, HAVE_DECL_ISINF is
defined to be 0, rather than being undefined.)
2009-01-04 16:06:40 +00:00
Mark Dickinson d181e3a246 isinf and isnan are macros, not functions; fix configure script
to use AC_CHECK_DECLS instead of AC_CHECK_FUNCS for these.
(See discussion in issue #4506)
2009-01-04 13:57:26 +00:00
Georg Brandl 47fe9817f1 Merged revisions 67952-67953,67955,67957-67958,67960-67961,67963,67965,67967,67970-67971,67973,67982,67988,67990,67995,68014,68016,68030,68057,68061,68112,68115-68118,68120-68121,68123-68128 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r67952 | georg.brandl | 2008-12-27 18:42:40 +0100 (Sat, 27 Dec 2008) | 2 lines

  #4752: actually use custom handler in example.
........
  r67953 | georg.brandl | 2008-12-27 19:20:04 +0100 (Sat, 27 Dec 2008) | 3 lines

  Patch #4739 by David Laban: add symbols to pydoc help topics,
  so that ``help('@')`` works as expected.
........
  r67955 | georg.brandl | 2008-12-27 19:27:53 +0100 (Sat, 27 Dec 2008) | 3 lines

  Follow-up to r67746 in order to restore backwards-compatibility for
  those who (monkey-)patch TextWrapper.wordsep_re with a custom RE.
........
  r67957 | georg.brandl | 2008-12-27 19:49:19 +0100 (Sat, 27 Dec 2008) | 2 lines

  #4754: improve winsound documentation.
........
  r67958 | georg.brandl | 2008-12-27 20:02:59 +0100 (Sat, 27 Dec 2008) | 2 lines

  #4682: 'b' is actually unsigned char.
........
  r67960 | georg.brandl | 2008-12-27 20:04:44 +0100 (Sat, 27 Dec 2008) | 2 lines

  #4695: fix backslashery.
........
  r67961 | georg.brandl | 2008-12-27 20:06:04 +0100 (Sat, 27 Dec 2008) | 2 lines

  Use :samp: role.
........
  r67963 | georg.brandl | 2008-12-27 20:11:15 +0100 (Sat, 27 Dec 2008) | 2 lines

  #4671: document that pydoc imports modules.
........
  r67965 | antoine.pitrou | 2008-12-27 21:34:52 +0100 (Sat, 27 Dec 2008) | 3 lines

  Issue #4677: add two list comprehension tests to pybench.
........
  r67967 | benjamin.peterson | 2008-12-27 23:18:58 +0100 (Sat, 27 Dec 2008) | 1 line

  fix markup
........
  r67970 | alexandre.vassalotti | 2008-12-28 02:52:58 +0100 (Sun, 28 Dec 2008) | 2 lines

  Fix name mangling of PyUnicode_ClearFreeList.
........
  r67971 | alexandre.vassalotti | 2008-12-28 03:10:35 +0100 (Sun, 28 Dec 2008) | 2 lines

  Sort UCS-2/UCS-4 name mangling list.
........
  r67973 | alexandre.vassalotti | 2008-12-28 03:58:22 +0100 (Sun, 28 Dec 2008) | 2 lines

  Document Py_VaBuildValue.
........
  r67982 | benjamin.peterson | 2008-12-28 16:37:31 +0100 (Sun, 28 Dec 2008) | 1 line

  fix WORD_BIGEDIAN declaration in Universal builds; fixes #4060 and #4728
........
  r67988 | ronald.oussoren | 2008-12-28 20:40:56 +0100 (Sun, 28 Dec 2008) | 1 line

  Issue4064: architecture string for universal builds on OSX
........
  r67990 | ronald.oussoren | 2008-12-28 20:50:40 +0100 (Sun, 28 Dec 2008) | 3 lines

  Update the fix for issue4064 to deal correctly with all three variants of
  universal builds that are presented by the configure script.
........
  r67995 | benjamin.peterson | 2008-12-28 22:16:07 +0100 (Sun, 28 Dec 2008) | 1 line

  #4763 PyErr_ExceptionMatches won't blow up with NULL arguments
........
  r68014 | benjamin.peterson | 2008-12-29 18:47:42 +0100 (Mon, 29 Dec 2008) | 1 line

  #4764 set IOError.filename when trying to open a directory on POSIX platforms
........
  r68016 | benjamin.peterson | 2008-12-29 18:56:58 +0100 (Mon, 29 Dec 2008) | 1 line

  #4764 in io.open, set IOError.filename when trying to open a directory on POSIX platforms
........
  r68030 | benjamin.peterson | 2008-12-29 22:38:14 +0100 (Mon, 29 Dec 2008) | 1 line

  fix French
........
  r68057 | vinay.sajip | 2008-12-30 08:01:25 +0100 (Tue, 30 Dec 2008) | 1 line

  Minor documentation change relating to NullHandler.
........
  r68061 | georg.brandl | 2008-12-30 11:15:49 +0100 (Tue, 30 Dec 2008) | 2 lines

  #4778: attributes can't be called.
........
  r68112 | benjamin.peterson | 2009-01-01 00:48:39 +0100 (Thu, 01 Jan 2009) | 1 line

  #4795 inspect.isgeneratorfunction() should return False instead of None
........
  r68115 | benjamin.peterson | 2009-01-01 05:04:41 +0100 (Thu, 01 Jan 2009) | 1 line

  simplfy code
........
  r68116 | georg.brandl | 2009-01-01 12:46:51 +0100 (Thu, 01 Jan 2009) | 2 lines

  #4100: note that element children are not necessarily present on "start" events.
........
  r68117 | georg.brandl | 2009-01-01 12:53:55 +0100 (Thu, 01 Jan 2009) | 2 lines

  #4156: make clear that "protocol" is to be replaced with the protocol name.
........
  r68118 | georg.brandl | 2009-01-01 13:00:19 +0100 (Thu, 01 Jan 2009) | 2 lines

  #4185: clarify escape behavior of replacement strings.
........
  r68120 | georg.brandl | 2009-01-01 13:15:31 +0100 (Thu, 01 Jan 2009) | 4 lines

  #4228: Pack negative values the same way as 2.4
  in struct's L format.
........
  r68121 | georg.brandl | 2009-01-01 13:43:33 +0100 (Thu, 01 Jan 2009) | 2 lines

  Point to types module in new module deprecation notice.
........
  r68123 | georg.brandl | 2009-01-01 13:52:29 +0100 (Thu, 01 Jan 2009) | 2 lines

  #4784: ... on three counts ...
........
  r68124 | georg.brandl | 2009-01-01 13:53:19 +0100 (Thu, 01 Jan 2009) | 2 lines

  #4782: Fix markup error that hid load() and loads().
........
  r68125 | georg.brandl | 2009-01-01 14:02:09 +0100 (Thu, 01 Jan 2009) | 2 lines

  #4776: add data_files and package_dir arguments.
........
  r68126 | georg.brandl | 2009-01-01 14:05:13 +0100 (Thu, 01 Jan 2009) | 2 lines

  Handlers are in the `logging.handlers` module.
........
  r68127 | georg.brandl | 2009-01-01 14:14:49 +0100 (Thu, 01 Jan 2009) | 2 lines

  #4767: Use correct submodules for all MIME classes.
........
  r68128 | antoine.pitrou | 2009-01-01 15:11:22 +0100 (Thu, 01 Jan 2009) | 3 lines

  Issue #3680: Reference cycles created through a dict, set or deque iterator did not get collected.
........
2009-01-01 15:46:10 +00:00
Ronald Oussoren 989707b24a Backport r67982 2008-12-28 19:32:47 +00:00
Benjamin Peterson fd9633ed36 fix WORD_BIGEDIAN declaration in Universal builds; fixes #4060 and #4728 2008-12-28 15:37:31 +00:00
Alexandre Vassalotti a925bed208 Sort UCS-2/UCS-4 name mangling list. 2008-12-28 02:10:35 +00:00
Alexandre Vassalotti d8f8ee4af8 Fix name mangling of PyUnicode_ClearFreeList. 2008-12-28 01:52:58 +00:00
Antoine Pitrou d0c3515bc5 Issue #2183: Simplify and optimize bytecode for list comprehensions. 2008-12-17 00:38:28 +00:00
Barry Warsaw 6b257f4b3d Post-2.6.1 tweak 2008-12-05 05:03:06 +00:00
Barry Warsaw 3d407dc564 Prep for 2.6.1 2008-12-04 02:59:51 +00:00
Benjamin Peterson 44a90c95ce move unprefixed error into .c file 2008-10-30 23:59:18 +00:00
Amaury Forgeot d'Arc 38e46fc628 Merged revisions 66891 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r66891 | amaury.forgeotdarc | 2008-10-14 23:47:22 +0200 (mar., 14 oct. 2008) | 5 lines

  #4122: On Windows, Py_UNICODE_ISSPACE cannot be used in an extension module:
  compilation fails with "undefined reference to _Py_ascii_whitespace"

  Will backport to 2.6.
........
2008-10-14 22:00:06 +00:00
Amaury Forgeot d'Arc 07d539d08b #4122: On Windows, Py_UNICODE_ISSPACE cannot be used in an extension module:
compilation fails with "undefined reference to _Py_ascii_whitespace"

Will backport to 2.6.
2008-10-14 21:47:22 +00:00
Barry Warsaw 12582c9225 Bump to 2.7a0 2008-10-02 03:33:51 +00:00
Barry Warsaw a5a38c508e Post release dance 2008-10-02 03:08:34 +00:00
Barry Warsaw afa1436958 Bumping to 2.6 final. 2008-10-01 21:46:40 +00:00
Andrew MacIntyre 41c56b5ea1 build_os2emx.patch in issue 3868 - update OS/2 EMX makefile and config files
Part of source_os2emx.patch in issue 3868:
  Include/pystrcmp.h:  OS/2 has same C APIs as Windows
  Lib/test/test_io.py: OS/2 has same behaviour as Windows for this test

Reviewed by Amaury Forgeot d'Arc
2008-09-22 14:23:45 +00:00
Barry Warsaw 0c5ca57369 done with 2.6rc2 2008-09-18 05:34:31 +00:00
Barry Warsaw 6af16190f6 Bumping to 2.6rc2 2008-09-18 04:33:43 +00:00
Barry Warsaw dfd6b86d6b post release updates 2008-09-13 01:12:18 +00:00
Barry Warsaw f5f9d99974 Fix the release level 2008-09-12 23:35:48 +00:00
Barry Warsaw 1e62aec3ed Bumping to 2.6rc1 2008-09-12 23:25:57 +00:00
Antoine Pitrou d4ae97bc38 #3668: When PyArg_ParseTuple correctly parses a s* format, but raises an
exception afterwards (for a subsequent parameter), the user code will
not call PyBuffer_Release() and memory will leak.

Reviewed by Amaury Forgeot d'Arc.
2008-08-29 18:39:48 +00:00
Antoine Pitrou 0668c62677 Issue #2534: speed up isinstance() and issubclass() by 50-70%, so as to
match Python 2.5 speed despite the __instancecheck__ / __subclasscheck__
mechanism. In the process, fix a bug where isinstance() and issubclass(),
when given a tuple of classes as second argument, were looking up
__instancecheck__ / __subclasscheck__ on the tuple rather than on each
type object.

Reviewed by Benjamin Peterson and Raymond Hettinger.
2008-08-26 22:42:08 +00:00
Benjamin Peterson 14cb6bcf2b sort of backport 66038 by aliasing PyObject_Bytes to PyObject_Str 2008-08-26 17:08:40 +00:00
Barry Warsaw 6a0b559d26 done with the release 2008-08-21 02:12:56 +00:00
Barry Warsaw 07a4a3851d Bump to 2.6b3. 2008-08-21 01:15:08 +00:00
Guido van Rossum 69ed1011aa Hopeful fix for issue 1878: remove Py_TPFLAGS_HAVE_VERSION_TAG from
Py_TPFLAGS_DEFAULT when not building the core.
2008-08-19 20:13:02 +00:00
Benjamin Peterson 6b094a4258 fix a little typo 2008-08-19 19:27:53 +00:00
Benjamin Peterson 025d9392a6 fix compile errors 2008-08-17 01:27:30 +00:00