Software-update: Python 2.4.3

Python is een programmeertaal waarmee simpele tot complexe platform-onafhankelijke applicaties kunnen worden ontwikkeld. Deze taal wordt door veel bedrijven gebruikt zoals onder andere Industrial Light & Magic, Google en NASA. De ontwikkelaars hebben onlangs versie 2.4.3 uitgebracht. De release notes sinds de vorige vermelding in de meuktracker zien er als volgt uit:

What's New in Python 2.4.3?
    Core and builtins:
    • A few reference leaks were squished.
    • A threading issue that caused random segfaults on some platforms from the testsuite was fixed in test_capi.
    • Reverted fix for Bug #1379994: Builtin unicode_escape and raw_unicode_escape codec now encodes backslash correctly. This caused another issue for unicode repr strings being double-escaped (SF Bug #1459029). Correct fix will be in 2.5, but is too risky for 2.4.3.
    Extension Modules
    • Ubuntu bug #29289: Fixed a bug that the gb18030 codec raises RuntimeError on encoding surrogate pair area on UCS4 build.
What's New in Python 2.4.3c1?
    Core and builtins
    • Bug #1115379: Compiling a Unicode string with an encoding declaration now gives a SyntaxError.
    • Fix missing check on whether the PendingDeprecationWarning for string exceptions was re-raised as an actual PendingDeprecationWarning when 'warnings' is set to a filter action of "error"
    • Bug #1378022, UTF-8 files with a leading BOM crashed the interpreter.
    • Patch #1400181, fix unicode string formatting to not use the locale. This is how string objects work. u'%f' could use , instead of . for the decimal point. Now both strings and unicode always use periods.
    • Bug #1244610, #1392915, fix build problem on OpenBSD 3.7 and 3.8. configure would break checking curses.h.
    • Bug #959576: The pwd module is now builtin. This allows Python to be built on UNIX platforms without $HOME set.
    • Bug #1379994: Builtin unicode_escape and raw_unicode_escape codec now encodes backslash correctly.
    • Bug #1281408: Py_BuildValue now works correct even with unsigned longs and long longs.
    • SF Bug #1350188, "setdlopenflags" leads to crash upon "import" It was possible dlerror() returns a NULL pointer, use a default error message in this case.
    • SF bug #1167751: fix incorrect code being for generator expressions. The following code now raises a SyntaxError: foo(a = i for i in range(10))
    • SF Bug #976608: fix SystemError when mtime of an imported file is -1.
    • SF Bug #887946: fix segfault when redirecting stdin from a directory. Provide a warning when a directory is passed on the command line.
    • Fix segfault with invalid coding.
    • Patch #1413181: changed ``PyThreadState_Delete()`` to forget about the current thread state when the auto-GIL-state machinery knows about it (since the thread state is being deleted, continuing to remember it can't help, but can hurt if another thread happens to get created with the same thread id).
    Extension Modules
    • Bug #1448490: Fixed a bug that ISO-2022 codecs could not handle SS2 (single-shift 2) escape sequences correctly.
    • Bug #854823: socketmodule now builds on Sun platforms even when INET_ADDRSTRLEN is not defined.
    • Bug #876637, prevent stack corruption when socket descriptor is larger than FD_SETSIZE.
    • Patch #1407135, bug #1424041: mmap.mmap(-1, size, ...) can return anonymous memory again on Unix.
    • Bug #1215432: in bsddb DB.associate() would crash when a DBError was supposed to be raised.
    • Fix 64-bit problems in bsddb.
    • Bug #1290333: Added a workaround for cjkcodecs' _codecs_cn build problem on AIX.
    • Bug #869197: os.setgroups rejects long integer arguments
    • Bug #1344508, Fix UNIX mmap leaking file descriptors
    • Patch #1338314, Bug #1336623: fix tarfile so it can extract REGTYPE directories from tarfiles written by old programs.
    • Patch #1309009, Fix segfault in pyexpat when the XML document is in latin_1, but Python incorrectly assumes it is in UTF-8 format
    • Fix parse errors in the readline module when compiling without threads.
    • A regrtest option -w was added to re-run failed tests in verbose mode.
    • Patch #1337756: fileinput now handles Unicode filenames correctly.
    • Patch #1373643: The chunk module can now read chunks larger than two gigabytes.
    • Bug #1430298: It is now possible to send a mail with an empty return address using smtplib.
    • Bug #1432260: The names of lambda functions are now properly displayed in pydoc.
    • Bug #1371247: Update Windows locale identifiers in
    • Bug #1394565: SimpleHTTPServer now doesn't choke on query parameters any more.
    • Bug #1403410: The warnings module now doesn't get confused when it can't find out the module name it generates a warning for.
    • Patch #1117398: cookielib.LWPCookieJar and .MozillaCookieJar now raise LoadError as documented, instead of IOError. For compatibility, LoadError subclasses IOError.
    • Bug #1365984: urllib now opens "data:" URLs again.
    • Patch #1314396: Prevent threading.Thread.join() from blocking if a previous call caused an exception to be raised (e.g., calling join() with an illegal argument).
    • urllib.unquote() now handles Unicode strings correctly. Formerly, it would either ignore the substitution or raise UnicodeDecodeError.
    • SF #1313496: the bisect module now accepts named arguments.
    • Bug #729103: Fix docother() method to accept additional "parent" argument.
    • Patch #1300515: Fix pack_fstring() to really use null bytes for padding.
    • Bug #1296004: Limit maximal amount of data read from the socket to avoid a MemoryError on Windows.
    • Fixed a display glitch in Pynche, which could cause the right arrow to wiggle over by a pixel.
    • Patch #1432345: Make python compile on DragonFly.
    • Patch #1428494: Prefer linking against ncursesw over ncurses library.
What's New in Python 2.4.2?
    Extension Modules
    • Patches #1298449 and #1298499: Add some missing checks for error returns in cStringIO.c.
    • Patch #1297028: fix segfault if call type on MultibyteCodec, MultibyteStreamReader, or MultibyteStreamWriter.
    • Fixed failure in test_macfs on Mac OS X 10.4 (Tiger), which apparently doesn't allow the creation time to be set later than the modification time. Fixed by changing the test data.
    • Patch #881820: look for openpty and forkpty also in libbsd.
    • Use -xcode=pic32 for CCSHARED on Solaris with SunPro.
    • The Windows .msi files are now compressed using lzx:21. This produces a significantly smaller installer.
What's New in Python 2.4.2c1?
    Core and builtins
    • SF bug #1163563: the original fix for bug #1010677 ("thread Module Breaks PyGILState_Ensure()") broke badly in the case of multiple interpreter states; back out that fix and do a better job (see for a longer write-up of the problem).
    • On 64-bit platforms, when __len__() returns a value that cannot be represented as a C int, raise OverflowError.
    • SF bug #893549: parsing keyword arguments was broken with a few format codes.
    • Changes donated by Elemental Security to make it work on AIX 5.3 with IBM's 64-bit compiler (SF patch #1284289). This also closes SF bug #105470: test_pwd fails on 64bit system (Opteron).
    • Changes donated by Elemental Security to make it work on HP-UX 11 on Itanium2 with HP's 64-bit compiler (SF patch #1225212).
    • Disallow keyword arguments for type constructors that don't use them (fixes bug #1119418).
    • Forward UnicodeDecodeError into SyntaxError for source encoding errors.
    • SF bug #900092: When tracing (e.g. for hotshot), restore 'return' events for exceptions that cause a function to exit.
    • SF bug #1257731: set.discard() and set.remove() did not correctly handle keys that both inherited from set and defined their own __hash__() function. Also, changed set.__contains__() to have identical logic.
    • The set() builtin can now properly compute s-=s as an empty set.
    • SF bug #1238681: freed pointer is used in longobject.c:long_pow().
    • SF bug #1185883: Python's small-object memory allocator took over a block managed by the platform C library whenever a realloc specified a small new size. However, there's no portable way to know then how much of the address space following the pointer is valid, so no portable way to copy data from the C-managed block into Python's small-object space without risking a memory fault. Python's small-object realloc now leaves such blocks under the control of the platform C realloc.
    • Fix garbage collection for set and frozenset objects. SF patch #1200018.
    • It is now safe to call PyGILState_Release() before PyEval_InitThreads() (note that if there is reason to believe there are multiple threads around you still must call PyEval_InitThreads() before using the Python API; this fix is for extension modules that have no way of knowing if Python is multi-threaded yet).
    • Typing Ctrl-C whilst raw_input() was waiting in a build with threads disabled caused a crash.
    • Bug #1165306: instancemethod_new allowed the creation of a method with im_class == im_self == NULL, which caused a crash when called.
    Extension Modules
    • Bug #1413192, fix seg fault in bsddb if a transaction was deleted before the env.
    • Bug #1402308, (possible) segfault when using mmap.mmap(-1, ...)
    • Bug #1400822, _curses over{lay,write} doesn't work when passing 6 ints. Also fix ungetmouse() which did not accept arguments properly. The code now conforms to the documented signature.
    • Bug #1400115, Fix segfault when calling curses.panel.userptr() without prior setting of the userptr.
    • Bug #1346533, select.poll() doesn't raise an error if timeout > sys.maxint
    • Fix memory leak in posix.access().
    • Patch #1213831: Fix typo in unicodedata._getcode.
    • Bug #1007046: os.startfile() did not accept unicode strings encoded in the file system encoding.
    • Patch #756021: Special-case socket.inet_aton('') for platforms that don't have inet_aton().
    • Bug #1215928: Fix for 64-bit file offsets.
    • Bug #1191043: Fix bz2.BZ2File.(x)readlines() for files containing one line without newlines.
    • Bug #728515: mmap.resize() now resizes the file on Unix as it did on Windows.
    • Bug #1234979: For the argument of thread.Lock.acquire, the Windows implemented treated all integer values except 1 as false.
    • Bug #1194181: bz2.BZ2File didn't handle mode 'U' correctly.
    • Bug #1166660: The readline module could segfault if hook functions were set in a different thread than that which called readline.
    • weakref proxy has incorrect __nonzero__ behavior. SF bug #1770766.
    • Patch #1166948: Prefer LC_ALL, LC_CTYPE and LANG over LANGUAGE to get the correct encoding.
    • Patch #1166938: Parse LANGUAGE as a colon separated list of languages.
    • Patch #1268314: Cache lines in StreamReader.readlines for performance.
    • Bug #1290505: time.strptime() was not invalidating its regex cache when the locale changed.
    • Fix a misuse of str.find() in detection of use of %U or %W in datetime format.
    • Bug #1167128: Fix size of a symlink in a tarfile to be 0.
    • Patch #810023: Fix off-by-one bug in urllib.urlretrieve reporthook functionality.
    • Bug #1163178: Make IDNA return an empty string when the input is empty.
    • Bug #1121494: distutils.dir_utils.mkpath now accepts Unicode strings.
    • Bug #1178484: Return complete lines from codec stream readers even if there is an exception in later lines, resulting in correct line numbers for decoding errors in source code.
    • Bug #1266283: "lexists" is now in os.path.__all__.
    • The sets module can now properly compute s-=s and s^=s as an empty set.
    • Bug #1192315: Disallow negative arguments to clear() in pdb.
    • Patch #827386: Support absolute source paths in
    • Fix a problem in Tkinter introduced by SF patch #869468: delete bogus __hasattr__ and __delattr__ methods on class Tk that were breaking Tkdnd.
    • Bug #1015140: disambiguated the term "article id" in nntplib docs and docstrings to either "article number" or "message id".
    • Bug #1177468: Don't cache the /dev/urandom file descriptor for os.urandom, as this can cause problems with apps closing all file descriptors.
    • Bug #839151: Fix an attempt to access sys.argv in the warnings module though this can be missing in embedded interpreters
    • Bug #1155638: Fix a bug which affected HTTP 0.9 responses in httplib.
    • Bug #1100201: Cross-site scripting was possible on BaseHTTPServer via error messages.
    • Bug #1224621: tokenize module does not detect inconsistent dedents
    • Bug #1196315: fix weakref.WeakValueDictionary constructor.
    • Bug #1213894: os.path.realpath didn't resolve symlinks that were the first component of the path.
    • distutils.commands.register now encodes the data as UTF-8 before posting them to PyPI.
    • Partial fixes for SF bugs #1163244 and #1175396: If a chunk read by ``codecs.StreamReader.readline()`` has a trailing "\r", read one more character even if the user has passed a size parameter to get a proper line ending. Remove the special handling of a "\r\n" that has been split between two lines.
    • Bug #1251300: On UCS-4 builds the "unicode-internal" codec will now complain about illegal code points. The codec now supports PEP 293 style error handlers.
    • Bug #1235646: ```` now reencodes the data it reads from the input stream, so that the output is a byte string in the correct encoding instead of a unicode string.
    • Bug #1202493: Fixing SRE parser to handle '{}' as perl does, rather than considering it exactly like a '*'.
    • Patch #1160164: Build zlib.pyd for Itanium.
    • Bug #1189330: configure did not correctly determine the necessary value of LINKCC if python was built with GCC 4.0.
    • Upgrade Windows build to zlib 1.2.3 which eliminates a potential security vulnerability in zlib 1.2.1 and 1.2.2.
    • Bug #1402224: Add warning to dl docs about crashes.
    • Bug #1396471: Document that Windows' ftell() can return invalid values for text files with UNIX-style line endings.
    • Bug #1274828: Document os.path.splitunc().
    • Bug #1190204: Clarify which directories are searched by
    • Bug #1193849: Clarify os.path.expanduser() documentation.
    • Bug #1243192: re.UNICODE and re.LOCALE affect \d, \D, \s and \S.
    • Bug #755617: Document the effects of os.chown() on Windows.
    • Patch #1180012: The documentation for modulefinder is now in the library reference.
    • Patch #1213031: Document that os.chown() accepts argument values of -1.
    • Bug #1190563: Document os.waitpid() return value with WNOHANG flag.
    • Bug #1175022: Correct the example code for property().
    • Bug #1072853: used an uninitialized variable.
Versienummer 2.4.3
Besturingssystemen Windows 9x, Windows NT, Windows 2000, Linux, BSD, Windows XP, macOS, Solaris, UNIX, Windows Server 2003, Windows XP IA-64, Windows Server 2003 IA-64
Website Python
Licentietype Voorwaarden (GNU/BSD/etc.)

Door Japke Rosink


03-04-2006 • 13:11

0 Linkedin

Bron: Python


Wijzig sortering

Er zijn nog geen reacties geplaatst

Kies score Let op: Beoordeel reacties objectief. De kwaliteit van de argumentatie is leidend voor de beoordeling van een reactie, niet of een mening overeenkomt met die van jou.

Een uitgebreider overzicht van de werking van het moderatiesysteem vind je in de Moderatie FAQ

Rapporteer misbruik van moderaties in Frontpagemoderatie.

Op dit item kan niet meer gereageerd worden.

Nintendo Switch (OLED model) Apple iPhone SE (2022) LG G1 Google Pixel 6 Call of Duty: Vanguard Samsung Galaxy S22 Garmin fēnix 7 Nintendo Switch Lite

Tweakers vormt samen met Hardware Info, AutoTrack,, Nationale Vacaturebank, Intermediair en Independer DPG Online Services B.V.
Alle rechten voorbehouden © 1998 - 2022 Hosting door True

Tweakers maakt gebruik van cookies

Tweakers plaatst functionele en analytische cookies voor het functioneren van de website en het verbeteren van de website-ervaring. Deze cookies zijn noodzakelijk. Om op Tweakers relevantere advertenties te tonen en om ingesloten content van derden te tonen (bijvoorbeeld video's), vragen we je toestemming. Via ingesloten content kunnen derde partijen diensten leveren en verbeteren, bezoekersstatistieken bijhouden, gepersonaliseerde content tonen, gerichte advertenties tonen en gebruikersprofielen opbouwen. Hiervoor worden apparaatgegevens, IP-adres, geolocatie en surfgedrag vastgelegd.

Meer informatie vind je in ons cookiebeleid.


Toestemming beheren

Hieronder kun je per doeleinde of partij toestemming geven of intrekken. Meer informatie vind je in ons cookiebeleid.

Functioneel en analytisch

Deze cookies zijn noodzakelijk voor het functioneren van de website en het verbeteren van de website-ervaring. Klik op het informatie-icoon voor meer informatie. Meer details


    Relevantere advertenties

    Dit beperkt het aantal keer dat dezelfde advertentie getoond wordt (frequency capping) en maakt het mogelijk om binnen Tweakers contextuele advertenties te tonen op basis van pagina's die je hebt bezocht. Meer details

    Tweakers genereert een willekeurige unieke code als identifier. Deze data wordt niet gedeeld met adverteerders of andere derde partijen en je kunt niet buiten Tweakers gevolgd worden. Indien je bent ingelogd, wordt deze identifier gekoppeld aan je account. Indien je niet bent ingelogd, wordt deze identifier gekoppeld aan je sessie die maximaal 4 maanden actief blijft. Je kunt deze toestemming te allen tijde intrekken.

    Ingesloten content van derden

    Deze cookies kunnen door derde partijen geplaatst worden via ingesloten content. Klik op het informatie-icoon voor meer informatie over de verwerkingsdoeleinden. Meer details