1. 10 Haz, 2006 1 kayıt (commit)
  2. 22 May, 2006 1 kayıt (commit)
  3. 17 Ara, 2005 1 kayıt (commit)
  4. 20 Eki, 2005 1 kayıt (commit)
    • Jeremy Hylton's avatar
      Merge ast-branch to head · 3e0055f8
      Jeremy Hylton yazdı
      This change implements a new bytecode compiler, based on a
      transformation of the parse tree to an abstract syntax defined in
      Parser/Python.asdl.
      
      The compiler implementation is not complete, but it is in stable
      enough shape to run the entire test suite excepting two disabled
      tests.
      3e0055f8
  5. 27 Tem, 2004 1 kayıt (commit)
  6. 27 Haz, 2004 1 kayıt (commit)
  7. 08 Haz, 2004 1 kayıt (commit)
  8. 13 Mar, 2004 1 kayıt (commit)
  9. 10 Şub, 2004 1 kayıt (commit)
  10. 22 Ara, 2003 2 kayıt (commit)
  11. 16 Kas, 2003 1 kayıt (commit)
    • Raymond Hettinger's avatar
      * Migrate set() and frozenset() from the sandbox. · a690a996
      Raymond Hettinger yazdı
      * Install the unittests, docs, newsitem, include file, and makefile update.
      * Exercise the new functions whereever sets.py was being used.
      
      Includes the docs for libfuncs.tex.  Separate docs for the types are
      forthcoming.
      a690a996
  12. 12 Agu, 2002 1 kayıt (commit)
  13. 20 Tem, 2002 1 kayıt (commit)
  14. 18 Tem, 2002 1 kayıt (commit)
    • Jeremy Hylton's avatar
      Define _XOPEN_SOURCE in configure and Python.h. · 5a7ef7e2
      Jeremy Hylton yazdı
      This gets compilation of posixmodule.c to succeed on Tru64 and does no
      harm on Linux.  We may need to undefine it on some platforms, but
      let's wait and see.
      
      Martin says:
      
      > I think it is generally the right thing to define _XOPEN_SOURCE on
      > Unix, providing a negative list of systems that cannot support this
      > setting (or preferably solving whatever problems remain).
      >
      > I'd put an (unconditional) AC_DEFINE into configure.in early on; it
      > *should* go into confdefs.h as configure proceeds, and thus be active
      > when other tests are performed.
      5a7ef7e2
  15. 12 Tem, 2002 1 kayıt (commit)
  16. 07 Tem, 2002 1 kayıt (commit)
  17. 20 Haz, 2002 1 kayıt (commit)
  18. 09 Haz, 2002 1 kayıt (commit)
  19. 04 Haz, 2002 1 kayıt (commit)
    • Jason Tishler's avatar
      Patch #555929: Cygwin AH_BOTTOM cleanup patch (*** version 2 ***) · bc48826d
      Jason Tishler yazdı
      This patch complies with the following request found
      near the top of configure.in:
      
      # This is for stuff that absolutely must end up in pyconfig.h.
      # Please use pyport.h instead, if possible.
      
      I tested this patch under Cygwin, Win32, and Red
      Hat Linux. Python built and ran successfully on
      each of these platforms.
      bc48826d
  20. 27 May, 2002 1 kayıt (commit)
  21. 15 May, 2002 2 kayıt (commit)
    • Martin v. Löwis's avatar
      Back out #555929 · 1e1fcef7
      Martin v. Löwis yazdı
      1e1fcef7
    • Jason Tishler's avatar
      Patch #555929: Cygwin AH_BOTTOM cleanup patch · eadb6bb3
      Jason Tishler yazdı
      This patch complies with the following request found
      near the top of configure.in:
      
      # This is for stuff that absolutely must end up in pyconfig.h.
      # Please use pyport.h instead, if possible.
      
      I tested this patch under Cygwin, Win32, and Red
      Hat Linux. Python built and ran successfully on
      each of these platforms.
      eadb6bb3
  22. 26 Nis, 2002 1 kayıt (commit)
  23. 03 Nis, 2002 1 kayıt (commit)
    • Guido van Rossum's avatar
      Add the 'bool' type and its values 'False' and 'True', as described in · 77f6a65e
      Guido van Rossum yazdı
      PEP 285.  Everything described in the PEP is here, and there is even
      some documentation.  I had to fix 12 unit tests; all but one of these
      were printing Boolean outcomes that changed from 0/1 to False/True.
      (The exception is test_unicode.py, which did a type(x) == type(y)
      style comparison.  I could've fixed that with a single line using
      issubtype(x, type(y)), but instead chose to be explicit about those
      places where a bool is expected.
      
      Still to do: perhaps more documentation; change standard library
      modules to return False/True from predicates.
      77f6a65e
  24. 25 Mar, 2002 2 kayıt (commit)
  25. 23 Mar, 2002 1 kayıt (commit)
    • Tim Peters's avatar
      Give Python a debug-mode pymalloc, much as sketched on Python-Dev. · ddea208b
      Tim Peters yazdı
      When WITH_PYMALLOC is defined, define PYMALLOC_DEBUG to enable the debug
      allocator.  This can be done independent of build type (release or debug).
      A debug build automatically defines PYMALLOC_DEBUG when pymalloc is
      enabled.  It's a detected error to define PYMALLOC_DEBUG when pymalloc
      isn't enabled.
      
      Two debugging entry points defined only under PYMALLOC_DEBUG:
      
      + _PyMalloc_DebugCheckAddress(const void *p) can be used (e.g., from gdb)
        to sanity-check a memory block obtained from pymalloc.  It sprays
        info to stderr (see next) and dies via Py_FatalError if the block is
        detectably damaged.
      
      + _PyMalloc_DebugDumpAddress(const void *p) can be used to spray info
        about a debug memory block to stderr.
      
      A tiny start at implementing "API family" checks isn't good for
      anything yet.
      
      _PyMalloc_DebugRealloc() has been optimized to do little when the new
      size is <= old size.  However, if the new size is larger, it really
      can't call the underlying realloc() routine without either violating its
      contract, or knowing something non-trivial about how the underlying
      realloc() works.  A memcpy is always done in this case.
      
      This was a disaster for (and only) one of the std tests:  test_bufio
      creates single text file lines up to a million characters long.  On
      Windows, fileobject.c's get_line() uses the horridly funky
      getline_via_fgets(), which keeps growing and growing a string object
      hoping to find a newline.  It grew the string object 1000 bytes each
      time, so for a million-character string it took approximately forever
      (I gave up after a few minutes).
      
      So, also:
      
      fileobject.c, getline_via_fgets():  When a single line is outrageously
      long, grow the string object at a mildly exponential rate, instead of
      just 1000 bytes at a time.
      
      That's enough so that a debug-build test_bufio finishes in about 5 seconds
      on my Win98SE box.  I'm curious to try this on Win2K, because it has very
      different memory behavior than Win9X, and test_bufio always took a factor
      of 10 longer to complete on Win2K.  It *could* be that the endless
      reallocs were simply killing it on Win2K even in the release build.
      ddea208b
  26. 12 Ock, 2002 1 kayıt (commit)
  27. 04 Ara, 2001 1 kayıt (commit)
  28. 05 Eki, 2001 1 kayıt (commit)
  29. 02 Agu, 2001 1 kayıt (commit)
  30. 26 Tem, 2001 2 kayıt (commit)
  31. 16 Tem, 2001 1 kayıt (commit)
    • Tim Peters's avatar
      Part way to allowing "from __future__ import generators" to communicate · 5ba58662
      Tim Peters yazdı
      that info to code dynamically compiled *by* code compiled with generators
      enabled.  Doesn't yet work because there's still no way to tell the parser
      that "yield" is OK (unlike nested_scopes, the parser has its fingers in
      this too).
      Replaced PyEval_GetNestedScopes by a more-general
      PyEval_MergeCompilerFlags.  Perhaps I should not have?  I doubted it was
      *intended* to be part of the public API, so just did.
      5ba58662
  32. 15 Tem, 2001 2 kayıt (commit)
  33. 20 Nis, 2001 1 kayıt (commit)
    • Guido van Rossum's avatar
      Iterators phase 1. This comprises: · 59d1d2b4
      Guido van Rossum yazdı
      new slot tp_iter in type object, plus new flag Py_TPFLAGS_HAVE_ITER
      new C API PyObject_GetIter(), calls tp_iter
      new builtin iter(), with two forms: iter(obj), and iter(function, sentinel)
      new internal object types iterobject and calliterobject
      new exception StopIteration
      new opcodes for "for" loops, GET_ITER and FOR_ITER (also supported by dis.py)
      new magic number for .pyc files
      new special method for instances: __iter__() returns an iterator
      iteration over dictionaries: "for x in dict" iterates over the keys
      iteration over files: "for x in file" iterates over lines
      
      TODO:
      
      documentation
      test suite
      decide whether to use a different way to spell iter(function, sentinal)
      decide whether "for key in dict" is a good idea
      use iterators in map/filter/reduce, min/max, and elsewhere (in/not in?)
      speed tuning (make next() a slot tp_next???)
      59d1d2b4
  34. 25 Ock, 2001 1 kayıt (commit)
    • Jeremy Hylton's avatar
      PEP 227 implementation · fbd849f2
      Jeremy Hylton yazdı
      A cell contains a reference to a single PyObject.  It could be
      implemented as a mutable, one-element sequence, but the separate type
      has less overhead.
      fbd849f2
  35. 26 Eyl, 2000 1 kayıt (commit)