# SOME DESCRIPTIVE TITLE. # Copyright (C) 2001-2016, Python Software Foundation # This file is distributed under the same license as the Python package. # FIRST AUTHOR , YEAR. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2016-10-17 21:44+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../Doc/whatsnew/2.0.rst:3 msgid "What's New in Python 2.0" msgstr "Nouveautés de Python 2.0" #: ../Doc/whatsnew/2.0.rst:5 msgid "A.M. Kuchling and Moshe Zadka" msgstr "A.M. Kuchling et Moshe Zadka" #: ../Doc/whatsnew/2.0.rst:13 ../Doc/whatsnew/2.1.rst:13 #: ../Doc/whatsnew/2.2.rst:13 msgid "Introduction" msgstr "Introduction" #: ../Doc/whatsnew/2.0.rst:15 msgid "" "A new release of Python, version 2.0, was released on October 16, 2000. This " "article covers the exciting new features in 2.0, highlights some other " "useful changes, and points out a few incompatible changes that may require " "rewriting code." msgstr "" "Une nouvelle version de Python, la version 2.0, est sortie le 16 octobre " "2000. Cet article traite des nouvelles fonctionnalités intéressantes de " "cette version, met en évidence d'autres changements utiles, et souligne " "quelques incompatibilités qui peuvent nécessiter la réécriture du code." #: ../Doc/whatsnew/2.0.rst:20 msgid "" "Python's development never completely stops between releases, and a steady " "flow of bug fixes and improvements are always being submitted. A host of " "minor fixes, a few optimizations, additional docstrings, and better error " "messages went into 2.0; to list them all would be impossible, but they're " "certainly significant. Consult the publicly-available CVS logs if you want " "to see the full list. This progress is due to the five developers working " "for PythonLabs are now getting paid to spend their days fixing bugs, and " "also due to the improved communication resulting from moving to SourceForge." msgstr "" "Le développement de Python n'a jamais complètement été arrêté entre chaque " "versions, et un flux constant de corrections de bogues et d'améliorations " "ont toujours été soumis. Une foule de corrections mineures, quelques " "optimisations, des docstrings supplémentaires, et de meilleurs messages " "d'erreur sont apparus avec l'arrivée de la version 2.0; tous les énumérer " "serait impossible, mais ils sont certainement significatif. Consultez les " "journaux CVS publics disponibles pour obtenir la liste complète. Ce progrès " "est dû aux cinq développeurs travaillant pour PythonLabs qui sont désormais " "payés pour passer leurs journées à corriger les bugs, mais aussi en raison " "de l'amélioration de la communication résultant du passage à SourceForge." #: ../Doc/whatsnew/2.0.rst:33 msgid "What About Python 1.6?" msgstr "À propos de Python 1.6" #: ../Doc/whatsnew/2.0.rst:35 msgid "" "Python 1.6 can be thought of as the Contractual Obligations Python release. " "After the core development team left CNRI in May 2000, CNRI requested that a " "1.6 release be created, containing all the work on Python that had been " "performed at CNRI. Python 1.6 therefore represents the state of the CVS " "tree as of May 2000, with the most significant new feature being Unicode " "support. Development continued after May, of course, so the 1.6 tree " "received a few fixes to ensure that it's forward-compatible with Python " "2.0. 1.6 is therefore part of Python's evolution, and not a side branch." msgstr "" "Python 1.6 peut être vu comme la version des obligations contractuelles. " "Après que l’équipe de développement eût quitté le CNRI en mai 2000, celui-ci " "a demandé la création d’une version 1.6, contenant tout le travail sur " "Python réalisé au CNRI. Python 1.6 représente de ce fait l’état de l’arbre " "*CVS* tel qu’il était en mai 2000, la nouvelle fonctionnalité la plus " "remarquable étant le support d’Unicode. Le développement a continué après " "mai bien sûr, donc la branche 1.6 a reçu quelques corrections pour être sûr " "qu’elle soit compatible avec Python 2.0. La version 1.6 fait donc partie de " "l’évolution de Python, ce n’est pas une branche séparée." #: ../Doc/whatsnew/2.0.rst:44 msgid "" "So, should you take much interest in Python 1.6? Probably not. The " "1.6final and 2.0beta1 releases were made on the same day (September 5, " "2000), the plan being to finalize Python 2.0 within a month or so. If you " "have applications to maintain, there seems little point in breaking things " "by moving to 1.6, fixing them, and then having another round of breakage " "within a month by moving to 2.0; you're better off just going straight to " "2.0. Most of the really interesting features described in this document are " "only in 2.0, because a lot of work was done between May and September." msgstr "" "Alors, devriez-vous vous intéresser à Python 1.6 ? Probablement pas. Les " "versions 1.6final et 2.0beta1 sont sorties le même jour (5 septembre 2000), " "le plan étant de finaliser Python 2.0 environ un mois plus tard. Si vous " "avez des applications à maintenir, il n’y a pas vraiment d’intérêt à casser " "des choses en migrant sur la version 1.6, les réparer, puis avoir de nouveau " "des choses cassées à peine un mois plus tard en passant à la 2.0; il vaut " "mieux partir directement de la 2.0. La plupart des fonctionnalités vraiment " "intéressantes décrites dans ce document sont seulement dans la 2.0, parce " "que beaucoup de travail a été réalisé entre mai et septembre." #: ../Doc/whatsnew/2.0.rst:57 msgid "New Development Process" msgstr "Nouveau processus de développement" #: ../Doc/whatsnew/2.0.rst:59 msgid "" "The most important change in Python 2.0 may not be to the code at all, but " "to how Python is developed: in May 2000 the Python developers began using " "the tools made available by SourceForge for storing source code, tracking " "bug reports, and managing the queue of patch submissions. To report bugs or " "submit patches for Python 2.0, use the bug tracking and patch manager tools " "available from Python's project page, located at https://sourceforge.net/" "projects/python/." msgstr "" #: ../Doc/whatsnew/2.0.rst:66 msgid "" "The most important of the services now hosted at SourceForge is the Python " "CVS tree, the version-controlled repository containing the source code for " "Python. Previously, there were roughly 7 or so people who had write access " "to the CVS tree, and all patches had to be inspected and checked in by one " "of the people on this short list. Obviously, this wasn't very scalable. By " "moving the CVS tree to SourceForge, it became possible to grant write access " "to more people; as of September 2000 there were 27 people able to check in " "changes, a fourfold increase. This makes possible large-scale changes that " "wouldn't be attempted if they'd have to be filtered through the small group " "of core developers. For example, one day Peter Schneider-Kamp took it into " "his head to drop K&R C compatibility and convert the C source for Python to " "ANSI C. After getting approval on the python-dev mailing list, he launched " "into a flurry of checkins that lasted about a week, other developers joined " "in to help, and the job was done. If there were only 5 people with write " "access, probably that task would have been viewed as \"nice, but not worth " "the time and effort needed\" and it would never have gotten done." msgstr "" #: ../Doc/whatsnew/2.0.rst:83 msgid "" "The shift to using SourceForge's services has resulted in a remarkable " "increase in the speed of development. Patches now get submitted, commented " "on, revised by people other than the original submitter, and bounced back " "and forth between people until the patch is deemed worth checking in. Bugs " "are tracked in one central location and can be assigned to a specific person " "for fixing, and we can count the number of open bugs to measure progress. " "This didn't come without a cost: developers now have more e-mail to deal " "with, more mailing lists to follow, and special tools had to be written for " "the new environment. For example, SourceForge sends default patch and bug " "notification e-mail messages that are completely unhelpful, so Ka-Ping Yee " "wrote an HTML screen-scraper that sends more useful messages." msgstr "" #: ../Doc/whatsnew/2.0.rst:95 msgid "" "The ease of adding code caused a few initial growing pains, such as code was " "checked in before it was ready or without getting clear agreement from the " "developer group. The approval process that has emerged is somewhat similar " "to that used by the Apache group. Developers can vote +1, +0, -0, or -1 on a " "patch; +1 and -1 denote acceptance or rejection, while +0 and -0 mean the " "developer is mostly indifferent to the change, though with a slight positive " "or negative slant. The most significant change from the Apache model is " "that the voting is essentially advisory, letting Guido van Rossum, who has " "Benevolent Dictator For Life status, know what the general opinion is. He " "can still ignore the result of a vote, and approve or reject a change even " "if the community disagrees with him." msgstr "" #: ../Doc/whatsnew/2.0.rst:106 msgid "" "Producing an actual patch is the last step in adding a new feature, and is " "usually easy compared to the earlier task of coming up with a good design. " "Discussions of new features can often explode into lengthy mailing list " "threads, making the discussion hard to follow, and no one can read every " "posting to python-dev. Therefore, a relatively formal process has been set " "up to write Python Enhancement Proposals (PEPs), modelled on the Internet " "RFC process. PEPs are draft documents that describe a proposed new feature, " "and are continually revised until the community reaches a consensus, either " "accepting or rejecting the proposal. Quoting from the introduction to PEP " "1, \"PEP Purpose and Guidelines\":" msgstr "" #: ../Doc/whatsnew/2.0.rst:120 msgid "" "PEP stands for Python Enhancement Proposal. A PEP is a design document " "providing information to the Python community, or describing a new feature " "for Python. The PEP should provide a concise technical specification of the " "feature and a rationale for the feature." msgstr "" #: ../Doc/whatsnew/2.0.rst:125 msgid "" "We intend PEPs to be the primary mechanisms for proposing new features, for " "collecting community input on an issue, and for documenting the design " "decisions that have gone into Python. The PEP author is responsible for " "building consensus within the community and documenting dissenting opinions." msgstr "" #: ../Doc/whatsnew/2.0.rst:130 msgid "" "Read the rest of PEP 1 for the details of the PEP editorial process, style, " "and format. PEPs are kept in the Python CVS tree on SourceForge, though " "they're not part of the Python 2.0 distribution, and are also available in " "HTML form from https://www.python.org/dev/peps/. As of September 2000, " "there are 25 PEPS, ranging from PEP 201, \"Lockstep Iteration\", to PEP 225, " "\"Elementwise/Objectwise Operators\"." msgstr "" #: ../Doc/whatsnew/2.0.rst:141 ../Doc/whatsnew/3.2.rst:2412 msgid "Unicode" msgstr "Unicode" #: ../Doc/whatsnew/2.0.rst:143 msgid "" "The largest new feature in Python 2.0 is a new fundamental data type: " "Unicode strings. Unicode uses 16-bit numbers to represent characters " "instead of the 8-bit number used by ASCII, meaning that 65,536 distinct " "characters can be supported." msgstr "" #: ../Doc/whatsnew/2.0.rst:148 msgid "" "The final interface for Unicode support was arrived at through countless " "often- stormy discussions on the python-dev mailing list, and mostly " "implemented by Marc-André Lemburg, based on a Unicode string type " "implementation by Fredrik Lundh. A detailed explanation of the interface " "was written up as :pep:`100`, \"Python Unicode Integration\". This article " "will simply cover the most significant points about the Unicode interfaces." msgstr "" #: ../Doc/whatsnew/2.0.rst:155 msgid "" "In Python source code, Unicode strings are written as ``u\"string\"``. " "Arbitrary Unicode characters can be written using a new escape sequence, ``" "\\uHHHH``, where *HHHH* is a 4-digit hexadecimal number from 0000 to FFFF. " "The existing ``\\xHHHH`` escape sequence can also be used, and octal escapes " "can be used for characters up to U+01FF, which is represented by ``\\777``." msgstr "" #: ../Doc/whatsnew/2.0.rst:161 msgid "" "Unicode strings, just like regular strings, are an immutable sequence type. " "They can be indexed and sliced, but not modified in place. Unicode strings " "have an ``encode( [encoding] )`` method that returns an 8-bit string in the " "desired encoding. Encodings are named by strings, such as ``'ascii'``, " "``'utf-8'``, ``'iso-8859-1'``, or whatever. A codec API is defined for " "implementing and registering new encodings that are then available " "throughout a Python program. If an encoding isn't specified, the default " "encoding is usually 7-bit ASCII, though it can be changed for your Python " "installation by calling the ``sys.setdefaultencoding(encoding)`` function in " "a customized version of :file:`site.py`." msgstr "" #: ../Doc/whatsnew/2.0.rst:172 msgid "" "Combining 8-bit and Unicode strings always coerces to Unicode, using the " "default ASCII encoding; the result of ``'a' + u'bc'`` is ``u'abc'``." msgstr "" #: ../Doc/whatsnew/2.0.rst:175 msgid "" "New built-in functions have been added, and existing built-ins modified to " "support Unicode:" msgstr "" "De nouvelles fonctions primitives ont été ajoutées, et des fonctions " "existantes ont été modifiées pour supporter Unicode :" #: ../Doc/whatsnew/2.0.rst:178 msgid "" "``unichr(ch)`` returns a Unicode string 1 character long, containing the " "character *ch*." msgstr "" "``unichr(ch)`` retourne une chaîne Unicode de longueur 1, contenant le " "caractère *ch*." #: ../Doc/whatsnew/2.0.rst:181 msgid "" "``ord(u)``, where *u* is a 1-character regular or Unicode string, returns " "the number of the character as an integer." msgstr "" "``ord(u)``, quand *u* est une chaîne normale ou Unicode de longueur 1, " "retourne un entier représentant le nombre de caractères." #: ../Doc/whatsnew/2.0.rst:184 msgid "" "``unicode(string [, encoding] [, errors] )`` creates a Unicode string from " "an 8-bit string. ``encoding`` is a string naming the encoding to use. The " "``errors`` parameter specifies the treatment of characters that are invalid " "for the current encoding; passing ``'strict'`` as the value causes an " "exception to be raised on any encoding error, while ``'ignore'`` causes " "errors to be silently ignored and ``'replace'`` uses U+FFFD, the official " "replacement character, in case of any problems." msgstr "" #: ../Doc/whatsnew/2.0.rst:192 msgid "" "The ``exec`` statement, and various built-ins such as ``eval()``, " "``getattr()``, and ``setattr()`` will also accept Unicode strings as well as " "regular strings. (It's possible that the process of fixing this missed some " "built-ins; if you find a built-in function that accepts strings but doesn't " "accept Unicode strings at all, please report it as a bug.)" msgstr "" #: ../Doc/whatsnew/2.0.rst:198 msgid "" "A new module, :mod:`unicodedata`, provides an interface to Unicode character " "properties. For example, ``unicodedata.category(u'A')`` returns the 2-" "character string 'Lu', the 'L' denoting it's a letter, and 'u' meaning that " "it's uppercase. ``unicodedata.bidirectional(u'\\u0660')`` returns 'AN', " "meaning that U+0660 is an Arabic number." msgstr "" #: ../Doc/whatsnew/2.0.rst:204 msgid "" "The :mod:`codecs` module contains functions to look up existing encodings " "and register new ones. Unless you want to implement a new encoding, you'll " "most often use the ``codecs.lookup(encoding)`` function, which returns a 4-" "element tuple: ``(encode_func, decode_func, stream_reader, stream_writer)``." msgstr "" #: ../Doc/whatsnew/2.0.rst:209 msgid "" "*encode_func* is a function that takes a Unicode string, and returns a 2-" "tuple ``(string, length)``. *string* is an 8-bit string containing a " "portion (perhaps all) of the Unicode string converted into the given " "encoding, and *length* tells you how much of the Unicode string was " "converted." msgstr "" #: ../Doc/whatsnew/2.0.rst:214 msgid "" "*decode_func* is the opposite of *encode_func*, taking an 8-bit string and " "returning a 2-tuple ``(ustring, length)``, consisting of the resulting " "Unicode string *ustring* and the integer *length* telling how much of the 8-" "bit string was consumed." msgstr "" #: ../Doc/whatsnew/2.0.rst:219 msgid "" "*stream_reader* is a class that supports decoding input from a stream. " "*stream_reader(file_obj)* returns an object that supports the :meth:`read`, :" "meth:`readline`, and :meth:`readlines` methods. These methods will all " "translate from the given encoding and return Unicode strings." msgstr "" #: ../Doc/whatsnew/2.0.rst:224 msgid "" "*stream_writer*, similarly, is a class that supports encoding output to a " "stream. *stream_writer(file_obj)* returns an object that supports the :meth:" "`write` and :meth:`writelines` methods. These methods expect Unicode " "strings, translating them to the given encoding on output." msgstr "" #: ../Doc/whatsnew/2.0.rst:229 msgid "" "For example, the following code writes a Unicode string into a file, " "encoding it as UTF-8::" msgstr "" "Par exemple, le code suivant écrit une chaîne Unicode dans un fichier, en " "l’encodant en UTF-8 ::" #: ../Doc/whatsnew/2.0.rst:243 msgid "The following code would then read UTF-8 input from the file::" msgstr "Le code suivant lirait ensuite le texte UTF-8 du fichier : ::" #: ../Doc/whatsnew/2.0.rst:249 msgid "" "Unicode-aware regular expressions are available through the :mod:`re` " "module, which has a new underlying implementation called SRE written by " "Fredrik Lundh of Secret Labs AB." msgstr "" "Des expressions rationnelles supportant l’Unicode sont disponibles dans le " "module :mod:`re`, qui a une implémentation sous-jacente appelée SRE écrite " "par Fredrik Lundh de Secret Labs AB." #: ../Doc/whatsnew/2.0.rst:253 msgid "" "A ``-U`` command line option was added which causes the Python compiler to " "interpret all string literals as Unicode string literals. This is intended " "to be used in testing and future-proofing your Python code, since some " "future version of Python may drop support for 8-bit strings and provide only " "Unicode strings." msgstr "" #: ../Doc/whatsnew/2.0.rst:262 msgid "List Comprehensions" msgstr "Compréhensions de listes" #: ../Doc/whatsnew/2.0.rst:264 msgid "" "Lists are a workhorse data type in Python, and many programs manipulate a " "list at some point. Two common operations on lists are to loop over them, " "and either pick out the elements that meet a certain criterion, or apply " "some function to each element. For example, given a list of strings, you " "might want to pull out all the strings containing a given substring, or " "strip off trailing whitespace from each line." msgstr "" #: ../Doc/whatsnew/2.0.rst:271 msgid "" "The existing :func:`map` and :func:`filter` functions can be used for this " "purpose, but they require a function as one of their arguments. This is " "fine if there's an existing built-in function that can be passed directly, " "but if there isn't, you have to create a little function to do the required " "work, and Python's scoping rules make the result ugly if the little function " "needs additional information. Take the first example in the previous " "paragraph, finding all the strings in the list containing a given " "substring. You could write the following to do it::" msgstr "" #: ../Doc/whatsnew/2.0.rst:286 msgid "" "Because of Python's scoping rules, a default argument is used so that the " "anonymous function created by the :keyword:`lambda` statement knows what " "substring is being searched for. List comprehensions make this cleaner::" msgstr "" #: ../Doc/whatsnew/2.0.rst:292 msgid "List comprehensions have the form::" msgstr "Les compréhensions de liste sont de la forme suivante ::" #: ../Doc/whatsnew/2.0.rst:299 msgid "" "The :keyword:`for`...\\ :keyword:`in` clauses contain the sequences to be " "iterated over. The sequences do not have to be the same length, because " "they are *not* iterated over in parallel, but from left to right; this is " "explained more clearly in the following paragraphs. The elements of the " "generated list will be the successive values of *expression*. The final :" "keyword:`if` clause is optional; if present, *expression* is only evaluated " "and added to the result if *condition* is true." msgstr "" #: ../Doc/whatsnew/2.0.rst:307 msgid "" "To make the semantics very clear, a list comprehension is equivalent to the " "following Python code::" msgstr "" "Pour que la sémantique soit très claire, une compréhension de liste est " "équivalente au code Python suivant ::" #: ../Doc/whatsnew/2.0.rst:319 msgid "" "This means that when there are multiple :keyword:`for`...\\ :keyword:`in` " "clauses, the resulting list will be equal to the product of the lengths of " "all the sequences. If you have two lists of length 3, the output list is 9 " "elements long::" msgstr "" #: ../Doc/whatsnew/2.0.rst:330 msgid "" "To avoid introducing an ambiguity into Python's grammar, if *expression* is " "creating a tuple, it must be surrounded with parentheses. The first list " "comprehension below is a syntax error, while the second one is correct::" msgstr "" #: ../Doc/whatsnew/2.0.rst:339 msgid "" "The idea of list comprehensions originally comes from the functional " "programming language Haskell (https://www.haskell.org). Greg Ewing argued " "most effectively for adding them to Python and wrote the initial list " "comprehension patch, which was then discussed for a seemingly endless time " "on the python-dev mailing list and kept up-to-date by Skip Montanaro." msgstr "" #: ../Doc/whatsnew/2.0.rst:349 msgid "Augmented Assignment" msgstr "" #: ../Doc/whatsnew/2.0.rst:351 msgid "" "Augmented assignment operators, another long-requested feature, have been " "added to Python 2.0. Augmented assignment operators include ``+=``, ``-=``, " "``*=``, and so forth. For example, the statement ``a += 2`` increments the " "value of the variable ``a`` by 2, equivalent to the slightly lengthier ``a " "= a + 2``." msgstr "" #: ../Doc/whatsnew/2.0.rst:356 msgid "" "The full list of supported assignment operators is ``+=``, ``-=``, ``*=``, " "``/=``, ``%=``, ``**=``, ``&=``, ``|=``, ``^=``, ``>>=``, and ``<<=``. " "Python classes can override the augmented assignment operators by defining " "methods named :meth:`__iadd__`, :meth:`__isub__`, etc. For example, the " "following :class:`Number` class stores a number and supports using += to " "create a new instance with an incremented value." msgstr "" #: ../Doc/whatsnew/2.0.rst:377 msgid "" "The :meth:`__iadd__` special method is called with the value of the " "increment, and should return a new instance with an appropriately modified " "value; this return value is bound as the new value of the variable on the " "left-hand side." msgstr "" #: ../Doc/whatsnew/2.0.rst:381 msgid "" "Augmented assignment operators were first introduced in the C programming " "language, and most C-derived languages, such as :program:`awk`, C++, Java, " "Perl, and PHP also support them. The augmented assignment patch was " "implemented by Thomas Wouters." msgstr "" #: ../Doc/whatsnew/2.0.rst:390 msgid "String Methods" msgstr "Méthodes de chaînes de caractères" #: ../Doc/whatsnew/2.0.rst:392 msgid "" "Until now string-manipulation functionality was in the :mod:`string` module, " "which was usually a front-end for the :mod:`strop` module written in C. The " "addition of Unicode posed a difficulty for the :mod:`strop` module, because " "the functions would all need to be rewritten in order to accept either 8-bit " "or Unicode strings. For functions such as :func:`string.replace`, which " "takes 3 string arguments, that means eight possible permutations, and " "correspondingly complicated code." msgstr "" #: ../Doc/whatsnew/2.0.rst:400 msgid "" "Instead, Python 2.0 pushes the problem onto the string type, making string " "manipulation functionality available through methods on both 8-bit strings " "and Unicode strings. ::" msgstr "" #: ../Doc/whatsnew/2.0.rst:411 msgid "" "One thing that hasn't changed, a noteworthy April Fools' joke " "notwithstanding, is that Python strings are immutable. Thus, the string " "methods return new strings, and do not modify the string on which they " "operate." msgstr "" #: ../Doc/whatsnew/2.0.rst:415 msgid "" "The old :mod:`string` module is still around for backwards compatibility, " "but it mostly acts as a front-end to the new string methods." msgstr "" #: ../Doc/whatsnew/2.0.rst:418 msgid "" "Two methods which have no parallel in pre-2.0 versions, although they did " "exist in JPython for quite some time, are :meth:`startswith` and :meth:" "`endswith`. ``s.startswith(t)`` is equivalent to ``s[:len(t)] == t``, while " "``s.endswith(t)`` is equivalent to ``s[-len(t):] == t``." msgstr "" #: ../Doc/whatsnew/2.0.rst:423 msgid "" "One other method which deserves special mention is :meth:`join`. The :meth:" "`join` method of a string receives one parameter, a sequence of strings, and " "is equivalent to the :func:`string.join` function from the old :mod:`string` " "module, with the arguments reversed. In other words, ``s.join(seq)`` is " "equivalent to the old ``string.join(seq, s)``." msgstr "" #: ../Doc/whatsnew/2.0.rst:433 msgid "Garbage Collection of Cycles" msgstr "" #: ../Doc/whatsnew/2.0.rst:435 msgid "" "The C implementation of Python uses reference counting to implement garbage " "collection. Every Python object maintains a count of the number of " "references pointing to itself, and adjusts the count as references are " "created or destroyed. Once the reference count reaches zero, the object is " "no longer accessible, since you need to have a reference to an object to " "access it, and if the count is zero, no references exist any longer." msgstr "" #: ../Doc/whatsnew/2.0.rst:442 msgid "" "Reference counting has some pleasant properties: it's easy to understand and " "implement, and the resulting implementation is portable, fairly fast, and " "reacts well with other libraries that implement their own memory handling " "schemes. The major problem with reference counting is that it sometimes " "doesn't realise that objects are no longer accessible, resulting in a memory " "leak. This happens when there are cycles of references." msgstr "" #: ../Doc/whatsnew/2.0.rst:449 msgid "" "Consider the simplest possible cycle, a class instance which has a " "reference to itself::" msgstr "" #: ../Doc/whatsnew/2.0.rst:455 msgid "" "After the above two lines of code have been executed, the reference count of " "``instance`` is 2; one reference is from the variable named ``'instance'``, " "and the other is from the ``myself`` attribute of the instance." msgstr "" #: ../Doc/whatsnew/2.0.rst:459 msgid "" "If the next line of code is ``del instance``, what happens? The reference " "count of ``instance`` is decreased by 1, so it has a reference count of 1; " "the reference in the ``myself`` attribute still exists. Yet the instance is " "no longer accessible through Python code, and it could be deleted. Several " "objects can participate in a cycle if they have references to each other, " "causing all of the objects to be leaked." msgstr "" #: ../Doc/whatsnew/2.0.rst:466 msgid "" "Python 2.0 fixes this problem by periodically executing a cycle detection " "algorithm which looks for inaccessible cycles and deletes the objects " "involved. A new :mod:`gc` module provides functions to perform a garbage " "collection, obtain debugging statistics, and tuning the collector's " "parameters." msgstr "" #: ../Doc/whatsnew/2.0.rst:471 msgid "" "Running the cycle detection algorithm takes some time, and therefore will " "result in some additional overhead. It is hoped that after we've gotten " "experience with the cycle collection from using 2.0, Python 2.1 will be able " "to minimize the overhead with careful tuning. It's not yet obvious how much " "performance is lost, because benchmarking this is tricky and depends " "crucially on how often the program creates and destroys objects. The " "detection of cycles can be disabled when Python is compiled, if you can't " "afford even a tiny speed penalty or suspect that the cycle collection is " "buggy, by specifying the :option:`--without-cycle-gc` switch when running " "the :program:`configure` script." msgstr "" #: ../Doc/whatsnew/2.0.rst:482 msgid "" "Several people tackled this problem and contributed to a solution. An early " "implementation of the cycle detection approach was written by Toby Kelsey. " "The current algorithm was suggested by Eric Tiedemann during a visit to " "CNRI, and Guido van Rossum and Neil Schemenauer wrote two different " "implementations, which were later integrated by Neil. Lots of other people " "offered suggestions along the way; the March 2000 archives of the python-dev " "mailing list contain most of the relevant discussion, especially in the " "threads titled \"Reference cycle collection for Python\" and \"Finalization " "again\"." msgstr "" #: ../Doc/whatsnew/2.0.rst:495 msgid "Other Core Changes" msgstr "" #: ../Doc/whatsnew/2.0.rst:497 msgid "" "Various minor changes have been made to Python's syntax and built-in " "functions. None of the changes are very far-reaching, but they're handy " "conveniences." msgstr "" #: ../Doc/whatsnew/2.0.rst:502 msgid "Minor Language Changes" msgstr "Changements mineurs du langage" #: ../Doc/whatsnew/2.0.rst:504 msgid "" "A new syntax makes it more convenient to call a given function with a tuple " "of arguments and/or a dictionary of keyword arguments. In Python 1.5 and " "earlier, you'd use the :func:`apply` built-in function: ``apply(f, args, " "kw)`` calls the function :func:`f` with the argument tuple *args* and the " "keyword arguments in the dictionary *kw*. :func:`apply` is the same in " "2.0, but thanks to a patch from Greg Ewing, ``f(*args, **kw)`` is a shorter " "and clearer way to achieve the same effect. This syntax is symmetrical with " "the syntax for defining functions::" msgstr "" #: ../Doc/whatsnew/2.0.rst:518 msgid "" "The ``print`` statement can now have its output directed to a file-like " "object by following the ``print`` with ``>> file``, similar to the " "redirection operator in Unix shells. Previously you'd either have to use " "the :meth:`write` method of the file-like object, which lacks the " "convenience and simplicity of ``print``, or you could assign a new value to " "``sys.stdout`` and then restore the old value. For sending output to " "standard error, it's much easier to write this::" msgstr "" #: ../Doc/whatsnew/2.0.rst:528 msgid "" "Modules can now be renamed on importing them, using the syntax ``import " "module as name`` or ``from module import name as othername``. The patch was " "submitted by Thomas Wouters." msgstr "" #: ../Doc/whatsnew/2.0.rst:532 msgid "" "A new format style is available when using the ``%`` operator; '%r' will " "insert the :func:`repr` of its argument. This was also added from symmetry " "considerations, this time for symmetry with the existing '%s' format style, " "which inserts the :func:`str` of its argument. For example, ``'%r %s' % " "('abc', 'abc')`` returns a string containing ``'abc' abc``." msgstr "" #: ../Doc/whatsnew/2.0.rst:538 msgid "" "Previously there was no way to implement a class that overrode Python's " "built-in :keyword:`in` operator and implemented a custom version. ``obj in " "seq`` returns true if *obj* is present in the sequence *seq*; Python " "computes this by simply trying every index of the sequence until either " "*obj* is found or an :exc:`IndexError` is encountered. Moshe Zadka " "contributed a patch which adds a :meth:`__contains__` magic method for " "providing a custom implementation for :keyword:`in`. Additionally, new built-" "in objects written in C can define what :keyword:`in` means for them via a " "new slot in the sequence protocol." msgstr "" #: ../Doc/whatsnew/2.0.rst:547 msgid "" "Earlier versions of Python used a recursive algorithm for deleting objects. " "Deeply nested data structures could cause the interpreter to fill up the C " "stack and crash; Christian Tismer rewrote the deletion logic to fix this " "problem. On a related note, comparing recursive objects recursed infinitely " "and crashed; Jeremy Hylton rewrote the code to no longer crash, producing a " "useful result instead. For example, after this code::" msgstr "" #: ../Doc/whatsnew/2.0.rst:559 msgid "" "The comparison ``a==b`` returns true, because the two recursive data " "structures are isomorphic. See the thread \"trashcan and PR#7\" in the April " "2000 archives of the python-dev mailing list for the discussion leading up " "to this implementation, and some useful relevant links. Note that " "comparisons can now also raise exceptions. In earlier versions of Python, a " "comparison operation such as ``cmp(a,b)`` would always produce an answer, " "even if a user-defined :meth:`__cmp__` method encountered an error, since " "the resulting exception would simply be silently swallowed." msgstr "" #: ../Doc/whatsnew/2.0.rst:571 msgid "" "Work has been done on porting Python to 64-bit Windows on the Itanium " "processor, mostly by Trent Mick of ActiveState. (Confusingly, ``sys." "platform`` is still ``'win32'`` on Win64 because it seems that for ease of " "porting, MS Visual C++ treats code as 32 bit on Itanium.) PythonWin also " "supports Windows CE; see the Python CE page at http://pythonce.sourceforge." "net/ for more information." msgstr "" #: ../Doc/whatsnew/2.0.rst:577 msgid "" "Another new platform is Darwin/MacOS X; initial support for it is in Python " "2.0. Dynamic loading works, if you specify \"configure --with-dyld --with-" "suffix=.x\". Consult the README in the Python source distribution for more " "instructions." msgstr "" #: ../Doc/whatsnew/2.0.rst:581 msgid "" "An attempt has been made to alleviate one of Python's warts, the often-" "confusing :exc:`NameError` exception when code refers to a local variable " "before the variable has been assigned a value. For example, the following " "code raises an exception on the ``print`` statement in both 1.5.2 and 2.0; " "in 1.5.2 a :exc:`NameError` exception is raised, while 2.0 raises a new :exc:" "`UnboundLocalError` exception. :exc:`UnboundLocalError` is a subclass of :" "exc:`NameError`, so any existing code that expects :exc:`NameError` to be " "raised should still work. ::" msgstr "" #: ../Doc/whatsnew/2.0.rst:595 msgid "" "Two new exceptions, :exc:`TabError` and :exc:`IndentationError`, have been " "introduced. They're both subclasses of :exc:`SyntaxError`, and are raised " "when Python code is found to be improperly indented." msgstr "" #: ../Doc/whatsnew/2.0.rst:601 msgid "Changes to Built-in Functions" msgstr "Changements concernant les fonctions primitives" #: ../Doc/whatsnew/2.0.rst:603 msgid "" "A new built-in, ``zip(seq1, seq2, ...)``, has been added. :func:`zip` " "returns a list of tuples where each tuple contains the i-th element from " "each of the argument sequences. The difference between :func:`zip` and " "``map(None, seq1, seq2)`` is that :func:`map` pads the sequences with " "``None`` if the sequences aren't all of the same length, while :func:`zip` " "truncates the returned list to the length of the shortest argument sequence." msgstr "" #: ../Doc/whatsnew/2.0.rst:610 msgid "" "The :func:`int` and :func:`long` functions now accept an optional \"base\" " "parameter when the first argument is a string. ``int('123', 10)`` returns " "123, while ``int('123', 16)`` returns 291. ``int(123, 16)`` raises a :exc:" "`TypeError` exception with the message \"can't convert non-string with " "explicit base\"." msgstr "" #: ../Doc/whatsnew/2.0.rst:616 msgid "" "A new variable holding more detailed version information has been added to " "the :mod:`sys` module. ``sys.version_info`` is a tuple ``(major, minor, " "micro, level, serial)`` For example, in a hypothetical 2.0.1beta1, ``sys." "version_info`` would be ``(2, 0, 1, 'beta', 1)``. *level* is a string such " "as ``\"alpha\"``, ``\"beta\"``, or ``\"final\"`` for a final release." msgstr "" #: ../Doc/whatsnew/2.0.rst:622 msgid "" "Dictionaries have an odd new method, ``setdefault(key, default)``, which " "behaves similarly to the existing :meth:`get` method. However, if the key " "is missing, :meth:`setdefault` both returns the value of *default* as :meth:" "`get` would do, and also inserts it into the dictionary as the value for " "*key*. Thus, the following lines of code::" msgstr "" #: ../Doc/whatsnew/2.0.rst:633 msgid "" "can be reduced to a single ``return dict.setdefault(key, [])`` statement." msgstr "" #: ../Doc/whatsnew/2.0.rst:635 msgid "" "The interpreter sets a maximum recursion depth in order to catch runaway " "recursion before filling the C stack and causing a core dump or GPF.. " "Previously this limit was fixed when you compiled Python, but in 2.0 the " "maximum recursion depth can be read and modified using :func:`sys." "getrecursionlimit` and :func:`sys.setrecursionlimit`. The default value is " "1000, and a rough maximum value for a given platform can be found by running " "a new script, :file:`Misc/find_recursionlimit.py`." msgstr "" #: ../Doc/whatsnew/2.0.rst:647 msgid "Porting to 2.0" msgstr "" #: ../Doc/whatsnew/2.0.rst:649 msgid "" "New Python releases try hard to be compatible with previous releases, and " "the record has been pretty good. However, some changes are considered " "useful enough, usually because they fix initial design decisions that turned " "out to be actively mistaken, that breaking backward compatibility can't " "always be avoided. This section lists the changes in Python 2.0 that may " "cause old Python code to break." msgstr "" #: ../Doc/whatsnew/2.0.rst:656 msgid "" "The change which will probably break the most code is tightening up the " "arguments accepted by some methods. Some methods would take multiple " "arguments and treat them as a tuple, particularly various list methods such " "as :meth:`append` and :meth:`insert`. In earlier versions of Python, if " "``L`` is a list, ``L.append( 1,2 )`` appends the tuple ``(1,2)`` to the " "list. In Python 2.0 this causes a :exc:`TypeError` exception to be raised, " "with the message: 'append requires exactly 1 argument; 2 given'. The fix is " "to simply add an extra set of parentheses to pass both values as a tuple: " "``L.append( (1,2) )``." msgstr "" #: ../Doc/whatsnew/2.0.rst:665 msgid "" "The earlier versions of these methods were more forgiving because they used " "an old function in Python's C interface to parse their arguments; 2.0 " "modernizes them to use :func:`PyArg_ParseTuple`, the current argument " "parsing function, which provides more helpful error messages and treats " "multi-argument calls as errors. If you absolutely must use 2.0 but can't " "fix your code, you can edit :file:`Objects/listobject.c` and define the " "preprocessor symbol ``NO_STRICT_LIST_APPEND`` to preserve the old behaviour; " "this isn't recommended." msgstr "" #: ../Doc/whatsnew/2.0.rst:673 msgid "" "Some of the functions in the :mod:`socket` module are still forgiving in " "this way. For example, :func:`socket.connect( ('hostname', 25) )` is the " "correct form, passing a tuple representing an IP address, but :func:`socket." "connect( 'hostname', 25 )` also works. :func:`socket.connect_ex` and :func:" "`socket.bind` are similarly easy-going. 2.0alpha1 tightened these functions " "up, but because the documentation actually used the erroneous multiple " "argument form, many people wrote code which would break with the stricter " "checking. GvR backed out the changes in the face of public reaction, so for " "the :mod:`socket` module, the documentation was fixed and the multiple " "argument form is simply marked as deprecated; it *will* be tightened up " "again in a future Python version." msgstr "" #: ../Doc/whatsnew/2.0.rst:684 msgid "" "The ``\\x`` escape in string literals now takes exactly 2 hex digits. " "Previously it would consume all the hex digits following the 'x' and take " "the lowest 8 bits of the result, so ``\\x123456`` was equivalent to ``" "\\x56``." msgstr "" #: ../Doc/whatsnew/2.0.rst:688 msgid "" "The :exc:`AttributeError` and :exc:`NameError` exceptions have a more " "friendly error message, whose text will be something like ``'Spam' instance " "has no attribute 'eggs'`` or ``name 'eggs' is not defined``. Previously the " "error message was just the missing attribute name ``eggs``, and code written " "to take advantage of this fact will break in 2.0." msgstr "" #: ../Doc/whatsnew/2.0.rst:694 msgid "" "Some work has been done to make integers and long integers a bit more " "interchangeable. In 1.5.2, large-file support was added for Solaris, to " "allow reading files larger than 2 GiB; this made the :meth:`tell` method of " "file objects return a long integer instead of a regular integer. Some code " "would subtract two file offsets and attempt to use the result to multiply a " "sequence or slice a string, but this raised a :exc:`TypeError`. In 2.0, " "long integers can be used to multiply or slice a sequence, and it'll behave " "as you'd intuitively expect it to; ``3L * 'abc'`` produces 'abcabcabc', and " "``(0,1,2,3)[2L:4L]`` produces (2,3). Long integers can also be used in " "various contexts where previously only integers were accepted, such as in " "the :meth:`seek` method of file objects, and in the formats supported by the " "``%`` operator (``%d``, ``%i``, ``%x``, etc.). For example, ``\"%d\" % " "2L**64`` will produce the string ``18446744073709551616``." msgstr "" #: ../Doc/whatsnew/2.0.rst:708 msgid "" "The subtlest long integer change of all is that the :func:`str` of a long " "integer no longer has a trailing 'L' character, though :func:`repr` still " "includes it. The 'L' annoyed many people who wanted to print long integers " "that looked just like regular integers, since they had to go out of their " "way to chop off the character. This is no longer a problem in 2.0, but code " "which does ``str(longval)[:-1]`` and assumes the 'L' is there, will now lose " "the final digit." msgstr "" #: ../Doc/whatsnew/2.0.rst:716 msgid "" "Taking the :func:`repr` of a float now uses a different formatting precision " "than :func:`str`. :func:`repr` uses ``%.17g`` format string for C's :func:" "`sprintf`, while :func:`str` uses ``%.12g`` as before. The effect is that :" "func:`repr` may occasionally show more decimal places than :func:`str`, for " "certain numbers. For example, the number 8.1 can't be represented exactly " "in binary, so ``repr(8.1)`` is ``'8.0999999999999996'``, while str(8.1) is " "``'8.1'``." msgstr "" #: ../Doc/whatsnew/2.0.rst:724 msgid "" "The ``-X`` command-line option, which turned all standard exceptions into " "strings instead of classes, has been removed; the standard exceptions will " "now always be classes. The :mod:`exceptions` module containing the standard " "exceptions was translated from Python to a built-in C module, written by " "Barry Warsaw and Fredrik Lundh." msgstr "" #: ../Doc/whatsnew/2.0.rst:740 msgid "Extending/Embedding Changes" msgstr "" #: ../Doc/whatsnew/2.0.rst:742 msgid "" "Some of the changes are under the covers, and will only be apparent to " "people writing C extension modules or embedding a Python interpreter in a " "larger application. If you aren't dealing with Python's C API, you can " "safely skip this section." msgstr "" #: ../Doc/whatsnew/2.0.rst:747 msgid "" "The version number of the Python C API was incremented, so C extensions " "compiled for 1.5.2 must be recompiled in order to work with 2.0. On " "Windows, it's not possible for Python 2.0 to import a third party extension " "built for Python 1.5.x due to how Windows DLLs work, so Python will raise an " "exception and the import will fail." msgstr "" #: ../Doc/whatsnew/2.0.rst:753 msgid "" "Users of Jim Fulton's ExtensionClass module will be pleased to find out that " "hooks have been added so that ExtensionClasses are now supported by :func:" "`isinstance` and :func:`issubclass`. This means you no longer have to " "remember to write code such as ``if type(obj) == myExtensionClass``, but can " "use the more natural ``if isinstance(obj, myExtensionClass)``." msgstr "" #: ../Doc/whatsnew/2.0.rst:759 msgid "" "The :file:`Python/importdl.c` file, which was a mass of #ifdefs to support " "dynamic loading on many different platforms, was cleaned up and reorganised " "by Greg Stein. :file:`importdl.c` is now quite small, and platform-specific " "code has been moved into a bunch of :file:`Python/dynload_\\*.c` files. " "Another cleanup: there were also a number of :file:`my\\*.h` files in the " "Include/ directory that held various portability hacks; they've been merged " "into a single file, :file:`Include/pyport.h`." msgstr "" #: ../Doc/whatsnew/2.0.rst:767 msgid "" "Vladimir Marangozov's long-awaited malloc restructuring was completed, to " "make it easy to have the Python interpreter use a custom allocator instead " "of C's standard :func:`malloc`. For documentation, read the comments in :" "file:`Include/pymem.h` and :file:`Include/objimpl.h`. For the lengthy " "discussions during which the interface was hammered out, see the Web " "archives of the 'patches' and 'python-dev' lists at python.org." msgstr "" #: ../Doc/whatsnew/2.0.rst:774 msgid "" "Recent versions of the GUSI development environment for MacOS support POSIX " "threads. Therefore, Python's POSIX threading support now works on the " "Macintosh. Threading support using the user-space GNU ``pth`` library was " "also contributed." msgstr "" #: ../Doc/whatsnew/2.0.rst:779 msgid "" "Threading support on Windows was enhanced, too. Windows supports thread " "locks that use kernel objects only in case of contention; in the common case " "when there's no contention, they use simpler functions which are an order of " "magnitude faster. A threaded version of Python 1.5.2 on NT is twice as slow " "as an unthreaded version; with the 2.0 changes, the difference is only 10%. " "These improvements were contributed by Yakov Markovitch." msgstr "" #: ../Doc/whatsnew/2.0.rst:786 msgid "" "Python 2.0's source now uses only ANSI C prototypes, so compiling Python now " "requires an ANSI C compiler, and can no longer be done using a compiler that " "only supports K&R C." msgstr "" #: ../Doc/whatsnew/2.0.rst:790 msgid "" "Previously the Python virtual machine used 16-bit numbers in its bytecode, " "limiting the size of source files. In particular, this affected the maximum " "size of literal lists and dictionaries in Python source; occasionally people " "who are generating Python code would run into this limit. A patch by " "Charles G. Waldman raises the limit from ``2^16`` to ``2^{32}``." msgstr "" #: ../Doc/whatsnew/2.0.rst:796 msgid "" "Three new convenience functions intended for adding constants to a module's " "dictionary at module initialization time were added: :func:" "`PyModule_AddObject`, :func:`PyModule_AddIntConstant`, and :func:" "`PyModule_AddStringConstant`. Each of these functions takes a module " "object, a null-terminated C string containing the name to be added, and a " "third argument for the value to be assigned to the name. This third " "argument is, respectively, a Python object, a C long, or a C string." msgstr "" #: ../Doc/whatsnew/2.0.rst:804 msgid "" "A wrapper API was added for Unix-style signal handlers. :func:`PyOS_getsig` " "gets a signal handler and :func:`PyOS_setsig` will set a new handler." msgstr "" #: ../Doc/whatsnew/2.0.rst:811 msgid "Distutils: Making Modules Easy to Install" msgstr "" #: ../Doc/whatsnew/2.0.rst:813 msgid "" "Before Python 2.0, installing modules was a tedious affair -- there was no " "way to figure out automatically where Python is installed, or what compiler " "options to use for extension modules. Software authors had to go through an " "arduous ritual of editing Makefiles and configuration files, which only " "really work on Unix and leave Windows and MacOS unsupported. Python users " "faced wildly differing installation instructions which varied between " "different extension packages, which made administering a Python installation " "something of a chore." msgstr "" #: ../Doc/whatsnew/2.0.rst:821 msgid "" "The SIG for distribution utilities, shepherded by Greg Ward, has created the " "Distutils, a system to make package installation much easier. They form " "the :mod:`distutils` package, a new part of Python's standard library. In " "the best case, installing a Python module from source will require the same " "steps: first you simply mean unpack the tarball or zip archive, and the run " "\"``python setup.py install``\". The platform will be automatically " "detected, the compiler will be recognized, C extension modules will be " "compiled, and the distribution installed into the proper directory. " "Optional command-line arguments provide more control over the installation " "process, the distutils package offers many places to override defaults -- " "separating the build from the install, building or installing in non-default " "directories, and more." msgstr "" #: ../Doc/whatsnew/2.0.rst:833 msgid "" "In order to use the Distutils, you need to write a :file:`setup.py` script. " "For the simple case, when the software contains only .py files, a minimal :" "file:`setup.py` can be just a few lines long::" msgstr "" #: ../Doc/whatsnew/2.0.rst:841 msgid "" "The :file:`setup.py` file isn't much more complicated if the software " "consists of a few packages::" msgstr "" #: ../Doc/whatsnew/2.0.rst:848 msgid "" "A C extension can be the most complicated case; here's an example taken from " "the PyXML package::" msgstr "" #: ../Doc/whatsnew/2.0.rst:864 msgid "" "The Distutils can also take care of creating source and binary " "distributions. The \"sdist\" command, run by \"``python setup.py sdist``', " "builds a source distribution such as :file:`foo-1.0.tar.gz`. Adding new " "commands isn't difficult, \"bdist_rpm\" and \"bdist_wininst\" commands have " "already been contributed to create an RPM distribution and a Windows " "installer for the software, respectively. Commands to create other " "distribution formats such as Debian packages and Solaris :file:`.pkg` files " "are in various stages of development." msgstr "" #: ../Doc/whatsnew/2.0.rst:873 msgid "" "All this is documented in a new manual, *Distributing Python Modules*, that " "joins the basic set of Python documentation." msgstr "" #: ../Doc/whatsnew/2.0.rst:880 msgid "XML Modules" msgstr "Modules XML" #: ../Doc/whatsnew/2.0.rst:882 msgid "" "Python 1.5.2 included a simple XML parser in the form of the :mod:`xmllib` " "module, contributed by Sjoerd Mullender. Since 1.5.2's release, two " "different interfaces for processing XML have become common: SAX2 (version 2 " "of the Simple API for XML) provides an event-driven interface with some " "similarities to :mod:`xmllib`, and the DOM (Document Object Model) provides " "a tree-based interface, transforming an XML document into a tree of nodes " "that can be traversed and modified. Python 2.0 includes a SAX2 interface " "and a stripped- down DOM interface as part of the :mod:`xml` package. Here " "we will give a brief overview of these new interfaces; consult the Python " "documentation or the source code for complete details. The Python XML SIG is " "also working on improved documentation." msgstr "" #: ../Doc/whatsnew/2.0.rst:896 msgid "SAX2 Support" msgstr "Support de SAX2" #: ../Doc/whatsnew/2.0.rst:898 msgid "" "SAX defines an event-driven interface for parsing XML. To use SAX, you must " "write a SAX handler class. Handler classes inherit from various classes " "provided by SAX, and override various methods that will then be called by " "the XML parser. For example, the :meth:`startElement` and :meth:" "`endElement` methods are called for every starting and end tag encountered " "by the parser, the :meth:`characters` method is called for every chunk of " "character data, and so forth." msgstr "" #: ../Doc/whatsnew/2.0.rst:906 msgid "" "The advantage of the event-driven approach is that the whole document " "doesn't have to be resident in memory at any one time, which matters if you " "are processing really huge documents. However, writing the SAX handler " "class can get very complicated if you're trying to modify the document " "structure in some elaborate way." msgstr "" #: ../Doc/whatsnew/2.0.rst:912 msgid "" "For example, this little example program defines a handler that prints a " "message for every starting and ending tag, and then parses the file :file:" "`hamlet.xml` using it::" msgstr "" #: ../Doc/whatsnew/2.0.rst:935 msgid "" "For more information, consult the Python documentation, or the XML HOWTO at " "http://pyxml.sourceforge.net/topics/howto/xml-howto.html." msgstr "" #: ../Doc/whatsnew/2.0.rst:940 msgid "DOM Support" msgstr "Support du DOM" #: ../Doc/whatsnew/2.0.rst:942 msgid "" "The Document Object Model is a tree-based representation for an XML " "document. A top-level :class:`Document` instance is the root of the tree, " "and has a single child which is the top-level :class:`Element` instance. " "This :class:`Element` has children nodes representing character data and any " "sub-elements, which may have further children of their own, and so forth. " "Using the DOM you can traverse the resulting tree any way you like, access " "element and attribute values, insert and delete nodes, and convert the tree " "back into XML." msgstr "" #: ../Doc/whatsnew/2.0.rst:950 msgid "" "The DOM is useful for modifying XML documents, because you can create a DOM " "tree, modify it by adding new nodes or rearranging subtrees, and then " "produce a new XML document as output. You can also construct a DOM tree " "manually and convert it to XML, which can be a more flexible way of " "producing XML output than simply writing ````...\\ ```` to a " "file." msgstr "" #: ../Doc/whatsnew/2.0.rst:956 msgid "" "The DOM implementation included with Python lives in the :mod:`xml.dom." "minidom` module. It's a lightweight implementation of the Level 1 DOM with " "support for XML namespaces. The :func:`parse` and :func:`parseString` " "convenience functions are provided for generating a DOM tree::" msgstr "" #: ../Doc/whatsnew/2.0.rst:964 msgid "" "``doc`` is a :class:`Document` instance. :class:`Document`, like all the " "other DOM classes such as :class:`Element` and :class:`Text`, is a subclass " "of the :class:`Node` base class. All the nodes in a DOM tree therefore " "support certain common methods, such as :meth:`toxml` which returns a string " "containing the XML representation of the node and its children. Each class " "also has special methods of its own; for example, :class:`Element` and :" "class:`Document` instances have a method to find all child elements with a " "given tag name. Continuing from the previous 2-line example::" msgstr "" #: ../Doc/whatsnew/2.0.rst:977 msgid "For the *Hamlet* XML file, the above few lines output::" msgstr "" #: ../Doc/whatsnew/2.0.rst:982 msgid "" "The root element of the document is available as ``doc.documentElement``, " "and its children can be easily modified by deleting, adding, or removing " "nodes::" msgstr "" #: ../Doc/whatsnew/2.0.rst:997 msgid "" "Again, I will refer you to the Python documentation for a complete listing " "of the different :class:`Node` classes and their various methods." msgstr "" #: ../Doc/whatsnew/2.0.rst:1002 msgid "Relationship to PyXML" msgstr "" #: ../Doc/whatsnew/2.0.rst:1004 msgid "" "The XML Special Interest Group has been working on XML-related Python code " "for a while. Its code distribution, called PyXML, is available from the " "SIG's Web pages at https://www.python.org/community/sigs/current/xml-sig. " "The PyXML distribution also used the package name ``xml``. If you've " "written programs that used PyXML, you're probably wondering about its " "compatibility with the 2.0 :mod:`xml` package." msgstr "" #: ../Doc/whatsnew/2.0.rst:1010 msgid "" "The answer is that Python 2.0's :mod:`xml` package isn't compatible with " "PyXML, but can be made compatible by installing a recent version PyXML. " "Many applications can get by with the XML support that is included with " "Python 2.0, but more complicated applications will require that the full " "PyXML package will be installed. When installed, PyXML versions 0.6.0 or " "greater will replace the :mod:`xml` package shipped with Python, and will be " "a strict superset of the standard package, adding a bunch of additional " "features. Some of the additional features in PyXML include:" msgstr "" #: ../Doc/whatsnew/2.0.rst:1019 msgid "4DOM, a full DOM implementation from FourThought, Inc." msgstr "" #: ../Doc/whatsnew/2.0.rst:1021 msgid "The xmlproc validating parser, written by Lars Marius Garshol." msgstr "" #: ../Doc/whatsnew/2.0.rst:1023 msgid "The :mod:`sgmlop` parser accelerator module, written by Fredrik Lundh." msgstr "" #: ../Doc/whatsnew/2.0.rst:1029 msgid "Module changes" msgstr "" #: ../Doc/whatsnew/2.0.rst:1031 msgid "" "Lots of improvements and bugfixes were made to Python's extensive standard " "library; some of the affected modules include :mod:`readline`, :mod:" "`ConfigParser`, :mod:`cgi`, :mod:`calendar`, :mod:`posix`, :mod:`readline`, :" "mod:`xmllib`, :mod:`aifc`, :mod:`chunk, wave`, :mod:`random`, :mod:`shelve`, " "and :mod:`nntplib`. Consult the CVS logs for the exact patch-by-patch " "details." msgstr "" #: ../Doc/whatsnew/2.0.rst:1037 msgid "" "Brian Gallew contributed OpenSSL support for the :mod:`socket` module. " "OpenSSL is an implementation of the Secure Socket Layer, which encrypts the " "data being sent over a socket. When compiling Python, you can edit :file:" "`Modules/Setup` to include SSL support, which adds an additional function to " "the :mod:`socket` module: ``socket.ssl(socket, keyfile, certfile)``, which " "takes a socket object and returns an SSL socket. The :mod:`httplib` and :" "mod:`urllib` modules were also changed to support ``https://`` URLs, though " "no one has implemented FTP or SMTP over SSL." msgstr "" #: ../Doc/whatsnew/2.0.rst:1046 msgid "" "The :mod:`httplib` module has been rewritten by Greg Stein to support " "HTTP/1.1. Backward compatibility with the 1.5 version of :mod:`httplib` is " "provided, though using HTTP/1.1 features such as pipelining will require " "rewriting code to use a different set of interfaces." msgstr "" #: ../Doc/whatsnew/2.0.rst:1051 msgid "" "The :mod:`Tkinter` module now supports Tcl/Tk version 8.1, 8.2, or 8.3, and " "support for the older 7.x versions has been dropped. The Tkinter module now " "supports displaying Unicode strings in Tk widgets. Also, Fredrik Lundh " "contributed an optimization which makes operations like ``create_line`` and " "``create_polygon`` much faster, especially when using lots of coordinates." msgstr "" #: ../Doc/whatsnew/2.0.rst:1057 msgid "" "The :mod:`curses` module has been greatly extended, starting from Oliver " "Andrich's enhanced version, to provide many additional functions from " "ncurses and SYSV curses, such as colour, alternative character set support, " "pads, and mouse support. This means the module is no longer compatible with " "operating systems that only have BSD curses, but there don't seem to be any " "currently maintained OSes that fall into this category." msgstr "" #: ../Doc/whatsnew/2.0.rst:1064 msgid "" "As mentioned in the earlier discussion of 2.0's Unicode support, the " "underlying implementation of the regular expressions provided by the :mod:" "`re` module has been changed. SRE, a new regular expression engine written " "by Fredrik Lundh and partially funded by Hewlett Packard, supports matching " "against both 8-bit strings and Unicode strings." msgstr "" #: ../Doc/whatsnew/2.0.rst:1074 msgid "New modules" msgstr "Nouveaux modules" #: ../Doc/whatsnew/2.0.rst:1076 msgid "" "A number of new modules were added. We'll simply list them with brief " "descriptions; consult the 2.0 documentation for the details of a particular " "module." msgstr "" #: ../Doc/whatsnew/2.0.rst:1080 msgid "" ":mod:`atexit`: For registering functions to be called before the Python " "interpreter exits. Code that currently sets ``sys.exitfunc`` directly should " "be changed to use the :mod:`atexit` module instead, importing :mod:`atexit` " "and calling :func:`atexit.register` with the function to be called on exit. " "(Contributed by Skip Montanaro.)" msgstr "" #: ../Doc/whatsnew/2.0.rst:1086 msgid "" ":mod:`codecs`, :mod:`encodings`, :mod:`unicodedata`: Added as part of the " "new Unicode support." msgstr "" #: ../Doc/whatsnew/2.0.rst:1089 msgid "" ":mod:`filecmp`: Supersedes the old :mod:`cmp`, :mod:`cmpcache` and :mod:" "`dircmp` modules, which have now become deprecated. (Contributed by Gordon " "MacMillan and Moshe Zadka.)" msgstr "" #: ../Doc/whatsnew/2.0.rst:1093 msgid "" ":mod:`gettext`: This module provides internationalization (I18N) and " "localization (L10N) support for Python programs by providing an interface to " "the GNU gettext message catalog library. (Integrated by Barry Warsaw, from " "separate contributions by Martin von Löwis, Peter Funk, and James " "Henstridge.)" msgstr "" #: ../Doc/whatsnew/2.0.rst:1098 msgid "" ":mod:`linuxaudiodev`: Support for the :file:`/dev/audio` device on Linux, a " "twin to the existing :mod:`sunaudiodev` module. (Contributed by Peter Bosch, " "with fixes by Jeremy Hylton.)" msgstr "" #: ../Doc/whatsnew/2.0.rst:1102 msgid "" ":mod:`mmap`: An interface to memory-mapped files on both Windows and Unix. " "A file's contents can be mapped directly into memory, at which point it " "behaves like a mutable string, so its contents can be read and modified. " "They can even be passed to functions that expect ordinary strings, such as " "the :mod:`re` module. (Contributed by Sam Rushing, with some extensions by A." "M. Kuchling.)" msgstr "" #: ../Doc/whatsnew/2.0.rst:1108 msgid "" ":mod:`pyexpat`: An interface to the Expat XML parser. (Contributed by Paul " "Prescod.)" msgstr "" #: ../Doc/whatsnew/2.0.rst:1111 msgid "" ":mod:`robotparser`: Parse a :file:`robots.txt` file, which is used for " "writing Web spiders that politely avoid certain areas of a Web site. The " "parser accepts the contents of a :file:`robots.txt` file, builds a set of " "rules from it, and can then answer questions about the fetchability of a " "given URL. (Contributed by Skip Montanaro.)" msgstr "" #: ../Doc/whatsnew/2.0.rst:1117 msgid "" ":mod:`tabnanny`: A module/script to check Python source code for ambiguous " "indentation. (Contributed by Tim Peters.)" msgstr "" #: ../Doc/whatsnew/2.0.rst:1120 msgid "" ":mod:`UserString`: A base class useful for deriving objects that behave like " "strings." msgstr "" #: ../Doc/whatsnew/2.0.rst:1123 msgid "" ":mod:`webbrowser`: A module that provides a platform independent way to " "launch a web browser on a specific URL. For each platform, various browsers " "are tried in a specific order. The user can alter which browser is launched " "by setting the *BROWSER* environment variable. (Originally inspired by Eric " "S. Raymond's patch to :mod:`urllib` which added similar functionality, but " "the final module comes from code originally implemented by Fred Drake as :" "file:`Tools/idle/BrowserControl.py`, and adapted for the standard library by " "Fred.)" msgstr "" #: ../Doc/whatsnew/2.0.rst:1132 msgid "" ":mod:`_winreg`: An interface to the Windows registry. :mod:`_winreg` is an " "adaptation of functions that have been part of PythonWin since 1995, but has " "now been added to the core distribution, and enhanced to support Unicode. :" "mod:`_winreg` was written by Bill Tutt and Mark Hammond." msgstr "" #: ../Doc/whatsnew/2.0.rst:1137 msgid "" ":mod:`zipfile`: A module for reading and writing ZIP-format archives. These " "are archives produced by :program:`PKZIP` on DOS/Windows or :program:`zip` " "on Unix, not to be confused with :program:`gzip`\\ -format files (which are " "supported by the :mod:`gzip` module) (Contributed by James C. Ahlstrom.)" msgstr "" #: ../Doc/whatsnew/2.0.rst:1142 msgid "" ":mod:`imputil`: A module that provides a simpler way for writing customized " "import hooks, in comparison to the existing :mod:`ihooks` module. " "(Implemented by Greg Stein, with much discussion on python-dev along the " "way.)" msgstr "" #: ../Doc/whatsnew/2.0.rst:1150 msgid "IDLE Improvements" msgstr "" #: ../Doc/whatsnew/2.0.rst:1152 msgid "" "IDLE is the official Python cross-platform IDE, written using Tkinter. " "Python 2.0 includes IDLE 0.6, which adds a number of new features and " "improvements. A partial list:" msgstr "" #: ../Doc/whatsnew/2.0.rst:1156 msgid "" "UI improvements and optimizations, especially in the area of syntax " "highlighting and auto-indentation." msgstr "" #: ../Doc/whatsnew/2.0.rst:1159 msgid "" "The class browser now shows more information, such as the top level " "functions in a module." msgstr "" #: ../Doc/whatsnew/2.0.rst:1162 msgid "" "Tab width is now a user settable option. When opening an existing Python " "file, IDLE automatically detects the indentation conventions, and adapts." msgstr "" #: ../Doc/whatsnew/2.0.rst:1165 msgid "" "There is now support for calling browsers on various platforms, used to open " "the Python documentation in a browser." msgstr "" #: ../Doc/whatsnew/2.0.rst:1168 msgid "" "IDLE now has a command line, which is largely similar to the vanilla Python " "interpreter." msgstr "" #: ../Doc/whatsnew/2.0.rst:1171 msgid "Call tips were added in many places." msgstr "" #: ../Doc/whatsnew/2.0.rst:1173 msgid "IDLE can now be installed as a package." msgstr "" #: ../Doc/whatsnew/2.0.rst:1175 msgid "In the editor window, there is now a line/column bar at the bottom." msgstr "" #: ../Doc/whatsnew/2.0.rst:1177 msgid "" "Three new keystroke commands: Check module (:kbd:`Alt-F5`), Import module (:" "kbd:`F5`) and Run script (:kbd:`Ctrl-F5`)." msgstr "" #: ../Doc/whatsnew/2.0.rst:1184 msgid "Deleted and Deprecated Modules" msgstr "" #: ../Doc/whatsnew/2.0.rst:1186 msgid "" "A few modules have been dropped because they're obsolete, or because there " "are now better ways to do the same thing. The :mod:`stdwin` module is gone; " "it was for a platform-independent windowing toolkit that's no longer " "developed." msgstr "" #: ../Doc/whatsnew/2.0.rst:1190 msgid "" "A number of modules have been moved to the :file:`lib-old` subdirectory: :" "mod:`cmp`, :mod:`cmpcache`, :mod:`dircmp`, :mod:`dump`, :mod:`find`, :mod:" "`grep`, :mod:`packmail`, :mod:`poly`, :mod:`util`, :mod:`whatsound`, :mod:" "`zmod`. If you have code which relies on a module that's been moved to :" "file:`lib-old`, you can simply add that directory to ``sys.path`` to get " "them back, but you're encouraged to update any code that uses these modules." msgstr "" #: ../Doc/whatsnew/2.0.rst:1199 ../Doc/whatsnew/2.1.rst:789 #: ../Doc/whatsnew/2.2.rst:1260 ../Doc/whatsnew/2.3.rst:2077 #: ../Doc/whatsnew/2.4.rst:1559 ../Doc/whatsnew/2.5.rst:2280 #: ../Doc/whatsnew/2.6.rst:3308 ../Doc/whatsnew/2.7.rst:2615 msgid "Acknowledgements" msgstr "" #: ../Doc/whatsnew/2.0.rst:1201 msgid "" "The authors would like to thank the following people for offering " "suggestions on various drafts of this article: David Bolen, Mark Hammond, " "Gregg Hauser, Jeremy Hylton, Fredrik Lundh, Detlef Lannert, Aahz Maruch, " "Skip Montanaro, Vladimir Marangozov, Tobias Polzin, Guido van Rossum, Neil " "Schemenauer, and Russ Schmidt." msgstr "" #: ../Doc/whatsnew/2.1.rst:3 msgid "What's New in Python 2.1" msgstr "Nouveautés de Python 2.1" #: ../Doc/whatsnew/2.1.rst:5 ../Doc/whatsnew/2.2.rst:5 #: ../Doc/whatsnew/2.3.rst:5 ../Doc/whatsnew/2.4.rst:5 #: ../Doc/whatsnew/2.5.rst:5 msgid "A.M. Kuchling" msgstr "A.M. Kuchling" #: ../Doc/whatsnew/2.1.rst:15 msgid "" "This article explains the new features in Python 2.1. While there aren't as " "many changes in 2.1 as there were in Python 2.0, there are still some " "pleasant surprises in store. 2.1 is the first release to be steered through " "the use of Python Enhancement Proposals, or PEPs, so most of the sizable " "changes have accompanying PEPs that provide more complete documentation and " "a design rationale for the change. This article doesn't attempt to document " "the new features completely, but simply provides an overview of the new " "features for Python programmers. Refer to the Python 2.1 documentation, or " "to the specific PEP, for more details about any new feature that " "particularly interests you." msgstr "" #: ../Doc/whatsnew/2.1.rst:25 msgid "" "One recent goal of the Python development team has been to accelerate the " "pace of new releases, with a new release coming every 6 to 9 months. 2.1 is " "the first release to come out at this faster pace, with the first alpha " "appearing in January, 3 months after the final version of 2.0 was released." msgstr "" #: ../Doc/whatsnew/2.1.rst:30 msgid "The final release of Python 2.1 was made on April 17, 2001." msgstr "" #: ../Doc/whatsnew/2.1.rst:36 ../Doc/whatsnew/2.2.rst:839 msgid "PEP 227: Nested Scopes" msgstr "" #: ../Doc/whatsnew/2.1.rst:38 msgid "" "The largest change in Python 2.1 is to Python's scoping rules. In Python " "2.0, at any given time there are at most three namespaces used to look up " "variable names: local, module-level, and the built-in namespace. This often " "surprised people because it didn't match their intuitive expectations. For " "example, a nested recursive function definition doesn't work::" msgstr "" #: ../Doc/whatsnew/2.1.rst:51 ../Doc/whatsnew/2.2.rst:862 msgid "" "The function :func:`g` will always raise a :exc:`NameError` exception, " "because the binding of the name ``g`` isn't in either its local namespace or " "in the module-level namespace. This isn't much of a problem in practice " "(how often do you recursively define interior functions like this?), but " "this also made using the :keyword:`lambda` statement clumsier, and this was " "a problem in practice. In code which uses :keyword:`lambda` you can often " "find local variables being copied by passing them as the default values of " "arguments. ::" msgstr "" #: ../Doc/whatsnew/2.1.rst:65 ../Doc/whatsnew/2.2.rst:876 msgid "" "The readability of Python code written in a strongly functional style " "suffers greatly as a result." msgstr "" #: ../Doc/whatsnew/2.1.rst:68 msgid "" "The most significant change to Python 2.1 is that static scoping has been " "added to the language to fix this problem. As a first effect, the " "``name=name`` default argument is now unnecessary in the above example. Put " "simply, when a given variable name is not assigned a value within a function " "(by an assignment, or the :keyword:`def`, :keyword:`class`, or :keyword:" "`import` statements), references to the variable will be looked up in the " "local namespace of the enclosing scope. A more detailed explanation of the " "rules, and a dissection of the implementation, can be found in the PEP." msgstr "" #: ../Doc/whatsnew/2.1.rst:77 ../Doc/whatsnew/2.2.rst:888 msgid "" "This change may cause some compatibility problems for code where the same " "variable name is used both at the module level and as a local variable " "within a function that contains further function definitions. This seems " "rather unlikely though, since such code would have been pretty confusing to " "read in the first place." msgstr "" #: ../Doc/whatsnew/2.1.rst:83 ../Doc/whatsnew/2.2.rst:894 msgid "" "One side effect of the change is that the ``from module import *`` and " "``exec`` statements have been made illegal inside a function scope under " "certain conditions. The Python reference manual has said all along that " "``from module import *`` is only legal at the top level of a module, but the " "CPython interpreter has never enforced this before. As part of the " "implementation of nested scopes, the compiler which turns Python source into " "bytecodes has to generate different code to access variables in a containing " "scope. ``from module import *`` and ``exec`` make it impossible for the " "compiler to figure this out, because they add names to the local namespace " "that are unknowable at compile time. Therefore, if a function contains " "function definitions or :keyword:`lambda` expressions with free variables, " "the compiler will flag this by raising a :exc:`SyntaxError` exception." msgstr "" #: ../Doc/whatsnew/2.1.rst:96 ../Doc/whatsnew/2.2.rst:907 msgid "To make the preceding explanation a bit clearer, here's an example::" msgstr "" #: ../Doc/whatsnew/2.1.rst:105 ../Doc/whatsnew/2.2.rst:916 msgid "" "Line 4 containing the ``exec`` statement is a syntax error, since ``exec`` " "would define a new local variable named ``x`` whose value should be accessed " "by :func:`g`." msgstr "" #: ../Doc/whatsnew/2.1.rst:109 ../Doc/whatsnew/2.2.rst:920 msgid "" "This shouldn't be much of a limitation, since ``exec`` is rarely used in " "most Python code (and when it is used, it's often a sign of a poor design " "anyway)." msgstr "" #: ../Doc/whatsnew/2.1.rst:113 msgid "" "Compatibility concerns have led to nested scopes being introduced gradually; " "in Python 2.1, they aren't enabled by default, but can be turned on within a " "module by using a future statement as described in PEP 236. (See the " "following section for further discussion of PEP 236.) In Python 2.2, nested " "scopes will become the default and there will be no way to turn them off, " "but users will have had all of 2.1's lifetime to fix any breakage resulting " "from their introduction." msgstr "" #: ../Doc/whatsnew/2.1.rst:123 ../Doc/whatsnew/2.2.rst:927 msgid ":pep:`227` - Statically Nested Scopes" msgstr ":pep:`227` - Statically Nested Scopes" #: ../Doc/whatsnew/2.1.rst:124 ../Doc/whatsnew/2.2.rst:928 msgid "Written and implemented by Jeremy Hylton." msgstr "Écrit et implémenté par Jeremy Hylton." #: ../Doc/whatsnew/2.1.rst:130 msgid "PEP 236: __future__ Directives" msgstr "PEP 236 : Directives __future__" #: ../Doc/whatsnew/2.1.rst:132 msgid "" "The reaction to nested scopes was widespread concern about the dangers of " "breaking code with the 2.1 release, and it was strong enough to make the " "Pythoneers take a more conservative approach. This approach consists of " "introducing a convention for enabling optional functionality in release N " "that will become compulsory in release N+1." msgstr "" #: ../Doc/whatsnew/2.1.rst:138 msgid "" "The syntax uses a ``from...import`` statement using the reserved module " "name :mod:`__future__`. Nested scopes can be enabled by the following " "statement::" msgstr "" #: ../Doc/whatsnew/2.1.rst:143 msgid "" "While it looks like a normal :keyword:`import` statement, it's not; there " "are strict rules on where such a future statement can be put. They can only " "be at the top of a module, and must precede any Python code or regular :" "keyword:`import` statements. This is because such statements can affect how " "the Python bytecode compiler parses code and generates bytecode, so they " "must precede any statement that will result in bytecodes being produced." msgstr "" #: ../Doc/whatsnew/2.1.rst:153 msgid ":pep:`236` - Back to the :mod:`__future__`" msgstr ":pep:`236` - Retour vers le :mod:`__future__`" #: ../Doc/whatsnew/2.1.rst:154 msgid "Written by Tim Peters, and primarily implemented by Jeremy Hylton." msgstr "Écrit par Tim Peters, et implémenté principalement par Jeremy Hylton." #: ../Doc/whatsnew/2.1.rst:160 msgid "PEP 207: Rich Comparisons" msgstr "" #: ../Doc/whatsnew/2.1.rst:162 msgid "" "In earlier versions, Python's support for implementing comparisons on user- " "defined classes and extension types was quite simple. Classes could " "implement a :meth:`__cmp__` method that was given two instances of a class, " "and could only return 0 if they were equal or +1 or -1 if they weren't; the " "method couldn't raise an exception or return anything other than a Boolean " "value. Users of Numeric Python often found this model too weak and " "restrictive, because in the number-crunching programs that numeric Python is " "used for, it would be more useful to be able to perform elementwise " "comparisons of two matrices, returning a matrix containing the results of a " "given comparison for each element. If the two matrices are of different " "sizes, then the compare has to be able to raise an exception to signal the " "error." msgstr "" #: ../Doc/whatsnew/2.1.rst:174 msgid "" "In Python 2.1, rich comparisons were added in order to support this need. " "Python classes can now individually overload each of the ``<``, ``<=``, " "``>``, ``>=``, ``==``, and ``!=`` operations. The new magic method names " "are:" msgstr "" #: ../Doc/whatsnew/2.1.rst:179 ../Doc/whatsnew/2.5.rst:1807 msgid "Operation" msgstr "Opération" #: ../Doc/whatsnew/2.1.rst:179 msgid "Method name" msgstr "Nom de méthode" #: ../Doc/whatsnew/2.1.rst:181 msgid "``<``" msgstr "``<``" #: ../Doc/whatsnew/2.1.rst:181 msgid ":meth:`__lt__`" msgstr ":meth:`__lt__`" #: ../Doc/whatsnew/2.1.rst:183 msgid "``<=``" msgstr "``<=``" #: ../Doc/whatsnew/2.1.rst:183 msgid ":meth:`__le__`" msgstr ":meth:`__le__`" #: ../Doc/whatsnew/2.1.rst:185 msgid "``>``" msgstr "``>``" #: ../Doc/whatsnew/2.1.rst:185 msgid ":meth:`__gt__`" msgstr ":meth:`__gt__`" #: ../Doc/whatsnew/2.1.rst:187 msgid "``>=``" msgstr "``>=``" #: ../Doc/whatsnew/2.1.rst:187 msgid ":meth:`__ge__`" msgstr ":meth:`__ge__`" #: ../Doc/whatsnew/2.1.rst:189 msgid "``==``" msgstr "``==``" #: ../Doc/whatsnew/2.1.rst:189 msgid ":meth:`__eq__`" msgstr ":meth:`__eq__`" #: ../Doc/whatsnew/2.1.rst:191 msgid "``!=``" msgstr "``!=``" #: ../Doc/whatsnew/2.1.rst:191 msgid ":meth:`__ne__`" msgstr ":meth:`__ne__`" #: ../Doc/whatsnew/2.1.rst:194 msgid "" "(The magic methods are named after the corresponding Fortran operators ``.LT." "``. ``.LE.``, &c. Numeric programmers are almost certainly quite familiar " "with these names and will find them easy to remember.)" msgstr "" #: ../Doc/whatsnew/2.1.rst:198 msgid "" "Each of these magic methods is of the form ``method(self, other)``, where " "``self`` will be the object on the left-hand side of the operator, while " "``other`` will be the object on the right-hand side. For example, the " "expression ``A < B`` will cause ``A.__lt__(B)`` to be called." msgstr "" #: ../Doc/whatsnew/2.1.rst:203 msgid "" "Each of these magic methods can return anything at all: a Boolean, a matrix, " "a list, or any other Python object. Alternatively they can raise an " "exception if the comparison is impossible, inconsistent, or otherwise " "meaningless." msgstr "" #: ../Doc/whatsnew/2.1.rst:207 msgid "" "The built-in ``cmp(A,B)`` function can use the rich comparison machinery, " "and now accepts an optional argument specifying which comparison operation " "to use; this is given as one of the strings ``\"<\"``, ``\"<=\"``, ``\">" "\"``, ``\">=\"``, ``\"==\"``, or ``\"!=\"``. If called without the optional " "third argument, :func:`cmp` will only return -1, 0, or +1 as in previous " "versions of Python; otherwise it will call the appropriate method and can " "return any Python object." msgstr "" #: ../Doc/whatsnew/2.1.rst:214 msgid "" "There are also corresponding changes of interest to C programmers; there's a " "new slot ``tp_richcmp`` in type objects and an API for performing a given " "rich comparison. I won't cover the C API here, but will refer you to PEP " "207, or to 2.1's C API documentation, for the full list of related functions." msgstr "" #: ../Doc/whatsnew/2.1.rst:223 msgid ":pep:`207` - Rich Comparisons" msgstr "" #: ../Doc/whatsnew/2.1.rst:223 msgid "" "Written by Guido van Rossum, heavily based on earlier work by David Ascher, " "and implemented by Guido van Rossum." msgstr "" #: ../Doc/whatsnew/2.1.rst:230 msgid "PEP 230: Warning Framework" msgstr "" #: ../Doc/whatsnew/2.1.rst:232 msgid "" "Over its 10 years of existence, Python has accumulated a certain number of " "obsolete modules and features along the way. It's difficult to know when a " "feature is safe to remove, since there's no way of knowing how much code " "uses it --- perhaps no programs depend on the feature, or perhaps many do. " "To enable removing old features in a more structured way, a warning " "framework was added. When the Python developers want to get rid of a " "feature, it will first trigger a warning in the next version of Python. The " "following Python version can then drop the feature, and users will have had " "a full release cycle to remove uses of the old feature." msgstr "" #: ../Doc/whatsnew/2.1.rst:242 msgid "" "Python 2.1 adds the warning framework to be used in this scheme. It adds a :" "mod:`warnings` module that provide functions to issue warnings, and to " "filter out warnings that you don't want to be displayed. Third-party modules " "can also use this framework to deprecate old features that they no longer " "wish to support." msgstr "" #: ../Doc/whatsnew/2.1.rst:248 msgid "" "For example, in Python 2.1 the :mod:`regex` module is deprecated, so " "importing it causes a warning to be printed::" msgstr "" #: ../Doc/whatsnew/2.1.rst:256 msgid "Warnings can be issued by calling the :func:`warnings.warn` function::" msgstr "" #: ../Doc/whatsnew/2.1.rst:260 msgid "" "The first parameter is the warning message; an additional optional " "parameters can be used to specify a particular warning category." msgstr "" #: ../Doc/whatsnew/2.1.rst:263 msgid "" "Filters can be added to disable certain warnings; a regular expression " "pattern can be applied to the message or to the module name in order to " "suppress a warning. For example, you may have a program that uses the :mod:" "`regex` module and not want to spare the time to convert it to use the :mod:" "`re` module right now. The warning can be suppressed by calling ::" msgstr "" #: ../Doc/whatsnew/2.1.rst:275 msgid "" "This adds a filter that will apply only to warnings of the class :class:" "`DeprecationWarning` triggered in the :mod:`__main__` module, and applies a " "regular expression to only match the message about the :mod:`regex` module " "being deprecated, and will cause such warnings to be ignored. Warnings can " "also be printed only once, printed every time the offending code is " "executed, or turned into exceptions that will cause the program to stop " "(unless the exceptions are caught in the usual way, of course)." msgstr "" #: ../Doc/whatsnew/2.1.rst:283 msgid "" "Functions were also added to Python's C API for issuing warnings; refer to " "PEP 230 or to Python's API documentation for the details." msgstr "" #: ../Doc/whatsnew/2.1.rst:293 msgid ":pep:`5` - Guidelines for Language Evolution" msgstr "" #: ../Doc/whatsnew/2.1.rst:290 msgid "" "Written by Paul Prescod, to specify procedures to be followed when removing " "old features from Python. The policy described in this PEP hasn't been " "officially adopted, but the eventual policy probably won't be too different " "from Prescod's proposal." msgstr "" #: ../Doc/whatsnew/2.1.rst:295 msgid ":pep:`230` - Warning Framework" msgstr ":pep:`230` - Warning Framework" #: ../Doc/whatsnew/2.1.rst:296 msgid "Written and implemented by Guido van Rossum." msgstr "" #: ../Doc/whatsnew/2.1.rst:302 msgid "PEP 229: New Build System" msgstr "" #: ../Doc/whatsnew/2.1.rst:304 msgid "" "When compiling Python, the user had to go in and edit the :file:`Modules/" "Setup` file in order to enable various additional modules; the default set " "is relatively small and limited to modules that compile on most Unix " "platforms. This means that on Unix platforms with many more features, most " "notably Linux, Python installations often don't contain all useful modules " "they could." msgstr "" #: ../Doc/whatsnew/2.1.rst:310 msgid "" "Python 2.0 added the Distutils, a set of modules for distributing and " "installing extensions. In Python 2.1, the Distutils are used to compile " "much of the standard library of extension modules, autodetecting which ones " "are supported on the current machine. It's hoped that this will make Python " "installations easier and more featureful." msgstr "" #: ../Doc/whatsnew/2.1.rst:316 msgid "" "Instead of having to edit the :file:`Modules/Setup` file in order to enable " "modules, a :file:`setup.py` script in the top directory of the Python source " "distribution is run at build time, and attempts to discover which modules " "can be enabled by examining the modules and header files on the system. If " "a module is configured in :file:`Modules/Setup`, the :file:`setup.py` script " "won't attempt to compile that module and will defer to the :file:`Modules/" "Setup` file's contents. This provides a way to specific any strange command-" "line flags or libraries that are required for a specific platform." msgstr "" #: ../Doc/whatsnew/2.1.rst:325 msgid "" "In another far-reaching change to the build mechanism, Neil Schemenauer " "restructured things so Python now uses a single makefile that isn't " "recursive, instead of makefiles in the top directory and in each of the :" "file:`Python/`, :file:`Parser/`, :file:`Objects/`, and :file:`Modules/` " "subdirectories. This makes building Python faster and also makes hacking " "the Makefiles clearer and simpler." msgstr "" #: ../Doc/whatsnew/2.1.rst:335 msgid ":pep:`229` - Using Distutils to Build Python" msgstr "" #: ../Doc/whatsnew/2.1.rst:336 ../Doc/whatsnew/2.1.rst:571 msgid "Written and implemented by A.M. Kuchling." msgstr "" #: ../Doc/whatsnew/2.1.rst:342 msgid "PEP 205: Weak References" msgstr "" #: ../Doc/whatsnew/2.1.rst:344 msgid "" "Weak references, available through the :mod:`weakref` module, are a minor " "but useful new data type in the Python programmer's toolbox." msgstr "" #: ../Doc/whatsnew/2.1.rst:347 msgid "" "Storing a reference to an object (say, in a dictionary or a list) has the " "side effect of keeping that object alive forever. There are a few specific " "cases where this behaviour is undesirable, object caches being the most " "common one, and another being circular references in data structures such as " "trees." msgstr "" #: ../Doc/whatsnew/2.1.rst:352 msgid "" "For example, consider a memoizing function that caches the results of " "another function ``f(x)`` by storing the function's argument and its result " "in a dictionary::" msgstr "" #: ../Doc/whatsnew/2.1.rst:368 msgid "" "This version works for simple things such as integers, but it has a side " "effect; the ``_cache`` dictionary holds a reference to the return values, so " "they'll never be deallocated until the Python process exits and cleans up. " "This isn't very noticeable for integers, but if :func:`f` returns an object, " "or a data structure that takes up a lot of memory, this can be a problem." msgstr "" #: ../Doc/whatsnew/2.1.rst:374 msgid "" "Weak references provide a way to implement a cache that won't keep objects " "alive beyond their time. If an object is only accessible through weak " "references, the object will be deallocated and the weak references will now " "indicate that the object it referred to no longer exists. A weak reference " "to an object *obj* is created by calling ``wr = weakref.ref(obj)``. The " "object being referred to is returned by calling the weak reference as if it " "were a function: ``wr()``. It will return the referenced object, or " "``None`` if the object no longer exists." msgstr "" #: ../Doc/whatsnew/2.1.rst:382 msgid "" "This makes it possible to write a :func:`memoize` function whose cache " "doesn't keep objects alive, by storing weak references in the cache. ::" msgstr "" #: ../Doc/whatsnew/2.1.rst:400 msgid "" "The :mod:`weakref` module also allows creating proxy objects which behave " "like weak references --- an object referenced only by proxy objects is " "deallocated -- but instead of requiring an explicit call to retrieve the " "object, the proxy transparently forwards all operations to the object as " "long as the object still exists. If the object is deallocated, attempting " "to use a proxy will cause a :exc:`weakref.ReferenceError` exception to be " "raised. ::" msgstr "" #: ../Doc/whatsnew/2.1.rst:416 msgid ":pep:`205` - Weak References" msgstr "" #: ../Doc/whatsnew/2.1.rst:417 msgid "Written and implemented by Fred L. Drake, Jr." msgstr "Écrit et implémenté par Fred L. Drake, Jr." #: ../Doc/whatsnew/2.1.rst:423 msgid "PEP 232: Function Attributes" msgstr "PEP 232 : Attributs de fonctions" #: ../Doc/whatsnew/2.1.rst:425 msgid "" "In Python 2.1, functions can now have arbitrary information attached to " "them. People were often using docstrings to hold information about functions " "and methods, because the ``__doc__`` attribute was the only way of attaching " "any information to a function. For example, in the Zope Web application " "server, functions are marked as safe for public access by having a " "docstring, and in John Aycock's SPARK parsing framework, docstrings hold " "parts of the BNF grammar to be parsed. This overloading is unfortunate, " "since docstrings are really intended to hold a function's documentation; for " "example, it means you can't properly document functions intended for private " "use in Zope." msgstr "" #: ../Doc/whatsnew/2.1.rst:435 msgid "" "Arbitrary attributes can now be set and retrieved on functions using the " "regular Python syntax::" msgstr "" #: ../Doc/whatsnew/2.1.rst:444 msgid "" "The dictionary containing attributes can be accessed as the function's :attr:" "`~object.__dict__`. Unlike the :attr:`~object.__dict__` attribute of class " "instances, in functions you can actually assign a new dictionary to :attr:" "`~object.__dict__`, though the new value is restricted to a regular Python " "dictionary; you *can't* be tricky and set it to a :class:`UserDict` " "instance, or any other random object that behaves like a mapping." msgstr "" #: ../Doc/whatsnew/2.1.rst:454 msgid ":pep:`232` - Function Attributes" msgstr ":pep:`232` - Attributs de fonctions" #: ../Doc/whatsnew/2.1.rst:455 msgid "Written and implemented by Barry Warsaw." msgstr "Écrit et implémenté par Barry Warsaw." #: ../Doc/whatsnew/2.1.rst:461 msgid "PEP 235: Importing Modules on Case-Insensitive Platforms" msgstr "" #: ../Doc/whatsnew/2.1.rst:463 msgid "" "Some operating systems have filesystems that are case-insensitive, MacOS and " "Windows being the primary examples; on these systems, it's impossible to " "distinguish the filenames ``FILE.PY`` and ``file.py``, even though they do " "store the file's name in its original case (they're case-preserving, too)." msgstr "" #: ../Doc/whatsnew/2.1.rst:468 msgid "" "In Python 2.1, the :keyword:`import` statement will work to simulate case- " "sensitivity on case-insensitive platforms. Python will now search for the " "first case-sensitive match by default, raising an :exc:`ImportError` if no " "such file is found, so ``import file`` will not import a module named ``FILE." "PY``. Case- insensitive matching can be requested by setting the :envvar:" "`PYTHONCASEOK` environment variable before starting the Python interpreter." msgstr "" #: ../Doc/whatsnew/2.1.rst:479 msgid "PEP 217: Interactive Display Hook" msgstr "" #: ../Doc/whatsnew/2.1.rst:481 msgid "" "When using the Python interpreter interactively, the output of commands is " "displayed using the built-in :func:`repr` function. In Python 2.1, the " "variable :func:`sys.displayhook` can be set to a callable object which will " "be called instead of :func:`repr`. For example, you can set it to a special " "pretty- printing function::" msgstr "" #: ../Doc/whatsnew/2.1.rst:502 msgid ":pep:`217` - Display Hook for Interactive Use" msgstr "" #: ../Doc/whatsnew/2.1.rst:503 msgid "Written and implemented by Moshe Zadka." msgstr "" #: ../Doc/whatsnew/2.1.rst:509 msgid "PEP 208: New Coercion Model" msgstr "" #: ../Doc/whatsnew/2.1.rst:511 msgid "" "How numeric coercion is done at the C level was significantly modified. " "This will only affect the authors of C extensions to Python, allowing them " "more flexibility in writing extension types that support numeric operations." msgstr "" #: ../Doc/whatsnew/2.1.rst:515 msgid "" "Extension types can now set the type flag ``Py_TPFLAGS_CHECKTYPES`` in their " "``PyTypeObject`` structure to indicate that they support the new coercion " "model. In such extension types, the numeric slot functions can no longer " "assume that they'll be passed two arguments of the same type; instead they " "may be passed two arguments of differing types, and can then perform their " "own internal coercion. If the slot function is passed a type it can't " "handle, it can indicate the failure by returning a reference to the " "``Py_NotImplemented`` singleton value. The numeric functions of the other " "type will then be tried, and perhaps they can handle the operation; if the " "other type also returns ``Py_NotImplemented``, then a :exc:`TypeError` will " "be raised. Numeric methods written in Python can also return " "``Py_NotImplemented``, causing the interpreter to act as if the method did " "not exist (perhaps raising a :exc:`TypeError`, perhaps trying another " "object's numeric methods)." msgstr "" #: ../Doc/whatsnew/2.1.rst:534 msgid ":pep:`208` - Reworking the Coercion Model" msgstr "" #: ../Doc/whatsnew/2.1.rst:533 msgid "" "Written and implemented by Neil Schemenauer, heavily based upon earlier work " "by Marc-André Lemburg. Read this to understand the fine points of how " "numeric operations will now be processed at the C level." msgstr "" #: ../Doc/whatsnew/2.1.rst:541 msgid "PEP 241: Metadata in Python Packages" msgstr "" #: ../Doc/whatsnew/2.1.rst:543 msgid "" "A common complaint from Python users is that there's no single catalog of " "all the Python modules in existence. T. Middleton's Vaults of Parnassus at " "http://www.vex.net/parnassus/ are the largest catalog of Python modules, but " "registering software at the Vaults is optional, and many people don't bother." msgstr "" #: ../Doc/whatsnew/2.1.rst:548 msgid "" "As a first small step toward fixing the problem, Python software packaged " "using the Distutils :command:`sdist` command will include a file named :file:" "`PKG-INFO` containing information about the package such as its name, " "version, and author (metadata, in cataloguing terminology). PEP 241 " "contains the full list of fields that can be present in the :file:`PKG-INFO` " "file. As people began to package their software using Python 2.1, more and " "more packages will include metadata, making it possible to build automated " "cataloguing systems and experiment with them. With the result experience, " "perhaps it'll be possible to design a really good catalog and then build " "support for it into Python 2.2. For example, the Distutils :command:`sdist` " "and :command:`bdist_\\*` commands could support an ``upload`` option that " "would automatically upload your package to a catalog server." msgstr "" #: ../Doc/whatsnew/2.1.rst:561 msgid "" "You can start creating packages containing :file:`PKG-INFO` even if you're " "not using Python 2.1, since a new release of the Distutils will be made for " "users of earlier Python versions. Version 1.0.2 of the Distutils includes " "the changes described in PEP 241, as well as various bugfixes and " "enhancements. It will be available from the Distutils SIG at https://www." "python.org/community/sigs/current/distutils-sig/." msgstr "" #: ../Doc/whatsnew/2.1.rst:571 msgid ":pep:`241` - Metadata for Python Software Packages" msgstr "" #: ../Doc/whatsnew/2.1.rst:574 msgid ":pep:`243` - Module Repository Upload Mechanism" msgstr "" #: ../Doc/whatsnew/2.1.rst:574 msgid "" "Written by Sean Reifschneider, this draft PEP describes a proposed mechanism " "for uploading Python packages to a central server." msgstr "" #: ../Doc/whatsnew/2.1.rst:581 ../Doc/whatsnew/2.2.rst:934 #: ../Doc/whatsnew/2.6.rst:1783 ../Doc/whatsnew/2.7.rst:1025 msgid "New and Improved Modules" msgstr "" #: ../Doc/whatsnew/2.1.rst:583 msgid "" "Ka-Ping Yee contributed two new modules: :mod:`inspect.py`, a module for " "getting information about live Python code, and :mod:`pydoc.py`, a module " "for interactively converting docstrings to HTML or text. As a bonus, :file:" "`Tools/scripts/pydoc`, which is now automatically installed, uses :mod:" "`pydoc.py` to display documentation given a Python module, package, or class " "name. For example, ``pydoc xml.dom`` displays the following::" msgstr "" #: ../Doc/whatsnew/2.1.rst:605 msgid "" ":file:`pydoc` also includes a Tk-based interactive help browser. :file:" "`pydoc` quickly becomes addictive; try it out!" msgstr "" #: ../Doc/whatsnew/2.1.rst:608 msgid "" "Two different modules for unit testing were added to the standard library. " "The :mod:`doctest` module, contributed by Tim Peters, provides a testing " "framework based on running embedded examples in docstrings and comparing the " "results against the expected output. PyUnit, contributed by Steve Purcell, " "is a unit testing framework inspired by JUnit, which was in turn an " "adaptation of Kent Beck's Smalltalk testing framework. See http://pyunit." "sourceforge.net/ for more information about PyUnit." msgstr "" #: ../Doc/whatsnew/2.1.rst:616 msgid "" "The :mod:`difflib` module contains a class, :class:`SequenceMatcher`, which " "compares two sequences and computes the changes required to transform one " "sequence into the other. For example, this module can be used to write a " "tool similar to the Unix :program:`diff` program, and in fact the sample " "program :file:`Tools/scripts/ndiff.py` demonstrates how to write such a " "script." msgstr "" #: ../Doc/whatsnew/2.1.rst:622 msgid "" ":mod:`curses.panel`, a wrapper for the panel library, part of ncurses and of " "SYSV curses, was contributed by Thomas Gellekum. The panel library provides " "windows with the additional feature of depth. Windows can be moved higher or " "lower in the depth ordering, and the panel library figures out where panels " "overlap and which sections are visible." msgstr "" #: ../Doc/whatsnew/2.1.rst:628 msgid "" "The PyXML package has gone through a few releases since Python 2.0, and " "Python 2.1 includes an updated version of the :mod:`xml` package. Some of " "the noteworthy changes include support for Expat 1.2 and later versions, the " "ability for Expat parsers to handle files in any encoding supported by " "Python, and various bugfixes for SAX, DOM, and the :mod:`minidom` module." msgstr "" #: ../Doc/whatsnew/2.1.rst:634 msgid "" "Ping also contributed another hook for handling uncaught exceptions. :func:" "`sys.excepthook` can be set to a callable object. When an exception isn't " "caught by any :keyword:`try`...\\ :keyword:`except` blocks, the exception " "will be passed to :func:`sys.excepthook`, which can then do whatever it " "likes. At the Ninth Python Conference, Ping demonstrated an application for " "this hook: printing an extended traceback that not only lists the stack " "frames, but also lists the function arguments and the local variables for " "each frame." msgstr "" #: ../Doc/whatsnew/2.1.rst:642 msgid "" "Various functions in the :mod:`time` module, such as :func:`asctime` and :" "func:`localtime`, require a floating point argument containing the time in " "seconds since the epoch. The most common use of these functions is to work " "with the current time, so the floating point argument has been made " "optional; when a value isn't provided, the current time will be used. For " "example, log file entries usually need a string containing the current time; " "in Python 2.1, ``time.asctime()`` can be used, instead of the lengthier " "``time.asctime(time.localtime(time.time()))`` that was previously required." msgstr "" #: ../Doc/whatsnew/2.1.rst:651 msgid "This change was proposed and implemented by Thomas Wouters." msgstr "" #: ../Doc/whatsnew/2.1.rst:653 msgid "" "The :mod:`ftplib` module now defaults to retrieving files in passive mode, " "because passive mode is more likely to work from behind a firewall. This " "request came from the Debian bug tracking system, since other Debian " "packages use :mod:`ftplib` to retrieve files and then don't work from behind " "a firewall. It's deemed unlikely that this will cause problems for anyone, " "because Netscape defaults to passive mode and few people complain, but if " "passive mode is unsuitable for your application or network setup, call " "``set_pasv(0)`` on FTP objects to disable passive mode." msgstr "" #: ../Doc/whatsnew/2.1.rst:662 msgid "" "Support for raw socket access has been added to the :mod:`socket` module, " "contributed by Grant Edwards." msgstr "" #: ../Doc/whatsnew/2.1.rst:665 msgid "" "The :mod:`pstats` module now contains a simple interactive statistics " "browser for displaying timing profiles for Python programs, invoked when the " "module is run as a script. Contributed by Eric S. Raymond." msgstr "" #: ../Doc/whatsnew/2.1.rst:669 msgid "" "A new implementation-dependent function, ``sys._getframe([depth])``, has " "been added to return a given frame object from the current call stack. :func:" "`sys._getframe` returns the frame at the top of the call stack; if the " "optional integer argument *depth* is supplied, the function returns the " "frame that is *depth* calls below the top of the stack. For example, ``sys." "_getframe(1)`` returns the caller's frame object." msgstr "" #: ../Doc/whatsnew/2.1.rst:676 msgid "" "This function is only present in CPython, not in Jython or the .NET " "implementation. Use it for debugging, and resist the temptation to put it " "into production code." msgstr "" #: ../Doc/whatsnew/2.1.rst:684 ../Doc/whatsnew/2.2.rst:1129 #: ../Doc/whatsnew/2.3.rst:1966 ../Doc/whatsnew/2.7.rst:2379 msgid "Other Changes and Fixes" msgstr "Autres changements et corrections" #: ../Doc/whatsnew/2.1.rst:686 msgid "" "There were relatively few smaller changes made in Python 2.1 due to the " "shorter release cycle. A search through the CVS change logs turns up 117 " "patches applied, and 136 bugs fixed; both figures are likely to be " "underestimates. Some of the more notable changes are:" msgstr "" #: ../Doc/whatsnew/2.1.rst:691 msgid "" "A specialized object allocator is now optionally available, that should be " "faster than the system :func:`malloc` and have less memory overhead. The " "allocator uses C's :func:`malloc` function to get large pools of memory, and " "then fulfills smaller memory requests from these pools. It can be enabled " "by providing the :option:`--with-pymalloc` option to the :program:" "`configure` script; see :file:`Objects/obmalloc.c` for the implementation " "details." msgstr "" #: ../Doc/whatsnew/2.1.rst:698 msgid "" "Authors of C extension modules should test their code with the object " "allocator enabled, because some incorrect code may break, causing core dumps " "at runtime. There are a bunch of memory allocation functions in Python's C " "API that have previously been just aliases for the C library's :func:" "`malloc` and :func:`free`, meaning that if you accidentally called " "mismatched functions, the error wouldn't be noticeable. When the object " "allocator is enabled, these functions aren't aliases of :func:`malloc` and :" "func:`free` any more, and calling the wrong function to free memory will get " "you a core dump. For example, if memory was allocated using :func:" "`PyMem_New`, it has to be freed using :func:`PyMem_Del`, not :func:`free`. " "A few modules included with Python fell afoul of this and had to be fixed; " "doubtless there are more third-party modules that will have the same problem." msgstr "" #: ../Doc/whatsnew/2.1.rst:711 msgid "The object allocator was contributed by Vladimir Marangozov." msgstr "" #: ../Doc/whatsnew/2.1.rst:713 msgid "" "The speed of line-oriented file I/O has been improved because people often " "complain about its lack of speed, and because it's often been used as a " "naïve benchmark. The :meth:`readline` method of file objects has therefore " "been rewritten to be much faster. The exact amount of the speedup will vary " "from platform to platform depending on how slow the C library's :func:`getc` " "was, but is around 66%, and potentially much faster on some particular " "operating systems. Tim Peters did much of the benchmarking and coding for " "this change, motivated by a discussion in comp.lang.python." msgstr "" #: ../Doc/whatsnew/2.1.rst:722 msgid "" "A new module and method for file objects was also added, contributed by Jeff " "Epler. The new method, :meth:`xreadlines`, is similar to the existing :func:" "`xrange` built-in. :func:`xreadlines` returns an opaque sequence object " "that only supports being iterated over, reading a line on every iteration " "but not reading the entire file into memory as the existing :meth:" "`readlines` method does. You'd use it like this::" msgstr "" #: ../Doc/whatsnew/2.1.rst:733 msgid "" "For a fuller discussion of the line I/O changes, see the python-dev summary " "for January 1-15, 2001 at https://mail.python.org/pipermail/python-dev/2001-" "January/." msgstr "" #: ../Doc/whatsnew/2.1.rst:736 msgid "" "A new method, :meth:`popitem`, was added to dictionaries to enable " "destructively iterating through the contents of a dictionary; this can be " "faster for large dictionaries because there's no need to construct a list " "containing all the keys or values. ``D.popitem()`` removes a random ``(key, " "value)`` pair from the dictionary ``D`` and returns it as a 2-tuple. This " "was implemented mostly by Tim Peters and Guido van Rossum, after a " "suggestion and preliminary patch by Moshe Zadka." msgstr "" #: ../Doc/whatsnew/2.1.rst:744 msgid "" "Modules can now control which names are imported when ``from module import " "*`` is used, by defining an ``__all__`` attribute containing a list of names " "that will be imported. One common complaint is that if the module imports " "other modules such as :mod:`sys` or :mod:`string`, ``from module import *`` " "will add them to the importing module's namespace. To fix this, simply list " "the public names in ``__all__``::" msgstr "" #: ../Doc/whatsnew/2.1.rst:754 msgid "" "A stricter version of this patch was first suggested and implemented by Ben " "Wolfson, but after some python-dev discussion, a weaker final version was " "checked in." msgstr "" #: ../Doc/whatsnew/2.1.rst:758 msgid "" "Applying :func:`repr` to strings previously used octal escapes for non-" "printable characters; for example, a newline was ``'\\012'``. This was a " "vestigial trace of Python's C ancestry, but today octal is of very little " "practical use. Ka-Ping Yee suggested using hex escapes instead of octal " "ones, and using the ``\\n``, ``\\t``, ``\\r`` escapes for the appropriate " "characters, and implemented this new formatting." msgstr "" #: ../Doc/whatsnew/2.1.rst:765 msgid "" "Syntax errors detected at compile-time can now raise exceptions containing " "the filename and line number of the error, a pleasant side effect of the " "compiler reorganization done by Jeremy Hylton." msgstr "" #: ../Doc/whatsnew/2.1.rst:769 msgid "" "C extensions which import other modules have been changed to use :func:" "`PyImport_ImportModule`, which means that they will use any import hooks " "that have been installed. This is also encouraged for third-party " "extensions that need to import some other module from C code." msgstr "" #: ../Doc/whatsnew/2.1.rst:774 msgid "" "The size of the Unicode character database was shrunk by another 340K thanks " "to Fredrik Lundh." msgstr "" #: ../Doc/whatsnew/2.1.rst:777 msgid "" "Some new ports were contributed: MacOS X (by Steven Majewski), Cygwin (by " "Jason Tishler); RISCOS (by Dietmar Schwertberger); Unixware 7 (by Billy G. " "Allie)." msgstr "" #: ../Doc/whatsnew/2.1.rst:781 msgid "" "And there's the usual list of minor bugfixes, minor memory leaks, docstring " "edits, and other tweaks, too lengthy to be worth itemizing; see the CVS logs " "for the full details if you want them." msgstr "" #: ../Doc/whatsnew/2.1.rst:791 msgid "" "The author would like to thank the following people for offering suggestions " "on various drafts of this article: Graeme Cross, David Goodger, Jay Graves, " "Michael Hudson, Marc-André Lemburg, Fredrik Lundh, Neil Schemenauer, Thomas " "Wouters." msgstr "" #: ../Doc/whatsnew/2.2.rst:3 msgid "What's New in Python 2.2" msgstr "Nouveautés de Python 2.2" #: ../Doc/whatsnew/2.2.rst:15 msgid "" "This article explains the new features in Python 2.2.2, released on October " "14, 2002. Python 2.2.2 is a bugfix release of Python 2.2, originally " "released on December 21, 2001." msgstr "" #: ../Doc/whatsnew/2.2.rst:19 msgid "" "Python 2.2 can be thought of as the \"cleanup release\". There are some " "features such as generators and iterators that are completely new, but most " "of the changes, significant and far-reaching though they may be, are aimed " "at cleaning up irregularities and dark corners of the language design." msgstr "" #: ../Doc/whatsnew/2.2.rst:24 msgid "" "This article doesn't attempt to provide a complete specification of the new " "features, but instead provides a convenient overview. For full details, you " "should refer to the documentation for Python 2.2, such as the `Python " "Library Reference `_ and the " "`Python Reference Manual `_. If " "you want to understand the complete implementation and design rationale for " "a change, refer to the PEP for a particular new feature." msgstr "" #: ../Doc/whatsnew/2.2.rst:43 msgid "PEPs 252 and 253: Type and Class Changes" msgstr "PEP 252 et 253 : Changements concernant les types et classes" #: ../Doc/whatsnew/2.2.rst:45 msgid "" "The largest and most far-reaching changes in Python 2.2 are to Python's " "model of objects and classes. The changes should be backward compatible, so " "it's likely that your code will continue to run unchanged, but the changes " "provide some amazing new capabilities. Before beginning this, the longest " "and most complicated section of this article, I'll provide an overview of " "the changes and offer some comments." msgstr "" #: ../Doc/whatsnew/2.2.rst:52 msgid "" "A long time ago I wrote a Web page listing flaws in Python's design. One of " "the most significant flaws was that it's impossible to subclass Python types " "implemented in C. In particular, it's not possible to subclass built-in " "types, so you can't just subclass, say, lists in order to add a single " "useful method to them. The :mod:`UserList` module provides a class that " "supports all of the methods of lists and that can be subclassed further, but " "there's lots of C code that expects a regular Python list and won't accept " "a :class:`UserList` instance." msgstr "" #: ../Doc/whatsnew/2.2.rst:61 msgid "" "Python 2.2 fixes this, and in the process adds some exciting new " "capabilities. A brief summary:" msgstr "" #: ../Doc/whatsnew/2.2.rst:64 msgid "" "You can subclass built-in types such as lists and even integers, and your " "subclasses should work in every place that requires the original type." msgstr "" #: ../Doc/whatsnew/2.2.rst:67 msgid "" "It's now possible to define static and class methods, in addition to the " "instance methods available in previous versions of Python." msgstr "" #: ../Doc/whatsnew/2.2.rst:70 msgid "" "It's also possible to automatically call methods on accessing or setting an " "instance attribute by using a new mechanism called :dfn:`properties`. Many " "uses of :meth:`__getattr__` can be rewritten to use properties instead, " "making the resulting code simpler and faster. As a small side benefit, " "attributes can now have docstrings, too." msgstr "" #: ../Doc/whatsnew/2.2.rst:76 msgid "" "The list of legal attributes for an instance can be limited to a particular " "set using :dfn:`slots`, making it possible to safeguard against typos and " "perhaps make more optimizations possible in future versions of Python." msgstr "" #: ../Doc/whatsnew/2.2.rst:80 msgid "" "Some users have voiced concern about all these changes. Sure, they say, the " "new features are neat and lend themselves to all sorts of tricks that " "weren't possible in previous versions of Python, but they also make the " "language more complicated. Some people have said that they've always " "recommended Python for its simplicity, and feel that its simplicity is being " "lost." msgstr "" #: ../Doc/whatsnew/2.2.rst:86 msgid "" "Personally, I think there's no need to worry. Many of the new features are " "quite esoteric, and you can write a lot of Python code without ever needed " "to be aware of them. Writing a simple class is no more difficult than it " "ever was, so you don't need to bother learning or teaching them unless " "they're actually needed. Some very complicated tasks that were previously " "only possible from C will now be possible in pure Python, and to my mind " "that's all for the better." msgstr "" #: ../Doc/whatsnew/2.2.rst:93 msgid "" "I'm not going to attempt to cover every single corner case and small change " "that were required to make the new features work. Instead this section will " "paint only the broad strokes. See section :ref:`sect-rellinks`, \"Related " "Links\", for further sources of information about Python 2.2's new object " "model." msgstr "" #: ../Doc/whatsnew/2.2.rst:100 msgid "Old and New Classes" msgstr "Anciennes et nouvelles classes" #: ../Doc/whatsnew/2.2.rst:102 msgid "" "First, you should know that Python 2.2 really has two kinds of classes: " "classic or old-style classes, and new-style classes. The old-style class " "model is exactly the same as the class model in earlier versions of Python. " "All the new features described in this section apply only to new-style " "classes. This divergence isn't intended to last forever; eventually old-" "style classes will be dropped, possibly in Python 3.0." msgstr "" #: ../Doc/whatsnew/2.2.rst:109 msgid "" "So how do you define a new-style class? You do it by subclassing an " "existing new-style class. Most of Python's built-in types, such as " "integers, lists, dictionaries, and even files, are new-style classes now. A " "new-style class named :class:`object`, the base class for all built-in " "types, has also been added so if no built-in type is suitable, you can just " "subclass :class:`object`::" msgstr "" #: ../Doc/whatsnew/2.2.rst:121 msgid "" "This means that :keyword:`class` statements that don't have any base classes " "are always classic classes in Python 2.2. (Actually you can also change " "this by setting a module-level variable named :attr:`__metaclass__` --- see :" "pep:`253` for the details --- but it's easier to just subclass :keyword:" "`object`.)" msgstr "" #: ../Doc/whatsnew/2.2.rst:126 msgid "" "The type objects for the built-in types are available as built-ins, named " "using a clever trick. Python has always had built-in functions named :func:" "`int`, :func:`float`, and :func:`str`. In 2.2, they aren't functions any " "more, but type objects that behave as factories when called. ::" msgstr "" #: ../Doc/whatsnew/2.2.rst:136 msgid "" "To make the set of types complete, new type objects such as :func:`dict` " "and :func:`file` have been added. Here's a more interesting example, adding " "a :meth:`lock` method to file objects::" msgstr "" #: ../Doc/whatsnew/2.2.rst:146 msgid "" "The now-obsolete :mod:`posixfile` module contained a class that emulated all " "of a file object's methods and also added a :meth:`lock` method, but this " "class couldn't be passed to internal functions that expected a built-in " "file, something which is possible with our new :class:`LockableFile`." msgstr "" #: ../Doc/whatsnew/2.2.rst:153 msgid "Descriptors" msgstr "Descripteurs" #: ../Doc/whatsnew/2.2.rst:155 msgid "" "In previous versions of Python, there was no consistent way to discover what " "attributes and methods were supported by an object. There were some informal " "conventions, such as defining :attr:`__members__` and :attr:`__methods__` " "attributes that were lists of names, but often the author of an extension " "type or a class wouldn't bother to define them. You could fall back on " "inspecting the :attr:`~object.__dict__` of an object, but when class " "inheritance or an arbitrary :meth:`__getattr__` hook were in use this could " "still be inaccurate." msgstr "" #: ../Doc/whatsnew/2.2.rst:163 msgid "" "The one big idea underlying the new class model is that an API for " "describing the attributes of an object using :dfn:`descriptors` has been " "formalized. Descriptors specify the value of an attribute, stating whether " "it's a method or a field. With the descriptor API, static methods and class " "methods become possible, as well as more exotic constructs." msgstr "" #: ../Doc/whatsnew/2.2.rst:169 msgid "" "Attribute descriptors are objects that live inside class objects, and have a " "few attributes of their own:" msgstr "" #: ../Doc/whatsnew/2.2.rst:172 msgid ":attr:`~definition.__name__` is the attribute's name." msgstr "" #: ../Doc/whatsnew/2.2.rst:174 msgid ":attr:`__doc__` is the attribute's docstring." msgstr "" #: ../Doc/whatsnew/2.2.rst:176 msgid "" "``__get__(object)`` is a method that retrieves the attribute value from " "*object*." msgstr "" #: ../Doc/whatsnew/2.2.rst:179 msgid "``__set__(object, value)`` sets the attribute on *object* to *value*." msgstr "" #: ../Doc/whatsnew/2.2.rst:181 msgid "" "``__delete__(object, value)`` deletes the *value* attribute of *object*." msgstr "" #: ../Doc/whatsnew/2.2.rst:183 msgid "" "For example, when you write ``obj.x``, the steps that Python actually " "performs are::" msgstr "" #: ../Doc/whatsnew/2.2.rst:189 msgid "" "For methods, :meth:`descriptor.__get__` returns a temporary object that's " "callable, and wraps up the instance and the method to be called on it. This " "is also why static methods and class methods are now possible; they have " "descriptors that wrap up just the method, or the method and the class. As a " "brief explanation of these new kinds of methods, static methods aren't " "passed the instance, and therefore resemble regular functions. Class " "methods are passed the class of the object, but not the object itself. " "Static and class methods are defined like this::" msgstr "" #: ../Doc/whatsnew/2.2.rst:207 msgid "" "The :func:`staticmethod` function takes the function :func:`f`, and returns " "it wrapped up in a descriptor so it can be stored in the class object. You " "might expect there to be special syntax for creating such methods (``def " "static f``, ``defstatic f()``, or something like that) but no such syntax " "has been defined yet; that's been left for future versions of Python." msgstr "" #: ../Doc/whatsnew/2.2.rst:213 msgid "" "More new features, such as slots and properties, are also implemented as new " "kinds of descriptors, and it's not difficult to write a descriptor class " "that does something novel. For example, it would be possible to write a " "descriptor class that made it possible to write Eiffel-style preconditions " "and postconditions for a method. A class that used this feature might be " "defined like this::" msgstr "" #: ../Doc/whatsnew/2.2.rst:235 msgid "" "Note that a person using the new :func:`eiffelmethod` doesn't have to " "understand anything about descriptors. This is why I think the new features " "don't increase the basic complexity of the language. There will be a few " "wizards who need to know about it in order to write :func:`eiffelmethod` or " "the ZODB or whatever, but most users will just write code on top of the " "resulting libraries and ignore the implementation details." msgstr "" #: ../Doc/whatsnew/2.2.rst:244 msgid "Multiple Inheritance: The Diamond Rule" msgstr "Héritage multiple : la règle du diamant" #: ../Doc/whatsnew/2.2.rst:246 msgid "" "Multiple inheritance has also been made more useful through changing the " "rules under which names are resolved. Consider this set of classes (diagram " "taken from :pep:`253` by Guido van Rossum)::" msgstr "" #: ../Doc/whatsnew/2.2.rst:264 msgid "" "The lookup rule for classic classes is simple but not very smart; the base " "classes are searched depth-first, going from left to right. A reference to :" "meth:`D.save` will search the classes :class:`D`, :class:`B`, and then :" "class:`A`, where :meth:`save` would be found and returned. :meth:`C.save` " "would never be found at all. This is bad, because if :class:`C`'s :meth:" "`save` method is saving some internal state specific to :class:`C`, not " "calling it will result in that state never getting saved." msgstr "" #: ../Doc/whatsnew/2.2.rst:272 msgid "" "New-style classes follow a different algorithm that's a bit more complicated " "to explain, but does the right thing in this situation. (Note that Python " "2.3 changes this algorithm to one that produces the same results in most " "cases, but produces more useful results for really complicated inheritance " "graphs.)" msgstr "" #: ../Doc/whatsnew/2.2.rst:277 msgid "" "List all the base classes, following the classic lookup rule and include a " "class multiple times if it's visited repeatedly. In the above example, the " "list of visited classes is [:class:`D`, :class:`B`, :class:`A`, :class:`C`, :" "class:`A`]." msgstr "" #: ../Doc/whatsnew/2.2.rst:282 msgid "" "Scan the list for duplicated classes. If any are found, remove all but one " "occurrence, leaving the *last* one in the list. In the above example, the " "list becomes [:class:`D`, :class:`B`, :class:`C`, :class:`A`] after dropping " "duplicates." msgstr "" #: ../Doc/whatsnew/2.2.rst:287 msgid "" "Following this rule, referring to :meth:`D.save` will return :meth:`C.save`, " "which is the behaviour we're after. This lookup rule is the same as the one " "followed by Common Lisp. A new built-in function, :func:`super`, provides a " "way to get at a class's superclasses without having to reimplement Python's " "algorithm. The most commonly used form will be ``super(class, obj)``, which " "returns a bound superclass object (not the actual class object). This form " "will be used in methods to call a method in the superclass; for example, :" "class:`D`'s :meth:`save` method would look like this::" msgstr "" #: ../Doc/whatsnew/2.2.rst:303 msgid "" ":func:`super` can also return unbound superclass objects when called as " "``super(class)`` or ``super(class1, class2)``, but this probably won't often " "be useful." msgstr "" #: ../Doc/whatsnew/2.2.rst:309 msgid "Attribute Access" msgstr "" #: ../Doc/whatsnew/2.2.rst:311 msgid "" "A fair number of sophisticated Python classes define hooks for attribute " "access using :meth:`__getattr__`; most commonly this is done for " "convenience, to make code more readable by automatically mapping an " "attribute access such as ``obj.parent`` into a method call such as ``obj." "get_parent``. Python 2.2 adds some new ways of controlling attribute access." msgstr "" #: ../Doc/whatsnew/2.2.rst:317 msgid "" "First, ``__getattr__(attr_name)`` is still supported by new-style classes, " "and nothing about it has changed. As before, it will be called when an " "attempt is made to access ``obj.foo`` and no attribute named ``foo`` is " "found in the instance's dictionary." msgstr "" #: ../Doc/whatsnew/2.2.rst:322 msgid "" "New-style classes also support a new method, " "``__getattribute__(attr_name)``. The difference between the two methods is " "that :meth:`__getattribute__` is *always* called whenever any attribute is " "accessed, while the old :meth:`__getattr__` is only called if ``foo`` isn't " "found in the instance's dictionary." msgstr "" #: ../Doc/whatsnew/2.2.rst:328 msgid "" "However, Python 2.2's support for :dfn:`properties` will often be a simpler " "way to trap attribute references. Writing a :meth:`__getattr__` method is " "complicated because to avoid recursion you can't use regular attribute " "accesses inside them, and instead have to mess around with the contents of :" "attr:`~object.__dict__`. :meth:`__getattr__` methods also end up being " "called by Python when it checks for other methods such as :meth:`__repr__` " "or :meth:`__coerce__`, and so have to be written with this in mind. Finally, " "calling a function on every attribute access results in a sizable " "performance loss." msgstr "" #: ../Doc/whatsnew/2.2.rst:337 msgid "" ":class:`property` is a new built-in type that packages up three functions " "that get, set, or delete an attribute, and a docstring. For example, if you " "want to define a :attr:`size` attribute that's computed, but also settable, " "you could write::" msgstr "" #: ../Doc/whatsnew/2.2.rst:357 msgid "" "That is certainly clearer and easier to write than a pair of :meth:" "`__getattr__`/:meth:`__setattr__` methods that check for the :attr:`size` " "attribute and handle it specially while retrieving all other attributes from " "the instance's :attr:`~object.__dict__`. Accesses to :attr:`size` are also " "the only ones which have to perform the work of calling a function, so " "references to other attributes run at their usual speed." msgstr "" #: ../Doc/whatsnew/2.2.rst:364 msgid "" "Finally, it's possible to constrain the list of attributes that can be " "referenced on an object using the new :attr:`~object.__slots__` class " "attribute. Python objects are usually very dynamic; at any time it's " "possible to define a new attribute on an instance by just doing ``obj." "new_attr=1``. A new-style class can define a class attribute named :attr:" "`~object.__slots__` to limit the legal attributes to a particular set of " "names. An example will make this clear::" msgstr "" #: ../Doc/whatsnew/2.2.rst:385 msgid "" "Note how you get an :exc:`AttributeError` on the attempt to assign to an " "attribute not listed in :attr:`~object.__slots__`." msgstr "" #: ../Doc/whatsnew/2.2.rst:392 msgid "Related Links" msgstr "" #: ../Doc/whatsnew/2.2.rst:394 msgid "" "This section has just been a quick overview of the new features, giving " "enough of an explanation to start you programming, but many details have " "been simplified or ignored. Where should you go to get a more complete " "picture?" msgstr "" #: ../Doc/whatsnew/2.2.rst:398 msgid "" "https://docs.python.org/dev/howto/descriptor.html is a lengthy tutorial " "introduction to the descriptor features, written by Guido van Rossum. If my " "description has whetted your appetite, go read this tutorial next, because " "it goes into much more detail about the new features while still remaining " "quite easy to read." msgstr "" #: ../Doc/whatsnew/2.2.rst:403 msgid "" "Next, there are two relevant PEPs, :pep:`252` and :pep:`253`. :pep:`252` is " "titled \"Making Types Look More Like Classes\", and covers the descriptor " "API. :pep:`253` is titled \"Subtyping Built-in Types\", and describes the " "changes to type objects that make it possible to subtype built-in objects. :" "pep:`253` is the more complicated PEP of the two, and at a few points the " "necessary explanations of types and meta-types may cause your head to " "explode. Both PEPs were written and implemented by Guido van Rossum, with " "substantial assistance from the rest of the Zope Corp. team." msgstr "" #: ../Doc/whatsnew/2.2.rst:412 msgid "" "Finally, there's the ultimate authority: the source code. Most of the " "machinery for the type handling is in :file:`Objects/typeobject.c`, but you " "should only resort to it after all other avenues have been exhausted, " "including posting a question to python-list or python-dev." msgstr "" #: ../Doc/whatsnew/2.2.rst:421 msgid "PEP 234: Iterators" msgstr "PEP 234 : Itérateurs" #: ../Doc/whatsnew/2.2.rst:423 msgid "" "Another significant addition to 2.2 is an iteration interface at both the C " "and Python levels. Objects can define how they can be looped over by " "callers." msgstr "" #: ../Doc/whatsnew/2.2.rst:426 msgid "" "In Python versions up to 2.1, the usual way to make ``for item in obj`` work " "is to define a :meth:`__getitem__` method that looks something like this::" msgstr "" #: ../Doc/whatsnew/2.2.rst:432 msgid "" ":meth:`__getitem__` is more properly used to define an indexing operation on " "an object so that you can write ``obj[5]`` to retrieve the sixth element. " "It's a bit misleading when you're using this only to support :keyword:`for` " "loops. Consider some file-like object that wants to be looped over; the " "*index* parameter is essentially meaningless, as the class probably assumes " "that a series of :meth:`__getitem__` calls will be made with *index* " "incrementing by one each time. In other words, the presence of the :meth:" "`__getitem__` method doesn't mean that using ``file[5]`` to randomly access " "the sixth element will work, though it really should." msgstr "" #: ../Doc/whatsnew/2.2.rst:442 msgid "" "In Python 2.2, iteration can be implemented separately, and :meth:" "`__getitem__` methods can be limited to classes that really do support " "random access. The basic idea of iterators is simple. A new built-in " "function, ``iter(obj)`` or ``iter(C, sentinel)``, is used to get an " "iterator. ``iter(obj)`` returns an iterator for the object *obj*, while " "``iter(C, sentinel)`` returns an iterator that will invoke the callable " "object *C* until it returns *sentinel* to signal that the iterator is done." msgstr "" #: ../Doc/whatsnew/2.2.rst:450 msgid "" "Python classes can define an :meth:`__iter__` method, which should create " "and return a new iterator for the object; if the object is its own iterator, " "this method can just return ``self``. In particular, iterators will usually " "be their own iterators. Extension types implemented in C can implement a :c:" "member:`~PyTypeObject.tp_iter` function in order to return an iterator, and " "extension types that want to behave as iterators can define a :c:member:" "`~PyTypeObject.tp_iternext` function." msgstr "" #: ../Doc/whatsnew/2.2.rst:457 msgid "" "So, after all this, what do iterators actually do? They have one required " "method, :meth:`next`, which takes no arguments and returns the next value. " "When there are no more values to be returned, calling :meth:`next` should " "raise the :exc:`StopIteration` exception. ::" msgstr "" #: ../Doc/whatsnew/2.2.rst:478 msgid "" "In 2.2, Python's :keyword:`for` statement no longer expects a sequence; it " "expects something for which :func:`iter` will return an iterator. For " "backward compatibility and convenience, an iterator is automatically " "constructed for sequences that don't implement :meth:`__iter__` or a :c:" "member:`~PyTypeObject.tp_iter` slot, so ``for i in [1,2,3]`` will still " "work. Wherever the Python interpreter loops over a sequence, it's been " "changed to use the iterator protocol. This means you can do things like " "this::" msgstr "" #: ../Doc/whatsnew/2.2.rst:492 msgid "" "Iterator support has been added to some of Python's basic types. Calling :" "func:`iter` on a dictionary will return an iterator which loops over its " "keys::" msgstr "" #: ../Doc/whatsnew/2.2.rst:512 msgid "" "That's just the default behaviour. If you want to iterate over keys, " "values, or key/value pairs, you can explicitly call the :meth:`iterkeys`, :" "meth:`itervalues`, or :meth:`iteritems` methods to get an appropriate " "iterator. In a minor related change, the :keyword:`in` operator now works on " "dictionaries, so ``key in dict`` is now equivalent to ``dict.has_key(key)``." msgstr "" #: ../Doc/whatsnew/2.2.rst:518 msgid "" "Files also provide an iterator, which calls the :meth:`readline` method " "until there are no more lines in the file. This means you can now read each " "line of a file using code like this::" msgstr "" #: ../Doc/whatsnew/2.2.rst:526 msgid "" "Note that you can only go forward in an iterator; there's no way to get the " "previous element, reset the iterator, or make a copy of it. An iterator " "object could provide such additional capabilities, but the iterator protocol " "only requires a :meth:`next` method." msgstr "" #: ../Doc/whatsnew/2.2.rst:535 msgid ":pep:`234` - Iterators" msgstr ":pep:`234` - Itérateurs" #: ../Doc/whatsnew/2.2.rst:535 msgid "" "Written by Ka-Ping Yee and GvR; implemented by the Python Labs crew, mostly " "by GvR and Tim Peters." msgstr "" #: ../Doc/whatsnew/2.2.rst:542 ../Doc/whatsnew/2.3.rst:126 msgid "PEP 255: Simple Generators" msgstr "PEP 255 : Générateurs simples" #: ../Doc/whatsnew/2.2.rst:544 msgid "" "Generators are another new feature, one that interacts with the introduction " "of iterators." msgstr "" #: ../Doc/whatsnew/2.2.rst:547 msgid "" "You're doubtless familiar with how function calls work in Python or C. When " "you call a function, it gets a private namespace where its local variables " "are created. When the function reaches a :keyword:`return` statement, the " "local variables are destroyed and the resulting value is returned to the " "caller. A later call to the same function will get a fresh new set of local " "variables. But, what if the local variables weren't thrown away on exiting a " "function? What if you could later resume the function where it left off? " "This is what generators provide; they can be thought of as resumable " "functions." msgstr "" #: ../Doc/whatsnew/2.2.rst:556 ../Doc/whatsnew/2.3.rst:145 msgid "Here's the simplest example of a generator function::" msgstr "" #: ../Doc/whatsnew/2.2.rst:562 msgid "" "A new keyword, :keyword:`yield`, was introduced for generators. Any " "function containing a :keyword:`yield` statement is a generator function; " "this is detected by Python's bytecode compiler which compiles the function " "specially as a result. Because a new keyword was introduced, generators " "must be explicitly enabled in a module by including a ``from __future__ " "import generators`` statement near the top of the module's source code. In " "Python 2.3 this statement will become unnecessary." msgstr "" #: ../Doc/whatsnew/2.2.rst:570 msgid "" "When you call a generator function, it doesn't return a single value; " "instead it returns a generator object that supports the iterator protocol. " "On executing the :keyword:`yield` statement, the generator outputs the value " "of ``i``, similar to a :keyword:`return` statement. The big difference " "between :keyword:`yield` and a :keyword:`return` statement is that on " "reaching a :keyword:`yield` the generator's state of execution is suspended " "and local variables are preserved. On the next call to the generator's " "``next()`` method, the function will resume executing immediately after the :" "keyword:`yield` statement. (For complicated reasons, the :keyword:`yield` " "statement isn't allowed inside the :keyword:`try` block of a :keyword:" "`try`...\\ :keyword:`finally` statement; read :pep:`255` for a full " "explanation of the interaction between :keyword:`yield` and exceptions.)" msgstr "" #: ../Doc/whatsnew/2.2.rst:583 ../Doc/whatsnew/2.3.rst:169 msgid "Here's a sample usage of the :func:`generate_ints` generator::" msgstr "" #: ../Doc/whatsnew/2.2.rst:600 ../Doc/whatsnew/2.3.rst:186 msgid "" "You could equally write ``for i in generate_ints(5)``, or ``a,b,c = " "generate_ints(3)``." msgstr "" #: ../Doc/whatsnew/2.2.rst:603 ../Doc/whatsnew/2.3.rst:189 msgid "" "Inside a generator function, the :keyword:`return` statement can only be " "used without a value, and signals the end of the procession of values; " "afterwards the generator cannot return any further values. :keyword:`return` " "with a value, such as ``return 5``, is a syntax error inside a generator " "function. The end of the generator's results can also be indicated by " "raising :exc:`StopIteration` manually, or by just letting the flow of " "execution fall off the bottom of the function." msgstr "" #: ../Doc/whatsnew/2.2.rst:611 ../Doc/whatsnew/2.3.rst:197 msgid "" "You could achieve the effect of generators manually by writing your own " "class and storing all the local variables of the generator as instance " "variables. For example, returning a list of integers could be done by " "setting ``self.count`` to 0, and having the :meth:`next` method increment " "``self.count`` and return it. However, for a moderately complicated " "generator, writing a corresponding class would be much messier. :file:`Lib/" "test/test_generators.py` contains a number of more interesting examples. " "The simplest one implements an in-order traversal of a tree using generators " "recursively. ::" msgstr "" #: ../Doc/whatsnew/2.2.rst:629 ../Doc/whatsnew/2.3.rst:215 msgid "" "Two other examples in :file:`Lib/test/test_generators.py` produce solutions " "for the N-Queens problem (placing $N$ queens on an $NxN$ chess board so that " "no queen threatens another) and the Knight's Tour (a route that takes a " "knight to every square of an $NxN$ chessboard without visiting any square " "twice)." msgstr "" #: ../Doc/whatsnew/2.2.rst:634 ../Doc/whatsnew/2.3.rst:220 msgid "" "The idea of generators comes from other programming languages, especially " "Icon (https://www.cs.arizona.edu/icon/), where the idea of generators is " "central. In Icon, every expression and function call behaves like a " "generator. One example from \"An Overview of the Icon Programming Language" "\" at https://www.cs.arizona.edu/icon/docs/ipd266.htm gives an idea of what " "this looks like::" msgstr "" #: ../Doc/whatsnew/2.2.rst:644 ../Doc/whatsnew/2.3.rst:230 msgid "" "In Icon the :func:`find` function returns the indexes at which the substring " "\"or\" is found: 3, 23, 33. In the :keyword:`if` statement, ``i`` is first " "assigned a value of 3, but 3 is less than 5, so the comparison fails, and " "Icon retries it with the second value of 23. 23 is greater than 5, so the " "comparison now succeeds, and the code prints the value 23 to the screen." msgstr "" #: ../Doc/whatsnew/2.2.rst:650 msgid "" "Python doesn't go nearly as far as Icon in adopting generators as a central " "concept. Generators are considered a new part of the core Python language, " "but learning or using them isn't compulsory; if they don't solve any " "problems that you have, feel free to ignore them. One novel feature of " "Python's interface as compared to Icon's is that a generator's state is " "represented as a concrete object (the iterator) that can be passed around to " "other functions or stored in a data structure." msgstr "" #: ../Doc/whatsnew/2.2.rst:662 ../Doc/whatsnew/2.3.rst:248 msgid ":pep:`255` - Simple Generators" msgstr ":pep:`255`: Générateurs simples" #: ../Doc/whatsnew/2.2.rst:662 ../Doc/whatsnew/2.3.rst:248 msgid "" "Written by Neil Schemenauer, Tim Peters, Magnus Lie Hetland. Implemented " "mostly by Neil Schemenauer and Tim Peters, with other fixes from the Python " "Labs crew." msgstr "" #: ../Doc/whatsnew/2.2.rst:669 ../Doc/whatsnew/2.4.rst:90 msgid "PEP 237: Unifying Long Integers and Integers" msgstr "" #: ../Doc/whatsnew/2.2.rst:671 msgid "" "In recent versions, the distinction between regular integers, which are 32-" "bit values on most machines, and long integers, which can be of arbitrary " "size, was becoming an annoyance. For example, on platforms that support " "files larger than ``2**32`` bytes, the :meth:`tell` method of file objects " "has to return a long integer. However, there were various bits of Python " "that expected plain integers and would raise an error if a long integer was " "provided instead. For example, in Python 1.5, only regular integers could " "be used as a slice index, and ``'abc'[1L:]`` would raise a :exc:`TypeError` " "exception with the message 'slice index must be int'." msgstr "" #: ../Doc/whatsnew/2.2.rst:681 msgid "" "Python 2.2 will shift values from short to long integers as required. The " "'L' suffix is no longer needed to indicate a long integer literal, as now " "the compiler will choose the appropriate type. (Using the 'L' suffix will " "be discouraged in future 2.x versions of Python, triggering a warning in " "Python 2.4, and probably dropped in Python 3.0.) Many operations that used " "to raise an :exc:`OverflowError` will now return a long integer as their " "result. For example::" msgstr "" #: ../Doc/whatsnew/2.2.rst:694 msgid "" "In most cases, integers and long integers will now be treated identically. " "You can still distinguish them with the :func:`type` built-in function, but " "that's rarely needed." msgstr "" #: ../Doc/whatsnew/2.2.rst:702 ../Doc/whatsnew/2.4.rst:108 msgid ":pep:`237` - Unifying Long Integers and Integers" msgstr "" #: ../Doc/whatsnew/2.2.rst:702 msgid "" "Written by Moshe Zadka and Guido van Rossum. Implemented mostly by Guido " "van Rossum." msgstr "" #: ../Doc/whatsnew/2.2.rst:709 msgid "PEP 238: Changing the Division Operator" msgstr "" #: ../Doc/whatsnew/2.2.rst:711 msgid "" "The most controversial change in Python 2.2 heralds the start of an effort " "to fix an old design flaw that's been in Python from the beginning. " "Currently Python's division operator, ``/``, behaves like C's division " "operator when presented with two integer arguments: it returns an integer " "result that's truncated down when there would be a fractional part. For " "example, ``3/2`` is 1, not 1.5, and ``(-1)/2`` is -1, not -0.5. This means " "that the results of division can vary unexpectedly depending on the type of " "the two operands and because Python is dynamically typed, it can be " "difficult to determine the possible types of the operands." msgstr "" #: ../Doc/whatsnew/2.2.rst:721 msgid "" "(The controversy is over whether this is *really* a design flaw, and whether " "it's worth breaking existing code to fix this. It's caused endless " "discussions on python-dev, and in July 2001 erupted into a storm of acidly " "sarcastic postings on :newsgroup:`comp.lang.python`. I won't argue for " "either side here and will stick to describing what's implemented in 2.2. " "Read :pep:`238` for a summary of arguments and counter-arguments.)" msgstr "" #: ../Doc/whatsnew/2.2.rst:728 msgid "" "Because this change might break code, it's being introduced very gradually. " "Python 2.2 begins the transition, but the switch won't be complete until " "Python 3.0." msgstr "" #: ../Doc/whatsnew/2.2.rst:732 msgid "" "First, I'll borrow some terminology from :pep:`238`. \"True division\" is " "the division that most non-programmers are familiar with: 3/2 is 1.5, 1/4 is " "0.25, and so forth. \"Floor division\" is what Python's ``/`` operator " "currently does when given integer operands; the result is the floor of the " "value returned by true division. \"Classic division\" is the current mixed " "behaviour of ``/``; it returns the result of floor division when the " "operands are integers, and returns the result of true division when one of " "the operands is a floating-point number." msgstr "" #: ../Doc/whatsnew/2.2.rst:740 msgid "Here are the changes 2.2 introduces:" msgstr "" #: ../Doc/whatsnew/2.2.rst:742 msgid "" "A new operator, ``//``, is the floor division operator. (Yes, we know it " "looks like C++'s comment symbol.) ``//`` *always* performs floor division " "no matter what the types of its operands are, so ``1 // 2`` is 0 and " "``1.0 // 2.0`` is also 0.0." msgstr "" #: ../Doc/whatsnew/2.2.rst:747 msgid "" "``//`` is always available in Python 2.2; you don't need to enable it using " "a ``__future__`` statement." msgstr "" #: ../Doc/whatsnew/2.2.rst:750 msgid "" "By including a ``from __future__ import division`` in a module, the ``/`` " "operator will be changed to return the result of true division, so ``1/2`` " "is 0.5. Without the ``__future__`` statement, ``/`` still means classic " "division. The default meaning of ``/`` will not change until Python 3.0." msgstr "" #: ../Doc/whatsnew/2.2.rst:755 msgid "" "Classes can define methods called :meth:`__truediv__` and :meth:" "`__floordiv__` to overload the two division operators. At the C level, " "there are also slots in the :c:type:`PyNumberMethods` structure so extension " "types can define the two operators." msgstr "" #: ../Doc/whatsnew/2.2.rst:760 msgid "" "Python 2.2 supports some command-line arguments for testing whether code " "will work with the changed division semantics. Running python with :option:" "`-Q warn` will cause a warning to be issued whenever division is applied to " "two integers. You can use this to find code that's affected by the change " "and fix it. By default, Python 2.2 will simply perform classic division " "without a warning; the warning will be turned on by default in Python 2.3." msgstr "" #: ../Doc/whatsnew/2.2.rst:770 msgid ":pep:`238` - Changing the Division Operator" msgstr ":pep:`238` - Changing the Division Operator" #: ../Doc/whatsnew/2.2.rst:771 msgid "" "Written by Moshe Zadka and Guido van Rossum. Implemented by Guido van " "Rossum.." msgstr "" #: ../Doc/whatsnew/2.2.rst:777 msgid "Unicode Changes" msgstr "" #: ../Doc/whatsnew/2.2.rst:779 msgid "" "Python's Unicode support has been enhanced a bit in 2.2. Unicode strings " "are usually stored as UCS-2, as 16-bit unsigned integers. Python 2.2 can " "also be compiled to use UCS-4, 32-bit unsigned integers, as its internal " "encoding by supplying :option:`--enable-unicode=ucs4` to the configure " "script. (It's also possible to specify :option:`--disable-unicode` to " "completely disable Unicode support.)" msgstr "" #: ../Doc/whatsnew/2.2.rst:786 msgid "" "When built to use UCS-4 (a \"wide Python\"), the interpreter can natively " "handle Unicode characters from U+000000 to U+110000, so the range of legal " "values for the :func:`unichr` function is expanded accordingly. Using an " "interpreter compiled to use UCS-2 (a \"narrow Python\"), values greater than " "65535 will still cause :func:`unichr` to raise a :exc:`ValueError` " "exception. This is all described in :pep:`261`, \"Support for 'wide' Unicode " "characters\"; consult it for further details." msgstr "" #: ../Doc/whatsnew/2.2.rst:794 msgid "" "Another change is simpler to explain. Since their introduction, Unicode " "strings have supported an :meth:`encode` method to convert the string to a " "selected encoding such as UTF-8 or Latin-1. A symmetric " "``decode([*encoding*])`` method has been added to 8-bit strings (though not " "to Unicode strings) in 2.2. :meth:`decode` assumes that the string is in the " "specified encoding and decodes it, returning whatever is returned by the " "codec." msgstr "" #: ../Doc/whatsnew/2.2.rst:801 msgid "" "Using this new feature, codecs have been added for tasks not directly " "related to Unicode. For example, codecs have been added for uu-encoding, " "MIME's base64 encoding, and compression with the :mod:`zlib` module::" msgstr "" #: ../Doc/whatsnew/2.2.rst:822 msgid "" "To convert a class instance to Unicode, a :meth:`__unicode__` method can be " "defined by a class, analogous to :meth:`__str__`." msgstr "" #: ../Doc/whatsnew/2.2.rst:825 msgid "" ":meth:`encode`, :meth:`decode`, and :meth:`__unicode__` were implemented by " "Marc-André Lemburg. The changes to support using UCS-4 internally were " "implemented by Fredrik Lundh and Martin von Löwis." msgstr "" #: ../Doc/whatsnew/2.2.rst:832 msgid ":pep:`261` - Support for 'wide' Unicode characters" msgstr "" #: ../Doc/whatsnew/2.2.rst:833 msgid "Written by Paul Prescod." msgstr "" #: ../Doc/whatsnew/2.2.rst:841 msgid "" "In Python 2.1, statically nested scopes were added as an optional feature, " "to be enabled by a ``from __future__ import nested_scopes`` directive. In " "2.2 nested scopes no longer need to be specially enabled, and are now always " "present. The rest of this section is a copy of the description of nested " "scopes from my \"What's New in Python 2.1\" document; if you read it when " "2.1 came out, you can skip the rest of this section." msgstr "" #: ../Doc/whatsnew/2.2.rst:848 msgid "" "The largest change introduced in Python 2.1, and made complete in 2.2, is to " "Python's scoping rules. In Python 2.0, at any given time there are at most " "three namespaces used to look up variable names: local, module-level, and " "the built-in namespace. This often surprised people because it didn't match " "their intuitive expectations. For example, a nested recursive function " "definition doesn't work::" msgstr "" #: ../Doc/whatsnew/2.2.rst:879 msgid "" "The most significant change to Python 2.2 is that static scoping has been " "added to the language to fix this problem. As a first effect, the " "``name=name`` default argument is now unnecessary in the above example. Put " "simply, when a given variable name is not assigned a value within a function " "(by an assignment, or the :keyword:`def`, :keyword:`class`, or :keyword:" "`import` statements), references to the variable will be looked up in the " "local namespace of the enclosing scope. A more detailed explanation of the " "rules, and a dissection of the implementation, can be found in the PEP." msgstr "" #: ../Doc/whatsnew/2.2.rst:936 msgid "" "The :mod:`xmlrpclib` module was contributed to the standard library by " "Fredrik Lundh, providing support for writing XML-RPC clients. XML-RPC is a " "simple remote procedure call protocol built on top of HTTP and XML. For " "example, the following snippet retrieves a list of RSS channels from the " "O'Reilly Network, and then lists the recent headlines for one channel::" msgstr "" #: ../Doc/whatsnew/2.2.rst:959 msgid "" "The :mod:`SimpleXMLRPCServer` module makes it easy to create straightforward " "XML-RPC servers. See http://www.xmlrpc.com/ for more information about XML-" "RPC." msgstr "" #: ../Doc/whatsnew/2.2.rst:962 msgid "" "The new :mod:`hmac` module implements the HMAC algorithm described by :rfc:" "`2104`. (Contributed by Gerhard Häring.)" msgstr "" #: ../Doc/whatsnew/2.2.rst:965 msgid "" "Several functions that originally returned lengthy tuples now return pseudo- " "sequences that still behave like tuples but also have mnemonic attributes " "such as memberst_mtime or :attr:`tm_year`. The enhanced functions include :" "func:`stat`, :func:`fstat`, :func:`statvfs`, and :func:`fstatvfs` in the :" "mod:`os` module, and :func:`localtime`, :func:`gmtime`, and :func:`strptime` " "in the :mod:`time` module." msgstr "" #: ../Doc/whatsnew/2.2.rst:972 msgid "" "For example, to obtain a file's size using the old tuples, you'd end up " "writing something like ``file_size = os.stat(filename)[stat.ST_SIZE]``, but " "now this can be written more clearly as ``file_size = os.stat(filename)." "st_size``." msgstr "" #: ../Doc/whatsnew/2.2.rst:976 msgid "The original patch for this feature was contributed by Nick Mathewson." msgstr "" #: ../Doc/whatsnew/2.2.rst:978 msgid "" "The Python profiler has been extensively reworked and various errors in its " "output have been corrected. (Contributed by Fred L. Drake, Jr. and Tim " "Peters.)" msgstr "" #: ../Doc/whatsnew/2.2.rst:981 msgid "" "The :mod:`socket` module can be compiled to support IPv6; specify the :" "option:`--enable-ipv6` option to Python's configure script. (Contributed by " "Jun-ichiro \"itojun\" Hagino.)" msgstr "" #: ../Doc/whatsnew/2.2.rst:985 msgid "" "Two new format characters were added to the :mod:`struct` module for 64-bit " "integers on platforms that support the C :c:type:`long long` type. ``q`` is " "for a signed 64-bit integer, and ``Q`` is for an unsigned one. The value is " "returned in Python's long integer type. (Contributed by Tim Peters.)" msgstr "" #: ../Doc/whatsnew/2.2.rst:990 msgid "" "In the interpreter's interactive mode, there's a new built-in function :func:" "`help` that uses the :mod:`pydoc` module introduced in Python 2.1 to provide " "interactive help. ``help(object)`` displays any available help text about " "*object*. :func:`help` with no argument puts you in an online help utility, " "where you can enter the names of functions, classes, or modules to read " "their help text. (Contributed by Guido van Rossum, using Ka-Ping Yee's :mod:" "`pydoc` module.)" msgstr "" #: ../Doc/whatsnew/2.2.rst:998 msgid "" "Various bugfixes and performance improvements have been made to the SRE " "engine underlying the :mod:`re` module. For example, the :func:`re.sub` " "and :func:`re.split` functions have been rewritten in C. Another " "contributed patch speeds up certain Unicode character ranges by a factor of " "two, and a new :meth:`finditer` method that returns an iterator over all " "the non-overlapping matches in a given string. (SRE is maintained by " "Fredrik Lundh. The BIGCHARSET patch was contributed by Martin von Löwis.)" msgstr "" #: ../Doc/whatsnew/2.2.rst:1006 msgid "" "The :mod:`smtplib` module now supports :rfc:`2487`, \"Secure SMTP over TLS" "\", so it's now possible to encrypt the SMTP traffic between a Python " "program and the mail transport agent being handed a message. :mod:`smtplib` " "also supports SMTP authentication. (Contributed by Gerhard Häring.)" msgstr "" #: ../Doc/whatsnew/2.2.rst:1011 msgid "" "The :mod:`imaplib` module, maintained by Piers Lauder, has support for " "several new extensions: the NAMESPACE extension defined in :rfc:`2342`, " "SORT, GETACL and SETACL. (Contributed by Anthony Baxter and Michel " "Pelletier.)" msgstr "" #: ../Doc/whatsnew/2.2.rst:1015 msgid "" "The :mod:`rfc822` module's parsing of email addresses is now compliant with :" "rfc:`2822`, an update to :rfc:`822`. (The module's name is *not* going to " "be changed to ``rfc2822``.) A new package, :mod:`email`, has also been " "added for parsing and generating e-mail messages. (Contributed by Barry " "Warsaw, and arising out of his work on Mailman.)" msgstr "" #: ../Doc/whatsnew/2.2.rst:1021 msgid "" "The :mod:`difflib` module now contains a new :class:`Differ` class for " "producing human-readable lists of changes (a \"delta\") between two " "sequences of lines of text. There are also two generator functions, :func:" "`ndiff` and :func:`restore`, which respectively return a delta from two " "sequences, or one of the original sequences from a delta. (Grunt work " "contributed by David Goodger, from ndiff.py code by Tim Peters who then did " "the generatorization.)" msgstr "" #: ../Doc/whatsnew/2.2.rst:1028 msgid "" "New constants :const:`ascii_letters`, :const:`ascii_lowercase`, and :const:" "`ascii_uppercase` were added to the :mod:`string` module. There were " "several modules in the standard library that used :const:`string.letters` to " "mean the ranges A-Za-z, but that assumption is incorrect when locales are in " "use, because :const:`string.letters` varies depending on the set of legal " "characters defined by the current locale. The buggy modules have all been " "fixed to use :const:`ascii_letters` instead. (Reported by an unknown person; " "fixed by Fred L. Drake, Jr.)" msgstr "" #: ../Doc/whatsnew/2.2.rst:1037 msgid "" "The :mod:`mimetypes` module now makes it easier to use alternative MIME-type " "databases by the addition of a :class:`MimeTypes` class, which takes a list " "of filenames to be parsed. (Contributed by Fred L. Drake, Jr.)" msgstr "" #: ../Doc/whatsnew/2.2.rst:1041 msgid "" "A :class:`Timer` class was added to the :mod:`threading` module that allows " "scheduling an activity to happen at some future time. (Contributed by " "Itamar Shtull-Trauring.)" msgstr "" #: ../Doc/whatsnew/2.2.rst:1049 msgid "Interpreter Changes and Fixes" msgstr "" #: ../Doc/whatsnew/2.2.rst:1051 msgid "" "Some of the changes only affect people who deal with the Python interpreter " "at the C level because they're writing Python extension modules, embedding " "the interpreter, or just hacking on the interpreter itself. If you only " "write Python code, none of the changes described here will affect you very " "much." msgstr "" #: ../Doc/whatsnew/2.2.rst:1056 msgid "" "Profiling and tracing functions can now be implemented in C, which can " "operate at much higher speeds than Python-based functions and should reduce " "the overhead of profiling and tracing. This will be of interest to authors " "of development environments for Python. Two new C functions were added to " "Python's API, :c:func:`PyEval_SetProfile` and :c:func:`PyEval_SetTrace`. The " "existing :func:`sys.setprofile` and :func:`sys.settrace` functions still " "exist, and have simply been changed to use the new C-level interface. " "(Contributed by Fred L. Drake, Jr.)" msgstr "" #: ../Doc/whatsnew/2.2.rst:1065 msgid "" "Another low-level API, primarily of interest to implementors of Python " "debuggers and development tools, was added. :c:func:" "`PyInterpreterState_Head` and :c:func:`PyInterpreterState_Next` let a caller " "walk through all the existing interpreter objects; :c:func:" "`PyInterpreterState_ThreadHead` and :c:func:`PyThreadState_Next` allow " "looping over all the thread states for a given interpreter. (Contributed by " "David Beazley.)" msgstr "" #: ../Doc/whatsnew/2.2.rst:1072 msgid "" "The C-level interface to the garbage collector has been changed to make it " "easier to write extension types that support garbage collection and to debug " "misuses of the functions. Various functions have slightly different " "semantics, so a bunch of functions had to be renamed. Extensions that use " "the old API will still compile but will *not* participate in garbage " "collection, so updating them for 2.2 should be considered fairly high " "priority." msgstr "" #: ../Doc/whatsnew/2.2.rst:1079 msgid "" "To upgrade an extension module to the new API, perform the following steps:" msgstr "" #: ../Doc/whatsnew/2.2.rst:1081 msgid "Rename :c:func:`Py_TPFLAGS_GC` to :c:func:`PyTPFLAGS_HAVE_GC`." msgstr "" #: ../Doc/whatsnew/2.2.rst:1084 msgid "" "Use :c:func:`PyObject_GC_New` or :c:func:`PyObject_GC_NewVar` to allocate" msgstr "" #: ../Doc/whatsnew/2.2.rst:1084 msgid "objects, and :c:func:`PyObject_GC_Del` to deallocate them." msgstr "" #: ../Doc/whatsnew/2.2.rst:1087 msgid "Rename :c:func:`PyObject_GC_Init` to :c:func:`PyObject_GC_Track` and" msgstr "" #: ../Doc/whatsnew/2.2.rst:1087 msgid ":c:func:`PyObject_GC_Fini` to :c:func:`PyObject_GC_UnTrack`." msgstr "" #: ../Doc/whatsnew/2.2.rst:1089 msgid "Remove :c:func:`PyGC_HEAD_SIZE` from object size calculations." msgstr "" #: ../Doc/whatsnew/2.2.rst:1091 msgid "" "Remove calls to :c:func:`PyObject_AS_GC` and :c:func:`PyObject_FROM_GC`." msgstr "" #: ../Doc/whatsnew/2.2.rst:1093 msgid "" "A new ``et`` format sequence was added to :c:func:`PyArg_ParseTuple`; ``et`` " "takes both a parameter and an encoding name, and converts the parameter to " "the given encoding if the parameter turns out to be a Unicode string, or " "leaves it alone if it's an 8-bit string, assuming it to already be in the " "desired encoding. This differs from the ``es`` format character, which " "assumes that 8-bit strings are in Python's default ASCII encoding and " "converts them to the specified new encoding. (Contributed by M.-A. Lemburg, " "and used for the MBCS support on Windows described in the following section.)" msgstr "" #: ../Doc/whatsnew/2.2.rst:1102 msgid "" "A different argument parsing function, :c:func:`PyArg_UnpackTuple`, has been " "added that's simpler and presumably faster. Instead of specifying a format " "string, the caller simply gives the minimum and maximum number of arguments " "expected, and a set of pointers to :c:type:`PyObject\\*` variables that will " "be filled in with argument values." msgstr "" #: ../Doc/whatsnew/2.2.rst:1108 msgid "" "Two new flags :const:`METH_NOARGS` and :const:`METH_O` are available in " "method definition tables to simplify implementation of methods with no " "arguments or a single untyped argument. Calling such methods is more " "efficient than calling a corresponding method that uses :const:" "`METH_VARARGS`. Also, the old :const:`METH_OLDARGS` style of writing C " "methods is now officially deprecated." msgstr "" #: ../Doc/whatsnew/2.2.rst:1114 msgid "" "Two new wrapper functions, :c:func:`PyOS_snprintf` and :c:func:" "`PyOS_vsnprintf` were added to provide cross-platform implementations for " "the relatively new :c:func:`snprintf` and :c:func:`vsnprintf` C lib APIs. In " "contrast to the standard :c:func:`sprintf` and :c:func:`vsprintf` functions, " "the Python versions check the bounds of the buffer used to protect against " "buffer overruns. (Contributed by M.-A. Lemburg.)" msgstr "" #: ../Doc/whatsnew/2.2.rst:1121 msgid "" "The :c:func:`_PyTuple_Resize` function has lost an unused parameter, so now " "it takes 2 parameters instead of 3. The third argument was never used, and " "can simply be discarded when porting code from earlier versions to Python " "2.2." msgstr "" #: ../Doc/whatsnew/2.2.rst:1131 msgid "" "As usual there were a bunch of other improvements and bugfixes scattered " "throughout the source tree. A search through the CVS change logs finds " "there were 527 patches applied and 683 bugs fixed between Python 2.1 and " "2.2; 2.2.1 applied 139 patches and fixed 143 bugs; 2.2.2 applied 106 patches " "and fixed 82 bugs. These figures are likely to be underestimates." msgstr "" #: ../Doc/whatsnew/2.2.rst:1137 ../Doc/whatsnew/2.3.rst:1973 msgid "Some of the more notable changes are:" msgstr "" #: ../Doc/whatsnew/2.2.rst:1139 msgid "" "The code for the MacOS port for Python, maintained by Jack Jansen, is now " "kept in the main Python CVS tree, and many changes have been made to support " "MacOS X." msgstr "" #: ../Doc/whatsnew/2.2.rst:1142 msgid "" "The most significant change is the ability to build Python as a framework, " "enabled by supplying the :option:`--enable-framework` option to the " "configure script when compiling Python. According to Jack Jansen, \"This " "installs a self- contained Python installation plus the OS X framework \"glue" "\" into :file:`/Library/Frameworks/Python.framework` (or another location of " "choice). For now there is little immediate added benefit to this (actually, " "there is the disadvantage that you have to change your PATH to be able to " "find Python), but it is the basis for creating a full-blown Python " "application, porting the MacPython IDE, possibly using Python as a standard " "OSA scripting language and much more.\"" msgstr "" #: ../Doc/whatsnew/2.2.rst:1153 msgid "" "Most of the MacPython toolbox modules, which interface to MacOS APIs such as " "windowing, QuickTime, scripting, etc. have been ported to OS X, but they've " "been left commented out in :file:`setup.py`. People who want to experiment " "with these modules can uncomment them manually." msgstr "" #: ../Doc/whatsnew/2.2.rst:1176 msgid "" "Keyword arguments passed to built-in functions that don't take them now " "cause a :exc:`TypeError` exception to be raised, with the message " "\"*function* takes no keyword arguments\"." msgstr "" #: ../Doc/whatsnew/2.2.rst:1180 msgid "" "Weak references, added in Python 2.1 as an extension module, are now part of " "the core because they're used in the implementation of new-style classes. " "The :exc:`ReferenceError` exception has therefore moved from the :mod:" "`weakref` module to become a built-in exception." msgstr "" #: ../Doc/whatsnew/2.2.rst:1185 msgid "" "A new script, :file:`Tools/scripts/cleanfuture.py` by Tim Peters, " "automatically removes obsolete ``__future__`` statements from Python source " "code." msgstr "" #: ../Doc/whatsnew/2.2.rst:1189 msgid "" "An additional *flags* argument has been added to the built-in function :func:" "`compile`, so the behaviour of ``__future__`` statements can now be " "correctly observed in simulated shells, such as those presented by IDLE and " "other development environments. This is described in :pep:`264`. " "(Contributed by Michael Hudson.)" msgstr "" #: ../Doc/whatsnew/2.2.rst:1195 msgid "" "The new license introduced with Python 1.6 wasn't GPL-compatible. This is " "fixed by some minor textual changes to the 2.2 license, so it's now legal to " "embed Python inside a GPLed program again. Note that Python itself is not " "GPLed, but instead is under a license that's essentially equivalent to the " "BSD license, same as it always was. The license changes were also applied " "to the Python 2.0.1 and 2.1.1 releases." msgstr "" #: ../Doc/whatsnew/2.2.rst:1202 msgid "" "When presented with a Unicode filename on Windows, Python will now convert " "it to an MBCS encoded string, as used by the Microsoft file APIs. As MBCS " "is explicitly used by the file APIs, Python's choice of ASCII as the default " "encoding turns out to be an annoyance. On Unix, the locale's character set " "is used if ``locale.nl_langinfo(CODESET)`` is available. (Windows support " "was contributed by Mark Hammond with assistance from Marc-André Lemburg. " "Unix support was added by Martin von Löwis.)" msgstr "" #: ../Doc/whatsnew/2.2.rst:1210 msgid "" "Large file support is now enabled on Windows. (Contributed by Tim Peters.)" msgstr "" #: ../Doc/whatsnew/2.2.rst:1212 msgid "" "The :file:`Tools/scripts/ftpmirror.py` script now parses a :file:`.netrc` " "file, if you have one. (Contributed by Mike Romberg.)" msgstr "" #: ../Doc/whatsnew/2.2.rst:1215 msgid "" "Some features of the object returned by the :func:`xrange` function are now " "deprecated, and trigger warnings when they're accessed; they'll disappear in " "Python 2.3. :class:`xrange` objects tried to pretend they were full sequence " "types by supporting slicing, sequence multiplication, and the :keyword:`in` " "operator, but these features were rarely used and therefore buggy. The :" "meth:`tolist` method and the :attr:`start`, :attr:`stop`, and :attr:`step` " "attributes are also being deprecated. At the C level, the fourth argument " "to the :c:func:`PyRange_New` function, ``repeat``, has also been deprecated." msgstr "" #: ../Doc/whatsnew/2.2.rst:1224 msgid "" "There were a bunch of patches to the dictionary implementation, mostly to " "fix potential core dumps if a dictionary contains objects that sneakily " "changed their hash value, or mutated the dictionary they were contained in. " "For a while python-dev fell into a gentle rhythm of Michael Hudson finding a " "case that dumped core, Tim Peters fixing the bug, Michael finding another " "case, and round and round it went." msgstr "" #: ../Doc/whatsnew/2.2.rst:1231 msgid "" "On Windows, Python can now be compiled with Borland C thanks to a number of " "patches contributed by Stephen Hansen, though the result isn't fully " "functional yet. (But this *is* progress...)" msgstr "" #: ../Doc/whatsnew/2.2.rst:1235 msgid "" "Another Windows enhancement: Wise Solutions generously offered PythonLabs " "use of their InstallerMaster 8.1 system. Earlier PythonLabs Windows " "installers used Wise 5.0a, which was beginning to show its age. (Packaged " "up by Tim Peters.)" msgstr "" #: ../Doc/whatsnew/2.2.rst:1239 msgid "" "Files ending in ``.pyw`` can now be imported on Windows. ``.pyw`` is a " "Windows-only thing, used to indicate that a script needs to be run using " "PYTHONW.EXE instead of PYTHON.EXE in order to prevent a DOS console from " "popping up to display the output. This patch makes it possible to import " "such scripts, in case they're also usable as modules. (Implemented by David " "Bolen.)" msgstr "" #: ../Doc/whatsnew/2.2.rst:1245 msgid "" "On platforms where Python uses the C :c:func:`dlopen` function to load " "extension modules, it's now possible to set the flags used by :c:func:" "`dlopen` using the :func:`sys.getdlopenflags` and :func:`sys.setdlopenflags` " "functions. (Contributed by Bram Stolk.)" msgstr "" #: ../Doc/whatsnew/2.2.rst:1250 msgid "" "The :func:`pow` built-in function no longer supports 3 arguments when " "floating-point numbers are supplied. ``pow(x, y, z)`` returns ``(x**y) % " "z``, but this is never useful for floating point numbers, and the final " "result varies unpredictably depending on the platform. A call such as " "``pow(2.0, 8.0, 7.0)`` will now raise a :exc:`TypeError` exception." msgstr "" #: ../Doc/whatsnew/2.2.rst:1262 msgid "" "The author would like to thank the following people for offering " "suggestions, corrections and assistance with various drafts of this article: " "Fred Bremmer, Keith Briggs, Andrew Dalke, Fred L. Drake, Jr., Carel " "Fellinger, David Goodger, Mark Hammond, Stephen Hansen, Michael Hudson, Jack " "Jansen, Marc-André Lemburg, Martin von Löwis, Fredrik Lundh, Michael McLay, " "Nick Mathewson, Paul Moore, Gustavo Niemeyer, Don O'Donnell, Joonas " "Paalasma, Tim Peters, Jens Quade, Tom Reinhardt, Neil Schemenauer, Guido van " "Rossum, Greg Ward, Edward Welbourne." msgstr "" #: ../Doc/whatsnew/2.3.rst:3 msgid "What's New in Python 2.3" msgstr "Nouveautés de Python 2.3" #: ../Doc/whatsnew/2.3.rst:11 msgid "" "This article explains the new features in Python 2.3. Python 2.3 was " "released on July 29, 2003." msgstr "" #: ../Doc/whatsnew/2.3.rst:14 msgid "" "The main themes for Python 2.3 are polishing some of the features added in " "2.2, adding various small but useful enhancements to the core language, and " "expanding the standard library. The new object model introduced in the " "previous version has benefited from 18 months of bugfixes and from " "optimization efforts that have improved the performance of new-style " "classes. A few new built-in functions have been added such as :func:`sum` " "and :func:`enumerate`. The :keyword:`in` operator can now be used for " "substring searches (e.g. ``\"ab\" in \"abc\"`` returns :const:`True`)." msgstr "" #: ../Doc/whatsnew/2.3.rst:23 msgid "" "Some of the many new library features include Boolean, set, heap, and date/" "time data types, the ability to import modules from ZIP-format archives, " "metadata support for the long-awaited Python catalog, an updated version of " "IDLE, and modules for logging messages, wrapping text, parsing CSV files, " "processing command-line options, using BerkeleyDB databases... the list of " "new and enhanced modules is lengthy." msgstr "" #: ../Doc/whatsnew/2.3.rst:30 msgid "" "This article doesn't attempt to provide a complete specification of the new " "features, but instead provides a convenient overview. For full details, you " "should refer to the documentation for Python 2.3, such as the Python Library " "Reference and the Python Reference Manual. If you want to understand the " "complete implementation and design rationale, refer to the PEP for a " "particular new feature." msgstr "" #: ../Doc/whatsnew/2.3.rst:41 msgid "PEP 218: A Standard Set Datatype" msgstr "" #: ../Doc/whatsnew/2.3.rst:43 msgid "" "The new :mod:`sets` module contains an implementation of a set datatype. " "The :class:`Set` class is for mutable sets, sets that can have members added " "and removed. The :class:`ImmutableSet` class is for sets that can't be " "modified, and instances of :class:`ImmutableSet` can therefore be used as " "dictionary keys. Sets are built on top of dictionaries, so the elements " "within a set must be hashable." msgstr "" #: ../Doc/whatsnew/2.3.rst:50 msgid "Here's a simple example::" msgstr "" #: ../Doc/whatsnew/2.3.rst:66 msgid "" "The union and intersection of sets can be computed with the :meth:`union` " "and :meth:`intersection` methods; an alternative notation uses the bitwise " "operators ``&`` and ``|``. Mutable sets also have in-place versions of these " "methods, :meth:`union_update` and :meth:`intersection_update`. ::" msgstr "" #: ../Doc/whatsnew/2.3.rst:86 msgid "" "It's also possible to take the symmetric difference of two sets. This is " "the set of all elements in the union that aren't in the intersection. " "Another way of putting it is that the symmetric difference contains all " "elements that are in exactly one set. Again, there's an alternative " "notation (``^``), and an in- place version with the ungainly name :meth:" "`symmetric_difference_update`. ::" msgstr "" #: ../Doc/whatsnew/2.3.rst:100 msgid "" "There are also :meth:`issubset` and :meth:`issuperset` methods for checking " "whether one set is a subset or superset of another::" msgstr "" #: ../Doc/whatsnew/2.3.rst:117 ../Doc/whatsnew/2.4.rst:83 msgid ":pep:`218` - Adding a Built-In Set Object Type" msgstr "" #: ../Doc/whatsnew/2.3.rst:117 msgid "" "PEP written by Greg V. Wilson. Implemented by Greg V. Wilson, Alex Martelli, " "and GvR." msgstr "" #: ../Doc/whatsnew/2.3.rst:128 msgid "" "In Python 2.2, generators were added as an optional feature, to be enabled " "by a ``from __future__ import generators`` directive. In 2.3 generators no " "longer need to be specially enabled, and are now always present; this means " "that :keyword:`yield` is now always a keyword. The rest of this section is " "a copy of the description of generators from the \"What's New in Python " "2.2\" document; if you read it back when Python 2.2 came out, you can skip " "the rest of this section." msgstr "" #: ../Doc/whatsnew/2.3.rst:136 msgid "" "You're doubtless familiar with how function calls work in Python or C. When " "you call a function, it gets a private namespace where its local variables " "are created. When the function reaches a :keyword:`return` statement, the " "local variables are destroyed and the resulting value is returned to the " "caller. A later call to the same function will get a fresh new set of local " "variables. But, what if the local variables weren't thrown away on exiting a " "function? What if you could later resume the function where it left off? " "This is what generators provide; they can be thought of as resumable " "functions." msgstr "" #: ../Doc/whatsnew/2.3.rst:151 msgid "" "A new keyword, :keyword:`yield`, was introduced for generators. Any " "function containing a :keyword:`yield` statement is a generator function; " "this is detected by Python's bytecode compiler which compiles the function " "specially as a result." msgstr "" #: ../Doc/whatsnew/2.3.rst:156 msgid "" "When you call a generator function, it doesn't return a single value; " "instead it returns a generator object that supports the iterator protocol. " "On executing the :keyword:`yield` statement, the generator outputs the value " "of ``i``, similar to a :keyword:`return` statement. The big difference " "between :keyword:`yield` and a :keyword:`return` statement is that on " "reaching a :keyword:`yield` the generator's state of execution is suspended " "and local variables are preserved. On the next call to the generator's ``." "next()`` method, the function will resume executing immediately after the :" "keyword:`yield` statement. (For complicated reasons, the :keyword:`yield` " "statement isn't allowed inside the :keyword:`try` block of a :keyword:" "`try`...\\ :keyword:`finally` statement; read :pep:`255` for a full " "explanation of the interaction between :keyword:`yield` and exceptions.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:236 msgid "" "Python doesn't go nearly as far as Icon in adopting generators as a central " "concept. Generators are considered part of the core Python language, but " "learning or using them isn't compulsory; if they don't solve any problems " "that you have, feel free to ignore them. One novel feature of Python's " "interface as compared to Icon's is that a generator's state is represented " "as a concrete object (the iterator) that can be passed around to other " "functions or stored in a data structure." msgstr "" #: ../Doc/whatsnew/2.3.rst:257 msgid "PEP 263: Source Code Encodings" msgstr "" #: ../Doc/whatsnew/2.3.rst:259 msgid "" "Python source files can now be declared as being in different character set " "encodings. Encodings are declared by including a specially formatted " "comment in the first or second line of the source file. For example, a " "UTF-8 file can be declared with::" msgstr "" #: ../Doc/whatsnew/2.3.rst:267 msgid "" "Without such an encoding declaration, the default encoding used is 7-bit " "ASCII. Executing or importing modules that contain string literals with 8-" "bit characters and have no encoding declaration will result in a :exc:" "`DeprecationWarning` being signalled by Python 2.3; in 2.4 this will be a " "syntax error." msgstr "" #: ../Doc/whatsnew/2.3.rst:273 msgid "" "The encoding declaration only affects Unicode string literals, which will be " "converted to Unicode using the specified encoding. Note that Python " "identifiers are still restricted to ASCII characters, so you can't have " "variable names that use characters outside of the usual alphanumerics." msgstr "" #: ../Doc/whatsnew/2.3.rst:282 msgid ":pep:`263` - Defining Python Source Code Encodings" msgstr "" #: ../Doc/whatsnew/2.3.rst:282 msgid "" "Written by Marc-André Lemburg and Martin von Löwis; implemented by Suzuki " "Hisao and Martin von Löwis." msgstr "" #: ../Doc/whatsnew/2.3.rst:289 msgid "PEP 273: Importing Modules from ZIP Archives" msgstr "" #: ../Doc/whatsnew/2.3.rst:291 msgid "" "The new :mod:`zipimport` module adds support for importing modules from a " "ZIP- format archive. You don't need to import the module explicitly; it " "will be automatically imported if a ZIP archive's filename is added to ``sys." "path``. For example:" msgstr "" #: ../Doc/whatsnew/2.3.rst:314 msgid "" "An entry in ``sys.path`` can now be the filename of a ZIP archive. The ZIP " "archive can contain any kind of files, but only files named :file:`\\*.py`, :" "file:`\\*.pyc`, or :file:`\\*.pyo` can be imported. If an archive only " "contains :file:`\\*.py` files, Python will not attempt to modify the archive " "by adding the corresponding :file:`\\*.pyc` file, meaning that if a ZIP " "archive doesn't contain :file:`\\*.pyc` files, importing may be rather slow." msgstr "" #: ../Doc/whatsnew/2.3.rst:321 msgid "" "A path within the archive can also be specified to only import from a " "subdirectory; for example, the path :file:`/tmp/example.zip/lib/` would only " "import from the :file:`lib/` subdirectory within the archive." msgstr "" #: ../Doc/whatsnew/2.3.rst:331 msgid ":pep:`273` - Import Modules from Zip Archives" msgstr "" #: ../Doc/whatsnew/2.3.rst:329 msgid "" "Written by James C. Ahlstrom, who also provided an implementation. Python " "2.3 follows the specification in :pep:`273`, but uses an implementation " "written by Just van Rossum that uses the import hooks described in :pep:" "`302`. See section :ref:`section-pep302` for a description of the new import " "hooks." msgstr "" #: ../Doc/whatsnew/2.3.rst:338 msgid "PEP 277: Unicode file name support for Windows NT" msgstr "" #: ../Doc/whatsnew/2.3.rst:340 msgid "" "On Windows NT, 2000, and XP, the system stores file names as Unicode " "strings. Traditionally, Python has represented file names as byte strings, " "which is inadequate because it renders some file names inaccessible." msgstr "" #: ../Doc/whatsnew/2.3.rst:344 msgid "" "Python now allows using arbitrary Unicode strings (within the limitations of " "the file system) for all functions that expect file names, most notably the :" "func:`open` built-in function. If a Unicode string is passed to :func:`os." "listdir`, Python now returns a list of Unicode strings. A new function, :" "func:`os.getcwdu`, returns the current directory as a Unicode string." msgstr "" #: ../Doc/whatsnew/2.3.rst:350 msgid "" "Byte strings still work as file names, and on Windows Python will " "transparently convert them to Unicode using the ``mbcs`` encoding." msgstr "" #: ../Doc/whatsnew/2.3.rst:353 msgid "" "Other systems also allow Unicode strings as file names but convert them to " "byte strings before passing them to the system, which can cause a :exc:" "`UnicodeError` to be raised. Applications can test whether arbitrary Unicode " "strings are supported as file names by checking :attr:`os.path." "supports_unicode_filenames`, a Boolean value." msgstr "" #: ../Doc/whatsnew/2.3.rst:359 msgid "Under MacOS, :func:`os.listdir` may now return Unicode filenames." msgstr "" #: ../Doc/whatsnew/2.3.rst:365 msgid ":pep:`277` - Unicode file name support for Windows NT" msgstr "" #: ../Doc/whatsnew/2.3.rst:365 msgid "" "Written by Neil Hodgson; implemented by Neil Hodgson, Martin von Löwis, and " "Mark Hammond." msgstr "" #: ../Doc/whatsnew/2.3.rst:375 msgid "PEP 278: Universal Newline Support" msgstr "" #: ../Doc/whatsnew/2.3.rst:377 msgid "" "The three major operating systems used today are Microsoft Windows, Apple's " "Macintosh OS, and the various Unix derivatives. A minor irritation of " "cross- platform work is that these three platforms all use different " "characters to mark the ends of lines in text files. Unix uses the linefeed " "(ASCII character 10), MacOS uses the carriage return (ASCII character 13), " "and Windows uses a two-character sequence of a carriage return plus a " "newline." msgstr "" #: ../Doc/whatsnew/2.3.rst:384 msgid "" "Python's file objects can now support end of line conventions other than the " "one followed by the platform on which Python is running. Opening a file with " "the mode ``'U'`` or ``'rU'`` will open a file for reading in :term:" "`universal newlines` mode. All three line ending conventions will be " "translated to a ``'\\n'`` in the strings returned by the various file " "methods such as :meth:`read` and :meth:`readline`." msgstr "" #: ../Doc/whatsnew/2.3.rst:391 msgid "" "Universal newline support is also used when importing modules and when " "executing a file with the :func:`execfile` function. This means that Python " "modules can be shared between all three operating systems without needing to " "convert the line-endings." msgstr "" #: ../Doc/whatsnew/2.3.rst:396 msgid "" "This feature can be disabled when compiling Python by specifying the :option:" "`--without-universal-newlines` switch when running Python's :program:" "`configure` script." msgstr "" #: ../Doc/whatsnew/2.3.rst:403 msgid ":pep:`278` - Universal Newline Support" msgstr "" #: ../Doc/whatsnew/2.3.rst:404 msgid "Written and implemented by Jack Jansen." msgstr "" #: ../Doc/whatsnew/2.3.rst:412 msgid "PEP 279: enumerate()" msgstr "" #: ../Doc/whatsnew/2.3.rst:414 msgid "" "A new built-in function, :func:`enumerate`, will make certain loops a bit " "clearer. ``enumerate(thing)``, where *thing* is either an iterator or a " "sequence, returns an iterator that will return ``(0, thing[0])``, ``(1, " "thing[1])``, ``(2, thing[2])``, and so forth." msgstr "" #: ../Doc/whatsnew/2.3.rst:419 msgid "A common idiom to change every element of a list looks like this::" msgstr "" #: ../Doc/whatsnew/2.3.rst:426 msgid "This can be rewritten using :func:`enumerate` as::" msgstr "" #: ../Doc/whatsnew/2.3.rst:435 msgid ":pep:`279` - The enumerate() built-in function" msgstr "" #: ../Doc/whatsnew/2.3.rst:436 msgid "Written and implemented by Raymond D. Hettinger." msgstr "" #: ../Doc/whatsnew/2.3.rst:442 msgid "PEP 282: The logging Package" msgstr "" #: ../Doc/whatsnew/2.3.rst:444 msgid "" "A standard package for writing logs, :mod:`logging`, has been added to " "Python 2.3. It provides a powerful and flexible mechanism for generating " "logging output which can then be filtered and processed in various ways. A " "configuration file written in a standard format can be used to control the " "logging behavior of a program. Python includes handlers that will write log " "records to standard error or to a file or socket, send them to the system " "log, or even e-mail them to a particular address; of course, it's also " "possible to write your own handler classes." msgstr "" #: ../Doc/whatsnew/2.3.rst:453 msgid "" "The :class:`Logger` class is the primary class. Most application code will " "deal with one or more :class:`Logger` objects, each one used by a particular " "subsystem of the application. Each :class:`Logger` is identified by a name, " "and names are organized into a hierarchy using ``.`` as the component " "separator. For example, you might have :class:`Logger` instances named " "``server``, ``server.auth`` and ``server.network``. The latter two " "instances are below ``server`` in the hierarchy. This means that if you " "turn up the verbosity for ``server`` or direct ``server`` messages to a " "different handler, the changes will also apply to records logged to ``server." "auth`` and ``server.network``. There's also a root :class:`Logger` that's " "the parent of all other loggers." msgstr "" #: ../Doc/whatsnew/2.3.rst:464 msgid "" "For simple uses, the :mod:`logging` package contains some convenience " "functions that always use the root log::" msgstr "" #: ../Doc/whatsnew/2.3.rst:475 ../Doc/whatsnew/2.3.rst:500 #: ../Doc/whatsnew/2.6.rst:642 msgid "This produces the following output::" msgstr "Ceci produit l’affichage suivant :" #: ../Doc/whatsnew/2.3.rst:481 msgid "" "In the default configuration, informational and debugging messages are " "suppressed and the output is sent to standard error. You can enable the " "display of informational and debugging messages by calling the :meth:" "`setLevel` method on the root logger." msgstr "" #: ../Doc/whatsnew/2.3.rst:486 msgid "" "Notice the :func:`warning` call's use of string formatting operators; all of " "the functions for logging messages take the arguments ``(msg, arg1, " "arg2, ...)`` and log the string resulting from ``msg % (arg1, arg2, ...)``." msgstr "" #: ../Doc/whatsnew/2.3.rst:490 msgid "" "There's also an :func:`exception` function that records the most recent " "traceback. Any of the other functions will also record the traceback if you " "specify a true value for the keyword argument *exc_info*. ::" msgstr "" #: ../Doc/whatsnew/2.3.rst:508 msgid "" "Slightly more advanced programs will use a logger other than the root " "logger. The ``getLogger(name)`` function is used to get a particular log, " "creating it if it doesn't exist yet. ``getLogger(None)`` returns the root " "logger. ::" msgstr "" #: ../Doc/whatsnew/2.3.rst:519 msgid "" "Log records are usually propagated up the hierarchy, so a message logged to " "``server.auth`` is also seen by ``server`` and ``root``, but a :class:" "`Logger` can prevent this by setting its :attr:`propagate` attribute to :" "const:`False`." msgstr "" #: ../Doc/whatsnew/2.3.rst:523 msgid "" "There are more classes provided by the :mod:`logging` package that can be " "customized. When a :class:`Logger` instance is told to log a message, it " "creates a :class:`LogRecord` instance that is sent to any number of " "different :class:`Handler` instances. Loggers and handlers can also have an " "attached list of filters, and each filter can cause the :class:`LogRecord` " "to be ignored or can modify the record before passing it along. When " "they're finally output, :class:`LogRecord` instances are converted to text " "by a :class:`Formatter` class. All of these classes can be replaced by your " "own specially-written classes." msgstr "" #: ../Doc/whatsnew/2.3.rst:533 msgid "" "With all of these features the :mod:`logging` package should provide enough " "flexibility for even the most complicated applications. This is only an " "incomplete overview of its features, so please see the package's reference " "documentation for all of the details. Reading :pep:`282` will also be " "helpful." msgstr "" #: ../Doc/whatsnew/2.3.rst:541 msgid ":pep:`282` - A Logging System" msgstr "" #: ../Doc/whatsnew/2.3.rst:542 msgid "Written by Vinay Sajip and Trent Mick; implemented by Vinay Sajip." msgstr "" #: ../Doc/whatsnew/2.3.rst:550 msgid "PEP 285: A Boolean Type" msgstr "PEP 285 : Un type booléen" #: ../Doc/whatsnew/2.3.rst:552 msgid "" "A Boolean type was added to Python 2.3. Two new constants were added to " "the :mod:`__builtin__` module, :const:`True` and :const:`False`. (:const:" "`True` and :const:`False` constants were added to the built-ins in Python " "2.2.1, but the 2.2.1 versions are simply set to integer values of 1 and 0 " "and aren't a different type.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:558 msgid "" "The type object for this new type is named :class:`bool`; the constructor " "for it takes any Python value and converts it to :const:`True` or :const:" "`False`. ::" msgstr "" #: ../Doc/whatsnew/2.3.rst:570 msgid "" "Most of the standard library modules and built-in functions have been " "changed to return Booleans. ::" msgstr "" #: ../Doc/whatsnew/2.3.rst:581 msgid "" "Python's Booleans were added with the primary goal of making code clearer. " "For example, if you're reading a function and encounter the statement " "``return 1``, you might wonder whether the ``1`` represents a Boolean truth " "value, an index, or a coefficient that multiplies some other quantity. If " "the statement is ``return True``, however, the meaning of the return value " "is quite clear." msgstr "" #: ../Doc/whatsnew/2.3.rst:587 msgid "" "Python's Booleans were *not* added for the sake of strict type-checking. A " "very strict language such as Pascal would also prevent you performing " "arithmetic with Booleans, and would require that the expression in an :" "keyword:`if` statement always evaluate to a Boolean result. Python is not " "this strict and never will be, as :pep:`285` explicitly says. This means " "you can still use any expression in an :keyword:`if` statement, even ones " "that evaluate to a list or tuple or some random object. The Boolean type is " "a subclass of the :class:`int` class so that arithmetic using a Boolean " "still works. ::" msgstr "" #: ../Doc/whatsnew/2.3.rst:605 msgid "" "To sum up :const:`True` and :const:`False` in a sentence: they're " "alternative ways to spell the integer values 1 and 0, with the single " "difference that :func:`str` and :func:`repr` return the strings ``'True'`` " "and ``'False'`` instead of ``'1'`` and ``'0'``." msgstr "" #: ../Doc/whatsnew/2.3.rst:613 msgid ":pep:`285` - Adding a bool type" msgstr "" #: ../Doc/whatsnew/2.3.rst:614 msgid "Written and implemented by GvR." msgstr "" #: ../Doc/whatsnew/2.3.rst:620 msgid "PEP 293: Codec Error Handling Callbacks" msgstr "" #: ../Doc/whatsnew/2.3.rst:622 msgid "" "When encoding a Unicode string into a byte string, unencodable characters " "may be encountered. So far, Python has allowed specifying the error " "processing as either \"strict\" (raising :exc:`UnicodeError`), \"ignore" "\" (skipping the character), or \"replace\" (using a question mark in the " "output string), with \"strict\" being the default behavior. It may be " "desirable to specify alternative processing of such errors, such as " "inserting an XML character reference or HTML entity reference into the " "converted string." msgstr "" #: ../Doc/whatsnew/2.3.rst:630 msgid "" "Python now has a flexible framework to add different processing strategies. " "New error handlers can be added with :func:`codecs.register_error`, and " "codecs then can access the error handler with :func:`codecs.lookup_error`. " "An equivalent C API has been added for codecs written in C. The error " "handler gets the necessary state information such as the string being " "converted, the position in the string where the error was detected, and the " "target encoding. The handler can then either raise an exception or return a " "replacement string." msgstr "" #: ../Doc/whatsnew/2.3.rst:638 msgid "" "Two additional error handlers have been implemented using this framework: " "\"backslashreplace\" uses Python backslash quoting to represent unencodable " "characters and \"xmlcharrefreplace\" emits XML character references." msgstr "" #: ../Doc/whatsnew/2.3.rst:645 msgid ":pep:`293` - Codec Error Handling Callbacks" msgstr "" #: ../Doc/whatsnew/2.3.rst:646 msgid "Written and implemented by Walter Dörwald." msgstr "" #: ../Doc/whatsnew/2.3.rst:654 msgid "PEP 301: Package Index and Metadata for Distutils" msgstr "" #: ../Doc/whatsnew/2.3.rst:656 msgid "" "Support for the long-requested Python catalog makes its first appearance in " "2.3." msgstr "" #: ../Doc/whatsnew/2.3.rst:658 msgid "" "The heart of the catalog is the new Distutils :command:`register` command. " "Running ``python setup.py register`` will collect the metadata describing a " "package, such as its name, version, maintainer, description, &c., and send " "it to a central catalog server. The resulting catalog is available from " "https://pypi.python.org/pypi." msgstr "" #: ../Doc/whatsnew/2.3.rst:664 msgid "" "To make the catalog a bit more useful, a new optional *classifiers* keyword " "argument has been added to the Distutils :func:`setup` function. A list of " "`Trove `_-style strings can be supplied to help " "classify the software." msgstr "" #: ../Doc/whatsnew/2.3.rst:669 msgid "" "Here's an example :file:`setup.py` with classifiers, written to be " "compatible with older versions of the Distutils::" msgstr "" #: ../Doc/whatsnew/2.3.rst:688 msgid "" "The full list of classifiers can be obtained by running ``python setup.py " "register --list-classifiers``." msgstr "" #: ../Doc/whatsnew/2.3.rst:694 msgid ":pep:`301` - Package Index and Metadata for Distutils" msgstr "" #: ../Doc/whatsnew/2.3.rst:695 msgid "Written and implemented by Richard Jones." msgstr "" #: ../Doc/whatsnew/2.3.rst:703 msgid "PEP 302: New Import Hooks" msgstr "" #: ../Doc/whatsnew/2.3.rst:705 msgid "" "While it's been possible to write custom import hooks ever since the :mod:" "`ihooks` module was introduced in Python 1.3, no one has ever been really " "happy with it because writing new import hooks is difficult and messy. " "There have been various proposed alternatives such as the :mod:`imputil` " "and :mod:`iu` modules, but none of them has ever gained much acceptance, and " "none of them were easily usable from C code." msgstr "" #: ../Doc/whatsnew/2.3.rst:712 msgid "" ":pep:`302` borrows ideas from its predecessors, especially from Gordon " "McMillan's :mod:`iu` module. Three new items are added to the :mod:`sys` " "module:" msgstr "" #: ../Doc/whatsnew/2.3.rst:716 msgid "" "``sys.path_hooks`` is a list of callable objects; most often they'll be " "classes. Each callable takes a string containing a path and either returns " "an importer object that will handle imports from this path or raises an :exc:" "`ImportError` exception if it can't handle this path." msgstr "" #: ../Doc/whatsnew/2.3.rst:721 msgid "" "``sys.path_importer_cache`` caches importer objects for each path, so ``sys." "path_hooks`` will only need to be traversed once for each path." msgstr "" #: ../Doc/whatsnew/2.3.rst:724 msgid "" "``sys.meta_path`` is a list of importer objects that will be traversed " "before ``sys.path`` is checked. This list is initially empty, but user code " "can add objects to it. Additional built-in and frozen modules can be " "imported by an object added to this list." msgstr "" #: ../Doc/whatsnew/2.3.rst:729 msgid "" "Importer objects must have a single method, ``find_module(fullname, " "path=None)``. *fullname* will be a module or package name, e.g. ``string`` " "or ``distutils.core``. :meth:`find_module` must return a loader object that " "has a single method, ``load_module(fullname)``, that creates and returns the " "corresponding module object." msgstr "" #: ../Doc/whatsnew/2.3.rst:735 msgid "" "Pseudo-code for Python's new import logic, therefore, looks something like " "this (simplified a bit; see :pep:`302` for the full details)::" msgstr "" #: ../Doc/whatsnew/2.3.rst:760 msgid ":pep:`302` - New Import Hooks" msgstr "" #: ../Doc/whatsnew/2.3.rst:761 msgid "" "Written by Just van Rossum and Paul Moore. Implemented by Just van Rossum." msgstr "" #: ../Doc/whatsnew/2.3.rst:769 msgid "PEP 305: Comma-separated Files" msgstr "" #: ../Doc/whatsnew/2.3.rst:771 msgid "" "Comma-separated files are a format frequently used for exporting data from " "databases and spreadsheets. Python 2.3 adds a parser for comma-separated " "files." msgstr "" #: ../Doc/whatsnew/2.3.rst:774 msgid "Comma-separated format is deceptively simple at first glance::" msgstr "" #: ../Doc/whatsnew/2.3.rst:778 msgid "" "Read a line and call ``line.split(',')``: what could be simpler? But toss in " "string data that can contain commas, and things get more complicated::" msgstr "" #: ../Doc/whatsnew/2.3.rst:783 msgid "" "A big ugly regular expression can parse this, but using the new :mod:`csv` " "package is much simpler::" msgstr "" #: ../Doc/whatsnew/2.3.rst:793 msgid "" "The :func:`reader` function takes a number of different options. The field " "separator isn't limited to the comma and can be changed to any character, " "and so can the quoting and line-ending characters." msgstr "" #: ../Doc/whatsnew/2.3.rst:797 msgid "" "Different dialects of comma-separated files can be defined and registered; " "currently there are two dialects, both used by Microsoft Excel. A separate :" "class:`csv.writer` class will generate comma-separated files from a " "succession of tuples or lists, quoting strings that contain the delimiter." msgstr "" #: ../Doc/whatsnew/2.3.rst:806 msgid ":pep:`305` - CSV File API" msgstr "" #: ../Doc/whatsnew/2.3.rst:806 msgid "" "Written and implemented by Kevin Altis, Dave Cole, Andrew McNamara, Skip " "Montanaro, Cliff Wells." msgstr "" #: ../Doc/whatsnew/2.3.rst:815 msgid "PEP 307: Pickle Enhancements" msgstr "" #: ../Doc/whatsnew/2.3.rst:817 msgid "" "The :mod:`pickle` and :mod:`cPickle` modules received some attention during " "the 2.3 development cycle. In 2.2, new-style classes could be pickled " "without difficulty, but they weren't pickled very compactly; :pep:`307` " "quotes a trivial example where a new-style class results in a pickled string " "three times longer than that for a classic class." msgstr "" #: ../Doc/whatsnew/2.3.rst:823 msgid "" "The solution was to invent a new pickle protocol. The :func:`pickle.dumps` " "function has supported a text-or-binary flag for a long time. In 2.3, this " "flag is redefined from a Boolean to an integer: 0 is the old text-mode " "pickle format, 1 is the old binary format, and now 2 is a new 2.3-specific " "format. A new constant, :const:`pickle.HIGHEST_PROTOCOL`, can be used to " "select the fanciest protocol available." msgstr "" #: ../Doc/whatsnew/2.3.rst:830 msgid "" "Unpickling is no longer considered a safe operation. 2.2's :mod:`pickle` " "provided hooks for trying to prevent unsafe classes from being unpickled " "(specifically, a :attr:`__safe_for_unpickling__` attribute), but none of " "this code was ever audited and therefore it's all been ripped out in 2.3. " "You should not unpickle untrusted data in any version of Python." msgstr "" #: ../Doc/whatsnew/2.3.rst:836 msgid "" "To reduce the pickling overhead for new-style classes, a new interface for " "customizing pickling was added using three special methods: :meth:" "`__getstate__`, :meth:`__setstate__`, and :meth:`__getnewargs__`. Consult :" "pep:`307` for the full semantics of these methods." msgstr "" #: ../Doc/whatsnew/2.3.rst:841 msgid "" "As a way to compress pickles yet further, it's now possible to use integer " "codes instead of long strings to identify pickled classes. The Python " "Software Foundation will maintain a list of standardized codes; there's also " "a range of codes for private use. Currently no codes have been specified." msgstr "" #: ../Doc/whatsnew/2.3.rst:849 msgid ":pep:`307` - Extensions to the pickle protocol" msgstr "" #: ../Doc/whatsnew/2.3.rst:850 msgid "Written and implemented by Guido van Rossum and Tim Peters." msgstr "" #: ../Doc/whatsnew/2.3.rst:858 msgid "Extended Slices" msgstr "" #: ../Doc/whatsnew/2.3.rst:860 msgid "" "Ever since Python 1.4, the slicing syntax has supported an optional third " "\"step\" or \"stride\" argument. For example, these are all legal Python " "syntax: ``L[1:10:2]``, ``L[:-1:1]``, ``L[::-1]``. This was added to Python " "at the request of the developers of Numerical Python, which uses the third " "argument extensively. However, Python's built-in list, tuple, and string " "sequence types have never supported this feature, raising a :exc:`TypeError` " "if you tried it. Michael Hudson contributed a patch to fix this shortcoming." msgstr "" #: ../Doc/whatsnew/2.3.rst:868 msgid "" "For example, you can now easily extract the elements of a list that have " "even indexes::" msgstr "" #: ../Doc/whatsnew/2.3.rst:875 msgid "" "Negative values also work to make a copy of the same list in reverse order::" msgstr "" #: ../Doc/whatsnew/2.3.rst:880 msgid "This also works for tuples, arrays, and strings::" msgstr "" #: ../Doc/whatsnew/2.3.rst:888 msgid "" "If you have a mutable sequence such as a list or an array you can assign to " "or delete an extended slice, but there are some differences between " "assignment to extended and regular slices. Assignment to a regular slice " "can be used to change the length of the sequence::" msgstr "" #: ../Doc/whatsnew/2.3.rst:900 msgid "" "Extended slices aren't this flexible. When assigning to an extended slice, " "the list on the right hand side of the statement must contain the same " "number of items as the slice it is replacing::" msgstr "" #: ../Doc/whatsnew/2.3.rst:917 msgid "Deletion is more straightforward::" msgstr "" #: ../Doc/whatsnew/2.3.rst:928 msgid "" "One can also now pass slice objects to the :meth:`__getitem__` methods of " "the built-in sequences::" msgstr "" #: ../Doc/whatsnew/2.3.rst:934 msgid "Or use slice objects directly in subscripts::" msgstr "" #: ../Doc/whatsnew/2.3.rst:939 msgid "" "To simplify implementing sequences that support extended slicing, slice " "objects now have a method ``indices(length)`` which, given the length of a " "sequence, returns a ``(start, stop, step)`` tuple that can be passed " "directly to :func:`range`. :meth:`indices` handles omitted and out-of-bounds " "indices in a manner consistent with regular slices (and this innocuous " "phrase hides a welter of confusing details!). The method is intended to be " "used like this::" msgstr "" #: ../Doc/whatsnew/2.3.rst:957 msgid "" "From this example you can also see that the built-in :class:`slice` object " "is now the type object for the slice type, and is no longer a function. " "This is consistent with Python 2.2, where :class:`int`, :class:`str`, etc., " "underwent the same change." msgstr "" #: ../Doc/whatsnew/2.3.rst:966 ../Doc/whatsnew/2.4.rst:774 #: ../Doc/whatsnew/2.5.rst:973 ../Doc/whatsnew/2.6.rst:1485 #: ../Doc/whatsnew/2.7.rst:672 ../Doc/whatsnew/3.1.rst:116 #: ../Doc/whatsnew/3.2.rst:433 ../Doc/whatsnew/3.3.rst:776 #: ../Doc/whatsnew/3.4.rst:401 ../Doc/whatsnew/3.5.rst:701 #: ../Doc/whatsnew/3.6.rst:545 msgid "Other Language Changes" msgstr "" #: ../Doc/whatsnew/2.3.rst:968 msgid "" "Here are all of the changes that Python 2.3 makes to the core Python " "language." msgstr "" #: ../Doc/whatsnew/2.3.rst:970 msgid "" "The :keyword:`yield` statement is now always a keyword, as described in " "section :ref:`section-generators` of this document." msgstr "" #: ../Doc/whatsnew/2.3.rst:973 msgid "" "A new built-in function :func:`enumerate` was added, as described in " "section :ref:`section-enumerate` of this document." msgstr "" #: ../Doc/whatsnew/2.3.rst:976 msgid "" "Two new constants, :const:`True` and :const:`False` were added along with " "the built-in :class:`bool` type, as described in section :ref:`section-bool` " "of this document." msgstr "" #: ../Doc/whatsnew/2.3.rst:980 msgid "" "The :func:`int` type constructor will now return a long integer instead of " "raising an :exc:`OverflowError` when a string or floating-point number is " "too large to fit into an integer. This can lead to the paradoxical result " "that ``isinstance(int(expression), int)`` is false, but that seems unlikely " "to cause problems in practice." msgstr "" #: ../Doc/whatsnew/2.3.rst:986 msgid "" "Built-in types now support the extended slicing syntax, as described in " "section :ref:`section-slices` of this document." msgstr "" #: ../Doc/whatsnew/2.3.rst:989 msgid "" "A new built-in function, ``sum(iterable, start=0)``, adds up the numeric " "items in the iterable object and returns their sum. :func:`sum` only " "accepts numbers, meaning that you can't use it to concatenate a bunch of " "strings. (Contributed by Alex Martelli.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:994 msgid "" "``list.insert(pos, value)`` used to insert *value* at the front of the list " "when *pos* was negative. The behaviour has now been changed to be " "consistent with slice indexing, so when *pos* is -1 the value will be " "inserted before the last element, and so forth." msgstr "" #: ../Doc/whatsnew/2.3.rst:999 msgid "" "``list.index(value)``, which searches for *value* within the list and " "returns its index, now takes optional *start* and *stop* arguments to limit " "the search to only part of the list." msgstr "" #: ../Doc/whatsnew/2.3.rst:1003 msgid "" "Dictionaries have a new method, ``pop(key[, *default*])``, that returns the " "value corresponding to *key* and removes that key/value pair from the " "dictionary. If the requested key isn't present in the dictionary, *default* " "is returned if it's specified and :exc:`KeyError` raised if it isn't. ::" msgstr "" #: ../Doc/whatsnew/2.3.rst:1025 msgid "" "There's also a new class method, ``dict.fromkeys(iterable, value)``, that " "creates a dictionary with keys taken from the supplied iterator *iterable* " "and all values set to *value*, defaulting to ``None``." msgstr "" #: ../Doc/whatsnew/2.3.rst:1029 msgid "(Patches contributed by Raymond Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:1031 msgid "" "Also, the :func:`dict` constructor now accepts keyword arguments to simplify " "creating small dictionaries::" msgstr "" #: ../Doc/whatsnew/2.3.rst:1037 msgid "(Contributed by Just van Rossum.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:1039 msgid "" "The :keyword:`assert` statement no longer checks the ``__debug__`` flag, so " "you can no longer disable assertions by assigning to ``__debug__``. Running " "Python with the :option:`-O` switch will still generate code that doesn't " "execute any assertions." msgstr "" #: ../Doc/whatsnew/2.3.rst:1044 msgid "" "Most type objects are now callable, so you can use them to create new " "objects such as functions, classes, and modules. (This means that the :mod:" "`new` module can be deprecated in a future Python version, because you can " "now use the type objects available in the :mod:`types` module.) For example, " "you can create a new module object with the following code:" msgstr "" #: ../Doc/whatsnew/2.3.rst:1059 msgid "" "A new warning, :exc:`PendingDeprecationWarning` was added to indicate " "features which are in the process of being deprecated. The warning will " "*not* be printed by default. To check for use of features that will be " "deprecated in the future, supply :option:`-Walways::" "PendingDeprecationWarning:: <-W>` on the command line or use :func:`warnings." "filterwarnings`." msgstr "" #: ../Doc/whatsnew/2.3.rst:1065 msgid "" "The process of deprecating string-based exceptions, as in ``raise \"Error " "occurred\"``, has begun. Raising a string will now trigger :exc:" "`PendingDeprecationWarning`." msgstr "" #: ../Doc/whatsnew/2.3.rst:1069 msgid "" "Using ``None`` as a variable name will now result in a :exc:`SyntaxWarning` " "warning. In a future version of Python, ``None`` may finally become a " "keyword." msgstr "" #: ../Doc/whatsnew/2.3.rst:1072 msgid "" "The :meth:`xreadlines` method of file objects, introduced in Python 2.1, is " "no longer necessary because files now behave as their own iterator. :meth:" "`xreadlines` was originally introduced as a faster way to loop over all the " "lines in a file, but now you can simply write ``for line in file_obj``. File " "objects also have a new read-only :attr:`encoding` attribute that gives the " "encoding used by the file; Unicode strings written to the file will be " "automatically converted to bytes using the given encoding." msgstr "" #: ../Doc/whatsnew/2.3.rst:1080 msgid "" "The method resolution order used by new-style classes has changed, though " "you'll only notice the difference if you have a really complicated " "inheritance hierarchy. Classic classes are unaffected by this change. " "Python 2.2 originally used a topological sort of a class's ancestors, but " "2.3 now uses the C3 algorithm as described in the paper `\"A Monotonic " "Superclass Linearization for Dylan\" `_. To understand the motivation for this " "change, read Michele Simionato's article `\"Python 2.3 Method Resolution " "Order\" `_, or read the " "thread on python-dev starting with the message at https://mail.python.org/" "pipermail/python-dev/2002-October/029035.html. Samuele Pedroni first pointed " "out the problem and also implemented the fix by coding the C3 algorithm." msgstr "" #: ../Doc/whatsnew/2.3.rst:1093 msgid "" "Python runs multithreaded programs by switching between threads after " "executing N bytecodes. The default value for N has been increased from 10 " "to 100 bytecodes, speeding up single-threaded applications by reducing the " "switching overhead. Some multithreaded applications may suffer slower " "response time, but that's easily fixed by setting the limit back to a lower " "number using ``sys.setcheckinterval(N)``. The limit can be retrieved with " "the new :func:`sys.getcheckinterval` function." msgstr "" #: ../Doc/whatsnew/2.3.rst:1101 msgid "" "One minor but far-reaching change is that the names of extension types " "defined by the modules included with Python now contain the module and a " "``'.'`` in front of the type name. For example, in Python 2.2, if you " "created a socket and printed its :attr:`__class__`, you'd get this output::" msgstr "" #: ../Doc/whatsnew/2.3.rst:1110 msgid "In 2.3, you get this::" msgstr "" #: ../Doc/whatsnew/2.3.rst:1115 msgid "" "One of the noted incompatibilities between old- and new-style classes has " "been removed: you can now assign to the :attr:`~definition.__name__` and :" "attr:`~class.__bases__` attributes of new-style classes. There are some " "restrictions on what can be assigned to :attr:`~class.__bases__` along the " "lines of those relating to assigning to an instance's :attr:`~instance." "__class__` attribute." msgstr "" #: ../Doc/whatsnew/2.3.rst:1125 msgid "String Changes" msgstr "" #: ../Doc/whatsnew/2.3.rst:1127 msgid "" "The :keyword:`in` operator now works differently for strings. Previously, " "when evaluating ``X in Y`` where *X* and *Y* are strings, *X* could only be " "a single character. That's now changed; *X* can be a string of any length, " "and ``X in Y`` will return :const:`True` if *X* is a substring of *Y*. If " "*X* is the empty string, the result is always :const:`True`. ::" msgstr "" #: ../Doc/whatsnew/2.3.rst:1140 msgid "" "Note that this doesn't tell you where the substring starts; if you need that " "information, use the :meth:`find` string method." msgstr "" #: ../Doc/whatsnew/2.3.rst:1143 msgid "" "The :meth:`strip`, :meth:`lstrip`, and :meth:`rstrip` string methods now " "have an optional argument for specifying the characters to strip. The " "default is still to remove all whitespace characters::" msgstr "" #: ../Doc/whatsnew/2.3.rst:1157 msgid "(Suggested by Simon Brunning and implemented by Walter Dörwald.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:1159 msgid "" "The :meth:`startswith` and :meth:`endswith` string methods now accept " "negative numbers for the *start* and *end* parameters." msgstr "" #: ../Doc/whatsnew/2.3.rst:1162 msgid "" "Another new string method is :meth:`zfill`, originally a function in the :" "mod:`string` module. :meth:`zfill` pads a numeric string with zeros on the " "left until it's the specified width. Note that the ``%`` operator is still " "more flexible and powerful than :meth:`zfill`. ::" msgstr "" #: ../Doc/whatsnew/2.3.rst:1174 msgid "(Contributed by Walter Dörwald.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:1176 msgid "" "A new type object, :class:`basestring`, has been added. Both 8-bit strings " "and Unicode strings inherit from this type, so ``isinstance(obj, " "basestring)`` will return :const:`True` for either kind of string. It's a " "completely abstract type, so you can't create :class:`basestring` instances." msgstr "" #: ../Doc/whatsnew/2.3.rst:1181 msgid "" "Interned strings are no longer immortal and will now be garbage-collected in " "the usual way when the only reference to them is from the internal " "dictionary of interned strings. (Implemented by Oren Tirosh.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:1189 ../Doc/whatsnew/2.4.rst:933 #: ../Doc/whatsnew/2.5.rst:1138 ../Doc/whatsnew/2.6.rst:1693 #: ../Doc/whatsnew/2.7.rst:928 ../Doc/whatsnew/3.1.rst:416 #: ../Doc/whatsnew/3.2.rst:2340 ../Doc/whatsnew/3.3.rst:2149 #: ../Doc/whatsnew/3.5.rst:2105 ../Doc/whatsnew/3.6.rst:1113 msgid "Optimizations" msgstr "" #: ../Doc/whatsnew/2.3.rst:1191 msgid "" "The creation of new-style class instances has been made much faster; they're " "now faster than classic classes!" msgstr "" #: ../Doc/whatsnew/2.3.rst:1194 msgid "" "The :meth:`sort` method of list objects has been extensively rewritten by " "Tim Peters, and the implementation is significantly faster." msgstr "" #: ../Doc/whatsnew/2.3.rst:1197 msgid "" "Multiplication of large long integers is now much faster thanks to an " "implementation of Karatsuba multiplication, an algorithm that scales better " "than the O(n\\*n) required for the grade-school multiplication algorithm. " "(Original patch by Christopher A. Craig, and significantly reworked by Tim " "Peters.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:1202 msgid "" "The ``SET_LINENO`` opcode is now gone. This may provide a small speed " "increase, depending on your compiler's idiosyncrasies. See section :ref:" "`23section-other` for a longer explanation. (Removed by Michael Hudson.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:1206 msgid "" ":func:`xrange` objects now have their own iterator, making ``for i in " "xrange(n)`` slightly faster than ``for i in range(n)``. (Patch by Raymond " "Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:1210 msgid "" "A number of small rearrangements have been made in various hotspots to " "improve performance, such as inlining a function or removing some code. " "(Implemented mostly by GvR, but lots of people have contributed single " "changes.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:1214 msgid "" "The net result of the 2.3 optimizations is that Python 2.3 runs the pystone " "benchmark around 25% faster than Python 2.2." msgstr "" #: ../Doc/whatsnew/2.3.rst:1221 ../Doc/whatsnew/2.4.rst:990 #: ../Doc/whatsnew/3.1.rst:224 ../Doc/whatsnew/3.2.rst:654 msgid "New, Improved, and Deprecated Modules" msgstr "" #: ../Doc/whatsnew/2.3.rst:1223 ../Doc/whatsnew/2.4.rst:992 msgid "" "As usual, Python's standard library received a number of enhancements and " "bug fixes. Here's a partial list of the most notable changes, sorted " "alphabetically by module name. Consult the :file:`Misc/NEWS` file in the " "source tree for a more complete list of changes, or look through the CVS " "logs for all the details." msgstr "" #: ../Doc/whatsnew/2.3.rst:1228 msgid "" "The :mod:`array` module now supports arrays of Unicode characters using the " "``'u'`` format character. Arrays also now support using the ``+=`` " "assignment operator to add another array's contents, and the ``*=`` " "assignment operator to repeat an array. (Contributed by Jason Orendorff.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:1233 msgid "" "The :mod:`bsddb` module has been replaced by version 4.1.6 of the `PyBSDDB " "`_ package, providing a more complete " "interface to the transactional features of the BerkeleyDB library." msgstr "" #: ../Doc/whatsnew/2.3.rst:1237 msgid "" "The old version of the module has been renamed to :mod:`bsddb185` and is no " "longer built automatically; you'll have to edit :file:`Modules/Setup` to " "enable it. Note that the new :mod:`bsddb` package is intended to be " "compatible with the old module, so be sure to file bugs if you discover any " "incompatibilities. When upgrading to Python 2.3, if the new interpreter is " "compiled with a new version of the underlying BerkeleyDB library, you will " "almost certainly have to convert your database files to the new version. " "You can do this fairly easily with the new scripts :file:`db2pickle.py` and :" "file:`pickle2db.py` which you will find in the distribution's :file:`Tools/" "scripts` directory. If you've already been using the PyBSDDB package and " "importing it as :mod:`bsddb3`, you will have to change your ``import`` " "statements to import it as :mod:`bsddb`." msgstr "" #: ../Doc/whatsnew/2.3.rst:1249 msgid "" "The new :mod:`bz2` module is an interface to the bz2 data compression " "library. bz2-compressed data is usually smaller than corresponding :mod:" "`zlib`\\ -compressed data. (Contributed by Gustavo Niemeyer.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:1253 msgid "" "A set of standard date/time types has been added in the new :mod:`datetime` " "module. See the following section for more details." msgstr "" #: ../Doc/whatsnew/2.3.rst:1256 msgid "" "The Distutils :class:`Extension` class now supports an extra constructor " "argument named *depends* for listing additional source files that an " "extension depends on. This lets Distutils recompile the module if any of " "the dependency files are modified. For example, if :file:`sampmodule.c` " "includes the header file :file:`sample.h`, you would create the :class:" "`Extension` object like this::" msgstr "" #: ../Doc/whatsnew/2.3.rst:1267 msgid "" "Modifying :file:`sample.h` would then cause the module to be recompiled. " "(Contributed by Jeremy Hylton.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:1270 msgid "" "Other minor changes to Distutils: it now checks for the :envvar:`CC`, :" "envvar:`CFLAGS`, :envvar:`CPP`, :envvar:`LDFLAGS`, and :envvar:`CPPFLAGS` " "environment variables, using them to override the settings in Python's " "configuration (contributed by Robert Weber)." msgstr "" #: ../Doc/whatsnew/2.3.rst:1275 msgid "" "Previously the :mod:`doctest` module would only search the docstrings of " "public methods and functions for test cases, but it now also examines " "private ones as well. The :func:`DocTestSuite` function creates a :class:" "`unittest.TestSuite` object from a set of :mod:`doctest` tests." msgstr "" #: ../Doc/whatsnew/2.3.rst:1280 msgid "" "The new ``gc.get_referents(object)`` function returns a list of all the " "objects referenced by *object*." msgstr "" #: ../Doc/whatsnew/2.3.rst:1283 msgid "" "The :mod:`getopt` module gained a new function, :func:`gnu_getopt`, that " "supports the same arguments as the existing :func:`getopt` function but uses " "GNU-style scanning mode. The existing :func:`getopt` stops processing " "options as soon as a non-option argument is encountered, but in GNU-style " "mode processing continues, meaning that options and arguments can be mixed. " "For example::" msgstr "" #: ../Doc/whatsnew/2.3.rst:1294 msgid "(Contributed by Peter Åstrand.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:1296 msgid "" "The :mod:`grp`, :mod:`pwd`, and :mod:`resource` modules now return enhanced " "tuples::" msgstr "" #: ../Doc/whatsnew/2.3.rst:1304 msgid "The :mod:`gzip` module can now handle files exceeding 2 GiB." msgstr "" #: ../Doc/whatsnew/2.3.rst:1306 msgid "" "The new :mod:`heapq` module contains an implementation of a heap queue " "algorithm. A heap is an array-like data structure that keeps items in a " "partially sorted order such that, for every index *k*, ``heap[k] <= heap[2*k" "+1]`` and ``heap[k] <= heap[2*k+2]``. This makes it quick to remove the " "smallest item, and inserting a new item while maintaining the heap property " "is O(lg n). (See https://xlinux.nist.gov/dads//HTML/priorityque.html for " "more information about the priority queue data structure.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:1314 msgid "" "The :mod:`heapq` module provides :func:`heappush` and :func:`heappop` " "functions for adding and removing items while maintaining the heap property " "on top of some other mutable Python sequence type. Here's an example that " "uses a Python list::" msgstr "" #: ../Doc/whatsnew/2.3.rst:1332 msgid "(Contributed by Kevin O'Connor.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:1334 msgid "" "The IDLE integrated development environment has been updated using the code " "from the IDLEfork project (http://idlefork.sourceforge.net). The most " "notable feature is that the code being developed is now executed in a " "subprocess, meaning that there's no longer any need for manual ``reload()`` " "operations. IDLE's core code has been incorporated into the standard library " "as the :mod:`idlelib` package." msgstr "" #: ../Doc/whatsnew/2.3.rst:1340 msgid "" "The :mod:`imaplib` module now supports IMAP over SSL. (Contributed by Piers " "Lauder and Tino Lange.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:1343 msgid "" "The :mod:`itertools` contains a number of useful functions for use with " "iterators, inspired by various functions provided by the ML and Haskell " "languages. For example, ``itertools.ifilter(predicate, iterator)`` returns " "all elements in the iterator for which the function :func:`predicate` " "returns :const:`True`, and ``itertools.repeat(obj, N)`` returns ``obj`` *N* " "times. There are a number of other functions in the module; see the " "package's reference documentation for details. (Contributed by Raymond " "Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:1352 msgid "" "Two new functions in the :mod:`math` module, ``degrees(rads)`` and " "``radians(degs)``, convert between radians and degrees. Other functions in " "the :mod:`math` module such as :func:`math.sin` and :func:`math.cos` have " "always required input values measured in radians. Also, an optional *base* " "argument was added to :func:`math.log` to make it easier to compute " "logarithms for bases other than ``e`` and ``10``. (Contributed by Raymond " "Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:1359 msgid "" "Several new POSIX functions (:func:`getpgid`, :func:`killpg`, :func:" "`lchown`, :func:`loadavg`, :func:`major`, :func:`makedev`, :func:`minor`, " "and :func:`mknod`) were added to the :mod:`posix` module that underlies the :" "mod:`os` module. (Contributed by Gustavo Niemeyer, Geert Jansen, and Denis " "S. Otkidach.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:1365 msgid "" "In the :mod:`os` module, the :func:`\\*stat` family of functions can now " "report fractions of a second in a timestamp. Such time stamps are " "represented as floats, similar to the value returned by :func:`time.time`." msgstr "" #: ../Doc/whatsnew/2.3.rst:1369 msgid "" "During testing, it was found that some applications will break if time " "stamps are floats. For compatibility, when using the tuple interface of " "the :class:`stat_result` time stamps will be represented as integers. When " "using named fields (a feature first introduced in Python 2.2), time stamps " "are still represented as integers, unless :func:`os.stat_float_times` is " "invoked to enable float return values::" msgstr "" #: ../Doc/whatsnew/2.3.rst:1382 msgid "In Python 2.4, the default will change to always returning floats." msgstr "" #: ../Doc/whatsnew/2.3.rst:1384 msgid "" "Application developers should enable this feature only if all their " "libraries work properly when confronted with floating point time stamps, or " "if they use the tuple API. If used, the feature should be activated on an " "application level instead of trying to enable it on a per-use basis." msgstr "" #: ../Doc/whatsnew/2.3.rst:1389 msgid "" "The :mod:`optparse` module contains a new parser for command-line arguments " "that can convert option values to a particular Python type and will " "automatically generate a usage message. See the following section for more " "details." msgstr "" #: ../Doc/whatsnew/2.3.rst:1394 msgid "" "The old and never-documented :mod:`linuxaudiodev` module has been " "deprecated, and a new version named :mod:`ossaudiodev` has been added. The " "module was renamed because the OSS sound drivers can be used on platforms " "other than Linux, and the interface has also been tidied and brought up to " "date in various ways. (Contributed by Greg Ward and Nicholas FitzRoy-Dale.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:1400 msgid "" "The new :mod:`platform` module contains a number of functions that try to " "determine various properties of the platform you're running on. There are " "functions for getting the architecture, CPU type, the Windows OS version, " "and even the Linux distribution version. (Contributed by Marc-André Lemburg.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:1405 msgid "" "The parser objects provided by the :mod:`pyexpat` module can now optionally " "buffer character data, resulting in fewer calls to your character data " "handler and therefore faster performance. Setting the parser object's :attr:" "`buffer_text` attribute to :const:`True` will enable buffering." msgstr "" #: ../Doc/whatsnew/2.3.rst:1410 msgid "" "The ``sample(population, k)`` function was added to the :mod:`random` " "module. *population* is a sequence or :class:`xrange` object containing the " "elements of a population, and :func:`sample` chooses *k* elements from the " "population without replacing chosen elements. *k* can be any value up to " "``len(population)``. For example::" msgstr "" #: ../Doc/whatsnew/2.3.rst:1432 msgid "" "The :mod:`random` module now uses a new algorithm, the Mersenne Twister, " "implemented in C. It's faster and more extensively studied than the " "previous algorithm." msgstr "" #: ../Doc/whatsnew/2.3.rst:1436 msgid "(All changes contributed by Raymond Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:1438 msgid "" "The :mod:`readline` module also gained a number of new functions: :func:" "`get_history_item`, :func:`get_current_history_length`, and :func:" "`redisplay`." msgstr "" #: ../Doc/whatsnew/2.3.rst:1442 msgid "" "The :mod:`rexec` and :mod:`Bastion` modules have been declared dead, and " "attempts to import them will fail with a :exc:`RuntimeError`. New-style " "classes provide new ways to break out of the restricted execution " "environment provided by :mod:`rexec`, and no one has interest in fixing them " "or time to do so. If you have applications using :mod:`rexec`, rewrite them " "to use something else." msgstr "" #: ../Doc/whatsnew/2.3.rst:1448 msgid "" "(Sticking with Python 2.2 or 2.1 will not make your applications any safer " "because there are known bugs in the :mod:`rexec` module in those versions. " "To repeat: if you're using :mod:`rexec`, stop using it immediately.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:1452 msgid "" "The :mod:`rotor` module has been deprecated because the algorithm it uses " "for encryption is not believed to be secure. If you need encryption, use " "one of the several AES Python modules that are available separately." msgstr "" #: ../Doc/whatsnew/2.3.rst:1456 msgid "" "The :mod:`shutil` module gained a ``move(src, dest)`` function that " "recursively moves a file or directory to a new location." msgstr "" #: ../Doc/whatsnew/2.3.rst:1459 msgid "" "Support for more advanced POSIX signal handling was added to the :mod:" "`signal` but then removed again as it proved impossible to make it work " "reliably across platforms." msgstr "" #: ../Doc/whatsnew/2.3.rst:1463 msgid "" "The :mod:`socket` module now supports timeouts. You can call the " "``settimeout(t)`` method on a socket object to set a timeout of *t* seconds. " "Subsequent socket operations that take longer than *t* seconds to complete " "will abort and raise a :exc:`socket.timeout` exception." msgstr "" #: ../Doc/whatsnew/2.3.rst:1468 msgid "" "The original timeout implementation was by Tim O'Malley. Michael Gilfix " "integrated it into the Python :mod:`socket` module and shepherded it through " "a lengthy review. After the code was checked in, Guido van Rossum rewrote " "parts of it. (This is a good example of a collaborative development process " "in action.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:1474 msgid "" "On Windows, the :mod:`socket` module now ships with Secure Sockets Layer " "(SSL) support." msgstr "" #: ../Doc/whatsnew/2.3.rst:1477 msgid "" "The value of the C :const:`PYTHON_API_VERSION` macro is now exposed at the " "Python level as ``sys.api_version``. The current exception can be cleared " "by calling the new :func:`sys.exc_clear` function." msgstr "" #: ../Doc/whatsnew/2.3.rst:1481 msgid "" "The new :mod:`tarfile` module allows reading from and writing to :program:" "`tar`\\ -format archive files. (Contributed by Lars Gustäbel.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:1484 msgid "" "The new :mod:`textwrap` module contains functions for wrapping strings " "containing paragraphs of text. The ``wrap(text, width)`` function takes a " "string and returns a list containing the text split into lines of no more " "than the chosen width. The ``fill(text, width)`` function returns a single " "string, reformatted to fit into lines no longer than the chosen width. (As " "you can guess, :func:`fill` is built on top of :func:`wrap`. For example::" msgstr "" #: ../Doc/whatsnew/2.3.rst:1506 msgid "" "The module also contains a :class:`TextWrapper` class that actually " "implements the text wrapping strategy. Both the :class:`TextWrapper` class " "and the :func:`wrap` and :func:`fill` functions support a number of " "additional keyword arguments for fine-tuning the formatting; consult the " "module's documentation for details. (Contributed by Greg Ward.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:1512 msgid "" "The :mod:`thread` and :mod:`threading` modules now have companion modules, :" "mod:`dummy_thread` and :mod:`dummy_threading`, that provide a do-nothing " "implementation of the :mod:`thread` module's interface for platforms where " "threads are not supported. The intention is to simplify thread-aware " "modules (ones that *don't* rely on threads to run) by putting the following " "code at the top::" msgstr "" #: ../Doc/whatsnew/2.3.rst:1524 msgid "" "In this example, :mod:`_threading` is used as the module name to make it " "clear that the module being used is not necessarily the actual :mod:" "`threading` module. Code can call functions and use classes in :mod:" "`_threading` whether or not threads are supported, avoiding an :keyword:`if` " "statement and making the code slightly clearer. This module will not " "magically make multithreaded code run without threads; code that waits for " "another thread to return or to do something will simply hang forever." msgstr "" #: ../Doc/whatsnew/2.3.rst:1532 msgid "" "The :mod:`time` module's :func:`strptime` function has long been an " "annoyance because it uses the platform C library's :func:`strptime` " "implementation, and different platforms sometimes have odd bugs. Brett " "Cannon contributed a portable implementation that's written in pure Python " "and should behave identically on all platforms." msgstr "" #: ../Doc/whatsnew/2.3.rst:1538 msgid "" "The new :mod:`timeit` module helps measure how long snippets of Python code " "take to execute. The :file:`timeit.py` file can be run directly from the " "command line, or the module's :class:`Timer` class can be imported and used " "directly. Here's a short example that figures out whether it's faster to " "convert an 8-bit string to Unicode by appending an empty Unicode string to " "it or by using the :func:`unicode` function::" msgstr "" #: ../Doc/whatsnew/2.3.rst:1558 msgid "" "The :mod:`Tix` module has received various bug fixes and updates for the " "current version of the Tix package." msgstr "" #: ../Doc/whatsnew/2.3.rst:1561 msgid "" "The :mod:`Tkinter` module now works with a thread-enabled version of Tcl. " "Tcl's threading model requires that widgets only be accessed from the thread " "in which they're created; accesses from another thread can cause Tcl to " "panic. For certain Tcl interfaces, :mod:`Tkinter` will now automatically " "avoid this when a widget is accessed from a different thread by marshalling " "a command, passing it to the correct thread, and waiting for the results. " "Other interfaces can't be handled automatically but :mod:`Tkinter` will now " "raise an exception on such an access so that you can at least find out about " "the problem. See https://mail.python.org/pipermail/python-dev/2002-" "December/031107.html for a more detailed explanation of this change. " "(Implemented by Martin von Löwis.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:1572 msgid "" "Calling Tcl methods through :mod:`_tkinter` no longer returns only strings. " "Instead, if Tcl returns other objects those objects are converted to their " "Python equivalent, if one exists, or wrapped with a :class:`_tkinter." "Tcl_Obj` object if no Python equivalent exists. This behavior can be " "controlled through the :meth:`wantobjects` method of :class:`tkapp` objects." msgstr "" #: ../Doc/whatsnew/2.3.rst:1578 msgid "" "When using :mod:`_tkinter` through the :mod:`Tkinter` module (as most " "Tkinter applications will), this feature is always activated. It should not " "cause compatibility problems, since Tkinter would always convert string " "results to Python types where possible." msgstr "" #: ../Doc/whatsnew/2.3.rst:1583 msgid "" "If any incompatibilities are found, the old behavior can be restored by " "setting the :attr:`wantobjects` variable in the :mod:`Tkinter` module to " "false before creating the first :class:`tkapp` object. ::" msgstr "" #: ../Doc/whatsnew/2.3.rst:1590 msgid "Any breakage caused by this change should be reported as a bug." msgstr "" #: ../Doc/whatsnew/2.3.rst:1592 msgid "" "The :mod:`UserDict` module has a new :class:`DictMixin` class which defines " "all dictionary methods for classes that already have a minimum mapping " "interface. This greatly simplifies writing classes that need to be " "substitutable for dictionaries, such as the classes in the :mod:`shelve` " "module." msgstr "" #: ../Doc/whatsnew/2.3.rst:1598 msgid "" "Adding the mix-in as a superclass provides the full dictionary interface " "whenever the class defines :meth:`__getitem__`, :meth:`__setitem__`, :meth:" "`__delitem__`, and :meth:`keys`. For example::" msgstr "" #: ../Doc/whatsnew/2.3.rst:1639 ../Doc/whatsnew/2.4.rst:891 #: ../Doc/whatsnew/2.4.rst:919 ../Doc/whatsnew/2.4.rst:1212 #: ../Doc/whatsnew/2.5.rst:1372 ../Doc/whatsnew/2.5.rst:1381 #: ../Doc/whatsnew/2.6.rst:1596 ../Doc/whatsnew/2.6.rst:1880 #: ../Doc/whatsnew/2.6.rst:1901 ../Doc/whatsnew/3.1.rst:281 #: ../Doc/whatsnew/3.2.rst:820 ../Doc/whatsnew/3.2.rst:832 #: ../Doc/whatsnew/3.2.rst:876 ../Doc/whatsnew/3.2.rst:897 #: ../Doc/whatsnew/3.2.rst:911 ../Doc/whatsnew/3.2.rst:1778 #: ../Doc/whatsnew/3.2.rst:1823 msgid "(Contributed by Raymond Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:1641 msgid "" "The DOM implementation in :mod:`xml.dom.minidom` can now generate XML output " "in a particular encoding by providing an optional encoding argument to the :" "meth:`toxml` and :meth:`toprettyxml` methods of DOM nodes." msgstr "" #: ../Doc/whatsnew/2.3.rst:1645 msgid "" "The :mod:`xmlrpclib` module now supports an XML-RPC extension for handling " "nil data values such as Python's ``None``. Nil values are always supported " "on unmarshalling an XML-RPC response. To generate requests containing " "``None``, you must supply a true value for the *allow_none* parameter when " "creating a :class:`Marshaller` instance." msgstr "" #: ../Doc/whatsnew/2.3.rst:1651 msgid "" "The new :mod:`DocXMLRPCServer` module allows writing self-documenting XML-" "RPC servers. Run it in demo mode (as a program) to see it in action. " "Pointing the Web browser to the RPC server produces pydoc-style " "documentation; pointing xmlrpclib to the server allows invoking the actual " "methods. (Contributed by Brian Quinlan.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:1657 msgid "" "Support for internationalized domain names (RFCs 3454, 3490, 3491, and 3492) " "has been added. The \"idna\" encoding can be used to convert between a " "Unicode domain name and the ASCII-compatible encoding (ACE) of that name. ::" msgstr "" #: ../Doc/whatsnew/2.3.rst:1664 msgid "" "The :mod:`socket` module has also been extended to transparently convert " "Unicode hostnames to the ACE version before passing them to the C library. " "Modules that deal with hostnames such as :mod:`httplib` and :mod:`ftplib`) " "also support Unicode host names; :mod:`httplib` also sends HTTP ``Host`` " "headers using the ACE version of the domain name. :mod:`urllib` supports " "Unicode URLs with non-ASCII host names as long as the ``path`` part of the " "URL is ASCII only." msgstr "" #: ../Doc/whatsnew/2.3.rst:1672 msgid "" "To implement this change, the :mod:`stringprep` module, the " "``mkstringprep`` tool and the ``punycode`` encoding have been added." msgstr "" #: ../Doc/whatsnew/2.3.rst:1679 msgid "Date/Time Type" msgstr "" #: ../Doc/whatsnew/2.3.rst:1681 msgid "" "Date and time types suitable for expressing timestamps were added as the :" "mod:`datetime` module. The types don't support different calendars or many " "fancy features, and just stick to the basics of representing time." msgstr "" #: ../Doc/whatsnew/2.3.rst:1685 msgid "" "The three primary types are: :class:`date`, representing a day, month, and " "year; :class:`time`, consisting of hour, minute, and second; and :class:" "`datetime`, which contains all the attributes of both :class:`date` and :" "class:`time`. There's also a :class:`timedelta` class representing " "differences between two points in time, and time zone logic is implemented " "by classes inheriting from the abstract :class:`tzinfo` class." msgstr "" #: ../Doc/whatsnew/2.3.rst:1692 msgid "" "You can create instances of :class:`date` and :class:`time` by either " "supplying keyword arguments to the appropriate constructor, e.g. ``datetime." "date(year=1972, month=10, day=15)``, or by using one of a number of class " "methods. For example, the :meth:`date.today` class method returns the " "current local date." msgstr "" #: ../Doc/whatsnew/2.3.rst:1698 msgid "" "Once created, instances of the date/time classes are all immutable. There " "are a number of methods for producing formatted strings from objects::" msgstr "" #: ../Doc/whatsnew/2.3.rst:1710 msgid "" "The :meth:`replace` method allows modifying one or more fields of a :class:" "`date` or :class:`datetime` instance, returning a new instance::" msgstr "" #: ../Doc/whatsnew/2.3.rst:1720 msgid "" "Instances can be compared, hashed, and converted to strings (the result is " "the same as that of :meth:`isoformat`). :class:`date` and :class:`datetime` " "instances can be subtracted from each other, and added to :class:`timedelta` " "instances. The largest missing feature is that there's no standard library " "support for parsing strings and getting back a :class:`date` or :class:" "`datetime`." msgstr "" #: ../Doc/whatsnew/2.3.rst:1727 msgid "" "For more information, refer to the module's reference documentation. " "(Contributed by Tim Peters.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:1734 msgid "The optparse Module" msgstr "" #: ../Doc/whatsnew/2.3.rst:1736 msgid "" "The :mod:`getopt` module provides simple parsing of command-line arguments. " "The new :mod:`optparse` module (originally named Optik) provides more " "elaborate command-line parsing that follows the Unix conventions, " "automatically creates the output for :option:`!--help`, and can perform " "different actions for different options." msgstr "" #: ../Doc/whatsnew/2.3.rst:1742 msgid "" "You start by creating an instance of :class:`OptionParser` and telling it " "what your program's options are. ::" msgstr "" #: ../Doc/whatsnew/2.3.rst:1756 msgid "" "Parsing a command line is then done by calling the :meth:`parse_args` " "method. ::" msgstr "" #: ../Doc/whatsnew/2.3.rst:1762 msgid "" "This returns an object containing all of the option values, and a list of " "strings containing the remaining arguments." msgstr "" #: ../Doc/whatsnew/2.3.rst:1765 msgid "" "Invoking the script with the various arguments now works as you'd expect it " "to. Note that the length argument is automatically converted to an integer." msgstr "" #: ../Doc/whatsnew/2.3.rst:1778 msgid "The help message is automatically generated for you:" msgstr "" #: ../Doc/whatsnew/2.3.rst:1793 msgid "See the module's documentation for more details." msgstr "" #: ../Doc/whatsnew/2.3.rst:1796 msgid "" "Optik was written by Greg Ward, with suggestions from the readers of the " "Getopt SIG." msgstr "" #: ../Doc/whatsnew/2.3.rst:1805 msgid "Pymalloc: A Specialized Object Allocator" msgstr "" #: ../Doc/whatsnew/2.3.rst:1807 msgid "" "Pymalloc, a specialized object allocator written by Vladimir Marangozov, was " "a feature added to Python 2.1. Pymalloc is intended to be faster than the " "system :c:func:`malloc` and to have less memory overhead for allocation " "patterns typical of Python programs. The allocator uses C's :c:func:`malloc` " "function to get large pools of memory and then fulfills smaller memory " "requests from these pools." msgstr "" #: ../Doc/whatsnew/2.3.rst:1813 msgid "" "In 2.1 and 2.2, pymalloc was an experimental feature and wasn't enabled by " "default; you had to explicitly enable it when compiling Python by providing " "the :option:`--with-pymalloc` option to the :program:`configure` script. In " "2.3, pymalloc has had further enhancements and is now enabled by default; " "you'll have to supply :option:`--without-pymalloc` to disable it." msgstr "" #: ../Doc/whatsnew/2.3.rst:1819 msgid "" "This change is transparent to code written in Python; however, pymalloc may " "expose bugs in C extensions. Authors of C extension modules should test " "their code with pymalloc enabled, because some incorrect code may cause core " "dumps at runtime." msgstr "" #: ../Doc/whatsnew/2.3.rst:1824 msgid "" "There's one particularly common error that causes problems. There are a " "number of memory allocation functions in Python's C API that have previously " "just been aliases for the C library's :c:func:`malloc` and :c:func:`free`, " "meaning that if you accidentally called mismatched functions the error " "wouldn't be noticeable. When the object allocator is enabled, these " "functions aren't aliases of :c:func:`malloc` and :c:func:`free` any more, " "and calling the wrong function to free memory may get you a core dump. For " "example, if memory was allocated using :c:func:`PyObject_Malloc`, it has to " "be freed using :c:func:`PyObject_Free`, not :c:func:`free`. A few modules " "included with Python fell afoul of this and had to be fixed; doubtless there " "are more third-party modules that will have the same problem." msgstr "" #: ../Doc/whatsnew/2.3.rst:1836 msgid "" "As part of this change, the confusing multiple interfaces for allocating " "memory have been consolidated down into two API families. Memory allocated " "with one family must not be manipulated with functions from the other " "family. There is one family for allocating chunks of memory and another " "family of functions specifically for allocating Python objects." msgstr "" #: ../Doc/whatsnew/2.3.rst:1842 msgid "" "To allocate and free an undistinguished chunk of memory use the \"raw memory" "\" family: :c:func:`PyMem_Malloc`, :c:func:`PyMem_Realloc`, and :c:func:" "`PyMem_Free`." msgstr "" #: ../Doc/whatsnew/2.3.rst:1845 msgid "" "The \"object memory\" family is the interface to the pymalloc facility " "described above and is biased towards a large number of \"small\" " "allocations: :c:func:`PyObject_Malloc`, :c:func:`PyObject_Realloc`, and :c:" "func:`PyObject_Free`." msgstr "" #: ../Doc/whatsnew/2.3.rst:1849 msgid "" "To allocate and free Python objects, use the \"object\" family :c:func:" "`PyObject_New`, :c:func:`PyObject_NewVar`, and :c:func:`PyObject_Del`." msgstr "" #: ../Doc/whatsnew/2.3.rst:1852 msgid "" "Thanks to lots of work by Tim Peters, pymalloc in 2.3 also provides " "debugging features to catch memory overwrites and doubled frees in both " "extension modules and in the interpreter itself. To enable this support, " "compile a debugging version of the Python interpreter by running :program:" "`configure` with :option:`--with-pydebug`." msgstr "" #: ../Doc/whatsnew/2.3.rst:1858 msgid "" "To aid extension writers, a header file :file:`Misc/pymemcompat.h` is " "distributed with the source to Python 2.3 that allows Python extensions to " "use the 2.3 interfaces to memory allocation while compiling against any " "version of Python since 1.5.2. You would copy the file from Python's source " "distribution and bundle it with the source of your extension." msgstr "" #: ../Doc/whatsnew/2.3.rst:1869 msgid "https://hg.python.org/cpython/file/default/Objects/obmalloc.c" msgstr "" #: ../Doc/whatsnew/2.3.rst:1868 msgid "" "For the full details of the pymalloc implementation, see the comments at the " "top of the file :file:`Objects/obmalloc.c` in the Python source code. The " "above link points to the file within the python.org SVN browser." msgstr "" #: ../Doc/whatsnew/2.3.rst:1876 ../Doc/whatsnew/2.4.rst:1448 #: ../Doc/whatsnew/2.5.rst:2079 ../Doc/whatsnew/2.6.rst:2979 #: ../Doc/whatsnew/2.7.rst:2100 ../Doc/whatsnew/3.0.rst:852 #: ../Doc/whatsnew/3.1.rst:473 ../Doc/whatsnew/3.2.rst:2518 #: ../Doc/whatsnew/3.3.rst:2169 ../Doc/whatsnew/3.5.rst:2173 #: ../Doc/whatsnew/3.6.rst:1168 msgid "Build and C API Changes" msgstr "" #: ../Doc/whatsnew/2.3.rst:1878 ../Doc/whatsnew/2.5.rst:2081 #: ../Doc/whatsnew/2.6.rst:2981 ../Doc/whatsnew/2.7.rst:2102 #: ../Doc/whatsnew/3.1.rst:475 ../Doc/whatsnew/3.2.rst:2520 #: ../Doc/whatsnew/3.3.rst:2171 msgid "Changes to Python's build process and to the C API include:" msgstr "" #: ../Doc/whatsnew/2.3.rst:1880 msgid "" "The cycle detection implementation used by the garbage collection has proven " "to be stable, so it's now been made mandatory. You can no longer compile " "Python without it, and the :option:`--with-cycle-gc` switch to :program:" "`configure` has been removed." msgstr "" #: ../Doc/whatsnew/2.3.rst:1885 msgid "" "Python can now optionally be built as a shared library (:file:`libpython2.3." "so`) by supplying :option:`--enable-shared` when running Python's :program:" "`configure` script. (Contributed by Ondrej Palkovsky.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:1889 msgid "" "The :c:macro:`DL_EXPORT` and :c:macro:`DL_IMPORT` macros are now deprecated. " "Initialization functions for Python extension modules should now be declared " "using the new macro :c:macro:`PyMODINIT_FUNC`, while the Python core will " "generally use the :c:macro:`PyAPI_FUNC` and :c:macro:`PyAPI_DATA` macros." msgstr "" #: ../Doc/whatsnew/2.3.rst:1894 msgid "" "The interpreter can be compiled without any docstrings for the built-in " "functions and modules by supplying :option:`--without-doc-strings` to the :" "program:`configure` script. This makes the Python executable about 10% " "smaller, but will also mean that you can't get help for Python's built-ins. " "(Contributed by Gustavo Niemeyer.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:1900 msgid "" "The :c:func:`PyArg_NoArgs` macro is now deprecated, and code that uses it " "should be changed. For Python 2.2 and later, the method definition table " "can specify the :const:`METH_NOARGS` flag, signalling that there are no " "arguments, and the argument checking can then be removed. If compatibility " "with pre-2.2 versions of Python is important, the code could use " "``PyArg_ParseTuple(args, \"\")`` instead, but this will be slower than " "using :const:`METH_NOARGS`." msgstr "" #: ../Doc/whatsnew/2.3.rst:1907 msgid "" ":c:func:`PyArg_ParseTuple` accepts new format characters for various sizes " "of unsigned integers: ``B`` for :c:type:`unsigned char`, ``H`` for :c:type:" "`unsigned short int`, ``I`` for :c:type:`unsigned int`, and ``K`` for :c:" "type:`unsigned long long`." msgstr "" #: ../Doc/whatsnew/2.3.rst:1912 msgid "" "A new function, ``PyObject_DelItemString(mapping, char *key)`` was added as " "shorthand for ``PyObject_DelItem(mapping, PyString_New(key))``." msgstr "" #: ../Doc/whatsnew/2.3.rst:1915 msgid "" "File objects now manage their internal string buffer differently, increasing " "it exponentially when needed. This results in the benchmark tests in :file:" "`Lib/test/test_bufio.py` speeding up considerably (from 57 seconds to 1.7 " "seconds, according to one measurement)." msgstr "" #: ../Doc/whatsnew/2.3.rst:1920 msgid "" "It's now possible to define class and static methods for a C extension type " "by setting either the :const:`METH_CLASS` or :const:`METH_STATIC` flags in a " "method's :c:type:`PyMethodDef` structure." msgstr "" #: ../Doc/whatsnew/2.3.rst:1924 msgid "" "Python now includes a copy of the Expat XML parser's source code, removing " "any dependence on a system version or local installation of Expat." msgstr "" #: ../Doc/whatsnew/2.3.rst:1927 msgid "" "If you dynamically allocate type objects in your extension, you should be " "aware of a change in the rules relating to the :attr:`__module__` and :attr:" "`~definition.__name__` attributes. In summary, you will want to ensure the " "type's dictionary contains a ``'__module__'`` key; making the module name " "the part of the type name leading up to the final period will no longer have " "the desired effect. For more detail, read the API reference documentation " "or the source." msgstr "" #: ../Doc/whatsnew/2.3.rst:1938 ../Doc/whatsnew/2.4.rst:1501 #: ../Doc/whatsnew/2.5.rst:2207 msgid "Port-Specific Changes" msgstr "" #: ../Doc/whatsnew/2.3.rst:1940 msgid "" "Support for a port to IBM's OS/2 using the EMX runtime environment was " "merged into the main Python source tree. EMX is a POSIX emulation layer " "over the OS/2 system APIs. The Python port for EMX tries to support all the " "POSIX-like capability exposed by the EMX runtime, and mostly succeeds; :func:" "`fork` and :func:`fcntl` are restricted by the limitations of the underlying " "emulation layer. The standard OS/2 port, which uses IBM's Visual Age " "compiler, also gained support for case-sensitive import semantics as part of " "the integration of the EMX port into CVS. (Contributed by Andrew MacIntyre.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:1949 msgid "" "On MacOS, most toolbox modules have been weaklinked to improve backward " "compatibility. This means that modules will no longer fail to load if a " "single routine is missing on the current OS version. Instead calling the " "missing routine will raise an exception. (Contributed by Jack Jansen.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:1954 msgid "" "The RPM spec files, found in the :file:`Misc/RPM/` directory in the Python " "source distribution, were updated for 2.3. (Contributed by Sean " "Reifschneider.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:1957 msgid "" "Other new platforms now supported by Python include AtheOS (http://atheos." "cx/), GNU/Hurd, and OpenVMS." msgstr "" #: ../Doc/whatsnew/2.3.rst:1968 msgid "" "As usual, there were a bunch of other improvements and bugfixes scattered " "throughout the source tree. A search through the CVS change logs finds " "there were 523 patches applied and 514 bugs fixed between Python 2.2 and " "2.3. Both figures are likely to be underestimates." msgstr "" #: ../Doc/whatsnew/2.3.rst:1975 msgid "" "If the :envvar:`PYTHONINSPECT` environment variable is set, the Python " "interpreter will enter the interactive prompt after running a Python " "program, as if Python had been invoked with the :option:`-i` option. The " "environment variable can be set before running the Python interpreter, or it " "can be set by the Python program as part of its execution." msgstr "" #: ../Doc/whatsnew/2.3.rst:1981 msgid "" "The :file:`regrtest.py` script now provides a way to allow \"all resources " "except *foo*.\" A resource name passed to the :option:`!-u` option can now " "be prefixed with a hyphen (``'-'``) to mean \"remove this resource.\" For " "example, the option '``-uall,-bsddb``' could be used to enable the use of " "all resources except ``bsddb``." msgstr "" #: ../Doc/whatsnew/2.3.rst:1987 msgid "" "The tools used to build the documentation now work under Cygwin as well as " "Unix." msgstr "" #: ../Doc/whatsnew/2.3.rst:1990 msgid "" "The ``SET_LINENO`` opcode has been removed. Back in the mists of time, this " "opcode was needed to produce line numbers in tracebacks and support trace " "functions (for, e.g., :mod:`pdb`). Since Python 1.5, the line numbers in " "tracebacks have been computed using a different mechanism that works with " "\"python -O\". For Python 2.3 Michael Hudson implemented a similar scheme " "to determine when to call the trace function, removing the need for " "``SET_LINENO`` entirely." msgstr "" #: ../Doc/whatsnew/2.3.rst:1998 msgid "" "It would be difficult to detect any resulting difference from Python code, " "apart from a slight speed up when Python is run without :option:`-O`." msgstr "" #: ../Doc/whatsnew/2.3.rst:2001 msgid "" "C extensions that access the :attr:`f_lineno` field of frame objects should " "instead call ``PyCode_Addr2Line(f->f_code, f->f_lasti)``. This will have the " "added effect of making the code work as desired under \"python -O\" in " "earlier versions of Python." msgstr "" #: ../Doc/whatsnew/2.3.rst:2006 msgid "" "A nifty new feature is that trace functions can now assign to the :attr:" "`f_lineno` attribute of frame objects, changing the line that will be " "executed next. A ``jump`` command has been added to the :mod:`pdb` debugger " "taking advantage of this new feature. (Implemented by Richie Hindle.)" msgstr "" #: ../Doc/whatsnew/2.3.rst:2015 msgid "Porting to Python 2.3" msgstr "Portage vers Python 2.3" #: ../Doc/whatsnew/2.3.rst:2017 ../Doc/whatsnew/2.4.rst:1512 #: ../Doc/whatsnew/2.5.rst:2229 msgid "" "This section lists previously described changes that may require changes to " "your code:" msgstr "" #: ../Doc/whatsnew/2.3.rst:2020 msgid "" ":keyword:`yield` is now always a keyword; if it's used as a variable name in " "your code, a different name must be chosen." msgstr "" #: ../Doc/whatsnew/2.3.rst:2023 msgid "" "For strings *X* and *Y*, ``X in Y`` now works if *X* is more than one " "character long." msgstr "" #: ../Doc/whatsnew/2.3.rst:2026 msgid "" "The :func:`int` type constructor will now return a long integer instead of " "raising an :exc:`OverflowError` when a string or floating-point number is " "too large to fit into an integer." msgstr "" #: ../Doc/whatsnew/2.3.rst:2030 msgid "" "If you have Unicode strings that contain 8-bit characters, you must declare " "the file's encoding (UTF-8, Latin-1, or whatever) by adding a comment to the " "top of the file. See section :ref:`section-encodings` for more information." msgstr "" #: ../Doc/whatsnew/2.3.rst:2034 msgid "" "Calling Tcl methods through :mod:`_tkinter` no longer returns only strings. " "Instead, if Tcl returns other objects those objects are converted to their " "Python equivalent, if one exists, or wrapped with a :class:`_tkinter." "Tcl_Obj` object if no Python equivalent exists." msgstr "" #: ../Doc/whatsnew/2.3.rst:2039 msgid "" "Large octal and hex literals such as ``0xffffffff`` now trigger a :exc:" "`FutureWarning`. Currently they're stored as 32-bit numbers and result in a " "negative value, but in Python 2.4 they'll become positive long integers." msgstr "" #: ../Doc/whatsnew/2.3.rst:2043 msgid "" "There are a few ways to fix this warning. If you really need a positive " "number, just add an ``L`` to the end of the literal. If you're trying to " "get a 32-bit integer with low bits set and have previously used an " "expression such as ``~(1 << 31)``, it's probably clearest to start with all " "bits set and clear the desired upper bits. For example, to clear just the " "top bit (bit 31), you could write ``0xffffffffL &~(1L<<31)``." msgstr "" #: ../Doc/whatsnew/2.3.rst:2050 msgid "You can no longer disable assertions by assigning to ``__debug__``." msgstr "" #: ../Doc/whatsnew/2.3.rst:2052 msgid "" "The Distutils :func:`setup` function has gained various new keyword " "arguments such as *depends*. Old versions of the Distutils will abort if " "passed unknown keywords. A solution is to check for the presence of the " "new :func:`get_distutil_options` function in your :file:`setup.py` and only " "uses the new keywords with a version of the Distutils that supports them::" msgstr "" #: ../Doc/whatsnew/2.3.rst:2065 msgid "" "Using ``None`` as a variable name will now result in a :exc:`SyntaxWarning` " "warning." msgstr "" #: ../Doc/whatsnew/2.3.rst:2068 msgid "" "Names of extension types defined by the modules included with Python now " "contain the module and a ``'.'`` in front of the type name." msgstr "" #: ../Doc/whatsnew/2.3.rst:2079 msgid "" "The author would like to thank the following people for offering " "suggestions, corrections and assistance with various drafts of this article: " "Jeff Bauer, Simon Brunning, Brett Cannon, Michael Chermside, Andrew Dalke, " "Scott David Daniels, Fred L. Drake, Jr., David Fraser, Kelly Gerber, " "Raymond Hettinger, Michael Hudson, Chris Lambert, Detlef Lannert, Martin von " "Löwis, Andrew MacIntyre, Lalo Martins, Chad Netzer, Gustavo Niemeyer, Neal " "Norwitz, Hans Nowak, Chris Reedy, Francesco Ricciardi, Vinay Sajip, Neil " "Schemenauer, Roman Suzi, Jason Tishler, Just van Rossum." msgstr "" #: ../Doc/whatsnew/2.4.rst:3 msgid "What's New in Python 2.4" msgstr "Nouveautés de Python 2.4" #: ../Doc/whatsnew/2.4.rst:14 msgid "" "This article explains the new features in Python 2.4.1, released on March " "30, 2005." msgstr "" #: ../Doc/whatsnew/2.4.rst:17 msgid "" "Python 2.4 is a medium-sized release. It doesn't introduce as many changes " "as the radical Python 2.2, but introduces more features than the " "conservative 2.3 release. The most significant new language features are " "function decorators and generator expressions; most other changes are to the " "standard library." msgstr "" #: ../Doc/whatsnew/2.4.rst:22 msgid "" "According to the CVS change logs, there were 481 patches applied and 502 " "bugs fixed between Python 2.3 and 2.4. Both figures are likely to be " "underestimates." msgstr "" #: ../Doc/whatsnew/2.4.rst:25 msgid "" "This article doesn't attempt to provide a complete specification of every " "single new feature, but instead provides a brief introduction to each " "feature. For full details, you should refer to the documentation for Python " "2.4, such as the Python Library Reference and the Python Reference Manual. " "Often you will be referred to the PEP for a particular new feature for " "explanations of the implementation and design rationale." msgstr "" #: ../Doc/whatsnew/2.4.rst:36 msgid "PEP 218: Built-In Set Objects" msgstr "" #: ../Doc/whatsnew/2.4.rst:38 msgid "" "Python 2.3 introduced the :mod:`sets` module. C implementations of set data " "types have now been added to the Python core as two new built-in types, " "``set(iterable)`` and ``frozenset(iterable)``. They provide high speed " "operations for membership testing, for eliminating duplicates from " "sequences, and for mathematical operations like unions, intersections, " "differences, and symmetric differences. ::" msgstr "" #: ../Doc/whatsnew/2.4.rst:71 msgid "" "The :func:`frozenset` type is an immutable version of :func:`set`. Since it " "is immutable and hashable, it may be used as a dictionary key or as a member " "of another set." msgstr "" #: ../Doc/whatsnew/2.4.rst:75 msgid "" "The :mod:`sets` module remains in the standard library, and may be useful if " "you wish to subclass the :class:`Set` or :class:`ImmutableSet` classes. " "There are currently no plans to deprecate the module." msgstr "" #: ../Doc/whatsnew/2.4.rst:83 msgid "" "Originally proposed by Greg Wilson and ultimately implemented by Raymond " "Hettinger." msgstr "" #: ../Doc/whatsnew/2.4.rst:92 msgid "" "The lengthy transition process for this PEP, begun in Python 2.2, takes " "another step forward in Python 2.4. In 2.3, certain integer operations that " "would behave differently after int/long unification triggered :exc:" "`FutureWarning` warnings and returned values limited to 32 or 64 bits " "(depending on your platform). In 2.4, these expressions no longer produce a " "warning and instead produce a different result that's usually a long integer." msgstr "" #: ../Doc/whatsnew/2.4.rst:99 msgid "" "The problematic expressions are primarily left shifts and lengthy " "hexadecimal and octal constants. For example, ``2 << 32`` results in a " "warning in 2.3, evaluating to 0 on 32-bit platforms. In Python 2.4, this " "expression now returns the correct answer, 8589934592." msgstr "" #: ../Doc/whatsnew/2.4.rst:108 msgid "" "Original PEP written by Moshe Zadka and GvR. The changes for 2.4 were " "implemented by Kalle Svensson." msgstr "" #: ../Doc/whatsnew/2.4.rst:115 msgid "PEP 289: Generator Expressions" msgstr "" #: ../Doc/whatsnew/2.4.rst:117 msgid "" "The iterator feature introduced in Python 2.2 and the :mod:`itertools` " "module make it easier to write programs that loop through large data sets " "without having the entire data set in memory at one time. List " "comprehensions don't fit into this picture very well because they produce a " "Python list object containing all of the items. This unavoidably pulls all " "of the objects into memory, which can be a problem if your data set is very " "large. When trying to write a functionally-styled program, it would be " "natural to write something like::" msgstr "" #: ../Doc/whatsnew/2.4.rst:129 msgid "instead of ::" msgstr "" #: ../Doc/whatsnew/2.4.rst:136 msgid "" "The first form is more concise and perhaps more readable, but if you're " "dealing with a large number of link objects you'd have to write the second " "form to avoid having all link objects in memory at the same time." msgstr "" #: ../Doc/whatsnew/2.4.rst:140 msgid "" "Generator expressions work similarly to list comprehensions but don't " "materialize the entire list; instead they create a generator that will " "return elements one by one. The above example could be written as::" msgstr "" #: ../Doc/whatsnew/2.4.rst:148 msgid "" "Generator expressions always have to be written inside parentheses, as in " "the above example. The parentheses signalling a function call also count, " "so if you want to create an iterator that will be immediately passed to a " "function you could write::" msgstr "" #: ../Doc/whatsnew/2.4.rst:155 msgid "" "Generator expressions differ from list comprehensions in various small ways. " "Most notably, the loop variable (*obj* in the above example) is not " "accessible outside of the generator expression. List comprehensions leave " "the variable assigned to its last value; future versions of Python will " "change this, making list comprehensions match generator expressions in this " "respect." msgstr "" #: ../Doc/whatsnew/2.4.rst:165 msgid ":pep:`289` - Generator Expressions" msgstr "" #: ../Doc/whatsnew/2.4.rst:165 msgid "" "Proposed by Raymond Hettinger and implemented by Jiwon Seo with early " "efforts steered by Hye-Shik Chang." msgstr "" #: ../Doc/whatsnew/2.4.rst:172 msgid "PEP 292: Simpler String Substitutions" msgstr "" #: ../Doc/whatsnew/2.4.rst:174 msgid "" "Some new classes in the standard library provide an alternative mechanism " "for substituting variables into strings; this style of substitution may be " "better for applications where untrained users need to edit templates." msgstr "" #: ../Doc/whatsnew/2.4.rst:178 msgid "The usual way of substituting variables by name is the ``%`` operator::" msgstr "" #: ../Doc/whatsnew/2.4.rst:183 msgid "" "When writing the template string, it can be easy to forget the ``i`` or " "``s`` after the closing parenthesis. This isn't a big problem if the " "template is in a Python module, because you run the code, get an " "\"Unsupported format character\" :exc:`ValueError`, and fix the problem. " "However, consider an application such as Mailman where template strings or " "translations are being edited by users who aren't aware of the Python " "language. The format string's syntax is complicated to explain to such " "users, and if they make a mistake, it's difficult to provide helpful " "feedback to them." msgstr "" #: ../Doc/whatsnew/2.4.rst:192 msgid "" "PEP 292 adds a :class:`Template` class to the :mod:`string` module that uses " "``$`` to indicate a substitution::" msgstr "" #: ../Doc/whatsnew/2.4.rst:200 msgid "" "If a key is missing from the dictionary, the :meth:`substitute` method will " "raise a :exc:`KeyError`. There's also a :meth:`safe_substitute` method that " "ignores missing keys::" msgstr "" #: ../Doc/whatsnew/2.4.rst:211 msgid ":pep:`292` - Simpler String Substitutions" msgstr "" #: ../Doc/whatsnew/2.4.rst:212 msgid "Written and implemented by Barry Warsaw." msgstr "Écrit et implémenté par Barry Warsaw." #: ../Doc/whatsnew/2.4.rst:218 msgid "PEP 318: Decorators for Functions and Methods" msgstr "" #: ../Doc/whatsnew/2.4.rst:220 msgid "" "Python 2.2 extended Python's object model by adding static methods and class " "methods, but it didn't extend Python's syntax to provide any new way of " "defining static or class methods. Instead, you had to write a :keyword:" "`def` statement in the usual way, and pass the resulting method to a :func:" "`staticmethod` or :func:`classmethod` function that would wrap up the " "function as a method of the new type. Your code would look like this::" msgstr "" #: ../Doc/whatsnew/2.4.rst:233 msgid "" "If the method was very long, it would be easy to miss or forget the :func:" "`classmethod` invocation after the function body." msgstr "" #: ../Doc/whatsnew/2.4.rst:236 msgid "" "The intention was always to add some syntax to make such definitions more " "readable, but at the time of 2.2's release a good syntax was not obvious. " "Today a good syntax *still* isn't obvious but users are asking for easier " "access to the feature; a new syntactic feature has been added to meet this " "need." msgstr "" #: ../Doc/whatsnew/2.4.rst:241 msgid "" "The new feature is called \"function decorators\". The name comes from the " "idea that :func:`classmethod`, :func:`staticmethod`, and friends are storing " "additional information on a function object; they're *decorating* functions " "with more details." msgstr "" #: ../Doc/whatsnew/2.4.rst:246 msgid "" "The notation borrows from Java and uses the ``'@'`` character as an " "indicator. Using the new syntax, the example above would be written::" msgstr "" #: ../Doc/whatsnew/2.4.rst:256 msgid "" "The ``@classmethod`` is shorthand for the ``meth=classmethod(meth)`` " "assignment. More generally, if you have the following::" msgstr "" #: ../Doc/whatsnew/2.4.rst:265 msgid "It's equivalent to the following pre-decorator code::" msgstr "" #: ../Doc/whatsnew/2.4.rst:270 msgid "" "Decorators must come on the line before a function definition, one decorator " "per line, and can't be on the same line as the def statement, meaning that " "``@A def f(): ...`` is illegal. You can only decorate function definitions, " "either at the module level or inside a class; you can't decorate class " "definitions." msgstr "" #: ../Doc/whatsnew/2.4.rst:275 msgid "" "A decorator is just a function that takes the function to be decorated as an " "argument and returns either the same function or some new object. The " "return value of the decorator need not be callable (though it typically is), " "unless further decorators will be applied to the result. It's easy to write " "your own decorators. The following simple example just sets an attribute on " "the function object::" msgstr "" #: ../Doc/whatsnew/2.4.rst:295 msgid "" "As a slightly more realistic example, the following decorator checks that " "the supplied argument is an integer::" msgstr "" #: ../Doc/whatsnew/2.4.rst:313 msgid "" "An example in :pep:`318` contains a fancier version of this idea that lets " "you both specify the required type and check the returned type." msgstr "" #: ../Doc/whatsnew/2.4.rst:316 msgid "" "Decorator functions can take arguments. If arguments are supplied, your " "decorator function is called with only those arguments and must return a new " "decorator function; this function must take a single function and return a " "function, as previously described. In other words, ``@A @B @C(args)`` " "becomes::" msgstr "" #: ../Doc/whatsnew/2.4.rst:325 msgid "" "Getting this right can be slightly brain-bending, but it's not too difficult." msgstr "" #: ../Doc/whatsnew/2.4.rst:327 msgid "" "A small related change makes the :attr:`func_name` attribute of functions " "writable. This attribute is used to display function names in tracebacks, " "so decorators should change the name of any new function that's constructed " "and returned." msgstr "" #: ../Doc/whatsnew/2.4.rst:338 msgid ":pep:`318` - Decorators for Functions, Methods and Classes" msgstr "" #: ../Doc/whatsnew/2.4.rst:336 msgid "" "Written by Kevin D. Smith, Jim Jewett, and Skip Montanaro. Several people " "wrote patches implementing function decorators, but the one that was " "actually checked in was patch #979728, written by Mark Russell." msgstr "" #: ../Doc/whatsnew/2.4.rst:340 msgid "https://wiki.python.org/moin/PythonDecoratorLibrary" msgstr "" #: ../Doc/whatsnew/2.4.rst:341 msgid "This Wiki page contains several examples of decorators." msgstr "" #: ../Doc/whatsnew/2.4.rst:347 msgid "PEP 322: Reverse Iteration" msgstr "" #: ../Doc/whatsnew/2.4.rst:349 msgid "" "A new built-in function, ``reversed(seq)``, takes a sequence and returns an " "iterator that loops over the elements of the sequence in reverse order. ::" msgstr "" #: ../Doc/whatsnew/2.4.rst:359 msgid "" "Compared to extended slicing, such as ``range(1,4)[::-1]``, :func:`reversed` " "is easier to read, runs faster, and uses substantially less memory." msgstr "" #: ../Doc/whatsnew/2.4.rst:362 msgid "" "Note that :func:`reversed` only accepts sequences, not arbitrary iterators. " "If you want to reverse an iterator, first convert it to a list with :func:" "`list`. ::" msgstr "" #: ../Doc/whatsnew/2.4.rst:376 msgid ":pep:`322` - Reverse Iteration" msgstr "" #: ../Doc/whatsnew/2.4.rst:377 msgid "Written and implemented by Raymond Hettinger." msgstr "" #: ../Doc/whatsnew/2.4.rst:383 msgid "PEP 324: New subprocess Module" msgstr "" #: ../Doc/whatsnew/2.4.rst:385 msgid "" "The standard library provides a number of ways to execute a subprocess, " "offering different features and different levels of complexity. ``os." "system(command)`` is easy to use, but slow (it runs a shell process which " "executes the command) and dangerous (you have to be careful about escaping " "the shell's metacharacters). The :mod:`popen2` module offers classes that " "can capture standard output and standard error from the subprocess, but the " "naming is confusing. The :mod:`subprocess` module cleans this up, " "providing a unified interface that offers all the features you might need." msgstr "" #: ../Doc/whatsnew/2.4.rst:394 msgid "" "Instead of :mod:`popen2`'s collection of classes, :mod:`subprocess` contains " "a single class called :class:`Popen` whose constructor supports a number of " "different keyword arguments. ::" msgstr "" #: ../Doc/whatsnew/2.4.rst:404 msgid "" "*args* is commonly a sequence of strings that will be the arguments to the " "program executed as the subprocess. (If the *shell* argument is true, " "*args* can be a string which will then be passed on to the shell for " "interpretation, just as :func:`os.system` does.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:409 msgid "" "*stdin*, *stdout*, and *stderr* specify what the subprocess's input, output, " "and error streams will be. You can provide a file object or a file " "descriptor, or you can use the constant ``subprocess.PIPE`` to create a pipe " "between the subprocess and the parent." msgstr "" #: ../Doc/whatsnew/2.4.rst:417 msgid "The constructor has a number of handy options:" msgstr "" #: ../Doc/whatsnew/2.4.rst:419 msgid "" "*close_fds* requests that all file descriptors be closed before running the " "subprocess." msgstr "" #: ../Doc/whatsnew/2.4.rst:422 msgid "" "*cwd* specifies the working directory in which the subprocess will be " "executed (defaulting to whatever the parent's working directory is)." msgstr "" #: ../Doc/whatsnew/2.4.rst:425 msgid "*env* is a dictionary specifying environment variables." msgstr "" #: ../Doc/whatsnew/2.4.rst:427 msgid "" "*preexec_fn* is a function that gets called before the child is started." msgstr "" #: ../Doc/whatsnew/2.4.rst:429 msgid "" "*universal_newlines* opens the child's input and output using Python's :term:" "`universal newlines` feature." msgstr "" #: ../Doc/whatsnew/2.4.rst:432 msgid "" "Once you've created the :class:`Popen` instance, you can call its :meth:" "`wait` method to pause until the subprocess has exited, :meth:`poll` to " "check if it's exited without pausing, or ``communicate(data)`` to send the " "string *data* to the subprocess's standard input. ``communicate(data)`` " "then reads any data that the subprocess has sent to its standard output or " "standard error, returning a tuple ``(stdout_data, stderr_data)``." msgstr "" #: ../Doc/whatsnew/2.4.rst:439 msgid "" ":func:`call` is a shortcut that passes its arguments along to the :class:" "`Popen` constructor, waits for the command to complete, and returns the " "status code of the subprocess. It can serve as a safer analog to :func:`os." "system`::" msgstr "" #: ../Doc/whatsnew/2.4.rst:451 msgid "" "The command is invoked without use of the shell. If you really do want to " "use the shell, you can add ``shell=True`` as a keyword argument and provide " "a string instead of a sequence::" msgstr "" #: ../Doc/whatsnew/2.4.rst:457 msgid "" "The PEP takes various examples of shell and Python code and shows how they'd " "be translated into Python code that uses :mod:`subprocess`. Reading this " "section of the PEP is highly recommended." msgstr "" #: ../Doc/whatsnew/2.4.rst:465 msgid ":pep:`324` - subprocess - New process module" msgstr "" #: ../Doc/whatsnew/2.4.rst:465 msgid "" "Written and implemented by Peter Åstrand, with assistance from Fredrik Lundh " "and others." msgstr "" #: ../Doc/whatsnew/2.4.rst:472 msgid "PEP 327: Decimal Data Type" msgstr "" #: ../Doc/whatsnew/2.4.rst:474 msgid "" "Python has always supported floating-point (FP) numbers, based on the " "underlying C :c:type:`double` type, as a data type. However, while most " "programming languages provide a floating-point type, many people (even " "programmers) are unaware that floating-point numbers don't represent certain " "decimal fractions accurately. The new :class:`Decimal` type can represent " "these fractions accurately, up to a user-specified precision limit." msgstr "" #: ../Doc/whatsnew/2.4.rst:483 msgid "Why is Decimal needed?" msgstr "" #: ../Doc/whatsnew/2.4.rst:485 msgid "" "The limitations arise from the representation used for floating-point " "numbers. FP numbers are made up of three components:" msgstr "" #: ../Doc/whatsnew/2.4.rst:488 msgid "The sign, which is positive or negative." msgstr "" #: ../Doc/whatsnew/2.4.rst:490 msgid "" "The mantissa, which is a single-digit binary number followed by a " "fractional part. For example, ``1.01`` in base-2 notation is ``1 + 0/2 + " "1/4``, or 1.25 in decimal notation." msgstr "" #: ../Doc/whatsnew/2.4.rst:494 msgid "" "The exponent, which tells where the decimal point is located in the number " "represented." msgstr "" #: ../Doc/whatsnew/2.4.rst:497 msgid "" "For example, the number 1.25 has positive sign, a mantissa value of 1.01 (in " "binary), and an exponent of 0 (the decimal point doesn't need to be " "shifted). The number 5 has the same sign and mantissa, but the exponent is 2 " "because the mantissa is multiplied by 4 (2 to the power of the exponent 2); " "1.25 \\* 4 equals 5." msgstr "" #: ../Doc/whatsnew/2.4.rst:503 msgid "" "Modern systems usually provide floating-point support that conforms to a " "standard called IEEE 754. C's :c:type:`double` type is usually implemented " "as a 64-bit IEEE 754 number, which uses 52 bits of space for the mantissa. " "This means that numbers can only be specified to 52 bits of precision. If " "you're trying to represent numbers whose expansion repeats endlessly, the " "expansion is cut off after 52 bits. Unfortunately, most software needs to " "produce output in base 10, and common fractions in base 10 are often " "repeating decimals in binary. For example, 1.1 decimal is binary " "``1.0001100110011 ...``; .1 = 1/16 + 1/32 + 1/256 plus an infinite number of " "additional terms. IEEE 754 has to chop off that infinitely repeated decimal " "after 52 digits, so the representation is slightly inaccurate." msgstr "" #: ../Doc/whatsnew/2.4.rst:515 msgid "Sometimes you can see this inaccuracy when the number is printed::" msgstr "" #: ../Doc/whatsnew/2.4.rst:520 msgid "" "The inaccuracy isn't always visible when you print the number because the FP-" "to- decimal-string conversion is provided by the C library, and most C " "libraries try to produce sensible output. Even if it's not displayed, " "however, the inaccuracy is still there and subsequent operations can magnify " "the error." msgstr "" #: ../Doc/whatsnew/2.4.rst:525 msgid "" "For many applications this doesn't matter. If I'm plotting points and " "displaying them on my monitor, the difference between 1.1 and " "1.1000000000000001 is too small to be visible. Reports often limit output " "to a certain number of decimal places, and if you round the number to two or " "three or even eight decimal places, the error is never apparent. However, " "for applications where it does matter, it's a lot of work to implement your " "own custom arithmetic routines." msgstr "" #: ../Doc/whatsnew/2.4.rst:533 msgid "Hence, the :class:`Decimal` type was created." msgstr "" #: ../Doc/whatsnew/2.4.rst:537 msgid "The :class:`Decimal` type" msgstr "" #: ../Doc/whatsnew/2.4.rst:539 msgid "" "A new module, :mod:`decimal`, was added to Python's standard library. It " "contains two classes, :class:`Decimal` and :class:`Context`. :class:" "`Decimal` instances represent numbers, and :class:`Context` instances are " "used to wrap up various settings such as the precision and default rounding " "mode." msgstr "" #: ../Doc/whatsnew/2.4.rst:544 msgid "" ":class:`Decimal` instances are immutable, like regular Python integers and " "FP numbers; once it's been created, you can't change the value an instance " "represents. :class:`Decimal` instances can be created from integers or " "strings::" msgstr "" #: ../Doc/whatsnew/2.4.rst:555 msgid "" "You can also provide tuples containing the sign, the mantissa represented " "as a tuple of decimal digits, and the exponent::" msgstr "" #: ../Doc/whatsnew/2.4.rst:561 msgid "" "Cautionary note: the sign bit is a Boolean value, so 0 is positive and 1 is " "negative." msgstr "" #: ../Doc/whatsnew/2.4.rst:564 msgid "" "Converting from floating-point numbers poses a bit of a problem: should the " "FP number representing 1.1 turn into the decimal number for exactly 1.1, or " "for 1.1 plus whatever inaccuracies are introduced? The decision was to dodge " "the issue and leave such a conversion out of the API. Instead, you should " "convert the floating-point number into a string using the desired precision " "and pass the string to the :class:`Decimal` constructor::" msgstr "" #: ../Doc/whatsnew/2.4.rst:577 msgid "" "Once you have :class:`Decimal` instances, you can perform the usual " "mathematical operations on them. One limitation: exponentiation requires an " "integer exponent::" msgstr "" #: ../Doc/whatsnew/2.4.rst:598 msgid "" "You can combine :class:`Decimal` instances with integers, but not with " "floating- point numbers::" msgstr "" #: ../Doc/whatsnew/2.4.rst:609 msgid "" ":class:`Decimal` numbers can be used with the :mod:`math` and :mod:`cmath` " "modules, but note that they'll be immediately converted to floating-point " "numbers before the operation is performed, resulting in a possible loss of " "precision and accuracy. You'll also get back a regular floating-point " "number and not a :class:`Decimal`. ::" msgstr "" #: ../Doc/whatsnew/2.4.rst:622 msgid "" ":class:`Decimal` instances have a :meth:`sqrt` method that returns a :class:" "`Decimal`, but if you need other things such as trigonometric functions " "you'll have to implement them. ::" msgstr "" #: ../Doc/whatsnew/2.4.rst:631 msgid "The :class:`Context` type" msgstr "" #: ../Doc/whatsnew/2.4.rst:633 msgid "" "Instances of the :class:`Context` class encapsulate several settings for " "decimal operations:" msgstr "" #: ../Doc/whatsnew/2.4.rst:636 msgid ":attr:`prec` is the precision, the number of decimal places." msgstr "" #: ../Doc/whatsnew/2.4.rst:638 msgid "" ":attr:`rounding` specifies the rounding mode. The :mod:`decimal` module has " "constants for the various possibilities: :const:`ROUND_DOWN`, :const:" "`ROUND_CEILING`, :const:`ROUND_HALF_EVEN`, and various others." msgstr "" #: ../Doc/whatsnew/2.4.rst:642 msgid "" ":attr:`traps` is a dictionary specifying what happens on encountering " "certain error conditions: either an exception is raised or a value is " "returned. Some examples of error conditions are division by zero, loss of " "precision, and overflow." msgstr "" #: ../Doc/whatsnew/2.4.rst:647 msgid "" "There's a thread-local default context available by calling :func:" "`getcontext`; you can change the properties of this context to alter the " "default precision, rounding, or trap handling. The following example shows " "the effect of changing the precision of the default context::" msgstr "" #: ../Doc/whatsnew/2.4.rst:660 msgid "" "The default action for error conditions is selectable; the module can either " "return a special value such as infinity or not-a-number, or exceptions can " "be raised::" msgstr "" #: ../Doc/whatsnew/2.4.rst:673 msgid "" "The :class:`Context` instance also has various methods for formatting " "numbers such as :meth:`to_eng_string` and :meth:`to_sci_string`." msgstr "" #: ../Doc/whatsnew/2.4.rst:676 msgid "" "For more information, see the documentation for the :mod:`decimal` module, " "which includes a quick-start tutorial and a reference." msgstr "" #: ../Doc/whatsnew/2.4.rst:684 msgid ":pep:`327` - Decimal Data Type" msgstr "" #: ../Doc/whatsnew/2.4.rst:683 msgid "" "Written by Facundo Batista and implemented by Facundo Batista, Eric Price, " "Raymond Hettinger, Aahz, and Tim Peters." msgstr "" #: ../Doc/whatsnew/2.4.rst:688 msgid "http://www.lahey.com/float.htm" msgstr "" #: ../Doc/whatsnew/2.4.rst:687 msgid "" "The article uses Fortran code to illustrate many of the problems that " "floating- point inaccuracy can cause." msgstr "" #: ../Doc/whatsnew/2.4.rst:692 msgid "http://speleotrove.com/decimal/" msgstr "" #: ../Doc/whatsnew/2.4.rst:691 msgid "" "A description of a decimal-based representation. This representation is " "being proposed as a standard, and underlies the new Python decimal type. " "Much of this material was written by Mike Cowlishaw, designer of the Rexx " "language." msgstr "" #: ../Doc/whatsnew/2.4.rst:699 msgid "PEP 328: Multi-line Imports" msgstr "" #: ../Doc/whatsnew/2.4.rst:701 msgid "" "One language change is a small syntactic tweak aimed at making it easier to " "import many names from a module. In a ``from module import names`` " "statement, *names* is a sequence of names separated by commas. If the " "sequence is very long, you can either write multiple imports from the same " "module, or you can use backslashes to escape the line endings like this::" msgstr "" #: ../Doc/whatsnew/2.4.rst:712 msgid "" "The syntactic change in Python 2.4 simply allows putting the names within " "parentheses. Python ignores newlines within a parenthesized expression, so " "the backslashes are no longer needed::" msgstr "" #: ../Doc/whatsnew/2.4.rst:721 msgid "" "The PEP also proposes that all :keyword:`import` statements be absolute " "imports, with a leading ``.`` character to indicate a relative import. This " "part of the PEP was not implemented for Python 2.4, but was completed for " "Python 2.5." msgstr "" #: ../Doc/whatsnew/2.4.rst:728 ../Doc/whatsnew/2.5.rst:331 msgid ":pep:`328` - Imports: Multi-Line and Absolute/Relative" msgstr "" #: ../Doc/whatsnew/2.4.rst:729 msgid "Written by Aahz. Multi-line imports were implemented by Dima Dorfman." msgstr "" #: ../Doc/whatsnew/2.4.rst:735 msgid "PEP 331: Locale-Independent Float/String Conversions" msgstr "" #: ../Doc/whatsnew/2.4.rst:737 msgid "" "The :mod:`locale` modules lets Python software select various conversions " "and display conventions that are localized to a particular country or " "language. However, the module was careful to not change the numeric locale " "because various functions in Python's implementation required that the " "numeric locale remain set to the ``'C'`` locale. Often this was because the " "code was using the C library's :c:func:`atof` function." msgstr "" #: ../Doc/whatsnew/2.4.rst:744 msgid "" "Not setting the numeric locale caused trouble for extensions that used " "third- party C libraries, however, because they wouldn't have the correct " "locale set. The motivating example was GTK+, whose user interface widgets " "weren't displaying numbers in the current locale." msgstr "" #: ../Doc/whatsnew/2.4.rst:749 msgid "" "The solution described in the PEP is to add three new functions to the " "Python API that perform ASCII-only conversions, ignoring the locale setting:" msgstr "" #: ../Doc/whatsnew/2.4.rst:752 msgid "" "``PyOS_ascii_strtod(str, ptr)`` and ``PyOS_ascii_atof(str, ptr)`` both " "convert a string to a C :c:type:`double`." msgstr "" #: ../Doc/whatsnew/2.4.rst:755 msgid "" "``PyOS_ascii_formatd(buffer, buf_len, format, d)`` converts a :c:type:" "`double` to an ASCII string." msgstr "" #: ../Doc/whatsnew/2.4.rst:758 msgid "" "The code for these functions came from the GLib library (https://developer." "gnome.org/glib/stable/), whose developers kindly relicensed the relevant " "functions and donated them to the Python Software Foundation. The :mod:" "`locale` module can now change the numeric locale, letting extensions such " "as GTK+ produce the correct results." msgstr "" #: ../Doc/whatsnew/2.4.rst:767 msgid ":pep:`331` - Locale-Independent Float/String Conversions" msgstr "" #: ../Doc/whatsnew/2.4.rst:768 msgid "Written by Christian R. Reis, and implemented by Gustavo Carneiro." msgstr "" #: ../Doc/whatsnew/2.4.rst:776 msgid "" "Here are all of the changes that Python 2.4 makes to the core Python " "language." msgstr "" #: ../Doc/whatsnew/2.4.rst:778 msgid "Decorators for functions and methods were added (:pep:`318`)." msgstr "" #: ../Doc/whatsnew/2.4.rst:780 msgid "" "Built-in :func:`set` and :func:`frozenset` types were added (:pep:`218`). " "Other new built-ins include the ``reversed(seq)`` function (:pep:`322`)." msgstr "" #: ../Doc/whatsnew/2.4.rst:783 msgid "Generator expressions were added (:pep:`289`)." msgstr "" #: ../Doc/whatsnew/2.4.rst:785 msgid "" "Certain numeric expressions no longer return values restricted to 32 or 64 " "bits (:pep:`237`)." msgstr "" #: ../Doc/whatsnew/2.4.rst:788 msgid "" "You can now put parentheses around the list of names in a ``from module " "import names`` statement (:pep:`328`)." msgstr "" #: ../Doc/whatsnew/2.4.rst:791 msgid "" "The :meth:`dict.update` method now accepts the same argument forms as the :" "class:`dict` constructor. This includes any mapping, any iterable of key/" "value pairs, and keyword arguments. (Contributed by Raymond Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:795 msgid "" "The string methods :meth:`ljust`, :meth:`rjust`, and :meth:`center` now take " "an optional argument for specifying a fill character other than a space. " "(Contributed by Raymond Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:799 msgid "" "Strings also gained an :meth:`rsplit` method that works like the :meth:" "`split` method but splits from the end of the string. (Contributed by Sean " "Reifschneider.) ::" msgstr "" #: ../Doc/whatsnew/2.4.rst:808 msgid "" "Three keyword parameters, *cmp*, *key*, and *reverse*, were added to the :" "meth:`sort` method of lists. These parameters make some common usages of :" "meth:`sort` simpler. All of these parameters are optional." msgstr "" #: ../Doc/whatsnew/2.4.rst:812 msgid "" "For the *cmp* parameter, the value should be a comparison function that " "takes two parameters and returns -1, 0, or +1 depending on how the " "parameters compare. This function will then be used to sort the list. " "Previously this was the only parameter that could be provided to :meth:" "`sort`." msgstr "" #: ../Doc/whatsnew/2.4.rst:817 msgid "" "*key* should be a single-parameter function that takes a list element and " "returns a comparison key for the element. The list is then sorted using the " "comparison keys. The following example sorts a list case-insensitively::" msgstr "" #: ../Doc/whatsnew/2.4.rst:834 msgid "" "The last example, which uses the *cmp* parameter, is the old way to perform " "a case-insensitive sort. It works but is slower than using a *key* " "parameter. Using *key* calls :meth:`lower` method once for each element in " "the list while using *cmp* will call it twice for each comparison, so using " "*key* saves on invocations of the :meth:`lower` method." msgstr "" #: ../Doc/whatsnew/2.4.rst:840 msgid "" "For simple key functions and comparison functions, it is often possible to " "avoid a :keyword:`lambda` expression by using an unbound method instead. " "For example, the above case-insensitive sort is best written as::" msgstr "" #: ../Doc/whatsnew/2.4.rst:848 msgid "" "Finally, the *reverse* parameter takes a Boolean value. If the value is " "true, the list will be sorted into reverse order. Instead of ``L.sort(); L." "reverse()``, you can now write ``L.sort(reverse=True)``." msgstr "" #: ../Doc/whatsnew/2.4.rst:852 msgid "" "The results of sorting are now guaranteed to be stable. This means that two " "entries with equal keys will be returned in the same order as they were " "input. For example, you can sort a list of people by name, and then sort the " "list by age, resulting in a list sorted by age where people with the same " "age are in name-sorted order." msgstr "" #: ../Doc/whatsnew/2.4.rst:858 msgid "(All changes to :meth:`sort` contributed by Raymond Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:860 msgid "" "There is a new built-in function ``sorted(iterable)`` that works like the in-" "place :meth:`list.sort` method but can be used in expressions. The " "differences are:" msgstr "" #: ../Doc/whatsnew/2.4.rst:864 msgid "the input may be any iterable;" msgstr "" #: ../Doc/whatsnew/2.4.rst:866 msgid "a newly formed copy is sorted, leaving the original intact; and" msgstr "" #: ../Doc/whatsnew/2.4.rst:868 msgid "the expression returns the new sorted copy" msgstr "" #: ../Doc/whatsnew/2.4.rst:893 ../Doc/whatsnew/2.4.rst:1519 msgid "" "Integer operations will no longer trigger an :exc:`OverflowWarning`. The :" "exc:`OverflowWarning` warning will disappear in Python 2.5." msgstr "" #: ../Doc/whatsnew/2.4.rst:896 msgid "" "The interpreter gained a new switch, :option:`-m`, that takes a name, " "searches for the corresponding module on ``sys.path``, and runs the module " "as a script. For example, you can now run the Python profiler with ``python " "-m profile``. (Contributed by Nick Coghlan.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:901 msgid "" "The ``eval(expr, globals, locals)`` and ``execfile(filename, globals, " "locals)`` functions and the ``exec`` statement now accept any mapping type " "for the *locals* parameter. Previously this had to be a regular Python " "dictionary. (Contributed by Raymond Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:906 msgid "" "The :func:`zip` built-in function and :func:`itertools.izip` now return an " "empty list if called with no arguments. Previously they raised a :exc:" "`TypeError` exception. This makes them more suitable for use with variable " "length argument lists::" msgstr "" #: ../Doc/whatsnew/2.4.rst:921 msgid "" "Encountering a failure while importing a module no longer leaves a " "partially- initialized module object in ``sys.modules``. The incomplete " "module object left behind would fool further imports of the same module into " "succeeding, leading to confusing errors. (Fixed by Tim Peters.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:926 msgid "" ":const:`None` is now a constant; code that binds a new value to the name " "``None`` is now a syntax error. (Contributed by Raymond Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:935 msgid "" "The inner loops for list and tuple slicing were optimized and now run about " "one-third faster. The inner loops for dictionaries were also optimized, " "resulting in performance boosts for :meth:`keys`, :meth:`values`, :meth:" "`items`, :meth:`iterkeys`, :meth:`itervalues`, and :meth:`iteritems`. " "(Contributed by Raymond Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:941 msgid "" "The machinery for growing and shrinking lists was optimized for speed and " "for space efficiency. Appending and popping from lists now runs faster due " "to more efficient code paths and less frequent use of the underlying system :" "c:func:`realloc`. List comprehensions also benefit. :meth:`list.extend` " "was also optimized and no longer converts its argument into a temporary list " "before extending the base list. (Contributed by Raymond Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:948 msgid "" ":func:`list`, :func:`tuple`, :func:`map`, :func:`filter`, and :func:`zip` " "now run several times faster with non-sequence arguments that supply a :meth:" "`__len__` method. (Contributed by Raymond Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:952 msgid "" "The methods :meth:`list.__getitem__`, :meth:`dict.__getitem__`, and :meth:" "`dict.__contains__` are now implemented as :class:`method_descriptor` " "objects rather than :class:`wrapper_descriptor` objects. This form of " "access doubles their performance and makes them more suitable for use as " "arguments to functionals: ``map(mydict.__getitem__, keylist)``. (Contributed " "by Raymond Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:959 msgid "" "Added a new opcode, ``LIST_APPEND``, that simplifies the generated bytecode " "for list comprehensions and speeds them up by about a third. (Contributed " "by Raymond Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:963 msgid "" "The peephole bytecode optimizer has been improved to produce shorter, " "faster bytecode; remarkably, the resulting bytecode is more readable. " "(Enhanced by Raymond Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:967 msgid "" "String concatenations in statements of the form ``s = s + \"abc\"`` and ``s " "+= \"abc\"`` are now performed more efficiently in certain circumstances. " "This optimization won't be present in other Python implementations such as " "Jython, so you shouldn't rely on it; using the :meth:`join` method of " "strings is still recommended when you want to efficiently glue a large " "number of strings together. (Contributed by Armin Rigo.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:974 msgid "" "The net result of the 2.4 optimizations is that Python 2.4 runs the pystone " "benchmark around 5% faster than Python 2.3 and 35% faster than Python 2.2. " "(pystone is not a particularly good benchmark, but it's the most commonly " "used measurement of Python's performance. Your own applications may show " "greater or smaller benefits from Python 2.4.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:997 msgid "" "The :mod:`asyncore` module's :func:`loop` function now has a *count* " "parameter that lets you perform a limited number of passes through the " "polling loop. The default is still to loop forever." msgstr "" #: ../Doc/whatsnew/2.4.rst:1001 msgid "" "The :mod:`base64` module now has more complete RFC 3548 support for Base64, " "Base32, and Base16 encoding and decoding, including optional case folding " "and optional alternative alphabets. (Contributed by Barry Warsaw.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1005 msgid "" "The :mod:`bisect` module now has an underlying C implementation for improved " "performance. (Contributed by Dmitry Vasiliev.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1008 msgid "" "The CJKCodecs collections of East Asian codecs, maintained by Hye-Shik " "Chang, was integrated into 2.4. The new encodings are:" msgstr "" #: ../Doc/whatsnew/2.4.rst:1011 msgid "Chinese (PRC): gb2312, gbk, gb18030, big5hkscs, hz" msgstr "Chinois (PRC) : gb2312, gbk, gb18030, big5hkscs, hz" #: ../Doc/whatsnew/2.4.rst:1013 msgid "Chinese (ROC): big5, cp950" msgstr "Chinois (ROC) : big5, cp950" #: ../Doc/whatsnew/2.4.rst:1017 msgid "Japanese: cp932, euc-jis-2004, euc-jp, euc-jisx0213, iso-2022-jp," msgstr "Japonais : cp932, euc-jis-2004, euc-jp, euc-jisx0213, iso-2022-jp," #: ../Doc/whatsnew/2.4.rst:1016 msgid "" "iso-2022-jp-1, iso-2022-jp-2, iso-2022-jp-3, iso-2022-jp-ext, iso-2022-" "jp-2004, shift-jis, shift-jisx0213, shift-jis-2004" msgstr "" "iso-2022-jp-1, iso-2022-jp-2, iso-2022-jp-3, iso-2022-jp-ext, iso-2022-" "jp-2004, shift-jis, shift-jisx0213, shift-jis-2004" #: ../Doc/whatsnew/2.4.rst:1019 msgid "Korean: cp949, euc-kr, johab, iso-2022-kr" msgstr "Coréen : cp949, euc-kr, johab, iso-2022-kr" #: ../Doc/whatsnew/2.4.rst:1021 msgid "" "Some other new encodings were added: HP Roman8, ISO_8859-11, ISO_8859-16, " "PCTP-154, and TIS-620." msgstr "" "D’autres encodages ont été ajoutés : HP Roman8, ISO_8859-11, ISO_8859-16, " "PCTP-154, and TIS-620." #: ../Doc/whatsnew/2.4.rst:1024 msgid "" "The UTF-8 and UTF-16 codecs now cope better with receiving partial input. " "Previously the :class:`StreamReader` class would try to read more data, " "making it impossible to resume decoding from the stream. The :meth:`read` " "method will now return as much data as it can and future calls will resume " "decoding where previous ones left off. (Implemented by Walter Dörwald.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1030 msgid "" "There is a new :mod:`collections` module for various specialized collection " "datatypes. Currently it contains just one type, :class:`deque`, a double- " "ended queue that supports efficiently adding and removing elements from " "either end::" msgstr "" #: ../Doc/whatsnew/2.4.rst:1050 msgid "" "Several modules, such as the :mod:`Queue` and :mod:`threading` modules, now " "take advantage of :class:`collections.deque` for improved performance. " "(Contributed by Raymond Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1054 msgid "" "The :mod:`ConfigParser` classes have been enhanced slightly. The :meth:" "`read` method now returns a list of the files that were successfully parsed, " "and the :meth:`set` method raises :exc:`TypeError` if passed a *value* " "argument that isn't a string. (Contributed by John Belmonte and David " "Goodger.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1059 msgid "" "The :mod:`curses` module now supports the ncurses extension :func:" "`use_default_colors`. On platforms where the terminal supports " "transparency, this makes it possible to use a transparent background. " "(Contributed by Jörg Lehmann.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1064 msgid "" "The :mod:`difflib` module now includes an :class:`HtmlDiff` class that " "creates an HTML table showing a side by side comparison of two versions of a " "text. (Contributed by Dan Gass.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1068 msgid "" "The :mod:`email` package was updated to version 3.0, which dropped various " "deprecated APIs and removes support for Python versions earlier than 2.3. " "The 3.0 version of the package uses a new incremental parser for MIME " "messages, available in the :mod:`email.FeedParser` module. The new parser " "doesn't require reading the entire message into memory, and doesn't raise " "exceptions if a message is malformed; instead it records any problems in " "the :attr:`defect` attribute of the message. (Developed by Anthony Baxter, " "Barry Warsaw, Thomas Wouters, and others.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1077 msgid "" "The :mod:`heapq` module has been converted to C. The resulting tenfold " "improvement in speed makes the module suitable for handling high volumes of " "data. In addition, the module has two new functions :func:`nlargest` and :" "func:`nsmallest` that use heaps to find the N largest or smallest values in " "a dataset without the expense of a full sort. (Contributed by Raymond " "Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1083 msgid "" "The :mod:`httplib` module now contains constants for HTTP status codes " "defined in various HTTP-related RFC documents. Constants have names such " "as :const:`OK`, :const:`CREATED`, :const:`CONTINUE`, and :const:" "`MOVED_PERMANENTLY`; use pydoc to get a full list. (Contributed by Andrew " "Eland.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1089 msgid "" "The :mod:`imaplib` module now supports IMAP's THREAD command (contributed by " "Yves Dionne) and new :meth:`deleteacl` and :meth:`myrights` methods " "(contributed by Arnaud Mazin)." msgstr "" #: ../Doc/whatsnew/2.4.rst:1093 msgid "" "The :mod:`itertools` module gained a ``groupby(iterable[, *func*])`` " "function. *iterable* is something that can be iterated over to return a " "stream of elements, and the optional *func* parameter is a function that " "takes an element and returns a key value; if omitted, the key is simply the " "element itself. :func:`groupby` then groups the elements into subsequences " "which have matching values of the key, and returns a series of 2-tuples " "containing the key value and an iterator over the subsequence." msgstr "" #: ../Doc/whatsnew/2.4.rst:1101 msgid "" "Here's an example to make this clearer. The *key* function simply returns " "whether a number is even or odd, so the result of :func:`groupby` is to " "return consecutive runs of odd or even numbers. ::" msgstr "" #: ../Doc/whatsnew/2.4.rst:1117 msgid "" ":func:`groupby` is typically used with sorted input. The logic for :func:" "`groupby` is similar to the Unix ``uniq`` filter which makes it handy for " "eliminating, counting, or identifying duplicate elements::" msgstr "" #: ../Doc/whatsnew/2.4.rst:1140 msgid "(Contributed by Hye-Shik Chang.)" msgstr "(Contribution par Hye-Shik Chang.)" #: ../Doc/whatsnew/2.4.rst:1142 msgid "" ":mod:`itertools` also gained a function named ``tee(iterator, N)`` that " "returns *N* independent iterators that replicate *iterator*. If *N* is " "omitted, the default is 2. ::" msgstr "" #: ../Doc/whatsnew/2.4.rst:1155 msgid "" "Note that :func:`tee` has to keep copies of the values returned by the " "iterator; in the worst case, it may need to keep all of them. This should " "therefore be used carefully if the leading iterator can run far ahead of the " "trailing iterator in a long stream of inputs. If the separation is large, " "then you might as well use :func:`list` instead. When the iterators track " "closely with one another, :func:`tee` is ideal. Possible applications " "include bookmarking, windowing, or lookahead iterators. (Contributed by " "Raymond Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1164 msgid "" "A number of functions were added to the :mod:`locale` module, such as :func:" "`bind_textdomain_codeset` to specify a particular encoding and a family of :" "func:`l\\*gettext` functions that return messages in the chosen encoding. " "(Contributed by Gustavo Niemeyer.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1169 msgid "" "Some keyword arguments were added to the :mod:`logging` package's :func:" "`basicConfig` function to simplify log configuration. The default behavior " "is to log messages to standard error, but various keyword arguments can be " "specified to log to a particular file, change the logging format, or set the " "logging level. For example::" msgstr "" #: ../Doc/whatsnew/2.4.rst:1180 msgid "" "Other additions to the :mod:`logging` package include a ``log(level, msg)`` " "convenience method, as well as a :class:`TimedRotatingFileHandler` class " "that rotates its log files at a timed interval. The module already had :" "class:`RotatingFileHandler`, which rotated logs once the file exceeded a " "certain size. Both classes derive from a new :class:`BaseRotatingHandler` " "class that can be used to implement other rotating handlers." msgstr "" #: ../Doc/whatsnew/2.4.rst:1187 msgid "(Changes implemented by Vinay Sajip.)" msgstr "(Changements implémentés par Vinay Sajip.)" #: ../Doc/whatsnew/2.4.rst:1189 msgid "" "The :mod:`marshal` module now shares interned strings on unpacking a data " "structure. This may shrink the size of certain pickle strings, but the " "primary effect is to make :file:`.pyc` files significantly smaller. " "(Contributed by Martin von Löwis.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1194 msgid "" "The :mod:`nntplib` module's :class:`NNTP` class gained :meth:`description` " "and :meth:`descriptions` methods to retrieve newsgroup descriptions for a " "single group or for a range of groups. (Contributed by Jürgen A. Erhard.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1198 msgid "" "Two new functions were added to the :mod:`operator` module, " "``attrgetter(attr)`` and ``itemgetter(index)``. Both functions return " "callables that take a single argument and return the corresponding attribute " "or item; these callables make excellent data extractors when used with :func:" "`map` or :func:`sorted`. For example::" msgstr "" #: ../Doc/whatsnew/2.4.rst:1214 msgid "" "The :mod:`optparse` module was updated in various ways. The module now " "passes its messages through :func:`gettext.gettext`, making it possible to " "internationalize Optik's help and error messages. Help messages for options " "can now include the string ``'%default'``, which will be replaced by the " "option's default value. (Contributed by Greg Ward.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1220 msgid "" "The long-term plan is to deprecate the :mod:`rfc822` module in some future " "Python release in favor of the :mod:`email` package. To this end, the :func:" "`email.Utils.formatdate` function has been changed to make it usable as a " "replacement for :func:`rfc822.formatdate`. You may want to write new e-mail " "processing code with this in mind. (Change implemented by Anthony Baxter.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1226 msgid "" "A new ``urandom(n)`` function was added to the :mod:`os` module, returning a " "string containing *n* bytes of random data. This function provides access " "to platform-specific sources of randomness such as :file:`/dev/urandom` on " "Linux or the Windows CryptoAPI. (Contributed by Trevor Perrin.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1231 msgid "" "Another new function: ``os.path.lexists(path)`` returns true if the file " "specified by *path* exists, whether or not it's a symbolic link. This " "differs from the existing ``os.path.exists(path)`` function, which returns " "false if *path* is a symlink that points to a destination that doesn't " "exist. (Contributed by Beni Cherniavsky.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1237 msgid "" "A new :func:`getsid` function was added to the :mod:`posix` module that " "underlies the :mod:`os` module. (Contributed by J. Raynor.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1240 msgid "" "The :mod:`poplib` module now supports POP over SSL. (Contributed by Hector " "Urtubia.)" msgstr "" "Le module :mod:`poplib` supporte maintenant POP sur SSL. (Contribution par " "Hector Urtubia.)" #: ../Doc/whatsnew/2.4.rst:1243 msgid "" "The :mod:`profile` module can now profile C extension functions. " "(Contributed by Nick Bastin.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1246 msgid "" "The :mod:`random` module has a new method called ``getrandbits(N)`` that " "returns a long integer *N* bits in length. The existing :meth:`randrange` " "method now uses :meth:`getrandbits` where appropriate, making generation of " "arbitrarily large random numbers more efficient. (Contributed by Raymond " "Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1252 msgid "" "The regular expression language accepted by the :mod:`re` module was " "extended with simple conditional expressions, written as ``(?(group)A|B)``. " "*group* is either a numeric group ID or a group name defined with ``(?" "P...)`` earlier in the expression. If the specified group matched, " "the regular expression pattern *A* will be tested against the string; if the " "group didn't match, the pattern *B* will be used instead. (Contributed by " "Gustavo Niemeyer.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1259 msgid "" "The :mod:`re` module is also no longer recursive, thanks to a massive amount " "of work by Gustavo Niemeyer. In a recursive regular expression engine, " "certain patterns result in a large amount of C stack space being consumed, " "and it was possible to overflow the stack. For example, if you matched a " "30000-byte string of ``a`` characters against the expression ``(a|b)+``, one " "stack frame was consumed per character. Python 2.3 tried to check for stack " "overflow and raise a :exc:`RuntimeError` exception, but certain patterns " "could sidestep the checking and if you were unlucky Python could segfault. " "Python 2.4's regular expression engine can match this pattern without " "problems." msgstr "" #: ../Doc/whatsnew/2.4.rst:1269 msgid "" "The :mod:`signal` module now performs tighter error-checking on the " "parameters to the :func:`signal.signal` function. For example, you can't " "set a handler on the :const:`SIGKILL` signal; previous versions of Python " "would quietly accept this, but 2.4 will raise a :exc:`RuntimeError` " "exception." msgstr "" #: ../Doc/whatsnew/2.4.rst:1274 msgid "" "Two new functions were added to the :mod:`socket` module. :func:`socketpair` " "returns a pair of connected sockets and ``getservbyport(port)`` looks up the " "service name for a given port number. (Contributed by Dave Cole and Barry " "Warsaw.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1279 msgid "" "The :func:`sys.exitfunc` function has been deprecated. Code should be using " "the existing :mod:`atexit` module, which correctly handles calling multiple " "exit functions. Eventually :func:`sys.exitfunc` will become a purely " "internal interface, accessed only by :mod:`atexit`." msgstr "" #: ../Doc/whatsnew/2.4.rst:1284 msgid "" "The :mod:`tarfile` module now generates GNU-format tar files by default. " "(Contributed by Lars Gustäbel.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1287 msgid "" "The :mod:`threading` module now has an elegantly simple way to support " "thread-local data. The module contains a :class:`local` class whose " "attribute values are local to different threads. ::" msgstr "" #: ../Doc/whatsnew/2.4.rst:1297 msgid "" "Other threads can assign and retrieve their own values for the :attr:" "`number` and :attr:`url` attributes. You can subclass :class:`local` to " "initialize attributes or to add methods. (Contributed by Jim Fulton.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1301 msgid "" "The :mod:`timeit` module now automatically disables periodic garbage " "collection during the timing loop. This change makes consecutive timings " "more comparable. (Contributed by Raymond Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1305 msgid "" "The :mod:`weakref` module now supports a wider variety of objects including " "Python functions, class instances, sets, frozensets, deques, arrays, files, " "sockets, and regular expression pattern objects. (Contributed by Raymond " "Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1310 msgid "" "The :mod:`xmlrpclib` module now supports a multi-call extension for " "transmitting multiple XML-RPC calls in a single HTTP operation. (Contributed " "by Brian Quinlan.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1314 msgid "" "The :mod:`mpz`, :mod:`rotor`, and :mod:`xreadlines` modules have been " "removed." msgstr "" #: ../Doc/whatsnew/2.4.rst:1323 msgid "cookielib" msgstr "cookielib" #: ../Doc/whatsnew/2.4.rst:1325 msgid "" "The :mod:`cookielib` library supports client-side handling for HTTP cookies, " "mirroring the :mod:`Cookie` module's server-side cookie support. Cookies are " "stored in cookie jars; the library transparently stores cookies offered by " "the web server in the cookie jar, and fetches the cookie from the jar when " "connecting to the server. As in web browsers, policy objects control whether " "cookies are accepted or not." msgstr "" #: ../Doc/whatsnew/2.4.rst:1332 msgid "" "In order to store cookies across sessions, two implementations of cookie " "jars are provided: one that stores cookies in the Netscape format so " "applications can use the Mozilla or Lynx cookie files, and one that stores " "cookies in the same format as the Perl libwww library." msgstr "" #: ../Doc/whatsnew/2.4.rst:1337 msgid "" ":mod:`urllib2` has been changed to interact with :mod:`cookielib`: :class:" "`HTTPCookieProcessor` manages a cookie jar that is used when accessing URLs." msgstr "" #: ../Doc/whatsnew/2.4.rst:1341 msgid "This module was contributed by John J. Lee." msgstr "" #: ../Doc/whatsnew/2.4.rst:1347 ../Doc/whatsnew/3.4.rst:776 #: ../Doc/whatsnew/3.5.rst:1088 msgid "doctest" msgstr "doctest" #: ../Doc/whatsnew/2.4.rst:1349 msgid "" "The :mod:`doctest` module underwent considerable refactoring thanks to " "Edward Loper and Tim Peters. Testing can still be as simple as running :" "func:`doctest.testmod`, but the refactorings allow customizing the module's " "operation in various ways" msgstr "" #: ../Doc/whatsnew/2.4.rst:1354 msgid "" "The new :class:`DocTestFinder` class extracts the tests from a given " "object's docstrings::" msgstr "" #: ../Doc/whatsnew/2.4.rst:1370 msgid "" "The new :class:`DocTestRunner` class then runs individual tests and can " "produce a summary of the results::" msgstr "" #: ../Doc/whatsnew/2.4.rst:1379 msgid "The above example produces the following output::" msgstr "" #: ../Doc/whatsnew/2.4.rst:1387 msgid "" ":class:`DocTestRunner` uses an instance of the :class:`OutputChecker` class " "to compare the expected output with the actual output. This class takes a " "number of different flags that customize its behaviour; ambitious users can " "also write a completely new subclass of :class:`OutputChecker`." msgstr "" #: ../Doc/whatsnew/2.4.rst:1392 msgid "" "The default output checker provides a number of handy features. For example, " "with the :const:`doctest.ELLIPSIS` option flag, an ellipsis (``...``) in the " "expected output matches any substring, making it easier to accommodate " "outputs that vary in minor ways::" msgstr "" #: ../Doc/whatsnew/2.4.rst:1403 msgid "Another special string, ````, matches a blank line::" msgstr "" #: ../Doc/whatsnew/2.4.rst:1411 msgid "" "Another new capability is producing a diff-style display of the output by " "specifying the :const:`doctest.REPORT_UDIFF` (unified diffs), :const:" "`doctest.REPORT_CDIFF` (context diffs), or :const:`doctest.REPORT_NDIFF` " "(delta-style) option flags. For example::" msgstr "" #: ../Doc/whatsnew/2.4.rst:1427 msgid "" "Running the above function's tests with :const:`doctest.REPORT_UDIFF` " "specified, you get the following output:" msgstr "" #: ../Doc/whatsnew/2.4.rst:1450 msgid "Some of the changes to Python's build process and to the C API are:" msgstr "" #: ../Doc/whatsnew/2.4.rst:1452 msgid "" "Three new convenience macros were added for common return values from " "extension functions: :c:macro:`Py_RETURN_NONE`, :c:macro:`Py_RETURN_TRUE`, " "and :c:macro:`Py_RETURN_FALSE`. (Contributed by Brett Cannon.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1456 msgid "" "Another new macro, :c:macro:`Py_CLEAR(obj)`, decreases the reference count " "of *obj* and sets *obj* to the null pointer. (Contributed by Jim Fulton.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1459 msgid "" "A new function, ``PyTuple_Pack(N, obj1, obj2, ..., objN)``, constructs " "tuples from a variable length argument list of Python objects. (Contributed " "by Raymond Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1463 msgid "" "A new function, ``PyDict_Contains(d, k)``, implements fast dictionary " "lookups without masking exceptions raised during the look-up process. " "(Contributed by Raymond Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1467 msgid "" "The :c:macro:`Py_IS_NAN(X)` macro returns 1 if its float or double argument " "*X* is a NaN. (Contributed by Tim Peters.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1470 msgid "" "C code can avoid unnecessary locking by using the new :c:func:" "`PyEval_ThreadsInitialized` function to tell if any thread operations have " "been performed. If this function returns false, no lock operations are " "needed. (Contributed by Nick Coghlan.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1475 msgid "" "A new function, :c:func:`PyArg_VaParseTupleAndKeywords`, is the same as :c:" "func:`PyArg_ParseTupleAndKeywords` but takes a :c:type:`va_list` instead of " "a number of arguments. (Contributed by Greg Chapman.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1479 msgid "" "A new method flag, :const:`METH_COEXISTS`, allows a function defined in " "slots to co-exist with a :c:type:`PyCFunction` having the same name. This " "can halve the access time for a method such as :meth:`set.__contains__`. " "(Contributed by Raymond Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1484 msgid "" "Python can now be built with additional profiling for the interpreter " "itself, intended as an aid to people developing the Python core. Providing :" "option:`--enable-profiling` to the :program:`configure` script will let you " "profile the interpreter with :program:`gprof`, and providing the :option:`--" "with-tsc` switch enables profiling using the Pentium's Time-Stamp- Counter " "register. Note that the :option:`--with-tsc` switch is slightly misnamed, " "because the profiling feature also works on the PowerPC platform, though " "that processor architecture doesn't call that register \"the TSC register" "\". (Contributed by Jeremy Hylton.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1494 msgid "" "The :c:type:`tracebackobject` type has been renamed to :c:type:" "`PyTracebackObject`." msgstr "" #: ../Doc/whatsnew/2.4.rst:1503 msgid "" "The Windows port now builds under MSVC++ 7.1 as well as version 6. " "(Contributed by Martin von Löwis.)" msgstr "" #: ../Doc/whatsnew/2.4.rst:1510 msgid "Porting to Python 2.4" msgstr "Portage vers Python 2.4" #: ../Doc/whatsnew/2.4.rst:1515 msgid "" "Left shifts and hexadecimal/octal constants that are too large no longer " "trigger a :exc:`FutureWarning` and return a value limited to 32 or 64 bits; " "instead they return a long integer." msgstr "" #: ../Doc/whatsnew/2.4.rst:1522 msgid "" "The :func:`zip` built-in function and :func:`itertools.izip` now return an " "empty list instead of raising a :exc:`TypeError` exception if called with no " "arguments." msgstr "" #: ../Doc/whatsnew/2.4.rst:1526 msgid "" "You can no longer compare the :class:`date` and :class:`datetime` instances " "provided by the :mod:`datetime` module. Two instances of different classes " "will now always be unequal, and relative comparisons (``<``, ``>``) will " "raise a :exc:`TypeError`." msgstr "" #: ../Doc/whatsnew/2.4.rst:1531 msgid "" ":func:`dircache.listdir` now passes exceptions to the caller instead of " "returning empty lists." msgstr "" #: ../Doc/whatsnew/2.4.rst:1534 msgid "" ":func:`LexicalHandler.startDTD` used to receive the public and system IDs in " "the wrong order. This has been corrected; applications relying on the wrong " "order need to be fixed." msgstr "" #: ../Doc/whatsnew/2.4.rst:1538 msgid "" ":func:`fcntl.ioctl` now warns if the *mutate* argument is omitted and " "relevant." msgstr "" #: ../Doc/whatsnew/2.4.rst:1541 msgid "" "The :mod:`tarfile` module now generates GNU-format tar files by default." msgstr "" #: ../Doc/whatsnew/2.4.rst:1543 msgid "" "Encountering a failure while importing a module no longer leaves a " "partially- initialized module object in ``sys.modules``." msgstr "" #: ../Doc/whatsnew/2.4.rst:1546 msgid "" ":const:`None` is now a constant; code that binds a new value to the name " "``None`` is now a syntax error." msgstr "" #: ../Doc/whatsnew/2.4.rst:1549 msgid "" "The :func:`signals.signal` function now raises a :exc:`RuntimeError` " "exception for certain illegal values; previously these errors would pass " "silently. For example, you can no longer set a handler on the :const:" "`SIGKILL` signal." msgstr "" #: ../Doc/whatsnew/2.4.rst:1561 msgid "" "The author would like to thank the following people for offering " "suggestions, corrections and assistance with various drafts of this article: " "Koray Can, Hye-Shik Chang, Michael Dyck, Raymond Hettinger, Brian Hurt, " "Hamish Lawson, Fredrik Lundh, Sean Reifschneider, Sadruddin Rejeb." msgstr "" #: ../Doc/whatsnew/2.5.rst:3 msgid "What's New in Python 2.5" msgstr "Nouveautés de Python 2.5" #: ../Doc/whatsnew/2.5.rst:12 msgid "" "This article explains the new features in Python 2.5. The final release of " "Python 2.5 is scheduled for August 2006; :pep:`356` describes the planned " "release schedule." msgstr "" #: ../Doc/whatsnew/2.5.rst:16 msgid "" "The changes in Python 2.5 are an interesting mix of language and library " "improvements. The library enhancements will be more important to Python's " "user community, I think, because several widely-useful packages were added. " "New modules include ElementTree for XML processing (:mod:`xml.etree`), the " "SQLite database module (:mod:`sqlite`), and the :mod:`ctypes` module for " "calling C functions." msgstr "" #: ../Doc/whatsnew/2.5.rst:23 msgid "" "The language changes are of middling significance. Some pleasant new " "features were added, but most of them aren't features that you'll use every " "day. Conditional expressions were finally added to the language using a " "novel syntax; see section :ref:`pep-308`. The new ':keyword:`with`' " "statement will make writing cleanup code easier (section :ref:`pep-343`). " "Values can now be passed into generators (section :ref:`pep-342`). Imports " "are now visible as either absolute or relative (section :ref:`pep-328`). " "Some corner cases of exception handling are handled better (section :ref:" "`pep-341`). All these improvements are worthwhile, but they're improvements " "to one specific language feature or another; none of them are broad " "modifications to Python's semantics." msgstr "" #: ../Doc/whatsnew/2.5.rst:34 msgid "" "As well as the language and library additions, other improvements and " "bugfixes were made throughout the source tree. A search through the SVN " "change logs finds there were 353 patches applied and 458 bugs fixed between " "Python 2.4 and 2.5. (Both figures are likely to be underestimates.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:39 msgid "" "This article doesn't try to be a complete specification of the new features; " "instead changes are briefly introduced using helpful examples. For full " "details, you should always refer to the documentation for Python 2.5 at " "https://docs.python.org. If you want to understand the complete " "implementation and design rationale, refer to the PEP for a particular new " "feature." msgstr "" #: ../Doc/whatsnew/2.5.rst:45 msgid "" "Comments, suggestions, and error reports for this document are welcome; " "please e-mail them to the author or open a bug in the Python bug tracker." msgstr "" #: ../Doc/whatsnew/2.5.rst:54 msgid "PEP 308: Conditional Expressions" msgstr "PEP 308 : Expressions conditionnelles" #: ../Doc/whatsnew/2.5.rst:56 msgid "" "For a long time, people have been requesting a way to write conditional " "expressions, which are expressions that return value A or value B depending " "on whether a Boolean value is true or false. A conditional expression lets " "you write a single assignment statement that has the same effect as the " "following::" msgstr "" #: ../Doc/whatsnew/2.5.rst:66 msgid "" "There have been endless tedious discussions of syntax on both python-dev and " "comp.lang.python. A vote was even held that found the majority of voters " "wanted conditional expressions in some form, but there was no syntax that " "was preferred by a clear majority. Candidates included C's ``cond ? true_v : " "false_v``, ``if cond then true_v else false_v``, and 16 other variations." msgstr "" #: ../Doc/whatsnew/2.5.rst:72 msgid "Guido van Rossum eventually chose a surprising syntax::" msgstr "Guido van Rossum a finalement choisi une syntaxe surprenante ::" #: ../Doc/whatsnew/2.5.rst:76 msgid "" "Evaluation is still lazy as in existing Boolean expressions, so the order of " "evaluation jumps around a bit. The *condition* expression in the middle is " "evaluated first, and the *true_value* expression is evaluated only if the " "condition was true. Similarly, the *false_value* expression is only " "evaluated when the condition is false." msgstr "" #: ../Doc/whatsnew/2.5.rst:82 msgid "" "This syntax may seem strange and backwards; why does the condition go in the " "*middle* of the expression, and not in the front as in C's ``c ? x : y``? " "The decision was checked by applying the new syntax to the modules in the " "standard library and seeing how the resulting code read. In many cases " "where a conditional expression is used, one value seems to be the 'common " "case' and one value is an 'exceptional case', used only on rarer occasions " "when the condition isn't met. The conditional syntax makes this pattern a " "bit more obvious::" msgstr "" #: ../Doc/whatsnew/2.5.rst:92 msgid "" "I read the above statement as meaning \"here *contents* is usually assigned " "a value of ``doc+'\\n'``; sometimes *doc* is empty, in which special case " "an empty string is returned.\" I doubt I will use conditional expressions " "very often where there isn't a clear common and uncommon case." msgstr "" #: ../Doc/whatsnew/2.5.rst:97 msgid "" "There was some discussion of whether the language should require surrounding " "conditional expressions with parentheses. The decision was made to *not* " "require parentheses in the Python language's grammar, but as a matter of " "style I think you should always use them. Consider these two statements::" msgstr "" #: ../Doc/whatsnew/2.5.rst:108 msgid "" "In the first version, I think a reader's eye might group the statement into " "'level = 1', 'if logging', 'else 0', and think that the condition decides " "whether the assignment to *level* is performed. The second version reads " "better, in my opinion, because it makes it clear that the assignment is " "always performed and the choice is being made between two values." msgstr "" #: ../Doc/whatsnew/2.5.rst:114 msgid "" "Another reason for including the brackets: a few odd combinations of list " "comprehensions and lambdas could look like incorrect conditional " "expressions. See :pep:`308` for some examples. If you put parentheses " "around your conditional expressions, you won't run into this case." msgstr "" #: ../Doc/whatsnew/2.5.rst:123 msgid ":pep:`308` - Conditional Expressions" msgstr ":pep:`308` - Expressions conditionnelles" #: ../Doc/whatsnew/2.5.rst:123 msgid "" "PEP written by Guido van Rossum and Raymond D. Hettinger; implemented by " "Thomas Wouters." msgstr "" "PEP écrite par Guido van Rossum et Raymond D. Hettinger; implémentée par " "Thomas Wouters." #: ../Doc/whatsnew/2.5.rst:132 msgid "PEP 309: Partial Function Application" msgstr "PEP 309 : Application partielle de fonction" #: ../Doc/whatsnew/2.5.rst:134 msgid "" "The :mod:`functools` module is intended to contain tools for functional-" "style programming." msgstr "" #: ../Doc/whatsnew/2.5.rst:137 msgid "" "One useful tool in this module is the :func:`partial` function. For programs " "written in a functional style, you'll sometimes want to construct variants " "of existing functions that have some of the parameters filled in. Consider " "a Python function ``f(a, b, c)``; you could create a new function ``g(b, " "c)`` that was equivalent to ``f(1, b, c)``. This is called \"partial " "function application\"." msgstr "" #: ../Doc/whatsnew/2.5.rst:144 msgid "" ":func:`partial` takes the arguments ``(function, arg1, arg2, ... " "kwarg1=value1, kwarg2=value2)``. The resulting object is callable, so you " "can just call it to invoke *function* with the filled-in arguments." msgstr "" #: ../Doc/whatsnew/2.5.rst:148 msgid "Here's a small but realistic example::" msgstr "Voici un exemple court mais réaliste ::" #: ../Doc/whatsnew/2.5.rst:160 msgid "" "Here's another example, from a program that uses PyGTK. Here a context- " "sensitive pop-up menu is being constructed dynamically. The callback " "provided for the menu option is a partially applied version of the :meth:" "`open_item` method, where the first argument has been provided. ::" msgstr "" #: ../Doc/whatsnew/2.5.rst:173 msgid "" "Another function in the :mod:`functools` module is the " "``update_wrapper(wrapper, wrapped)`` function that helps you write well- " "behaved decorators. :func:`update_wrapper` copies the name, module, and " "docstring attribute to a wrapper function so that tracebacks inside the " "wrapped function are easier to understand. For example, you might write::" msgstr "" #: ../Doc/whatsnew/2.5.rst:186 msgid "" ":func:`wraps` is a decorator that can be used inside your own decorators to " "copy the wrapped function's information. An alternate version of the " "previous example would be::" msgstr "" #: ../Doc/whatsnew/2.5.rst:201 msgid ":pep:`309` - Partial Function Application" msgstr ":pep:`309` - Application partielle de fonction" #: ../Doc/whatsnew/2.5.rst:201 msgid "" "PEP proposed and written by Peter Harris; implemented by Hye-Shik Chang and " "Nick Coghlan, with adaptations by Raymond Hettinger." msgstr "" #: ../Doc/whatsnew/2.5.rst:210 msgid "PEP 314: Metadata for Python Software Packages v1.1" msgstr "" #: ../Doc/whatsnew/2.5.rst:212 msgid "" "Some simple dependency support was added to Distutils. The :func:`setup` " "function now has ``requires``, ``provides``, and ``obsoletes`` keyword " "parameters. When you build a source distribution using the ``sdist`` " "command, the dependency information will be recorded in the :file:`PKG-INFO` " "file." msgstr "" #: ../Doc/whatsnew/2.5.rst:217 msgid "" "Another new keyword parameter is ``download_url``, which should be set to a " "URL for the package's source code. This means it's now possible to look up " "an entry in the package index, determine the dependencies for a package, and " "download the required packages. ::" msgstr "" #: ../Doc/whatsnew/2.5.rst:231 msgid "" "Another new enhancement to the Python package index at https://pypi.python." "org is storing source and binary archives for a package. The new :command:" "`upload` Distutils command will upload a package to the repository." msgstr "" #: ../Doc/whatsnew/2.5.rst:236 msgid "" "Before a package can be uploaded, you must be able to build a distribution " "using the :command:`sdist` Distutils command. Once that works, you can run " "``python setup.py upload`` to add your package to the PyPI archive. " "Optionally you can GPG-sign the package by supplying the :option:`--sign` " "and :option:`--identity` options." msgstr "" #: ../Doc/whatsnew/2.5.rst:242 msgid "" "Package uploading was implemented by Martin von Löwis and Richard Jones." msgstr "" #: ../Doc/whatsnew/2.5.rst:248 msgid ":pep:`314` - Metadata for Python Software Packages v1.1" msgstr "" #: ../Doc/whatsnew/2.5.rst:248 msgid "" "PEP proposed and written by A.M. Kuchling, Richard Jones, and Fred Drake; " "implemented by Richard Jones and Fred Drake." msgstr "" #: ../Doc/whatsnew/2.5.rst:257 msgid "PEP 328: Absolute and Relative Imports" msgstr "" #: ../Doc/whatsnew/2.5.rst:259 msgid "" "The simpler part of PEP 328 was implemented in Python 2.4: parentheses could " "now be used to enclose the names imported from a module using the ``from ... " "import ...`` statement, making it easier to import many different names." msgstr "" #: ../Doc/whatsnew/2.5.rst:263 msgid "" "The more complicated part has been implemented in Python 2.5: importing a " "module can be specified to use absolute or package-relative imports. The " "plan is to move toward making absolute imports the default in future " "versions of Python." msgstr "" #: ../Doc/whatsnew/2.5.rst:267 msgid "Let's say you have a package directory like this::" msgstr "" #: ../Doc/whatsnew/2.5.rst:274 msgid "" "This defines a package named :mod:`pkg` containing the :mod:`pkg.main` and :" "mod:`pkg.string` submodules." msgstr "" #: ../Doc/whatsnew/2.5.rst:277 msgid "" "Consider the code in the :file:`main.py` module. What happens if it " "executes the statement ``import string``? In Python 2.4 and earlier, it " "will first look in the package's directory to perform a relative import, " "finds :file:`pkg/string.py`, imports the contents of that file as the :mod:" "`pkg.string` module, and that module is bound to the name ``string`` in the :" "mod:`pkg.main` module's namespace." msgstr "" #: ../Doc/whatsnew/2.5.rst:284 msgid "" "That's fine if :mod:`pkg.string` was what you wanted. But what if you " "wanted Python's standard :mod:`string` module? There's no clean way to " "ignore :mod:`pkg.string` and look for the standard module; generally you had " "to look at the contents of ``sys.modules``, which is slightly unclean. " "Holger Krekel's :mod:`py.std` package provides a tidier way to perform " "imports from the standard library, ``import py; py.std.string.join()``, but " "that package isn't available on all Python installations." msgstr "" #: ../Doc/whatsnew/2.5.rst:292 msgid "" "Reading code which relies on relative imports is also less clear, because a " "reader may be confused about which module, :mod:`string` or :mod:`pkg." "string`, is intended to be used. Python users soon learned not to duplicate " "the names of standard library modules in the names of their packages' " "submodules, but you can't protect against having your submodule's name being " "used for a new module added in a future version of Python." msgstr "" #: ../Doc/whatsnew/2.5.rst:299 msgid "" "In Python 2.5, you can switch :keyword:`import`'s behaviour to absolute " "imports using a ``from __future__ import absolute_import`` directive. This " "absolute- import behaviour will become the default in a future version " "(probably Python 2.7). Once absolute imports are the default, ``import " "string`` will always find the standard library's version. It's suggested " "that users should begin using absolute imports as much as possible, so it's " "preferable to begin writing ``from pkg import string`` in your code." msgstr "" #: ../Doc/whatsnew/2.5.rst:307 msgid "" "Relative imports are still possible by adding a leading period to the " "module name when using the ``from ... import`` form::" msgstr "" #: ../Doc/whatsnew/2.5.rst:315 msgid "" "This imports the :mod:`string` module relative to the current package, so " "in :mod:`pkg.main` this will import *name1* and *name2* from :mod:`pkg." "string`. Additional leading periods perform the relative import starting " "from the parent of the current package. For example, code in the :mod:`A.B." "C` module can do::" msgstr "" #: ../Doc/whatsnew/2.5.rst:324 msgid "" "Leading periods cannot be used with the ``import modname`` form of the " "import statement, only the ``from ... import`` form." msgstr "" #: ../Doc/whatsnew/2.5.rst:331 msgid "PEP written by Aahz; implemented by Thomas Wouters." msgstr "PEP écrite par Aahz; implémentée par Thomas Wouters." #: ../Doc/whatsnew/2.5.rst:333 msgid "https://pylib.readthedocs.org/" msgstr "" #: ../Doc/whatsnew/2.5.rst:334 msgid "" "The py library by Holger Krekel, which contains the :mod:`py.std` package." msgstr "" #: ../Doc/whatsnew/2.5.rst:342 msgid "PEP 338: Executing Modules as Scripts" msgstr "" #: ../Doc/whatsnew/2.5.rst:344 msgid "" "The :option:`-m` switch added in Python 2.4 to execute a module as a script " "gained a few more abilities. Instead of being implemented in C code inside " "the Python interpreter, the switch now uses an implementation in a new " "module, :mod:`runpy`." msgstr "" #: ../Doc/whatsnew/2.5.rst:349 msgid "" "The :mod:`runpy` module implements a more sophisticated import mechanism so " "that it's now possible to run modules in a package such as :mod:`pychecker." "checker`. The module also supports alternative import mechanisms such as " "the :mod:`zipimport` module. This means you can add a .zip archive's path " "to ``sys.path`` and then use the :option:`-m` switch to execute code from " "the archive." msgstr "" #: ../Doc/whatsnew/2.5.rst:359 msgid ":pep:`338` - Executing modules as scripts" msgstr ":pep:`338` - Executing modules as scripts" #: ../Doc/whatsnew/2.5.rst:360 msgid "PEP written and implemented by Nick Coghlan." msgstr "" #: ../Doc/whatsnew/2.5.rst:368 msgid "PEP 341: Unified try/except/finally" msgstr "" #: ../Doc/whatsnew/2.5.rst:370 msgid "" "Until Python 2.5, the :keyword:`try` statement came in two flavours. You " "could use a :keyword:`finally` block to ensure that code is always executed, " "or one or more :keyword:`except` blocks to catch specific exceptions. You " "couldn't combine both :keyword:`except` blocks and a :keyword:`finally` " "block, because generating the right bytecode for the combined version was " "complicated and it wasn't clear what the semantics of the combined statement " "should be." msgstr "" #: ../Doc/whatsnew/2.5.rst:377 msgid "" "Guido van Rossum spent some time working with Java, which does support the " "equivalent of combining :keyword:`except` blocks and a :keyword:`finally` " "block, and this clarified what the statement should mean. In Python 2.5, " "you can now write::" msgstr "" #: ../Doc/whatsnew/2.5.rst:393 msgid "" "The code in *block-1* is executed. If the code raises an exception, the " "various :keyword:`except` blocks are tested: if the exception is of class :" "class:`Exception1`, *handler-1* is executed; otherwise if it's of class :" "class:`Exception2`, *handler-2* is executed, and so forth. If no exception " "is raised, the *else-block* is executed." msgstr "" #: ../Doc/whatsnew/2.5.rst:399 msgid "" "No matter what happened previously, the *final-block* is executed once the " "code block is complete and any raised exceptions handled. Even if there's an " "error in an exception handler or the *else-block* and a new exception is " "raised, the code in the *final-block* is still run." msgstr "" #: ../Doc/whatsnew/2.5.rst:407 msgid ":pep:`341` - Unifying try-except and try-finally" msgstr "" #: ../Doc/whatsnew/2.5.rst:408 msgid "PEP written by Georg Brandl; implementation by Thomas Lee." msgstr "" #: ../Doc/whatsnew/2.5.rst:416 msgid "PEP 342: New Generator Features" msgstr "" #: ../Doc/whatsnew/2.5.rst:418 msgid "" "Python 2.5 adds a simple way to pass values *into* a generator. As " "introduced in Python 2.3, generators only produce output; once a generator's " "code was invoked to create an iterator, there was no way to pass any new " "information into the function when its execution is resumed. Sometimes the " "ability to pass in some information would be useful. Hackish solutions to " "this include making the generator's code look at a global variable and then " "changing the global variable's value, or passing in some mutable object that " "callers then modify." msgstr "" #: ../Doc/whatsnew/2.5.rst:426 msgid "To refresh your memory of basic generators, here's a simple example::" msgstr "" #: ../Doc/whatsnew/2.5.rst:434 msgid "" "When you call ``counter(10)``, the result is an iterator that returns the " "values from 0 up to 9. On encountering the :keyword:`yield` statement, the " "iterator returns the provided value and suspends the function's execution, " "preserving the local variables. Execution resumes on the following call to " "the iterator's :meth:`next` method, picking up after the :keyword:`yield` " "statement." msgstr "" #: ../Doc/whatsnew/2.5.rst:440 msgid "" "In Python 2.3, :keyword:`yield` was a statement; it didn't return any " "value. In 2.5, :keyword:`yield` is now an expression, returning a value " "that can be assigned to a variable or otherwise operated on::" msgstr "" #: ../Doc/whatsnew/2.5.rst:446 msgid "" "I recommend that you always put parentheses around a :keyword:`yield` " "expression when you're doing something with the returned value, as in the " "above example. The parentheses aren't always necessary, but it's easier to " "always add them instead of having to remember when they're needed." msgstr "" #: ../Doc/whatsnew/2.5.rst:451 msgid "" "(:pep:`342` explains the exact rules, which are that a :keyword:`yield`\\ -" "expression must always be parenthesized except when it occurs at the top-" "level expression on the right-hand side of an assignment. This means you " "can write ``val = yield i`` but have to use parentheses when there's an " "operation, as in ``val = (yield i) + 12``.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:457 msgid "" "Values are sent into a generator by calling its ``send(value)`` method. The " "generator's code is then resumed and the :keyword:`yield` expression returns " "the specified *value*. If the regular :meth:`next` method is called, the :" "keyword:`yield` returns :const:`None`." msgstr "" #: ../Doc/whatsnew/2.5.rst:462 msgid "" "Here's the previous example, modified to allow changing the value of the " "internal counter. ::" msgstr "" #: ../Doc/whatsnew/2.5.rst:475 msgid "And here's an example of changing the counter::" msgstr "" #: ../Doc/whatsnew/2.5.rst:492 msgid "" ":keyword:`yield` will usually return :const:`None`, so you should always " "check for this case. Don't just use its value in expressions unless you're " "sure that the :meth:`send` method will be the only method used to resume " "your generator function." msgstr "" #: ../Doc/whatsnew/2.5.rst:497 msgid "" "In addition to :meth:`send`, there are two other new methods on generators:" msgstr "" #: ../Doc/whatsnew/2.5.rst:499 msgid "" "``throw(type, value=None, traceback=None)`` is used to raise an exception " "inside the generator; the exception is raised by the :keyword:`yield` " "expression where the generator's execution is paused." msgstr "" #: ../Doc/whatsnew/2.5.rst:503 msgid "" ":meth:`close` raises a new :exc:`GeneratorExit` exception inside the " "generator to terminate the iteration. On receiving this exception, the " "generator's code must either raise :exc:`GeneratorExit` or :exc:" "`StopIteration`. Catching the :exc:`GeneratorExit` exception and returning " "a value is illegal and will trigger a :exc:`RuntimeError`; if the function " "raises some other exception, that exception is propagated to the caller. :" "meth:`close` will also be called by Python's garbage collector when the " "generator is garbage-collected." msgstr "" #: ../Doc/whatsnew/2.5.rst:511 msgid "" "If you need to run cleanup code when a :exc:`GeneratorExit` occurs, I " "suggest using a ``try: ... finally:`` suite instead of catching :exc:" "`GeneratorExit`." msgstr "" #: ../Doc/whatsnew/2.5.rst:514 msgid "" "The cumulative effect of these changes is to turn generators from one-way " "producers of information into both producers and consumers." msgstr "" #: ../Doc/whatsnew/2.5.rst:517 msgid "" "Generators also become *coroutines*, a more generalized form of subroutines. " "Subroutines are entered at one point and exited at another point (the top of " "the function, and a :keyword:`return` statement), but coroutines can be " "entered, exited, and resumed at many different points (the :keyword:`yield` " "statements). We'll have to figure out patterns for using coroutines " "effectively in Python." msgstr "" #: ../Doc/whatsnew/2.5.rst:523 msgid "" "The addition of the :meth:`close` method has one side effect that isn't " "obvious. :meth:`close` is called when a generator is garbage-collected, so " "this means the generator's code gets one last chance to run before the " "generator is destroyed. This last chance means that ``try...finally`` " "statements in generators can now be guaranteed to work; the :keyword:" "`finally` clause will now always get a chance to run. The syntactic " "restriction that you couldn't mix :keyword:`yield` statements with a ``try..." "finally`` suite has therefore been removed. This seems like a minor bit of " "language trivia, but using generators and ``try...finally`` is actually " "necessary in order to implement the :keyword:`with` statement described by " "PEP 343. I'll look at this new statement in the following section." msgstr "" #: ../Doc/whatsnew/2.5.rst:535 msgid "" "Another even more esoteric effect of this change: previously, the :attr:" "`gi_frame` attribute of a generator was always a frame object. It's now " "possible for :attr:`gi_frame` to be ``None`` once the generator has been " "exhausted." msgstr "" #: ../Doc/whatsnew/2.5.rst:548 msgid ":pep:`342` - Coroutines via Enhanced Generators" msgstr "" #: ../Doc/whatsnew/2.5.rst:544 msgid "" "PEP written by Guido van Rossum and Phillip J. Eby; implemented by Phillip " "J. Eby. Includes examples of some fancier uses of generators as coroutines." msgstr "" #: ../Doc/whatsnew/2.5.rst:547 msgid "" "Earlier versions of these features were proposed in :pep:`288` by Raymond " "Hettinger and :pep:`325` by Samuele Pedroni." msgstr "" #: ../Doc/whatsnew/2.5.rst:551 msgid "https://en.wikipedia.org/wiki/Coroutine" msgstr "https://en.wikipedia.org/wiki/Coroutine" #: ../Doc/whatsnew/2.5.rst:551 msgid "The Wikipedia entry for coroutines." msgstr "L’article de Wikipédia sur les coroutines." #: ../Doc/whatsnew/2.5.rst:553 msgid "http://www.sidhe.org/~dan/blog/archives/000178.html" msgstr "http://www.sidhe.org/~dan/blog/archives/000178.html" #: ../Doc/whatsnew/2.5.rst:554 msgid "" "An explanation of coroutines from a Perl point of view, written by Dan " "Sugalski." msgstr "" #: ../Doc/whatsnew/2.5.rst:562 ../Doc/whatsnew/2.6.rst:248 msgid "PEP 343: The 'with' statement" msgstr "" #: ../Doc/whatsnew/2.5.rst:564 ../Doc/whatsnew/2.6.rst:259 msgid "" "The ':keyword:`with`' statement clarifies code that previously would use " "``try...finally`` blocks to ensure that clean-up code is executed. In this " "section, I'll discuss the statement as it will commonly be used. In the " "next section, I'll examine the implementation details and show how to write " "objects for use with this statement." msgstr "" #: ../Doc/whatsnew/2.5.rst:570 msgid "" "The ':keyword:`with`' statement is a new control-flow structure whose basic " "structure is::" msgstr "" #: ../Doc/whatsnew/2.5.rst:576 msgid "" "The expression is evaluated, and it should result in an object that supports " "the context management protocol (that is, has :meth:`__enter__` and :meth:" "`__exit__` methods." msgstr "" #: ../Doc/whatsnew/2.5.rst:580 ../Doc/whatsnew/2.6.rst:275 msgid "" "The object's :meth:`__enter__` is called before *with-block* is executed and " "therefore can run set-up code. It also may return a value that is bound to " "the name *variable*, if given. (Note carefully that *variable* is *not* " "assigned the result of *expression*.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:585 ../Doc/whatsnew/2.6.rst:280 msgid "" "After execution of the *with-block* is finished, the object's :meth:" "`__exit__` method is called, even if the block raised an exception, and can " "therefore run clean-up code." msgstr "" #: ../Doc/whatsnew/2.5.rst:589 msgid "" "To enable the statement in Python 2.5, you need to add the following " "directive to your module::" msgstr "" #: ../Doc/whatsnew/2.5.rst:594 msgid "The statement will always be enabled in Python 2.6." msgstr "" #: ../Doc/whatsnew/2.5.rst:596 ../Doc/whatsnew/2.6.rst:284 msgid "" "Some standard Python objects now support the context management protocol and " "can be used with the ':keyword:`with`' statement. File objects are one " "example::" msgstr "" #: ../Doc/whatsnew/2.5.rst:604 ../Doc/whatsnew/2.6.rst:292 msgid "" "After this statement has executed, the file object in *f* will have been " "automatically closed, even if the :keyword:`for` loop raised an exception " "part- way through the block." msgstr "" #: ../Doc/whatsnew/2.5.rst:610 ../Doc/whatsnew/2.6.rst:298 msgid "" "In this case, *f* is the same object created by :func:`open`, because :meth:" "`file.__enter__` returns *self*." msgstr "" #: ../Doc/whatsnew/2.5.rst:613 ../Doc/whatsnew/2.6.rst:301 msgid "" "The :mod:`threading` module's locks and condition variables also support " "the ':keyword:`with`' statement::" msgstr "" #: ../Doc/whatsnew/2.5.rst:621 ../Doc/whatsnew/2.6.rst:309 msgid "" "The lock is acquired before the block is executed and always released once " "the block is complete." msgstr "" #: ../Doc/whatsnew/2.5.rst:624 msgid "" "The new :func:`localcontext` function in the :mod:`decimal` module makes it " "easy to save and restore the current decimal context, which encapsulates the " "desired precision and rounding characteristics for computations::" msgstr "" #: ../Doc/whatsnew/2.5.rst:643 ../Doc/whatsnew/2.6.rst:331 msgid "Writing Context Managers" msgstr "Écrire des gestionnaires de contexte" #: ../Doc/whatsnew/2.5.rst:645 ../Doc/whatsnew/2.6.rst:333 msgid "" "Under the hood, the ':keyword:`with`' statement is fairly complicated. Most " "people will only use ':keyword:`with`' in company with existing objects and " "don't need to know these details, so you can skip the rest of this section " "if you like. Authors of new objects will need to understand the details of " "the underlying implementation and should keep reading." msgstr "" #: ../Doc/whatsnew/2.5.rst:651 ../Doc/whatsnew/2.6.rst:339 msgid "A high-level explanation of the context management protocol is:" msgstr "" #: ../Doc/whatsnew/2.5.rst:653 ../Doc/whatsnew/2.6.rst:341 msgid "" "The expression is evaluated and should result in an object called a " "\"context manager\". The context manager must have :meth:`__enter__` and :" "meth:`__exit__` methods." msgstr "" #: ../Doc/whatsnew/2.5.rst:657 msgid "" "The context manager's :meth:`__enter__` method is called. The value " "returned is assigned to *VAR*. If no ``'as VAR'`` clause is present, the " "value is simply discarded." msgstr "" #: ../Doc/whatsnew/2.5.rst:661 ../Doc/whatsnew/2.6.rst:349 msgid "The code in *BLOCK* is executed." msgstr "Le code dans *BLOCK* est exécuté." #: ../Doc/whatsnew/2.5.rst:663 msgid "" "If *BLOCK* raises an exception, the ``__exit__(type, value, traceback)`` is " "called with the exception details, the same values returned by :func:`sys." "exc_info`. The method's return value controls whether the exception is re-" "raised: any false value re-raises the exception, and ``True`` will result in " "suppressing it. You'll only rarely want to suppress the exception, because " "if you do the author of the code containing the ':keyword:`with`' statement " "will never realize anything went wrong." msgstr "" #: ../Doc/whatsnew/2.5.rst:671 ../Doc/whatsnew/2.6.rst:360 msgid "" "If *BLOCK* didn't raise an exception, the :meth:`__exit__` method is still " "called, but *type*, *value*, and *traceback* are all ``None``." msgstr "" #: ../Doc/whatsnew/2.5.rst:674 ../Doc/whatsnew/2.6.rst:363 msgid "" "Let's think through an example. I won't present detailed code but will only " "sketch the methods necessary for a database that supports transactions." msgstr "" #: ../Doc/whatsnew/2.5.rst:677 ../Doc/whatsnew/2.6.rst:366 msgid "" "(For people unfamiliar with database terminology: a set of changes to the " "database are grouped into a transaction. Transactions can be either " "committed, meaning that all the changes are written into the database, or " "rolled back, meaning that the changes are all discarded and the database is " "unchanged. See any database textbook for more information.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:683 ../Doc/whatsnew/2.6.rst:372 msgid "" "Let's assume there's an object representing a database connection. Our goal " "will be to let the user write code like this::" msgstr "" #: ../Doc/whatsnew/2.5.rst:692 ../Doc/whatsnew/2.6.rst:381 msgid "" "The transaction should be committed if the code in the block runs flawlessly " "or rolled back if there's an exception. Here's the basic interface for :" "class:`DatabaseConnection` that I'll assume::" msgstr "" #: ../Doc/whatsnew/2.5.rst:705 ../Doc/whatsnew/2.6.rst:394 msgid "" "The :meth:`__enter__` method is pretty easy, having only to start a new " "transaction. For this application the resulting cursor object would be a " "useful result, so the method will return it. The user can then add ``as " "cursor`` to their ':keyword:`with`' statement to bind the cursor to a " "variable name. ::" msgstr "" #: ../Doc/whatsnew/2.5.rst:717 ../Doc/whatsnew/2.6.rst:406 msgid "" "The :meth:`__exit__` method is the most complicated because it's where most " "of the work has to be done. The method has to check if an exception " "occurred. If there was no exception, the transaction is committed. The " "transaction is rolled back if there was an exception." msgstr "" #: ../Doc/whatsnew/2.5.rst:722 ../Doc/whatsnew/2.6.rst:411 msgid "" "In the code below, execution will just fall off the end of the function, " "returning the default value of ``None``. ``None`` is false, so the " "exception will be re-raised automatically. If you wished, you could be more " "explicit and add a :keyword:`return` statement at the marked location. ::" msgstr "" #: ../Doc/whatsnew/2.5.rst:742 ../Doc/whatsnew/2.6.rst:431 msgid "The contextlib module" msgstr "Le module contextlib" #: ../Doc/whatsnew/2.5.rst:744 msgid "" "The new :mod:`contextlib` module provides some functions and a decorator " "that are useful for writing objects for use with the ':keyword:`with`' " "statement." msgstr "" #: ../Doc/whatsnew/2.5.rst:747 ../Doc/whatsnew/2.6.rst:436 msgid "" "The decorator is called :func:`contextmanager`, and lets you write a single " "generator function instead of defining a new class. The generator should " "yield exactly one value. The code up to the :keyword:`yield` will be " "executed as the :meth:`__enter__` method, and the value yielded will be the " "method's return value that will get bound to the variable in the ':keyword:" "`with`' statement's :keyword:`as` clause, if any. The code after the :" "keyword:`yield` will be executed in the :meth:`__exit__` method. Any " "exception raised in the block will be raised by the :keyword:`yield` " "statement." msgstr "" #: ../Doc/whatsnew/2.5.rst:756 msgid "" "Our database example from the previous section could be written using this " "decorator as::" msgstr "" #: ../Doc/whatsnew/2.5.rst:776 ../Doc/whatsnew/2.6.rst:465 msgid "" "The :mod:`contextlib` module also has a ``nested(mgr1, mgr2, ...)`` function " "that combines a number of context managers so you don't need to write nested " "':keyword:`with`' statements. In this example, the single ':keyword:`with`' " "statement both starts a database transaction and acquires a thread lock::" msgstr "" #: ../Doc/whatsnew/2.5.rst:785 msgid "" "Finally, the ``closing(object)`` function returns *object* so that it can be " "bound to a variable, and calls ``object.close`` at the end of the block. ::" msgstr "" #: ../Doc/whatsnew/2.5.rst:802 ../Doc/whatsnew/2.6.rst:492 msgid ":pep:`343` - The \"with\" statement" msgstr "" #: ../Doc/whatsnew/2.5.rst:799 ../Doc/whatsnew/2.6.rst:489 msgid "" "PEP written by Guido van Rossum and Nick Coghlan; implemented by Mike Bland, " "Guido van Rossum, and Neal Norwitz. The PEP shows the code generated for a " "':keyword:`with`' statement, which can be helpful in learning how the " "statement works." msgstr "" #: ../Doc/whatsnew/2.5.rst:804 ../Doc/whatsnew/2.6.rst:494 msgid "The documentation for the :mod:`contextlib` module." msgstr "" #: ../Doc/whatsnew/2.5.rst:812 msgid "PEP 352: Exceptions as New-Style Classes" msgstr "" #: ../Doc/whatsnew/2.5.rst:814 msgid "" "Exception classes can now be new-style classes, not just classic classes, " "and the built-in :exc:`Exception` class and all the standard built-in " "exceptions (:exc:`NameError`, :exc:`ValueError`, etc.) are now new-style " "classes." msgstr "" #: ../Doc/whatsnew/2.5.rst:818 msgid "" "The inheritance hierarchy for exceptions has been rearranged a bit. In 2.5, " "the inheritance relationships are::" msgstr "" #: ../Doc/whatsnew/2.5.rst:827 msgid "" "This rearrangement was done because people often want to catch all " "exceptions that indicate program errors. :exc:`KeyboardInterrupt` and :exc:" "`SystemExit` aren't errors, though, and usually represent an explicit action " "such as the user hitting :kbd:`Control-C` or code calling :func:`sys.exit`. " "A bare ``except:`` will catch all exceptions, so you commonly need to list :" "exc:`KeyboardInterrupt` and :exc:`SystemExit` in order to re-raise them. " "The usual pattern is::" msgstr "" #: ../Doc/whatsnew/2.5.rst:842 msgid "" "In Python 2.5, you can now write ``except Exception`` to achieve the same " "result, catching all the exceptions that usually indicate errors but " "leaving :exc:`KeyboardInterrupt` and :exc:`SystemExit` alone. As in " "previous versions, a bare ``except:`` still catches all exceptions." msgstr "" #: ../Doc/whatsnew/2.5.rst:847 msgid "" "The goal for Python 3.0 is to require any class raised as an exception to " "derive from :exc:`BaseException` or some descendant of :exc:`BaseException`, " "and future releases in the Python 2.x series may begin to enforce this " "constraint. Therefore, I suggest you begin making all your exception classes " "derive from :exc:`Exception` now. It's been suggested that the bare " "``except:`` form should be removed in Python 3.0, but Guido van Rossum " "hasn't decided whether to do this or not." msgstr "" #: ../Doc/whatsnew/2.5.rst:855 msgid "" "Raising of strings as exceptions, as in the statement ``raise \"Error " "occurred\"``, is deprecated in Python 2.5 and will trigger a warning. The " "aim is to be able to remove the string-exception feature in a few releases." msgstr "" #: ../Doc/whatsnew/2.5.rst:862 msgid ":pep:`352` - Required Superclass for Exceptions" msgstr "" #: ../Doc/whatsnew/2.5.rst:863 msgid "" "PEP written by Brett Cannon and Guido van Rossum; implemented by Brett " "Cannon." msgstr "" #: ../Doc/whatsnew/2.5.rst:871 msgid "PEP 353: Using ssize_t as the index type" msgstr "" #: ../Doc/whatsnew/2.5.rst:873 msgid "" "A wide-ranging change to Python's C API, using a new :c:type:`Py_ssize_t` " "type definition instead of :c:type:`int`, will permit the interpreter to " "handle more data on 64-bit platforms. This change doesn't affect Python's " "capacity on 32-bit platforms." msgstr "" #: ../Doc/whatsnew/2.5.rst:878 msgid "" "Various pieces of the Python interpreter used C's :c:type:`int` type to " "store sizes or counts; for example, the number of items in a list or tuple " "were stored in an :c:type:`int`. The C compilers for most 64-bit platforms " "still define :c:type:`int` as a 32-bit type, so that meant that lists could " "only hold up to ``2**31 - 1`` = 2147483647 items. (There are actually a few " "different programming models that 64-bit C compilers can use -- see http://" "www.unix.org/version2/whatsnew/lp64_wp.html for a discussion -- but the most " "commonly available model leaves :c:type:`int` as 32 bits.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:887 msgid "" "A limit of 2147483647 items doesn't really matter on a 32-bit platform " "because you'll run out of memory before hitting the length limit. Each list " "item requires space for a pointer, which is 4 bytes, plus space for a :c:" "type:`PyObject` representing the item. 2147483647\\*4 is already more bytes " "than a 32-bit address space can contain." msgstr "" #: ../Doc/whatsnew/2.5.rst:893 msgid "" "It's possible to address that much memory on a 64-bit platform, however. " "The pointers for a list that size would only require 16 GiB of space, so " "it's not unreasonable that Python programmers might construct lists that " "large. Therefore, the Python interpreter had to be changed to use some type " "other than :c:type:`int`, and this will be a 64-bit type on 64-bit " "platforms. The change will cause incompatibilities on 64-bit machines, so " "it was deemed worth making the transition now, while the number of 64-bit " "users is still relatively small. (In 5 or 10 years, we may *all* be on 64-" "bit machines, and the transition would be more painful then.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:903 msgid "" "This change most strongly affects authors of C extension modules. Python " "strings and container types such as lists and tuples now use :c:type:" "`Py_ssize_t` to store their size. Functions such as :c:func:`PyList_Size` " "now return :c:type:`Py_ssize_t`. Code in extension modules may therefore " "need to have some variables changed to :c:type:`Py_ssize_t`." msgstr "" #: ../Doc/whatsnew/2.5.rst:909 msgid "" "The :c:func:`PyArg_ParseTuple` and :c:func:`Py_BuildValue` functions have a " "new conversion code, ``n``, for :c:type:`Py_ssize_t`. :c:func:" "`PyArg_ParseTuple`'s ``s#`` and ``t#`` still output :c:type:`int` by " "default, but you can define the macro :c:macro:`PY_SSIZE_T_CLEAN` before " "including :file:`Python.h` to make them return :c:type:`Py_ssize_t`." msgstr "" #: ../Doc/whatsnew/2.5.rst:915 msgid "" ":pep:`353` has a section on conversion guidelines that extension authors " "should read to learn about supporting 64-bit platforms." msgstr "" #: ../Doc/whatsnew/2.5.rst:921 msgid ":pep:`353` - Using ssize_t as the index type" msgstr "" #: ../Doc/whatsnew/2.5.rst:922 msgid "PEP written and implemented by Martin von Löwis." msgstr "" #: ../Doc/whatsnew/2.5.rst:930 msgid "PEP 357: The '__index__' method" msgstr "" #: ../Doc/whatsnew/2.5.rst:932 msgid "" "The NumPy developers had a problem that could only be solved by adding a new " "special method, :meth:`__index__`. When using slice notation, as in " "``[start:stop:step]``, the values of the *start*, *stop*, and *step* indexes " "must all be either integers or long integers. NumPy defines a variety of " "specialized integer types corresponding to unsigned and signed integers of " "8, 16, 32, and 64 bits, but there was no way to signal that these types " "could be used as slice indexes." msgstr "" #: ../Doc/whatsnew/2.5.rst:940 msgid "" "Slicing can't just use the existing :meth:`__int__` method because that " "method is also used to implement coercion to integers. If slicing used :" "meth:`__int__`, floating-point numbers would also become legal slice indexes " "and that's clearly an undesirable behaviour." msgstr "" #: ../Doc/whatsnew/2.5.rst:945 msgid "" "Instead, a new special method called :meth:`__index__` was added. It takes " "no arguments and returns an integer giving the slice index to use. For " "example::" msgstr "" #: ../Doc/whatsnew/2.5.rst:952 msgid "" "The return value must be either a Python integer or long integer. The " "interpreter will check that the type returned is correct, and raises a :exc:" "`TypeError` if this requirement isn't met." msgstr "" #: ../Doc/whatsnew/2.5.rst:956 msgid "" "A corresponding :attr:`nb_index` slot was added to the C-level :c:type:" "`PyNumberMethods` structure to let C extensions implement this protocol. " "``PyNumber_Index(obj)`` can be used in extension code to call the :meth:" "`__index__` function and retrieve its result." msgstr "" #: ../Doc/whatsnew/2.5.rst:964 msgid ":pep:`357` - Allowing Any Object to be Used for Slicing" msgstr "" #: ../Doc/whatsnew/2.5.rst:965 msgid "PEP written and implemented by Travis Oliphant." msgstr "" #: ../Doc/whatsnew/2.5.rst:975 msgid "" "Here are all of the changes that Python 2.5 makes to the core Python " "language." msgstr "" #: ../Doc/whatsnew/2.5.rst:977 msgid "" "The :class:`dict` type has a new hook for letting subclasses provide a " "default value when a key isn't contained in the dictionary. When a key isn't " "found, the dictionary's ``__missing__(key)`` method will be called. This " "hook is used to implement the new :class:`defaultdict` class in the :mod:" "`collections` module. The following example defines a dictionary that " "returns zero for any missing key::" msgstr "" #: ../Doc/whatsnew/2.5.rst:992 msgid "" "Both 8-bit and Unicode strings have new ``partition(sep)`` and " "``rpartition(sep)`` methods that simplify a common use case." msgstr "" #: ../Doc/whatsnew/2.5.rst:995 msgid "" "The ``find(S)`` method is often used to get an index which is then used to " "slice the string and obtain the pieces that are before and after the " "separator. ``partition(sep)`` condenses this pattern into a single method " "call that returns a 3-tuple containing the substring before the separator, " "the separator itself, and the substring after the separator. If the " "separator isn't found, the first element of the tuple is the entire string " "and the other two elements are empty. ``rpartition(sep)`` also returns a 3-" "tuple but starts searching from the end of the string; the ``r`` stands for " "'reverse'." msgstr "" #: ../Doc/whatsnew/2.5.rst:1004 msgid "Some examples::" msgstr "Quelques exemples : ::" #: ../Doc/whatsnew/2.5.rst:1017 msgid "" "(Implemented by Fredrik Lundh following a suggestion by Raymond Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1019 msgid "" "The :meth:`startswith` and :meth:`endswith` methods of string types now " "accept tuples of strings to check for. ::" msgstr "" #: ../Doc/whatsnew/2.5.rst:1025 msgid "(Implemented by Georg Brandl following a suggestion by Tom Lynn.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1029 msgid "" "The :func:`min` and :func:`max` built-in functions gained a ``key`` keyword " "parameter analogous to the ``key`` argument for :meth:`sort`. This " "parameter supplies a function that takes a single argument and is called for " "every value in the list; :func:`min`/:func:`max` will return the element " "with the smallest/largest return value from this function. For example, to " "find the longest string in a list, you can do::" msgstr "" #: ../Doc/whatsnew/2.5.rst:1042 msgid "(Contributed by Steven Bethard and Raymond Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1044 msgid "" "Two new built-in functions, :func:`any` and :func:`all`, evaluate whether an " "iterator contains any true or false values. :func:`any` returns :const:" "`True` if any value returned by the iterator is true; otherwise it will " "return :const:`False`. :func:`all` returns :const:`True` only if all of the " "values returned by the iterator evaluate as true. (Suggested by Guido van " "Rossum, and implemented by Raymond Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1051 msgid "" "The result of a class's :meth:`__hash__` method can now be either a long " "integer or a regular integer. If a long integer is returned, the hash of " "that value is taken. In earlier versions the hash value was required to be " "a regular integer, but in 2.5 the :func:`id` built-in was changed to always " "return non-negative numbers, and users often seem to use ``id(self)`` in :" "meth:`__hash__` methods (though this is discouraged)." msgstr "" #: ../Doc/whatsnew/2.5.rst:1060 msgid "" "ASCII is now the default encoding for modules. It's now a syntax error if " "a module contains string literals with 8-bit characters but doesn't have an " "encoding declaration. In Python 2.4 this triggered a warning, not a syntax " "error. See :pep:`263` for how to declare a module's encoding; for example, " "you might add a line like this near the top of the source file::" msgstr "" #: ../Doc/whatsnew/2.5.rst:1068 msgid "" "A new warning, :class:`UnicodeWarning`, is triggered when you attempt to " "compare a Unicode string and an 8-bit string that can't be converted to " "Unicode using the default ASCII encoding. The result of the comparison is " "false::" msgstr "" #: ../Doc/whatsnew/2.5.rst:1080 msgid "" "Previously this would raise a :class:`UnicodeDecodeError` exception, but in " "2.5 this could result in puzzling problems when accessing a dictionary. If " "you looked up ``unichr(128)`` and ``chr(128)`` was being used as a key, " "you'd get a :class:`UnicodeDecodeError` exception. Other changes in 2.5 " "resulted in this exception being raised instead of suppressed by the code " "in :file:`dictobject.c` that implements dictionaries." msgstr "" #: ../Doc/whatsnew/2.5.rst:1087 msgid "" "Raising an exception for such a comparison is strictly correct, but the " "change might have broken code, so instead :class:`UnicodeWarning` was " "introduced." msgstr "" #: ../Doc/whatsnew/2.5.rst:1090 msgid "(Implemented by Marc-André Lemburg.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1092 msgid "" "One error that Python programmers sometimes make is forgetting to include " "an :file:`__init__.py` module in a package directory. Debugging this mistake " "can be confusing, and usually requires running Python with the :option:`-v` " "switch to log all the paths searched. In Python 2.5, a new :exc:" "`ImportWarning` warning is triggered when an import would have picked up a " "directory as a package but no :file:`__init__.py` was found. This warning " "is silently ignored by default; provide the :option:`-Wd <-W>` option when " "running the Python executable to display the warning message. (Implemented " "by Thomas Wouters.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1101 msgid "" "The list of base classes in a class definition can now be empty. As an " "example, this is now legal::" msgstr "" #: ../Doc/whatsnew/2.5.rst:1107 msgid "(Implemented by Brett Cannon.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1115 msgid "Interactive Interpreter Changes" msgstr "Changements de l’interpréteur interactif" #: ../Doc/whatsnew/2.5.rst:1117 msgid "" "In the interactive interpreter, ``quit`` and ``exit`` have long been " "strings so that new users get a somewhat helpful message when they try to " "quit::" msgstr "" #: ../Doc/whatsnew/2.5.rst:1123 msgid "" "In Python 2.5, ``quit`` and ``exit`` are now objects that still produce " "string representations of themselves, but are also callable. Newbies who try " "``quit()`` or ``exit()`` will now exit the interpreter as they expect. " "(Implemented by Georg Brandl.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1128 msgid "" "The Python executable now accepts the standard long options :option:`--" "help` and :option:`--version`; on Windows, it also accepts the :option:`/? " "<-?>` option for displaying a help message. (Implemented by Georg Brandl.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1140 msgid "" "Several of the optimizations were developed at the NeedForSpeed sprint, an " "event held in Reykjavik, Iceland, from May 21--28 2006. The sprint focused " "on speed enhancements to the CPython implementation and was funded by EWT " "LLC with local support from CCP Games. Those optimizations added at this " "sprint are specially marked in the following list." msgstr "" #: ../Doc/whatsnew/2.5.rst:1146 msgid "" "When they were introduced in Python 2.4, the built-in :class:`set` and :" "class:`frozenset` types were built on top of Python's dictionary type. In " "2.5 the internal data structure has been customized for implementing sets, " "and as a result sets will use a third less memory and are somewhat faster. " "(Implemented by Raymond Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1152 msgid "" "The speed of some Unicode operations, such as finding substrings, string " "splitting, and character map encoding and decoding, has been improved. " "(Substring search and splitting improvements were added by Fredrik Lundh and " "Andrew Dalke at the NeedForSpeed sprint. Character maps were improved by " "Walter Dörwald and Martin von Löwis.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1160 msgid "" "The ``long(str, base)`` function is now faster on long digit strings because " "fewer intermediate results are calculated. The peak is for strings of " "around 800--1000 digits where the function is 6 times faster. (Contributed " "by Alan McIntyre and committed at the NeedForSpeed sprint.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1167 msgid "" "It's now illegal to mix iterating over a file with ``for line in file`` and " "calling the file object's :meth:`read`/:meth:`readline`/:meth:`readlines` " "methods. Iteration uses an internal buffer and the :meth:`read\\*` methods " "don't use that buffer. Instead they would return the data following the " "buffer, causing the data to appear out of order. Mixing iteration and these " "methods will now trigger a :exc:`ValueError` from the :meth:`read\\*` " "method. (Implemented by Thomas Wouters.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1177 msgid "" "The :mod:`struct` module now compiles structure format strings into an " "internal representation and caches this representation, yielding a 20% " "speedup. (Contributed by Bob Ippolito at the NeedForSpeed sprint.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1181 msgid "" "The :mod:`re` module got a 1 or 2% speedup by switching to Python's " "allocator functions instead of the system's :c:func:`malloc` and :c:func:" "`free`. (Contributed by Jack Diederich at the NeedForSpeed sprint.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1185 msgid "" "The code generator's peephole optimizer now performs simple constant folding " "in expressions. If you write something like ``a = 2+3``, the code generator " "will do the arithmetic and produce code corresponding to ``a = 5``. " "(Proposed and implemented by Raymond Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1190 msgid "" "Function calls are now faster because code objects now keep the most " "recently finished frame (a \"zombie frame\") in an internal field of the " "code object, reusing it the next time the code object is invoked. (Original " "patch by Michael Hudson, modified by Armin Rigo and Richard Jones; committed " "at the NeedForSpeed sprint.) Frame objects are also slightly smaller, which " "may improve cache locality and reduce memory usage a bit. (Contributed by " "Neal Norwitz.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1200 msgid "" "Python's built-in exceptions are now new-style classes, a change that speeds " "up instantiation considerably. Exception handling in Python 2.5 is " "therefore about 30% faster than in 2.4. (Contributed by Richard Jones, Georg " "Brandl and Sean Reifschneider at the NeedForSpeed sprint.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1205 msgid "" "Importing now caches the paths tried, recording whether they exist or not " "so that the interpreter makes fewer :c:func:`open` and :c:func:`stat` calls " "on startup. (Contributed by Martin von Löwis and Georg Brandl.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1217 msgid "New, Improved, and Removed Modules" msgstr "Modules ajoutés, modifiés, et supprimés" #: ../Doc/whatsnew/2.5.rst:1219 msgid "" "The standard library received many enhancements and bug fixes in Python 2.5. " "Here's a partial list of the most notable changes, sorted alphabetically by " "module name. Consult the :file:`Misc/NEWS` file in the source tree for a " "more complete list of changes, or look through the SVN logs for all the " "details." msgstr "" #: ../Doc/whatsnew/2.5.rst:1224 msgid "" "The :mod:`audioop` module now supports the a-LAW encoding, and the code for " "u-LAW encoding has been improved. (Contributed by Lars Immisch.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1227 msgid "" "The :mod:`codecs` module gained support for incremental codecs. The :func:" "`codec.lookup` function now returns a :class:`CodecInfo` instance instead of " "a tuple. :class:`CodecInfo` instances behave like a 4-tuple to preserve " "backward compatibility but also have the attributes :attr:`encode`, :attr:" "`decode`, :attr:`incrementalencoder`, :attr:`incrementaldecoder`, :attr:" "`streamwriter`, and :attr:`streamreader`. Incremental codecs can receive " "input and produce output in multiple chunks; the output is the same as if " "the entire input was fed to the non-incremental codec. See the :mod:`codecs` " "module documentation for details. (Designed and implemented by Walter " "Dörwald.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1239 msgid "" "The :mod:`collections` module gained a new type, :class:`defaultdict`, that " "subclasses the standard :class:`dict` type. The new type mostly behaves " "like a dictionary but constructs a default value when a key isn't present, " "automatically adding it to the dictionary for the requested key value." msgstr "" #: ../Doc/whatsnew/2.5.rst:1244 msgid "" "The first argument to :class:`defaultdict`'s constructor is a factory " "function that gets called whenever a key is requested but not found. This " "factory function receives no arguments, so you can use built-in type " "constructors such as :func:`list` or :func:`int`. For example, you can " "make an index of words based on their initial letter like this::" msgstr "" #: ../Doc/whatsnew/2.5.rst:1260 msgid "Printing ``index`` results in the following output::" msgstr "" #: ../Doc/whatsnew/2.5.rst:1268 msgid "(Contributed by Guido van Rossum.)" msgstr "(Contribution par Guido van Rossum.)" #: ../Doc/whatsnew/2.5.rst:1270 msgid "" "The :class:`deque` double-ended queue type supplied by the :mod:" "`collections` module now has a ``remove(value)`` method that removes the " "first occurrence of *value* in the queue, raising :exc:`ValueError` if the " "value isn't found. (Contributed by Raymond Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1275 msgid "" "New module: The :mod:`contextlib` module contains helper functions for use " "with the new ':keyword:`with`' statement. See section :ref:`contextlibmod` " "for more about this module." msgstr "" #: ../Doc/whatsnew/2.5.rst:1279 msgid "" "New module: The :mod:`cProfile` module is a C implementation of the " "existing :mod:`profile` module that has much lower overhead. The module's " "interface is the same as :mod:`profile`: you run ``cProfile.run('main()')`` " "to profile a function, can save profile data to a file, etc. It's not yet " "known if the Hotshot profiler, which is also written in C but doesn't match " "the :mod:`profile` module's interface, will continue to be maintained in " "future versions of Python. (Contributed by Armin Rigo.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1287 msgid "" "Also, the :mod:`pstats` module for analyzing the data measured by the " "profiler now supports directing the output to any file object by supplying a " "*stream* argument to the :class:`Stats` constructor. (Contributed by Skip " "Montanaro.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1291 msgid "" "The :mod:`csv` module, which parses files in comma-separated value format, " "received several enhancements and a number of bugfixes. You can now set the " "maximum size in bytes of a field by calling the ``csv." "field_size_limit(new_limit)`` function; omitting the *new_limit* argument " "will return the currently-set limit. The :class:`reader` class now has a :" "attr:`line_num` attribute that counts the number of physical lines read from " "the source; records can span multiple physical lines, so :attr:`line_num` is " "not the same as the number of records read." msgstr "" #: ../Doc/whatsnew/2.5.rst:1300 msgid "" "The CSV parser is now stricter about multi-line quoted fields. Previously, " "if a line ended within a quoted field without a terminating newline " "character, a newline would be inserted into the returned field. This " "behavior caused problems when reading files that contained carriage return " "characters within fields, so the code was changed to return the field " "without inserting newlines. As a consequence, if newlines embedded within " "fields are important, the input should be split into lines in a manner that " "preserves the newline characters." msgstr "" #: ../Doc/whatsnew/2.5.rst:1308 msgid "(Contributed by Skip Montanaro and Andrew McNamara.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1310 msgid "" "The :class:`datetime` class in the :mod:`datetime` module now has a " "``strptime(string, format)`` method for parsing date strings, contributed " "by Josh Spoerri. It uses the same format characters as :func:`time.strptime` " "and :func:`time.strftime`::" msgstr "" #: ../Doc/whatsnew/2.5.rst:1320 msgid "" "The :meth:`SequenceMatcher.get_matching_blocks` method in the :mod:`difflib` " "module now guarantees to return a minimal list of blocks describing matching " "subsequences. Previously, the algorithm would occasionally break a block of " "matching elements into two list entries. (Enhancement by Tim Peters.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1325 msgid "" "The :mod:`doctest` module gained a ``SKIP`` option that keeps an example " "from being executed at all. This is intended for code snippets that are " "usage examples intended for the reader and aren't actually test cases." msgstr "" #: ../Doc/whatsnew/2.5.rst:1329 msgid "" "An *encoding* parameter was added to the :func:`testfile` function and the :" "class:`DocFileSuite` class to specify the file's encoding. This makes it " "easier to use non-ASCII characters in tests contained within a docstring. " "(Contributed by Bjorn Tillenius.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1336 msgid "" "The :mod:`email` package has been updated to version 4.0. (Contributed by " "Barry Warsaw.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1344 msgid "" "The :mod:`fileinput` module was made more flexible. Unicode filenames are " "now supported, and a *mode* parameter that defaults to ``\"r\"`` was added " "to the :func:`input` function to allow opening files in binary or :term:" "`universal newlines` mode. Another new parameter, *openhook*, lets you use " "a function other than :func:`open` to open the input files. Once you're " "iterating over the set of files, the :class:`FileInput` object's new :meth:" "`fileno` returns the file descriptor for the currently opened file. " "(Contributed by Georg Brandl.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1353 msgid "" "In the :mod:`gc` module, the new :func:`get_count` function returns a 3-" "tuple containing the current collection counts for the three GC " "generations. This is accounting information for the garbage collector; when " "these counts reach a specified threshold, a garbage collection sweep will be " "made. The existing :func:`gc.collect` function now takes an optional " "*generation* argument of 0, 1, or 2 to specify which generation to collect. " "(Contributed by Barry Warsaw.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1360 msgid "" "The :func:`nsmallest` and :func:`nlargest` functions in the :mod:`heapq` " "module now support a ``key`` keyword parameter similar to the one provided " "by the :func:`min`/:func:`max` functions and the :meth:`sort` methods. For " "example::" msgstr "" #: ../Doc/whatsnew/2.5.rst:1374 msgid "" "The :func:`itertools.islice` function now accepts ``None`` for the start and " "step arguments. This makes it more compatible with the attributes of slice " "objects, so that you can now write the following::" msgstr "" #: ../Doc/whatsnew/2.5.rst:1383 msgid "" "The :func:`format` function in the :mod:`locale` module has been modified " "and two new functions were added, :func:`format_string` and :func:`currency`." msgstr "" #: ../Doc/whatsnew/2.5.rst:1386 msgid "" "The :func:`format` function's *val* parameter could previously be a string " "as long as no more than one %char specifier appeared; now the parameter must " "be exactly one %char specifier with no surrounding text. An optional " "*monetary* parameter was also added which, if ``True``, will use the " "locale's rules for formatting currency in placing a separator between groups " "of three digits." msgstr "" #: ../Doc/whatsnew/2.5.rst:1392 msgid "" "To format strings with multiple %char specifiers, use the new :func:" "`format_string` function that works like :func:`format` but also supports " "mixing %char specifiers with arbitrary text." msgstr "" #: ../Doc/whatsnew/2.5.rst:1396 msgid "" "A new :func:`currency` function was also added that formats a number " "according to the current locale's settings." msgstr "" #: ../Doc/whatsnew/2.5.rst:1399 msgid "(Contributed by Georg Brandl.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1403 msgid "" "The :mod:`mailbox` module underwent a massive rewrite to add the capability " "to modify mailboxes in addition to reading them. A new set of classes that " "include :class:`mbox`, :class:`MH`, and :class:`Maildir` are used to read " "mailboxes, and have an ``add(message)`` method to add messages, " "``remove(key)`` to remove messages, and :meth:`lock`/:meth:`unlock` to lock/" "unlock the mailbox. The following example converts a maildir-format mailbox " "into an mbox-format one::" msgstr "" #: ../Doc/whatsnew/2.5.rst:1421 msgid "" "(Contributed by Gregory K. Johnson. Funding was provided by Google's 2005 " "Summer of Code.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1424 msgid "" "New module: the :mod:`msilib` module allows creating Microsoft Installer :" "file:`.msi` files and CAB files. Some support for reading the :file:`.msi` " "database is also included. (Contributed by Martin von Löwis.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1428 msgid "" "The :mod:`nis` module now supports accessing domains other than the system " "default domain by supplying a *domain* argument to the :func:`nis.match` " "and :func:`nis.maps` functions. (Contributed by Ben Bell.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1432 msgid "" "The :mod:`operator` module's :func:`itemgetter` and :func:`attrgetter` " "functions now support multiple fields. A call such as ``operator." "attrgetter('a', 'b')`` will return a function that retrieves the :attr:`a` " "and :attr:`b` attributes. Combining this new feature with the :meth:`sort` " "method's ``key`` parameter lets you easily sort lists using multiple " "fields. (Contributed by Raymond Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1439 msgid "" "The :mod:`optparse` module was updated to version 1.5.1 of the Optik " "library. The :class:`OptionParser` class gained an :attr:`epilog` attribute, " "a string that will be printed after the help message, and a :meth:`destroy` " "method to break reference cycles created by the object. (Contributed by Greg " "Ward.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1444 msgid "" "The :mod:`os` module underwent several changes. The :attr:" "`stat_float_times` variable now defaults to true, meaning that :func:`os." "stat` will now return time values as floats. (This doesn't necessarily mean " "that :func:`os.stat` will return times that are precise to fractions of a " "second; not all systems support such precision.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1450 msgid "" "Constants named :attr:`os.SEEK_SET`, :attr:`os.SEEK_CUR`, and :attr:`os." "SEEK_END` have been added; these are the parameters to the :func:`os.lseek` " "function. Two new constants for locking are :attr:`os.O_SHLOCK` and :attr:" "`os.O_EXLOCK`." msgstr "" #: ../Doc/whatsnew/2.5.rst:1455 msgid "" "Two new functions, :func:`wait3` and :func:`wait4`, were added. They're " "similar the :func:`waitpid` function which waits for a child process to exit " "and returns a tuple of the process ID and its exit status, but :func:`wait3` " "and :func:`wait4` return additional information. :func:`wait3` doesn't take " "a process ID as input, so it waits for any child process to exit and returns " "a 3-tuple of *process-id*, *exit-status*, *resource-usage* as returned from " "the :func:`resource.getrusage` function. ``wait4(pid)`` does take a process " "ID. (Contributed by Chad J. Schroeder.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1464 msgid "" "On FreeBSD, the :func:`os.stat` function now returns times with nanosecond " "resolution, and the returned object now has :attr:`st_gen` and :attr:" "`st_birthtime`. The :attr:`st_flags` attribute is also available, if the " "platform supports it. (Contributed by Antti Louko and Diego Pettenò.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1471 msgid "" "The Python debugger provided by the :mod:`pdb` module can now store lists of " "commands to execute when a breakpoint is reached and execution stops. Once " "breakpoint #1 has been created, enter ``commands 1`` and enter a series of " "commands to be executed, finishing the list with ``end``. The command list " "can include commands that resume execution, such as ``continue`` or " "``next``. (Contributed by Grégoire Dooms.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1480 msgid "" "The :mod:`pickle` and :mod:`cPickle` modules no longer accept a return value " "of ``None`` from the :meth:`__reduce__` method; the method must return a " "tuple of arguments instead. The ability to return ``None`` was deprecated " "in Python 2.4, so this completes the removal of the feature." msgstr "" #: ../Doc/whatsnew/2.5.rst:1485 msgid "" "The :mod:`pkgutil` module, containing various utility functions for finding " "packages, was enhanced to support PEP 302's import hooks and now also works " "for packages stored in ZIP-format archives. (Contributed by Phillip J. Eby.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1489 msgid "" "The pybench benchmark suite by Marc-André Lemburg is now included in the :" "file:`Tools/pybench` directory. The pybench suite is an improvement on the " "commonly used :file:`pystone.py` program because pybench provides a more " "detailed measurement of the interpreter's speed. It times particular " "operations such as function calls, tuple slicing, method lookups, and " "numeric operations, instead of performing many different operations and " "reducing the result to a single number as :file:`pystone.py` does." msgstr "" #: ../Doc/whatsnew/2.5.rst:1497 msgid "" "The :mod:`pyexpat` module now uses version 2.0 of the Expat parser. " "(Contributed by Trent Mick.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1500 msgid "" "The :class:`Queue` class provided by the :mod:`Queue` module gained two new " "methods. :meth:`join` blocks until all items in the queue have been " "retrieved and all processing work on the items have been completed. Worker " "threads call the other new method, :meth:`task_done`, to signal that " "processing for an item has been completed. (Contributed by Raymond " "Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1506 msgid "" "The old :mod:`regex` and :mod:`regsub` modules, which have been deprecated " "ever since Python 2.0, have finally been deleted. Other deleted modules: :" "mod:`statcache`, :mod:`tzparse`, :mod:`whrandom`." msgstr "" #: ../Doc/whatsnew/2.5.rst:1510 msgid "" "Also deleted: the :file:`lib-old` directory, which includes ancient modules " "such as :mod:`dircmp` and :mod:`ni`, was removed. :file:`lib-old` wasn't on " "the default ``sys.path``, so unless your programs explicitly added the " "directory to ``sys.path``, this removal shouldn't affect your code." msgstr "" #: ../Doc/whatsnew/2.5.rst:1515 msgid "" "The :mod:`rlcompleter` module is no longer dependent on importing the :mod:" "`readline` module and therefore now works on non-Unix platforms. (Patch from " "Robert Kiendl.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1521 msgid "" "The :mod:`SimpleXMLRPCServer` and :mod:`DocXMLRPCServer` classes now have " "a :attr:`rpc_paths` attribute that constrains XML-RPC operations to a " "limited set of URL paths; the default is to allow only ``'/'`` and ``'/" "RPC2'``. Setting :attr:`rpc_paths` to ``None`` or an empty tuple disables " "this path checking." msgstr "" #: ../Doc/whatsnew/2.5.rst:1528 msgid "" "The :mod:`socket` module now supports :const:`AF_NETLINK` sockets on Linux, " "thanks to a patch from Philippe Biondi. Netlink sockets are a Linux-" "specific mechanism for communications between a user-space process and " "kernel code; an introductory article about them is at https://www." "linuxjournal.com/article/7356. In Python code, netlink addresses are " "represented as a tuple of 2 integers, ``(pid, group_mask)``." msgstr "" #: ../Doc/whatsnew/2.5.rst:1535 msgid "" "Two new methods on socket objects, ``recv_into(buffer)`` and " "``recvfrom_into(buffer)``, store the received data in an object that " "supports the buffer protocol instead of returning the data as a string. " "This means you can put the data directly into an array or a memory-mapped " "file." msgstr "" #: ../Doc/whatsnew/2.5.rst:1540 msgid "" "Socket objects also gained :meth:`getfamily`, :meth:`gettype`, and :meth:" "`getproto` accessor methods to retrieve the family, type, and protocol " "values for the socket." msgstr "" #: ../Doc/whatsnew/2.5.rst:1544 msgid "" "New module: the :mod:`spwd` module provides functions for accessing the " "shadow password database on systems that support shadow passwords." msgstr "" #: ../Doc/whatsnew/2.5.rst:1547 msgid "" "The :mod:`struct` is now faster because it compiles format strings into :" "class:`Struct` objects with :meth:`pack` and :meth:`unpack` methods. This " "is similar to how the :mod:`re` module lets you create compiled regular " "expression objects. You can still use the module-level :func:`pack` and :" "func:`unpack` functions; they'll create :class:`Struct` objects and cache " "them. Or you can use :class:`Struct` instances directly::" msgstr "" #: ../Doc/whatsnew/2.5.rst:1559 msgid "" "You can also pack and unpack data to and from buffer objects directly using " "the ``pack_into(buffer, offset, v1, v2, ...)`` and ``unpack_from(buffer, " "offset)`` methods. This lets you store data directly into an array or a " "memory- mapped file." msgstr "" #: ../Doc/whatsnew/2.5.rst:1564 msgid "" "(:class:`Struct` objects were implemented by Bob Ippolito at the " "NeedForSpeed sprint. Support for buffer objects was added by Martin Blais, " "also at the NeedForSpeed sprint.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1568 msgid "" "The Python developers switched from CVS to Subversion during the 2.5 " "development process. Information about the exact build version is available " "as the ``sys.subversion`` variable, a 3-tuple of ``(interpreter-name, branch-" "name, revision-range)``. For example, at the time of writing my copy of 2.5 " "was reporting ``('CPython', 'trunk', '45313:45315')``." msgstr "" #: ../Doc/whatsnew/2.5.rst:1574 msgid "" "This information is also available to C extensions via the :c:func:" "`Py_GetBuildInfo` function that returns a string of build information like " "this: ``\"trunk:45355:45356M, Apr 13 2006, 07:42:19\"``. (Contributed by " "Barry Warsaw.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1579 msgid "" "Another new function, :func:`sys._current_frames`, returns the current stack " "frames for all running threads as a dictionary mapping thread identifiers to " "the topmost stack frame currently active in that thread at the time the " "function is called. (Contributed by Tim Peters.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1584 msgid "" "The :class:`TarFile` class in the :mod:`tarfile` module now has an :meth:" "`extractall` method that extracts all members from the archive into the " "current working directory. It's also possible to set a different directory " "as the extraction target, and to unpack only a subset of the archive's " "members." msgstr "" #: ../Doc/whatsnew/2.5.rst:1589 msgid "" "The compression used for a tarfile opened in stream mode can now be " "autodetected using the mode ``'r|*'``. (Contributed by Lars Gustäbel.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1594 msgid "" "The :mod:`threading` module now lets you set the stack size used when new " "threads are created. The ``stack_size([*size*])`` function returns the " "currently configured stack size, and supplying the optional *size* parameter " "sets a new value. Not all platforms support changing the stack size, but " "Windows, POSIX threading, and OS/2 all do. (Contributed by Andrew MacIntyre.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1602 msgid "" "The :mod:`unicodedata` module has been updated to use version 4.1.0 of the " "Unicode character database. Version 3.2.0 is required by some " "specifications, so it's still available as :attr:`unicodedata.ucd_3_2_0`." msgstr "" #: ../Doc/whatsnew/2.5.rst:1606 msgid "" "New module: the :mod:`uuid` module generates universally unique " "identifiers (UUIDs) according to :rfc:`4122`. The RFC defines several " "different UUID versions that are generated from a starting string, from " "system properties, or purely randomly. This module contains a :class:`UUID` " "class and functions named :func:`uuid1`, :func:`uuid3`, :func:`uuid4`, " "and :func:`uuid5` to generate different versions of UUID. (Version 2 " "UUIDs are not specified in :rfc:`4122` and are not supported by this " "module.) ::" msgstr "" #: ../Doc/whatsnew/2.5.rst:1631 msgid "(Contributed by Ka-Ping Yee.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1633 msgid "" "The :mod:`weakref` module's :class:`WeakKeyDictionary` and :class:" "`WeakValueDictionary` types gained new methods for iterating over the weak " "references contained in the dictionary. :meth:`iterkeyrefs` and :meth:" "`keyrefs` methods were added to :class:`WeakKeyDictionary`, and :meth:" "`itervaluerefs` and :meth:`valuerefs` were added to :class:" "`WeakValueDictionary`. (Contributed by Fred L. Drake, Jr.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1640 msgid "" "The :mod:`webbrowser` module received a number of enhancements. It's now " "usable as a script with ``python -m webbrowser``, taking a URL as the " "argument; there are a number of switches to control the behaviour (:option:" "`-n` for a new browser window, :option:`!-t` for a new tab). New module-" "level functions, :func:`open_new` and :func:`open_new_tab`, were added to " "support this. The module's :func:`open` function supports an additional " "feature, an *autoraise* parameter that signals whether to raise the open " "window when possible. A number of additional browsers were added to the " "supported list such as Firefox, Opera, Konqueror, and elinks. (Contributed " "by Oleg Broytmann and Georg Brandl.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1652 msgid "" "The :mod:`xmlrpclib` module now supports returning :class:`datetime` " "objects for the XML-RPC date type. Supply ``use_datetime=True`` to the :" "func:`loads` function or the :class:`Unmarshaller` class to enable this " "feature. (Contributed by Skip Montanaro.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1659 msgid "" "The :mod:`zipfile` module now supports the ZIP64 version of the format, " "meaning that a .zip archive can now be larger than 4 GiB and can contain " "individual files larger than 4 GiB. (Contributed by Ronald Oussoren.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1665 msgid "" "The :mod:`zlib` module's :class:`Compress` and :class:`Decompress` objects " "now support a :meth:`copy` method that makes a copy of the object's " "internal state and returns a new :class:`Compress` or :class:`Decompress` " "object. (Contributed by Chris AtLee.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1678 msgid "The ctypes package" msgstr "" #: ../Doc/whatsnew/2.5.rst:1680 msgid "" "The :mod:`ctypes` package, written by Thomas Heller, has been added to the " "standard library. :mod:`ctypes` lets you call arbitrary functions in " "shared libraries or DLLs. Long-time users may remember the :mod:`dl` " "module, which provides functions for loading shared libraries and calling " "functions in them. The :mod:`ctypes` package is much fancier." msgstr "" #: ../Doc/whatsnew/2.5.rst:1686 msgid "" "To load a shared library or DLL, you must create an instance of the :class:" "`CDLL` class and provide the name or path of the shared library or DLL. Once " "that's done, you can call arbitrary functions by accessing them as " "attributes of the :class:`CDLL` object. ::" msgstr "" #: ../Doc/whatsnew/2.5.rst:1696 msgid "" "Type constructors for the various C types are provided: :func:`c_int`, :func:" "`c_float`, :func:`c_double`, :func:`c_char_p` (equivalent to :c:type:`char " "\\*`), and so forth. Unlike Python's types, the C versions are all mutable; " "you can assign to their :attr:`value` attribute to change the wrapped " "value. Python integers and strings will be automatically converted to the " "corresponding C types, but for other types you must call the correct type " "constructor. (And I mean *must*; getting it wrong will often result in the " "interpreter crashing with a segmentation fault.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1705 msgid "" "You shouldn't use :func:`c_char_p` with a Python string when the C function " "will be modifying the memory area, because Python strings are supposed to " "be immutable; breaking this rule will cause puzzling bugs. When you need a " "modifiable memory area, use :func:`create_string_buffer`::" msgstr "" #: ../Doc/whatsnew/2.5.rst:1714 msgid "" "C functions are assumed to return integers, but you can set the :attr:" "`restype` attribute of the function object to change this::" msgstr "" #: ../Doc/whatsnew/2.5.rst:1723 msgid "" ":mod:`ctypes` also provides a wrapper for Python's C API as the ``ctypes." "pythonapi`` object. This object does *not* release the global interpreter " "lock before calling a function, because the lock must be held when calling " "into the interpreter's code. There's a :class:`py_object()` type " "constructor that will create a :c:type:`PyObject \\*` pointer. A simple " "usage::" msgstr "" #: ../Doc/whatsnew/2.5.rst:1736 msgid "" "Don't forget to use :class:`py_object()`; if it's omitted you end up with a " "segmentation fault." msgstr "" #: ../Doc/whatsnew/2.5.rst:1739 msgid "" ":mod:`ctypes` has been around for a while, but people still write and " "distribution hand-coded extension modules because you can't rely on :mod:" "`ctypes` being present. Perhaps developers will begin to write Python " "wrappers atop a library accessed through :mod:`ctypes` instead of extension " "modules, now that :mod:`ctypes` is included with core Python." msgstr "" #: ../Doc/whatsnew/2.5.rst:1749 msgid "http://starship.python.net/crew/theller/ctypes/" msgstr "" #: ../Doc/whatsnew/2.5.rst:1749 msgid "The ctypes web page, with a tutorial, reference, and FAQ." msgstr "" #: ../Doc/whatsnew/2.5.rst:1751 msgid "The documentation for the :mod:`ctypes` module." msgstr "" #: ../Doc/whatsnew/2.5.rst:1759 msgid "The ElementTree package" msgstr "" #: ../Doc/whatsnew/2.5.rst:1761 msgid "" "A subset of Fredrik Lundh's ElementTree library for processing XML has been " "added to the standard library as :mod:`xml.etree`. The available modules " "are :mod:`ElementTree`, :mod:`ElementPath`, and :mod:`ElementInclude` from " "ElementTree 1.2.6. The :mod:`cElementTree` accelerator module is also " "included." msgstr "" #: ../Doc/whatsnew/2.5.rst:1767 msgid "" "The rest of this section will provide a brief overview of using ElementTree. " "Full documentation for ElementTree is available at http://effbot.org/zone/" "element-index.htm." msgstr "" #: ../Doc/whatsnew/2.5.rst:1771 msgid "" "ElementTree represents an XML document as a tree of element nodes. The text " "content of the document is stored as the :attr:`text` and :attr:`tail` " "attributes of (This is one of the major differences between ElementTree and " "the Document Object Model; in the DOM there are many different types of " "node, including :class:`TextNode`.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1777 msgid "" "The most commonly used parsing function is :func:`parse`, that takes either " "a string (assumed to contain a filename) or a file-like object and returns " "an :class:`ElementTree` instance::" msgstr "" #: ../Doc/whatsnew/2.5.rst:1789 msgid "" "Once you have an :class:`ElementTree` instance, you can call its :meth:" "`getroot` method to get the root :class:`Element` node." msgstr "" #: ../Doc/whatsnew/2.5.rst:1792 msgid "" "There's also an :func:`XML` function that takes a string literal and returns " "an :class:`Element` node (not an :class:`ElementTree`). This function " "provides a tidy way to incorporate XML fragments, approaching the " "convenience of an XML literal::" msgstr "" #: ../Doc/whatsnew/2.5.rst:1802 msgid "" "Each XML element supports some dictionary-like and some list-like access " "methods. Dictionary-like operations are used to access attribute values, " "and list-like operations are used to access child nodes." msgstr "" #: ../Doc/whatsnew/2.5.rst:1807 msgid "Result" msgstr "Résultat" #: ../Doc/whatsnew/2.5.rst:1809 msgid "``elem[n]``" msgstr "``elem[n]``" #: ../Doc/whatsnew/2.5.rst:1809 msgid "Returns n'th child element." msgstr "" #: ../Doc/whatsnew/2.5.rst:1811 msgid "``elem[m:n]``" msgstr "``elem[m:n]``" #: ../Doc/whatsnew/2.5.rst:1811 msgid "Returns list of m'th through n'th child elements." msgstr "" #: ../Doc/whatsnew/2.5.rst:1814 msgid "``len(elem)``" msgstr "``len(elem)``" #: ../Doc/whatsnew/2.5.rst:1814 msgid "Returns number of child elements." msgstr "" #: ../Doc/whatsnew/2.5.rst:1816 msgid "``list(elem)``" msgstr "``list(elem)``" #: ../Doc/whatsnew/2.5.rst:1816 msgid "Returns list of child elements." msgstr "" #: ../Doc/whatsnew/2.5.rst:1818 msgid "``elem.append(elem2)``" msgstr "``elem.append(elem2)``" #: ../Doc/whatsnew/2.5.rst:1818 msgid "Adds *elem2* as a child." msgstr "" #: ../Doc/whatsnew/2.5.rst:1820 msgid "``elem.insert(index, elem2)``" msgstr "``elem.insert(index, elem2)``" #: ../Doc/whatsnew/2.5.rst:1820 msgid "Inserts *elem2* at the specified location." msgstr "" #: ../Doc/whatsnew/2.5.rst:1822 msgid "``del elem[n]``" msgstr "``del elem[n]``" #: ../Doc/whatsnew/2.5.rst:1822 msgid "Deletes n'th child element." msgstr "" #: ../Doc/whatsnew/2.5.rst:1824 msgid "``elem.keys()``" msgstr "``elem.keys()``" #: ../Doc/whatsnew/2.5.rst:1824 msgid "Returns list of attribute names." msgstr "" #: ../Doc/whatsnew/2.5.rst:1826 msgid "``elem.get(name)``" msgstr "``elem.get(name)``" #: ../Doc/whatsnew/2.5.rst:1826 msgid "Returns value of attribute *name*." msgstr "" #: ../Doc/whatsnew/2.5.rst:1828 msgid "``elem.set(name, value)``" msgstr "``elem.set(name, value)``" #: ../Doc/whatsnew/2.5.rst:1828 msgid "Sets new value for attribute *name*." msgstr "" #: ../Doc/whatsnew/2.5.rst:1830 msgid "``elem.attrib``" msgstr "``elem.attrib``" #: ../Doc/whatsnew/2.5.rst:1830 msgid "Retrieves the dictionary containing attributes." msgstr "" #: ../Doc/whatsnew/2.5.rst:1833 msgid "``del elem.attrib[name]``" msgstr "``del elem.attrib[name]``" #: ../Doc/whatsnew/2.5.rst:1833 msgid "Deletes attribute *name*." msgstr "Supprime l’attribut *name*." #: ../Doc/whatsnew/2.5.rst:1836 msgid "" "Comments and processing instructions are also represented as :class:" "`Element` nodes. To check if a node is a comment or processing " "instructions::" msgstr "" #: ../Doc/whatsnew/2.5.rst:1844 msgid "" "To generate XML output, you should call the :meth:`ElementTree.write` " "method. Like :func:`parse`, it can take either a string or a file-like " "object::" msgstr "" #: ../Doc/whatsnew/2.5.rst:1854 msgid "" "(Caution: the default encoding used for output is ASCII. For general XML " "work, where an element's name may contain arbitrary Unicode characters, " "ASCII isn't a very useful encoding because it will raise an exception if an " "element's name contains any characters with values greater than 127. " "Therefore, it's best to specify a different encoding such as UTF-8 that can " "handle any Unicode character.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:1861 msgid "" "This section is only a partial description of the ElementTree interfaces. " "Please read the package's official documentation for more details." msgstr "" #: ../Doc/whatsnew/2.5.rst:1867 msgid "http://effbot.org/zone/element-index.htm" msgstr "" #: ../Doc/whatsnew/2.5.rst:1868 msgid "Official documentation for ElementTree." msgstr "" #: ../Doc/whatsnew/2.5.rst:1876 msgid "The hashlib package" msgstr "" #: ../Doc/whatsnew/2.5.rst:1878 msgid "" "A new :mod:`hashlib` module, written by Gregory P. Smith, has been added to " "replace the :mod:`md5` and :mod:`sha` modules. :mod:`hashlib` adds support " "for additional secure hashes (SHA-224, SHA-256, SHA-384, and SHA-512). When " "available, the module uses OpenSSL for fast platform optimized " "implementations of algorithms." msgstr "" #: ../Doc/whatsnew/2.5.rst:1884 msgid "" "The old :mod:`md5` and :mod:`sha` modules still exist as wrappers around " "hashlib to preserve backwards compatibility. The new module's interface is " "very close to that of the old modules, but not identical. The most " "significant difference is that the constructor functions for creating new " "hashing objects are named differently. ::" msgstr "" #: ../Doc/whatsnew/2.5.rst:1913 msgid "" "Once a hash object has been created, its methods are the same as before: " "``update(string)`` hashes the specified string into the current digest " "state, :meth:`digest` and :meth:`hexdigest` return the digest value as a " "binary string or a string of hex digits, and :meth:`copy` returns a new " "hashing object with the same digest state." msgstr "" #: ../Doc/whatsnew/2.5.rst:1922 msgid "The documentation for the :mod:`hashlib` module." msgstr "" #: ../Doc/whatsnew/2.5.rst:1930 msgid "The sqlite3 package" msgstr "" #: ../Doc/whatsnew/2.5.rst:1932 msgid "" "The pysqlite module (http://www.pysqlite.org), a wrapper for the SQLite " "embedded database, has been added to the standard library under the package " "name :mod:`sqlite3`." msgstr "" #: ../Doc/whatsnew/2.5.rst:1936 msgid "" "SQLite is a C library that provides a lightweight disk-based database that " "doesn't require a separate server process and allows accessing the database " "using a nonstandard variant of the SQL query language. Some applications can " "use SQLite for internal data storage. It's also possible to prototype an " "application using SQLite and then port the code to a larger database such as " "PostgreSQL or Oracle." msgstr "" #: ../Doc/whatsnew/2.5.rst:1943 msgid "" "pysqlite was written by Gerhard Häring and provides a SQL interface " "compliant with the DB-API 2.0 specification described by :pep:`249`." msgstr "" #: ../Doc/whatsnew/2.5.rst:1946 msgid "" "If you're compiling the Python source yourself, note that the source tree " "doesn't include the SQLite code, only the wrapper module. You'll need to " "have the SQLite libraries and headers installed before compiling Python, and " "the build process will compile the module when the necessary headers are " "available." msgstr "" #: ../Doc/whatsnew/2.5.rst:1951 msgid "" "To use the module, you must first create a :class:`Connection` object that " "represents the database. Here the data will be stored in the :file:`/tmp/" "example` file::" msgstr "" #: ../Doc/whatsnew/2.5.rst:1957 msgid "" "You can also supply the special name ``:memory:`` to create a database in " "RAM." msgstr "" #: ../Doc/whatsnew/2.5.rst:1959 msgid "" "Once you have a :class:`Connection`, you can create a :class:`Cursor` " "object and call its :meth:`execute` method to perform SQL commands::" msgstr "" #: ../Doc/whatsnew/2.5.rst:1973 msgid "" "Usually your SQL operations will need to use values from Python variables. " "You shouldn't assemble your query using Python's string operations because " "doing so is insecure; it makes your program vulnerable to an SQL injection " "attack." msgstr "" #: ../Doc/whatsnew/2.5.rst:1977 msgid "" "Instead, use the DB-API's parameter substitution. Put ``?`` as a " "placeholder wherever you want to use a value, and then provide a tuple of " "values as the second argument to the cursor's :meth:`execute` method. " "(Other database modules may use a different placeholder, such as ``%s`` or " "``:1``.) For example::" msgstr "" #: ../Doc/whatsnew/2.5.rst:1997 msgid "" "To retrieve data after executing a SELECT statement, you can either treat " "the cursor as an iterator, call the cursor's :meth:`fetchone` method to " "retrieve a single matching row, or call :meth:`fetchall` to get a list of " "the matching rows." msgstr "" #: ../Doc/whatsnew/2.5.rst:2002 msgid "This example uses the iterator form::" msgstr "" #: ../Doc/whatsnew/2.5.rst:2015 msgid "" "For more information about the SQL dialect supported by SQLite, see https://" "www.sqlite.org." msgstr "" #: ../Doc/whatsnew/2.5.rst:2022 msgid "http://www.pysqlite.org" msgstr "" #: ../Doc/whatsnew/2.5.rst:2022 msgid "The pysqlite web page." msgstr "" #: ../Doc/whatsnew/2.5.rst:2026 msgid "https://www.sqlite.org" msgstr "" #: ../Doc/whatsnew/2.5.rst:2025 msgid "" "The SQLite web page; the documentation describes the syntax and the " "available data types for the supported SQL dialect." msgstr "" #: ../Doc/whatsnew/2.5.rst:2028 msgid "The documentation for the :mod:`sqlite3` module." msgstr "" #: ../Doc/whatsnew/2.5.rst:2030 msgid ":pep:`249` - Database API Specification 2.0" msgstr "" #: ../Doc/whatsnew/2.5.rst:2031 msgid "PEP written by Marc-André Lemburg." msgstr "" #: ../Doc/whatsnew/2.5.rst:2039 msgid "The wsgiref package" msgstr "" #: ../Doc/whatsnew/2.5.rst:2041 msgid "" "The Web Server Gateway Interface (WSGI) v1.0 defines a standard interface " "between web servers and Python web applications and is described in :pep:" "`333`. The :mod:`wsgiref` package is a reference implementation of the WSGI " "specification." msgstr "" #: ../Doc/whatsnew/2.5.rst:2048 msgid "" "The package includes a basic HTTP server that will run a WSGI application; " "this server is useful for debugging but isn't intended for production use. " "Setting up a server takes only a few lines of code::" msgstr "" #: ../Doc/whatsnew/2.5.rst:2068 msgid "http://www.wsgi.org" msgstr "" #: ../Doc/whatsnew/2.5.rst:2068 msgid "A central web site for WSGI-related resources." msgstr "" #: ../Doc/whatsnew/2.5.rst:2070 msgid ":pep:`333` - Python Web Server Gateway Interface v1.0" msgstr "" #: ../Doc/whatsnew/2.5.rst:2071 msgid "PEP written by Phillip J. Eby." msgstr "" #: ../Doc/whatsnew/2.5.rst:2083 msgid "" "The Python source tree was converted from CVS to Subversion, in a complex " "migration procedure that was supervised and flawlessly carried out by Martin " "von Löwis. The procedure was developed as :pep:`347`." msgstr "" #: ../Doc/whatsnew/2.5.rst:2087 msgid "" "Coverity, a company that markets a source code analysis tool called Prevent, " "provided the results of their examination of the Python source code. The " "analysis found about 60 bugs that were quickly fixed. Many of the bugs " "were refcounting problems, often occurring in error-handling code. See " "https://scan.coverity.com for the statistics." msgstr "" #: ../Doc/whatsnew/2.5.rst:2093 msgid "" "The largest change to the C API came from :pep:`353`, which modifies the " "interpreter to use a :c:type:`Py_ssize_t` type definition instead of :c:type:" "`int`. See the earlier section :ref:`pep-353` for a discussion of this " "change." msgstr "" #: ../Doc/whatsnew/2.5.rst:2098 msgid "" "The design of the bytecode compiler has changed a great deal, no longer " "generating bytecode by traversing the parse tree. Instead the parse tree is " "converted to an abstract syntax tree (or AST), and it is the abstract " "syntax tree that's traversed to produce the bytecode." msgstr "" #: ../Doc/whatsnew/2.5.rst:2103 msgid "" "It's possible for Python code to obtain AST objects by using the :func:" "`compile` built-in and specifying ``_ast.PyCF_ONLY_AST`` as the value of " "the *flags* parameter::" msgstr "" #: ../Doc/whatsnew/2.5.rst:2116 msgid "" "No official documentation has been written for the AST code yet, but :pep:" "`339` discusses the design. To start learning about the code, read the " "definition of the various AST nodes in :file:`Parser/Python.asdl`. A Python " "script reads this file and generates a set of C structure definitions in :" "file:`Include/Python-ast.h`. The :c:func:`PyParser_ASTFromString` and :c:" "func:`PyParser_ASTFromFile`, defined in :file:`Include/pythonrun.h`, take " "Python source as input and return the root of an AST representing the " "contents. This AST can then be turned into a code object by :c:func:" "`PyAST_Compile`. For more information, read the source code, and then ask " "questions on python-dev." msgstr "" #: ../Doc/whatsnew/2.5.rst:2126 msgid "" "The AST code was developed under Jeremy Hylton's management, and implemented " "by (in alphabetical order) Brett Cannon, Nick Coghlan, Grant Edwards, John " "Ehresman, Kurt Kaiser, Neal Norwitz, Tim Peters, Armin Rigo, and Neil " "Schemenauer, plus the participants in a number of AST sprints at conferences " "such as PyCon." msgstr "" #: ../Doc/whatsnew/2.5.rst:2135 msgid "" "Evan Jones's patch to obmalloc, first described in a talk at PyCon DC 2005, " "was applied. Python 2.4 allocated small objects in 256K-sized arenas, but " "never freed arenas. With this patch, Python will free arenas when they're " "empty. The net effect is that on some platforms, when you allocate many " "objects, Python's memory usage may actually drop when you delete them and " "the memory may be returned to the operating system. (Implemented by Evan " "Jones, and reworked by Tim Peters.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:2143 msgid "" "Note that this change means extension modules must be more careful when " "allocating memory. Python's API has many different functions for allocating " "memory that are grouped into families. For example, :c:func:" "`PyMem_Malloc`, :c:func:`PyMem_Realloc`, and :c:func:`PyMem_Free` are one " "family that allocates raw memory, while :c:func:`PyObject_Malloc`, :c:func:" "`PyObject_Realloc`, and :c:func:`PyObject_Free` are another family that's " "supposed to be used for creating Python objects." msgstr "" #: ../Doc/whatsnew/2.5.rst:2151 msgid "" "Previously these different families all reduced to the platform's :c:func:" "`malloc` and :c:func:`free` functions. This meant it didn't matter if you " "got things wrong and allocated memory with the :c:func:`PyMem` function but " "freed it with the :c:func:`PyObject` function. With 2.5's changes to " "obmalloc, these families now do different things and mismatches will " "probably result in a segfault. You should carefully test your C extension " "modules with Python 2.5." msgstr "" #: ../Doc/whatsnew/2.5.rst:2158 msgid "" "The built-in set types now have an official C API. Call :c:func:`PySet_New` " "and :c:func:`PyFrozenSet_New` to create a new set, :c:func:`PySet_Add` and :" "c:func:`PySet_Discard` to add and remove elements, and :c:func:" "`PySet_Contains` and :c:func:`PySet_Size` to examine the set's state. " "(Contributed by Raymond Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:2164 msgid "" "C code can now obtain information about the exact revision of the Python " "interpreter by calling the :c:func:`Py_GetBuildInfo` function that returns " "a string of build information like this: ``\"trunk:45355:45356M, Apr 13 " "2006, 07:42:19\"``. (Contributed by Barry Warsaw.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:2169 msgid "" "Two new macros can be used to indicate C functions that are local to the " "current file so that a faster calling convention can be used. " "``Py_LOCAL(type)`` declares the function as returning a value of the " "specified *type* and uses a fast-calling qualifier. " "``Py_LOCAL_INLINE(type)`` does the same thing and also requests the function " "be inlined. If :c:func:`PY_LOCAL_AGGRESSIVE` is defined before :file:" "`python.h` is included, a set of more aggressive optimizations are enabled " "for the module; you should benchmark the results to find out if these " "optimizations actually make the code faster. (Contributed by Fredrik Lundh " "at the NeedForSpeed sprint.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:2180 msgid "" "``PyErr_NewException(name, base, dict)`` can now accept a tuple of base " "classes as its *base* argument. (Contributed by Georg Brandl.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:2183 msgid "" "The :c:func:`PyErr_Warn` function for issuing warnings is now deprecated in " "favour of ``PyErr_WarnEx(category, message, stacklevel)`` which lets you " "specify the number of stack frames separating this function and the caller. " "A *stacklevel* of 1 is the function calling :c:func:`PyErr_WarnEx`, 2 is the " "function above that, and so forth. (Added by Neal Norwitz.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:2189 msgid "" "The CPython interpreter is still written in C, but the code can now be " "compiled with a C++ compiler without errors. (Implemented by Anthony " "Baxter, Martin von Löwis, Skip Montanaro.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:2193 msgid "" "The :c:func:`PyRange_New` function was removed. It was never documented, " "never used in the core code, and had dangerously lax error checking. In the " "unlikely case that your extensions were using it, you can replace it by " "something like the following::" msgstr "" #: ../Doc/whatsnew/2.5.rst:2209 msgid "" "MacOS X (10.3 and higher): dynamic loading of modules now uses the :c:func:" "`dlopen` function instead of MacOS-specific functions." msgstr "" #: ../Doc/whatsnew/2.5.rst:2212 msgid "" "MacOS X: an :option:`--enable-universalsdk` switch was added to the :program:" "`configure` script that compiles the interpreter as a universal binary able " "to run on both PowerPC and Intel processors. (Contributed by Ronald " "Oussoren; :issue:`2573`.)" msgstr "" #: ../Doc/whatsnew/2.5.rst:2217 msgid "" "Windows: :file:`.dll` is no longer supported as a filename extension for " "extension modules. :file:`.pyd` is now the only filename extension that " "will be searched for." msgstr "" #: ../Doc/whatsnew/2.5.rst:2227 msgid "Porting to Python 2.5" msgstr "Portage vers Python 2.5" #: ../Doc/whatsnew/2.5.rst:2232 msgid "" "ASCII is now the default encoding for modules. It's now a syntax error if " "a module contains string literals with 8-bit characters but doesn't have an " "encoding declaration. In Python 2.4 this triggered a warning, not a syntax " "error." msgstr "" #: ../Doc/whatsnew/2.5.rst:2237 msgid "" "Previously, the :attr:`gi_frame` attribute of a generator was always a frame " "object. Because of the :pep:`342` changes described in section :ref:" "`pep-342`, it's now possible for :attr:`gi_frame` to be ``None``." msgstr "" #: ../Doc/whatsnew/2.5.rst:2241 msgid "" "A new warning, :class:`UnicodeWarning`, is triggered when you attempt to " "compare a Unicode string and an 8-bit string that can't be converted to " "Unicode using the default ASCII encoding. Previously such comparisons would " "raise a :class:`UnicodeDecodeError` exception." msgstr "" #: ../Doc/whatsnew/2.5.rst:2246 msgid "" "Library: the :mod:`csv` module is now stricter about multi-line quoted " "fields. If your files contain newlines embedded within fields, the input " "should be split into lines in a manner which preserves the newline " "characters." msgstr "" #: ../Doc/whatsnew/2.5.rst:2250 msgid "" "Library: the :mod:`locale` module's :func:`format` function's would " "previously accept any string as long as no more than one %char specifier " "appeared. In Python 2.5, the argument must be exactly one %char specifier " "with no surrounding text." msgstr "" #: ../Doc/whatsnew/2.5.rst:2255 msgid "" "Library: The :mod:`pickle` and :mod:`cPickle` modules no longer accept a " "return value of ``None`` from the :meth:`__reduce__` method; the method must " "return a tuple of arguments instead. The modules also no longer accept the " "deprecated *bin* keyword parameter." msgstr "" #: ../Doc/whatsnew/2.5.rst:2260 msgid "" "Library: The :mod:`SimpleXMLRPCServer` and :mod:`DocXMLRPCServer` classes " "now have a :attr:`rpc_paths` attribute that constrains XML-RPC operations to " "a limited set of URL paths; the default is to allow only ``'/'`` and ``'/" "RPC2'``. Setting :attr:`rpc_paths` to ``None`` or an empty tuple disables " "this path checking." msgstr "" #: ../Doc/whatsnew/2.5.rst:2266 msgid "" "C API: Many functions now use :c:type:`Py_ssize_t` instead of :c:type:`int` " "to allow processing more data on 64-bit machines. Extension code may need " "to make the same change to avoid warnings and to support 64-bit machines. " "See the earlier section :ref:`pep-353` for a discussion of this change." msgstr "" #: ../Doc/whatsnew/2.5.rst:2271 msgid "" "C API: The obmalloc changes mean that you must be careful to not mix usage " "of the :c:func:`PyMem_\\*` and :c:func:`PyObject_\\*` families of functions. " "Memory allocated with one family's :c:func:`\\*_Malloc` must be freed with " "the corresponding family's :c:func:`\\*_Free` function." msgstr "" #: ../Doc/whatsnew/2.5.rst:2282 msgid "" "The author would like to thank the following people for offering " "suggestions, corrections and assistance with various drafts of this article: " "Georg Brandl, Nick Coghlan, Phillip J. Eby, Lars Gustäbel, Raymond " "Hettinger, Ralf W. Grosse- Kunstleve, Kent Johnson, Iain Lowe, Martin von " "Löwis, Fredrik Lundh, Andrew McNamara, Skip Montanaro, Gustavo Niemeyer, " "Paul Prescod, James Pryor, Mike Rovner, Scott Weikart, Barry Warsaw, Thomas " "Wouters." msgstr "" #: ../Doc/whatsnew/2.6.rst:5 msgid "What's New in Python 2.6" msgstr "Nouveautés de Python 2.6" #: ../Doc/whatsnew/2.6.rst:9 ../Doc/whatsnew/2.7.rst:5 msgid "A.M. Kuchling (amk at amk.ca)" msgstr "" #: ../Doc/whatsnew/2.6.rst:52 msgid "" "This article explains the new features in Python 2.6, released on October 1 " "2008. The release schedule is described in :pep:`361`." msgstr "" #: ../Doc/whatsnew/2.6.rst:55 msgid "" "The major theme of Python 2.6 is preparing the migration path to Python 3.0, " "a major redesign of the language. Whenever possible, Python 2.6 " "incorporates new features and syntax from 3.0 while remaining compatible " "with existing code by not removing older features or syntax. When it's not " "possible to do that, Python 2.6 tries to do what it can, adding " "compatibility functions in a :mod:`future_builtins` module and a :option:" "`-3` switch to warn about usages that will become unsupported in 3.0." msgstr "" #: ../Doc/whatsnew/2.6.rst:64 msgid "" "Some significant new packages have been added to the standard library, such " "as the :mod:`multiprocessing` and :mod:`json` modules, but there aren't many " "new features that aren't related to Python 3.0 in some way." msgstr "" #: ../Doc/whatsnew/2.6.rst:69 msgid "" "Python 2.6 also sees a number of improvements and bugfixes throughout the " "source. A search through the change logs finds there were 259 patches " "applied and 612 bugs fixed between Python 2.5 and 2.6. Both figures are " "likely to be underestimates." msgstr "" #: ../Doc/whatsnew/2.6.rst:74 msgid "" "This article doesn't attempt to provide a complete specification of the new " "features, but instead provides a convenient overview. For full details, you " "should refer to the documentation for Python 2.6. If you want to understand " "the rationale for the design and implementation, refer to the PEP for a " "particular new feature. Whenever possible, \"What's New in Python\" links to " "the bug/patch item for each change." msgstr "" #: ../Doc/whatsnew/2.6.rst:90 msgid "Python 3.0" msgstr "Python 3.0" #: ../Doc/whatsnew/2.6.rst:92 msgid "" "The development cycle for Python versions 2.6 and 3.0 was synchronized, with " "the alpha and beta releases for both versions being made on the same days. " "The development of 3.0 has influenced many features in 2.6." msgstr "" #: ../Doc/whatsnew/2.6.rst:97 msgid "" "Python 3.0 is a far-ranging redesign of Python that breaks compatibility " "with the 2.x series. This means that existing Python code will need some " "conversion in order to run on Python 3.0. However, not all the changes in " "3.0 necessarily break compatibility. In cases where new features won't " "cause existing code to break, they've been backported to 2.6 and are " "described in this document in the appropriate place. Some of the 3.0-" "derived features are:" msgstr "" #: ../Doc/whatsnew/2.6.rst:106 msgid "" "A :meth:`__complex__` method for converting objects to a complex number." msgstr "" #: ../Doc/whatsnew/2.6.rst:107 msgid "Alternate syntax for catching exceptions: ``except TypeError as exc``." msgstr "" #: ../Doc/whatsnew/2.6.rst:108 msgid "" "The addition of :func:`functools.reduce` as a synonym for the built-in :func:" "`reduce` function." msgstr "" #: ../Doc/whatsnew/2.6.rst:111 msgid "" "Python 3.0 adds several new built-in functions and changes the semantics of " "some existing builtins. Functions that are new in 3.0 such as :func:`bin` " "have simply been added to Python 2.6, but existing builtins haven't been " "changed; instead, the :mod:`future_builtins` module has versions with the " "new 3.0 semantics. Code written to be compatible with 3.0 can do ``from " "future_builtins import hex, map`` as necessary." msgstr "" #: ../Doc/whatsnew/2.6.rst:119 msgid "" "A new command-line switch, :option:`-3`, enables warnings about features " "that will be removed in Python 3.0. You can run code with this switch to " "see how much work will be necessary to port code to 3.0. The value of this " "switch is available to Python code as the boolean variable :data:`sys." "py3kwarning`, and to C extension code as :c:data:`Py_Py3kWarningFlag`." msgstr "" #: ../Doc/whatsnew/2.6.rst:128 msgid "" "The 3xxx series of PEPs, which contains proposals for Python 3.0. :pep:" "`3000` describes the development process for Python 3.0. Start with :pep:" "`3100` that describes the general goals for Python 3.0, and then explore the " "higher-numbered PEPS that propose specific features." msgstr "" #: ../Doc/whatsnew/2.6.rst:136 msgid "Changes to the Development Process" msgstr "" #: ../Doc/whatsnew/2.6.rst:138 msgid "" "While 2.6 was being developed, the Python development process underwent two " "significant changes: we switched from SourceForge's issue tracker to a " "customized Roundup installation, and the documentation was converted from " "LaTeX to reStructuredText." msgstr "" #: ../Doc/whatsnew/2.6.rst:145 msgid "New Issue Tracker: Roundup" msgstr "" #: ../Doc/whatsnew/2.6.rst:147 msgid "" "For a long time, the Python developers had been growing increasingly annoyed " "by SourceForge's bug tracker. SourceForge's hosted solution doesn't permit " "much customization; for example, it wasn't possible to customize the life " "cycle of issues." msgstr "" #: ../Doc/whatsnew/2.6.rst:152 msgid "" "The infrastructure committee of the Python Software Foundation therefore " "posted a call for issue trackers, asking volunteers to set up different " "products and import some of the bugs and patches from SourceForge. Four " "different trackers were examined: `Jira `__, `Launchpad `__, `Roundup `__, and `Trac `__. The " "committee eventually settled on Jira and Roundup as the two candidates. " "Jira is a commercial product that offers no-cost hosted instances to free-" "software projects; Roundup is an open-source project that requires " "volunteers to administer it and a server to host it." msgstr "" #: ../Doc/whatsnew/2.6.rst:166 msgid "" "After posting a call for volunteers, a new Roundup installation was set up " "at https://bugs.python.org. One installation of Roundup can host multiple " "trackers, and this server now also hosts issue trackers for Jython and for " "the Python web site. It will surely find other uses in the future. Where " "possible, this edition of \"What's New in Python\" links to the bug/patch " "item for each change." msgstr "" #: ../Doc/whatsnew/2.6.rst:174 msgid "" "Hosting of the Python bug tracker is kindly provided by `Upfront Systems " "`__ of Stellenbosch, South Africa. Martin " "von Löwis put a lot of effort into importing existing bugs and patches from " "SourceForge; his scripts for this import operation are at http://svn.python." "org/view/tracker/importer/ and may be useful to other projects wishing to " "move from SourceForge to Roundup." msgstr "" #: ../Doc/whatsnew/2.6.rst:185 msgid "https://bugs.python.org" msgstr "" #: ../Doc/whatsnew/2.6.rst:185 msgid "The Python bug tracker." msgstr "" #: ../Doc/whatsnew/2.6.rst:188 msgid "http://bugs.jython.org:" msgstr "" #: ../Doc/whatsnew/2.6.rst:188 msgid "The Jython bug tracker." msgstr "" #: ../Doc/whatsnew/2.6.rst:191 msgid "http://roundup.sourceforge.net/" msgstr "" #: ../Doc/whatsnew/2.6.rst:191 msgid "Roundup downloads and documentation." msgstr "" #: ../Doc/whatsnew/2.6.rst:193 msgid "http://svn.python.org/view/tracker/importer/" msgstr "" #: ../Doc/whatsnew/2.6.rst:194 msgid "Martin von Löwis's conversion scripts." msgstr "" #: ../Doc/whatsnew/2.6.rst:197 msgid "New Documentation Format: reStructuredText Using Sphinx" msgstr "" #: ../Doc/whatsnew/2.6.rst:199 msgid "" "The Python documentation was written using LaTeX since the project started " "around 1989. In the 1980s and early 1990s, most documentation was printed " "out for later study, not viewed online. LaTeX was widely used because it " "provided attractive printed output while remaining straightforward to write " "once the basic rules of the markup were learned." msgstr "" #: ../Doc/whatsnew/2.6.rst:206 msgid "" "Today LaTeX is still used for writing publications destined for printing, " "but the landscape for programming tools has shifted. We no longer print out " "reams of documentation; instead, we browse through it online and HTML has " "become the most important format to support. Unfortunately, converting LaTeX " "to HTML is fairly complicated and Fred L. Drake Jr., the long-time Python " "documentation editor, spent a lot of time maintaining the conversion " "process. Occasionally people would suggest converting the documentation " "into SGML and later XML, but performing a good conversion is a major task " "and no one ever committed the time required to finish the job." msgstr "" #: ../Doc/whatsnew/2.6.rst:217 msgid "" "During the 2.6 development cycle, Georg Brandl put a lot of effort into " "building a new toolchain for processing the documentation. The resulting " "package is called Sphinx, and is available from http://sphinx-doc.org/." msgstr "" #: ../Doc/whatsnew/2.6.rst:222 msgid "" "Sphinx concentrates on HTML output, producing attractively styled and modern " "HTML; printed output is still supported through conversion to LaTeX. The " "input format is reStructuredText, a markup syntax supporting custom " "extensions and directives that is commonly used in the Python community." msgstr "" #: ../Doc/whatsnew/2.6.rst:228 msgid "" "Sphinx is a standalone package that can be used for writing, and almost two " "dozen other projects (`listed on the Sphinx web site `__) have adopted Sphinx as their documentation tool." msgstr "" #: ../Doc/whatsnew/2.6.rst:236 msgid "" "`Documenting Python `__" msgstr "" #: ../Doc/whatsnew/2.6.rst:236 msgid "Describes how to write for Python's documentation." msgstr "" #: ../Doc/whatsnew/2.6.rst:239 msgid "`Sphinx `__" msgstr "`Sphinx `__" #: ../Doc/whatsnew/2.6.rst:239 msgid "Documentation and code for the Sphinx toolchain." msgstr "" #: ../Doc/whatsnew/2.6.rst:241 msgid "`Docutils `__" msgstr "`Docutils `__" #: ../Doc/whatsnew/2.6.rst:242 msgid "The underlying reStructuredText parser and toolset." msgstr "" #: ../Doc/whatsnew/2.6.rst:250 msgid "" "The previous version, Python 2.5, added the ':keyword:`with`' statement as " "an optional feature, to be enabled by a ``from __future__ import " "with_statement`` directive. In 2.6 the statement no longer needs to be " "specially enabled; this means that :keyword:`with` is now always a keyword. " "The rest of this section is a copy of the corresponding section from the " "\"What's New in Python 2.5\" document; if you're familiar with the ':keyword:" "`with`' statement from Python 2.5, you can skip this section." msgstr "" #: ../Doc/whatsnew/2.6.rst:265 msgid "" "The ':keyword:`with`' statement is a control-flow structure whose basic " "structure is::" msgstr "" #: ../Doc/whatsnew/2.6.rst:271 msgid "" "The expression is evaluated, and it should result in an object that supports " "the context management protocol (that is, has :meth:`__enter__` and :meth:" "`__exit__` methods)." msgstr "" #: ../Doc/whatsnew/2.6.rst:312 msgid "" "The :func:`localcontext` function in the :mod:`decimal` module makes it easy " "to save and restore the current decimal context, which encapsulates the " "desired precision and rounding characteristics for computations::" msgstr "" #: ../Doc/whatsnew/2.6.rst:345 msgid "" "The context manager's :meth:`__enter__` method is called. The value " "returned is assigned to *VAR*. If no ``as VAR`` clause is present, the " "value is simply discarded." msgstr "" #: ../Doc/whatsnew/2.6.rst:351 msgid "" "If *BLOCK* raises an exception, the context manager's :meth:`__exit__` " "method is called with three arguments, the exception details (``type, value, " "traceback``, the same values returned by :func:`sys.exc_info`, which can " "also be ``None`` if no exception occurred). The method's return value " "controls whether an exception is re-raised: any false value re-raises the " "exception, and ``True`` will result in suppressing it. You'll only rarely " "want to suppress the exception, because if you do the author of the code " "containing the ':keyword:`with`' statement will never realize anything went " "wrong." msgstr "" #: ../Doc/whatsnew/2.6.rst:433 msgid "" "The :mod:`contextlib` module provides some functions and a decorator that " "are useful when writing objects for use with the ':keyword:`with`' statement." msgstr "" #: ../Doc/whatsnew/2.6.rst:445 msgid "" "Using this decorator, our database example from the previous section could " "be written as::" msgstr "" #: ../Doc/whatsnew/2.6.rst:474 msgid "" "Finally, the :func:`closing` function returns its argument so that it can be " "bound to a variable, and calls the argument's ``.close()`` method at the end " "of the block. ::" msgstr "" #: ../Doc/whatsnew/2.6.rst:501 msgid "PEP 366: Explicit Relative Imports From a Main Module" msgstr "" #: ../Doc/whatsnew/2.6.rst:503 msgid "" "Python's :option:`-m` switch allows running a module as a script. When you " "ran a module that was located inside a package, relative imports didn't work " "correctly." msgstr "" #: ../Doc/whatsnew/2.6.rst:507 msgid "" "The fix for Python 2.6 adds a :attr:`__package__` attribute to modules. " "When this attribute is present, relative imports will be relative to the " "value of this attribute instead of the :attr:`__name__` attribute." msgstr "" #: ../Doc/whatsnew/2.6.rst:512 msgid "" "PEP 302-style importers can then set :attr:`__package__` as necessary. The :" "mod:`runpy` module that implements the :option:`-m` switch now does this, so " "relative imports will now work correctly in scripts running from inside a " "package." msgstr "" #: ../Doc/whatsnew/2.6.rst:522 msgid "PEP 370: Per-user ``site-packages`` Directory" msgstr "" #: ../Doc/whatsnew/2.6.rst:524 msgid "" "When you run Python, the module search path ``sys.path`` usually includes a " "directory whose path ends in ``\"site-packages\"``. This directory is " "intended to hold locally-installed packages available to all users using a " "machine or a particular site installation." msgstr "" #: ../Doc/whatsnew/2.6.rst:529 msgid "" "Python 2.6 introduces a convention for user-specific site directories. The " "directory varies depending on the platform:" msgstr "" #: ../Doc/whatsnew/2.6.rst:532 msgid "Unix and Mac OS X: :file:`~/.local/`" msgstr "Unix et Mac OS X : :file:`~/.local/`" #: ../Doc/whatsnew/2.6.rst:533 msgid "Windows: :file:`%APPDATA%/Python`" msgstr "Windows : :file:`%APPDATA%/Python`" #: ../Doc/whatsnew/2.6.rst:535 msgid "" "Within this directory, there will be version-specific subdirectories, such " "as :file:`lib/python2.6/site-packages` on Unix/Mac OS and :file:`Python26/" "site-packages` on Windows." msgstr "" #: ../Doc/whatsnew/2.6.rst:539 msgid "" "If you don't like the default directory, it can be overridden by an " "environment variable. :envvar:`PYTHONUSERBASE` sets the root directory used " "for all Python versions supporting this feature. On Windows, the directory " "for application-specific data can be changed by setting the :envvar:" "`APPDATA` environment variable. You can also modify the :file:`site.py` " "file for your Python installation." msgstr "" #: ../Doc/whatsnew/2.6.rst:546 msgid "" "The feature can be disabled entirely by running Python with the :option:`-s` " "option or setting the :envvar:`PYTHONNOUSERSITE` environment variable." msgstr "" #: ../Doc/whatsnew/2.6.rst:552 msgid ":pep:`370` - Per-user ``site-packages`` Directory" msgstr "" #: ../Doc/whatsnew/2.6.rst:553 msgid "PEP written and implemented by Christian Heimes." msgstr "" #: ../Doc/whatsnew/2.6.rst:561 msgid "PEP 371: The ``multiprocessing`` Package" msgstr "" #: ../Doc/whatsnew/2.6.rst:563 msgid "" "The new :mod:`multiprocessing` package lets Python programs create new " "processes that will perform a computation and return a result to the " "parent. The parent and child processes can communicate using queues and " "pipes, synchronize their operations using locks and semaphores, and can " "share simple arrays of data." msgstr "" #: ../Doc/whatsnew/2.6.rst:569 msgid "" "The :mod:`multiprocessing` module started out as an exact emulation of the :" "mod:`threading` module using processes instead of threads. That goal was " "discarded along the path to Python 2.6, but the general approach of the " "module is still similar. The fundamental class is the :class:`Process`, " "which is passed a callable object and a collection of arguments. The :meth:" "`start` method sets the callable running in a subprocess, after which you " "can call the :meth:`is_alive` method to check whether the subprocess is " "still running and the :meth:`join` method to wait for the process to exit." msgstr "" #: ../Doc/whatsnew/2.6.rst:579 msgid "" "Here's a simple example where the subprocess will calculate a factorial. " "The function doing the calculation is written strangely so that it takes " "significantly longer when the input argument is a multiple of 4." msgstr "" #: ../Doc/whatsnew/2.6.rst:616 msgid "" "A :class:`Queue` is used to communicate the result of the factorial. The :" "class:`Queue` object is stored in a global variable. The child process will " "use the value of the variable when the child was created; because it's a :" "class:`Queue`, parent and child can use the object to communicate. (If the " "parent were to change the value of the global variable, the child's value " "would be unaffected, and vice versa.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:624 msgid "" "Two other classes, :class:`Pool` and :class:`Manager`, provide higher-level " "interfaces. :class:`Pool` will create a fixed number of worker processes, " "and requests can then be distributed to the workers by calling :meth:`apply` " "or :meth:`apply_async` to add a single request, and :meth:`map` or :meth:" "`map_async` to add a number of requests. The following code uses a :class:" "`Pool` to spread requests across 5 worker processes and retrieve a list of " "results::" msgstr "" #: ../Doc/whatsnew/2.6.rst:651 msgid "" "The other high-level interface, the :class:`Manager` class, creates a " "separate server process that can hold master copies of Python data " "structures. Other processes can then access and modify these data " "structures using proxy objects. The following example creates a shared " "dictionary by calling the :meth:`dict` method; the worker processes then " "insert values into the dictionary. (Locking is not done for you " "automatically, which doesn't matter in this example. :class:`Manager`'s " "methods also include :meth:`Lock`, :meth:`RLock`, and :meth:`Semaphore` to " "create shared locks.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:695 msgid "This will produce the output::" msgstr "" #: ../Doc/whatsnew/2.6.rst:706 msgid "The documentation for the :mod:`multiprocessing` module." msgstr "" #: ../Doc/whatsnew/2.6.rst:709 msgid ":pep:`371` - Addition of the multiprocessing package" msgstr "" #: ../Doc/whatsnew/2.6.rst:709 msgid "" "PEP written by Jesse Noller and Richard Oudkerk; implemented by Richard " "Oudkerk and Jesse Noller." msgstr "" #: ../Doc/whatsnew/2.6.rst:718 msgid "PEP 3101: Advanced String Formatting" msgstr "" #: ../Doc/whatsnew/2.6.rst:720 msgid "" "In Python 3.0, the `%` operator is supplemented by a more powerful string " "formatting method, :meth:`format`. Support for the :meth:`str.format` " "method has been backported to Python 2.6." msgstr "" #: ../Doc/whatsnew/2.6.rst:724 msgid "" "In 2.6, both 8-bit and Unicode strings have a `.format()` method that treats " "the string as a template and takes the arguments to be formatted. The " "formatting template uses curly brackets (`{`, `}`) as special characters::" msgstr "" #: ../Doc/whatsnew/2.6.rst:737 msgid "Curly brackets can be escaped by doubling them::" msgstr "" #: ../Doc/whatsnew/2.6.rst:742 msgid "" "Field names can be integers indicating positional arguments, such as ``{0}" "``, ``{1}``, etc. or names of keyword arguments. You can also supply " "compound field names that read attributes or access dictionary keys::" msgstr "" #: ../Doc/whatsnew/2.6.rst:756 msgid "" "Note that when using dictionary-style notation such as ``[.mp4]``, you don't " "need to put any quotation marks around the string; it will look up the value " "using ``.mp4`` as the key. Strings beginning with a number will be " "converted to an integer. You can't write more complicated expressions " "inside a format string." msgstr "" #: ../Doc/whatsnew/2.6.rst:762 msgid "" "So far we've shown how to specify which field to substitute into the " "resulting string. The precise formatting used is also controllable by " "adding a colon followed by a format specifier. For example::" msgstr "" #: ../Doc/whatsnew/2.6.rst:776 msgid "Format specifiers can reference other fields through nesting::" msgstr "" #: ../Doc/whatsnew/2.6.rst:786 msgid "The alignment of a field within the desired width can be specified:" msgstr "" #: ../Doc/whatsnew/2.6.rst:789 msgid "Character" msgstr "Caractère" #: ../Doc/whatsnew/2.6.rst:789 msgid "Effect" msgstr "" #: ../Doc/whatsnew/2.6.rst:791 msgid "< (default)" msgstr "< (par défaut)" #: ../Doc/whatsnew/2.6.rst:791 msgid "Left-align" msgstr "" #: ../Doc/whatsnew/2.6.rst:792 msgid ">" msgstr ">" #: ../Doc/whatsnew/2.6.rst:792 msgid "Right-align" msgstr "" #: ../Doc/whatsnew/2.6.rst:793 msgid "^" msgstr "^" #: ../Doc/whatsnew/2.6.rst:793 msgid "Center" msgstr "" #: ../Doc/whatsnew/2.6.rst:794 msgid "=" msgstr "=" #: ../Doc/whatsnew/2.6.rst:794 msgid "(For numeric types only) Pad after the sign." msgstr "" #: ../Doc/whatsnew/2.6.rst:797 msgid "" "Format specifiers can also include a presentation type, which controls how " "the value is formatted. For example, floating-point numbers can be " "formatted as a general number or in exponential notation::" msgstr "" #: ../Doc/whatsnew/2.6.rst:806 msgid "" "A variety of presentation types are available. Consult the 2.6 " "documentation for a :ref:`complete list `; here's a sample:" msgstr "" #: ../Doc/whatsnew/2.6.rst:810 msgid "``b``" msgstr "``b``" #: ../Doc/whatsnew/2.6.rst:810 msgid "Binary. Outputs the number in base 2." msgstr "Format binaire. Affiche le nombre en base 2." #: ../Doc/whatsnew/2.6.rst:811 msgid "``c``" msgstr "``c``" #: ../Doc/whatsnew/2.6.rst:811 msgid "" "Character. Converts the integer to the corresponding Unicode character " "before printing." msgstr "" "Caractère. Convertit l'entier en le caractère unicode associé avant de " "l'afficher." #: ../Doc/whatsnew/2.6.rst:813 msgid "``d``" msgstr "``d``" #: ../Doc/whatsnew/2.6.rst:813 msgid "Decimal Integer. Outputs the number in base 10." msgstr "Entier décimal. Affiche le nombre en base 10." #: ../Doc/whatsnew/2.6.rst:814 msgid "``o``" msgstr "" #: ../Doc/whatsnew/2.6.rst:814 msgid "Octal format. Outputs the number in base 8." msgstr "Format octal. Affiche le nombre en base 8." #: ../Doc/whatsnew/2.6.rst:815 msgid "``x``" msgstr "``x``" #: ../Doc/whatsnew/2.6.rst:815 msgid "" "Hex format. Outputs the number in base 16, using lower-case letters for the " "digits above 9." msgstr "" "Format hexadécimal. Affiche le nombre en base 16 en utilisant les lettres " "minuscules pour les chiffres au-dessus de 9." #: ../Doc/whatsnew/2.6.rst:817 msgid "``e``" msgstr "" #: ../Doc/whatsnew/2.6.rst:817 msgid "" "Exponent notation. Prints the number in scientific notation using the letter " "'e' to indicate the exponent." msgstr "" #: ../Doc/whatsnew/2.6.rst:819 msgid "``g``" msgstr "" #: ../Doc/whatsnew/2.6.rst:819 msgid "" "General format. This prints the number as a fixed-point number, unless the " "number is too large, in which case it switches to 'e' exponent notation." msgstr "" #: ../Doc/whatsnew/2.6.rst:822 msgid "``n``" msgstr "``n``" #: ../Doc/whatsnew/2.6.rst:822 msgid "" "Number. This is the same as 'g' (for floats) or 'd' (for integers), except " "that it uses the current locale setting to insert the appropriate number " "separator characters." msgstr "" #: ../Doc/whatsnew/2.6.rst:825 msgid "``%``" msgstr "" #: ../Doc/whatsnew/2.6.rst:825 msgid "" "Percentage. Multiplies the number by 100 and displays in fixed ('f') format, " "followed by a percent sign." msgstr "" "Pourcentage. Multiplie le nombre par 100 et l'affiche en virgule fixe ('f'), " "suivi d'un symbole pourcent ``'%'``." #: ../Doc/whatsnew/2.6.rst:829 msgid "" "Classes and types can define a :meth:`__format__` method to control how " "they're formatted. It receives a single argument, the format specifier::" msgstr "" #: ../Doc/whatsnew/2.6.rst:838 msgid "" "There's also a :func:`format` builtin that will format a single value. It " "calls the type's :meth:`__format__` method with the provided specifier::" msgstr "" #: ../Doc/whatsnew/2.6.rst:849 msgid ":ref:`formatstrings`" msgstr ":ref:`formatstrings`" #: ../Doc/whatsnew/2.6.rst:849 msgid "The reference documentation for format fields." msgstr "" #: ../Doc/whatsnew/2.6.rst:851 msgid ":pep:`3101` - Advanced String Formatting" msgstr "" #: ../Doc/whatsnew/2.6.rst:852 msgid "PEP written by Talin. Implemented by Eric Smith." msgstr "" #: ../Doc/whatsnew/2.6.rst:859 msgid "PEP 3105: ``print`` As a Function" msgstr "" #: ../Doc/whatsnew/2.6.rst:861 msgid "" "The ``print`` statement becomes the :func:`print` function in Python 3.0. " "Making :func:`print` a function makes it possible to replace the function by " "doing ``def print(...)`` or importing a new function from somewhere else." msgstr "" #: ../Doc/whatsnew/2.6.rst:865 msgid "" "Python 2.6 has a ``__future__`` import that removes ``print`` as language " "syntax, letting you use the functional form instead. For example::" msgstr "" #: ../Doc/whatsnew/2.6.rst:871 msgid "The signature of the new function is::" msgstr "" #: ../Doc/whatsnew/2.6.rst:876 msgid "The parameters are:" msgstr "" #: ../Doc/whatsnew/2.6.rst:878 msgid "*args*: positional arguments whose values will be printed out." msgstr "" #: ../Doc/whatsnew/2.6.rst:879 msgid "*sep*: the separator, which will be printed between arguments." msgstr "" #: ../Doc/whatsnew/2.6.rst:880 msgid "" "*end*: the ending text, which will be printed after all of the arguments " "have been output." msgstr "" #: ../Doc/whatsnew/2.6.rst:882 msgid "*file*: the file object to which the output will be sent." msgstr "" #: ../Doc/whatsnew/2.6.rst:886 msgid ":pep:`3105` - Make print a function" msgstr ":pep:`3105` - Make print a function" #: ../Doc/whatsnew/2.6.rst:887 msgid "PEP written by Georg Brandl." msgstr "" #: ../Doc/whatsnew/2.6.rst:894 msgid "PEP 3110: Exception-Handling Changes" msgstr "" #: ../Doc/whatsnew/2.6.rst:896 msgid "" "One error that Python programmers occasionally make is writing the following " "code::" msgstr "" #: ../Doc/whatsnew/2.6.rst:904 msgid "" "The author is probably trying to catch both :exc:`TypeError` and :exc:" "`ValueError` exceptions, but this code actually does something different: it " "will catch :exc:`TypeError` and bind the resulting exception object to the " "local name ``\"ValueError\"``. The :exc:`ValueError` exception will not be " "caught at all. The correct code specifies a tuple of exceptions::" msgstr "" #: ../Doc/whatsnew/2.6.rst:916 msgid "" "This error happens because the use of the comma here is ambiguous: does it " "indicate two different nodes in the parse tree, or a single node that's a " "tuple?" msgstr "" #: ../Doc/whatsnew/2.6.rst:920 msgid "" "Python 3.0 makes this unambiguous by replacing the comma with the word \"as" "\". To catch an exception and store the exception object in the variable " "``exc``, you must write::" msgstr "" #: ../Doc/whatsnew/2.6.rst:929 msgid "" "Python 3.0 will only support the use of \"as\", and therefore interprets the " "first example as catching two different exceptions. Python 2.6 supports " "both the comma and \"as\", so existing code will continue to work. We " "therefore suggest using \"as\" when writing new Python code that will only " "be executed with 2.6." msgstr "" #: ../Doc/whatsnew/2.6.rst:937 msgid ":pep:`3110` - Catching Exceptions in Python 3000" msgstr "" #: ../Doc/whatsnew/2.6.rst:938 msgid "PEP written and implemented by Collin Winter." msgstr "" #: ../Doc/whatsnew/2.6.rst:945 msgid "PEP 3112: Byte Literals" msgstr "" #: ../Doc/whatsnew/2.6.rst:947 msgid "" "Python 3.0 adopts Unicode as the language's fundamental string type and " "denotes 8-bit literals differently, either as ``b'string'`` or using a :" "class:`bytes` constructor. For future compatibility, Python 2.6 adds :class:" "`bytes` as a synonym for the :class:`str` type, and it also supports the " "``b''`` notation." msgstr "" #: ../Doc/whatsnew/2.6.rst:954 msgid "" "The 2.6 :class:`str` differs from 3.0's :class:`bytes` type in various ways; " "most notably, the constructor is completely different. In 3.0, ``bytes([65, " "66, 67])`` is 3 elements long, containing the bytes representing ``ABC``; in " "2.6, ``bytes([65, 66, 67])`` returns the 12-byte string representing the :" "func:`str` of the list." msgstr "" #: ../Doc/whatsnew/2.6.rst:960 msgid "" "The primary use of :class:`bytes` in 2.6 will be to write tests of object " "type such as ``isinstance(x, bytes)``. This will help the 2to3 converter, " "which can't tell whether 2.x code intends strings to contain either " "characters or 8-bit bytes; you can now use either :class:`bytes` or :class:" "`str` to represent your intention exactly, and the resulting code will also " "be correct in Python 3.0." msgstr "" #: ../Doc/whatsnew/2.6.rst:967 msgid "" "There's also a ``__future__`` import that causes all string literals to " "become Unicode strings. This means that ``\\u`` escape sequences can be " "used to include Unicode characters::" msgstr "" #: ../Doc/whatsnew/2.6.rst:979 msgid "" "At the C level, Python 3.0 will rename the existing 8-bit string type, " "called :c:type:`PyStringObject` in Python 2.x, to :c:type:`PyBytesObject`. " "Python 2.6 uses ``#define`` to support using the names :c:func:" "`PyBytesObject`, :c:func:`PyBytes_Check`, :c:func:" "`PyBytes_FromStringAndSize`, and all the other functions and macros used " "with strings." msgstr "" #: ../Doc/whatsnew/2.6.rst:986 msgid "" "Instances of the :class:`bytes` type are immutable just as strings are. A " "new :class:`bytearray` type stores a mutable sequence of bytes::" msgstr "" #: ../Doc/whatsnew/2.6.rst:1001 msgid "" "Byte arrays support most of the methods of string types, such as :meth:" "`startswith`/:meth:`endswith`, :meth:`find`/:meth:`rfind`, and some of the " "methods of lists, such as :meth:`append`, :meth:`pop`, and :meth:`reverse`." msgstr "" #: ../Doc/whatsnew/2.6.rst:1014 msgid "" "There's also a corresponding C API, with :c:func:`PyByteArray_FromObject`, :" "c:func:`PyByteArray_FromStringAndSize`, and various other functions." msgstr "" #: ../Doc/whatsnew/2.6.rst:1021 msgid ":pep:`3112` - Bytes literals in Python 3000" msgstr ":pep:`3112` - Bytes literals in Python 3000" #: ../Doc/whatsnew/2.6.rst:1022 msgid "PEP written by Jason Orendorff; backported to 2.6 by Christian Heimes." msgstr "" #: ../Doc/whatsnew/2.6.rst:1029 msgid "PEP 3116: New I/O Library" msgstr "" #: ../Doc/whatsnew/2.6.rst:1031 msgid "" "Python's built-in file objects support a number of methods, but file-like " "objects don't necessarily support all of them. Objects that imitate files " "usually support :meth:`read` and :meth:`write`, but they may not support :" "meth:`readline`, for example. Python 3.0 introduces a layered I/O library " "in the :mod:`io` module that separates buffering and text-handling features " "from the fundamental read and write operations." msgstr "" #: ../Doc/whatsnew/2.6.rst:1039 msgid "" "There are three levels of abstract base classes provided by the :mod:`io` " "module:" msgstr "" #: ../Doc/whatsnew/2.6.rst:1042 msgid "" ":class:`RawIOBase` defines raw I/O operations: :meth:`read`, :meth:" "`readinto`, :meth:`write`, :meth:`seek`, :meth:`tell`, :meth:`truncate`, " "and :meth:`close`. Most of the methods of this class will often map to a " "single system call. There are also :meth:`readable`, :meth:`writable`, and :" "meth:`seekable` methods for determining what operations a given object will " "allow." msgstr "" #: ../Doc/whatsnew/2.6.rst:1050 msgid "" "Python 3.0 has concrete implementations of this class for files and sockets, " "but Python 2.6 hasn't restructured its file and socket objects in this way." msgstr "" #: ../Doc/whatsnew/2.6.rst:1056 msgid "" ":class:`BufferedIOBase` is an abstract base class that buffers data in " "memory to reduce the number of system calls used, making I/O processing more " "efficient. It supports all of the methods of :class:`RawIOBase`, and adds a :" "attr:`raw` attribute holding the underlying raw object." msgstr "" #: ../Doc/whatsnew/2.6.rst:1062 msgid "" "There are five concrete classes implementing this ABC. :class:" "`BufferedWriter` and :class:`BufferedReader` are for objects that support " "write-only or read-only usage that have a :meth:`seek` method for random " "access. :class:`BufferedRandom` objects support read and write access upon " "the same underlying stream, and :class:`BufferedRWPair` is for objects such " "as TTYs that have both read and write operations acting upon unconnected " "streams of data. The :class:`BytesIO` class supports reading, writing, and " "seeking over an in-memory buffer." msgstr "" #: ../Doc/whatsnew/2.6.rst:1075 msgid "" ":class:`TextIOBase`: Provides functions for reading and writing strings " "(remember, strings will be Unicode in Python 3.0), and supporting :term:" "`universal newlines`. :class:`TextIOBase` defines the :meth:`readline` " "method and supports iteration upon objects." msgstr "" #: ../Doc/whatsnew/2.6.rst:1081 msgid "" "There are two concrete implementations. :class:`TextIOWrapper` wraps a " "buffered I/O object, supporting all of the methods for text I/O and adding " "a :attr:`buffer` attribute for access to the underlying object. :class:" "`StringIO` simply buffers everything in memory without ever writing anything " "to disk." msgstr "" #: ../Doc/whatsnew/2.6.rst:1087 msgid "" "(In Python 2.6, :class:`io.StringIO` is implemented in pure Python, so it's " "pretty slow. You should therefore stick with the existing :mod:`StringIO` " "module or :mod:`cStringIO` for now. At some point Python 3.0's :mod:`io` " "module will be rewritten into C for speed, and perhaps the C implementation " "will be backported to the 2.x releases.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1093 msgid "" "In Python 2.6, the underlying implementations haven't been restructured to " "build on top of the :mod:`io` module's classes. The module is being " "provided to make it easier to write code that's forward-compatible with 3.0, " "and to save developers the effort of writing their own implementations of " "buffering and text I/O." msgstr "" #: ../Doc/whatsnew/2.6.rst:1103 msgid ":pep:`3116` - New I/O" msgstr "" #: ../Doc/whatsnew/2.6.rst:1102 msgid "" "PEP written by Daniel Stutzbach, Mike Verdone, and Guido van Rossum. Code by " "Guido van Rossum, Georg Brandl, Walter Doerwald, Jeremy Hylton, Martin von " "Löwis, Tony Lownds, and others." msgstr "" #: ../Doc/whatsnew/2.6.rst:1111 msgid "PEP 3118: Revised Buffer Protocol" msgstr "" #: ../Doc/whatsnew/2.6.rst:1113 msgid "" "The buffer protocol is a C-level API that lets Python types exchange " "pointers into their internal representations. A memory-mapped file can be " "viewed as a buffer of characters, for example, and this lets another module " "such as :mod:`re` treat memory-mapped files as a string of characters to be " "searched." msgstr "" #: ../Doc/whatsnew/2.6.rst:1119 msgid "" "The primary users of the buffer protocol are numeric-processing packages " "such as NumPy, which expose the internal representation of arrays so that " "callers can write data directly into an array instead of going through a " "slower API. This PEP updates the buffer protocol in light of experience " "from NumPy development, adding a number of new features such as indicating " "the shape of an array or locking a memory region." msgstr "" #: ../Doc/whatsnew/2.6.rst:1126 msgid "" "The most important new C API function is ``PyObject_GetBuffer(PyObject *obj, " "Py_buffer *view, int flags)``, which takes an object and a set of flags, and " "fills in the ``Py_buffer`` structure with information about the object's " "memory representation. Objects can use this operation to lock memory in " "place while an external caller could be modifying the contents, so there's a " "corresponding ``PyBuffer_Release(Py_buffer *view)`` to indicate that the " "external caller is done." msgstr "" #: ../Doc/whatsnew/2.6.rst:1138 msgid "" "The *flags* argument to :c:func:`PyObject_GetBuffer` specifies constraints " "upon the memory returned. Some examples are:" msgstr "" #: ../Doc/whatsnew/2.6.rst:1141 msgid ":const:`PyBUF_WRITABLE` indicates that the memory must be writable." msgstr "" #: ../Doc/whatsnew/2.6.rst:1143 msgid "" ":const:`PyBUF_LOCK` requests a read-only or exclusive lock on the memory." msgstr "" #: ../Doc/whatsnew/2.6.rst:1145 msgid "" ":const:`PyBUF_C_CONTIGUOUS` and :const:`PyBUF_F_CONTIGUOUS` requests a C-" "contiguous (last dimension varies the fastest) or Fortran-contiguous (first " "dimension varies the fastest) array layout." msgstr "" #: ../Doc/whatsnew/2.6.rst:1149 msgid "" "Two new argument codes for :c:func:`PyArg_ParseTuple`, ``s*`` and ``z*``, " "return locked buffer objects for a parameter." msgstr "" #: ../Doc/whatsnew/2.6.rst:1155 msgid ":pep:`3118` - Revising the buffer protocol" msgstr "" #: ../Doc/whatsnew/2.6.rst:1155 msgid "" "PEP written by Travis Oliphant and Carl Banks; implemented by Travis " "Oliphant." msgstr "" #: ../Doc/whatsnew/2.6.rst:1164 msgid "PEP 3119: Abstract Base Classes" msgstr "" #: ../Doc/whatsnew/2.6.rst:1166 msgid "" "Some object-oriented languages such as Java support interfaces, declaring " "that a class has a given set of methods or supports a given access " "protocol. Abstract Base Classes (or ABCs) are an equivalent feature for " "Python. The ABC support consists of an :mod:`abc` module containing a " "metaclass called :class:`ABCMeta`, special handling of this metaclass by " "the :func:`isinstance` and :func:`issubclass` builtins, and a collection of " "basic ABCs that the Python developers think will be widely useful. Future " "versions of Python will probably add more ABCs." msgstr "" #: ../Doc/whatsnew/2.6.rst:1176 msgid "" "Let's say you have a particular class and wish to know whether it supports " "dictionary-style access. The phrase \"dictionary-style\" is vague, however. " "It probably means that accessing items with ``obj[1]`` works. Does it imply " "that setting items with ``obj[2] = value`` works? Or that the object will " "have :meth:`keys`, :meth:`values`, and :meth:`items` methods? What about " "the iterative variants such as :meth:`iterkeys`? :meth:`copy` and :meth:" "`update`? Iterating over the object with :func:`iter`?" msgstr "" #: ../Doc/whatsnew/2.6.rst:1184 msgid "" "The Python 2.6 :mod:`collections` module includes a number of different ABCs " "that represent these distinctions. :class:`Iterable` indicates that a class " "defines :meth:`__iter__`, and :class:`Container` means the class defines a :" "meth:`__contains__` method and therefore supports ``x in y`` expressions. " "The basic dictionary interface of getting items, setting items, and :meth:" "`keys`, :meth:`values`, and :meth:`items`, is defined by the :class:" "`MutableMapping` ABC." msgstr "" #: ../Doc/whatsnew/2.6.rst:1193 msgid "" "You can derive your own classes from a particular ABC to indicate they " "support that ABC's interface::" msgstr "" #: ../Doc/whatsnew/2.6.rst:1202 msgid "" "Alternatively, you could write the class without deriving from the desired " "ABC and instead register the class by calling the ABC's :meth:`register` " "method::" msgstr "" #: ../Doc/whatsnew/2.6.rst:1213 msgid "" "For classes that you write, deriving from the ABC is probably clearer. The :" "meth:`register` method is useful when you've written a new ABC that can " "describe an existing type or class, or if you want to declare that some " "third-party class implements an ABC. For example, if you defined a :class:" "`PrintableType` ABC, it's legal to do::" msgstr "" #: ../Doc/whatsnew/2.6.rst:1225 msgid "" "Classes should obey the semantics specified by an ABC, but Python can't " "check this; it's up to the class author to understand the ABC's requirements " "and to implement the code accordingly." msgstr "" #: ../Doc/whatsnew/2.6.rst:1229 msgid "" "To check whether an object supports a particular interface, you can now " "write::" msgstr "" #: ../Doc/whatsnew/2.6.rst:1236 msgid "" "Don't feel that you must now begin writing lots of checks as in the above " "example. Python has a strong tradition of duck-typing, where explicit type-" "checking is never done and code simply calls methods on an object, trusting " "that those methods will be there and raising an exception if they aren't. " "Be judicious in checking for ABCs and only do it where it's absolutely " "necessary." msgstr "" #: ../Doc/whatsnew/2.6.rst:1243 msgid "" "You can write your own ABCs by using ``abc.ABCMeta`` as the metaclass in a " "class definition::" msgstr "" #: ../Doc/whatsnew/2.6.rst:1264 msgid "" "In the :class:`Drawable` ABC above, the :meth:`draw_doubled` method renders " "the object at twice its size and can be implemented in terms of other " "methods described in :class:`Drawable`. Classes implementing this ABC " "therefore don't need to provide their own implementation of :meth:" "`draw_doubled`, though they can do so. An implementation of :meth:`draw` is " "necessary, though; the ABC can't provide a useful generic implementation." msgstr "" #: ../Doc/whatsnew/2.6.rst:1272 msgid "" "You can apply the ``@abstractmethod`` decorator to methods such as :meth:" "`draw` that must be implemented; Python will then raise an exception for " "classes that don't define the method. Note that the exception is only raised " "when you actually try to create an instance of a subclass lacking the " "method::" msgstr "" #: ../Doc/whatsnew/2.6.rst:1287 msgid "" "Abstract data attributes can be declared using the ``@abstractproperty`` " "decorator::" msgstr "" #: ../Doc/whatsnew/2.6.rst:1297 msgid "Subclasses must then define a :meth:`readonly` property." msgstr "" #: ../Doc/whatsnew/2.6.rst:1303 msgid ":pep:`3119` - Introducing Abstract Base Classes" msgstr "" #: ../Doc/whatsnew/2.6.rst:1302 msgid "" "PEP written by Guido van Rossum and Talin. Implemented by Guido van Rossum. " "Backported to 2.6 by Benjamin Aranguren, with Alex Martelli." msgstr "" #: ../Doc/whatsnew/2.6.rst:1311 msgid "PEP 3127: Integer Literal Support and Syntax" msgstr "" #: ../Doc/whatsnew/2.6.rst:1313 msgid "" "Python 3.0 changes the syntax for octal (base-8) integer literals, prefixing " "them with \"0o\" or \"0O\" instead of a leading zero, and adds support for " "binary (base-2) integer literals, signalled by a \"0b\" or \"0B\" prefix." msgstr "" #: ../Doc/whatsnew/2.6.rst:1318 msgid "" "Python 2.6 doesn't drop support for a leading 0 signalling an octal number, " "but it does add support for \"0o\" and \"0b\"::" msgstr "" #: ../Doc/whatsnew/2.6.rst:1326 msgid "" "The :func:`oct` builtin still returns numbers prefixed with a leading zero, " "and a new :func:`bin` builtin returns the binary representation for a " "number::" msgstr "" #: ../Doc/whatsnew/2.6.rst:1337 msgid "" "The :func:`int` and :func:`long` builtins will now accept the \"0o\" and \"0b" "\" prefixes when base-8 or base-2 are requested, or when the *base* argument " "is zero (signalling that the base used should be determined from the " "string)::" msgstr "" #: ../Doc/whatsnew/2.6.rst:1355 msgid ":pep:`3127` - Integer Literal Support and Syntax" msgstr "" #: ../Doc/whatsnew/2.6.rst:1355 msgid "PEP written by Patrick Maupin; backported to 2.6 by Eric Smith." msgstr "" #: ../Doc/whatsnew/2.6.rst:1363 msgid "PEP 3129: Class Decorators" msgstr "" #: ../Doc/whatsnew/2.6.rst:1365 msgid "" "Decorators have been extended from functions to classes. It's now legal to " "write::" msgstr "" #: ../Doc/whatsnew/2.6.rst:1373 msgid "This is equivalent to::" msgstr "C’est équivalent à ::" #: ../Doc/whatsnew/2.6.rst:1382 msgid ":pep:`3129` - Class Decorators" msgstr "" #: ../Doc/whatsnew/2.6.rst:1383 msgid "PEP written by Collin Winter." msgstr "" #: ../Doc/whatsnew/2.6.rst:1390 msgid "PEP 3141: A Type Hierarchy for Numbers" msgstr "" #: ../Doc/whatsnew/2.6.rst:1392 msgid "" "Python 3.0 adds several abstract base classes for numeric types inspired by " "Scheme's numeric tower. These classes were backported to 2.6 as the :mod:" "`numbers` module." msgstr "" #: ../Doc/whatsnew/2.6.rst:1396 msgid "" "The most general ABC is :class:`Number`. It defines no operations at all, " "and only exists to allow checking if an object is a number by doing " "``isinstance(obj, Number)``." msgstr "" #: ../Doc/whatsnew/2.6.rst:1400 msgid "" ":class:`Complex` is a subclass of :class:`Number`. Complex numbers can " "undergo the basic operations of addition, subtraction, multiplication, " "division, and exponentiation, and you can retrieve the real and imaginary " "parts and obtain a number's conjugate. Python's built-in complex type is an " "implementation of :class:`Complex`." msgstr "" #: ../Doc/whatsnew/2.6.rst:1406 msgid "" ":class:`Real` further derives from :class:`Complex`, and adds operations " "that only work on real numbers: :func:`floor`, :func:`trunc`, rounding, " "taking the remainder mod N, floor division, and comparisons." msgstr "" #: ../Doc/whatsnew/2.6.rst:1411 msgid "" ":class:`Rational` numbers derive from :class:`Real`, have :attr:`numerator` " "and :attr:`denominator` properties, and can be converted to floats. Python " "2.6 adds a simple rational-number class, :class:`Fraction`, in the :mod:" "`fractions` module. (It's called :class:`Fraction` instead of :class:" "`Rational` to avoid a name clash with :class:`numbers.Rational`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1418 msgid "" ":class:`Integral` numbers derive from :class:`Rational`, and can be shifted " "left and right with ``<<`` and ``>>``, combined using bitwise operations " "such as ``&`` and ``|``, and can be used as array indexes and slice " "boundaries." msgstr "" #: ../Doc/whatsnew/2.6.rst:1423 msgid "" "In Python 3.0, the PEP slightly redefines the existing builtins :func:" "`round`, :func:`math.floor`, :func:`math.ceil`, and adds a new one, :func:" "`math.trunc`, that's been backported to Python 2.6. :func:`math.trunc` " "rounds toward zero, returning the closest :class:`Integral` that's between " "the function's argument and zero." msgstr "" #: ../Doc/whatsnew/2.6.rst:1432 msgid ":pep:`3141` - A Type Hierarchy for Numbers" msgstr "" #: ../Doc/whatsnew/2.6.rst:1432 msgid "PEP written by Jeffrey Yasskin." msgstr "" #: ../Doc/whatsnew/2.6.rst:1434 msgid "" "`Scheme's numerical tower `__, from the Guile manual." msgstr "" #: ../Doc/whatsnew/2.6.rst:1436 msgid "" "`Scheme's number datatypes `__ from the R5RS Scheme specification." msgstr "" #: ../Doc/whatsnew/2.6.rst:1440 msgid "The :mod:`fractions` Module" msgstr "" #: ../Doc/whatsnew/2.6.rst:1442 msgid "" "To fill out the hierarchy of numeric types, the :mod:`fractions` module " "provides a rational-number class. Rational numbers store their values as a " "numerator and denominator forming a fraction, and can exactly represent " "numbers such as ``2/3`` that floating-point numbers can only approximate." msgstr "" #: ../Doc/whatsnew/2.6.rst:1448 msgid "" "The :class:`Fraction` constructor takes two :class:`Integral` values that " "will be the numerator and denominator of the resulting fraction. ::" msgstr "" #: ../Doc/whatsnew/2.6.rst:1461 msgid "" "For converting floating-point numbers to rationals, the float type now has " "an :meth:`as_integer_ratio()` method that returns the numerator and " "denominator for a fraction that evaluates to the same floating-point value::" msgstr "" #: ../Doc/whatsnew/2.6.rst:1473 msgid "" "Note that values that can only be approximated by floating-point numbers, " "such as 1./3, are not simplified to the number being approximated; the " "fraction attempts to match the floating-point value **exactly**." msgstr "" #: ../Doc/whatsnew/2.6.rst:1478 msgid "" "The :mod:`fractions` module is based upon an implementation by Sjoerd " "Mullender that was in Python's :file:`Demo/classes/` directory for a long " "time. This implementation was significantly updated by Jeffrey Yasskin." msgstr "" #: ../Doc/whatsnew/2.6.rst:1487 ../Doc/whatsnew/2.7.rst:674 #: ../Doc/whatsnew/3.1.rst:118 ../Doc/whatsnew/3.2.rst:435 #: ../Doc/whatsnew/3.3.rst:778 ../Doc/whatsnew/3.4.rst:403 #: ../Doc/whatsnew/3.5.rst:703 ../Doc/whatsnew/3.6.rst:547 msgid "Some smaller changes made to the core Python language are:" msgstr "" #: ../Doc/whatsnew/2.6.rst:1489 msgid "" "Directories and zip archives containing a :file:`__main__.py` file can now " "be executed directly by passing their name to the interpreter. The directory " "or zip archive is automatically inserted as the first entry in sys.path. " "(Suggestion and initial patch by Andy Chu, subsequently revised by Phillip " "J. Eby and Nick Coghlan; :issue:`1739468`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1496 msgid "" "The :func:`hasattr` function was catching and ignoring all errors, under the " "assumption that they meant a :meth:`__getattr__` method was failing somehow " "and the return value of :func:`hasattr` would therefore be ``False``. This " "logic shouldn't be applied to :exc:`KeyboardInterrupt` and :exc:" "`SystemExit`, however; Python 2.6 will no longer discard such exceptions " "when :func:`hasattr` encounters them. (Fixed by Benjamin Peterson; :issue:" "`2196`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1504 msgid "" "When calling a function using the ``**`` syntax to provide keyword " "arguments, you are no longer required to use a Python dictionary; any " "mapping will now work::" msgstr "" #: ../Doc/whatsnew/2.6.rst:1517 msgid "(Contributed by Alexander Belopolsky; :issue:`1686487`.)" msgstr "(Contribution par Alexander Belopolsky; :issue:`1686487`.)" #: ../Doc/whatsnew/2.6.rst:1519 msgid "" "It's also become legal to provide keyword arguments after a ``*args`` " "argument to a function call. ::" msgstr "" #: ../Doc/whatsnew/2.6.rst:1528 msgid "" "Previously this would have been a syntax error. (Contributed by Amaury " "Forgeot d'Arc; :issue:`3473`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1531 msgid "" "A new builtin, ``next(iterator, [default])`` returns the next item from the " "specified iterator. If the *default* argument is supplied, it will be " "returned if *iterator* has been exhausted; otherwise, the :exc:" "`StopIteration` exception will be raised. (Backported in :issue:`2719`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1537 msgid "" "Tuples now have :meth:`index` and :meth:`count` methods matching the list " "type's :meth:`index` and :meth:`count` methods::" msgstr "" #: ../Doc/whatsnew/2.6.rst:1546 msgid "(Contributed by Raymond Hettinger)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1548 msgid "" "The built-in types now have improved support for extended slicing syntax, " "accepting various combinations of ``(start, stop, step)``. Previously, the " "support was partial and certain corner cases wouldn't work. (Implemented by " "Thomas Wouters.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1555 msgid "" "Properties now have three attributes, :attr:`getter`, :attr:`setter` and :" "attr:`deleter`, that are decorators providing useful shortcuts for adding a " "getter, setter or deleter function to an existing property. You would use " "them like this::" msgstr "" #: ../Doc/whatsnew/2.6.rst:1582 msgid "" "Several methods of the built-in set types now accept multiple iterables: :" "meth:`intersection`, :meth:`intersection_update`, :meth:`union`, :meth:" "`update`, :meth:`difference` and :meth:`difference_update`." msgstr "" #: ../Doc/whatsnew/2.6.rst:1598 msgid "" "Many floating-point features were added. The :func:`float` function will " "now turn the string ``nan`` into an IEEE 754 Not A Number value, and ``" "+inf`` and ``-inf`` into positive or negative infinity. This works on any " "platform with IEEE 754 semantics. (Contributed by Christian Heimes; :issue:" "`1635`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1604 msgid "" "Other functions in the :mod:`math` module, :func:`isinf` and :func:`isnan`, " "return true if their floating-point argument is infinite or Not A Number. (:" "issue:`1640`)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1608 msgid "" "Conversion functions were added to convert floating-point numbers into " "hexadecimal strings (:issue:`3008`). These functions convert floats to and " "from a string representation without introducing rounding errors from the " "conversion between decimal and binary. Floats have a :meth:`hex` method " "that returns a string representation, and the ``float.fromhex()`` method " "converts a string back into a number::" msgstr "" #: ../Doc/whatsnew/2.6.rst:1625 msgid "" "A numerical nicety: when creating a complex number from two floats on " "systems that support signed zeros (-0 and +0), the :func:`complex` " "constructor will now preserve the sign of the zero. (Fixed by Mark T. " "Dickinson; :issue:`1507`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1630 msgid "" "Classes that inherit a :meth:`__hash__` method from a parent class can set " "``__hash__ = None`` to indicate that the class isn't hashable. This will " "make ``hash(obj)`` raise a :exc:`TypeError` and the class will not be " "indicated as implementing the :class:`Hashable` ABC." msgstr "" #: ../Doc/whatsnew/2.6.rst:1636 msgid "" "You should do this when you've defined a :meth:`__cmp__` or :meth:`__eq__` " "method that compares objects by their value rather than by identity. All " "objects have a default hash method that uses ``id(obj)`` as the hash value. " "There's no tidy way to remove the :meth:`__hash__` method inherited from a " "parent class, so assigning ``None`` was implemented as an override. At the " "C level, extensions can set ``tp_hash`` to :c:func:" "`PyObject_HashNotImplemented`. (Fixed by Nick Coghlan and Amaury Forgeot " "d'Arc; :issue:`2235`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1646 msgid "" "The :exc:`GeneratorExit` exception now subclasses :exc:`BaseException` " "instead of :exc:`Exception`. This means that an exception handler that does " "``except Exception:`` will not inadvertently catch :exc:`GeneratorExit`. " "(Contributed by Chad Austin; :issue:`1537`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1652 msgid "" "Generator objects now have a :attr:`gi_code` attribute that refers to the " "original code object backing the generator. (Contributed by Collin Winter; :" "issue:`1473257`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1656 msgid "" "The :func:`compile` built-in function now accepts keyword arguments as well " "as positional parameters. (Contributed by Thomas Wouters; :issue:`1444529`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1660 msgid "" "The :func:`complex` constructor now accepts strings containing parenthesized " "complex numbers, meaning that ``complex(repr(cplx))`` will now round-trip " "values. For example, ``complex('(3+4j)')`` now returns the value (3+4j). (:" "issue:`1491866`)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1665 msgid "" "The string :meth:`translate` method now accepts ``None`` as the translation " "table parameter, which is treated as the identity transformation. This " "makes it easier to carry out operations that only delete characters. " "(Contributed by Bengt Richter and implemented by Raymond Hettinger; :issue:" "`1193128`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1671 msgid "" "The built-in :func:`dir` function now checks for a :meth:`__dir__` method on " "the objects it receives. This method must return a list of strings " "containing the names of valid attributes for the object, and lets the object " "control the value that :func:`dir` produces. Objects that have :meth:" "`__getattr__` or :meth:`__getattribute__` methods can use this to advertise " "pseudo-attributes they will honor. (:issue:`1591665`)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1679 msgid "" "Instance method objects have new attributes for the object and function " "comprising the method; the new synonym for :attr:`im_self` is :attr:" "`__self__`, and :attr:`im_func` is also available as :attr:`__func__`. The " "old names are still supported in Python 2.6, but are gone in 3.0." msgstr "" #: ../Doc/whatsnew/2.6.rst:1684 msgid "" "An obscure change: when you use the :func:`locals` function inside a :" "keyword:`class` statement, the resulting dictionary no longer returns free " "variables. (Free variables, in this case, are variables referenced in the :" "keyword:`class` statement that aren't attributes of the class.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1695 msgid "" "The :mod:`warnings` module has been rewritten in C. This makes it possible " "to invoke warnings from the parser, and may also make the interpreter's " "startup faster. (Contributed by Neal Norwitz and Brett Cannon; :issue:" "`1631171`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1700 msgid "" "Type objects now have a cache of methods that can reduce the work required " "to find the correct method implementation for a particular class; once " "cached, the interpreter doesn't need to traverse base classes to figure out " "the right method to call. The cache is cleared if a base class or the class " "itself is modified, so the cache should remain correct even in the face of " "Python's dynamic nature. (Original optimization implemented by Armin Rigo, " "updated for Python 2.6 by Kevin Jacobs; :issue:`1700288`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1710 msgid "" "By default, this change is only applied to types that are included with the " "Python core. Extension modules may not necessarily be compatible with this " "cache, so they must explicitly add :c:macro:`Py_TPFLAGS_HAVE_VERSION_TAG` to " "the module's ``tp_flags`` field to enable the method cache. (To be " "compatible with the method cache, the extension module's code must not " "directly access and modify the ``tp_dict`` member of any of the types it " "implements. Most modules don't do this, but it's impossible for the Python " "interpreter to determine that. See :issue:`1878` for some discussion.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1721 msgid "" "Function calls that use keyword arguments are significantly faster by doing " "a quick pointer comparison, usually saving the time of a full string " "comparison. (Contributed by Raymond Hettinger, after an initial " "implementation by Antoine Pitrou; :issue:`1819`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1726 msgid "" "All of the functions in the :mod:`struct` module have been rewritten in C, " "thanks to work at the Need For Speed sprint. (Contributed by Raymond " "Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1730 msgid "" "Some of the standard built-in types now set a bit in their type objects. " "This speeds up checking whether an object is a subclass of one of these " "types. (Contributed by Neal Norwitz.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1734 msgid "" "Unicode strings now use faster code for detecting whitespace and line " "breaks; this speeds up the :meth:`split` method by about 25% and :meth:" "`splitlines` by 35%. (Contributed by Antoine Pitrou.) Memory usage is " "reduced by using pymalloc for the Unicode string's data." msgstr "" #: ../Doc/whatsnew/2.6.rst:1740 msgid "" "The ``with`` statement now stores the :meth:`__exit__` method on the stack, " "producing a small speedup. (Implemented by Jeffrey Yasskin.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1743 msgid "" "To reduce memory usage, the garbage collector will now clear internal free " "lists when garbage-collecting the highest generation of objects. This may " "return memory to the operating system sooner." msgstr "" #: ../Doc/whatsnew/2.6.rst:1752 ../Doc/whatsnew/2.7.rst:907 msgid "Interpreter Changes" msgstr "" #: ../Doc/whatsnew/2.6.rst:1754 msgid "" "Two command-line options have been reserved for use by other Python " "implementations. The :option:`-J` switch has been reserved for use by " "Jython for Jython-specific options, such as switches that are passed to the " "underlying JVM. :option:`-X` has been reserved for options specific to a " "particular implementation of Python such as CPython, Jython, or IronPython. " "If either option is used with Python 2.6, the interpreter will report that " "the option isn't currently used." msgstr "" #: ../Doc/whatsnew/2.6.rst:1762 msgid "" "Python can now be prevented from writing :file:`.pyc` or :file:`.pyo` files " "by supplying the :option:`-B` switch to the Python interpreter, or by " "setting the :envvar:`PYTHONDONTWRITEBYTECODE` environment variable before " "running the interpreter. This setting is available to Python programs as " "the ``sys.dont_write_bytecode`` variable, and Python code can change the " "value to modify the interpreter's behaviour. (Contributed by Neal Norwitz " "and Georg Brandl.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1770 msgid "" "The encoding used for standard input, output, and standard error can be " "specified by setting the :envvar:`PYTHONIOENCODING` environment variable " "before running the interpreter. The value should be a string in the form " "```` or ``:``. The *encoding* part " "specifies the encoding's name, e.g. ``utf-8`` or ``latin-1``; the optional " "*errorhandler* part specifies what to do with characters that can't be " "handled by the encoding, and should be one of \"error\", \"ignore\", or " "\"replace\". (Contributed by Martin von Löwis.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1785 ../Doc/whatsnew/2.7.rst:1027 msgid "" "As in every release, Python's standard library received a number of " "enhancements and bug fixes. Here's a partial list of the most notable " "changes, sorted alphabetically by module name. Consult the :file:`Misc/NEWS` " "file in the source tree for a more complete list of changes, or look through " "the Subversion logs for all the details." msgstr "" #: ../Doc/whatsnew/2.6.rst:1791 msgid "" "The :mod:`asyncore` and :mod:`asynchat` modules are being actively " "maintained again, and a number of patches and bugfixes were applied. " "(Maintained by Josiah Carlson; see :issue:`1736190` for one patch.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1796 msgid "" "The :mod:`bsddb` module also has a new maintainer, Jesús Cea Avión, and the " "package is now available as a standalone package. The web page for the " "package is `www.jcea.es/programacion/pybsddb.htm `__. The plan is to remove the package from the " "standard library in Python 3.0, because its pace of releases is much more " "frequent than Python's." msgstr "" #: ../Doc/whatsnew/2.6.rst:1804 msgid "" "The :mod:`bsddb.dbshelve` module now uses the highest pickling protocol " "available, instead of restricting itself to protocol 1. (Contributed by W. " "Barnes.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1808 msgid "" "The :mod:`cgi` module will now read variables from the query string of an " "HTTP POST request. This makes it possible to use form actions with URLs " "that include query strings such as \"/cgi-bin/add.py?category=1\". " "(Contributed by Alexandre Fiori and Nubis; :issue:`1817`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1814 msgid "" "The :func:`parse_qs` and :func:`parse_qsl` functions have been relocated " "from the :mod:`cgi` module to the :mod:`urlparse` module. The versions still " "available in the :mod:`cgi` module will trigger :exc:" "`PendingDeprecationWarning` messages in 2.6 (:issue:`600362`)." msgstr "" #: ../Doc/whatsnew/2.6.rst:1820 msgid "" "The :mod:`cmath` module underwent extensive revision, contributed by Mark " "Dickinson and Christian Heimes. Five new functions were added:" msgstr "" #: ../Doc/whatsnew/2.6.rst:1824 msgid "" ":func:`polar` converts a complex number to polar form, returning the modulus " "and argument of the complex number." msgstr "" #: ../Doc/whatsnew/2.6.rst:1827 msgid "" ":func:`rect` does the opposite, turning a modulus, argument pair back into " "the corresponding complex number." msgstr "" #: ../Doc/whatsnew/2.6.rst:1830 msgid "" ":func:`phase` returns the argument (also called the angle) of a complex " "number." msgstr "" #: ../Doc/whatsnew/2.6.rst:1833 msgid "" ":func:`isnan` returns True if either the real or imaginary part of its " "argument is a NaN." msgstr "" #: ../Doc/whatsnew/2.6.rst:1836 msgid "" ":func:`isinf` returns True if either the real or imaginary part of its " "argument is infinite." msgstr "" #: ../Doc/whatsnew/2.6.rst:1839 msgid "" "The revisions also improved the numerical soundness of the :mod:`cmath` " "module. For all functions, the real and imaginary parts of the results are " "accurate to within a few units of least precision (ulps) whenever possible. " "See :issue:`1381` for the details. The branch cuts for :func:`asinh`, :func:" "`atanh`: and :func:`atan` have also been corrected." msgstr "" #: ../Doc/whatsnew/2.6.rst:1846 msgid "" "The tests for the module have been greatly expanded; nearly 2000 new test " "cases exercise the algebraic functions." msgstr "" #: ../Doc/whatsnew/2.6.rst:1849 msgid "" "On IEEE 754 platforms, the :mod:`cmath` module now handles IEEE 754 special " "values and floating-point exceptions in a manner consistent with Annex 'G' " "of the C99 standard." msgstr "" #: ../Doc/whatsnew/2.6.rst:1853 msgid "" "A new data type in the :mod:`collections` module: :class:" "`namedtuple(typename, fieldnames)` is a factory function that creates " "subclasses of the standard tuple whose fields are accessible by name as well " "as index. For example::" msgstr "" #: ../Doc/whatsnew/2.6.rst:1875 msgid "" "Several places in the standard library that returned tuples have been " "modified to return :class:`namedtuple` instances. For example, the :meth:" "`Decimal.as_tuple` method now returns a named tuple with :attr:`sign`, :attr:" "`digits`, and :attr:`exponent` fields." msgstr "" #: ../Doc/whatsnew/2.6.rst:1882 msgid "" "Another change to the :mod:`collections` module is that the :class:`deque` " "type now supports an optional *maxlen* parameter; if supplied, the deque's " "size will be restricted to no more than *maxlen* items. Adding more items " "to a full deque causes old items to be discarded." msgstr "" #: ../Doc/whatsnew/2.6.rst:1903 msgid "" "The :mod:`Cookie` module's :class:`Morsel` objects now support an :attr:" "`httponly` attribute. In some browsers. cookies with this attribute set " "cannot be accessed or manipulated by JavaScript code. (Contributed by Arvin " "Schnell; :issue:`1638033`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1908 msgid "" "A new window method in the :mod:`curses` module, :meth:`chgat`, changes the " "display attributes for a certain number of characters on a single line. " "(Contributed by Fabian Kreutz.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1918 msgid "" "The :class:`Textbox` class in the :mod:`curses.textpad` module now supports " "editing in insert mode as well as overwrite mode. Insert mode is enabled by " "supplying a true value for the *insert_mode* parameter when creating the :" "class:`Textbox` instance." msgstr "" #: ../Doc/whatsnew/2.6.rst:1923 msgid "" "The :mod:`datetime` module's :meth:`strftime` methods now support a ``%f`` " "format code that expands to the number of microseconds in the object, zero-" "padded on the left to six places. (Contributed by Skip Montanaro; :issue:" "`1158`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1928 msgid "" "The :mod:`decimal` module was updated to version 1.66 of `the General " "Decimal Specification `__. " "New features include some methods for some basic mathematical functions such " "as :meth:`exp` and :meth:`log10`::" msgstr "" #: ../Doc/whatsnew/2.6.rst:1940 msgid "" "The :meth:`as_tuple` method of :class:`Decimal` objects now returns a named " "tuple with :attr:`sign`, :attr:`digits`, and :attr:`exponent` fields." msgstr "" #: ../Doc/whatsnew/2.6.rst:1943 msgid "" "(Implemented by Facundo Batista and Mark Dickinson. Named tuple support " "added by Raymond Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1946 msgid "" "The :mod:`difflib` module's :class:`SequenceMatcher` class now returns named " "tuples representing matches, with :attr:`a`, :attr:`b`, and :attr:`size` " "attributes. (Contributed by Raymond Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1951 msgid "" "An optional ``timeout`` parameter, specifying a timeout measured in seconds, " "was added to the :class:`ftplib.FTP` class constructor as well as the :meth:" "`connect` method. (Added by Facundo Batista.) Also, the :class:`FTP` " "class's :meth:`storbinary` and :meth:`storlines` now take an optional " "*callback* parameter that will be called with each block of data after the " "data has been sent. (Contributed by Phil Schwartz; :issue:`1221598`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1959 msgid "" "The :func:`reduce` built-in function is also available in the :mod:" "`functools` module. In Python 3.0, the builtin has been dropped and :func:" "`reduce` is only available from :mod:`functools`; currently there are no " "plans to drop the builtin in the 2.x series. (Patched by Christian Heimes; :" "issue:`1739906`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1965 msgid "" "When possible, the :mod:`getpass` module will now use :file:`/dev/tty` to " "print a prompt message and read the password, falling back to standard error " "and standard input. If the password may be echoed to the terminal, a " "warning is printed before the prompt is displayed. (Contributed by Gregory " "P. Smith.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1971 msgid "" "The :func:`glob.glob` function can now return Unicode filenames if a Unicode " "path was used and Unicode filenames are matched within the directory. (:" "issue:`1001604`)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1975 msgid "" "A new function in the :mod:`heapq` module, ``merge(iter1, iter2, ...)``, " "takes any number of iterables returning data in sorted order, and returns a " "new generator that returns the contents of all the iterators, also in sorted " "order. For example::" msgstr "" #: ../Doc/whatsnew/2.6.rst:1983 msgid "" "Another new function, ``heappushpop(heap, item)``, pushes *item* onto " "*heap*, then pops off and returns the smallest item. This is more efficient " "than making a call to :func:`heappush` and then :func:`heappop`." msgstr "" #: ../Doc/whatsnew/2.6.rst:1988 msgid "" ":mod:`heapq` is now implemented to only use less-than comparison, instead of " "the less-than-or-equal comparison it previously used. This makes :mod:" "`heapq`'s usage of a type match the :meth:`list.sort` method. (Contributed " "by Raymond Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1994 msgid "" "An optional ``timeout`` parameter, specifying a timeout measured in seconds, " "was added to the :class:`httplib.HTTPConnection` and :class:" "`HTTPSConnection` class constructors. (Added by Facundo Batista.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:1999 msgid "" "Most of the :mod:`inspect` module's functions, such as :func:`getmoduleinfo` " "and :func:`getargs`, now return named tuples. In addition to behaving like " "tuples, the elements of the return value can also be accessed as " "attributes. (Contributed by Raymond Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2005 msgid "" "Some new functions in the module include :func:`isgenerator`, :func:" "`isgeneratorfunction`, and :func:`isabstract`." msgstr "" #: ../Doc/whatsnew/2.6.rst:2009 msgid "The :mod:`itertools` module gained several new functions." msgstr "" #: ../Doc/whatsnew/2.6.rst:2011 msgid "" "``izip_longest(iter1, iter2, ...[, fillvalue])`` makes tuples from each of " "the elements; if some of the iterables are shorter than others, the missing " "values are set to *fillvalue*. For example::" msgstr "" #: ../Doc/whatsnew/2.6.rst:2018 msgid "" "``product(iter1, iter2, ..., [repeat=N])`` returns the Cartesian product of " "the supplied iterables, a set of tuples containing every possible " "combination of the elements returned from each iterable. ::" msgstr "" #: ../Doc/whatsnew/2.6.rst:2027 msgid "" "The optional *repeat* keyword argument is used for taking the product of an " "iterable or a set of iterables with themselves, repeated *N* times. With a " "single iterable argument, *N*-tuples are returned::" msgstr "" #: ../Doc/whatsnew/2.6.rst:2036 msgid "With two iterables, *2N*-tuples are returned. ::" msgstr "" #: ../Doc/whatsnew/2.6.rst:2044 msgid "" "``combinations(iterable, r)`` returns sub-sequences of length *r* from the " "elements of *iterable*. ::" msgstr "" #: ../Doc/whatsnew/2.6.rst:2055 msgid "" "``permutations(iter[, r])`` returns all the permutations of length *r* of " "the iterable's elements. If *r* is not specified, it will default to the " "number of elements produced by the iterable. ::" msgstr "" #: ../Doc/whatsnew/2.6.rst:2065 msgid "" "``itertools.chain(*iterables)`` is an existing function in :mod:`itertools` " "that gained a new constructor in Python 2.6. ``itertools.chain." "from_iterable(iterable)`` takes a single iterable that should return other " "iterables. :func:`chain` will then return all the elements of the first " "iterable, then all the elements of the second, and so on. ::" msgstr "" #: ../Doc/whatsnew/2.6.rst:2075 msgid "(All contributed by Raymond Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2077 msgid "" "The :mod:`logging` module's :class:`FileHandler` class and its subclasses :" "class:`WatchedFileHandler`, :class:`RotatingFileHandler`, and :class:" "`TimedRotatingFileHandler` now have an optional *delay* parameter to their " "constructors. If *delay* is true, opening of the log file is deferred until " "the first :meth:`emit` call is made. (Contributed by Vinay Sajip.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2084 msgid "" ":class:`TimedRotatingFileHandler` also has a *utc* constructor parameter. " "If the argument is true, UTC time will be used in determining when midnight " "occurs and in generating filenames; otherwise local time will be used." msgstr "" #: ../Doc/whatsnew/2.6.rst:2089 msgid "Several new functions were added to the :mod:`math` module:" msgstr "" #: ../Doc/whatsnew/2.6.rst:2091 msgid "" ":func:`~math.isinf` and :func:`~math.isnan` determine whether a given float " "is a (positive or negative) infinity or a NaN (Not a Number), respectively." msgstr "" #: ../Doc/whatsnew/2.6.rst:2094 msgid "" ":func:`~math.copysign` copies the sign bit of an IEEE 754 number, returning " "the absolute value of *x* combined with the sign bit of *y*. For example, " "``math.copysign(1, -0.0)`` returns -1.0. (Contributed by Christian Heimes.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2099 msgid "" ":func:`~math.factorial` computes the factorial of a number. (Contributed by " "Raymond Hettinger; :issue:`2138`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2102 msgid "" ":func:`~math.fsum` adds up the stream of numbers from an iterable, and is " "careful to avoid loss of precision through using partial sums. (Contributed " "by Jean Brouwers, Raymond Hettinger, and Mark Dickinson; :issue:`2819`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2107 msgid "" ":func:`~math.acosh`, :func:`~math.asinh` and :func:`~math.atanh` compute the " "inverse hyperbolic functions." msgstr "" #: ../Doc/whatsnew/2.6.rst:2110 msgid ":func:`~math.log1p` returns the natural logarithm of *1+x* (base *e*)." msgstr "" #: ../Doc/whatsnew/2.6.rst:2113 msgid "" ":func:`trunc` rounds a number toward zero, returning the closest :class:" "`Integral` that's between the function's argument and zero. Added as part of " "the backport of `PEP 3141's type hierarchy for numbers <#pep-3141>`__." msgstr "" #: ../Doc/whatsnew/2.6.rst:2118 msgid "" "The :mod:`math` module has been improved to give more consistent behaviour " "across platforms, especially with respect to handling of floating-point " "exceptions and IEEE 754 special values." msgstr "" #: ../Doc/whatsnew/2.6.rst:2122 msgid "" "Whenever possible, the module follows the recommendations of the C99 " "standard about 754's special values. For example, ``sqrt(-1.)`` should now " "give a :exc:`ValueError` across almost all platforms, while " "``sqrt(float('NaN'))`` should return a NaN on all IEEE 754 platforms. Where " "Annex 'F' of the C99 standard recommends signaling 'divide-by-zero' or " "'invalid', Python will raise :exc:`ValueError`. Where Annex 'F' of the C99 " "standard recommends signaling 'overflow', Python will raise :exc:" "`OverflowError`. (See :issue:`711019` and :issue:`1640`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2132 msgid "(Contributed by Christian Heimes and Mark Dickinson.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2134 msgid "" ":class:`mmap` objects now have a :meth:`rfind` method that searches for a " "substring beginning at the end of the string and searching backwards. The :" "meth:`find` method also gained an *end* parameter giving an index at which " "to stop searching. (Contributed by John Lenton.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2140 msgid "" "The :mod:`operator` module gained a :func:`methodcaller` function that takes " "a name and an optional set of arguments, returning a callable that will call " "the named function on any arguments passed to it. For example::" msgstr "" #: ../Doc/whatsnew/2.6.rst:2150 msgid "(Contributed by Georg Brandl, after a suggestion by Gregory Petrosyan.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2152 msgid "" "The :func:`attrgetter` function now accepts dotted names and performs the " "corresponding attribute lookups::" msgstr "" #: ../Doc/whatsnew/2.6.rst:2162 msgid "(Contributed by Georg Brandl, after a suggestion by Barry Warsaw.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2164 msgid "" "The :mod:`os` module now wraps several new system calls. ``fchmod(fd, " "mode)`` and ``fchown(fd, uid, gid)`` change the mode and ownership of an " "opened file, and ``lchmod(path, mode)`` changes the mode of a symlink. " "(Contributed by Georg Brandl and Christian Heimes.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2170 msgid "" ":func:`chflags` and :func:`lchflags` are wrappers for the corresponding " "system calls (where they're available), changing the flags set on a file. " "Constants for the flag values are defined in the :mod:`stat` module; some " "possible values include :const:`UF_IMMUTABLE` to signal the file may not be " "changed and :const:`UF_APPEND` to indicate that data can only be appended to " "the file. (Contributed by M. Levinson.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2178 msgid "" "``os.closerange(low, high)`` efficiently closes all file descriptors from " "*low* to *high*, ignoring any errors and not including *high* itself. This " "function is now used by the :mod:`subprocess` module to make starting " "processes faster. (Contributed by Georg Brandl; :issue:`1663329`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2183 msgid "" "The ``os.environ`` object's :meth:`clear` method will now unset the " "environment variables using :func:`os.unsetenv` in addition to clearing the " "object's keys. (Contributed by Martin Horcicka; :issue:`1181`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2187 msgid "" "The :func:`os.walk` function now has a ``followlinks`` parameter. If set to " "True, it will follow symlinks pointing to directories and visit the " "directory's contents. For backward compatibility, the parameter's default " "value is false. Note that the function can fall into an infinite recursion " "if there's a symlink that points to a parent directory. (:issue:`1273829`)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2194 msgid "" "In the :mod:`os.path` module, the :func:`splitext` function has been changed " "to not split on leading period characters. This produces better results when " "operating on Unix's dot-files. For example, ``os.path.splitext('.ipython')`` " "now returns ``('.ipython', '')`` instead of ``('', '.ipython')``. (:issue:" "`1115886`)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2201 msgid "" "A new function, ``os.path.relpath(path, start='.')``, returns a relative " "path from the ``start`` path, if it's supplied, or from the current working " "directory to the destination ``path``. (Contributed by Richard Barran; :" "issue:`1339796`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2206 msgid "" "On Windows, :func:`os.path.expandvars` will now expand environment variables " "given in the form \"%var%\", and \"~user\" will be expanded into the user's " "home directory path. (Contributed by Josiah Carlson; :issue:`957650`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2211 msgid "" "The Python debugger provided by the :mod:`pdb` module gained a new command: " "\"run\" restarts the Python program being debugged and can optionally take " "new command-line arguments for the program. (Contributed by Rocky " "Bernstein; :issue:`1393667`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2216 msgid "" "The :func:`pdb.post_mortem` function, used to begin debugging a traceback, " "will now use the traceback returned by :func:`sys.exc_info` if no traceback " "is supplied. (Contributed by Facundo Batista; :issue:`1106316`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2221 msgid "" "The :mod:`pickletools` module now has an :func:`optimize` function that " "takes a string containing a pickle and removes some unused opcodes, " "returning a shorter pickle that contains the same data structure. " "(Contributed by Raymond Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2226 msgid "" "A :func:`get_data` function was added to the :mod:`pkgutil` module that " "returns the contents of resource files included with an installed Python " "package. For example::" msgstr "" #: ../Doc/whatsnew/2.6.rst:2241 msgid "(Contributed by Paul Moore; :issue:`2439`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2243 msgid "" "The :mod:`pyexpat` module's :class:`Parser` objects now allow setting their :" "attr:`buffer_size` attribute to change the size of the buffer used to hold " "character data. (Contributed by Achim Gaedke; :issue:`1137`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2248 msgid "" "The :mod:`Queue` module now provides queue variants that retrieve entries in " "different orders. The :class:`PriorityQueue` class stores queued items in a " "heap and retrieves them in priority order, and :class:`LifoQueue` retrieves " "the most recently added entries first, meaning that it behaves like a stack. " "(Contributed by Raymond Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2255 msgid "" "The :mod:`random` module's :class:`Random` objects can now be pickled on a " "32-bit system and unpickled on a 64-bit system, and vice versa. " "Unfortunately, this change also means that Python 2.6's :class:`Random` " "objects can't be unpickled correctly on earlier versions of Python. " "(Contributed by Shawn Ligocki; :issue:`1727780`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2262 msgid "" "The new ``triangular(low, high, mode)`` function returns random numbers " "following a triangular distribution. The returned values are between *low* " "and *high*, not including *high* itself, and with *mode* as the most " "frequently occurring value in the distribution. (Contributed by Wladmir van " "der Laan and Raymond Hettinger; :issue:`1681432`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2269 msgid "" "Long regular expression searches carried out by the :mod:`re` module will " "check for signals being delivered, so time-consuming searches can now be " "interrupted. (Contributed by Josh Hoyt and Ralf Schmitt; :issue:`846388`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2274 msgid "" "The regular expression module is implemented by compiling bytecodes for a " "tiny regex-specific virtual machine. Untrusted code could create malicious " "strings of bytecode directly and cause crashes, so Python 2.6 includes a " "verifier for the regex bytecode. (Contributed by Guido van Rossum from work " "for Google App Engine; :issue:`3487`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2281 msgid "" "The :mod:`rlcompleter` module's :meth:`Completer.complete()` method will now " "ignore exceptions triggered while evaluating a name. (Fixed by Lorenz " "Quack; :issue:`2250`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2285 msgid "" "The :mod:`sched` module's :class:`scheduler` instances now have a read-only :" "attr:`queue` attribute that returns the contents of the scheduler's queue, " "represented as a list of named tuples with the fields ``(time, priority, " "action, argument)``. (Contributed by Raymond Hettinger; :issue:`1861`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2291 msgid "" "The :mod:`select` module now has wrapper functions for the Linux :c:func:" "`epoll` and BSD :c:func:`kqueue` system calls. :meth:`modify` method was " "added to the existing :class:`poll` objects; ``pollobj.modify(fd, " "eventmask)`` takes a file descriptor or file object and an event mask, " "modifying the recorded event mask for that file. (Contributed by Christian " "Heimes; :issue:`1657`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2299 msgid "" "The :func:`shutil.copytree` function now has an optional *ignore* argument " "that takes a callable object. This callable will receive each directory " "path and a list of the directory's contents, and returns a list of names " "that will be ignored, not copied." msgstr "" #: ../Doc/whatsnew/2.6.rst:2304 msgid "" "The :mod:`shutil` module also provides an :func:`ignore_patterns` function " "for use with this new parameter. :func:`ignore_patterns` takes an arbitrary " "number of glob-style patterns and returns a callable that will ignore any " "files and directories that match any of these patterns. The following " "example copies a directory tree, but skips both :file:`.svn` directories and " "Emacs backup files, which have names ending with '~'::" msgstr "" #: ../Doc/whatsnew/2.6.rst:2315 msgid "(Contributed by Tarek Ziadé; :issue:`2663`.)" msgstr "(Contribution par Tarek Ziadé; :issue:`2663`.)" #: ../Doc/whatsnew/2.6.rst:2317 msgid "" "Integrating signal handling with GUI handling event loops like those used by " "Tkinter or GTk+ has long been a problem; most software ends up polling, " "waking up every fraction of a second to check if any GUI events have " "occurred. The :mod:`signal` module can now make this more efficient. Calling " "``signal.set_wakeup_fd(fd)`` sets a file descriptor to be used; when a " "signal is received, a byte is written to that file descriptor. There's also " "a C-level function, :c:func:`PySignal_SetWakeupFd`, for setting the " "descriptor." msgstr "" #: ../Doc/whatsnew/2.6.rst:2327 msgid "" "Event loops will use this by opening a pipe to create two descriptors, one " "for reading and one for writing. The writable descriptor will be passed to :" "func:`set_wakeup_fd`, and the readable descriptor will be added to the list " "of descriptors monitored by the event loop via :c:func:`select` or :c:func:" "`poll`. On receiving a signal, a byte will be written and the main event " "loop will be woken up, avoiding the need to poll." msgstr "" #: ../Doc/whatsnew/2.6.rst:2335 msgid "(Contributed by Adam Olsen; :issue:`1583`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2337 msgid "" "The :func:`siginterrupt` function is now available from Python code, and " "allows changing whether signals can interrupt system calls or not. " "(Contributed by Ralf Schmitt.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2341 msgid "" "The :func:`setitimer` and :func:`getitimer` functions have also been added " "(where they're available). :func:`setitimer` allows setting interval timers " "that will cause a signal to be delivered to the process after a specified " "time, measured in wall-clock time, consumed process time, or combined process" "+system time. (Contributed by Guilherme Polo; :issue:`2240`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2348 msgid "" "The :mod:`smtplib` module now supports SMTP over SSL thanks to the addition " "of the :class:`SMTP_SSL` class. This class supports an interface identical " "to the existing :class:`SMTP` class. (Contributed by Monty Taylor.) Both " "class constructors also have an optional ``timeout`` parameter that " "specifies a timeout for the initial connection attempt, measured in " "seconds. (Contributed by Facundo Batista.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2356 msgid "" "An implementation of the LMTP protocol (:rfc:`2033`) was also added to the " "module. LMTP is used in place of SMTP when transferring e-mail between " "agents that don't manage a mail queue. (LMTP implemented by Leif Hedstrom; :" "issue:`957003`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2361 msgid "" ":meth:`SMTP.starttls` now complies with :rfc:`3207` and forgets any " "knowledge obtained from the server not obtained from the TLS negotiation " "itself. (Patch contributed by Bill Fenner; :issue:`829951`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2366 msgid "" "The :mod:`socket` module now supports TIPC (http://tipc.sourceforge.net/), a " "high-performance non-IP-based protocol designed for use in clustered " "environments. TIPC addresses are 4- or 5-tuples. (Contributed by Alberto " "Bertogli; :issue:`1646`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2371 msgid "" "A new function, :func:`create_connection`, takes an address and connects to " "it using an optional timeout value, returning the connected socket object. " "This function also looks up the address's type and connects to it using IPv4 " "or IPv6 as appropriate. Changing your code to use :func:`create_connection` " "instead of ``socket(socket.AF_INET, ...)`` may be all that's required to " "make your code work with IPv6." msgstr "" #: ../Doc/whatsnew/2.6.rst:2379 msgid "" "The base classes in the :mod:`SocketServer` module now support calling a :" "meth:`handle_timeout` method after a span of inactivity specified by the " "server's :attr:`timeout` attribute. (Contributed by Michael Pomraning.) " "The :meth:`serve_forever` method now takes an optional poll interval " "measured in seconds, controlling how often the server will check for a " "shutdown request. (Contributed by Pedro Werneck and Jeffrey Yasskin; :issue:" "`742598`, :issue:`1193577`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2388 msgid "" "The :mod:`sqlite3` module, maintained by Gerhard Häring, has been updated " "from version 2.3.2 in Python 2.5 to version 2.4.1." msgstr "" #: ../Doc/whatsnew/2.6.rst:2392 msgid "" "The :mod:`struct` module now supports the C99 :c:type:`_Bool` type, using " "the format character ``'?'``. (Contributed by David Remahl.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2396 msgid "" "The :class:`Popen` objects provided by the :mod:`subprocess` module now " "have :meth:`terminate`, :meth:`kill`, and :meth:`send_signal` methods. On " "Windows, :meth:`send_signal` only supports the :const:`SIGTERM` signal, and " "all these methods are aliases for the Win32 API function :c:func:" "`TerminateProcess`. (Contributed by Christian Heimes.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2403 msgid "" "A new variable in the :mod:`sys` module, :attr:`float_info`, is an object " "containing information derived from the :file:`float.h` file about the " "platform's floating-point support. Attributes of this object include :attr:" "`mant_dig` (number of digits in the mantissa), :attr:`epsilon` (smallest " "difference between 1.0 and the next largest value representable), and " "several others. (Contributed by Christian Heimes; :issue:`1534`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2411 msgid "" "Another new variable, :attr:`dont_write_bytecode`, controls whether Python " "writes any :file:`.pyc` or :file:`.pyo` files on importing a module. If this " "variable is true, the compiled files are not written. The variable is " "initially set on start-up by supplying the :option:`-B` switch to the Python " "interpreter, or by setting the :envvar:`PYTHONDONTWRITEBYTECODE` environment " "variable before running the interpreter. Python code can subsequently " "change the value of this variable to control whether bytecode files are " "written or not. (Contributed by Neal Norwitz and Georg Brandl.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2422 msgid "" "Information about the command-line arguments supplied to the Python " "interpreter is available by reading attributes of a named tuple available as " "``sys.flags``. For example, the :attr:`verbose` attribute is true if Python " "was executed in verbose mode, :attr:`debug` is true in debugging mode, etc. " "These attributes are all read-only. (Contributed by Christian Heimes.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2430 msgid "" "A new function, :func:`getsizeof`, takes a Python object and returns the " "amount of memory used by the object, measured in bytes. Built-in objects " "return correct results; third-party extensions may not, but can define a :" "meth:`__sizeof__` method to return the object's size. (Contributed by Robert " "Schuppenies; :issue:`2898`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2437 msgid "" "It's now possible to determine the current profiler and tracer functions by " "calling :func:`sys.getprofile` and :func:`sys.gettrace`. (Contributed by " "Georg Brandl; :issue:`1648`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2441 msgid "" "The :mod:`tarfile` module now supports POSIX.1-2001 (pax) tarfiles in " "addition to the POSIX.1-1988 (ustar) and GNU tar formats that were already " "supported. The default format is GNU tar; specify the ``format`` parameter " "to open a file using a different format::" msgstr "" #: ../Doc/whatsnew/2.6.rst:2449 msgid "" "The new ``encoding`` and ``errors`` parameters specify an encoding and an " "error handling scheme for character conversions. ``'strict'``, " "``'ignore'``, and ``'replace'`` are the three standard ways Python can " "handle errors,; ``'utf-8'`` is a special value that replaces bad characters " "with their UTF-8 representation. (Character conversions occur because the " "PAX format supports Unicode filenames, defaulting to UTF-8 encoding.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2457 msgid "" "The :meth:`TarFile.add` method now accepts an ``exclude`` argument that's a " "function that can be used to exclude certain filenames from an archive. The " "function must take a filename and return true if the file should be excluded " "or false if it should be archived. The function is applied to both the name " "initially passed to :meth:`add` and to the names of files in recursively-" "added directories." msgstr "" #: ../Doc/whatsnew/2.6.rst:2465 msgid "(All changes contributed by Lars Gustäbel)." msgstr "" #: ../Doc/whatsnew/2.6.rst:2467 msgid "" "An optional ``timeout`` parameter was added to the :class:`telnetlib.Telnet` " "class constructor, specifying a timeout measured in seconds. (Added by " "Facundo Batista.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2471 msgid "" "The :class:`tempfile.NamedTemporaryFile` class usually deletes the temporary " "file it created when the file is closed. This behaviour can now be changed " "by passing ``delete=False`` to the constructor. (Contributed by Damien " "Miller; :issue:`1537850`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2476 msgid "" "A new class, :class:`SpooledTemporaryFile`, behaves like a temporary file " "but stores its data in memory until a maximum size is exceeded. On reaching " "that limit, the contents will be written to an on-disk temporary file. " "(Contributed by Dustin J. Mitchell.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2481 msgid "" "The :class:`NamedTemporaryFile` and :class:`SpooledTemporaryFile` classes " "both work as context managers, so you can write ``with tempfile." "NamedTemporaryFile() as tmp: ...``. (Contributed by Alexander Belopolsky; :" "issue:`2021`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2486 msgid "" "The :mod:`test.test_support` module gained a number of context managers " "useful for writing tests. :func:`EnvironmentVarGuard` is a context manager " "that temporarily changes environment variables and automatically restores " "them to their old values." msgstr "" #: ../Doc/whatsnew/2.6.rst:2492 msgid "" "Another context manager, :class:`TransientResource`, can surround calls to " "resources that may or may not be available; it will catch and ignore a " "specified list of exceptions. For example, a network test may ignore " "certain failures when connecting to an external web site::" msgstr "" #: ../Doc/whatsnew/2.6.rst:2503 msgid "" "Finally, :func:`check_warnings` resets the :mod:`warning` module's warning " "filters and returns an object that will record all warning messages " "triggered (:issue:`3781`)::" msgstr "" #: ../Doc/whatsnew/2.6.rst:2513 ../Doc/whatsnew/3.1.rst:413 msgid "(Contributed by Brett Cannon.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2515 msgid "" "The :mod:`textwrap` module can now preserve existing whitespace at the " "beginnings and ends of the newly-created lines by specifying " "``drop_whitespace=False`` as an argument::" msgstr "" #: ../Doc/whatsnew/2.6.rst:2534 msgid "(Contributed by Dwayne Bailey; :issue:`1581073`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2536 msgid "" "The :mod:`threading` module API is being changed to use properties such as :" "attr:`daemon` instead of :meth:`setDaemon` and :meth:`isDaemon` methods, and " "some methods have been renamed to use underscores instead of camel-case; for " "example, the :meth:`activeCount` method is renamed to :meth:`active_count`. " "Both the 2.6 and 3.0 versions of the module support the same properties and " "renamed methods, but don't remove the old methods. No date has been set for " "the deprecation of the old APIs in Python 3.x; the old APIs won't be removed " "in any 2.x version. (Carried out by several people, most notably Benjamin " "Peterson.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2547 msgid "" "The :mod:`threading` module's :class:`Thread` objects gained an :attr:" "`ident` property that returns the thread's identifier, a nonzero integer. " "(Contributed by Gregory P. Smith; :issue:`2871`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2552 msgid "" "The :mod:`timeit` module now accepts callables as well as strings for the " "statement being timed and for the setup code. Two convenience functions were " "added for creating :class:`Timer` instances: ``repeat(stmt, setup, time, " "repeat, number)`` and ``timeit(stmt, setup, time, number)`` create an " "instance and call the corresponding method. (Contributed by Erik Demaine; :" "issue:`1533909`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2561 msgid "" "The :mod:`Tkinter` module now accepts lists and tuples for options, " "separating the elements by spaces before passing the resulting value to Tcl/" "Tk. (Contributed by Guilherme Polo; :issue:`2906`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2566 msgid "" "The :mod:`turtle` module for turtle graphics was greatly enhanced by Gregor " "Lingl. New features in the module include:" msgstr "" #: ../Doc/whatsnew/2.6.rst:2569 msgid "Better animation of turtle movement and rotation." msgstr "" #: ../Doc/whatsnew/2.6.rst:2570 msgid "" "Control over turtle movement using the new :meth:`delay`, :meth:`tracer`, " "and :meth:`speed` methods." msgstr "" #: ../Doc/whatsnew/2.6.rst:2572 msgid "" "The ability to set new shapes for the turtle, and to define a new coordinate " "system." msgstr "" #: ../Doc/whatsnew/2.6.rst:2574 msgid "Turtles now have an :meth:`undo()` method that can roll back actions." msgstr "" #: ../Doc/whatsnew/2.6.rst:2575 msgid "" "Simple support for reacting to input events such as mouse and keyboard " "activity, making it possible to write simple games." msgstr "" #: ../Doc/whatsnew/2.6.rst:2577 msgid "" "A :file:`turtle.cfg` file can be used to customize the starting appearance " "of the turtle's screen." msgstr "" #: ../Doc/whatsnew/2.6.rst:2579 msgid "" "The module's docstrings can be replaced by new docstrings that have been " "translated into another language." msgstr "" #: ../Doc/whatsnew/2.6.rst:2582 msgid "(:issue:`1513695`)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2584 msgid "" "An optional ``timeout`` parameter was added to the :func:`urllib.urlopen` " "function and the :class:`urllib.ftpwrapper` class constructor, as well as " "the :func:`urllib2.urlopen` function. The parameter specifies a timeout " "measured in seconds. For example::" msgstr "" #: ../Doc/whatsnew/2.6.rst:2597 msgid "(Added by Facundo Batista.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2599 msgid "" "The Unicode database provided by the :mod:`unicodedata` module has been " "updated to version 5.1.0. (Updated by Martin von Löwis; :issue:`3811`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2603 msgid "" "The :mod:`warnings` module's :func:`formatwarning` and :func:`showwarning` " "gained an optional *line* argument that can be used to supply the line of " "source code. (Added as part of :issue:`1631171`, which re-implemented part " "of the :mod:`warnings` module in C code.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2608 msgid "" "A new function, :func:`catch_warnings`, is a context manager intended for " "testing purposes that lets you temporarily modify the warning filters and " "then restore their original values (:issue:`3781`)." msgstr "" #: ../Doc/whatsnew/2.6.rst:2612 msgid "" "The XML-RPC :class:`SimpleXMLRPCServer` and :class:`DocXMLRPCServer` classes " "can now be prevented from immediately opening and binding to their socket by " "passing True as the ``bind_and_activate`` constructor parameter. This can " "be used to modify the instance's :attr:`allow_reuse_address` attribute " "before calling the :meth:`server_bind` and :meth:`server_activate` methods " "to open the socket and begin listening for connections. (Contributed by " "Peter Parente; :issue:`1599845`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2621 msgid "" ":class:`SimpleXMLRPCServer` also has a :attr:`_send_traceback_header` " "attribute; if true, the exception and formatted traceback are returned as " "HTTP headers \"X-Exception\" and \"X-Traceback\". This feature is for " "debugging purposes only and should not be used on production servers because " "the tracebacks might reveal passwords or other sensitive information. " "(Contributed by Alan McIntyre as part of his project for Google's Summer of " "Code 2007.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2629 msgid "" "The :mod:`xmlrpclib` module no longer automatically converts :class:" "`datetime.date` and :class:`datetime.time` to the :class:`xmlrpclib." "DateTime` type; the conversion semantics were not necessarily correct for " "all applications. Code using :mod:`xmlrpclib` should convert :class:`date` " "and :class:`time` instances. (:issue:`1330538`) The code can also handle " "dates before 1900 (contributed by Ralf Schmitt; :issue:`2014`) and 64-bit " "integers represented by using ```` in XML-RPC responses (contributed by " "Riku Lindblad; :issue:`2985`)." msgstr "" #: ../Doc/whatsnew/2.6.rst:2639 msgid "" "The :mod:`zipfile` module's :class:`ZipFile` class now has :meth:`extract` " "and :meth:`extractall` methods that will unpack a single file or all the " "files in the archive to the current directory, or to a specified directory::" msgstr "" #: ../Doc/whatsnew/2.6.rst:2653 msgid "(Contributed by Alan McIntyre; :issue:`467924`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2655 msgid "" "The :meth:`open`, :meth:`read` and :meth:`extract` methods can now take " "either a filename or a :class:`ZipInfo` object. This is useful when an " "archive accidentally contains a duplicated filename. (Contributed by Graham " "Horler; :issue:`1775025`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2660 msgid "" "Finally, :mod:`zipfile` now supports using Unicode filenames for archived " "files. (Contributed by Alexey Borzenkov; :issue:`1734346`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2667 msgid "The :mod:`ast` module" msgstr "" #: ../Doc/whatsnew/2.6.rst:2669 msgid "" "The :mod:`ast` module provides an Abstract Syntax Tree representation of " "Python code, and Armin Ronacher contributed a set of helper functions that " "perform a variety of common tasks. These will be useful for HTML templating " "packages, code analyzers, and similar tools that process Python code." msgstr "" #: ../Doc/whatsnew/2.6.rst:2676 msgid "" "The :func:`parse` function takes an expression and returns an AST. The :func:" "`dump` function outputs a representation of a tree, suitable for debugging::" msgstr "" #: ../Doc/whatsnew/2.6.rst:2690 msgid "This outputs a deeply nested tree::" msgstr "" #: ../Doc/whatsnew/2.6.rst:2723 msgid "" "The :func:`literal_eval` method takes a string or an AST representing a " "literal expression, parses and evaluates it, and returns the resulting " "value. A literal expression is a Python expression containing only strings, " "numbers, dictionaries, etc. but no statements or function calls. If you " "need to evaluate an expression but cannot accept the security risk of using " "an :func:`eval` call, :func:`literal_eval` will handle it safely::" msgstr "" #: ../Doc/whatsnew/2.6.rst:2739 msgid "" "The module also includes :class:`NodeVisitor` and :class:`NodeTransformer` " "classes for traversing and modifying an AST, and functions for common " "transformations such as changing line numbers." msgstr "" #: ../Doc/whatsnew/2.6.rst:2747 msgid "The :mod:`future_builtins` module" msgstr "" #: ../Doc/whatsnew/2.6.rst:2749 msgid "" "Python 3.0 makes many changes to the repertoire of built-in functions, and " "most of the changes can't be introduced in the Python 2.x series because " "they would break compatibility. The :mod:`future_builtins` module provides " "versions of these built-in functions that can be imported when writing 3.0-" "compatible code." msgstr "" #: ../Doc/whatsnew/2.6.rst:2756 msgid "The functions in this module currently include:" msgstr "" #: ../Doc/whatsnew/2.6.rst:2758 msgid "" "``ascii(obj)``: equivalent to :func:`repr`. In Python 3.0, :func:`repr` " "will return a Unicode string, while :func:`ascii` will return a pure ASCII " "bytestring." msgstr "" #: ../Doc/whatsnew/2.6.rst:2762 msgid "" "``filter(predicate, iterable)``, ``map(func, iterable1, ...)``: the 3.0 " "versions return iterators, unlike the 2.x builtins which return lists." msgstr "" #: ../Doc/whatsnew/2.6.rst:2766 msgid "" "``hex(value)``, ``oct(value)``: instead of calling the :meth:`__hex__` or :" "meth:`__oct__` methods, these versions will call the :meth:`__index__` " "method and convert the result to hexadecimal or octal. :func:`oct` will use " "the new ``0o`` notation for its result." msgstr "" #: ../Doc/whatsnew/2.6.rst:2775 msgid "The :mod:`json` module: JavaScript Object Notation" msgstr "" #: ../Doc/whatsnew/2.6.rst:2777 msgid "" "The new :mod:`json` module supports the encoding and decoding of Python " "types in JSON (Javascript Object Notation). JSON is a lightweight " "interchange format often used in web applications. For more information " "about JSON, see http://www.json.org." msgstr "" #: ../Doc/whatsnew/2.6.rst:2782 msgid "" ":mod:`json` comes with support for decoding and encoding most built-in " "Python types. The following example encodes and decodes a dictionary::" msgstr "" #: ../Doc/whatsnew/2.6.rst:2793 msgid "" "It's also possible to write your own decoders and encoders to support more " "types. Pretty-printing of the JSON strings is also supported." msgstr "" #: ../Doc/whatsnew/2.6.rst:2796 msgid ":mod:`json` (originally called simplejson) was written by Bob Ippolito." msgstr "" #: ../Doc/whatsnew/2.6.rst:2803 msgid "The :mod:`plistlib` module: A Property-List Parser" msgstr "" #: ../Doc/whatsnew/2.6.rst:2805 msgid "" "The ``.plist`` format is commonly used on Mac OS X to store basic data types " "(numbers, strings, lists, and dictionaries) by serializing them into an XML-" "based format. It resembles the XML-RPC serialization of data types." msgstr "" #: ../Doc/whatsnew/2.6.rst:2810 msgid "" "Despite being primarily used on Mac OS X, the format has nothing Mac-" "specific about it and the Python implementation works on any platform that " "Python supports, so the :mod:`plistlib` module has been promoted to the " "standard library." msgstr "" #: ../Doc/whatsnew/2.6.rst:2815 msgid "Using the module is simple::" msgstr "" #: ../Doc/whatsnew/2.6.rst:2842 msgid "ctypes Enhancements" msgstr "" #: ../Doc/whatsnew/2.6.rst:2844 msgid "" "Thomas Heller continued to maintain and enhance the :mod:`ctypes` module." msgstr "" #: ../Doc/whatsnew/2.6.rst:2847 msgid "" ":mod:`ctypes` now supports a :class:`c_bool` datatype that represents the " "C99 ``bool`` type. (Contributed by David Remahl; :issue:`1649190`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2851 msgid "" "The :mod:`ctypes` string, buffer and array types have improved support for " "extended slicing syntax, where various combinations of ``(start, stop, " "step)`` are supplied. (Implemented by Thomas Wouters.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2858 msgid "" "All :mod:`ctypes` data types now support :meth:`from_buffer` and :meth:" "`from_buffer_copy` methods that create a ctypes instance based on a provided " "buffer object. :meth:`from_buffer_copy` copies the contents of the object, " "while :meth:`from_buffer` will share the same memory area." msgstr "" #: ../Doc/whatsnew/2.6.rst:2865 msgid "" "A new calling convention tells :mod:`ctypes` to clear the ``errno`` or Win32 " "LastError variables at the outset of each wrapped call. (Implemented by " "Thomas Heller; :issue:`1798`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2869 msgid "" "You can now retrieve the Unix ``errno`` variable after a function call. " "When creating a wrapped function, you can supply ``use_errno=True`` as a " "keyword parameter to the :func:`DLL` function and then call the module-level " "methods :meth:`set_errno` and :meth:`get_errno` to set and retrieve the " "error value." msgstr "" #: ../Doc/whatsnew/2.6.rst:2875 msgid "" "The Win32 LastError variable is similarly supported by the :func:`DLL`, :" "func:`OleDLL`, and :func:`WinDLL` functions. You supply " "``use_last_error=True`` as a keyword parameter and then call the module-" "level methods :meth:`set_last_error` and :meth:`get_last_error`." msgstr "" #: ../Doc/whatsnew/2.6.rst:2881 msgid "" "The :func:`byref` function, used to retrieve a pointer to a ctypes instance, " "now has an optional *offset* parameter that is a byte count that will be " "added to the returned pointer." msgstr "" #: ../Doc/whatsnew/2.6.rst:2888 msgid "Improved SSL Support" msgstr "" #: ../Doc/whatsnew/2.6.rst:2890 msgid "" "Bill Janssen made extensive improvements to Python 2.6's support for the " "Secure Sockets Layer by adding a new module, :mod:`ssl`, that's built atop " "the `OpenSSL `__ library. This new module provides " "more control over the protocol negotiated, the X.509 certificates used, and " "has better support for writing SSL servers (as opposed to clients) in " "Python. The existing SSL support in the :mod:`socket` module hasn't been " "removed and continues to work, though it will be removed in Python 3.0." msgstr "" #: ../Doc/whatsnew/2.6.rst:2899 msgid "" "To use the new module, you must first create a TCP connection in the usual " "way and then pass it to the :func:`ssl.wrap_socket` function. It's possible " "to specify whether a certificate is required, and to obtain certificate info " "by calling the :meth:`getpeercert` method." msgstr "" #: ../Doc/whatsnew/2.6.rst:2906 msgid "The documentation for the :mod:`ssl` module." msgstr "" #: ../Doc/whatsnew/2.6.rst:2911 msgid "Deprecations and Removals" msgstr "" #: ../Doc/whatsnew/2.6.rst:2913 ../Doc/whatsnew/2.6.rst:3241 msgid "" "String exceptions have been removed. Attempting to use them raises a :exc:" "`TypeError`." msgstr "" #: ../Doc/whatsnew/2.6.rst:2916 msgid "" "Changes to the :class:`Exception` interface as dictated by :pep:`352` " "continue to be made. For 2.6, the :attr:`message` attribute is being " "deprecated in favor of the :attr:`args` attribute." msgstr "" #: ../Doc/whatsnew/2.6.rst:2921 msgid "" "(3.0-warning mode) Python 3.0 will feature a reorganized standard library " "that will drop many outdated modules and rename others. Python 2.6 running " "in 3.0-warning mode will warn about these modules when they are imported." msgstr "" #: ../Doc/whatsnew/2.6.rst:2926 msgid "" "The list of deprecated modules is: :mod:`audiodev`, :mod:`bgenlocations`, :" "mod:`buildtools`, :mod:`bundlebuilder`, :mod:`Canvas`, :mod:`compiler`, :mod:" "`dircache`, :mod:`dl`, :mod:`fpformat`, :mod:`gensuitemodule`, :mod:" "`ihooks`, :mod:`imageop`, :mod:`imgfile`, :mod:`linuxaudiodev`, :mod:" "`mhlib`, :mod:`mimetools`, :mod:`multifile`, :mod:`new`, :mod:`pure`, :mod:" "`statvfs`, :mod:`sunaudiodev`, :mod:`test.testall`, and :mod:`toaiff`." msgstr "" #: ../Doc/whatsnew/2.6.rst:2951 msgid "The :mod:`gopherlib` module has been removed." msgstr "" #: ../Doc/whatsnew/2.6.rst:2953 msgid "" "The :mod:`MimeWriter` module and :mod:`mimify` module have been deprecated; " "use the :mod:`email` package instead." msgstr "" #: ../Doc/whatsnew/2.6.rst:2957 msgid "" "The :mod:`md5` module has been deprecated; use the :mod:`hashlib` module " "instead." msgstr "" #: ../Doc/whatsnew/2.6.rst:2960 msgid "" "The :mod:`posixfile` module has been deprecated; :func:`fcntl.lockf` " "provides better locking." msgstr "" #: ../Doc/whatsnew/2.6.rst:2963 msgid "" "The :mod:`popen2` module has been deprecated; use the :mod:`subprocess` " "module." msgstr "" #: ../Doc/whatsnew/2.6.rst:2966 msgid "The :mod:`rgbimg` module has been removed." msgstr "" #: ../Doc/whatsnew/2.6.rst:2968 msgid "" "The :mod:`sets` module has been deprecated; it's better to use the built-in :" "class:`set` and :class:`frozenset` types." msgstr "" #: ../Doc/whatsnew/2.6.rst:2971 msgid "" "The :mod:`sha` module has been deprecated; use the :mod:`hashlib` module " "instead." msgstr "" #: ../Doc/whatsnew/2.6.rst:2983 msgid "" "Python now must be compiled with C89 compilers (after 19 years!). This " "means that the Python source tree has dropped its own implementations of :c:" "func:`memmove` and :c:func:`strerror`, which are in the C89 standard library." msgstr "" #: ../Doc/whatsnew/2.6.rst:2988 msgid "" "Python 2.6 can be built with Microsoft Visual Studio 2008 (version 9.0), and " "this is the new default compiler. See the :file:`PCbuild` directory for the " "build files. (Implemented by Christian Heimes.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:2993 msgid "" "On Mac OS X, Python 2.6 can be compiled as a 4-way universal build. The :" "program:`configure` script can take a :option:`--with-universal-archs=[32-" "bit|64-bit|all]` switch, controlling whether the binaries are built for 32-" "bit architectures (x86, PowerPC), 64-bit (x86-64 and PPC-64), or both. " "(Contributed by Ronald Oussoren.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:3000 msgid "" "The BerkeleyDB module now has a C API object, available as ``bsddb.db." "api``. This object can be used by other C extensions that wish to use the :" "mod:`bsddb` module for their own purposes. (Contributed by Duncan Grisby.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:3005 msgid "" "The new buffer interface, previously described in `the PEP 3118 section " "<#pep-3118-revised-buffer-protocol>`__, adds :c:func:`PyObject_GetBuffer` " "and :c:func:`PyBuffer_Release`, as well as a few other functions." msgstr "" #: ../Doc/whatsnew/2.6.rst:3010 msgid "" "Python's use of the C stdio library is now thread-safe, or at least as " "thread-safe as the underlying library is. A long-standing potential bug " "occurred if one thread closed a file object while another thread was reading " "from or writing to the object. In 2.6 file objects have a reference count, " "manipulated by the :c:func:`PyFile_IncUseCount` and :c:func:" "`PyFile_DecUseCount` functions. File objects can't be closed unless the " "reference count is zero. :c:func:`PyFile_IncUseCount` should be called " "while the GIL is still held, before carrying out an I/O operation using the " "``FILE *`` pointer, and :c:func:`PyFile_DecUseCount` should be called " "immediately after the GIL is re-acquired. (Contributed by Antoine Pitrou and " "Gregory P. Smith.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:3023 msgid "" "Importing modules simultaneously in two different threads no longer " "deadlocks; it will now raise an :exc:`ImportError`. A new API function, :c:" "func:`PyImport_ImportModuleNoBlock`, will look for a module in ``sys." "modules`` first, then try to import it after acquiring an import lock. If " "the import lock is held by another thread, an :exc:`ImportError` is raised. " "(Contributed by Christian Heimes.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:3031 msgid "" "Several functions return information about the platform's floating-point " "support. :c:func:`PyFloat_GetMax` returns the maximum representable " "floating point value, and :c:func:`PyFloat_GetMin` returns the minimum " "positive value. :c:func:`PyFloat_GetInfo` returns an object containing more " "information from the :file:`float.h` file, such as ``\"mant_dig\"`` (number " "of digits in the mantissa), ``\"epsilon\"`` (smallest difference between 1.0 " "and the next largest value representable), and several others. (Contributed " "by Christian Heimes; :issue:`1534`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:3042 msgid "" "C functions and methods that use :c:func:`PyComplex_AsCComplex` will now " "accept arguments that have a :meth:`__complex__` method. In particular, the " "functions in the :mod:`cmath` module will now accept objects with this " "method. This is a backport of a Python 3.0 change. (Contributed by Mark " "Dickinson; :issue:`1675423`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:3049 msgid "" "Python's C API now includes two functions for case-insensitive string " "comparisons, ``PyOS_stricmp(char*, char*)`` and ``PyOS_strnicmp(char*, " "char*, Py_ssize_t)``. (Contributed by Christian Heimes; :issue:`1635`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:3054 msgid "" "Many C extensions define their own little macro for adding integers and " "strings to the module's dictionary in the ``init*`` function. Python 2.6 " "finally defines standard macros for adding values to a module, :c:macro:" "`PyModule_AddStringMacro` and :c:macro:`PyModule_AddIntMacro()`. " "(Contributed by Christian Heimes.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:3061 msgid "" "Some macros were renamed in both 3.0 and 2.6 to make it clearer that they " "are macros, not functions. :c:macro:`Py_Size()` became :c:macro:" "`Py_SIZE()`, :c:macro:`Py_Type()` became :c:macro:`Py_TYPE()`, and :c:macro:" "`Py_Refcnt()` became :c:macro:`Py_REFCNT()`. The mixed-case macros are still " "available in Python 2.6 for backward compatibility. (:issue:`1629`)" msgstr "" #: ../Doc/whatsnew/2.6.rst:3070 msgid "" "Distutils now places C extensions it builds in a different directory when " "running on a debug version of Python. (Contributed by Collin Winter; :issue:" "`1530959`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:3074 msgid "" "Several basic data types, such as integers and strings, maintain internal " "free lists of objects that can be re-used. The data structures for these " "free lists now follow a naming convention: the variable is always named " "``free_list``, the counter is always named ``numfree``, and a macro " "``Py_MAXFREELIST`` is always defined." msgstr "" #: ../Doc/whatsnew/2.6.rst:3081 msgid "" "A new Makefile target, \"make patchcheck\", prepares the Python source tree " "for making a patch: it fixes trailing whitespace in all modified ``.py`` " "files, checks whether the documentation has been changed, and reports " "whether the :file:`Misc/ACKS` and :file:`Misc/NEWS` files have been updated. " "(Contributed by Brett Cannon.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:3088 msgid "" "Another new target, \"make profile-opt\", compiles a Python binary using " "GCC's profile-guided optimization. It compiles Python with profiling " "enabled, runs the test suite to obtain a set of profiling results, and then " "compiles using these results for optimization. (Contributed by Gregory P. " "Smith.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:3097 ../Doc/whatsnew/2.7.rst:2325 msgid "Port-Specific Changes: Windows" msgstr "" #: ../Doc/whatsnew/2.6.rst:3099 msgid "" "The support for Windows 95, 98, ME and NT4 has been dropped. Python 2.6 " "requires at least Windows 2000 SP4." msgstr "" #: ../Doc/whatsnew/2.6.rst:3102 msgid "" "The new default compiler on Windows is Visual Studio 2008 (version 9.0). The " "build directories for Visual Studio 2003 (version 7.1) and 2005 (version " "8.0) were moved into the PC/ directory. The new :file:`PCbuild` directory " "supports cross compilation for X64, debug builds and Profile Guided " "Optimization (PGO). PGO builds are roughly 10% faster than normal builds. " "(Contributed by Christian Heimes with help from Amaury Forgeot d'Arc and " "Martin von Löwis.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:3110 msgid "" "The :mod:`msvcrt` module now supports both the normal and wide char variants " "of the console I/O API. The :func:`getwch` function reads a keypress and " "returns a Unicode value, as does the :func:`getwche` function. The :func:" "`putwch` function takes a Unicode character and writes it to the console. " "(Contributed by Christian Heimes.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:3117 msgid "" ":func:`os.path.expandvars` will now expand environment variables in the form " "\"%var%\", and \"~user\" will be expanded into the user's home directory " "path. (Contributed by Josiah Carlson; :issue:`957650`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:3121 msgid "" "The :mod:`socket` module's socket objects now have an :meth:`ioctl` method " "that provides a limited interface to the :c:func:`WSAIoctl` system interface." msgstr "" #: ../Doc/whatsnew/2.6.rst:3125 msgid "" "The :mod:`_winreg` module now has a function, :func:" "`ExpandEnvironmentStrings`, that expands environment variable references " "such as ``%NAME%`` in an input string. The handle objects provided by this " "module now support the context protocol, so they can be used in :keyword:" "`with` statements. (Contributed by Christian Heimes.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:3132 msgid "" ":mod:`_winreg` also has better support for x64 systems, exposing the :func:" "`DisableReflectionKey`, :func:`EnableReflectionKey`, and :func:" "`QueryReflectionKey` functions, which enable and disable registry reflection " "for 32-bit processes running on 64-bit systems. (:issue:`1753245`)" msgstr "" #: ../Doc/whatsnew/2.6.rst:3138 msgid "" "The :mod:`msilib` module's :class:`Record` object gained :meth:`GetInteger` " "and :meth:`GetString` methods that return field values as an integer or a " "string. (Contributed by Floris Bruynooghe; :issue:`2125`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:3146 ../Doc/whatsnew/2.7.rst:2363 msgid "Port-Specific Changes: Mac OS X" msgstr "" #: ../Doc/whatsnew/2.6.rst:3148 msgid "" "When compiling a framework build of Python, you can now specify the " "framework name to be used by providing the :option:`--with-framework-name=` " "option to the :program:`configure` script." msgstr "" #: ../Doc/whatsnew/2.6.rst:3153 msgid "" "The :mod:`macfs` module has been removed. This in turn required the :func:" "`macostools.touched` function to be removed because it depended on the :mod:" "`macfs` module. (:issue:`1490190`)" msgstr "" #: ../Doc/whatsnew/2.6.rst:3157 msgid "" "Many other Mac OS modules have been deprecated and will be removed in Python " "3.0: :mod:`_builtinSuites`, :mod:`aepack`, :mod:`aetools`, :mod:`aetypes`, :" "mod:`applesingle`, :mod:`appletrawmain`, :mod:`appletrunner`, :mod:" "`argvemulator`, :mod:`Audio_mac`, :mod:`autoGIL`, :mod:`Carbon`, :mod:" "`cfmfile`, :mod:`CodeWarrior`, :mod:`ColorPicker`, :mod:`EasyDialogs`, :mod:" "`Explorer`, :mod:`Finder`, :mod:`FrameWork`, :mod:`findertools`, :mod:`ic`, :" "mod:`icglue`, :mod:`icopen`, :mod:`macerrors`, :mod:`MacOS`, :mod:`macfs`, :" "mod:`macostools`, :mod:`macresource`, :mod:`MiniAEFrame`, :mod:`Nav`, :mod:" "`Netscape`, :mod:`OSATerminology`, :mod:`pimp`, :mod:`PixMapWrapper`, :mod:" "`StdSuites`, :mod:`SystemEvents`, :mod:`Terminal`, and :mod:" "`terminalcommand`." msgstr "" #: ../Doc/whatsnew/2.6.rst:3200 msgid "Port-Specific Changes: IRIX" msgstr "" #: ../Doc/whatsnew/2.6.rst:3202 msgid "" "A number of old IRIX-specific modules were deprecated and will be removed in " "Python 3.0: :mod:`al` and :mod:`AL`, :mod:`cd`, :mod:`cddb`, :mod:" "`cdplayer`, :mod:`CL` and :mod:`cl`, :mod:`DEVICE`, :mod:`ERRNO`, :mod:" "`FILE`, :mod:`FL` and :mod:`fl`, :mod:`flp`, :mod:`fm`, :mod:`GET`, :mod:" "`GLWS`, :mod:`GL` and :mod:`gl`, :mod:`IN`, :mod:`IOCTL`, :mod:`jpeg`, :mod:" "`panelparser`, :mod:`readcd`, :mod:`SV` and :mod:`sv`, :mod:`torgb`, :mod:" "`videoreader`, and :mod:`WAIT`." msgstr "" #: ../Doc/whatsnew/2.6.rst:3232 msgid "Porting to Python 2.6" msgstr "Portage vers Python 2.6" #: ../Doc/whatsnew/2.6.rst:3234 ../Doc/whatsnew/2.7.rst:2425 #: ../Doc/whatsnew/3.1.rst:523 ../Doc/whatsnew/3.2.rst:2601 msgid "" "This section lists previously described changes and other bugfixes that may " "require changes to your code:" msgstr "" #: ../Doc/whatsnew/2.6.rst:3237 msgid "" "Classes that aren't supposed to be hashable should set ``__hash__ = None`` " "in their definitions to indicate the fact." msgstr "" #: ../Doc/whatsnew/2.6.rst:3244 msgid "" "The :meth:`__init__` method of :class:`collections.deque` now clears any " "existing contents of the deque before adding elements from the iterable. " "This change makes the behavior match ``list.__init__()``." msgstr "" #: ../Doc/whatsnew/2.6.rst:3249 msgid "" ":meth:`object.__init__` previously accepted arbitrary arguments and keyword " "arguments, ignoring them. In Python 2.6, this is no longer allowed and will " "result in a :exc:`TypeError`. This will affect :meth:`__init__` methods " "that end up calling the corresponding method on :class:`object` (perhaps " "through using :func:`super`). See :issue:`1683368` for discussion." msgstr "" #: ../Doc/whatsnew/2.6.rst:3256 msgid "" "The :class:`Decimal` constructor now accepts leading and trailing whitespace " "when passed a string. Previously it would raise an :exc:`InvalidOperation` " "exception. On the other hand, the :meth:`create_decimal` method of :class:" "`Context` objects now explicitly disallows extra whitespace, raising a :exc:" "`ConversionSyntax` exception." msgstr "" #: ../Doc/whatsnew/2.6.rst:3263 msgid "" "Due to an implementation accident, if you passed a file path to the built-" "in :func:`__import__` function, it would actually import the specified " "file. This was never intended to work, however, and the implementation now " "explicitly checks for this case and raises an :exc:`ImportError`." msgstr "" #: ../Doc/whatsnew/2.6.rst:3269 msgid "" "C API: the :c:func:`PyImport_Import` and :c:func:`PyImport_ImportModule` " "functions now default to absolute imports, not relative imports. This will " "affect C extensions that import other modules." msgstr "" #: ../Doc/whatsnew/2.6.rst:3273 msgid "" "C API: extension data types that shouldn't be hashable should define their " "``tp_hash`` slot to :c:func:`PyObject_HashNotImplemented`." msgstr "" #: ../Doc/whatsnew/2.6.rst:3277 msgid "" "The :mod:`socket` module exception :exc:`socket.error` now inherits from :" "exc:`IOError`. Previously it wasn't a subclass of :exc:`StandardError` but " "now it is, through :exc:`IOError`. (Implemented by Gregory P. Smith; :issue:" "`1706815`.)" msgstr "" #: ../Doc/whatsnew/2.6.rst:3282 msgid "" "The :mod:`xmlrpclib` module no longer automatically converts :class:" "`datetime.date` and :class:`datetime.time` to the :class:`xmlrpclib." "DateTime` type; the conversion semantics were not necessarily correct for " "all applications. Code using :mod:`xmlrpclib` should convert :class:`date` " "and :class:`time` instances. (:issue:`1330538`)" msgstr "" #: ../Doc/whatsnew/2.6.rst:3289 msgid "" "(3.0-warning mode) The :class:`Exception` class now warns when accessed " "using slicing or index access; having :class:`Exception` behave like a tuple " "is being phased out." msgstr "" #: ../Doc/whatsnew/2.6.rst:3293 msgid "" "(3.0-warning mode) inequality comparisons between two dictionaries or two " "objects that don't implement comparison methods are reported as warnings. " "``dict1 == dict2`` still works, but ``dict1 < dict2`` is being phased out." msgstr "" #: ../Doc/whatsnew/2.6.rst:3298 msgid "" "Comparisons between cells, which are an implementation detail of Python's " "scoping rules, also cause warnings because such comparisons are forbidden " "entirely in 3.0." msgstr "" #: ../Doc/whatsnew/2.6.rst:3310 msgid "" "The author would like to thank the following people for offering " "suggestions, corrections and assistance with various drafts of this article: " "Georg Brandl, Steve Brown, Nick Coghlan, Ralph Corderoy, Jim Jewett, Kent " "Johnson, Chris Lambacher, Martin Michlmayr, Antoine Pitrou, Brian Warner." msgstr "" #: ../Doc/whatsnew/2.7.rst:3 msgid "What's New in Python 2.7" msgstr "Nouveautés de Python 2.7" #: ../Doc/whatsnew/2.7.rst:52 msgid "" "This article explains the new features in Python 2.7. Python 2.7 was " "released on July 3, 2010." msgstr "" #: ../Doc/whatsnew/2.7.rst:55 msgid "" "Numeric handling has been improved in many ways, for both floating-point " "numbers and for the :class:`~decimal.Decimal` class. There are some useful " "additions to the standard library, such as a greatly enhanced :mod:" "`unittest` module, the :mod:`argparse` module for parsing command-line " "options, convenient :class:`~collections.OrderedDict` and :class:" "`~collections.Counter` classes in the :mod:`collections` module, and many " "other improvements." msgstr "" #: ../Doc/whatsnew/2.7.rst:63 msgid "" "Python 2.7 is planned to be the last of the 2.x releases, so we worked on " "making it a good release for the long term. To help with porting to Python " "3, several new features from the Python 3.x series have been included in 2.7." msgstr "" #: ../Doc/whatsnew/2.7.rst:68 msgid "" "This article doesn't attempt to provide a complete specification of the new " "features, but instead provides a convenient overview. For full details, you " "should refer to the documentation for Python 2.7 at https://docs.python.org. " "If you want to understand the rationale for the design and implementation, " "refer to the PEP for a particular new feature or the issue on https://bugs." "python.org in which a change was discussed. Whenever possible, \"What's New " "in Python\" links to the bug/patch item for each change." msgstr "" #: ../Doc/whatsnew/2.7.rst:80 msgid "The Future for Python 2.x" msgstr "" #: ../Doc/whatsnew/2.7.rst:82 msgid "" "Python 2.7 is the last major release in the 2.x series, as the Python " "maintainers have shifted the focus of their new feature development efforts " "to the Python 3.x series. This means that while Python 2 continues to " "receive bug fixes, and to be updated to build correctly on new hardware and " "versions of supported operated systems, there will be no new full feature " "releases for the language or standard library." msgstr "" #: ../Doc/whatsnew/2.7.rst:89 msgid "" "However, while there is a large common subset between Python 2.7 and Python " "3, and many of the changes involved in migrating to that common subset, or " "directly to Python 3, can be safely automated, some other changes (notably " "those associated with Unicode handling) may require careful consideration, " "and preferably robust automated regression test suites, to migrate " "effectively." msgstr "" #: ../Doc/whatsnew/2.7.rst:96 msgid "" "This means that Python 2.7 will remain in place for a long time, providing a " "stable and supported base platform for production systems that have not yet " "been ported to Python 3. The full expected lifecycle of the Python 2.7 " "series is detailed in :pep:`373`." msgstr "" #: ../Doc/whatsnew/2.7.rst:101 msgid "Some key consequences of the long-term significance of 2.7 are:" msgstr "" #: ../Doc/whatsnew/2.7.rst:103 msgid "" "As noted above, the 2.7 release has a much longer period of maintenance when " "compared to earlier 2.x versions. Python 2.7 is currently expected to remain " "supported by the core development team (receiving security updates and other " "bug fixes) until at least 2020 (10 years after its initial release, compared " "to the more typical support period of 18-24 months)." msgstr "" #: ../Doc/whatsnew/2.7.rst:109 msgid "" "As the Python 2.7 standard library ages, making effective use of the Python " "Package Index (either directly or via a redistributor) becomes more " "important for Python 2 users. In addition to a wide variety of third party " "packages for various tasks, the available packages include backports of new " "modules and features from the Python 3 standard library that are compatible " "with Python 2, as well as various tools and libraries that can make it " "easier to migrate to Python 3. The `Python Packaging User Guide `__ provides guidance on downloading and installing " "software from the Python Package Index." msgstr "" #: ../Doc/whatsnew/2.7.rst:119 msgid "" "While the preferred approach to enhancing Python 2 is now the publication of " "new packages on the Python Package Index, this approach doesn't necessarily " "work in all cases, especially those related to network security. In " "exceptional cases that cannot be handled adequately by publishing new or " "updated packages on PyPI, the Python Enhancement Proposal process may be " "used to make the case for adding new features directly to the Python 2 " "standard library. Any such additions, and the maintenance releases where " "they were added, will be noted in the :ref:`py27-maintenance-enhancements` " "section below." msgstr "" #: ../Doc/whatsnew/2.7.rst:129 msgid "" "For projects wishing to migrate from Python 2 to Python 3, or for library " "and framework developers wishing to support users on both Python 2 and " "Python 3, there are a variety of tools and guides available to help decide " "on a suitable approach and manage some of the technical details involved. " "The recommended starting point is the :ref:`pyporting-howto` HOWTO guide." msgstr "" #: ../Doc/whatsnew/2.7.rst:137 msgid "Changes to the Handling of Deprecation Warnings" msgstr "" #: ../Doc/whatsnew/2.7.rst:139 msgid "" "For Python 2.7, a policy decision was made to silence warnings only of " "interest to developers by default. :exc:`DeprecationWarning` and its " "descendants are now ignored unless otherwise requested, preventing users " "from seeing warnings triggered by an application. This change was also made " "in the branch that became Python 3.2. (Discussed on stdlib-sig and carried " "out in :issue:`7319`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:146 msgid "" "In previous releases, :exc:`DeprecationWarning` messages were enabled by " "default, providing Python developers with a clear indication of where their " "code may break in a future major version of Python." msgstr "" #: ../Doc/whatsnew/2.7.rst:151 msgid "" "However, there are increasingly many users of Python-based applications who " "are not directly involved in the development of those applications. :exc:" "`DeprecationWarning` messages are irrelevant to such users, making them " "worry about an application that's actually working correctly and burdening " "application developers with responding to these concerns." msgstr "" #: ../Doc/whatsnew/2.7.rst:158 msgid "" "You can re-enable display of :exc:`DeprecationWarning` messages by running " "Python with the :option:`-Wdefault <-W>` (short form: :option:`-Wd <-W>`) " "switch, or by setting the :envvar:`PYTHONWARNINGS` environment variable to ``" "\"default\"`` (or ``\"d\"``) before running Python. Python code can also re-" "enable them by calling ``warnings.simplefilter('default')``." msgstr "" #: ../Doc/whatsnew/2.7.rst:165 msgid "" "The ``unittest`` module also automatically reenables deprecation warnings " "when running tests." msgstr "" #: ../Doc/whatsnew/2.7.rst:170 msgid "Python 3.1 Features" msgstr "" #: ../Doc/whatsnew/2.7.rst:172 msgid "" "Much as Python 2.6 incorporated features from Python 3.0, version 2.7 " "incorporates some of the new features in Python 3.1. The 2.x series " "continues to provide tools for migrating to the 3.x series." msgstr "" #: ../Doc/whatsnew/2.7.rst:177 msgid "A partial list of 3.1 features that were backported to 2.7:" msgstr "" #: ../Doc/whatsnew/2.7.rst:179 msgid "The syntax for set literals (``{1,2,3}`` is a mutable set)." msgstr "" #: ../Doc/whatsnew/2.7.rst:180 msgid "Dictionary and set comprehensions (``{i: i*2 for i in range(3)}``)." msgstr "" #: ../Doc/whatsnew/2.7.rst:181 msgid "Multiple context managers in a single :keyword:`with` statement." msgstr "" #: ../Doc/whatsnew/2.7.rst:182 msgid "A new version of the :mod:`io` library, rewritten in C for performance." msgstr "" #: ../Doc/whatsnew/2.7.rst:183 msgid "The ordered-dictionary type described in :ref:`pep-0372`." msgstr "" #: ../Doc/whatsnew/2.7.rst:184 msgid "The new ``\",\"`` format specifier described in :ref:`pep-0378`." msgstr "" #: ../Doc/whatsnew/2.7.rst:185 msgid "The :class:`memoryview` object." msgstr "" #: ../Doc/whatsnew/2.7.rst:186 msgid "" "A small subset of the :mod:`importlib` module, `described below <#importlib-" "section>`__." msgstr "" #: ../Doc/whatsnew/2.7.rst:188 msgid "" "The :func:`repr` of a float ``x`` is shorter in many cases: it's now based " "on the shortest decimal string that's guaranteed to round back to ``x``. As " "in previous versions of Python, it's guaranteed that ``float(repr(x))`` " "recovers ``x``." msgstr "" #: ../Doc/whatsnew/2.7.rst:192 msgid "" "Float-to-string and string-to-float conversions are correctly rounded. The :" "func:`round` function is also now correctly rounded." msgstr "" #: ../Doc/whatsnew/2.7.rst:194 msgid "" "The :c:type:`PyCapsule` type, used to provide a C API for extension modules." msgstr "" #: ../Doc/whatsnew/2.7.rst:195 msgid "The :c:func:`PyLong_AsLongAndOverflow` C API function." msgstr "" #: ../Doc/whatsnew/2.7.rst:197 msgid "Other new Python3-mode warnings include:" msgstr "" #: ../Doc/whatsnew/2.7.rst:199 msgid "" ":func:`operator.isCallable` and :func:`operator.sequenceIncludes`, which are " "not supported in 3.x, now trigger warnings." msgstr "" #: ../Doc/whatsnew/2.7.rst:201 msgid "" "The :option:`-3` switch now automatically enables the :option:`-Qwarn <-Q>` " "switch that causes warnings about using classic division with integers and " "long integers." msgstr "" #: ../Doc/whatsnew/2.7.rst:214 msgid "PEP 372: Adding an Ordered Dictionary to collections" msgstr "" #: ../Doc/whatsnew/2.7.rst:216 msgid "" "Regular Python dictionaries iterate over key/value pairs in arbitrary order. " "Over the years, a number of authors have written alternative implementations " "that remember the order that the keys were originally inserted. Based on " "the experiences from those implementations, 2.7 introduces a new :class:" "`~collections.OrderedDict` class in the :mod:`collections` module." msgstr "" #: ../Doc/whatsnew/2.7.rst:222 msgid "" "The :class:`~collections.OrderedDict` API provides the same interface as " "regular dictionaries but iterates over keys and values in a guaranteed order " "depending on when a key was first inserted::" msgstr "" #: ../Doc/whatsnew/2.7.rst:233 msgid "" "If a new entry overwrites an existing entry, the original insertion position " "is left unchanged::" msgstr "" #: ../Doc/whatsnew/2.7.rst:240 msgid "Deleting an entry and reinserting it will move it to the end::" msgstr "" #: ../Doc/whatsnew/2.7.rst:247 msgid "" "The :meth:`~collections.OrderedDict.popitem` method has an optional *last* " "argument that defaults to True. If *last* is True, the most recently added " "key is returned and removed; if it's False, the oldest key is selected::" msgstr "" #: ../Doc/whatsnew/2.7.rst:262 msgid "" "Comparing two ordered dictionaries checks both the keys and values, and " "requires that the insertion order was the same::" msgstr "" #: ../Doc/whatsnew/2.7.rst:278 msgid "" "Comparing an :class:`~collections.OrderedDict` with a regular dictionary " "ignores the insertion order and just compares the keys and values." msgstr "" #: ../Doc/whatsnew/2.7.rst:281 msgid "" "How does the :class:`~collections.OrderedDict` work? It maintains a doubly-" "linked list of keys, appending new keys to the list as they're inserted. A " "secondary dictionary maps keys to their corresponding list node, so deletion " "doesn't have to traverse the entire linked list and therefore remains O(1)." msgstr "" #: ../Doc/whatsnew/2.7.rst:287 msgid "" "The standard library now supports use of ordered dictionaries in several " "modules." msgstr "" #: ../Doc/whatsnew/2.7.rst:290 msgid "" "The :mod:`ConfigParser` module uses them by default, meaning that " "configuration files can now be read, modified, and then written back in " "their original order." msgstr "" #: ../Doc/whatsnew/2.7.rst:294 msgid "" "The :meth:`~collections.somenamedtuple._asdict()` method for :func:" "`collections.namedtuple` now returns an ordered dictionary with the values " "appearing in the same order as the underlying tuple indices." msgstr "" #: ../Doc/whatsnew/2.7.rst:298 msgid "" "The :mod:`json` module's :class:`~json.JSONDecoder` class constructor was " "extended with an *object_pairs_hook* parameter to allow :class:`OrderedDict` " "instances to be built by the decoder. Support was also added for third-party " "tools like `PyYAML `_." msgstr "" #: ../Doc/whatsnew/2.7.rst:307 msgid ":pep:`372` - Adding an ordered dictionary to collections" msgstr "" #: ../Doc/whatsnew/2.7.rst:307 msgid "" "PEP written by Armin Ronacher and Raymond Hettinger; implemented by Raymond " "Hettinger." msgstr "" #: ../Doc/whatsnew/2.7.rst:313 ../Doc/whatsnew/3.1.rst:84 msgid "PEP 378: Format Specifier for Thousands Separator" msgstr "" #: ../Doc/whatsnew/2.7.rst:315 msgid "" "To make program output more readable, it can be useful to add separators to " "large numbers, rendering them as 18,446,744,073,709,551,616 instead of " "18446744073709551616." msgstr "" #: ../Doc/whatsnew/2.7.rst:319 msgid "" "The fully general solution for doing this is the :mod:`locale` module, which " "can use different separators (\",\" in North America, \".\" in Europe) and " "different grouping sizes, but :mod:`locale` is complicated to use and " "unsuitable for multi-threaded applications where different threads are " "producing output for different locales." msgstr "" #: ../Doc/whatsnew/2.7.rst:325 msgid "" "Therefore, a simple comma-grouping mechanism has been added to the mini-" "language used by the :meth:`str.format` method. When formatting a floating-" "point number, simply include a comma between the width and the precision::" msgstr "" #: ../Doc/whatsnew/2.7.rst:333 msgid "When formatting an integer, include the comma after the width:" msgstr "" #: ../Doc/whatsnew/2.7.rst:338 msgid "" "This mechanism is not adaptable at all; commas are always used as the " "separator and the grouping is always into three-digit groups. The comma-" "formatting mechanism isn't as general as the :mod:`locale` module, but it's " "easier to use." msgstr "" #: ../Doc/whatsnew/2.7.rst:345 ../Doc/whatsnew/3.1.rst:111 msgid ":pep:`378` - Format Specifier for Thousands Separator" msgstr "" #: ../Doc/whatsnew/2.7.rst:346 msgid "PEP written by Raymond Hettinger; implemented by Eric Smith." msgstr "" #: ../Doc/whatsnew/2.7.rst:349 msgid "PEP 389: The argparse Module for Parsing Command Lines" msgstr "" #: ../Doc/whatsnew/2.7.rst:351 msgid "" "The :mod:`argparse` module for parsing command-line arguments was added as a " "more powerful replacement for the :mod:`optparse` module." msgstr "" #: ../Doc/whatsnew/2.7.rst:355 msgid "" "This means Python now supports three different modules for parsing command-" "line arguments: :mod:`getopt`, :mod:`optparse`, and :mod:`argparse`. The :" "mod:`getopt` module closely resembles the C library's :c:func:`getopt` " "function, so it remains useful if you're writing a Python prototype that " "will eventually be rewritten in C. :mod:`optparse` becomes redundant, but " "there are no plans to remove it because there are many scripts still using " "it, and there's no automated way to update these scripts. (Making the :mod:" "`argparse` API consistent with :mod:`optparse`'s interface was discussed but " "rejected as too messy and difficult.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:366 msgid "" "In short, if you're writing a new script and don't need to worry about " "compatibility with earlier versions of Python, use :mod:`argparse` instead " "of :mod:`optparse`." msgstr "" #: ../Doc/whatsnew/2.7.rst:370 msgid "Here's an example::" msgstr "" #: ../Doc/whatsnew/2.7.rst:393 msgid "" "Unless you override it, :option:`-h` and :option:`--help` switches are " "automatically added, and produce neatly formatted output::" msgstr "" #: ../Doc/whatsnew/2.7.rst:410 msgid "" "As with :mod:`optparse`, the command-line switches and arguments are " "returned as an object with attributes named by the *dest* parameters::" msgstr "" #: ../Doc/whatsnew/2.7.rst:425 msgid "" ":mod:`argparse` has much fancier validation than :mod:`optparse`; you can " "specify an exact number of arguments as an integer, 0 or more arguments by " "passing ``'*'``, 1 or more by passing ``'+'``, or an optional argument with " "``'?'``. A top-level parser can contain sub-parsers to define subcommands " "that have different sets of switches, as in ``svn commit``, ``svn " "checkout``, etc. You can specify an argument's type as :class:`~argparse." "FileType`, which will automatically open files for you and understands that " "``'-'`` means standard input or output." msgstr "" #: ../Doc/whatsnew/2.7.rst:438 msgid ":mod:`argparse` documentation" msgstr "Documentation du module :mod:`argparse`" #: ../Doc/whatsnew/2.7.rst:438 msgid "The documentation page of the argparse module." msgstr "" #: ../Doc/whatsnew/2.7.rst:442 msgid ":ref:`upgrading-optparse-code`" msgstr "" #: ../Doc/whatsnew/2.7.rst:441 msgid "" "Part of the Python documentation, describing how to convert code that uses :" "mod:`optparse`." msgstr "" #: ../Doc/whatsnew/2.7.rst:444 msgid ":pep:`389` - argparse - New Command Line Parsing Module" msgstr "" #: ../Doc/whatsnew/2.7.rst:445 msgid "PEP written and implemented by Steven Bethard." msgstr "" #: ../Doc/whatsnew/2.7.rst:448 msgid "PEP 391: Dictionary-Based Configuration For Logging" msgstr "" #: ../Doc/whatsnew/2.7.rst:450 msgid "" "The :mod:`logging` module is very flexible; applications can define a tree " "of logging subsystems, and each logger in this tree can filter out certain " "messages, format them differently, and direct messages to a varying number " "of handlers." msgstr "" #: ../Doc/whatsnew/2.7.rst:455 msgid "" "All this flexibility can require a lot of configuration. You can write " "Python statements to create objects and set their properties, but a complex " "set-up requires verbose but boring code. :mod:`logging` also supports a :" "func:`~logging.fileConfig` function that parses a file, but the file format " "doesn't support configuring filters, and it's messier to generate " "programmatically." msgstr "" #: ../Doc/whatsnew/2.7.rst:462 msgid "" "Python 2.7 adds a :func:`~logging.dictConfig` function that uses a " "dictionary to configure logging. There are many ways to produce a " "dictionary from different sources: construct one with code; parse a file " "containing JSON; or use a YAML parsing library if one is installed. For " "more information see :ref:`logging-config-api`." msgstr "" #: ../Doc/whatsnew/2.7.rst:468 msgid "" "The following example configures two loggers, the root logger and a logger " "named \"network\". Messages sent to the root logger will be sent to the " "system log using the syslog protocol, and messages to the \"network\" logger " "will be written to a :file:`network.log` file that will be rotated once the " "log reaches 1MB." msgstr "" #: ../Doc/whatsnew/2.7.rst:518 msgid "" "Three smaller enhancements to the :mod:`logging` module, all implemented by " "Vinay Sajip, are:" msgstr "" #: ../Doc/whatsnew/2.7.rst:523 msgid "" "The :class:`~logging.handlers.SysLogHandler` class now supports syslogging " "over TCP. The constructor has a *socktype* parameter giving the type of " "socket to use, either :const:`socket.SOCK_DGRAM` for UDP or :const:`socket." "SOCK_STREAM` for TCP. The default protocol remains UDP." msgstr "" #: ../Doc/whatsnew/2.7.rst:529 msgid "" ":class:`~logging.Logger` instances gained a :meth:`~logging.Logger.getChild` " "method that retrieves a descendant logger using a relative path. For " "example, once you retrieve a logger by doing ``log = getLogger('app')``, " "calling ``log.getChild('network.listen')`` is equivalent to ``getLogger('app." "network.listen')``." msgstr "" #: ../Doc/whatsnew/2.7.rst:535 msgid "" "The :class:`~logging.LoggerAdapter` class gained an :meth:`~logging." "LoggerAdapter.isEnabledFor` method that takes a *level* and returns whether " "the underlying logger would process a message of that level of importance." msgstr "" #: ../Doc/whatsnew/2.7.rst:544 msgid ":pep:`391` - Dictionary-Based Configuration For Logging" msgstr "" #: ../Doc/whatsnew/2.7.rst:545 msgid "PEP written and implemented by Vinay Sajip." msgstr "" #: ../Doc/whatsnew/2.7.rst:548 msgid "PEP 3106: Dictionary Views" msgstr "" #: ../Doc/whatsnew/2.7.rst:550 msgid "" "The dictionary methods :meth:`~dict.keys`, :meth:`~dict.values`, and :meth:" "`~dict.items` are different in Python 3.x. They return an object called a :" "dfn:`view` instead of a fully materialized list." msgstr "" #: ../Doc/whatsnew/2.7.rst:554 msgid "" "It's not possible to change the return values of :meth:`~dict.keys`, :meth:" "`~dict.values`, and :meth:`~dict.items` in Python 2.7 because too much code " "would break. Instead the 3.x versions were added under the new names :meth:" "`~dict.viewkeys`, :meth:`~dict.viewvalues`, and :meth:`~dict.viewitems`." msgstr "" #: ../Doc/whatsnew/2.7.rst:568 msgid "" "Views can be iterated over, but the key and item views also behave like " "sets. The ``&`` operator performs intersection, and ``|`` performs a union::" msgstr "" #: ../Doc/whatsnew/2.7.rst:579 msgid "" "The view keeps track of the dictionary and its contents change as the " "dictionary is modified::" msgstr "" #: ../Doc/whatsnew/2.7.rst:589 msgid "" "However, note that you can't add or remove keys while you're iterating over " "the view::" msgstr "" #: ../Doc/whatsnew/2.7.rst:599 msgid "" "You can use the view methods in Python 2.x code, and the 2to3 converter will " "change them to the standard :meth:`~dict.keys`, :meth:`~dict.values`, and :" "meth:`~dict.items` methods." msgstr "" #: ../Doc/whatsnew/2.7.rst:606 msgid ":pep:`3106` - Revamping dict.keys(), .values() and .items()" msgstr "" #: ../Doc/whatsnew/2.7.rst:606 msgid "" "PEP written by Guido van Rossum. Backported to 2.7 by Alexandre Vassalotti; :" "issue:`1967`." msgstr "" #: ../Doc/whatsnew/2.7.rst:611 msgid "PEP 3137: The memoryview Object" msgstr "" #: ../Doc/whatsnew/2.7.rst:613 msgid "" "The :class:`memoryview` object provides a view of another object's memory " "content that matches the :class:`bytes` type's interface." msgstr "" #: ../Doc/whatsnew/2.7.rst:631 msgid "" "The content of the view can be converted to a string of bytes or a list of " "integers:" msgstr "" #: ../Doc/whatsnew/2.7.rst:643 msgid "" ":class:`memoryview` objects allow modifying the underlying object if it's a " "mutable object." msgstr "" #: ../Doc/whatsnew/2.7.rst:666 msgid ":pep:`3137` - Immutable Bytes and Mutable Buffer" msgstr "" #: ../Doc/whatsnew/2.7.rst:665 msgid "" "PEP written by Guido van Rossum. Implemented by Travis Oliphant, Antoine " "Pitrou and others. Backported to 2.7 by Antoine Pitrou; :issue:`2396`." msgstr "" #: ../Doc/whatsnew/2.7.rst:676 msgid "" "The syntax for set literals has been backported from Python 3.x. Curly " "brackets are used to surround the contents of the resulting mutable set; set " "literals are distinguished from dictionaries by not containing colons and " "values. ``{}`` continues to represent an empty dictionary; use ``set()`` for " "an empty set." msgstr "" #: ../Doc/whatsnew/2.7.rst:693 msgid "Backported by Alexandre Vassalotti; :issue:`2335`." msgstr "" #: ../Doc/whatsnew/2.7.rst:695 msgid "" "Dictionary and set comprehensions are another feature backported from 3.x, " "generalizing list/generator comprehensions to use the literal syntax for " "sets and dictionaries." msgstr "" #: ../Doc/whatsnew/2.7.rst:707 msgid "Backported by Alexandre Vassalotti; :issue:`2333`." msgstr "" #: ../Doc/whatsnew/2.7.rst:709 msgid "" "The :keyword:`with` statement can now use multiple context managers in one " "statement. Context managers are processed from left to right and each one " "is treated as beginning a new :keyword:`with` statement. This means that::" msgstr "" #: ../Doc/whatsnew/2.7.rst:717 msgid "is equivalent to::" msgstr "" #: ../Doc/whatsnew/2.7.rst:723 msgid "" "The :func:`contextlib.nested` function provides a very similar function, so " "it's no longer necessary and has been deprecated." msgstr "" #: ../Doc/whatsnew/2.7.rst:726 msgid "" "(Proposed in https://codereview.appspot.com/53094; implemented by Georg " "Brandl.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:729 msgid "" "Conversions between floating-point numbers and strings are now correctly " "rounded on most platforms. These conversions occur in many different " "places: :func:`str` on floats and complex numbers; the :class:`float` and :" "class:`complex` constructors; numeric formatting; serializing and " "deserializing floats and complex numbers using the :mod:`marshal`, :mod:" "`pickle` and :mod:`json` modules; parsing of float and imaginary literals in " "Python code; and :class:`~decimal.Decimal`-to-float conversion." msgstr "" #: ../Doc/whatsnew/2.7.rst:741 msgid "" "Related to this, the :func:`repr` of a floating-point number *x* now returns " "a result based on the shortest decimal string that's guaranteed to round " "back to *x* under correct rounding (with round-half-to-even rounding mode). " "Previously it gave a string based on rounding x to 17 decimal digits." msgstr "" #: ../Doc/whatsnew/2.7.rst:749 msgid "" "The rounding library responsible for this improvement works on Windows and " "on Unix platforms using the gcc, icc, or suncc compilers. There may be a " "small number of platforms where correct operation of this code cannot be " "guaranteed, so the code is not used on such systems. You can find out which " "code is being used by checking :data:`sys.float_repr_style`, which will be " "``short`` if the new code is in use and ``legacy`` if it isn't." msgstr "" #: ../Doc/whatsnew/2.7.rst:757 msgid "" "Implemented by Eric Smith and Mark Dickinson, using David Gay's :file:`dtoa." "c` library; :issue:`7117`." msgstr "" #: ../Doc/whatsnew/2.7.rst:760 msgid "" "Conversions from long integers and regular integers to floating point now " "round differently, returning the floating-point number closest to the " "number. This doesn't matter for small integers that can be converted " "exactly, but for large numbers that will unavoidably lose precision, Python " "2.7 now approximates more closely. For example, Python 2.6 computed the " "following::" msgstr "" #: ../Doc/whatsnew/2.7.rst:773 msgid "" "Python 2.7's floating-point result is larger, but much closer to the true " "value::" msgstr "" #: ../Doc/whatsnew/2.7.rst:782 msgid "(Implemented by Mark Dickinson; :issue:`3166`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:784 msgid "" "Integer division is also more accurate in its rounding behaviours. (Also " "implemented by Mark Dickinson; :issue:`1811`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:787 msgid "" "Implicit coercion for complex numbers has been removed; the interpreter will " "no longer ever attempt to call a :meth:`__coerce__` method on complex " "objects. (Removed by Meador Inge and Mark Dickinson; :issue:`5211`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:791 msgid "" "The :meth:`str.format` method now supports automatic numbering of the " "replacement fields. This makes using :meth:`str.format` more closely " "resemble using ``%s`` formatting::" msgstr "" #: ../Doc/whatsnew/2.7.rst:800 msgid "" "The auto-numbering takes the fields from left to right, so the first ``{...}" "`` specifier will use the first argument to :meth:`str.format`, the next " "specifier will use the next argument, and so on. You can't mix auto-" "numbering and explicit numbering -- either number all of your specifier " "fields or none of them -- but you can mix auto-numbering and named fields, " "as in the second example above. (Contributed by Eric Smith; :issue:`5237`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:807 msgid "" "Complex numbers now correctly support usage with :func:`format`, and default " "to being right-aligned. Specifying a precision or comma-separation applies " "to both the real and imaginary parts of the number, but a specified field " "width and alignment is applied to the whole of the resulting ``1.5+3j`` " "output. (Contributed by Eric Smith; :issue:`1588` and :issue:`7988`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:814 msgid "" "The 'F' format code now always formats its output using uppercase " "characters, so it will now produce 'INF' and 'NAN'. (Contributed by Eric " "Smith; :issue:`3382`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:818 msgid "" "A low-level change: the :meth:`object.__format__` method now triggers a :exc:" "`PendingDeprecationWarning` if it's passed a format string, because the :" "meth:`__format__` method for :class:`object` converts the object to a string " "representation and formats that. Previously the method silently applied the " "format string to the string representation, but that could hide mistakes in " "Python code. If you're supplying formatting information such as an " "alignment or precision, presumably you're expecting the formatting to be " "applied in some object-specific way. (Fixed by Eric Smith; :issue:`7994`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:828 msgid "" "The :func:`int` and :func:`long` types gained a ``bit_length`` method that " "returns the number of bits necessary to represent its argument in binary::" msgstr "" #: ../Doc/whatsnew/2.7.rst:843 msgid "(Contributed by Fredrik Johansson and Victor Stinner; :issue:`3439`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:845 msgid "" "The :keyword:`import` statement will no longer try an absolute import if a " "relative import (e.g. ``from .os import sep``) fails. This fixes a bug, but " "could possibly break certain :keyword:`import` statements that were only " "working by accident. (Fixed by Meador Inge; :issue:`7902`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:851 msgid "" "It's now possible for a subclass of the built-in :class:`unicode` type to " "override the :meth:`__unicode__` method. (Implemented by Victor Stinner; :" "issue:`1583863`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:855 msgid "" "The :class:`bytearray` type's :meth:`~bytearray.translate` method now " "accepts ``None`` as its first argument. (Fixed by Georg Brandl; :issue:" "`4759`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:861 msgid "" "When using ``@classmethod`` and ``@staticmethod`` to wrap methods as class " "or static methods, the wrapper object now exposes the wrapped function as " "their :attr:`__func__` attribute. (Contributed by Amaury Forgeot d'Arc, " "after a suggestion by George Sakkis; :issue:`5982`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:867 ../Doc/whatsnew/2.7.rst:2450 msgid "" "When a restricted set of attributes were set using ``__slots__``, deleting " "an unset attribute would not raise :exc:`AttributeError` as you would " "expect. Fixed by Benjamin Peterson; :issue:`7604`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:871 msgid "" "Two new encodings are now supported: \"cp720\", used primarily for Arabic " "text; and \"cp858\", a variant of CP 850 that adds the euro symbol. (CP720 " "contributed by Alexander Belchenko and Amaury Forgeot d'Arc in :issue:" "`1616979`; CP858 contributed by Tim Hatch in :issue:`8016`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:877 msgid "" "The :class:`file` object will now set the :attr:`filename` attribute on the :" "exc:`IOError` exception when trying to open a directory on POSIX platforms " "(noted by Jan Kaliszewski; :issue:`4764`), and now explicitly checks for and " "forbids writing to read-only file objects instead of trusting the C library " "to catch and report the error (fixed by Stefan Krah; :issue:`5677`)." msgstr "" #: ../Doc/whatsnew/2.7.rst:884 msgid "" "The Python tokenizer now translates line endings itself, so the :func:" "`compile` built-in function now accepts code using any line-ending " "convention. Additionally, it no longer requires that the code end in a " "newline." msgstr "" #: ../Doc/whatsnew/2.7.rst:889 msgid "" "Extra parentheses in function definitions are illegal in Python 3.x, meaning " "that you get a syntax error from ``def f((x)): pass``. In Python3-warning " "mode, Python 2.7 will now warn about this odd usage. (Noted by James " "Lingard; :issue:`7362`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:894 msgid "" "It's now possible to create weak references to old-style class objects. New-" "style classes were always weak-referenceable. (Fixed by Antoine Pitrou; :" "issue:`8268`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:898 msgid "" "When a module object is garbage-collected, the module's dictionary is now " "only cleared if no one else is holding a reference to the dictionary (:issue:" "`7140`)." msgstr "" #: ../Doc/whatsnew/2.7.rst:909 msgid "" "A new environment variable, :envvar:`PYTHONWARNINGS`, allows controlling " "warnings. It should be set to a string containing warning settings, " "equivalent to those used with the :option:`-W` switch, separated by commas. " "(Contributed by Brian Curtin; :issue:`7301`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:915 msgid "" "For example, the following setting will print warnings every time they " "occur, but turn warnings from the :mod:`Cookie` module into an error. (The " "exact syntax for setting an environment variable varies across operating " "systems and shells.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:930 msgid "Several performance enhancements have been added:" msgstr "" #: ../Doc/whatsnew/2.7.rst:932 msgid "" "A new opcode was added to perform the initial setup for :keyword:`with` " "statements, looking up the :meth:`__enter__` and :meth:`__exit__` methods. " "(Contributed by Benjamin Peterson.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:936 msgid "" "The garbage collector now performs better for one common usage pattern: when " "many objects are being allocated without deallocating any of them. This " "would previously take quadratic time for garbage collection, but now the " "number of full garbage collections is reduced as the number of objects on " "the heap grows. The new logic only performs a full garbage collection pass " "when the middle generation has been collected 10 times and when the number " "of survivor objects from the middle generation exceeds 10% of the number of " "objects in the oldest generation. (Suggested by Martin von Löwis and " "implemented by Antoine Pitrou; :issue:`4074`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:947 msgid "" "The garbage collector tries to avoid tracking simple containers which can't " "be part of a cycle. In Python 2.7, this is now true for tuples and dicts " "containing atomic types (such as ints, strings, etc.). Transitively, a dict " "containing tuples of atomic types won't be tracked either. This helps reduce " "the cost of each garbage collection by decreasing the number of objects to " "be considered and traversed by the collector. (Contributed by Antoine " "Pitrou; :issue:`4688`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:956 msgid "" "Long integers are now stored internally either in base 2**15 or in base " "2**30, the base being determined at build time. Previously, they were " "always stored in base 2**15. Using base 2**30 gives significant performance " "improvements on 64-bit machines, but benchmark results on 32-bit machines " "have been mixed. Therefore, the default is to use base 2**30 on 64-bit " "machines and base 2**15 on 32-bit machines; on Unix, there's a new configure " "option :option:`--enable-big-digits` that can be used to override this " "default." msgstr "" #: ../Doc/whatsnew/2.7.rst:965 msgid "" "Apart from the performance improvements this change should be invisible to " "end users, with one exception: for testing and debugging purposes there's a " "new structseq :data:`sys.long_info` that provides information about the " "internal format, giving the number of bits per digit and the size in bytes " "of the C type used to store each digit::" msgstr "" #: ../Doc/whatsnew/2.7.rst:976 ../Doc/whatsnew/3.1.rst:496 msgid "(Contributed by Mark Dickinson; :issue:`4258`.)" msgstr "(Contribution par Mark Dickinson; :issue:`4258`.)" #: ../Doc/whatsnew/2.7.rst:978 msgid "" "Another set of changes made long objects a few bytes smaller: 2 bytes " "smaller on 32-bit systems and 6 bytes on 64-bit. (Contributed by Mark " "Dickinson; :issue:`5260`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:982 msgid "" "The division algorithm for long integers has been made faster by tightening " "the inner loop, doing shifts instead of multiplications, and fixing an " "unnecessary extra iteration. Various benchmarks show speedups of between 50% " "and 150% for long integer divisions and modulo operations. (Contributed by " "Mark Dickinson; :issue:`5512`.) Bitwise operations are also significantly " "faster (initial patch by Gregory Smith; :issue:`1087418`)." msgstr "" #: ../Doc/whatsnew/2.7.rst:991 msgid "" "The implementation of ``%`` checks for the left-side operand being a Python " "string and special-cases it; this results in a 1-3% performance increase for " "applications that frequently use ``%`` with strings, such as templating " "libraries. (Implemented by Collin Winter; :issue:`5176`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:997 msgid "" "List comprehensions with an ``if`` condition are compiled into faster " "bytecode. (Patch by Antoine Pitrou, back-ported to 2.7 by Jeffrey Yasskin; :" "issue:`4715`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1001 msgid "" "Converting an integer or long integer to a decimal string was made faster by " "special-casing base 10 instead of using a generalized conversion function " "that supports arbitrary bases. (Patch by Gawain Bolton; :issue:`6713`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1006 msgid "" "The :meth:`split`, :meth:`replace`, :meth:`rindex`, :meth:`rpartition`, and :" "meth:`rsplit` methods of string-like types (strings, Unicode strings, and :" "class:`bytearray` objects) now use a fast reverse-search algorithm instead " "of a character-by-character scan. This is sometimes faster by a factor of " "10. (Added by Florent Xicluna; :issue:`7462` and :issue:`7622`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1013 msgid "" "The :mod:`pickle` and :mod:`cPickle` modules now automatically intern the " "strings used for attribute names, reducing memory usage of the objects " "resulting from unpickling. (Contributed by Jake McGuire; :issue:`5084`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1018 msgid "" "The :mod:`cPickle` module now special-cases dictionaries, nearly halving the " "time required to pickle them. (Contributed by Collin Winter; :issue:`5670`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1033 msgid "" "The :mod:`bdb` module's base debugging class :class:`~bdb.Bdb` gained a " "feature for skipping modules. The constructor now takes an iterable " "containing glob-style patterns such as ``django.*``; the debugger will not " "step into stack frames from a module that matches one of these patterns. " "(Contributed by Maru Newby after a suggestion by Senthil Kumaran; :issue:" "`5142`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1041 msgid "" "The :mod:`binascii` module now supports the buffer API, so it can be used " "with :class:`memoryview` instances and other similar buffer objects. " "(Backported from 3.x by Florent Xicluna; :issue:`7703`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1045 msgid "" "Updated module: the :mod:`bsddb` module has been updated from 4.7.2devel9 to " "version 4.8.4 of `the pybsddb package `__. The new version features better Python 3.x compatibility, " "various bug fixes, and adds several new BerkeleyDB flags and methods. " "(Updated by Jesús Cea Avión; :issue:`8156`. The pybsddb changelog can be " "read at http://hg.jcea.es/pybsddb/file/tip/ChangeLog.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1053 msgid "" "The :mod:`bz2` module's :class:`~bz2.BZ2File` now supports the context " "management protocol, so you can write ``with bz2.BZ2File(...) as f:``. " "(Contributed by Hagen Fürstenau; :issue:`3860`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1057 msgid "" "New class: the :class:`~collections.Counter` class in the :mod:`collections` " "module is useful for tallying data. :class:`~collections.Counter` instances " "behave mostly like dictionaries but return zero for missing keys instead of " "raising a :exc:`KeyError`:" msgstr "" #: ../Doc/whatsnew/2.7.rst:1079 msgid "" "There are three additional :class:`~collections.Counter` methods. :meth:" "`~collections.Counter.most_common` returns the N most common elements and " "their counts. :meth:`~collections.Counter.elements` returns an iterator " "over the contained elements, repeating each element as many times as its " "count. :meth:`~collections.Counter.subtract` takes an iterable and subtracts " "one for each element instead of adding; if the argument is a dictionary or " "another :class:`Counter`, the counts are subtracted. ::" msgstr "" #: ../Doc/whatsnew/2.7.rst:1102 msgid "Contributed by Raymond Hettinger; :issue:`1696199`." msgstr "" #: ../Doc/whatsnew/2.7.rst:1106 msgid "" "New class: :class:`~collections.OrderedDict` is described in the earlier " "section :ref:`pep-0372`." msgstr "" #: ../Doc/whatsnew/2.7.rst:1109 msgid "" "New method: The :class:`~collections.deque` data type now has a :meth:" "`~collections.deque.count` method that returns the number of contained " "elements equal to the supplied argument *x*, and a :meth:`~collections.deque." "reverse` method that reverses the elements of the deque in-place. :class:" "`~collections.deque` also exposes its maximum length as the read-only :attr:" "`~collections.deque.maxlen` attribute. (Both features added by Raymond " "Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1117 msgid "" "The :class:`~collections.namedtuple` class now has an optional *rename* " "parameter. If *rename* is true, field names that are invalid because they've " "been repeated or aren't legal Python identifiers will be renamed to legal " "names that are derived from the field's position within the list of fields:" msgstr "" #: ../Doc/whatsnew/2.7.rst:1128 msgid "(Added by Raymond Hettinger; :issue:`1818`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1130 msgid "" "Finally, the :class:`~collections.Mapping` abstract base class now returns :" "const:`NotImplemented` if a mapping is compared to another type that isn't " "a :class:`Mapping`. (Fixed by Daniel Stutzbach; :issue:`8729`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1135 msgid "" "Constructors for the parsing classes in the :mod:`ConfigParser` module now " "take an *allow_no_value* parameter, defaulting to false; if true, options " "without values will be allowed. For example::" msgstr "" #: ../Doc/whatsnew/2.7.rst:1157 msgid "(Contributed by Mats Kindahl; :issue:`7005`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1159 msgid "" "Deprecated function: :func:`contextlib.nested`, which allows handling more " "than one context manager with a single :keyword:`with` statement, has been " "deprecated, because the :keyword:`with` statement now supports multiple " "context managers." msgstr "" #: ../Doc/whatsnew/2.7.rst:1164 msgid "" "The :mod:`cookielib` module now ignores cookies that have an invalid version " "field, one that doesn't contain an integer value. (Fixed by John J. Lee; :" "issue:`3924`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1168 msgid "" "The :mod:`copy` module's :func:`~copy.deepcopy` function will now correctly " "copy bound instance methods. (Implemented by Robert Collins; :issue:`1515`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1172 msgid "" "The :mod:`ctypes` module now always converts ``None`` to a C NULL pointer " "for arguments declared as pointers. (Changed by Thomas Heller; :issue:" "`4606`.) The underlying `libffi library `__ " "has been updated to version 3.0.9, containing various fixes for different " "platforms. (Updated by Matthias Klose; :issue:`8142`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1179 msgid "" "New method: the :mod:`datetime` module's :class:`~datetime.timedelta` class " "gained a :meth:`~datetime.timedelta.total_seconds` method that returns the " "number of seconds in the duration. (Contributed by Brian Quinlan; :issue:" "`5788`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1183 msgid "" "New method: the :class:`~decimal.Decimal` class gained a :meth:`~decimal." "Decimal.from_float` class method that performs an exact conversion of a " "floating-point number to a :class:`~decimal.Decimal`. This exact conversion " "strives for the closest decimal approximation to the floating-point " "representation's value; the resulting decimal value will therefore still " "include the inaccuracy, if any. For example, ``Decimal.from_float(0.1)`` " "returns " "``Decimal('0.1000000000000000055511151231257827021181583404541015625')``. " "(Implemented by Raymond Hettinger; :issue:`4796`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1194 msgid "" "Comparing instances of :class:`~decimal.Decimal` with floating-point numbers " "now produces sensible results based on the numeric values of the operands. " "Previously such comparisons would fall back to Python's default rules for " "comparing objects, which produced arbitrary results based on their type. " "Note that you still cannot combine :class:`Decimal` and floating-point in " "other operations such as addition, since you should be explicitly choosing " "how to convert between float and :class:`~decimal.Decimal`. (Fixed by Mark " "Dickinson; :issue:`2531`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1203 msgid "" "The constructor for :class:`~decimal.Decimal` now accepts floating-point " "numbers (added by Raymond Hettinger; :issue:`8257`) and non-European Unicode " "characters such as Arabic-Indic digits (contributed by Mark Dickinson; :" "issue:`6595`)." msgstr "" #: ../Doc/whatsnew/2.7.rst:1208 msgid "" "Most of the methods of the :class:`~decimal.Context` class now accept " "integers as well as :class:`~decimal.Decimal` instances; the only exceptions " "are the :meth:`~decimal.Context.canonical` and :meth:`~decimal.Context." "is_canonical` methods. (Patch by Juan José Conti; :issue:`7633`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1213 msgid "" "When using :class:`~decimal.Decimal` instances with a string's :meth:`~str." "format` method, the default alignment was previously left-alignment. This " "has been changed to right-alignment, which is more sensible for numeric " "types. (Changed by Mark Dickinson; :issue:`6857`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1218 msgid "" "Comparisons involving a signaling NaN value (or ``sNAN``) now signal :const:" "`InvalidOperation` instead of silently returning a true or false value " "depending on the comparison operator. Quiet NaN values (or ``NaN``) are now " "hashable. (Fixed by Mark Dickinson; :issue:`7279`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1224 msgid "" "The :mod:`difflib` module now produces output that is more compatible with " "modern :command:`diff`/:command:`patch` tools through one small change, " "using a tab character instead of spaces as a separator in the header giving " "the filename. (Fixed by Anatoly Techtonik; :issue:`7585`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1230 msgid "" "The Distutils ``sdist`` command now always regenerates the :file:`MANIFEST` " "file, since even if the :file:`MANIFEST.in` or :file:`setup.py` files " "haven't been modified, the user might have created some new files that " "should be included. (Fixed by Tarek Ziadé; :issue:`8688`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1236 msgid "" "The :mod:`doctest` module's :const:`IGNORE_EXCEPTION_DETAIL` flag will now " "ignore the name of the module containing the exception being tested. (Patch " "by Lennart Regebro; :issue:`7490`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1240 msgid "" "The :mod:`email` module's :class:`~email.message.Message` class will now " "accept a Unicode-valued payload, automatically converting the payload to the " "encoding specified by :attr:`output_charset`. (Added by R. David Murray; :" "issue:`1368247`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1245 msgid "" "The :class:`~fractions.Fraction` class now accepts a single float or :class:" "`~decimal.Decimal` instance, or two rational numbers, as arguments to its " "constructor. (Implemented by Mark Dickinson; rationals added in :issue:" "`5812`, and float/decimal in :issue:`8294`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1251 msgid "" "Ordering comparisons (``<``, ``<=``, ``>``, ``>=``) between fractions and " "complex numbers now raise a :exc:`TypeError`. This fixes an oversight, " "making the :class:`~fractions.Fraction` match the other numeric types." msgstr "" #: ../Doc/whatsnew/2.7.rst:1258 msgid "" "New class: :class:`~ftplib.FTP_TLS` in the :mod:`ftplib` module provides " "secure FTP connections using TLS encapsulation of authentication as well as " "subsequent control and data transfers. (Contributed by Giampaolo Rodola; :" "issue:`2054`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1264 msgid "" "The :meth:`~ftplib.FTP.storbinary` method for binary uploads can now restart " "uploads thanks to an added *rest* parameter (patch by Pablo Mouzo; :issue:" "`6845`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1268 msgid "" "New class decorator: :func:`~functools.total_ordering` in the :mod:" "`functools` module takes a class that defines an :meth:`__eq__` method and " "one of :meth:`__lt__`, :meth:`__le__`, :meth:`__gt__`, or :meth:`__ge__`, " "and generates the missing comparison methods. Since the :meth:`__cmp__` " "method is being deprecated in Python 3.x, this decorator makes it easier to " "define ordered classes. (Added by Raymond Hettinger; :issue:`5479`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1276 msgid "" "New function: :func:`~functools.cmp_to_key` will take an old-style " "comparison function that expects two arguments and return a new callable " "that can be used as the *key* parameter to functions such as :func:" "`sorted`, :func:`min` and :func:`max`, etc. The primary intended use is to " "help with making code compatible with Python 3.x. (Added by Raymond " "Hettinger.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1283 msgid "" "New function: the :mod:`gc` module's :func:`~gc.is_tracked` returns true if " "a given instance is tracked by the garbage collector, false otherwise. " "(Contributed by Antoine Pitrou; :issue:`4688`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1287 msgid "" "The :mod:`gzip` module's :class:`~gzip.GzipFile` now supports the context " "management protocol, so you can write ``with gzip.GzipFile(...) as f:`` " "(contributed by Hagen Fürstenau; :issue:`3860`), and it now implements the :" "class:`io.BufferedIOBase` ABC, so you can wrap it with :class:`io." "BufferedReader` for faster processing (contributed by Nir Aides; :issue:" "`7471`). It's also now possible to override the modification time recorded " "in a gzipped file by providing an optional timestamp to the constructor. " "(Contributed by Jacques Frechet; :issue:`4272`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1297 msgid "" "Files in gzip format can be padded with trailing zero bytes; the :mod:`gzip` " "module will now consume these trailing bytes. (Fixed by Tadek Pietraszek " "and Brian Curtin; :issue:`2846`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1301 msgid "" "New attribute: the :mod:`hashlib` module now has an :attr:`~hashlib.hashlib." "algorithms` attribute containing a tuple naming the supported algorithms. In " "Python 2.7, ``hashlib.algorithms`` contains ``('md5', 'sha1', 'sha224', " "'sha256', 'sha384', 'sha512')``. (Contributed by Carl Chenet; :issue:`7418`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1307 msgid "" "The default :class:`~httplib.HTTPResponse` class used by the :mod:`httplib` " "module now supports buffering, resulting in much faster reading of HTTP " "responses. (Contributed by Kristján Valur Jónsson; :issue:`4879`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1311 msgid "" "The :class:`~httplib.HTTPConnection` and :class:`~httplib.HTTPSConnection` " "classes now support a *source_address* parameter, a ``(host, port)`` 2-tuple " "giving the source address that will be used for the connection. (Contributed " "by Eldon Ziegler; :issue:`3972`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1316 msgid "" "The :mod:`ihooks` module now supports relative imports. Note that :mod:" "`ihooks` is an older module for customizing imports, superseded by the :mod:" "`imputil` module added in Python 2.0. (Relative import support added by Neil " "Schemenauer.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1323 msgid "" "The :mod:`imaplib` module now supports IPv6 addresses. (Contributed by Derek " "Morr; :issue:`1655`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1326 msgid "" "New function: the :mod:`inspect` module's :func:`~inspect.getcallargs` takes " "a callable and its positional and keyword arguments, and figures out which " "of the callable's parameters will receive each argument, returning a " "dictionary mapping argument names to their values. For example::" msgstr "" #: ../Doc/whatsnew/2.7.rst:1343 msgid "Contributed by George Sakkis; :issue:`3135`." msgstr "" #: ../Doc/whatsnew/2.7.rst:1345 msgid "" "Updated module: The :mod:`io` library has been upgraded to the version " "shipped with Python 3.1. For 3.1, the I/O library was entirely rewritten in " "C and is 2 to 20 times faster depending on the task being performed. The " "original Python version was renamed to the :mod:`_pyio` module." msgstr "" #: ../Doc/whatsnew/2.7.rst:1350 msgid "" "One minor resulting change: the :class:`io.TextIOBase` class now has an :" "attr:`errors` attribute giving the error setting used for encoding and " "decoding errors (one of ``'strict'``, ``'replace'``, ``'ignore'``)." msgstr "" #: ../Doc/whatsnew/2.7.rst:1355 msgid "" "The :class:`io.FileIO` class now raises an :exc:`OSError` when passed an " "invalid file descriptor. (Implemented by Benjamin Peterson; :issue:" "`4991`.) The :meth:`~io.IOBase.truncate` method now preserves the file " "position; previously it would change the file position to the end of the new " "file. (Fixed by Pascal Chambon; :issue:`6939`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1361 msgid "" "New function: ``itertools.compress(data, selectors)`` takes two iterators. " "Elements of *data* are returned if the corresponding value in *selectors* is " "true::" msgstr "" #: ../Doc/whatsnew/2.7.rst:1370 msgid "" "New function: ``itertools.combinations_with_replacement(iter, r)`` returns " "all the possible *r*-length combinations of elements from the iterable " "*iter*. Unlike :func:`~itertools.combinations`, individual elements can be " "repeated in the generated combinations::" msgstr "" #: ../Doc/whatsnew/2.7.rst:1379 msgid "" "Note that elements are treated as unique depending on their position in the " "input, not their actual values." msgstr "" #: ../Doc/whatsnew/2.7.rst:1382 msgid "" "The :func:`itertools.count` function now has a *step* argument that allows " "incrementing by values other than 1. :func:`~itertools.count` also now " "allows keyword arguments, and using non-integer values such as floats or :" "class:`~decimal.Decimal` instances. (Implemented by Raymond Hettinger; :" "issue:`5032`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1388 msgid "" ":func:`itertools.combinations` and :func:`itertools.product` previously " "raised :exc:`ValueError` for values of *r* larger than the input iterable. " "This was deemed a specification error, so they now return an empty " "iterator. (Fixed by Raymond Hettinger; :issue:`4816`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1393 msgid "" "Updated module: The :mod:`json` module was upgraded to version 2.0.9 of the " "simplejson package, which includes a C extension that makes encoding and " "decoding faster. (Contributed by Bob Ippolito; :issue:`4136`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1398 msgid "" "To support the new :class:`collections.OrderedDict` type, :func:`json.load` " "now has an optional *object_pairs_hook* parameter that will be called with " "any object literal that decodes to a list of pairs. (Contributed by Raymond " "Hettinger; :issue:`5381`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1403 msgid "" "The :mod:`mailbox` module's :class:`~mailbox.Maildir` class now records the " "timestamp on the directories it reads, and only re-reads them if the " "modification time has subsequently changed. This improves performance by " "avoiding unneeded directory scans. (Fixed by A.M. Kuchling and Antoine " "Pitrou; :issue:`1607951`, :issue:`6896`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1409 msgid "" "New functions: the :mod:`math` module gained :func:`~math.erf` and :func:" "`~math.erfc` for the error function and the complementary error function, :" "func:`~math.expm1` which computes ``e**x - 1`` with more precision than " "using :func:`~math.exp` and subtracting 1, :func:`~math.gamma` for the Gamma " "function, and :func:`~math.lgamma` for the natural log of the Gamma " "function. (Contributed by Mark Dickinson and nirinA raseliarison; :issue:" "`3366`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1417 msgid "" "The :mod:`multiprocessing` module's :class:`Manager*` classes can now be " "passed a callable that will be called whenever a subprocess is started, " "along with a set of arguments that will be passed to the callable. " "(Contributed by lekma; :issue:`5585`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1423 msgid "" "The :class:`~multiprocessing.Pool` class, which controls a pool of worker " "processes, now has an optional *maxtasksperchild* parameter. Worker " "processes will perform the specified number of tasks and then exit, causing " "the :class:`~multiprocessing.Pool` to start a new worker. This is useful if " "tasks may leak memory or other resources, or if some tasks will cause the " "worker to become very large. (Contributed by Charles Cazabon; :issue:`6963`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1431 msgid "" "The :mod:`nntplib` module now supports IPv6 addresses. (Contributed by Derek " "Morr; :issue:`1664`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1434 msgid "" "New functions: the :mod:`os` module wraps the following POSIX system calls: :" "func:`~os.getresgid` and :func:`~os.getresuid`, which return the real, " "effective, and saved GIDs and UIDs; :func:`~os.setresgid` and :func:`~os." "setresuid`, which set real, effective, and saved GIDs and UIDs to new " "values; :func:`~os.initgroups`, which initialize the group access list for " "the current process. (GID/UID functions contributed by Travis H.; :issue:" "`6508`. Support for initgroups added by Jean-Paul Calderone; :issue:`7333`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1444 msgid "" "The :func:`os.fork` function now re-initializes the import lock in the child " "process; this fixes problems on Solaris when :func:`~os.fork` is called from " "a thread. (Fixed by Zsolt Cserna; :issue:`7242`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1448 msgid "" "In the :mod:`os.path` module, the :func:`~os.path.normpath` and :func:`~os." "path.abspath` functions now preserve Unicode; if their input path is a " "Unicode string, the return value is also a Unicode string. (:meth:`~os.path." "normpath` fixed by Matt Giuca in :issue:`5827`; :meth:`~os.path.abspath` " "fixed by Ezio Melotti in :issue:`3426`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1454 msgid "" "The :mod:`pydoc` module now has help for the various symbols that Python " "uses. You can now do ``help('<<')`` or ``help('@')``, for example. " "(Contributed by David Laban; :issue:`4739`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1458 msgid "" "The :mod:`re` module's :func:`~re.split`, :func:`~re.sub`, and :func:`~re." "subn` now accept an optional *flags* argument, for consistency with the " "other functions in the module. (Added by Gregory P. Smith.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1462 msgid "" "New function: :func:`~runpy.run_path` in the :mod:`runpy` module will " "execute the code at a provided *path* argument. *path* can be the path of a " "Python source file (:file:`example.py`), a compiled bytecode file (:file:" "`example.pyc`), a directory (:file:`./package/`), or a zip archive (:file:" "`example.zip`). If a directory or zip path is provided, it will be added to " "the front of ``sys.path`` and the module :mod:`__main__` will be imported. " "It's expected that the directory or zip contains a :file:`__main__.py`; if " "it doesn't, some other :file:`__main__.py` might be imported from a location " "later in ``sys.path``. This makes more of the machinery of :mod:`runpy` " "available to scripts that want to mimic the way Python's command line " "processes an explicit path name. (Added by Nick Coghlan; :issue:`6816`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1476 msgid "" "New function: in the :mod:`shutil` module, :func:`~shutil.make_archive` " "takes a filename, archive type (zip or tar-format), and a directory path, " "and creates an archive containing the directory's contents. (Added by Tarek " "Ziadé.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1481 msgid "" ":mod:`shutil`'s :func:`~shutil.copyfile` and :func:`~shutil.copytree` " "functions now raise a :exc:`~shutil.SpecialFileError` exception when asked " "to copy a named pipe. Previously the code would treat named pipes like a " "regular file by opening them for reading, and this would block " "indefinitely. (Fixed by Antoine Pitrou; :issue:`3002`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1487 msgid "" "The :mod:`signal` module no longer re-installs the signal handler unless " "this is truly necessary, which fixes a bug that could make it impossible to " "catch the EINTR signal robustly. (Fixed by Charles-Francois Natali; :issue:" "`8354`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1492 msgid "" "New functions: in the :mod:`site` module, three new functions return various " "site- and user-specific paths. :func:`~site.getsitepackages` returns a list " "containing all global site-packages directories, :func:`~site." "getusersitepackages` returns the path of the user's site-packages directory, " "and :func:`~site.getuserbase` returns the value of the :envvar:`USER_BASE` " "environment variable, giving the path to a directory that can be used to " "store data. (Contributed by Tarek Ziadé; :issue:`6693`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1503 msgid "" "The :mod:`site` module now reports exceptions occurring when the :mod:" "`sitecustomize` module is imported, and will no longer catch and swallow " "the :exc:`KeyboardInterrupt` exception. (Fixed by Victor Stinner; :issue:" "`3137`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1508 msgid "" "The :func:`~socket.create_connection` function gained a *source_address* " "parameter, a ``(host, port)`` 2-tuple giving the source address that will be " "used for the connection. (Contributed by Eldon Ziegler; :issue:`3972`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1513 msgid "" "The :meth:`~socket.socket.recv_into` and :meth:`~socket.socket." "recvfrom_into` methods will now write into objects that support the buffer " "API, most usefully the :class:`bytearray` and :class:`memoryview` objects. " "(Implemented by Antoine Pitrou; :issue:`8104`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1518 msgid "" "The :mod:`SocketServer` module's :class:`~SocketServer.TCPServer` class now " "supports socket timeouts and disabling the Nagle algorithm. The :attr:" "`~SocketServer.TCPServer.disable_nagle_algorithm` class attribute defaults " "to False; if overridden to be True, new request connections will have the " "TCP_NODELAY option set to prevent buffering many small sends into a single " "TCP packet. The :attr:`~SocketServer.BaseServer.timeout` class attribute can " "hold a timeout in seconds that will be applied to the request socket; if no " "request is received within that time, :meth:`~SocketServer.BaseServer." "handle_timeout` will be called and :meth:`~SocketServer.BaseServer." "handle_request` will return. (Contributed by Kristján Valur Jónsson; :issue:" "`6192` and :issue:`6267`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1530 msgid "" "Updated module: the :mod:`sqlite3` module has been updated to version 2.6.0 " "of the `pysqlite package `__. Version " "2.6.0 includes a number of bugfixes, and adds the ability to load SQLite " "extensions from shared libraries. Call the ``enable_load_extension(True)`` " "method to enable extensions, and then call :meth:`~sqlite3.Connection." "load_extension` to load a particular shared library. (Updated by Gerhard " "Häring.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1537 msgid "" "The :mod:`ssl` module's :class:`~ssl.SSLSocket` objects now support the " "buffer API, which fixed a test suite failure (fix by Antoine Pitrou; :issue:" "`7133`) and automatically set OpenSSL's :c:macro:`SSL_MODE_AUTO_RETRY`, " "which will prevent an error code being returned from :meth:`recv` operations " "that trigger an SSL renegotiation (fix by Antoine Pitrou; :issue:`8222`)." msgstr "" #: ../Doc/whatsnew/2.7.rst:1544 msgid "" "The :func:`ssl.wrap_socket` constructor function now takes a *ciphers* " "argument that's a string listing the encryption algorithms to be allowed; " "the format of the string is described `in the OpenSSL documentation `__. (Added by " "Antoine Pitrou; :issue:`8322`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1551 msgid "" "Another change makes the extension load all of OpenSSL's ciphers and digest " "algorithms so that they're all available. Some SSL certificates couldn't be " "verified, reporting an \"unknown algorithm\" error. (Reported by Beda " "Kosata, and fixed by Antoine Pitrou; :issue:`8484`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1557 msgid "" "The version of OpenSSL being used is now available as the module attributes :" "data:`ssl.OPENSSL_VERSION` (a string), :data:`ssl.OPENSSL_VERSION_INFO` (a 5-" "tuple), and :data:`ssl.OPENSSL_VERSION_NUMBER` (an integer). (Added by " "Antoine Pitrou; :issue:`8321`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1563 msgid "" "The :mod:`struct` module will no longer silently ignore overflow errors when " "a value is too large for a particular integer format code (one of " "``bBhHiIlLqQ``); it now always raises a :exc:`struct.error` exception. " "(Changed by Mark Dickinson; :issue:`1523`.) The :func:`~struct.pack` " "function will also attempt to use :meth:`__index__` to convert and pack non-" "integers before trying the :meth:`__int__` method or reporting an error. " "(Changed by Mark Dickinson; :issue:`8300`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1572 msgid "" "New function: the :mod:`subprocess` module's :func:`~subprocess." "check_output` runs a command with a specified set of arguments and returns " "the command's output as a string when the command runs without error, or " "raises a :exc:`~subprocess.CalledProcessError` exception otherwise." msgstr "" #: ../Doc/whatsnew/2.7.rst:1587 msgid "(Contributed by Gregory P. Smith.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1589 msgid "" "The :mod:`subprocess` module will now retry its internal system calls on " "receiving an :const:`EINTR` signal. (Reported by several people; final " "patch by Gregory P. Smith in :issue:`1068268`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1593 msgid "" "New function: :func:`~symtable.Symbol.is_declared_global` in the :mod:" "`symtable` module returns true for variables that are explicitly declared to " "be global, false for ones that are implicitly global. (Contributed by Jeremy " "Hylton.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1598 ../Doc/whatsnew/2.7.rst:2484 msgid "" "The :mod:`syslog` module will now use the value of ``sys.argv[0]`` as the " "identifier instead of the previous default value of ``'python'``. (Changed " "by Sean Reifschneider; :issue:`8451`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1602 msgid "" "The ``sys.version_info`` value is now a named tuple, with attributes named :" "attr:`major`, :attr:`minor`, :attr:`micro`, :attr:`releaselevel`, and :attr:" "`serial`. (Contributed by Ross Light; :issue:`4285`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1607 msgid "" ":func:`sys.getwindowsversion` also returns a named tuple, with attributes " "named :attr:`major`, :attr:`minor`, :attr:`build`, :attr:`platform`, :attr:" "`service_pack`, :attr:`service_pack_major`, :attr:`service_pack_minor`, :" "attr:`suite_mask`, and :attr:`product_type`. (Contributed by Brian Curtin; :" "issue:`7766`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1613 ../Doc/whatsnew/2.7.rst:2488 msgid "" "The :mod:`tarfile` module's default error handling has changed, to no longer " "suppress fatal errors. The default error level was previously 0, which " "meant that errors would only result in a message being written to the debug " "log, but because the debug log is not activated by default, these errors go " "unnoticed. The default error level is now 1, which raises an exception if " "there's an error. (Changed by Lars Gustäbel; :issue:`7357`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1621 msgid "" ":mod:`tarfile` now supports filtering the :class:`~tarfile.TarInfo` objects " "being added to a tar file. When you call :meth:`~tarfile.TarFile.add`, you " "may supply an optional *filter* argument that's a callable. The *filter* " "callable will be passed the :class:`~tarfile.TarInfo` for every file being " "added, and can modify and return it. If the callable returns ``None``, the " "file will be excluded from the resulting archive. This is more powerful " "than the existing *exclude* argument, which has therefore been deprecated. " "(Added by Lars Gustäbel; :issue:`6856`.) The :class:`~tarfile.TarFile` class " "also now supports the context management protocol. (Added by Lars Gustäbel; :" "issue:`7232`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1633 msgid "" "The :meth:`~threading.Event.wait` method of the :class:`threading.Event` " "class now returns the internal flag on exit. This means the method will " "usually return true because :meth:`~threading.Event.wait` is supposed to " "block until the internal flag becomes true. The return value will only be " "false if a timeout was provided and the operation timed out. (Contributed by " "Tim Lesher; :issue:`1674032`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1640 msgid "" "The Unicode database provided by the :mod:`unicodedata` module is now used " "internally to determine which characters are numeric, whitespace, or " "represent line breaks. The database also includes information from the :" "file:`Unihan.txt` data file (patch by Anders Chrigström and Amaury Forgeot " "d'Arc; :issue:`1571184`) and has been updated to version 5.2.0 (updated by " "Florent Xicluna; :issue:`8024`)." msgstr "" #: ../Doc/whatsnew/2.7.rst:1648 ../Doc/whatsnew/2.7.rst:2496 msgid "" "The :mod:`urlparse` module's :func:`~urlparse.urlsplit` now handles unknown " "URL schemes in a fashion compliant with :rfc:`3986`: if the URL is of the " "form ``\"://...\"``, the text before the ``://`` is treated as " "the scheme, even if it's a made-up scheme that the module doesn't know " "about. This change may break code that worked around the old behaviour. " "For example, Python 2.6.4 or 2.5 will return the following:" msgstr "" #: ../Doc/whatsnew/2.7.rst:1663 ../Doc/whatsnew/2.7.rst:2511 msgid "Python 2.7 (and Python 2.6.5) will return:" msgstr "" #: ../Doc/whatsnew/2.7.rst:1672 ../Doc/whatsnew/2.7.rst:2520 msgid "" "(Python 2.7 actually produces slightly different output, since it returns a " "named tuple instead of a standard tuple.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1675 msgid "" "The :mod:`urlparse` module also supports IPv6 literal addresses as defined " "by :rfc:`2732` (contributed by Senthil Kumaran; :issue:`2987`)." msgstr "" #: ../Doc/whatsnew/2.7.rst:1685 msgid "" "New class: the :class:`~weakref.WeakSet` class in the :mod:`weakref` module " "is a set that only holds weak references to its elements; elements will be " "removed once there are no references pointing to them. (Originally " "implemented in Python 3.x by Raymond Hettinger, and backported to 2.7 by " "Michael Foord.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1691 msgid "" "The ElementTree library, :mod:`xml.etree`, no longer escapes ampersands and " "angle brackets when outputting an XML processing instruction (which looks " "like ````) or comment (which looks like " "````). (Patch by Neil Muller; :issue:`2746`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1697 msgid "" "The XML-RPC client and server, provided by the :mod:`xmlrpclib` and :mod:" "`SimpleXMLRPCServer` modules, have improved performance by supporting " "HTTP/1.1 keep-alive and by optionally using gzip encoding to compress the " "XML being exchanged. The gzip compression is controlled by the :attr:" "`encode_threshold` attribute of :class:`SimpleXMLRPCRequestHandler`, which " "contains a size in bytes; responses larger than this will be compressed. " "(Contributed by Kristján Valur Jónsson; :issue:`6267`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1706 msgid "" "The :mod:`zipfile` module's :class:`~zipfile.ZipFile` now supports the " "context management protocol, so you can write ``with zipfile.ZipFile(...) as " "f:``. (Contributed by Brian Curtin; :issue:`5511`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1710 msgid "" ":mod:`zipfile` now also supports archiving empty directories and extracts " "them correctly. (Fixed by Kuba Wieczorek; :issue:`4710`.) Reading files out " "of an archive is faster, and interleaving :meth:`~zipfile.ZipFile.read` and :" "meth:`~zipfile.ZipFile.readline` now works correctly. (Contributed by Nir " "Aides; :issue:`7610`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1716 msgid "" "The :func:`~zipfile.is_zipfile` function now accepts a file object, in " "addition to the path names accepted in earlier versions. (Contributed by " "Gabriel Genellina; :issue:`4756`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1720 msgid "" "The :meth:`~zipfile.ZipFile.writestr` method now has an optional " "*compress_type* parameter that lets you override the default compression " "method specified in the :class:`~zipfile.ZipFile` constructor. (Contributed " "by Ronald Oussoren; :issue:`6003`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1733 msgid "New module: importlib" msgstr "" #: ../Doc/whatsnew/2.7.rst:1735 msgid "" "Python 3.1 includes the :mod:`importlib` package, a re-implementation of the " "logic underlying Python's :keyword:`import` statement. :mod:`importlib` is " "useful for implementors of Python interpreters and to users who wish to " "write new importers that can participate in the import process. Python 2.7 " "doesn't contain the complete :mod:`importlib` package, but instead has a " "tiny subset that contains a single function, :func:`~importlib." "import_module`." msgstr "" #: ../Doc/whatsnew/2.7.rst:1743 msgid "" "``import_module(name, package=None)`` imports a module. *name* is a string " "containing the module or package's name. It's possible to do relative " "imports by providing a string that begins with a ``.`` character, such as " "``..utils.errors``. For relative imports, the *package* argument must be " "provided and is the name of the package that will be used as the anchor for " "the relative import. :func:`~importlib.import_module` both inserts the " "imported module into ``sys.modules`` and returns the module object." msgstr "" #: ../Doc/whatsnew/2.7.rst:1752 msgid "Here are some examples::" msgstr "" #: ../Doc/whatsnew/2.7.rst:1763 msgid "" ":mod:`importlib` was implemented by Brett Cannon and introduced in Python " "3.1." msgstr "" #: ../Doc/whatsnew/2.7.rst:1768 msgid "New module: sysconfig" msgstr "" #: ../Doc/whatsnew/2.7.rst:1770 msgid "" "The :mod:`sysconfig` module has been pulled out of the Distutils package, " "becoming a new top-level module in its own right. :mod:`sysconfig` provides " "functions for getting information about Python's build process: compiler " "switches, installation paths, the platform name, and whether Python is " "running from its source directory." msgstr "" #: ../Doc/whatsnew/2.7.rst:1777 msgid "Some of the functions in the module are:" msgstr "" #: ../Doc/whatsnew/2.7.rst:1779 msgid "" ":func:`~sysconfig.get_config_var` returns variables from Python's Makefile " "and the :file:`pyconfig.h` file." msgstr "" #: ../Doc/whatsnew/2.7.rst:1781 msgid "" ":func:`~sysconfig.get_config_vars` returns a dictionary containing all of " "the configuration variables." msgstr "" #: ../Doc/whatsnew/2.7.rst:1783 msgid "" ":func:`~sysconfig.get_path` returns the configured path for a particular " "type of module: the standard library, site-specific modules, platform-" "specific modules, etc." msgstr "" #: ../Doc/whatsnew/2.7.rst:1786 msgid "" ":func:`~sysconfig.is_python_build` returns true if you're running a binary " "from a Python source tree, and false otherwise." msgstr "" #: ../Doc/whatsnew/2.7.rst:1789 msgid "" "Consult the :mod:`sysconfig` documentation for more details and for a " "complete list of functions." msgstr "" #: ../Doc/whatsnew/2.7.rst:1792 msgid "" "The Distutils package and :mod:`sysconfig` are now maintained by Tarek " "Ziadé, who has also started a Distutils2 package (source repository at " "https://hg.python.org/distutils2/) for developing a next-generation version " "of Distutils." msgstr "" #: ../Doc/whatsnew/2.7.rst:1799 msgid "ttk: Themed Widgets for Tk" msgstr "" #: ../Doc/whatsnew/2.7.rst:1801 msgid "" "Tcl/Tk 8.5 includes a set of themed widgets that re-implement basic Tk " "widgets but have a more customizable appearance and can therefore more " "closely resemble the native platform's widgets. This widget set was " "originally called Tile, but was renamed to Ttk (for \"themed Tk\") on being " "added to Tcl/Tck release 8.5." msgstr "" #: ../Doc/whatsnew/2.7.rst:1807 msgid "" "To learn more, read the :mod:`ttk` module documentation. You may also wish " "to read the Tcl/Tk manual page describing the Ttk theme engine, available at " "https://www.tcl.tk/man/tcl8.5/TkCmd/ttk_intro.htm. Some screenshots of the " "Python/Ttk code in use are at http://code.google.com/p/python-ttk/wiki/" "Screenshots." msgstr "" #: ../Doc/whatsnew/2.7.rst:1814 msgid "" "The :mod:`ttk` module was written by Guilherme Polo and added in :issue:" "`2983`. An alternate version called ``Tile.py``, written by Martin Franklin " "and maintained by Kevin Walzer, was proposed for inclusion in :issue:`2618`, " "but the authors argued that Guilherme Polo's work was more comprehensive." msgstr "" #: ../Doc/whatsnew/2.7.rst:1824 msgid "Updated module: unittest" msgstr "" #: ../Doc/whatsnew/2.7.rst:1826 msgid "" "The :mod:`unittest` module was greatly enhanced; many new features were " "added. Most of these features were implemented by Michael Foord, unless " "otherwise noted. The enhanced version of the module is downloadable " "separately for use with Python versions 2.4 to 2.6, packaged as the :mod:" "`unittest2` package, from https://pypi.python.org/pypi/unittest2." msgstr "" #: ../Doc/whatsnew/2.7.rst:1833 msgid "" "When used from the command line, the module can automatically discover " "tests. It's not as fancy as `py.test `__ or `nose " "`__, but provides a simple way to run " "tests kept within a set of package directories. For example, the following " "command will search the :file:`test/` subdirectory for any importable test " "files named ``test*.py``::" msgstr "" #: ../Doc/whatsnew/2.7.rst:1842 msgid "" "Consult the :mod:`unittest` module documentation for more details. " "(Developed in :issue:`6001`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1845 msgid "The :func:`~unittest.main` function supports some other new options:" msgstr "" #: ../Doc/whatsnew/2.7.rst:1847 msgid "" ":option:`-b ` or :option:`--buffer` will buffer the standard " "output and standard error streams during each test. If the test passes, any " "resulting output will be discarded; on failure, the buffered output will be " "displayed." msgstr "" #: ../Doc/whatsnew/2.7.rst:1852 msgid "" ":option:`-c ` or :option:`--catch` will cause the control-C " "interrupt to be handled more gracefully. Instead of interrupting the test " "process immediately, the currently running test will be completed and then " "the partial results up to the interruption will be reported. If you're " "impatient, a second press of control-C will cause an immediate interruption." msgstr "" #: ../Doc/whatsnew/2.7.rst:1859 msgid "" "This control-C handler tries to avoid causing problems when the code being " "tested or the tests being run have defined a signal handler of their own, by " "noticing that a signal handler was already set and calling it. If this " "doesn't work for you, there's a :func:`~unittest.removeHandler` decorator " "that can be used to mark tests that should have the control-C handling " "disabled." msgstr "" #: ../Doc/whatsnew/2.7.rst:1866 msgid "" ":option:`-f ` or :option:`--failfast` makes test execution stop " "immediately when a test fails instead of continuing to execute further " "tests. (Suggested by Cliff Dyer and implemented by Michael Foord; :issue:" "`8074`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1871 msgid "" "The progress messages now show 'x' for expected failures and 'u' for " "unexpected successes when run in verbose mode. (Contributed by Benjamin " "Peterson.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1875 msgid "" "Test cases can raise the :exc:`~unittest.SkipTest` exception to skip a test " "(:issue:`1034053`)." msgstr "" #: ../Doc/whatsnew/2.7.rst:1878 msgid "" "The error messages for :meth:`~unittest.TestCase.assertEqual`, :meth:" "`~unittest.TestCase.assertTrue`, and :meth:`~unittest.TestCase.assertFalse` " "failures now provide more information. If you set the :attr:`~unittest." "TestCase.longMessage` attribute of your :class:`~unittest.TestCase` classes " "to True, both the standard error message and any additional message you " "provide will be printed for failures. (Added by Michael Foord; :issue:" "`5663`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1885 msgid "" "The :meth:`~unittest.TestCase.assertRaises` method now returns a context " "handler when called without providing a callable object to run. For " "example, you can write this::" msgstr "" #: ../Doc/whatsnew/2.7.rst:1892 msgid "(Implemented by Antoine Pitrou; :issue:`4444`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1896 msgid "" "Module- and class-level setup and teardown fixtures are now supported. " "Modules can contain :func:`~unittest.setUpModule` and :func:`~unittest." "tearDownModule` functions. Classes can have :meth:`~unittest.TestCase." "setUpClass` and :meth:`~unittest.TestCase.tearDownClass` methods that must " "be defined as class methods (using ``@classmethod`` or equivalent). These " "functions and methods are invoked when the test runner switches to a test " "case in a different module or class." msgstr "" #: ../Doc/whatsnew/2.7.rst:1904 msgid "" "The methods :meth:`~unittest.TestCase.addCleanup` and :meth:`~unittest." "TestCase.doCleanups` were added. :meth:`~unittest.TestCase.addCleanup` lets " "you add cleanup functions that will be called unconditionally (after :meth:" "`~unittest.TestCase.setUp` if :meth:`~unittest.TestCase.setUp` fails, " "otherwise after :meth:`~unittest.TestCase.tearDown`). This allows for much " "simpler resource allocation and deallocation during tests (:issue:`5679`)." msgstr "" #: ../Doc/whatsnew/2.7.rst:1912 msgid "" "A number of new methods were added that provide more specialized tests. " "Many of these methods were written by Google engineers for use in their test " "suites; Gregory P. Smith, Michael Foord, and GvR worked on merging them into " "Python's version of :mod:`unittest`." msgstr "" #: ../Doc/whatsnew/2.7.rst:1917 msgid "" ":meth:`~unittest.TestCase.assertIsNone` and :meth:`~unittest.TestCase." "assertIsNotNone` take one expression and verify that the result is or is not " "``None``." msgstr "" #: ../Doc/whatsnew/2.7.rst:1920 msgid "" ":meth:`~unittest.TestCase.assertIs` and :meth:`~unittest.TestCase." "assertIsNot` take two values and check whether the two values evaluate to " "the same object or not. (Added by Michael Foord; :issue:`2578`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1924 msgid "" ":meth:`~unittest.TestCase.assertIsInstance` and :meth:`~unittest.TestCase." "assertNotIsInstance` check whether the resulting object is an instance of a " "particular class, or of one of a tuple of classes. (Added by Georg Brandl; :" "issue:`7031`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1929 msgid "" ":meth:`~unittest.TestCase.assertGreater`, :meth:`~unittest.TestCase." "assertGreaterEqual`, :meth:`~unittest.TestCase.assertLess`, and :meth:" "`~unittest.TestCase.assertLessEqual` compare two quantities." msgstr "" #: ../Doc/whatsnew/2.7.rst:1933 msgid "" ":meth:`~unittest.TestCase.assertMultiLineEqual` compares two strings, and if " "they're not equal, displays a helpful comparison that highlights the " "differences in the two strings. This comparison is now used by default when " "Unicode strings are compared with :meth:`~unittest.TestCase.assertEqual`." msgstr "" #: ../Doc/whatsnew/2.7.rst:1938 msgid "" ":meth:`~unittest.TestCase.assertRegexpMatches` and :meth:`~unittest.TestCase." "assertNotRegexpMatches` checks whether the first argument is a string " "matching or not matching the regular expression provided as the second " "argument (:issue:`8038`)." msgstr "" #: ../Doc/whatsnew/2.7.rst:1943 msgid "" ":meth:`~unittest.TestCase.assertRaisesRegexp` checks whether a particular " "exception is raised, and then also checks that the string representation of " "the exception matches the provided regular expression." msgstr "" #: ../Doc/whatsnew/2.7.rst:1947 msgid "" ":meth:`~unittest.TestCase.assertIn` and :meth:`~unittest.TestCase." "assertNotIn` tests whether *first* is or is not in *second*." msgstr "" #: ../Doc/whatsnew/2.7.rst:1950 msgid "" ":meth:`~unittest.TestCase.assertItemsEqual` tests whether two provided " "sequences contain the same elements." msgstr "" #: ../Doc/whatsnew/2.7.rst:1953 msgid "" ":meth:`~unittest.TestCase.assertSetEqual` compares whether two sets are " "equal, and only reports the differences between the sets in case of error." msgstr "" #: ../Doc/whatsnew/2.7.rst:1956 msgid "" "Similarly, :meth:`~unittest.TestCase.assertListEqual` and :meth:`~unittest." "TestCase.assertTupleEqual` compare the specified types and explain any " "differences without necessarily printing their full values; these methods " "are now used by default when comparing lists and tuples using :meth:" "`~unittest.TestCase.assertEqual`. More generally, :meth:`~unittest.TestCase." "assertSequenceEqual` compares two sequences and can optionally check whether " "both sequences are of a particular type." msgstr "" #: ../Doc/whatsnew/2.7.rst:1964 msgid "" ":meth:`~unittest.TestCase.assertDictEqual` compares two dictionaries and " "reports the differences; it's now used by default when you compare two " "dictionaries using :meth:`~unittest.TestCase.assertEqual`. :meth:`~unittest." "TestCase.assertDictContainsSubset` checks whether all of the key/value pairs " "in *first* are found in *second*." msgstr "" #: ../Doc/whatsnew/2.7.rst:1969 msgid "" ":meth:`~unittest.TestCase.assertAlmostEqual` and :meth:`~unittest.TestCase." "assertNotAlmostEqual` test whether *first* and *second* are approximately " "equal. This method can either round their difference to an optionally-" "specified number of *places* (the default is 7) and compare it to zero, or " "require the difference to be smaller than a supplied *delta* value." msgstr "" #: ../Doc/whatsnew/2.7.rst:1975 msgid "" ":meth:`~unittest.TestLoader.loadTestsFromName` properly honors the :attr:" "`~unittest.TestLoader.suiteClass` attribute of the :class:`~unittest." "TestLoader`. (Fixed by Mark Roddy; :issue:`6866`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1979 msgid "" "A new hook lets you extend the :meth:`~unittest.TestCase.assertEqual` method " "to handle new data types. The :meth:`~unittest.TestCase." "addTypeEqualityFunc` method takes a type object and a function. The function " "will be used when both of the objects being compared are of the specified " "type. This function should compare the two objects and raise an exception " "if they don't match; it's a good idea for the function to provide additional " "information about why the two objects aren't matching, much as the new " "sequence comparison methods do." msgstr "" #: ../Doc/whatsnew/2.7.rst:1988 msgid "" ":func:`unittest.main` now takes an optional ``exit`` argument. If False, :" "func:`~unittest.main` doesn't call :func:`sys.exit`, allowing :func:" "`~unittest.main` to be used from the interactive interpreter. (Contributed " "by J. Pablo Fernández; :issue:`3379`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1993 msgid "" ":class:`~unittest.TestResult` has new :meth:`~unittest.TestResult." "startTestRun` and :meth:`~unittest.TestResult.stopTestRun` methods that are " "called immediately before and after a test run. (Contributed by Robert " "Collins; :issue:`5728`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:1997 msgid "" "With all these changes, the :file:`unittest.py` was becoming awkwardly " "large, so the module was turned into a package and the code split into " "several files (by Benjamin Peterson). This doesn't affect how the module is " "imported or used." msgstr "" #: ../Doc/whatsnew/2.7.rst:2005 msgid "http://www.voidspace.org.uk/python/articles/unittest2.shtml" msgstr "" #: ../Doc/whatsnew/2.7.rst:2005 msgid "" "Describes the new features, how to use them, and the rationale for various " "design decisions. (By Michael Foord.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2011 msgid "Updated module: ElementTree 1.3" msgstr "Module mis-à-jour : ElementTree 1.3" #: ../Doc/whatsnew/2.7.rst:2013 msgid "" "The version of the ElementTree library included with Python was updated to " "version 1.3. Some of the new features are:" msgstr "" #: ../Doc/whatsnew/2.7.rst:2016 msgid "" "The various parsing functions now take a *parser* keyword argument giving " "an :class:`~xml.etree.ElementTree.XMLParser` instance that will be used. " "This makes it possible to override the file's internal encoding::" msgstr "" #: ../Doc/whatsnew/2.7.rst:2023 msgid "" "Errors in parsing XML now raise a :exc:`ParseError` exception, whose " "instances have a :attr:`position` attribute containing a (*line*, *column*) " "tuple giving the location of the problem." msgstr "" #: ../Doc/whatsnew/2.7.rst:2027 msgid "" "ElementTree's code for converting trees to a string has been significantly " "reworked, making it roughly twice as fast in many cases. The :meth:" "`ElementTree.write() ` and :meth:" "`Element.write` methods now have a *method* parameter that can be \"xml" "\" (the default), \"html\", or \"text\". HTML mode will output empty " "elements as ```` instead of ````, and text mode will " "skip over elements and only output the text chunks. If you set the :attr:" "`tag` attribute of an element to ``None`` but leave its children in place, " "the element will be omitted when the tree is written out, so you don't need " "to do more extensive rearrangement to remove a single element." msgstr "" #: ../Doc/whatsnew/2.7.rst:2039 msgid "" "Namespace handling has also been improved. All ``xmlns:`` " "declarations are now output on the root element, not scattered throughout " "the resulting XML. You can set the default namespace for a tree by setting " "the :attr:`default_namespace` attribute and can register new prefixes with :" "meth:`~xml.etree.ElementTree.register_namespace`. In XML mode, you can use " "the true/false *xml_declaration* parameter to suppress the XML declaration." msgstr "" #: ../Doc/whatsnew/2.7.rst:2047 msgid "" "New :class:`~xml.etree.ElementTree.Element` method: :meth:`~xml.etree." "ElementTree.Element.extend` appends the items from a sequence to the " "element's children. Elements themselves behave like sequences, so it's easy " "to move children from one element to another::" msgstr "" #: ../Doc/whatsnew/2.7.rst:2064 msgid "" "New :class:`Element` method: :meth:`~xml.etree.ElementTree.Element.iter` " "yields the children of the element as a generator. It's also possible to " "write ``for child in elem:`` to loop over an element's children. The " "existing method :meth:`getiterator` is now deprecated, as is :meth:" "`getchildren` which constructs and returns a list of children." msgstr "" #: ../Doc/whatsnew/2.7.rst:2071 msgid "" "New :class:`Element` method: :meth:`~xml.etree.ElementTree.Element.itertext` " "yields all chunks of text that are descendants of the element. For example::" msgstr "" #: ../Doc/whatsnew/2.7.rst:2082 msgid "" "Deprecated: using an element as a Boolean (i.e., ``if elem:``) would return " "true if the element had any children, or false if there were no children. " "This behaviour is confusing -- ``None`` is false, but so is a childless " "element? -- so it will now trigger a :exc:`FutureWarning`. In your code, " "you should be explicit: write ``len(elem) != 0`` if you're interested in the " "number of children, or ``elem is not None``." msgstr "" #: ../Doc/whatsnew/2.7.rst:2090 msgid "" "Fredrik Lundh develops ElementTree and produced the 1.3 version; you can " "read his article describing 1.3 at http://effbot.org/zone/elementtree-13-" "intro.htm. Florent Xicluna updated the version included with Python, after " "discussions on python-dev and in :issue:`6472`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2104 msgid "" "The latest release of the GNU Debugger, GDB 7, can be `scripted using Python " "`__. When you " "begin debugging an executable program P, GDB will look for a file named ``P-" "gdb.py`` and automatically read it. Dave Malcolm contributed a :file:" "`python-gdb.py` that adds a number of commands useful when debugging Python " "itself. For example, ``py-up`` and ``py-down`` go up or down one Python " "stack frame, which usually corresponds to several C stack frames. ``py-" "print`` prints the value of a Python variable, and ``py-bt`` prints the " "Python stack trace. (Added as a result of :issue:`8032`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2116 msgid "" "If you use the :file:`.gdbinit` file provided with Python, the \"pyo\" macro " "in the 2.7 version now works correctly when the thread being debugged " "doesn't hold the GIL; the macro now acquires it before printing. " "(Contributed by Victor Stinner; :issue:`3632`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2121 msgid "" ":c:func:`Py_AddPendingCall` is now thread-safe, letting any worker thread " "submit notifications to the main Python thread. This is particularly useful " "for asynchronous IO operations. (Contributed by Kristján Valur Jónsson; :" "issue:`4293`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2126 msgid "" "New function: :c:func:`PyCode_NewEmpty` creates an empty code object; only " "the filename, function name, and first line number are required. This is " "useful for extension modules that are attempting to construct a more useful " "traceback stack. Previously such extensions needed to call :c:func:" "`PyCode_New`, which had many more arguments. (Added by Jeffrey Yasskin.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2133 msgid "" "New function: :c:func:`PyErr_NewExceptionWithDoc` creates a new exception " "class, just as the existing :c:func:`PyErr_NewException` does, but takes an " "extra ``char *`` argument containing the docstring for the new exception " "class. (Added by 'lekma' on the Python bug tracker; :issue:`7033`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2139 msgid "" "New function: :c:func:`PyFrame_GetLineNumber` takes a frame object and " "returns the line number that the frame is currently executing. Previously " "code would need to get the index of the bytecode instruction currently " "executing, and then look up the line number corresponding to that address. " "(Added by Jeffrey Yasskin.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2145 msgid "" "New functions: :c:func:`PyLong_AsLongAndOverflow` and :c:func:" "`PyLong_AsLongLongAndOverflow` approximates a Python long integer as a C :c:" "type:`long` or :c:type:`long long`. If the number is too large to fit into " "the output type, an *overflow* flag is set and returned to the caller. " "(Contributed by Case Van Horsen; :issue:`7528` and :issue:`7767`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2152 msgid "" "New function: stemming from the rewrite of string-to-float conversion, a " "new :c:func:`PyOS_string_to_double` function was added. The old :c:func:" "`PyOS_ascii_strtod` and :c:func:`PyOS_ascii_atof` functions are now " "deprecated." msgstr "" #: ../Doc/whatsnew/2.7.rst:2157 msgid "" "New function: :c:func:`PySys_SetArgvEx` sets the value of ``sys.argv`` and " "can optionally update ``sys.path`` to include the directory containing the " "script named by ``sys.argv[0]`` depending on the value of an *updatepath* " "parameter." msgstr "" #: ../Doc/whatsnew/2.7.rst:2162 msgid "" "This function was added to close a security hole for applications that embed " "Python. The old function, :c:func:`PySys_SetArgv`, would always update " "``sys.path``, and sometimes it would add the current directory. This meant " "that, if you ran an application embedding Python in a directory controlled " "by someone else, attackers could put a Trojan-horse module in the directory " "(say, a file named :file:`os.py`) that your application would then import " "and run." msgstr "" #: ../Doc/whatsnew/2.7.rst:2170 msgid "" "If you maintain a C/C++ application that embeds Python, check whether you're " "calling :c:func:`PySys_SetArgv` and carefully consider whether the " "application should be using :c:func:`PySys_SetArgvEx` with *updatepath* set " "to false." msgstr "" #: ../Doc/whatsnew/2.7.rst:2175 msgid "" "Security issue reported as `CVE-2008-5983 `_; discussed in :issue:`5753`, and fixed by " "Antoine Pitrou." msgstr "" #: ../Doc/whatsnew/2.7.rst:2179 msgid "" "New macros: the Python header files now define the following macros: :c:" "macro:`Py_ISALNUM`, :c:macro:`Py_ISALPHA`, :c:macro:`Py_ISDIGIT`, :c:macro:" "`Py_ISLOWER`, :c:macro:`Py_ISSPACE`, :c:macro:`Py_ISUPPER`, :c:macro:" "`Py_ISXDIGIT`, :c:macro:`Py_TOLOWER`, and :c:macro:`Py_TOUPPER`. All of " "these functions are analogous to the C standard macros for classifying " "characters, but ignore the current locale setting, because in several places " "Python needs to analyze characters in a locale-independent way. (Added by " "Eric Smith; :issue:`5793`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2197 msgid "" "Removed function: :c:macro:`PyEval_CallObject` is now only available as a " "macro. A function version was being kept around to preserve ABI linking " "compatibility, but that was in 1997; it can certainly be deleted by now. " "(Removed by Antoine Pitrou; :issue:`8276`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2202 msgid "" "New format codes: the :c:func:`PyFormat_FromString`, :c:func:" "`PyFormat_FromStringV`, and :c:func:`PyErr_Format` functions now accept ``" "%lld`` and ``%llu`` format codes for displaying C's :c:type:`long long` " "types. (Contributed by Mark Dickinson; :issue:`7228`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2208 msgid "" "The complicated interaction between threads and process forking has been " "changed. Previously, the child process created by :func:`os.fork` might " "fail because the child is created with only a single thread running, the " "thread performing the :func:`os.fork`. If other threads were holding a lock, " "such as Python's import lock, when the fork was performed, the lock would " "still be marked as \"held\" in the new process. But in the child process " "nothing would ever release the lock, since the other threads weren't " "replicated, and the child process would no longer be able to perform imports." msgstr "" #: ../Doc/whatsnew/2.7.rst:2218 msgid "" "Python 2.7 acquires the import lock before performing an :func:`os.fork`, " "and will also clean up any locks created using the :mod:`threading` module. " "C extension modules that have internal locks, or that call :c:func:`fork()` " "themselves, will not benefit from this clean-up." msgstr "" #: ../Doc/whatsnew/2.7.rst:2224 msgid "(Fixed by Thomas Wouters; :issue:`1590864`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2226 msgid "" "The :c:func:`Py_Finalize` function now calls the internal :func:`threading." "_shutdown` function; this prevents some exceptions from being raised when an " "interpreter shuts down. (Patch by Adam Olsen; :issue:`1722344`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2231 msgid "" "When using the :c:type:`PyMemberDef` structure to define attributes of a " "type, Python will no longer let you try to delete or set a :const:" "`T_STRING_INPLACE` attribute." msgstr "" #: ../Doc/whatsnew/2.7.rst:2237 msgid "" "Global symbols defined by the :mod:`ctypes` module are now prefixed with " "``Py``, or with ``_ctypes``. (Implemented by Thomas Heller; :issue:`3102`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2241 msgid "" "New configure option: the :option:`--with-system-expat` switch allows " "building the :mod:`pyexpat` module to use the system Expat library. " "(Contributed by Arfrever Frehtes Taifersar Arahesis; :issue:`7609`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2245 msgid "" "New configure option: the :option:`--with-valgrind` option will now disable " "the pymalloc allocator, which is difficult for the Valgrind memory-error " "detector to analyze correctly. Valgrind will therefore be better at " "detecting memory leaks and overruns. (Contributed by James Henstridge; :" "issue:`2422`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2252 msgid "" "New configure option: you can now supply an empty string to :option:`--with-" "dbmliborder=` in order to disable all of the various DBM modules. (Added by " "Arfrever Frehtes Taifersar Arahesis; :issue:`6491`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2257 msgid "" "The :program:`configure` script now checks for floating-point rounding bugs " "on certain 32-bit Intel chips and defines a :c:macro:`X87_DOUBLE_ROUNDING` " "preprocessor definition. No code currently uses this definition, but it's " "available if anyone wishes to use it. (Added by Mark Dickinson; :issue:" "`2937`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2263 msgid "" ":program:`configure` also now sets a :envvar:`LDCXXSHARED` Makefile variable " "for supporting C++ linking. (Contributed by Arfrever Frehtes Taifersar " "Arahesis; :issue:`1222585`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2267 msgid "" "The build process now creates the necessary files for pkg-config support. " "(Contributed by Clinton Roy; :issue:`3585`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2270 msgid "" "The build process now supports Subversion 1.7. (Contributed by Arfrever " "Frehtes Taifersar Arahesis; :issue:`6094`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2277 msgid "Capsules" msgstr "Capsules" #: ../Doc/whatsnew/2.7.rst:2279 msgid "" "Python 3.1 adds a new C datatype, :c:type:`PyCapsule`, for providing a C API " "to an extension module. A capsule is essentially the holder of a C ``void " "*`` pointer, and is made available as a module attribute; for example, the :" "mod:`socket` module's API is exposed as ``socket.CAPI``, and :mod:" "`unicodedata` exposes ``ucnhash_CAPI``. Other extensions can import the " "module, access its dictionary to get the capsule object, and then get the " "``void *`` pointer, which will usually point to an array of pointers to the " "module's various API functions." msgstr "" #: ../Doc/whatsnew/2.7.rst:2288 msgid "" "There is an existing data type already used for this, :c:type:`PyCObject`, " "but it doesn't provide type safety. Evil code written in pure Python could " "cause a segmentation fault by taking a :c:type:`PyCObject` from module A and " "somehow substituting it for the :c:type:`PyCObject` in module B. Capsules " "know their own name, and getting the pointer requires providing the name:" msgstr "" #: ../Doc/whatsnew/2.7.rst:2306 msgid "" "You are assured that ``vtable`` points to whatever you're expecting. If a " "different capsule was passed in, :c:func:`PyCapsule_IsValid` would detect " "the mismatched name and return false. Refer to :ref:`using-capsules` for " "more information on using these objects." msgstr "" #: ../Doc/whatsnew/2.7.rst:2311 msgid "" "Python 2.7 now uses capsules internally to provide various extension-module " "APIs, but the :c:func:`PyCObject_AsVoidPtr` was modified to handle capsules, " "preserving compile-time compatibility with the :c:type:`CObject` interface. " "Use of :c:func:`PyCObject_AsVoidPtr` will signal a :exc:" "`PendingDeprecationWarning`, which is silent by default." msgstr "" #: ../Doc/whatsnew/2.7.rst:2318 msgid "" "Implemented in Python 3.1 and backported to 2.7 by Larry Hastings; discussed " "in :issue:`5630`." msgstr "" #: ../Doc/whatsnew/2.7.rst:2327 msgid "" "The :mod:`msvcrt` module now contains some constants from the :file:" "`crtassem.h` header file: :data:`CRT_ASSEMBLY_VERSION`, :data:" "`VC_ASSEMBLY_PUBLICKEYTOKEN`, and :data:`LIBRARIES_ASSEMBLY_NAME_PREFIX`. " "(Contributed by David Cournapeau; :issue:`4365`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2334 msgid "" "The :mod:`_winreg` module for accessing the registry now implements the :" "func:`~_winreg.CreateKeyEx` and :func:`~_winreg.DeleteKeyEx` functions, " "extended versions of previously-supported functions that take several extra " "arguments. The :func:`~_winreg.DisableReflectionKey`, :func:`~_winreg." "EnableReflectionKey`, and :func:`~_winreg.QueryReflectionKey` were also " "tested and documented. (Implemented by Brian Curtin: :issue:`7347`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2342 msgid "" "The new :c:func:`_beginthreadex` API is used to start threads, and the " "native thread-local storage functions are now used. (Contributed by Kristján " "Valur Jónsson; :issue:`3582`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2346 msgid "" "The :func:`os.kill` function now works on Windows. The signal value can be " "the constants :const:`CTRL_C_EVENT`, :const:`CTRL_BREAK_EVENT`, or any " "integer. The first two constants will send :kbd:`Control-C` and :kbd:" "`Control-Break` keystroke events to subprocesses; any other value will use " "the :c:func:`TerminateProcess` API. (Contributed by Miki Tebeka; :issue:" "`1220212`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2353 msgid "" "The :func:`os.listdir` function now correctly fails for an empty path. " "(Fixed by Hirokazu Yamamoto; :issue:`5913`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2356 msgid "" "The :mod:`mimelib` module will now read the MIME database from the Windows " "registry when initializing. (Patch by Gabriel Genellina; :issue:`4969`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2365 msgid "" "The path ``/Library/Python/2.7/site-packages`` is now appended to ``sys." "path``, in order to share added packages between the system installation and " "a user-installed copy of the same version. (Changed by Ronald Oussoren; :" "issue:`4865`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2371 msgid "Port-Specific Changes: FreeBSD" msgstr "" #: ../Doc/whatsnew/2.7.rst:2373 msgid "" "FreeBSD 7.1's :const:`SO_SETFIB` constant, used with :func:`~socket." "getsockopt`/:func:`~socket.setsockopt` to select an alternate routing table, " "is now available in the :mod:`socket` module. (Added by Kyle VanderBeek; :" "issue:`8235`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2381 msgid "" "Two benchmark scripts, :file:`iobench` and :file:`ccbench`, were added to " "the :file:`Tools` directory. :file:`iobench` measures the speed of the " "built-in file I/O objects returned by :func:`open` while performing various " "operations, and :file:`ccbench` is a concurrency benchmark that tries to " "measure computing throughput, thread switching latency, and IO processing " "bandwidth when performing several tasks using a varying number of threads." msgstr "" #: ../Doc/whatsnew/2.7.rst:2389 msgid "" "The :file:`Tools/i18n/msgfmt.py` script now understands plural forms in :" "file:`.po` files. (Fixed by Martin von Löwis; :issue:`5464`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2393 msgid "" "When importing a module from a :file:`.pyc` or :file:`.pyo` file with an " "existing :file:`.py` counterpart, the :attr:`co_filename` attributes of the " "resulting code objects are overwritten when the original filename is " "obsolete. This can happen if the file has been renamed, moved, or is " "accessed through different paths. (Patch by Ziga Seilnacht and Jean-Paul " "Calderone; :issue:`1180193`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2400 msgid "" "The :file:`regrtest.py` script now takes a :option:`--randseed=` switch that " "takes an integer that will be used as the random seed for the :option:`-r` " "option that executes tests in random order. The :option:`-r` option also " "reports the seed that was used (Added by Collin Winter.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2406 msgid "" "Another :file:`regrtest.py` switch is :option:`-j`, which takes an integer " "specifying how many tests run in parallel. This allows reducing the total " "runtime on multi-core machines. This option is compatible with several other " "options, including the :option:`!-R` switch which is known to produce long " "runtimes. (Added by Antoine Pitrou, :issue:`6152`.) This can also be used " "with a new :option:`-F` switch that runs selected tests in a loop until they " "fail. (Added by Antoine Pitrou; :issue:`7312`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2415 msgid "" "When executed as a script, the :file:`py_compile.py` module now accepts " "``'-'`` as an argument, which will read standard input for the list of " "filenames to be compiled. (Contributed by Piotr Ożarowski; :issue:`8233`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2423 msgid "Porting to Python 2.7" msgstr "Portage vers Python 2.7" #: ../Doc/whatsnew/2.7.rst:2428 msgid "" "The :func:`range` function processes its arguments more consistently; it " "will now call :meth:`__int__` on non-float, non-integer arguments that are " "supplied to it. (Fixed by Alexander Belopolsky; :issue:`1533`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2433 msgid "" "The string :meth:`format` method changed the default precision used for " "floating-point and complex numbers from 6 decimal places to 12, which " "matches the precision used by :func:`str`. (Changed by Eric Smith; :issue:" "`5920`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2438 msgid "" "Because of an optimization for the :keyword:`with` statement, the special " "methods :meth:`__enter__` and :meth:`__exit__` must belong to the object's " "type, and cannot be directly attached to the object's instance. This " "affects new-style classes (derived from :class:`object`) and C extension " "types. (:issue:`6101`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2444 msgid "" "Due to a bug in Python 2.6, the *exc_value* parameter to :meth:`__exit__` " "methods was often the string representation of the exception, not an " "instance. This was fixed in 2.7, so *exc_value* will be an instance as " "expected. (Fixed by Florent Xicluna; :issue:`7853`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2454 msgid "In the standard library:" msgstr "" #: ../Doc/whatsnew/2.7.rst:2456 msgid "" "Operations with :class:`~datetime.datetime` instances that resulted in a " "year falling outside the supported range didn't always raise :exc:" "`OverflowError`. Such errors are now checked more carefully and will now " "raise the exception. (Reported by Mark Leander, patch by Anand B. Pillai and " "Alexander Belopolsky; :issue:`7150`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2462 msgid "" "When using :class:`~decimal.Decimal` instances with a string's :meth:" "`format` method, the default alignment was previously left-alignment. This " "has been changed to right-alignment, which might change the output of your " "programs. (Changed by Mark Dickinson; :issue:`6857`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2468 msgid "" "Comparisons involving a signaling NaN value (or ``sNAN``) now signal :const:" "`~decimal.InvalidOperation` instead of silently returning a true or false " "value depending on the comparison operator. Quiet NaN values (or ``NaN``) " "are now hashable. (Fixed by Mark Dickinson; :issue:`7279`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2474 msgid "" "The ElementTree library, :mod:`xml.etree`, no longer escapes ampersands and " "angle brackets when outputting an XML processing instruction (which looks " "like ``) or comment (which looks like " "``). (Patch by Neil Muller; :issue:`2746`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2480 msgid "" "The :meth:`~StringIO.StringIO.readline` method of :class:`~StringIO." "StringIO` objects now does nothing when a negative length is requested, as " "other file-like objects do. (:issue:`7348`)." msgstr "" #: ../Doc/whatsnew/2.7.rst:2523 msgid "For C extensions:" msgstr "" #: ../Doc/whatsnew/2.7.rst:2525 msgid "" "C extensions that use integer format codes with the ``PyArg_Parse*`` family " "of functions will now raise a :exc:`TypeError` exception instead of " "triggering a :exc:`DeprecationWarning` (:issue:`5080`)." msgstr "" #: ../Doc/whatsnew/2.7.rst:2529 msgid "" "Use the new :c:func:`PyOS_string_to_double` function instead of the old :c:" "func:`PyOS_ascii_strtod` and :c:func:`PyOS_ascii_atof` functions, which are " "now deprecated." msgstr "" #: ../Doc/whatsnew/2.7.rst:2533 msgid "For applications that embed Python:" msgstr "" #: ../Doc/whatsnew/2.7.rst:2535 msgid "" "The :c:func:`PySys_SetArgvEx` function was added, letting applications close " "a security hole when the existing :c:func:`PySys_SetArgv` function was " "used. Check whether you're calling :c:func:`PySys_SetArgv` and carefully " "consider whether the application should be using :c:func:`PySys_SetArgvEx` " "with *updatepath* set to false." msgstr "" #: ../Doc/whatsnew/2.7.rst:2548 msgid "New Features Added to Python 2.7 Maintenance Releases" msgstr "" #: ../Doc/whatsnew/2.7.rst:2550 msgid "" "New features may be added to Python 2.7 maintenance releases when the " "situation genuinely calls for it. Any such additions must go through the " "Python Enhancement Proposal process, and make a compelling case for why they " "can't be adequately addressed by either adding the new feature solely to " "Python 3, or else by publishing it on the Python Package Index." msgstr "" #: ../Doc/whatsnew/2.7.rst:2556 msgid "" "In addition to the specific proposals listed below, there is a general " "exemption allowing new ``-3`` warnings to be added in any Python 2.7 " "maintenance release." msgstr "" #: ../Doc/whatsnew/2.7.rst:2562 msgid "PEP 434: IDLE Enhancement Exception for All Branches" msgstr "" #: ../Doc/whatsnew/2.7.rst:2564 msgid "" ":pep:`434` describes a general exemption for changes made to the IDLE " "development environment shipped along with Python. This exemption makes it " "possible for the IDLE developers to provide a more consistent user " "experience across all supported versions of Python 2 and 3." msgstr "" #: ../Doc/whatsnew/2.7.rst:2569 msgid "" "For details of any IDLE changes, refer to the NEWS file for the specific " "release." msgstr "" #: ../Doc/whatsnew/2.7.rst:2574 msgid "PEP 466: Network Security Enhancements for Python 2.7" msgstr "" #: ../Doc/whatsnew/2.7.rst:2576 msgid "" ":pep:`466` describes a number of network security enhancement proposals that " "have been approved for inclusion in Python 2.7 maintenance releases, with " "the first of those changes appearing in the Python 2.7.7 release." msgstr "" #: ../Doc/whatsnew/2.7.rst:2580 msgid ":pep:`466` related features added in Python 2.7.7:" msgstr "" #: ../Doc/whatsnew/2.7.rst:2582 msgid "" ":func:`hmac.compare_digest` was backported from Python 3 to make a timing " "attack resistant comparison operation available to Python 2 applications. " "(Contributed by Alex Gaynor; :issue:`21306`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2586 msgid "" "OpenSSL 1.0.1g was upgraded in the official Windows installers published on " "python.org. (Contributed by Zachary Ware; :issue:`21462`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2589 msgid ":pep:`466` related features added in Python 2.7.8:" msgstr "" #: ../Doc/whatsnew/2.7.rst:2591 msgid "" ":func:`hashlib.pbkdf2_hmac` was backported from Python 3 to make a hashing " "algorithm suitable for secure password storage broadly available to Python 2 " "applications. (Contributed by Alex Gaynor; :issue:`21304`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2595 msgid "" "OpenSSL 1.0.1h was upgraded for the official Windows installers published on " "python.org. (contributed by Zachary Ware in :issue:`21671` for CVE-2014-0224)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2598 msgid ":pep:`466` related features added in Python 2.7.9:" msgstr "" #: ../Doc/whatsnew/2.7.rst:2600 msgid "" "Most of Python 3.4's :mod:`ssl` module was backported. This means :mod:`ssl` " "now supports Server Name Indication, TLS1.x settings, access to the platform " "certificate store, the :class:`~ssl.SSLContext` class, and other features. " "(Contributed by Alex Gaynor and David Reid; :issue:`21308`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2605 msgid "" ":func:`os.urandom` was changed to cache a file descriptor to ``/dev/" "urandom`` instead of reopening ``/dev/urandom`` on every call. (Contributed " "by Alex Gaynor; :issue:`21305`.)" msgstr "" #: ../Doc/whatsnew/2.7.rst:2617 msgid "" "The author would like to thank the following people for offering " "suggestions, corrections and assistance with various drafts of this article: " "Nick Coghlan, Philip Jenvey, Ryan Lovett, R. David Murray, Hugh Secker-" "Walker." msgstr "" #: ../Doc/whatsnew/3.0.rst:3 msgid "What's New In Python 3.0" msgstr "Nouveautés de Python 3.0" #: ../Doc/whatsnew/3.0.rst:7 msgid "Guido van Rossum" msgstr "Guido van Rossum" #: ../Doc/whatsnew/3.0.rst:54 msgid "" "This article explains the new features in Python 3.0, compared to 2.6. " "Python 3.0, also known as \"Python 3000\" or \"Py3K\", is the first ever " "*intentionally backwards incompatible* Python release. There are more " "changes than in a typical release, and more that are important for all " "Python users. Nevertheless, after digesting the changes, you'll find that " "Python really hasn't changed all that much -- by and large, we're mostly " "fixing well-known annoyances and warts, and removing a lot of old cruft." msgstr "" #: ../Doc/whatsnew/3.0.rst:63 msgid "" "This article doesn't attempt to provide a complete specification of all new " "features, but instead tries to give a convenient overview. For full details, " "you should refer to the documentation for Python 3.0, and/or the many PEPs " "referenced in the text. If you want to understand the complete " "implementation and design rationale for a particular feature, PEPs usually " "have more details than the regular documentation; but note that PEPs usually " "are not kept up-to-date once a feature has been fully implemented." msgstr "" #: ../Doc/whatsnew/3.0.rst:72 msgid "" "Due to time constraints this document is not as complete as it should have " "been. As always for a new release, the ``Misc/NEWS`` file in the source " "distribution contains a wealth of detailed information about every small " "thing that was changed." msgstr "" #: ../Doc/whatsnew/3.0.rst:89 msgid "Common Stumbling Blocks" msgstr "" #: ../Doc/whatsnew/3.0.rst:91 msgid "" "This section lists those few changes that are most likely to trip you up if " "you're used to Python 2.5." msgstr "" #: ../Doc/whatsnew/3.0.rst:95 msgid "Print Is A Function" msgstr "" #: ../Doc/whatsnew/3.0.rst:97 msgid "" "The ``print`` statement has been replaced with a :func:`print` function, " "with keyword arguments to replace most of the special syntax of the old " "``print`` statement (:pep:`3105`). Examples::" msgstr "" #: ../Doc/whatsnew/3.0.rst:116 msgid "You can also customize the separator between items, e.g.::" msgstr "" #: ../Doc/whatsnew/3.0.rst:120 msgid "which produces:" msgstr "" #: ../Doc/whatsnew/3.0.rst:126 msgid "Note:" msgstr "" #: ../Doc/whatsnew/3.0.rst:128 msgid "" "The :func:`print` function doesn't support the \"softspace\" feature of the " "old ``print`` statement. For example, in Python 2.x, ``print \"A\\n\", \"B" "\"`` would write ``\"A\\nB\\n\"``; but in Python 3.0, ``print(\"A\\n\", \"B" "\")`` writes ``\"A\\n B\\n\"``." msgstr "" #: ../Doc/whatsnew/3.0.rst:133 msgid "" "Initially, you'll be finding yourself typing the old ``print x`` a lot in " "interactive mode. Time to retrain your fingers to type ``print(x)`` instead!" msgstr "" #: ../Doc/whatsnew/3.0.rst:137 msgid "" "When using the ``2to3`` source-to-source conversion tool, all ``print`` " "statements are automatically converted to :func:`print` function calls, so " "this is mostly a non-issue for larger projects." msgstr "" #: ../Doc/whatsnew/3.0.rst:143 msgid "Views And Iterators Instead Of Lists" msgstr "" #: ../Doc/whatsnew/3.0.rst:145 msgid "Some well-known APIs no longer return lists:" msgstr "" #: ../Doc/whatsnew/3.0.rst:147 msgid "" ":class:`dict` methods :meth:`dict.keys`, :meth:`dict.items` and :meth:`dict." "values` return \"views\" instead of lists. For example, this no longer " "works: ``k = d.keys(); k.sort()``. Use ``k = sorted(d)`` instead (this " "works in Python 2.5 too and is just as efficient)." msgstr "" #: ../Doc/whatsnew/3.0.rst:153 msgid "" "Also, the :meth:`dict.iterkeys`, :meth:`dict.iteritems` and :meth:`dict." "itervalues` methods are no longer supported." msgstr "" #: ../Doc/whatsnew/3.0.rst:156 msgid "" ":func:`map` and :func:`filter` return iterators. If you really need a list " "and the input sequences are all of equal length, a quick fix is to wrap :" "func:`map` in :func:`list`, e.g. ``list(map(...))``, but a better fix is " "often to use a list comprehension (especially when the original code uses :" "keyword:`lambda`), or rewriting the code so it doesn't need a list at all. " "Particularly tricky is :func:`map` invoked for the side effects of the " "function; the correct transformation is to use a regular :keyword:`for` loop " "(since creating a list would just be wasteful)." msgstr "" #: ../Doc/whatsnew/3.0.rst:167 msgid "" "If the input sequences are not of equal length, :func:`map` will stop at the " "termination of the shortest of the sequences. For full compatibility with :" "func:`map` from Python 2.x, also wrap the sequences in :func:`itertools." "zip_longest`, e.g. ``map(func, *sequences)`` becomes ``list(map(func, " "itertools.zip_longest(*sequences)))``." msgstr "" #: ../Doc/whatsnew/3.0.rst:173 msgid "" ":func:`range` now behaves like :func:`xrange` used to behave, except it " "works with values of arbitrary size. The latter no longer exists." msgstr "" #: ../Doc/whatsnew/3.0.rst:177 msgid ":func:`zip` now returns an iterator." msgstr ":func:`zip` retourne maintenant un itérateur." #: ../Doc/whatsnew/3.0.rst:180 msgid "Ordering Comparisons" msgstr "" #: ../Doc/whatsnew/3.0.rst:182 msgid "Python 3.0 has simplified the rules for ordering comparisons:" msgstr "" #: ../Doc/whatsnew/3.0.rst:184 msgid "" "The ordering comparison operators (``<``, ``<=``, ``>=``, ``>``) raise a " "TypeError exception when the operands don't have a meaningful natural " "ordering. Thus, expressions like ``1 < ''``, ``0 > None`` or ``len <= len`` " "are no longer valid, and e.g. ``None < None`` raises :exc:`TypeError` " "instead of returning ``False``. A corollary is that sorting a heterogeneous " "list no longer makes sense -- all the elements must be comparable to each " "other. Note that this does not apply to the ``==`` and ``!=`` operators: " "objects of different incomparable types always compare unequal to each other." msgstr "" #: ../Doc/whatsnew/3.0.rst:195 msgid "" ":meth:`builtin.sorted` and :meth:`list.sort` no longer accept the *cmp* " "argument providing a comparison function. Use the *key* argument instead. N." "B. the *key* and *reverse* arguments are now \"keyword-only\"." msgstr "" #: ../Doc/whatsnew/3.0.rst:200 msgid "" "The :func:`cmp` function should be treated as gone, and the :meth:`__cmp__` " "special method is no longer supported. Use :meth:`__lt__` for sorting, :" "meth:`__eq__` with :meth:`__hash__`, and other rich comparisons as needed. " "(If you really need the :func:`cmp` functionality, you could use the " "expression ``(a > b) - (a < b)`` as the equivalent for ``cmp(a, b)``.)" msgstr "" #: ../Doc/whatsnew/3.0.rst:207 msgid "Integers" msgstr "" #: ../Doc/whatsnew/3.0.rst:209 msgid "" ":pep:`237`: Essentially, :class:`long` renamed to :class:`int`. That is, " "there is only one built-in integral type, named :class:`int`; but it behaves " "mostly like the old :class:`long` type." msgstr "" #: ../Doc/whatsnew/3.0.rst:213 msgid "" ":pep:`238`: An expression like ``1/2`` returns a float. Use ``1//2`` to get " "the truncating behavior. (The latter syntax has existed for years, at least " "since Python 2.2.)" msgstr "" #: ../Doc/whatsnew/3.0.rst:217 msgid "" "The :data:`sys.maxint` constant was removed, since there is no longer a " "limit to the value of integers. However, :data:`sys.maxsize` can be used as " "an integer larger than any practical list or string index. It conforms to " "the implementation's \"natural\" integer size and is typically the same as :" "data:`sys.maxint` in previous releases on the same platform (assuming the " "same build options)." msgstr "" #: ../Doc/whatsnew/3.0.rst:224 msgid "" "The :func:`repr` of a long integer doesn't include the trailing ``L`` " "anymore, so code that unconditionally strips that character will chop off " "the last digit instead. (Use :func:`str` instead.)" msgstr "" #: ../Doc/whatsnew/3.0.rst:228 msgid "" "Octal literals are no longer of the form ``0720``; use ``0o720`` instead." msgstr "" #: ../Doc/whatsnew/3.0.rst:232 msgid "Text Vs. Data Instead Of Unicode Vs. 8-bit" msgstr "" #: ../Doc/whatsnew/3.0.rst:234 msgid "" "Everything you thought you knew about binary data and Unicode has changed." msgstr "" #: ../Doc/whatsnew/3.0.rst:237 msgid "" "Python 3.0 uses the concepts of *text* and (binary) *data* instead of " "Unicode strings and 8-bit strings. All text is Unicode; however *encoded* " "Unicode is represented as binary data. The type used to hold text is :class:" "`str`, the type used to hold data is :class:`bytes`. The biggest difference " "with the 2.x situation is that any attempt to mix text and data in Python " "3.0 raises :exc:`TypeError`, whereas if you were to mix Unicode and 8-bit " "strings in Python 2.x, it would work if the 8-bit string happened to contain " "only 7-bit (ASCII) bytes, but you would get :exc:`UnicodeDecodeError` if it " "contained non-ASCII values. This value-specific behavior has caused " "numerous sad faces over the years." msgstr "" #: ../Doc/whatsnew/3.0.rst:250 msgid "" "As a consequence of this change in philosophy, pretty much all code that " "uses Unicode, encodings or binary data most likely has to change. The " "change is for the better, as in the 2.x world there were numerous bugs " "having to do with mixing encoded and unencoded text. To be prepared in " "Python 2.x, start using :class:`unicode` for all unencoded text, and :class:" "`str` for binary or encoded data only. Then the ``2to3`` tool will do most " "of the work for you." msgstr "" #: ../Doc/whatsnew/3.0.rst:258 msgid "" "You can no longer use ``u\"...\"`` literals for Unicode text. However, you " "must use ``b\"...\"`` literals for binary data." msgstr "" #: ../Doc/whatsnew/3.0.rst:261 msgid "" "As the :class:`str` and :class:`bytes` types cannot be mixed, you must " "always explicitly convert between them. Use :meth:`str.encode` to go from :" "class:`str` to :class:`bytes`, and :meth:`bytes.decode` to go from :class:" "`bytes` to :class:`str`. You can also use ``bytes(s, encoding=...)`` and " "``str(b, encoding=...)``, respectively." msgstr "" #: ../Doc/whatsnew/3.0.rst:268 msgid "" "Like :class:`str`, the :class:`bytes` type is immutable. There is a " "separate *mutable* type to hold buffered binary data, :class:`bytearray`. " "Nearly all APIs that accept :class:`bytes` also accept :class:`bytearray`. " "The mutable API is based on :class:`collections.MutableSequence`." msgstr "" #: ../Doc/whatsnew/3.0.rst:274 msgid "" "All backslashes in raw string literals are interpreted literally. This means " "that ``'\\U'`` and ``'\\u'`` escapes in raw strings are not treated " "specially. For example, ``r'\\u20ac'`` is a string of 6 characters in " "Python 3.0, whereas in 2.6, ``ur'\\u20ac'`` was the single \"euro\" " "character. (Of course, this change only affects raw string literals; the " "euro character is ``'\\u20ac'`` in Python 3.0.)" msgstr "" #: ../Doc/whatsnew/3.0.rst:281 msgid "" "The built-in :class:`basestring` abstract type was removed. Use :class:" "`str` instead. The :class:`str` and :class:`bytes` types don't have " "functionality enough in common to warrant a shared base class. The ``2to3`` " "tool (see below) replaces every occurrence of :class:`basestring` with :" "class:`str`." msgstr "" #: ../Doc/whatsnew/3.0.rst:287 msgid "" "Files opened as text files (still the default mode for :func:`open`) always " "use an encoding to map between strings (in memory) and bytes (on disk). " "Binary files (opened with a ``b`` in the mode argument) always use bytes in " "memory. This means that if a file is opened using an incorrect mode or " "encoding, I/O will likely fail loudly, instead of silently producing " "incorrect data. It also means that even Unix users will have to specify the " "correct mode (text or binary) when opening a file. There is a platform-" "dependent default encoding, which on Unixy platforms can be set with the " "``LANG`` environment variable (and sometimes also with some other platform-" "specific locale-related environment variables). In many cases, but not all, " "the system default is UTF-8; you should never count on this default. Any " "application reading or writing more than pure ASCII text should probably " "have a way to override the encoding. There is no longer any need for using " "the encoding-aware streams in the :mod:`codecs` module." msgstr "" #: ../Doc/whatsnew/3.0.rst:304 msgid "" "The initial values of :data:`sys.stdin`, :data:`sys.stdout` and :data:`sys." "stderr` are now unicode-only text files (i.e., they are instances of :class:" "`io.TextIOBase`). To read and write bytes data with these streams, you need " "to use their :data:`io.TextIOBase.buffer` attribute." msgstr "" #: ../Doc/whatsnew/3.0.rst:310 msgid "" "Filenames are passed to and returned from APIs as (Unicode) strings. This " "can present platform-specific problems because on some platforms filenames " "are arbitrary byte strings. (On the other hand, on Windows filenames are " "natively stored as Unicode.) As a work-around, most APIs (e.g. :func:`open` " "and many functions in the :mod:`os` module) that take filenames accept :" "class:`bytes` objects as well as strings, and a few APIs have a way to ask " "for a :class:`bytes` return value. Thus, :func:`os.listdir` returns a list " "of :class:`bytes` instances if the argument is a :class:`bytes` instance, " "and :func:`os.getcwdb` returns the current working directory as a :class:" "`bytes` instance. Note that when :func:`os.listdir` returns a list of " "strings, filenames that cannot be decoded properly are omitted rather than " "raising :exc:`UnicodeError`." msgstr "" #: ../Doc/whatsnew/3.0.rst:325 msgid "" "Some system APIs like :data:`os.environ` and :data:`sys.argv` can also " "present problems when the bytes made available by the system is not " "interpretable using the default encoding. Setting the ``LANG`` variable and " "rerunning the program is probably the best approach." msgstr "" #: ../Doc/whatsnew/3.0.rst:330 msgid "" ":pep:`3138`: The :func:`repr` of a string no longer escapes non-ASCII " "characters. It still escapes control characters and code points with non-" "printable status in the Unicode standard, however." msgstr "" #: ../Doc/whatsnew/3.0.rst:334 msgid ":pep:`3120`: The default source encoding is now UTF-8." msgstr "" #: ../Doc/whatsnew/3.0.rst:336 msgid "" ":pep:`3131`: Non-ASCII letters are now allowed in identifiers. (However, the " "standard library remains ASCII-only with the exception of contributor names " "in comments.)" msgstr "" #: ../Doc/whatsnew/3.0.rst:340 msgid "" "The :mod:`StringIO` and :mod:`cStringIO` modules are gone. Instead, import " "the :mod:`io` module and use :class:`io.StringIO` or :class:`io.BytesIO` for " "text and data respectively." msgstr "" #: ../Doc/whatsnew/3.0.rst:344 msgid "See also the :ref:`unicode-howto`, which was updated for Python 3.0." msgstr "" #: ../Doc/whatsnew/3.0.rst:348 msgid "Overview Of Syntax Changes" msgstr "" #: ../Doc/whatsnew/3.0.rst:350 msgid "" "This section gives a brief overview of every *syntactic* change in Python " "3.0." msgstr "" #: ../Doc/whatsnew/3.0.rst:354 msgid "New Syntax" msgstr "" #: ../Doc/whatsnew/3.0.rst:356 msgid "" ":pep:`3107`: Function argument and return value annotations. This provides " "a standardized way of annotating a function's parameters and return value. " "There are no semantics attached to such annotations except that they can be " "introspected at runtime using the :attr:`__annotations__` attribute. The " "intent is to encourage experimentation through metaclasses, decorators or " "frameworks." msgstr "" #: ../Doc/whatsnew/3.0.rst:363 msgid "" ":pep:`3102`: Keyword-only arguments. Named parameters occurring after " "``*args`` in the parameter list *must* be specified using keyword syntax in " "the call. You can also use a bare ``*`` in the parameter list to indicate " "that you don't accept a variable-length argument list, but you do have " "keyword-only arguments." msgstr "" #: ../Doc/whatsnew/3.0.rst:369 msgid "" "Keyword arguments are allowed after the list of base classes in a class " "definition. This is used by the new convention for specifying a metaclass " "(see next section), but can be used for other purposes as well, as long as " "the metaclass supports it." msgstr "" #: ../Doc/whatsnew/3.0.rst:374 msgid "" ":pep:`3104`: :keyword:`nonlocal` statement. Using ``nonlocal x`` you can " "now assign directly to a variable in an outer (but non-global) scope. :" "keyword:`nonlocal` is a new reserved word." msgstr "" #: ../Doc/whatsnew/3.0.rst:378 msgid "" ":pep:`3132`: Extended Iterable Unpacking. You can now write things like " "``a, b, *rest = some_sequence``. And even ``*rest, a = stuff``. The " "``rest`` object is always a (possibly empty) list; the right-hand side may " "be any iterable. Example::" msgstr "" #: ../Doc/whatsnew/3.0.rst:385 msgid "This sets *a* to ``0``, *b* to ``4``, and *rest* to ``[1, 2, 3]``." msgstr "" #: ../Doc/whatsnew/3.0.rst:387 msgid "" "Dictionary comprehensions: ``{k: v for k, v in stuff}`` means the same thing " "as ``dict(stuff)`` but is more flexible. (This is :pep:`274` vindicated. :-)" msgstr "" #: ../Doc/whatsnew/3.0.rst:391 msgid "" "Set literals, e.g. ``{1, 2}``. Note that ``{}`` is an empty dictionary; use " "``set()`` for an empty set. Set comprehensions are also supported; e.g., " "``{x for x in stuff}`` means the same thing as ``set(stuff)`` but is more " "flexible." msgstr "" #: ../Doc/whatsnew/3.0.rst:396 msgid "" "New octal literals, e.g. ``0o720`` (already in 2.6). The old octal literals " "(``0720``) are gone." msgstr "" #: ../Doc/whatsnew/3.0.rst:399 msgid "" "New binary literals, e.g. ``0b1010`` (already in 2.6), and there is a new " "corresponding built-in function, :func:`bin`." msgstr "" #: ../Doc/whatsnew/3.0.rst:402 msgid "" "Bytes literals are introduced with a leading ``b`` or ``B``, and there is a " "new corresponding built-in function, :func:`bytes`." msgstr "" #: ../Doc/whatsnew/3.0.rst:406 msgid "Changed Syntax" msgstr "" #: ../Doc/whatsnew/3.0.rst:408 msgid "" ":pep:`3109` and :pep:`3134`: new :keyword:`raise` statement syntax: :samp:" "`raise [{expr} [from {expr}]]`. See below." msgstr "" #: ../Doc/whatsnew/3.0.rst:411 msgid "" ":keyword:`as` and :keyword:`with` are now reserved words. (Since 2.6, " "actually.)" msgstr "" #: ../Doc/whatsnew/3.0.rst:414 msgid "" "``True``, ``False``, and ``None`` are reserved words. (2.6 partially " "enforced the restrictions on ``None`` already.)" msgstr "" #: ../Doc/whatsnew/3.0.rst:417 msgid "" "Change from :keyword:`except` *exc*, *var* to :keyword:`except` *exc* :" "keyword:`as` *var*. See :pep:`3110`." msgstr "" #: ../Doc/whatsnew/3.0.rst:420 msgid ":pep:`3115`: New Metaclass Syntax. Instead of::" msgstr "" #: ../Doc/whatsnew/3.0.rst:426 msgid "you must now use::" msgstr "" #: ../Doc/whatsnew/3.0.rst:431 msgid "" "The module-global :data:`__metaclass__` variable is no longer supported. " "(It was a crutch to make it easier to default to new-style classes without " "deriving every class from :class:`object`.)" msgstr "" #: ../Doc/whatsnew/3.0.rst:436 msgid "" "List comprehensions no longer support the syntactic form :samp:`[... for " "{var} in {item1}, {item2}, ...]`. Use :samp:`[... for {var} in ({item1}, " "{item2}, ...)]` instead. Also note that list comprehensions have different " "semantics: they are closer to syntactic sugar for a generator expression " "inside a :func:`list` constructor, and in particular the loop control " "variables are no longer leaked into the surrounding scope." msgstr "" #: ../Doc/whatsnew/3.0.rst:444 msgid "" "The *ellipsis* (``...``) can be used as an atomic expression anywhere. " "(Previously it was only allowed in slices.) Also, it *must* now be spelled " "as ``...``. (Previously it could also be spelled as ``. . .``, by a mere " "accident of the grammar.)" msgstr "" #: ../Doc/whatsnew/3.0.rst:450 msgid "Removed Syntax" msgstr "" #: ../Doc/whatsnew/3.0.rst:452 msgid "" ":pep:`3113`: Tuple parameter unpacking removed. You can no longer write " "``def foo(a, (b, c)): ...``. Use ``def foo(a, b_c): b, c = b_c`` instead." msgstr "" #: ../Doc/whatsnew/3.0.rst:456 msgid "Removed backticks (use :func:`repr` instead)." msgstr "" #: ../Doc/whatsnew/3.0.rst:458 msgid "Removed ``<>`` (use ``!=`` instead)." msgstr "" #: ../Doc/whatsnew/3.0.rst:460 msgid "" "Removed keyword: :func:`exec` is no longer a keyword; it remains as a " "function. (Fortunately the function syntax was also accepted in 2.x.) Also " "note that :func:`exec` no longer takes a stream argument; instead of " "``exec(f)`` you can use ``exec(f.read())``." msgstr "" #: ../Doc/whatsnew/3.0.rst:465 msgid "Integer literals no longer support a trailing ``l`` or ``L``." msgstr "" #: ../Doc/whatsnew/3.0.rst:467 msgid "String literals no longer support a leading ``u`` or ``U``." msgstr "" #: ../Doc/whatsnew/3.0.rst:469 msgid "" "The :keyword:`from` *module* :keyword:`import` ``*`` syntax is only allowed " "at the module level, no longer inside functions." msgstr "" #: ../Doc/whatsnew/3.0.rst:472 msgid "" "The only acceptable syntax for relative imports is :samp:`from .[{module}] " "import {name}`. All :keyword:`import` forms not starting with ``.`` are " "interpreted as absolute imports. (:pep:`328`)" msgstr "" #: ../Doc/whatsnew/3.0.rst:476 msgid "Classic classes are gone." msgstr "" #: ../Doc/whatsnew/3.0.rst:480 msgid "Changes Already Present In Python 2.6" msgstr "" #: ../Doc/whatsnew/3.0.rst:482 msgid "" "Since many users presumably make the jump straight from Python 2.5 to Python " "3.0, this section reminds the reader of new features that were originally " "designed for Python 3.0 but that were back-ported to Python 2.6. The " "corresponding sections in :ref:`whats-new-in-2.6` should be consulted for " "longer descriptions." msgstr "" #: ../Doc/whatsnew/3.0.rst:488 msgid "" ":ref:`pep-0343`. The :keyword:`with` statement is now a standard feature " "and no longer needs to be imported from the :mod:`__future__`. Also check " "out :ref:`new-26-context-managers` and :ref:`new-module-contextlib`." msgstr "" #: ../Doc/whatsnew/3.0.rst:493 msgid "" ":ref:`pep-0366`. This enhances the usefulness of the :option:`-m` option " "when the referenced module lives in a package." msgstr "" #: ../Doc/whatsnew/3.0.rst:496 msgid ":ref:`pep-0370`." msgstr ":ref:`pep-0370`." #: ../Doc/whatsnew/3.0.rst:498 msgid ":ref:`pep-0371`." msgstr ":ref:`pep-0371`." #: ../Doc/whatsnew/3.0.rst:500 msgid "" ":ref:`pep-3101`. Note: the 2.6 description mentions the :meth:`format` " "method for both 8-bit and Unicode strings. In 3.0, only the :class:`str` " "type (text strings with Unicode support) supports this method; the :class:" "`bytes` type does not. The plan is to eventually make this the only API for " "string formatting, and to start deprecating the ``%`` operator in Python 3.1." msgstr "" #: ../Doc/whatsnew/3.0.rst:507 msgid "" ":ref:`pep-3105`. This is now a standard feature and no longer needs to be " "imported from :mod:`__future__`. More details were given above." msgstr "" #: ../Doc/whatsnew/3.0.rst:510 msgid "" ":ref:`pep-3110`. The :keyword:`except` *exc* :keyword:`as` *var* syntax is " "now standard and :keyword:`except` *exc*, *var* is no longer supported. (Of " "course, the :keyword:`as` *var* part is still optional.)" msgstr "" #: ../Doc/whatsnew/3.0.rst:515 msgid "" ":ref:`pep-3112`. The ``b\"...\"`` string literal notation (and its variants " "like ``b'...'``, ``b\"\"\"...\"\"\"``, and ``br\"...\"``) now produces a " "literal of type :class:`bytes`." msgstr "" #: ../Doc/whatsnew/3.0.rst:519 msgid "" ":ref:`pep-3116`. The :mod:`io` module is now the standard way of doing file " "I/O. The built-in :func:`open` function is now an alias for :func:`io.open` " "and has additional keyword arguments *encoding*, *errors*, *newline* and " "*closefd*. Also note that an invalid *mode* argument now raises :exc:" "`ValueError`, not :exc:`IOError`. The binary file object underlying a text " "file object can be accessed as :attr:`f.buffer` (but beware that the text " "object maintains a buffer of itself in order to speed up the encoding and " "decoding operations)." msgstr "" #: ../Doc/whatsnew/3.0.rst:529 msgid "" ":ref:`pep-3118`. The old builtin :func:`buffer` is now really gone; the new " "builtin :func:`memoryview` provides (mostly) similar functionality." msgstr "" #: ../Doc/whatsnew/3.0.rst:533 msgid "" ":ref:`pep-3119`. The :mod:`abc` module and the ABCs defined in the :mod:" "`collections` module plays a somewhat more prominent role in the language " "now, and built-in collection types like :class:`dict` and :class:`list` " "conform to the :class:`collections.MutableMapping` and :class:`collections." "MutableSequence` ABCs, respectively." msgstr "" #: ../Doc/whatsnew/3.0.rst:539 msgid "" ":ref:`pep-3127`. As mentioned above, the new octal literal notation is the " "only one supported, and binary literals have been added." msgstr "" #: ../Doc/whatsnew/3.0.rst:543 msgid ":ref:`pep-3129`." msgstr ":ref:`pep-3129`." #: ../Doc/whatsnew/3.0.rst:545 msgid "" ":ref:`pep-3141`. The :mod:`numbers` module is another new use of ABCs, " "defining Python's \"numeric tower\". Also note the new :mod:`fractions` " "module which implements :class:`numbers.Rational`." msgstr "" #: ../Doc/whatsnew/3.0.rst:551 msgid "Library Changes" msgstr "" #: ../Doc/whatsnew/3.0.rst:553 msgid "" "Due to time constraints, this document does not exhaustively cover the very " "extensive changes to the standard library. :pep:`3108` is the reference for " "the major changes to the library. Here's a capsule review:" msgstr "" #: ../Doc/whatsnew/3.0.rst:558 msgid "" "Many old modules were removed. Some, like :mod:`gopherlib` (no longer used) " "and :mod:`md5` (replaced by :mod:`hashlib`), were already deprecated by :pep:" "`4`. Others were removed as a result of the removal of support for various " "platforms such as Irix, BeOS and Mac OS 9 (see :pep:`11`). Some modules " "were also selected for removal in Python 3.0 due to lack of use or because a " "better replacement exists. See :pep:`3108` for an exhaustive list." msgstr "" #: ../Doc/whatsnew/3.0.rst:566 msgid "" "The :mod:`bsddb3` package was removed because its presence in the core " "standard library has proved over time to be a particular burden for the core " "developers due to testing instability and Berkeley DB's release schedule. " "However, the package is alive and well, externally maintained at https://www." "jcea.es/programacion/pybsddb.htm." msgstr "" #: ../Doc/whatsnew/3.0.rst:572 msgid "" "Some modules were renamed because their old name disobeyed :pep:`8`, or for " "various other reasons. Here's the list:" msgstr "" #: ../Doc/whatsnew/3.0.rst:576 ../Doc/whatsnew/3.2.rst:1803 msgid "Old Name" msgstr "" #: ../Doc/whatsnew/3.0.rst:576 msgid "New Name" msgstr "" #: ../Doc/whatsnew/3.0.rst:578 msgid "_winreg" msgstr "" #: ../Doc/whatsnew/3.0.rst:578 ../Doc/whatsnew/3.6.rst:1062 msgid "winreg" msgstr "" #: ../Doc/whatsnew/3.0.rst:579 msgid "ConfigParser" msgstr "ConfigParser" #: ../Doc/whatsnew/3.0.rst:579 ../Doc/whatsnew/3.2.rst:2123 #: ../Doc/whatsnew/3.5.rst:990 msgid "configparser" msgstr "configparser" #: ../Doc/whatsnew/3.0.rst:580 msgid "copy_reg" msgstr "" #: ../Doc/whatsnew/3.0.rst:580 msgid "copyreg" msgstr "" #: ../Doc/whatsnew/3.0.rst:581 msgid "Queue" msgstr "" #: ../Doc/whatsnew/3.0.rst:581 msgid "queue" msgstr "" #: ../Doc/whatsnew/3.0.rst:582 msgid "SocketServer" msgstr "" #: ../Doc/whatsnew/3.0.rst:582 ../Doc/whatsnew/3.3.rst:1906 #: ../Doc/whatsnew/3.6.rst:875 msgid "socketserver" msgstr "" #: ../Doc/whatsnew/3.0.rst:583 msgid "markupbase" msgstr "" #: ../Doc/whatsnew/3.0.rst:583 msgid "_markupbase" msgstr "" #: ../Doc/whatsnew/3.0.rst:584 msgid "repr" msgstr "" #: ../Doc/whatsnew/3.0.rst:584 ../Doc/whatsnew/3.2.rst:1139 msgid "reprlib" msgstr "" #: ../Doc/whatsnew/3.0.rst:585 msgid "test.test_support" msgstr "" #: ../Doc/whatsnew/3.0.rst:585 msgid "test.support" msgstr "" #: ../Doc/whatsnew/3.0.rst:588 msgid "" "A common pattern in Python 2.x is to have one version of a module " "implemented in pure Python, with an optional accelerated version implemented " "as a C extension; for example, :mod:`pickle` and :mod:`cPickle`. This " "places the burden of importing the accelerated version and falling back on " "the pure Python version on each user of these modules. In Python 3.0, the " "accelerated versions are considered implementation details of the pure " "Python versions. Users should always import the standard version, which " "attempts to import the accelerated version and falls back to the pure Python " "version. The :mod:`pickle` / :mod:`cPickle` pair received this treatment. " "The :mod:`profile` module is on the list for 3.1. The :mod:`StringIO` " "module has been turned into a class in the :mod:`io` module." msgstr "" #: ../Doc/whatsnew/3.0.rst:602 msgid "" "Some related modules have been grouped into packages, and usually the " "submodule names have been simplified. The resulting new packages are:" msgstr "" #: ../Doc/whatsnew/3.0.rst:606 msgid "" ":mod:`dbm` (:mod:`anydbm`, :mod:`dbhash`, :mod:`dbm`, :mod:`dumbdbm`, :mod:" "`gdbm`, :mod:`whichdb`)." msgstr "" #: ../Doc/whatsnew/3.0.rst:609 msgid ":mod:`html` (:mod:`HTMLParser`, :mod:`htmlentitydefs`)." msgstr "" #: ../Doc/whatsnew/3.0.rst:611 msgid "" ":mod:`http` (:mod:`httplib`, :mod:`BaseHTTPServer`, :mod:`CGIHTTPServer`, :" "mod:`SimpleHTTPServer`, :mod:`Cookie`, :mod:`cookielib`)." msgstr "" #: ../Doc/whatsnew/3.0.rst:615 msgid "" ":mod:`tkinter` (all :mod:`Tkinter`-related modules except :mod:`turtle`). " "The target audience of :mod:`turtle` doesn't really care about :mod:" "`tkinter`. Also note that as of Python 2.6, the functionality of :mod:" "`turtle` has been greatly enhanced." msgstr "" #: ../Doc/whatsnew/3.0.rst:620 msgid "" ":mod:`urllib` (:mod:`urllib`, :mod:`urllib2`, :mod:`urlparse`, :mod:" "`robotparse`)." msgstr "" #: ../Doc/whatsnew/3.0.rst:623 msgid "" ":mod:`xmlrpc` (:mod:`xmlrpclib`, :mod:`DocXMLRPCServer`, :mod:" "`SimpleXMLRPCServer`)." msgstr "" #: ../Doc/whatsnew/3.0.rst:626 msgid "" "Some other changes to standard library modules, not covered by :pep:`3108`:" msgstr "" #: ../Doc/whatsnew/3.0.rst:629 msgid "Killed :mod:`sets`. Use the built-in :func:`set` class." msgstr "" #: ../Doc/whatsnew/3.0.rst:631 msgid "" "Cleanup of the :mod:`sys` module: removed :func:`sys.exitfunc`, :func:`sys." "exc_clear`, :data:`sys.exc_type`, :data:`sys.exc_value`, :data:`sys." "exc_traceback`. (Note that :data:`sys.last_type` etc. remain.)" msgstr "" #: ../Doc/whatsnew/3.0.rst:636 msgid "" "Cleanup of the :class:`array.array` type: the :meth:`read` and :meth:`write` " "methods are gone; use :meth:`fromfile` and :meth:`tofile` instead. Also, " "the ``'c'`` typecode for array is gone -- use either ``'b'`` for bytes or " "``'u'`` for Unicode characters." msgstr "" #: ../Doc/whatsnew/3.0.rst:642 msgid "" "Cleanup of the :mod:`operator` module: removed :func:`sequenceIncludes` and :" "func:`isCallable`." msgstr "" #: ../Doc/whatsnew/3.0.rst:645 msgid "" "Cleanup of the :mod:`thread` module: :func:`acquire_lock` and :func:" "`release_lock` are gone; use :func:`acquire` and :func:`release` instead." msgstr "" #: ../Doc/whatsnew/3.0.rst:649 msgid "Cleanup of the :mod:`random` module: removed the :func:`jumpahead` API." msgstr "" #: ../Doc/whatsnew/3.0.rst:651 msgid "The :mod:`new` module is gone." msgstr "" #: ../Doc/whatsnew/3.0.rst:653 msgid "" "The functions :func:`os.tmpnam`, :func:`os.tempnam` and :func:`os.tmpfile` " "have been removed in favor of the :mod:`tempfile` module." msgstr "" #: ../Doc/whatsnew/3.0.rst:657 msgid "" "The :mod:`tokenize` module has been changed to work with bytes. The main " "entry point is now :func:`tokenize.tokenize`, instead of generate_tokens." msgstr "" #: ../Doc/whatsnew/3.0.rst:661 msgid "" ":data:`string.letters` and its friends (:data:`string.lowercase` and :data:" "`string.uppercase`) are gone. Use :data:`string.ascii_letters` etc. " "instead. (The reason for the removal is that :data:`string.letters` and " "friends had locale-specific behavior, which is a bad idea for such " "attractively-named global \"constants\".)" msgstr "" #: ../Doc/whatsnew/3.0.rst:668 msgid "" "Renamed module :mod:`__builtin__` to :mod:`builtins` (removing the " "underscores, adding an 's'). The :data:`__builtins__` variable found in " "most global namespaces is unchanged. To modify a builtin, you should use :" "mod:`builtins`, not :data:`__builtins__`!" msgstr "" #: ../Doc/whatsnew/3.0.rst:675 msgid ":pep:`3101`: A New Approach To String Formatting" msgstr "" #: ../Doc/whatsnew/3.0.rst:677 msgid "" "A new system for built-in string formatting operations replaces the ``%`` " "string formatting operator. (However, the ``%`` operator is still " "supported; it will be deprecated in Python 3.1 and removed from the " "language at some later time.) Read :pep:`3101` for the full scoop." msgstr "" #: ../Doc/whatsnew/3.0.rst:685 msgid "Changes To Exceptions" msgstr "" #: ../Doc/whatsnew/3.0.rst:687 msgid "" "The APIs for raising and catching exception have been cleaned up and new " "powerful features added:" msgstr "" #: ../Doc/whatsnew/3.0.rst:690 msgid "" ":pep:`352`: All exceptions must be derived (directly or indirectly) from :" "exc:`BaseException`. This is the root of the exception hierarchy. This is " "not new as a recommendation, but the *requirement* to inherit from :exc:" "`BaseException` is new. (Python 2.6 still allowed classic classes to be " "raised, and placed no restriction on what you can catch.) As a consequence, " "string exceptions are finally truly and utterly dead." msgstr "" #: ../Doc/whatsnew/3.0.rst:698 msgid "" "Almost all exceptions should actually derive from :exc:`Exception`; :exc:" "`BaseException` should only be used as a base class for exceptions that " "should only be handled at the top level, such as :exc:`SystemExit` or :exc:" "`KeyboardInterrupt`. The recommended idiom for handling all exceptions " "except for this latter category is to use :keyword:`except` :exc:`Exception`." msgstr "" #: ../Doc/whatsnew/3.0.rst:705 msgid ":exc:`StandardError` was removed." msgstr "" #: ../Doc/whatsnew/3.0.rst:707 msgid "" "Exceptions no longer behave as sequences. Use the :attr:`args` attribute " "instead." msgstr "" #: ../Doc/whatsnew/3.0.rst:710 msgid "" ":pep:`3109`: Raising exceptions. You must now use :samp:`raise {Exception}" "({args})` instead of :samp:`raise {Exception}, {args}`. Additionally, you " "can no longer explicitly specify a traceback; instead, if you *have* to do " "this, you can assign directly to the :attr:`__traceback__` attribute (see " "below)." msgstr "" #: ../Doc/whatsnew/3.0.rst:716 msgid "" ":pep:`3110`: Catching exceptions. You must now use :samp:`except " "{SomeException} as {variable}` instead of :samp:`except {SomeException}, " "{variable}`. Moreover, the *variable* is explicitly deleted when the :" "keyword:`except` block is left." msgstr "" #: ../Doc/whatsnew/3.0.rst:722 msgid "" ":pep:`3134`: Exception chaining. There are two cases: implicit chaining and " "explicit chaining. Implicit chaining happens when an exception is raised in " "an :keyword:`except` or :keyword:`finally` handler block. This usually " "happens due to a bug in the handler block; we call this a *secondary* " "exception. In this case, the original exception (that was being handled) is " "saved as the :attr:`__context__` attribute of the secondary exception. " "Explicit chaining is invoked with this syntax::" msgstr "" #: ../Doc/whatsnew/3.0.rst:733 msgid "" "(where *primary_exception* is any expression that produces an exception " "object, probably an exception that was previously caught). In this case, the " "primary exception is stored on the :attr:`__cause__` attribute of the " "secondary exception. The traceback printed when an unhandled exception " "occurs walks the chain of :attr:`__cause__` and :attr:`__context__` " "attributes and prints a separate traceback for each component of the chain, " "with the primary exception at the top. (Java users may recognize this " "behavior.)" msgstr "" #: ../Doc/whatsnew/3.0.rst:742 msgid "" ":pep:`3134`: Exception objects now store their traceback as the :attr:" "`__traceback__` attribute. This means that an exception object now contains " "all the information pertaining to an exception, and there are fewer reasons " "to use :func:`sys.exc_info` (though the latter is not removed)." msgstr "" #: ../Doc/whatsnew/3.0.rst:748 msgid "" "A few exception messages are improved when Windows fails to load an " "extension module. For example, ``error code 193`` is now ``%1 is not a " "valid Win32 application``. Strings now deal with non-English locales." msgstr "" #: ../Doc/whatsnew/3.0.rst:755 msgid "Miscellaneous Other Changes" msgstr "" #: ../Doc/whatsnew/3.0.rst:758 msgid "Operators And Special Methods" msgstr "" #: ../Doc/whatsnew/3.0.rst:760 msgid "" "``!=`` now returns the opposite of ``==``, unless ``==`` returns :data:" "`NotImplemented`." msgstr "" #: ../Doc/whatsnew/3.0.rst:763 msgid "" "The concept of \"unbound methods\" has been removed from the language. When " "referencing a method as a class attribute, you now get a plain function " "object." msgstr "" #: ../Doc/whatsnew/3.0.rst:767 msgid "" ":meth:`__getslice__`, :meth:`__setslice__` and :meth:`__delslice__` were " "killed. The syntax ``a[i:j]`` now translates to ``a.__getitem__(slice(i, " "j))`` (or :meth:`__setitem__` or :meth:`__delitem__`, when used as an " "assignment or deletion target, respectively)." msgstr "" #: ../Doc/whatsnew/3.0.rst:773 msgid "" ":pep:`3114`: the standard :meth:`next` method has been renamed to :meth:" "`~iterator.__next__`." msgstr "" #: ../Doc/whatsnew/3.0.rst:776 msgid "" "The :meth:`__oct__` and :meth:`__hex__` special methods are removed -- :func:" "`oct` and :func:`hex` use :meth:`__index__` now to convert the argument to " "an integer." msgstr "" #: ../Doc/whatsnew/3.0.rst:780 msgid "Removed support for :attr:`__members__` and :attr:`__methods__`." msgstr "" #: ../Doc/whatsnew/3.0.rst:782 msgid "" "The function attributes named :attr:`func_X` have been renamed to use the :" "data:`__X__` form, freeing up these names in the function attribute " "namespace for user-defined attributes. To wit, :attr:`func_closure`, :attr:" "`func_code`, :attr:`func_defaults`, :attr:`func_dict`, :attr:`func_doc`, :" "attr:`func_globals`, :attr:`func_name` were renamed to :attr:`__closure__`, :" "attr:`__code__`, :attr:`__defaults__`, :attr:`~object.__dict__`, :attr:" "`__doc__`, :attr:`__globals__`, :attr:`~definition.__name__`, respectively." msgstr "" #: ../Doc/whatsnew/3.0.rst:792 msgid ":meth:`__nonzero__` is now :meth:`__bool__`." msgstr "" #: ../Doc/whatsnew/3.0.rst:795 msgid "Builtins" msgstr "" #: ../Doc/whatsnew/3.0.rst:797 msgid "" ":pep:`3135`: New :func:`super`. You can now invoke :func:`super` without " "arguments and (assuming this is in a regular instance method defined inside " "a :keyword:`class` statement) the right class and instance will " "automatically be chosen. With arguments, the behavior of :func:`super` is " "unchanged." msgstr "" #: ../Doc/whatsnew/3.0.rst:803 msgid "" ":pep:`3111`: :func:`raw_input` was renamed to :func:`input`. That is, the " "new :func:`input` function reads a line from :data:`sys.stdin` and returns " "it with the trailing newline stripped. It raises :exc:`EOFError` if the " "input is terminated prematurely. To get the old behavior of :func:`input`, " "use ``eval(input())``." msgstr "" #: ../Doc/whatsnew/3.0.rst:809 msgid "" "A new built-in function :func:`next` was added to call the :meth:`~iterator." "__next__` method on an object." msgstr "" #: ../Doc/whatsnew/3.0.rst:812 msgid "" "The :func:`round` function rounding strategy and return type have changed. " "Exact halfway cases are now rounded to the nearest even result instead of " "away from zero. (For example, ``round(2.5)`` now returns ``2`` rather than " "``3``.) ``round(x[, n])`` now delegates to ``x.__round__([n])`` instead of " "always returning a float. It generally returns an integer when called with " "a single argument and a value of the same type as ``x`` when called with two " "arguments." msgstr "" #: ../Doc/whatsnew/3.0.rst:821 msgid "Moved :func:`intern` to :func:`sys.intern`." msgstr "" #: ../Doc/whatsnew/3.0.rst:823 msgid "" "Removed: :func:`apply`. Instead of ``apply(f, args)`` use ``f(*args)``." msgstr "" #: ../Doc/whatsnew/3.0.rst:826 msgid "" "Removed :func:`callable`. Instead of ``callable(f)`` you can use " "``isinstance(f, collections.Callable)``. The :func:`operator.isCallable` " "function is also gone." msgstr "" #: ../Doc/whatsnew/3.0.rst:830 msgid "" "Removed :func:`coerce`. This function no longer serves a purpose now that " "classic classes are gone." msgstr "" #: ../Doc/whatsnew/3.0.rst:833 msgid "" "Removed :func:`execfile`. Instead of ``execfile(fn)`` use ``exec(open(fn)." "read())``." msgstr "" #: ../Doc/whatsnew/3.0.rst:836 msgid "" "Removed the :class:`file` type. Use :func:`open`. There are now several " "different kinds of streams that open can return in the :mod:`io` module." msgstr "" #: ../Doc/whatsnew/3.0.rst:839 msgid "" "Removed :func:`reduce`. Use :func:`functools.reduce` if you really need it; " "however, 99 percent of the time an explicit :keyword:`for` loop is more " "readable." msgstr "" #: ../Doc/whatsnew/3.0.rst:843 msgid "Removed :func:`reload`. Use :func:`imp.reload`." msgstr "" #: ../Doc/whatsnew/3.0.rst:845 msgid "" "Removed. :meth:`dict.has_key` -- use the :keyword:`in` operator instead." msgstr "" #: ../Doc/whatsnew/3.0.rst:854 msgid "" "Due to time constraints, here is a *very* incomplete list of changes to the " "C API." msgstr "" #: ../Doc/whatsnew/3.0.rst:857 msgid "" "Support for several platforms was dropped, including but not limited to Mac " "OS 9, BeOS, RISCOS, Irix, and Tru64." msgstr "" #: ../Doc/whatsnew/3.0.rst:860 msgid ":pep:`3118`: New Buffer API." msgstr "" #: ../Doc/whatsnew/3.0.rst:862 msgid ":pep:`3121`: Extension Module Initialization & Finalization." msgstr "" #: ../Doc/whatsnew/3.0.rst:864 msgid ":pep:`3123`: Making :c:macro:`PyObject_HEAD` conform to standard C." msgstr "" #: ../Doc/whatsnew/3.0.rst:866 msgid "No more C API support for restricted execution." msgstr "" #: ../Doc/whatsnew/3.0.rst:868 msgid "" ":c:func:`PyNumber_Coerce`, :c:func:`PyNumber_CoerceEx`, :c:func:" "`PyMember_Get`, and :c:func:`PyMember_Set` C APIs are removed." msgstr "" #: ../Doc/whatsnew/3.0.rst:871 msgid "" "New C API :c:func:`PyImport_ImportModuleNoBlock`, works like :c:func:" "`PyImport_ImportModule` but won't block on the import lock (returning an " "error instead)." msgstr "" #: ../Doc/whatsnew/3.0.rst:875 msgid "" "Renamed the boolean conversion C-level slot and method: ``nb_nonzero`` is " "now ``nb_bool``." msgstr "" #: ../Doc/whatsnew/3.0.rst:878 msgid "" "Removed :c:macro:`METH_OLDARGS` and :c:macro:`WITH_CYCLE_GC` from the C API." msgstr "" #: ../Doc/whatsnew/3.0.rst:884 msgid "Performance" msgstr "" #: ../Doc/whatsnew/3.0.rst:886 msgid "" "The net result of the 3.0 generalizations is that Python 3.0 runs the " "pystone benchmark around 10% slower than Python 2.5. Most likely the " "biggest cause is the removal of special-casing for small integers. There's " "room for improvement, but it will happen after 3.0 is released!" msgstr "" #: ../Doc/whatsnew/3.0.rst:896 msgid "Porting To Python 3.0" msgstr "Portage vers Python 3.0" #: ../Doc/whatsnew/3.0.rst:898 msgid "" "For porting existing Python 2.5 or 2.6 source code to Python 3.0, the best " "strategy is the following:" msgstr "" #: ../Doc/whatsnew/3.0.rst:901 msgid "(Prerequisite:) Start with excellent test coverage." msgstr "" #: ../Doc/whatsnew/3.0.rst:903 msgid "" "Port to Python 2.6. This should be no more work than the average port from " "Python 2.x to Python 2.(x+1). Make sure all your tests pass." msgstr "" #: ../Doc/whatsnew/3.0.rst:907 msgid "" "(Still using 2.6:) Turn on the :option:`-3` command line switch. This " "enables warnings about features that will be removed (or change) in 3.0. " "Run your test suite again, and fix code that you get warnings about until " "there are no warnings left, and all your tests still pass." msgstr "" #: ../Doc/whatsnew/3.0.rst:913 msgid "" "Run the ``2to3`` source-to-source translator over your source code tree. " "(See :ref:`2to3-reference` for more on this tool.) Run the result of the " "translation under Python 3.0. Manually fix up any remaining issues, fixing " "problems until all tests pass again." msgstr "" #: ../Doc/whatsnew/3.0.rst:918 msgid "" "It is not recommended to try to write source code that runs unchanged under " "both Python 2.6 and 3.0; you'd have to use a very contorted coding style, e." "g. avoiding ``print`` statements, metaclasses, and much more. If you are " "maintaining a library that needs to support both Python 2.6 and Python 3.0, " "the best approach is to modify step 3 above by editing the 2.6 version of " "the source code and running the ``2to3`` translator again, rather than " "editing the 3.0 version of the source code." msgstr "" #: ../Doc/whatsnew/3.0.rst:927 msgid "" "For porting C extensions to Python 3.0, please see :ref:`cporting-howto`." msgstr "" #: ../Doc/whatsnew/3.1.rst:3 msgid "What's New In Python 3.1" msgstr "Nouveautés de Python 3.1" #: ../Doc/whatsnew/3.1.rst:5 ../Doc/whatsnew/3.2.rst:5 msgid "Raymond Hettinger" msgstr "" #: ../Doc/whatsnew/3.1.rst:49 msgid "This article explains the new features in Python 3.1, compared to 3.0." msgstr "" #: ../Doc/whatsnew/3.1.rst:53 msgid "PEP 372: Ordered Dictionaries" msgstr "" #: ../Doc/whatsnew/3.1.rst:55 msgid "" "Regular Python dictionaries iterate over key/value pairs in arbitrary order. " "Over the years, a number of authors have written alternative implementations " "that remember the order that the keys were originally inserted. Based on " "the experiences from those implementations, a new :class:`collections." "OrderedDict` class has been introduced." msgstr "" #: ../Doc/whatsnew/3.1.rst:61 msgid "" "The OrderedDict API is substantially the same as regular dictionaries but " "will iterate over keys and values in a guaranteed order depending on when a " "key was first inserted. If a new entry overwrites an existing entry, the " "original insertion position is left unchanged. Deleting an entry and " "reinserting it will move it to the end." msgstr "" #: ../Doc/whatsnew/3.1.rst:67 msgid "" "The standard library now supports use of ordered dictionaries in several " "modules. The :mod:`configparser` module uses them by default. This lets " "configuration files be read, modified, and then written back in their " "original order. The *_asdict()* method for :func:`collections.namedtuple` " "now returns an ordered dictionary with the values appearing in the same " "order as the underlying tuple indicies. The :mod:`json` module is being " "built-out with an *object_pairs_hook* to allow OrderedDicts to be built by " "the decoder. Support was also added for third-party tools like `PyYAML " "`_." msgstr "" #: ../Doc/whatsnew/3.1.rst:79 msgid ":pep:`372` - Ordered Dictionaries" msgstr "" #: ../Doc/whatsnew/3.1.rst:79 msgid "" "PEP written by Armin Ronacher and Raymond Hettinger. Implementation written " "by Raymond Hettinger." msgstr "" #: ../Doc/whatsnew/3.1.rst:86 msgid "" "The built-in :func:`format` function and the :meth:`str.format` method use a " "mini-language that now includes a simple, non-locale aware way to format a " "number with a thousands separator. That provides a way to humanize a " "program's output, improving its professional appearance and readability::" msgstr "" #: ../Doc/whatsnew/3.1.rst:100 msgid "" "The supported types are :class:`int`, :class:`float`, :class:`complex` and :" "class:`decimal.Decimal`." msgstr "" #: ../Doc/whatsnew/3.1.rst:103 msgid "" "Discussions are underway about how to specify alternative separators like " "dots, spaces, apostrophes, or underscores. Locale-aware applications should " "use the existing *n* format specifier which already has some support for " "thousands separators." msgstr "" #: ../Doc/whatsnew/3.1.rst:111 msgid "" "PEP written by Raymond Hettinger and implemented by Eric Smith and Mark " "Dickinson." msgstr "" #: ../Doc/whatsnew/3.1.rst:120 msgid "" "Directories and zip archives containing a :file:`__main__.py` file can now " "be executed directly by passing their name to the interpreter. The directory/" "zipfile is automatically inserted as the first entry in sys.path. " "(Suggestion and initial patch by Andy Chu; revised patch by Phillip J. Eby " "and Nick Coghlan; :issue:`1739468`.)" msgstr "" #: ../Doc/whatsnew/3.1.rst:126 msgid "" "The :func:`int` type gained a ``bit_length`` method that returns the number " "of bits necessary to represent its argument in binary::" msgstr "" #: ../Doc/whatsnew/3.1.rst:140 msgid "" "(Contributed by Fredrik Johansson, Victor Stinner, Raymond Hettinger, and " "Mark Dickinson; :issue:`3439`.)" msgstr "" #: ../Doc/whatsnew/3.1.rst:143 msgid "" "The fields in :func:`format` strings can now be automatically numbered::" msgstr "" #: ../Doc/whatsnew/3.1.rst:149 msgid "" "Formerly, the string would have required numbered fields such as: ``'Sir {0} " "of {1}'``." msgstr "" #: ../Doc/whatsnew/3.1.rst:152 msgid "(Contributed by Eric Smith; :issue:`5237`.)" msgstr "(Contribution par Eric Smith; :issue:`5237`.)" #: ../Doc/whatsnew/3.1.rst:154 msgid "" "The :func:`string.maketrans` function is deprecated and is replaced by new " "static methods, :meth:`bytes.maketrans` and :meth:`bytearray.maketrans`. " "This change solves the confusion around which types were supported by the :" "mod:`string` module. Now, :class:`str`, :class:`bytes`, and :class:" "`bytearray` each have their own **maketrans** and **translate** methods with " "intermediate translation tables of the appropriate type." msgstr "" #: ../Doc/whatsnew/3.1.rst:161 ../Doc/whatsnew/3.2.rst:2671 msgid "(Contributed by Georg Brandl; :issue:`5675`.)" msgstr "(Contribution par Georg Brandl; :issue:`5675`.)" #: ../Doc/whatsnew/3.1.rst:163 msgid "" "The syntax of the :keyword:`with` statement now allows multiple context " "managers in a single statement::" msgstr "" #: ../Doc/whatsnew/3.1.rst:171 msgid "" "With the new syntax, the :func:`contextlib.nested` function is no longer " "needed and is now deprecated." msgstr "" #: ../Doc/whatsnew/3.1.rst:174 ../Doc/whatsnew/3.2.rst:2684 msgid "" "(Contributed by Georg Brandl and Mattias Brändström; `appspot issue 53094 " "`_.)" msgstr "" #: ../Doc/whatsnew/3.1.rst:177 msgid "" "``round(x, n)`` now returns an integer if *x* is an integer. Previously it " "returned a float::" msgstr "" #: ../Doc/whatsnew/3.1.rst:183 msgid "(Contributed by Mark Dickinson; :issue:`4707`.)" msgstr "(Contribution par Mark Dickinson; :issue:`4707`.)" #: ../Doc/whatsnew/3.1.rst:185 msgid "" "Python now uses David Gay's algorithm for finding the shortest floating " "point representation that doesn't change its value. This should help " "mitigate some of the confusion surrounding binary floating point numbers." msgstr "" #: ../Doc/whatsnew/3.1.rst:190 msgid "" "The significance is easily seen with a number like ``1.1`` which does not " "have an exact equivalent in binary floating point. Since there is no exact " "equivalent, an expression like ``float('1.1')`` evaluates to the nearest " "representable value which is ``0x1.199999999999ap+0`` in hex or " "``1.100000000000000088817841970012523233890533447265625`` in decimal. That " "nearest value was and still is used in subsequent floating point " "calculations." msgstr "" #: ../Doc/whatsnew/3.1.rst:198 msgid "" "What is new is how the number gets displayed. Formerly, Python used a " "simple approach. The value of ``repr(1.1)`` was computed as ``format(1.1, " "'.17g')`` which evaluated to ``'1.1000000000000001'``. The advantage of " "using 17 digits was that it relied on IEEE-754 guarantees to assure that " "``eval(repr(1.1))`` would round-trip exactly to its original value. The " "disadvantage is that many people found the output to be confusing (mistaking " "intrinsic limitations of binary floating point representation as being a " "problem with Python itself)." msgstr "" #: ../Doc/whatsnew/3.1.rst:207 msgid "" "The new algorithm for ``repr(1.1)`` is smarter and returns ``'1.1'``. " "Effectively, it searches all equivalent string representations (ones that " "get stored with the same underlying float value) and returns the shortest " "representation." msgstr "" #: ../Doc/whatsnew/3.1.rst:212 msgid "" "The new algorithm tends to emit cleaner representations when possible, but " "it does not change the underlying values. So, it is still the case that " "``1.1 + 2.2 != 3.3`` even though the representations may suggest otherwise." msgstr "" #: ../Doc/whatsnew/3.1.rst:216 msgid "" "The new algorithm depends on certain features in the underlying floating " "point implementation. If the required features are not found, the old " "algorithm will continue to be used. Also, the text pickle protocols assure " "cross-platform portability by using the old algorithm." msgstr "" #: ../Doc/whatsnew/3.1.rst:221 msgid "(Contributed by Eric Smith and Mark Dickinson; :issue:`1580`)" msgstr "(Contribution par Eric Smith et Mark Dickinson; :issue:`1580`.)" #: ../Doc/whatsnew/3.1.rst:226 msgid "" "Added a :class:`collections.Counter` class to support convenient counting of " "unique items in a sequence or iterable::" msgstr "" #: ../Doc/whatsnew/3.1.rst:232 msgid "(Contributed by Raymond Hettinger; :issue:`1696199`.)" msgstr "(Contribution par Raymond Hettinger; :issue:`1696199`.)" #: ../Doc/whatsnew/3.1.rst:234 msgid "" "Added a new module, :mod:`tkinter.ttk` for access to the Tk themed widget " "set. The basic idea of ttk is to separate, to the extent possible, the code " "implementing a widget's behavior from the code implementing its appearance." msgstr "" #: ../Doc/whatsnew/3.1.rst:238 msgid "(Contributed by Guilherme Polo; :issue:`2983`.)" msgstr "(Contribution par Guilherme Polo; :issue:`2983`.)" #: ../Doc/whatsnew/3.1.rst:240 msgid "" "The :class:`gzip.GzipFile` and :class:`bz2.BZ2File` classes now support the " "context management protocol::" msgstr "" #: ../Doc/whatsnew/3.1.rst:247 ../Doc/whatsnew/3.2.rst:2323 msgid "(Contributed by Antoine Pitrou.)" msgstr "(Contribution par Antoine Pitrou)" #: ../Doc/whatsnew/3.1.rst:249 msgid "" "The :mod:`decimal` module now supports methods for creating a decimal object " "from a binary :class:`float`. The conversion is exact but can sometimes be " "surprising::" msgstr "" #: ../Doc/whatsnew/3.1.rst:256 msgid "" "The long decimal result shows the actual binary fraction being stored for " "*1.1*. The fraction has many digits because *1.1* cannot be exactly " "represented in binary." msgstr "" #: ../Doc/whatsnew/3.1.rst:260 msgid "(Contributed by Raymond Hettinger and Mark Dickinson.)" msgstr "" #: ../Doc/whatsnew/3.1.rst:262 msgid "" "The :mod:`itertools` module grew two new functions. The :func:`itertools." "combinations_with_replacement` function is one of four for generating " "combinatorics including permutations and Cartesian products. The :func:" "`itertools.compress` function mimics its namesake from APL. Also, the " "existing :func:`itertools.count` function now has an optional *step* " "argument and can accept any type of counting sequence including :class:" "`fractions.Fraction` and :class:`decimal.Decimal`::" msgstr "" #: ../Doc/whatsnew/3.1.rst:283 msgid "" ":func:`collections.namedtuple` now supports a keyword argument *rename* " "which lets invalid fieldnames be automatically converted to positional names " "in the form _0, _1, etc. This is useful when the field names are being " "created by an external source such as a CSV header, SQL field list, or user " "input::" msgstr "" #: ../Doc/whatsnew/3.1.rst:300 msgid "(Contributed by Raymond Hettinger; :issue:`1818`.)" msgstr "(Contribution par Raymond Hettinger; :issue:`1818`.)" #: ../Doc/whatsnew/3.1.rst:302 msgid "" "The :func:`re.sub`, :func:`re.subn` and :func:`re.split` functions now " "accept a flags parameter." msgstr "" #: ../Doc/whatsnew/3.1.rst:305 msgid "(Contributed by Gregory Smith.)" msgstr "" #: ../Doc/whatsnew/3.1.rst:307 msgid "" "The :mod:`logging` module now implements a simple :class:`logging." "NullHandler` class for applications that are not using logging but are " "calling library code that does. Setting-up a null handler will suppress " "spurious warnings such as \"No handlers could be found for logger foo\"::" msgstr "" #: ../Doc/whatsnew/3.1.rst:315 msgid "(Contributed by Vinay Sajip; :issue:`4384`)." msgstr "(Contribution par Vinay Sajip; :issue:`4384`.)" #: ../Doc/whatsnew/3.1.rst:317 msgid "" "The :mod:`runpy` module which supports the ``-m`` command line switch now " "supports the execution of packages by looking for and executing a " "``__main__`` submodule when a package name is supplied." msgstr "" #: ../Doc/whatsnew/3.1.rst:321 msgid "(Contributed by Andi Vajda; :issue:`4195`.)" msgstr "(Contribution par Andi Vajda; :issue:`4195`.)" #: ../Doc/whatsnew/3.1.rst:323 msgid "" "The :mod:`pdb` module can now access and display source code loaded via :mod:" "`zipimport` (or any other conformant :pep:`302` loader)." msgstr "" #: ../Doc/whatsnew/3.1.rst:326 msgid "(Contributed by Alexander Belopolsky; :issue:`4201`.)" msgstr "(Contribution par Alexander Belopolsky; :issue:`4201`.)" #: ../Doc/whatsnew/3.1.rst:328 msgid ":class:`functools.partial` objects can now be pickled." msgstr "" #: ../Doc/whatsnew/3.1.rst:330 msgid "" "(Suggested by Antoine Pitrou and Jesse Noller. Implemented by Jack " "Diederich; :issue:`5228`.)" msgstr "" #: ../Doc/whatsnew/3.1.rst:333 msgid "" "Add :mod:`pydoc` help topics for symbols so that ``help('@')`` works as " "expected in the interactive environment." msgstr "" #: ../Doc/whatsnew/3.1.rst:336 msgid "(Contributed by David Laban; :issue:`4739`.)" msgstr "(Contribution par David Laban; :issue:`4739`.)" #: ../Doc/whatsnew/3.1.rst:338 msgid "" "The :mod:`unittest` module now supports skipping individual tests or classes " "of tests. And it supports marking a test as an expected failure, a test that " "is known to be broken, but shouldn't be counted as a failure on a " "TestResult::" msgstr "" #: ../Doc/whatsnew/3.1.rst:353 msgid "" "Also, tests for exceptions have been builtout to work with context managers " "using the :keyword:`with` statement::" msgstr "" #: ../Doc/whatsnew/3.1.rst:360 msgid "" "In addition, several new assertion methods were added including :func:" "`assertSetEqual`, :func:`assertDictEqual`, :func:" "`assertDictContainsSubset`, :func:`assertListEqual`, :func:" "`assertTupleEqual`, :func:`assertSequenceEqual`, :func:" "`assertRaisesRegexp`, :func:`assertIsNone`, and :func:`assertIsNotNone`." msgstr "" #: ../Doc/whatsnew/3.1.rst:367 msgid "(Contributed by Benjamin Peterson and Antoine Pitrou.)" msgstr "(Contribution par Benjamin Peterson et Antoine Pitrou)" #: ../Doc/whatsnew/3.1.rst:369 msgid "" "The :mod:`io` module has three new constants for the :meth:`seek` method :" "data:`SEEK_SET`, :data:`SEEK_CUR`, and :data:`SEEK_END`." msgstr "" #: ../Doc/whatsnew/3.1.rst:372 msgid "The :attr:`sys.version_info` tuple is now a named tuple::" msgstr "" #: ../Doc/whatsnew/3.1.rst:377 msgid "(Contributed by Ross Light; :issue:`4285`.)" msgstr "(Contribution par Ross Ligh; :issue:`4285`.)" #: ../Doc/whatsnew/3.1.rst:379 msgid "The :mod:`nntplib` and :mod:`imaplib` modules now support IPv6." msgstr "" #: ../Doc/whatsnew/3.1.rst:381 msgid "(Contributed by Derek Morr; :issue:`1655` and :issue:`1664`.)" msgstr "(Contribution par Derek Morr; :issue:`1655` et :issue:`1664`)" #: ../Doc/whatsnew/3.1.rst:383 msgid "" "The :mod:`pickle` module has been adapted for better interoperability with " "Python 2.x when used with protocol 2 or lower. The reorganization of the " "standard library changed the formal reference for many objects. For " "example, ``__builtin__.set`` in Python 2 is called ``builtins.set`` in " "Python 3. This change confounded efforts to share data between different " "versions of Python. But now when protocol 2 or lower is selected, the " "pickler will automatically use the old Python 2 names for both loading and " "dumping. This remapping is turned-on by default but can be disabled with the " "*fix_imports* option::" msgstr "" #: ../Doc/whatsnew/3.1.rst:399 msgid "" "An unfortunate but unavoidable side-effect of this change is that protocol 2 " "pickles produced by Python 3.1 won't be readable with Python 3.0. The latest " "pickle protocol, protocol 3, should be used when migrating data between " "Python 3.x implementations, as it doesn't attempt to remain compatible with " "Python 2.x." msgstr "" #: ../Doc/whatsnew/3.1.rst:405 msgid "" "(Contributed by Alexandre Vassalotti and Antoine Pitrou, :issue:`6137`.)" msgstr "" "(Contribution par Alexandre Vassalotti et Antoine Pitrou; :issue:`6137`.)" #: ../Doc/whatsnew/3.1.rst:407 msgid "" "A new module, :mod:`importlib` was added. It provides a complete, portable, " "pure Python reference implementation of the :keyword:`import` statement and " "its counterpart, the :func:`__import__` function. It represents a " "substantial step forward in documenting and defining the actions that take " "place during imports." msgstr "" #: ../Doc/whatsnew/3.1.rst:418 ../Doc/whatsnew/3.3.rst:2151 msgid "Major performance enhancements have been added:" msgstr "" #: ../Doc/whatsnew/3.1.rst:420 msgid "" "The new I/O library (as defined in :pep:`3116`) was mostly written in Python " "and quickly proved to be a problematic bottleneck in Python 3.0. In Python " "3.1, the I/O library has been entirely rewritten in C and is 2 to 20 times " "faster depending on the task at hand. The pure Python version is still " "available for experimentation purposes through the ``_pyio`` module." msgstr "" #: ../Doc/whatsnew/3.1.rst:427 msgid "(Contributed by Amaury Forgeot d'Arc and Antoine Pitrou.)" msgstr "(Contribution par Amaury Forgeot d'Arc and Antoine Pitrou)" #: ../Doc/whatsnew/3.1.rst:429 msgid "" "Added 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." msgstr "" #: ../Doc/whatsnew/3.1.rst:434 msgid "(Contributed by Antoine Pitrou, :issue:`4688`.)" msgstr "(Contribution par Antoine Pitrou; :issue:`4688`.)" #: ../Doc/whatsnew/3.1.rst:436 msgid "" "Enabling a configure option named ``--with-computed-gotos`` on compilers " "that support it (notably: gcc, SunPro, icc), the bytecode evaluation loop is " "compiled with a new dispatch mechanism which gives speedups of up to 20%, " "depending on the system, the compiler, and the benchmark." msgstr "" #: ../Doc/whatsnew/3.1.rst:442 msgid "" "(Contributed by Antoine Pitrou along with a number of other participants, :" "issue:`4753`)." msgstr "" "(Contribution par Antoine Pitrou ainsi qu’un certain nombre d’autres " "participants; :issue:`4753`.)" #: ../Doc/whatsnew/3.1.rst:445 msgid "" "The decoding of UTF-8, UTF-16 and LATIN-1 is now two to four times faster." msgstr "" #: ../Doc/whatsnew/3.1.rst:448 msgid "" "(Contributed by Antoine Pitrou and Amaury Forgeot d'Arc, :issue:`4868`.)" msgstr "" "(Contribution par Antoine Pitrou et Amaury Forgeot d'Arc; :issue:`4868`.)" #: ../Doc/whatsnew/3.1.rst:450 msgid "" "The :mod:`json` module now has a C extension to substantially improve its " "performance. In addition, the API was modified so that json works only " "with :class:`str`, not with :class:`bytes`. That change makes the module " "closely match the `JSON specification `_ which is defined " "in terms of Unicode." msgstr "" #: ../Doc/whatsnew/3.1.rst:456 msgid "" "(Contributed by Bob Ippolito and converted to Py3.1 by Antoine Pitrou and " "Benjamin Peterson; :issue:`4136`.)" msgstr "" #: ../Doc/whatsnew/3.1.rst:459 msgid "" "Unpickling now interns the attribute names of pickled objects. This saves " "memory and allows pickles to be smaller." msgstr "" #: ../Doc/whatsnew/3.1.rst:462 msgid "(Contributed by Jake McGuire and Antoine Pitrou; :issue:`5084`.)" msgstr "(Contribution par Jake McGuire et Antoine Pitrou; :issue:`5084`.)" #: ../Doc/whatsnew/3.1.rst:465 ../Doc/whatsnew/3.2.rst:2489 #: ../../../Misc/NEWS:684 ../../../Misc/NEWS:956 ../../../Misc/NEWS:1155 #: ../../../Misc/NEWS:1411 ../../../Misc/NEWS:2537 ../../../Misc/NEWS:3142 #: ../../../Misc/NEWS:3473 ../../../Misc/NEWS:3979 ../../../Misc/NEWS:5996 #: ../../../Misc/NEWS:6714 ../../../Misc/NEWS:6916 ../../../Misc/NEWS:7318 #: ../../../Misc/NEWS:8206 ../../../Misc/NEWS:8472 ../../../Misc/NEWS:10082 msgid "IDLE" msgstr "IDLE" #: ../Doc/whatsnew/3.1.rst:467 msgid "" "IDLE's format menu now provides an option to strip trailing whitespace from " "a source file." msgstr "" #: ../Doc/whatsnew/3.1.rst:470 msgid "(Contributed by Roger D. Serwy; :issue:`5150`.)" msgstr "(Contribution par Roger D. Serwy; :issue:`5150`.)" #: ../Doc/whatsnew/3.1.rst:477 msgid "" "Integers are now stored internally either in base 2**15 or in base 2**30, " "the base being determined at build time. Previously, they were always " "stored in base 2**15. Using base 2**30 gives significant performance " "improvements on 64-bit machines, but benchmark results on 32-bit machines " "have been mixed. Therefore, the default is to use base 2**30 on 64-bit " "machines and base 2**15 on 32-bit machines; on Unix, there's a new configure " "option ``--enable-big-digits`` that can be used to override this default." msgstr "" #: ../Doc/whatsnew/3.1.rst:486 msgid "" "Apart from the performance improvements this change should be invisible to " "end users, with one exception: for testing and debugging purposes there's a " "new :attr:`sys.int_info` that provides information about the internal " "format, giving the number of bits per digit and the size in bytes of the C " "type used to store each digit::" msgstr "" #: ../Doc/whatsnew/3.1.rst:498 msgid "" "The :c:func:`PyLong_AsUnsignedLongLong()` function now handles a negative " "*pylong* by raising :exc:`OverflowError` instead of :exc:`TypeError`." msgstr "" #: ../Doc/whatsnew/3.1.rst:501 msgid "(Contributed by Mark Dickinson and Lisandro Dalcrin; :issue:`5175`.)" msgstr "(Contribution par Mark Dickinson et Lisandro Dalcrin; :issue:`5175`)" #: ../Doc/whatsnew/3.1.rst:503 msgid "" "Deprecated :c:func:`PyNumber_Int`. Use :c:func:`PyNumber_Long` instead." msgstr "" #: ../Doc/whatsnew/3.1.rst:505 msgid "(Contributed by Mark Dickinson; :issue:`4910`.)" msgstr "(Contribution par Mark Dickinson; :issue:`4910`)" #: ../Doc/whatsnew/3.1.rst:507 msgid "" "Added a new :c:func:`PyOS_string_to_double` function to replace the " "deprecated functions :c:func:`PyOS_ascii_strtod` and :c:func:" "`PyOS_ascii_atof`." msgstr "" #: ../Doc/whatsnew/3.1.rst:510 msgid "(Contributed by Mark Dickinson; :issue:`5914`.)" msgstr "(Contribution par Mark Dickinson; :issue:`5914`)" #: ../Doc/whatsnew/3.1.rst:512 msgid "" "Added :c:type:`PyCapsule` as a replacement for the :c:type:`PyCObject` API. " "The principal difference is that the new type has a well defined interface " "for passing typing safety information and a less complicated signature for " "calling a destructor. The old type had a problematic API and is now " "deprecated." msgstr "" #: ../Doc/whatsnew/3.1.rst:518 msgid "(Contributed by Larry Hastings; :issue:`5630`.)" msgstr "(Contribution par Larry Hastings; :issue:`5630`)" #: ../Doc/whatsnew/3.1.rst:521 msgid "Porting to Python 3.1" msgstr "Portage vers Python 3.1" #: ../Doc/whatsnew/3.1.rst:526 msgid "" "The new floating point string representations can break existing doctests. " "For example::" msgstr "" #: ../Doc/whatsnew/3.1.rst:549 msgid "" "The automatic name remapping in the pickle module for protocol 2 or lower " "can make Python 3.1 pickles unreadable in Python 3.0. One solution is to " "use protocol 3. Another solution is to set the *fix_imports* option to " "**False**. See the discussion above for more details." msgstr "" #: ../Doc/whatsnew/3.2.rst:3 msgid "What's New In Python 3.2" msgstr "Nouveautés de Python 3.2" #: ../Doc/whatsnew/3.2.rst:51 msgid "" "This article explains the new features in Python 3.2 as compared to 3.1. It " "focuses on a few highlights and gives a few examples. For full details, see " "the `Misc/NEWS `_ file." msgstr "" #: ../Doc/whatsnew/3.2.rst:57 msgid ":pep:`392` - Python 3.2 Release Schedule" msgstr "" #: ../Doc/whatsnew/3.2.rst:61 msgid "PEP 384: Defining a Stable ABI" msgstr "" #: ../Doc/whatsnew/3.2.rst:63 msgid "" "In the past, extension modules built for one Python version were often not " "usable with other Python versions. Particularly on Windows, every feature " "release of Python required rebuilding all extension modules that one wanted " "to use. This requirement was the result of the free access to Python " "interpreter internals that extension modules could use." msgstr "" #: ../Doc/whatsnew/3.2.rst:69 msgid "" "With Python 3.2, an alternative approach becomes available: extension " "modules which restrict themselves to a limited API (by defining " "Py_LIMITED_API) cannot use many of the internals, but are constrained to a " "set of API functions that are promised to be stable for several releases. As " "a consequence, extension modules built for 3.2 in that mode will also work " "with 3.3, 3.4, and so on. Extension modules that make use of details of " "memory structures can still be built, but will need to be recompiled for " "every feature release." msgstr "" #: ../Doc/whatsnew/3.2.rst:80 msgid ":pep:`384` - Defining a Stable ABI" msgstr "" #: ../Doc/whatsnew/3.2.rst:81 msgid "PEP written by Martin von Löwis." msgstr "" #: ../Doc/whatsnew/3.2.rst:85 msgid "PEP 389: Argparse Command Line Parsing Module" msgstr "" #: ../Doc/whatsnew/3.2.rst:87 msgid "" "A new module for command line parsing, :mod:`argparse`, was introduced to " "overcome the limitations of :mod:`optparse` which did not provide support " "for positional arguments (not just options), subcommands, required options " "and other common patterns of specifying and validating options." msgstr "" #: ../Doc/whatsnew/3.2.rst:92 msgid "" "This module has already had widespread success in the community as a third-" "party module. Being more fully featured than its predecessor, the :mod:" "`argparse` module is now the preferred module for command-line processing. " "The older module is still being kept available because of the substantial " "amount of legacy code that depends on it." msgstr "" #: ../Doc/whatsnew/3.2.rst:98 msgid "" "Here's an annotated example parser showing features like limiting results to " "a set of choices, specifying a *metavar* in the help screen, validating that " "one or more positional arguments is present, and making a required option::" msgstr "" #: ../Doc/whatsnew/3.2.rst:117 msgid "Example of calling the parser on a command string::" msgstr "" #: ../Doc/whatsnew/3.2.rst:128 msgid "Example of the parser's automatically generated help::" msgstr "" #: ../Doc/whatsnew/3.2.rst:147 msgid "" "An especially nice :mod:`argparse` feature is the ability to define " "subparsers, each with their own argument patterns and help displays::" msgstr "" #: ../Doc/whatsnew/3.2.rst:173 msgid ":pep:`389` - New Command Line Parsing Module" msgstr "" #: ../Doc/whatsnew/3.2.rst:173 msgid "PEP written by Steven Bethard." msgstr "" #: ../Doc/whatsnew/3.2.rst:175 msgid "" ":ref:`upgrading-optparse-code` for details on the differences from :mod:" "`optparse`." msgstr "" #: ../Doc/whatsnew/3.2.rst:179 msgid "PEP 391: Dictionary Based Configuration for Logging" msgstr "" #: ../Doc/whatsnew/3.2.rst:181 msgid "" "The :mod:`logging` module provided two kinds of configuration, one style " "with function calls for each option or another style driven by an external " "file saved in a :mod:`ConfigParser` format. Those options did not provide " "the flexibility to create configurations from JSON or YAML files, nor did " "they support incremental configuration, which is needed for specifying " "logger options from a command line." msgstr "" #: ../Doc/whatsnew/3.2.rst:188 msgid "" "To support a more flexible style, the module now offers :func:`logging." "config.dictConfig` for specifying logging configuration with plain Python " "dictionaries. The configuration options include formatters, handlers, " "filters, and loggers. Here's a working example of a configuration " "dictionary::" msgstr "" #: ../Doc/whatsnew/3.2.rst:212 msgid "" "If that dictionary is stored in a file called :file:`conf.json`, it can be " "loaded and called with code like this::" msgstr "" #: ../Doc/whatsnew/3.2.rst:227 msgid ":pep:`391` - Dictionary Based Configuration for Logging" msgstr "" #: ../Doc/whatsnew/3.2.rst:228 msgid "PEP written by Vinay Sajip." msgstr "" #: ../Doc/whatsnew/3.2.rst:232 msgid "PEP 3148: The ``concurrent.futures`` module" msgstr "" #: ../Doc/whatsnew/3.2.rst:234 msgid "" "Code for creating and managing concurrency is being collected in a new top-" "level namespace, *concurrent*. Its first member is a *futures* package " "which provides a uniform high-level interface for managing threads and " "processes." msgstr "" #: ../Doc/whatsnew/3.2.rst:238 msgid "" "The design for :mod:`concurrent.futures` was inspired by the *java.util." "concurrent* package. In that model, a running call and its result are " "represented by a :class:`~concurrent.futures.Future` object that abstracts " "features common to threads, processes, and remote procedure calls. That " "object supports status checks (running or done), timeouts, cancellations, " "adding callbacks, and access to results or exceptions." msgstr "" #: ../Doc/whatsnew/3.2.rst:245 msgid "" "The primary offering of the new module is a pair of executor classes for " "launching and managing calls. The goal of the executors is to make it " "easier to use existing tools for making parallel calls. They save the effort " "needed to setup a pool of resources, launch the calls, create a results " "queue, add time-out handling, and limit the total number of threads, " "processes, or remote procedure calls." msgstr "" #: ../Doc/whatsnew/3.2.rst:252 msgid "" "Ideally, each application should share a single executor across multiple " "components so that process and thread limits can be centrally managed. This " "solves the design challenge that arises when each component has its own " "competing strategy for resource management." msgstr "" #: ../Doc/whatsnew/3.2.rst:257 msgid "" "Both classes share a common interface with three methods: :meth:`~concurrent." "futures.Executor.submit` for scheduling a callable and returning a :class:" "`~concurrent.futures.Future` object; :meth:`~concurrent.futures.Executor." "map` for scheduling many asynchronous calls at a time, and :meth:" "`~concurrent.futures.Executor.shutdown` for freeing resources. The class is " "a :term:`context manager` and can be used in a :keyword:`with` statement to " "assure that resources are automatically released when currently pending " "futures are done executing." msgstr "" #: ../Doc/whatsnew/3.2.rst:266 msgid "" "A simple of example of :class:`~concurrent.futures.ThreadPoolExecutor` is a " "launch of four parallel threads for copying files::" msgstr "" #: ../Doc/whatsnew/3.2.rst:279 msgid ":pep:`3148` - Futures -- Execute Computations Asynchronously" msgstr "" #: ../Doc/whatsnew/3.2.rst:279 msgid "PEP written by Brian Quinlan." msgstr "" #: ../Doc/whatsnew/3.2.rst:281 msgid "" ":ref:`Code for Threaded Parallel URL reads`, an " "example using threads to fetch multiple web pages in parallel." msgstr "" #: ../Doc/whatsnew/3.2.rst:284 msgid "" ":ref:`Code for computing prime numbers in parallel`, an example demonstrating :class:`~concurrent.futures." "ProcessPoolExecutor`." msgstr "" #: ../Doc/whatsnew/3.2.rst:290 msgid "PEP 3147: PYC Repository Directories" msgstr "" #: ../Doc/whatsnew/3.2.rst:292 msgid "" "Python's scheme for caching bytecode in *.pyc* files did not work well in " "environments with multiple Python interpreters. If one interpreter " "encountered a cached file created by another interpreter, it would recompile " "the source and overwrite the cached file, thus losing the benefits of " "caching." msgstr "" #: ../Doc/whatsnew/3.2.rst:297 msgid "" "The issue of \"pyc fights\" has become more pronounced as it has become " "commonplace for Linux distributions to ship with multiple versions of " "Python. These conflicts also arise with CPython alternatives such as Unladen " "Swallow." msgstr "" #: ../Doc/whatsnew/3.2.rst:301 msgid "" "To solve this problem, Python's import machinery has been extended to use " "distinct filenames for each interpreter. Instead of Python 3.2 and Python " "3.3 and Unladen Swallow each competing for a file called \"mymodule.pyc\", " "they will now look for \"mymodule.cpython-32.pyc\", \"mymodule.cpython-33.pyc" "\", and \"mymodule.unladen10.pyc\". And to prevent all of these new files " "from cluttering source directories, the *pyc* files are now collected in a " "\"__pycache__\" directory stored under the package directory." msgstr "" #: ../Doc/whatsnew/3.2.rst:309 msgid "" "Aside from the filenames and target directories, the new scheme has a few " "aspects that are visible to the programmer:" msgstr "" #: ../Doc/whatsnew/3.2.rst:312 msgid "" "Imported modules now have a :attr:`__cached__` attribute which stores the " "name of the actual file that was imported:" msgstr "" #: ../Doc/whatsnew/3.2.rst:319 msgid "" "The tag that is unique to each interpreter is accessible from the :mod:`imp` " "module:" msgstr "" #: ../Doc/whatsnew/3.2.rst:326 msgid "" "Scripts that try to deduce source filename from the imported file now need " "to be smarter. It is no longer sufficient to simply strip the \"c\" from a " "\".pyc\" filename. Instead, use the new functions in the :mod:`imp` module:" msgstr "" #: ../Doc/whatsnew/3.2.rst:335 msgid "" "The :mod:`py_compile` and :mod:`compileall` modules have been updated to " "reflect the new naming convention and target directory. The command-line " "invocation of *compileall* has new options: ``-i`` for specifying a list of " "files and directories to compile and ``-b`` which causes bytecode files to " "be written to their legacy location rather than *__pycache__*." msgstr "" #: ../Doc/whatsnew/3.2.rst:342 msgid "" "The :mod:`importlib.abc` module has been updated with new :term:`abstract " "base classes ` for loading bytecode files. The " "obsolete ABCs, :class:`~importlib.abc.PyLoader` and :class:`~importlib.abc." "PyPycLoader`, have been deprecated (instructions on how to stay Python 3.1 " "compatible are included with the documentation)." msgstr "" #: ../Doc/whatsnew/3.2.rst:350 msgid ":pep:`3147` - PYC Repository Directories" msgstr "" #: ../Doc/whatsnew/3.2.rst:351 ../Doc/whatsnew/3.2.rst:382 msgid "PEP written by Barry Warsaw." msgstr "" #: ../Doc/whatsnew/3.2.rst:355 msgid "PEP 3149: ABI Version Tagged .so Files" msgstr "" #: ../Doc/whatsnew/3.2.rst:357 msgid "" "The PYC repository directory allows multiple bytecode cache files to be co-" "located. This PEP implements a similar mechanism for shared object files by " "giving them a common directory and distinct names for each version." msgstr "" #: ../Doc/whatsnew/3.2.rst:361 msgid "" "The common directory is \"pyshared\" and the file names are made distinct by " "identifying the Python implementation (such as CPython, PyPy, Jython, etc.), " "the major and minor version numbers, and optional build flags (such as \"d\" " "for debug, \"m\" for pymalloc, \"u\" for wide-unicode). For an arbitrary " "package \"foo\", you may see these files when the distribution package is " "installed::" msgstr "" #: ../Doc/whatsnew/3.2.rst:370 msgid "" "In Python itself, the tags are accessible from functions in the :mod:" "`sysconfig` module::" msgstr "" #: ../Doc/whatsnew/3.2.rst:381 msgid ":pep:`3149` - ABI Version Tagged .so Files" msgstr "" #: ../Doc/whatsnew/3.2.rst:386 msgid "PEP 3333: Python Web Server Gateway Interface v1.0.1" msgstr "" #: ../Doc/whatsnew/3.2.rst:388 msgid "" "This informational PEP clarifies how bytes/text issues are to be handled by " "the WSGI protocol. The challenge is that string handling in Python 3 is " "most conveniently handled with the :class:`str` type even though the HTTP " "protocol is itself bytes oriented." msgstr "" #: ../Doc/whatsnew/3.2.rst:393 msgid "" "The PEP differentiates so-called *native strings* that are used for request/" "response headers and metadata versus *byte strings* which are used for the " "bodies of requests and responses." msgstr "" #: ../Doc/whatsnew/3.2.rst:397 msgid "" "The *native strings* are always of type :class:`str` but are restricted to " "code points between *U+0000* through *U+00FF* which are translatable to " "bytes using *Latin-1* encoding. These strings are used for the keys and " "values in the environment dictionary and for response headers and statuses " "in the :func:`start_response` function. They must follow :rfc:`2616` with " "respect to encoding. That is, they must either be *ISO-8859-1* characters or " "use :rfc:`2047` MIME encoding." msgstr "" #: ../Doc/whatsnew/3.2.rst:405 msgid "" "For developers porting WSGI applications from Python 2, here are the salient " "points:" msgstr "" #: ../Doc/whatsnew/3.2.rst:408 msgid "" "If the app already used strings for headers in Python 2, no change is needed." msgstr "" #: ../Doc/whatsnew/3.2.rst:410 msgid "" "If instead, the app encoded output headers or decoded input headers, then " "the headers will need to be re-encoded to Latin-1. For example, an output " "header encoded in utf-8 was using ``h.encode('utf-8')`` now needs to convert " "from bytes to native strings using ``h.encode('utf-8').decode('latin-1')``." msgstr "" #: ../Doc/whatsnew/3.2.rst:415 msgid "" "Values yielded by an application or sent using the :meth:`write` method must " "be byte strings. The :func:`start_response` function and environ must use " "native strings. The two cannot be mixed." msgstr "" #: ../Doc/whatsnew/3.2.rst:419 msgid "" "For server implementers writing CGI-to-WSGI pathways or other CGI-style " "protocols, the users must to be able access the environment using native " "strings even though the underlying platform may have a different " "convention. To bridge this gap, the :mod:`wsgiref` module has a new " "function, :func:`wsgiref.handlers.read_environ` for transcoding CGI " "variables from :attr:`os.environ` into native strings and returning a new " "dictionary." msgstr "" #: ../Doc/whatsnew/3.2.rst:428 msgid ":pep:`3333` - Python Web Server Gateway Interface v1.0.1" msgstr "" #: ../Doc/whatsnew/3.2.rst:429 msgid "PEP written by Phillip Eby." msgstr "" #: ../Doc/whatsnew/3.2.rst:437 msgid "" "String formatting for :func:`format` and :meth:`str.format` gained new " "capabilities for the format character **#**. Previously, for integers in " "binary, octal, or hexadecimal, it caused the output to be prefixed with " "'0b', '0o', or '0x' respectively. Now it can also handle floats, complex, " "and Decimal, causing the output to always have a decimal point even when no " "digits follow it." msgstr "" #: ../Doc/whatsnew/3.2.rst:449 msgid "" "(Suggested by Mark Dickinson and implemented by Eric Smith in :issue:`7094`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:451 msgid "" "There is also a new :meth:`str.format_map` method that extends the " "capabilities of the existing :meth:`str.format` method by accepting " "arbitrary :term:`mapping` objects. This new method makes it possible to use " "string formatting with any of Python's many dictionary-like objects such as :" "class:`~collections.defaultdict`, :class:`~shelve.Shelf`, :class:" "`~configparser.ConfigParser`, or :mod:`dbm`. It is also useful with custom :" "class:`dict` subclasses that normalize keys before look-up or that supply a :" "meth:`__missing__` method for unknown keys::" msgstr "" #: ../Doc/whatsnew/3.2.rst:478 msgid "" "(Suggested by Raymond Hettinger and implemented by Eric Smith in :issue:" "`6081`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:481 msgid "" "The interpreter can now be started with a quiet option, ``-q``, to prevent " "the copyright and version information from being displayed in the " "interactive mode. The option can be introspected using the :attr:`sys." "flags` attribute:" msgstr "" #: ../Doc/whatsnew/3.2.rst:493 msgid "(Contributed by Marcin Wojdyr in :issue:`1772833`)." msgstr "(Contribution par Marcin Wojdyr; :issue:`1772833`)" #: ../Doc/whatsnew/3.2.rst:495 msgid "" "The :func:`hasattr` function works by calling :func:`getattr` and detecting " "whether an exception is raised. This technique allows it to detect methods " "created dynamically by :meth:`__getattr__` or :meth:`__getattribute__` which " "would otherwise be absent from the class dictionary. Formerly, *hasattr* " "would catch any exception, possibly masking genuine errors. Now, *hasattr* " "has been tightened to only catch :exc:`AttributeError` and let other " "exceptions pass through::" msgstr "" #: ../Doc/whatsnew/3.2.rst:514 msgid "" "(Discovered by Yury Selivanov and fixed by Benjamin Peterson; :issue:`9666`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:516 msgid "" "The :func:`str` of a float or complex number is now the same as its :func:" "`repr`. Previously, the :func:`str` form was shorter but that just caused " "confusion and is no longer needed now that the shortest possible :func:" "`repr` is displayed by default:" msgstr "" #: ../Doc/whatsnew/3.2.rst:527 msgid "(Proposed and implemented by Mark Dickinson; :issue:`9337`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:529 msgid "" ":class:`memoryview` objects now have a :meth:`~memoryview.release()` method " "and they also now support the context management protocol. This allows " "timely release of any resources that were acquired when requesting a buffer " "from the original object." msgstr "" #: ../Doc/whatsnew/3.2.rst:538 msgid "(Added by Antoine Pitrou; :issue:`9757`.)" msgstr "(Contribution par Antoine Pitrou; :issue:`9757`.)" #: ../Doc/whatsnew/3.2.rst:540 msgid "" "Previously it was illegal to delete a name from the local namespace if it " "occurs as a free variable in a nested block::" msgstr "" #: ../Doc/whatsnew/3.2.rst:549 msgid "" "This is now allowed. Remember that the target of an :keyword:`except` " "clause is cleared, so this code which used to work with Python 2.6, raised " "a :exc:`SyntaxError` with Python 3.1 and now works again::" msgstr "" #: ../Doc/whatsnew/3.2.rst:562 msgid "(See :issue:`4617`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:564 msgid "" "The internal :c:type:`structsequence` tool now creates subclasses of tuple. " "This means that C structures like those returned by :func:`os.stat`, :func:" "`time.gmtime`, and :attr:`sys.version_info` now work like a :term:`named " "tuple` and now work with functions and methods that expect a tuple as an " "argument. This is a big step forward in making the C structures as flexible " "as their pure Python counterparts:" msgstr "" #: ../Doc/whatsnew/3.2.rst:577 msgid "" "(Suggested by Arfrever Frehtes Taifersar Arahesis and implemented by " "Benjamin Peterson in :issue:`8413`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:580 msgid "" "Warnings are now easier to control using the :envvar:`PYTHONWARNINGS` " "environment variable as an alternative to using ``-W`` at the command line:" msgstr "" #: ../Doc/whatsnew/3.2.rst:587 msgid "" "(Suggested by Barry Warsaw and implemented by Philip Jenvey in :issue:" "`7301`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:589 msgid "" "A new warning category, :exc:`ResourceWarning`, has been added. It is " "emitted when potential issues with resource consumption or cleanup are " "detected. It is silenced by default in normal release builds but can be " "enabled through the means provided by the :mod:`warnings` module, or on the " "command line." msgstr "" #: ../Doc/whatsnew/3.2.rst:595 msgid "" "A :exc:`ResourceWarning` is issued at interpreter shutdown if the :data:`gc." "garbage` list isn't empty, and if :attr:`gc.DEBUG_UNCOLLECTABLE` is set, all " "uncollectable objects are printed. This is meant to make the programmer " "aware that their code contains object finalization issues." msgstr "" #: ../Doc/whatsnew/3.2.rst:600 msgid "" "A :exc:`ResourceWarning` is also issued when a :term:`file object` is " "destroyed without having been explicitly closed. While the deallocator for " "such object ensures it closes the underlying operating system resource " "(usually, a file descriptor), the delay in deallocating the object could " "produce various issues, especially under Windows. Here is an example of " "enabling the warning from the command line:" msgstr "" #: ../Doc/whatsnew/3.2.rst:614 msgid "" "(Added by Antoine Pitrou and Georg Brandl in :issue:`10093` and :issue:" "`477863`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:616 msgid "" ":class:`range` objects now support *index* and *count* methods. This is part " "of an effort to make more objects fully implement the :class:`collections." "Sequence` :term:`abstract base class`. As a result, the language will have " "a more uniform API. In addition, :class:`range` objects now support slicing " "and negative indices, even with values larger than :attr:`sys.maxsize`. " "This makes *range* more interoperable with lists::" msgstr "" #: ../Doc/whatsnew/3.2.rst:632 msgid "" "(Contributed by Daniel Stutzbach in :issue:`9213`, by Alexander Belopolsky " "in :issue:`2690`, and by Nick Coghlan in :issue:`10889`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:635 msgid "" "The :func:`callable` builtin function from Py2.x was resurrected. It " "provides a concise, readable alternative to using an :term:`abstract base " "class` in an expression like ``isinstance(x, collections.Callable)``:" msgstr "" #: ../Doc/whatsnew/3.2.rst:644 msgid "(See :issue:`10518`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:646 msgid "" "Python's import mechanism can now load modules installed in directories with " "non-ASCII characters in the path name. This solved an aggravating problem " "with home directories for users with non-ASCII characters in their usernames." msgstr "" #: ../Doc/whatsnew/3.2.rst:650 msgid "(Required extensive work by Victor Stinner in :issue:`9425`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:656 msgid "" "Python's standard library has undergone significant maintenance efforts and " "quality improvements." msgstr "" #: ../Doc/whatsnew/3.2.rst:659 msgid "" "The biggest news for Python 3.2 is that the :mod:`email` package, :mod:" "`mailbox` module, and :mod:`nntplib` modules now work correctly with the " "bytes/text model in Python 3. For the first time, there is correct handling " "of messages with mixed encodings." msgstr "" #: ../Doc/whatsnew/3.2.rst:664 msgid "" "Throughout the standard library, there has been more careful attention to " "encodings and text versus bytes issues. In particular, interactions with " "the operating system are now better able to exchange non-ASCII data using " "the Windows MBCS encoding, locale-aware encodings, or UTF-8." msgstr "" #: ../Doc/whatsnew/3.2.rst:669 msgid "" "Another significant win is the addition of substantially better support for " "*SSL* connections and security certificates." msgstr "" #: ../Doc/whatsnew/3.2.rst:672 msgid "" "In addition, more classes now implement a :term:`context manager` to support " "convenient and reliable resource clean-up using a :keyword:`with` statement." msgstr "" #: ../Doc/whatsnew/3.2.rst:676 ../Doc/whatsnew/3.3.rst:1192 #: ../Doc/whatsnew/3.4.rst:793 ../Doc/whatsnew/3.5.rst:1096 #: ../Doc/whatsnew/3.6.rst:678 msgid "email" msgstr "email" #: ../Doc/whatsnew/3.2.rst:678 msgid "" "The usability of the :mod:`email` package in Python 3 has been mostly fixed " "by the extensive efforts of R. David Murray. The problem was that emails " "are typically read and stored in the form of :class:`bytes` rather than :" "class:`str` text, and they may contain multiple encodings within a single " "email. So, the email package had to be extended to parse and generate email " "messages in bytes format." msgstr "" #: ../Doc/whatsnew/3.2.rst:685 msgid "" "New functions :func:`~email.message_from_bytes` and :func:`~email." "message_from_binary_file`, and new classes :class:`~email.parser." "BytesFeedParser` and :class:`~email.parser.BytesParser` allow binary message " "data to be parsed into model objects." msgstr "" #: ../Doc/whatsnew/3.2.rst:690 msgid "" "Given bytes input to the model, :meth:`~email.message.Message.get_payload` " "will by default decode a message body that has a :mailheader:`Content-" "Transfer-Encoding` of *8bit* using the charset specified in the MIME headers " "and return the resulting string." msgstr "" #: ../Doc/whatsnew/3.2.rst:695 msgid "" "Given bytes input to the model, :class:`~email.generator.Generator` will " "convert message bodies that have a :mailheader:`Content-Transfer-Encoding` " "of *8bit* to instead have a *7bit* :mailheader:`Content-Transfer-Encoding`." msgstr "" #: ../Doc/whatsnew/3.2.rst:699 msgid "" "Headers with unencoded non-ASCII bytes are deemed to be :rfc:`2047`\\ -" "encoded using the *unknown-8bit* character set." msgstr "" #: ../Doc/whatsnew/3.2.rst:702 msgid "" "A new class :class:`~email.generator.BytesGenerator` produces bytes as " "output, preserving any unchanged non-ASCII data that was present in the " "input used to build the model, including message bodies with a :mailheader:" "`Content-Transfer-Encoding` of *8bit*." msgstr "" #: ../Doc/whatsnew/3.2.rst:707 msgid "" "The :mod:`smtplib` :class:`~smtplib.SMTP` class now accepts a byte string " "for the *msg* argument to the :meth:`~smtplib.SMTP.sendmail` method, and a " "new method, :meth:`~smtplib.SMTP.send_message` accepts a :class:`~email." "message.Message` object and can optionally obtain the *from_addr* and " "*to_addrs* addresses directly from the object." msgstr "" #: ../Doc/whatsnew/3.2.rst:713 msgid "" "(Proposed and implemented by R. David Murray, :issue:`4661` and :issue:" "`10321`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:716 msgid "elementtree" msgstr "elementtree" #: ../Doc/whatsnew/3.2.rst:718 msgid "" "The :mod:`xml.etree.ElementTree` package and its :mod:`xml.etree." "cElementTree` counterpart have been updated to version 1.3." msgstr "" #: ../Doc/whatsnew/3.2.rst:721 msgid "Several new and useful functions and methods have been added:" msgstr "" #: ../Doc/whatsnew/3.2.rst:723 msgid "" ":func:`xml.etree.ElementTree.fromstringlist` which builds an XML document " "from a sequence of fragments" msgstr "" #: ../Doc/whatsnew/3.2.rst:725 msgid "" ":func:`xml.etree.ElementTree.register_namespace` for registering a global " "namespace prefix" msgstr "" #: ../Doc/whatsnew/3.2.rst:727 msgid "" ":func:`xml.etree.ElementTree.tostringlist` for string representation " "including all sublists" msgstr "" #: ../Doc/whatsnew/3.2.rst:729 msgid "" ":meth:`xml.etree.ElementTree.Element.extend` for appending a sequence of " "zero or more elements" msgstr "" #: ../Doc/whatsnew/3.2.rst:731 msgid "" ":meth:`xml.etree.ElementTree.Element.iterfind` searches an element and " "subelements" msgstr "" #: ../Doc/whatsnew/3.2.rst:733 msgid "" ":meth:`xml.etree.ElementTree.Element.itertext` creates a text iterator over " "an element and its subelements" msgstr "" #: ../Doc/whatsnew/3.2.rst:735 msgid "" ":meth:`xml.etree.ElementTree.TreeBuilder.end` closes the current element" msgstr "" #: ../Doc/whatsnew/3.2.rst:736 msgid "" ":meth:`xml.etree.ElementTree.TreeBuilder.doctype` handles a doctype " "declaration" msgstr "" #: ../Doc/whatsnew/3.2.rst:739 msgid "Two methods have been deprecated:" msgstr "Deux méthodes ont été dépréciées :" #: ../Doc/whatsnew/3.2.rst:741 msgid ":meth:`xml.etree.ElementTree.getchildren` use ``list(elem)`` instead." msgstr "" #: ../Doc/whatsnew/3.2.rst:742 msgid ":meth:`xml.etree.ElementTree.getiterator` use ``Element.iter`` instead." msgstr "" #: ../Doc/whatsnew/3.2.rst:744 msgid "" "For details of the update, see `Introducing ElementTree `_ on Fredrik Lundh's website." msgstr "" #: ../Doc/whatsnew/3.2.rst:747 msgid "(Contributed by Florent Xicluna and Fredrik Lundh, :issue:`6472`.)" msgstr "(Contribution par Florent Xicluna et Fredrik Lundh; :issue:`6472`)" #: ../Doc/whatsnew/3.2.rst:750 ../Doc/whatsnew/3.3.rst:1388 #: ../Doc/whatsnew/3.4.rst:851 ../Doc/whatsnew/3.5.rst:1148 msgid "functools" msgstr "" #: ../Doc/whatsnew/3.2.rst:752 msgid "" "The :mod:`functools` module includes a new decorator for caching function " "calls. :func:`functools.lru_cache` can save repeated queries to an external " "resource whenever the results are expected to be the same." msgstr "" #: ../Doc/whatsnew/3.2.rst:756 msgid "" "For example, adding a caching decorator to a database query function can " "save database accesses for popular searches:" msgstr "" #: ../Doc/whatsnew/3.2.rst:769 msgid "" "To help with choosing an effective cache size, the wrapped function is " "instrumented for tracking cache statistics:" msgstr "" #: ../Doc/whatsnew/3.2.rst:775 msgid "" "If the phonelist table gets updated, the outdated contents of the cache can " "be cleared with:" msgstr "" #: ../Doc/whatsnew/3.2.rst:780 msgid "" "(Contributed by Raymond Hettinger and incorporating design ideas from Jim " "Baker, Miki Tebeka, and Nick Coghlan; see `recipe 498245 `_\\, `recipe 577479 `_\\, :issue:`10586`, and :issue:`10593`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:786 msgid "" "The :func:`functools.wraps` decorator now adds a :attr:`__wrapped__` " "attribute pointing to the original callable function. This allows wrapped " "functions to be introspected. It also copies :attr:`__annotations__` if " "defined. And now it also gracefully skips over missing attributes such as :" "attr:`__doc__` which might not be defined for the wrapped callable." msgstr "" #: ../Doc/whatsnew/3.2.rst:792 msgid "" "In the above example, the cache can be removed by recovering the original " "function:" msgstr "" #: ../Doc/whatsnew/3.2.rst:797 msgid "" "(By Nick Coghlan and Terrence Cole; :issue:`9567`, :issue:`3445`, and :issue:" "`8814`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:800 msgid "" "To help write classes with rich comparison methods, a new decorator :func:" "`functools.total_ordering` will use existing equality and inequality methods " "to fill in the remaining methods." msgstr "" #: ../Doc/whatsnew/3.2.rst:804 msgid "" "For example, supplying *__eq__* and *__lt__* will enable :func:`~functools." "total_ordering` to fill-in *__le__*, *__gt__* and *__ge__*::" msgstr "" #: ../Doc/whatsnew/3.2.rst:817 msgid "" "With the *total_ordering* decorator, the remaining comparison methods are " "filled in automatically." msgstr "" #: ../Doc/whatsnew/3.2.rst:822 msgid "" "To aid in porting programs from Python 2, the :func:`functools.cmp_to_key` " "function converts an old-style comparison function to modern :term:`key " "function`:" msgstr "" #: ../Doc/whatsnew/3.2.rst:829 msgid "" "For sorting examples and a brief sorting tutorial, see the `Sorting HowTo " "`_ tutorial." msgstr "" #: ../Doc/whatsnew/3.2.rst:835 ../Doc/whatsnew/3.3.rst:1492 msgid "itertools" msgstr "" #: ../Doc/whatsnew/3.2.rst:837 msgid "" "The :mod:`itertools` module has a new :func:`~itertools.accumulate` function " "modeled on APL's *scan* operator and Numpy's *accumulate* function:" msgstr "" #: ../Doc/whatsnew/3.2.rst:848 msgid "" "For an example using :func:`~itertools.accumulate`, see the :ref:`examples " "for the random module `." msgstr "" #: ../Doc/whatsnew/3.2.rst:851 msgid "" "(Contributed by Raymond Hettinger and incorporating design suggestions from " "Mark Dickinson.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:855 ../Doc/whatsnew/3.3.rst:1018 #: ../Doc/whatsnew/3.4.rst:662 ../Doc/whatsnew/3.5.rst:901 msgid "collections" msgstr "" #: ../Doc/whatsnew/3.2.rst:857 msgid "" "The :class:`collections.Counter` class now has two forms of in-place " "subtraction, the existing *-=* operator for `saturating subtraction `_ and the new :meth:" "`~collections.Counter.subtract` method for regular subtraction. The former " "is suitable for `multisets `_ which " "only have positive counts, and the latter is more suitable for use cases " "that allow negative counts:" msgstr "" #: ../Doc/whatsnew/3.2.rst:878 msgid "" "The :class:`collections.OrderedDict` class has a new method :meth:" "`~collections.OrderedDict.move_to_end` which takes an existing key and moves " "it to either the first or last position in the ordered sequence." msgstr "" #: ../Doc/whatsnew/3.2.rst:882 msgid "" "The default is to move an item to the last position. This is equivalent of " "renewing an entry with ``od[k] = od.pop(k)``." msgstr "" #: ../Doc/whatsnew/3.2.rst:885 msgid "" "A fast move-to-end operation is useful for resequencing entries. For " "example, an ordered dictionary can be used to track order of access by aging " "entries from the oldest to the most recently accessed." msgstr "" #: ../Doc/whatsnew/3.2.rst:899 msgid "" "The :class:`collections.deque` class grew two new methods :meth:" "`~collections.deque.count` and :meth:`~collections.deque.reverse` that make " "them more substitutable for :class:`list` objects:" msgstr "" #: ../Doc/whatsnew/3.2.rst:914 ../Doc/whatsnew/3.3.rst:2034 #: ../Doc/whatsnew/3.4.rst:1595 ../Doc/whatsnew/3.5.rst:1908 msgid "threading" msgstr "threading" #: ../Doc/whatsnew/3.2.rst:916 msgid "" "The :mod:`threading` module has a new :class:`~threading.Barrier` " "synchronization class for making multiple threads wait until all of them " "have reached a common barrier point. Barriers are useful for making sure " "that a task with multiple preconditions does not run until all of the " "predecessor tasks are complete." msgstr "" #: ../Doc/whatsnew/3.2.rst:922 msgid "" "Barriers can work with an arbitrary number of threads. This is a " "generalization of a `Rendezvous `_ which is defined for only two threads." msgstr "" #: ../Doc/whatsnew/3.2.rst:926 msgid "" "Implemented as a two-phase cyclic barrier, :class:`~threading.Barrier` " "objects are suitable for use in loops. The separate *filling* and " "*draining* phases assure that all threads get released (drained) before any " "one of them can loop back and re-enter the barrier. The barrier fully " "resets after each cycle." msgstr "" #: ../Doc/whatsnew/3.2.rst:931 msgid "Example of using barriers::" msgstr "" #: ../Doc/whatsnew/3.2.rst:945 msgid "" "In this example, the barrier enforces a rule that votes cannot be counted at " "any polling site until all polls are closed. Notice how a solution with a " "barrier is similar to one with :meth:`threading.Thread.join`, but the " "threads stay alive and continue to do work (summarizing ballots) after the " "barrier point is crossed." msgstr "" #: ../Doc/whatsnew/3.2.rst:951 msgid "" "If any of the predecessor tasks can hang or be delayed, a barrier can be " "created with an optional *timeout* parameter. Then if the timeout period " "elapses before all the predecessor tasks reach the barrier point, all " "waiting threads are released and a :exc:`~threading.BrokenBarrierError` " "exception is raised::" msgstr "" #: ../Doc/whatsnew/3.2.rst:967 msgid "" "In this example, the barrier enforces a more robust rule. If some election " "sites do not finish before midnight, the barrier times-out and the ballots " "are sealed and deposited in a queue for later handling." msgstr "" #: ../Doc/whatsnew/3.2.rst:971 msgid "" "See `Barrier Synchronization Patterns `_ for more examples of how barriers can " "be used in parallel computing. Also, there is a simple but thorough " "explanation of barriers in `The Little Book of Semaphores `_, *section 3.6*." msgstr "" #: ../Doc/whatsnew/3.2.rst:977 msgid "" "(Contributed by Kristján Valur Jónsson with an API review by Jeffrey Yasskin " "in :issue:`8777`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:981 msgid "datetime and time" msgstr "" #: ../Doc/whatsnew/3.2.rst:983 msgid "" "The :mod:`datetime` module has a new type :class:`~datetime.timezone` that " "implements the :class:`~datetime.tzinfo` interface by returning a fixed UTC " "offset and timezone name. This makes it easier to create timezone-aware " "datetime objects::" msgstr "" #: ../Doc/whatsnew/3.2.rst:996 msgid "" "Also, :class:`~datetime.timedelta` objects can now be multiplied by :class:" "`float` and divided by :class:`float` and :class:`int` objects. And :class:" "`~datetime.timedelta` objects can now divide one another." msgstr "" #: ../Doc/whatsnew/3.2.rst:1000 msgid "" "The :meth:`datetime.date.strftime` method is no longer restricted to years " "after 1900. The new supported year range is from 1000 to 9999 inclusive." msgstr "" #: ../Doc/whatsnew/3.2.rst:1003 msgid "" "Whenever a two-digit year is used in a time tuple, the interpretation has " "been governed by :attr:`time.accept2dyear`. The default is *True* which " "means that for a two-digit year, the century is guessed according to the " "POSIX rules governing the ``%y`` strptime format." msgstr "" #: ../Doc/whatsnew/3.2.rst:1008 msgid "" "Starting with Py3.2, use of the century guessing heuristic will emit a :exc:" "`DeprecationWarning`. Instead, it is recommended that :attr:`time." "accept2dyear` be set to *False* so that large date ranges can be used " "without guesswork::" msgstr "" #: ../Doc/whatsnew/3.2.rst:1027 msgid "" "Several functions now have significantly expanded date ranges. When :attr:" "`time.accept2dyear` is false, the :func:`time.asctime` function will accept " "any year that fits in a C int, while the :func:`time.mktime` and :func:`time." "strftime` functions will accept the full range supported by the " "corresponding operating system functions." msgstr "" #: ../Doc/whatsnew/3.2.rst:1033 msgid "" "(Contributed by Alexander Belopolsky and Victor Stinner in :issue:" "`1289118`, :issue:`5094`, :issue:`6641`, :issue:`2706`, :issue:`1777412`, :" "issue:`8013`, and :issue:`10827`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:1040 ../Doc/whatsnew/3.3.rst:1512 #: ../Doc/whatsnew/3.5.rst:1446 msgid "math" msgstr "" #: ../Doc/whatsnew/3.2.rst:1042 msgid "" "The :mod:`math` module has been updated with six new functions inspired by " "the C99 standard." msgstr "" #: ../Doc/whatsnew/3.2.rst:1045 msgid "" "The :func:`~math.isfinite` function provides a reliable and fast way to " "detect special values. It returns *True* for regular numbers and *False* " "for *Nan* or *Infinity*:" msgstr "" #: ../Doc/whatsnew/3.2.rst:1053 msgid "" "The :func:`~math.expm1` function computes ``e**x-1`` for small values of *x* " "without incurring the loss of precision that usually accompanies the " "subtraction of nearly equal quantities:" msgstr "" #: ../Doc/whatsnew/3.2.rst:1061 msgid "" "The :func:`~math.erf` function computes a probability integral or `Gaussian " "error function `_. The " "complementary error function, :func:`~math.erfc`, is ``1 - erf(x)``:" msgstr "" #: ../Doc/whatsnew/3.2.rst:1073 msgid "" "The :func:`~math.gamma` function is a continuous extension of the factorial " "function. See https://en.wikipedia.org/wiki/Gamma_function for details. " "Because the function is related to factorials, it grows large even for small " "values of *x*, so there is also a :func:`~math.lgamma` function for " "computing the natural logarithm of the gamma function:" msgstr "" #: ../Doc/whatsnew/3.2.rst:1085 msgid "(Contributed by Mark Dickinson.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:1088 ../Doc/whatsnew/3.3.rst:912 #: ../Doc/whatsnew/3.4.rst:593 msgid "abc" msgstr "" #: ../Doc/whatsnew/3.2.rst:1090 msgid "" "The :mod:`abc` module now supports :func:`~abc.abstractclassmethod` and :" "func:`~abc.abstractstaticmethod`." msgstr "" #: ../Doc/whatsnew/3.2.rst:1093 msgid "" "These tools make it possible to define an :term:`abstract base class` that " "requires a particular :func:`classmethod` or :func:`staticmethod` to be " "implemented::" msgstr "" #: ../Doc/whatsnew/3.2.rst:1105 msgid "(Patch submitted by Daniel Urban; :issue:`5867`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:1108 ../Doc/whatsnew/3.3.rst:1476 #: ../Doc/whatsnew/3.5.rst:1326 msgid "io" msgstr "" #: ../Doc/whatsnew/3.2.rst:1110 msgid "" "The :class:`io.BytesIO` has a new method, :meth:`~io.BytesIO.getbuffer`, " "which provides functionality similar to :func:`memoryview`. It creates an " "editable view of the data without making a copy. The buffer's random access " "and support for slice notation are well-suited to in-place editing::" msgstr "" #: ../Doc/whatsnew/3.2.rst:1136 msgid "(Contributed by Antoine Pitrou in :issue:`5506`.)" msgstr "(Contribution par Antoine Pitrou; :issue:`5506`.)" #: ../Doc/whatsnew/3.2.rst:1141 msgid "" "When writing a :meth:`__repr__` method for a custom container, it is easy to " "forget to handle the case where a member refers back to the container " "itself. Python's builtin objects such as :class:`list` and :class:`set` " "handle self-reference by displaying \"...\" in the recursive part of the " "representation string." msgstr "" #: ../Doc/whatsnew/3.2.rst:1147 msgid "" "To help write such :meth:`__repr__` methods, the :mod:`reprlib` module has a " "new decorator, :func:`~reprlib.recursive_repr`, for detecting recursive " "calls to :meth:`__repr__` and substituting a placeholder string instead::" msgstr "" #: ../Doc/whatsnew/3.2.rst:1162 msgid "(Contributed by Raymond Hettinger in :issue:`9826` and :issue:`9840`.)" msgstr "(Contribution par Raymond Hettinger; :issue:`9826` et issue:`9840`)" #: ../Doc/whatsnew/3.2.rst:1165 ../Doc/whatsnew/3.3.rst:1499 #: ../Doc/whatsnew/3.4.rst:1073 ../Doc/whatsnew/3.5.rst:1408 msgid "logging" msgstr "" #: ../Doc/whatsnew/3.2.rst:1167 msgid "" "In addition to dictionary-based configuration described above, the :mod:" "`logging` package has many other improvements." msgstr "" #: ../Doc/whatsnew/3.2.rst:1170 msgid "" "The logging documentation has been augmented by a :ref:`basic tutorial " "`\\, an :ref:`advanced tutorial `\\, and a :ref:`cookbook ` of logging recipes. " "These documents are the fastest way to learn about logging." msgstr "" #: ../Doc/whatsnew/3.2.rst:1175 msgid "" "The :func:`logging.basicConfig` set-up function gained a *style* argument to " "support three different types of string formatting. It defaults to \"%\" " "for traditional %-formatting, can be set to \"{\" for the new :meth:`str." "format` style, or can be set to \"$\" for the shell-style formatting " "provided by :class:`string.Template`. The following three configurations " "are equivalent::" msgstr "" #: ../Doc/whatsnew/3.2.rst:1186 msgid "" "If no configuration is set-up before a logging event occurs, there is now a " "default configuration using a :class:`~logging.StreamHandler` directed to :" "attr:`sys.stderr` for events of ``WARNING`` level or higher. Formerly, an " "event occurring before a configuration was set-up would either raise an " "exception or silently drop the event depending on the value of :attr:" "`logging.raiseExceptions`. The new default handler is stored in :attr:" "`logging.lastResort`." msgstr "" #: ../Doc/whatsnew/3.2.rst:1194 msgid "" "The use of filters has been simplified. Instead of creating a :class:" "`~logging.Filter` object, the predicate can be any Python callable that " "returns *True* or *False*." msgstr "" #: ../Doc/whatsnew/3.2.rst:1198 msgid "" "There were a number of other improvements that add flexibility and simplify " "configuration. See the module documentation for a full listing of changes " "in Python 3.2." msgstr "" #: ../Doc/whatsnew/3.2.rst:1203 ../Doc/whatsnew/3.5.rst:1039 msgid "csv" msgstr "csv" #: ../Doc/whatsnew/3.2.rst:1205 msgid "" "The :mod:`csv` module now supports a new dialect, :class:`~csv." "unix_dialect`, which applies quoting for all fields and a traditional Unix " "style with ``'\\n'`` as the line terminator. The registered dialect name is " "``unix``." msgstr "" #: ../Doc/whatsnew/3.2.rst:1209 msgid "" "The :class:`csv.DictWriter` has a new method, :meth:`~csv.DictWriter." "writeheader` for writing-out an initial row to document the field names::" msgstr "" #: ../Doc/whatsnew/3.2.rst:1223 msgid "" "(New dialect suggested by Jay Talbot in :issue:`5975`, and the new method " "suggested by Ed Abraham in :issue:`1537721`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:1227 ../Doc/whatsnew/3.3.rst:1037 #: ../Doc/whatsnew/3.4.rst:680 ../Doc/whatsnew/3.5.rst:1020 #: ../Doc/whatsnew/3.6.rst:639 msgid "contextlib" msgstr "contextlib" #: ../Doc/whatsnew/3.2.rst:1229 msgid "" "There is a new and slightly mind-blowing tool :class:`~contextlib." "ContextDecorator` that is helpful for creating a :term:`context manager` " "that does double duty as a function decorator." msgstr "" #: ../Doc/whatsnew/3.2.rst:1233 msgid "" "As a convenience, this new functionality is used by :func:`~contextlib." "contextmanager` so that no extra effort is needed to support both roles." msgstr "" #: ../Doc/whatsnew/3.2.rst:1237 msgid "" "The basic idea is that both context managers and function decorators can be " "used for pre-action and post-action wrappers. Context managers wrap a group " "of statements using a :keyword:`with` statement, and function decorators " "wrap a group of statements enclosed in a function. So, occasionally there " "is a need to write a pre-action or post-action wrapper that can be used in " "either role." msgstr "" #: ../Doc/whatsnew/3.2.rst:1243 msgid "" "For example, it is sometimes useful to wrap functions or groups of " "statements with a logger that can track the time of entry and time of exit. " "Rather than writing both a function decorator and a context manager for the " "task, the :func:`~contextlib.contextmanager` provides both capabilities in a " "single definition::" msgstr "" #: ../Doc/whatsnew/3.2.rst:1260 msgid "Formerly, this would have only been usable as a context manager::" msgstr "" #: ../Doc/whatsnew/3.2.rst:1266 msgid "Now, it can be used as a decorator as well::" msgstr "" #: ../Doc/whatsnew/3.2.rst:1273 msgid "" "Trying to fulfill two roles at once places some limitations on the " "technique. Context managers normally have the flexibility to return an " "argument usable by a :keyword:`with` statement, but there is no parallel for " "function decorators." msgstr "" #: ../Doc/whatsnew/3.2.rst:1277 msgid "" "In the above example, there is not a clean way for the " "*track_entry_and_exit* context manager to return a logging instance for use " "in the body of enclosed statements." msgstr "" #: ../Doc/whatsnew/3.2.rst:1281 msgid "(Contributed by Michael Foord in :issue:`9110`.)" msgstr "(Contribution par Michael Foord; :issue:`9110`)" #: ../Doc/whatsnew/3.2.rst:1284 msgid "decimal and fractions" msgstr "" #: ../Doc/whatsnew/3.2.rst:1286 msgid "" "Mark Dickinson crafted an elegant and efficient scheme for assuring that " "different numeric datatypes will have the same hash value whenever their " "actual values are equal (:issue:`8188`)::" msgstr "" #: ../Doc/whatsnew/3.2.rst:1293 msgid "" "Some of the hashing details are exposed through a new attribute, :attr:`sys." "hash_info`, which describes the bit width of the hash value, the prime " "modulus, the hash values for *infinity* and *nan*, and the multiplier used " "for the imaginary part of a number:" msgstr "" #: ../Doc/whatsnew/3.2.rst:1301 msgid "" "An early decision to limit the inter-operability of various numeric types " "has been relaxed. It is still unsupported (and ill-advised) to have " "implicit mixing in arithmetic expressions such as ``Decimal('1.1') + " "float('1.1')`` because the latter loses information in the process of " "constructing the binary float. However, since existing floating point value " "can be converted losslessly to either a decimal or rational representation, " "it makes sense to add them to the constructor and to support mixed-type " "comparisons." msgstr "" #: ../Doc/whatsnew/3.2.rst:1309 msgid "" "The :class:`decimal.Decimal` constructor now accepts :class:`float` objects " "directly so there in no longer a need to use the :meth:`~decimal.Decimal." "from_float` method (:issue:`8257`)." msgstr "" #: ../Doc/whatsnew/3.2.rst:1313 msgid "" "Mixed type comparisons are now fully supported so that :class:`~decimal." "Decimal` objects can be directly compared with :class:`float` and :class:" "`fractions.Fraction` (:issue:`2531` and :issue:`8188`)." msgstr "" #: ../Doc/whatsnew/3.2.rst:1317 msgid "" "Similar changes were made to :class:`fractions.Fraction` so that the :meth:" "`~fractions.Fraction.from_float()` and :meth:`~fractions.Fraction." "from_decimal` methods are no longer needed (:issue:`8294`):" msgstr "" #: ../Doc/whatsnew/3.2.rst:1328 msgid "" "Another useful change for the :mod:`decimal` module is that the :attr:" "`Context.clamp` attribute is now public. This is useful in creating " "contexts that correspond to the decimal interchange formats specified in " "IEEE 754 (see :issue:`8540`)." msgstr "" #: ../Doc/whatsnew/3.2.rst:1333 msgid "(Contributed by Mark Dickinson and Raymond Hettinger.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:1336 msgid "ftp" msgstr "" #: ../Doc/whatsnew/3.2.rst:1338 msgid "" "The :class:`ftplib.FTP` class now supports the context management protocol " "to unconditionally consume :exc:`socket.error` exceptions and to close the " "FTP connection when done::" msgstr "" #: ../Doc/whatsnew/3.2.rst:1353 msgid "" "Other file-like objects such as :class:`mmap.mmap` and :func:`fileinput." "input` also grew auto-closing context managers::" msgstr "" #: ../Doc/whatsnew/3.2.rst:1360 msgid "" "(Contributed by Tarek Ziadé and Giampaolo Rodolà in :issue:`4972`, and by " "Georg Brandl in :issue:`8046` and :issue:`1286`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:1363 msgid "" "The :class:`~ftplib.FTP_TLS` class now accepts a *context* parameter, which " "is a :class:`ssl.SSLContext` object allowing bundling SSL configuration " "options, certificates and private keys into a single (potentially long-" "lived) structure." msgstr "" #: ../Doc/whatsnew/3.2.rst:1367 msgid "(Contributed by Giampaolo Rodolà; :issue:`8806`.)" msgstr "(Contribution par Giampaolo Rodolà; :issue:`8806`)" #: ../Doc/whatsnew/3.2.rst:1370 msgid "popen" msgstr "" #: ../Doc/whatsnew/3.2.rst:1372 msgid "" "The :func:`os.popen` and :func:`subprocess.Popen` functions now support :" "keyword:`with` statements for auto-closing of the file descriptors." msgstr "" #: ../Doc/whatsnew/3.2.rst:1375 msgid "" "(Contributed by Antoine Pitrou and Brian Curtin in :issue:`7461` and :issue:" "`10554`.)" msgstr "" "(Contribution par Antoine Pitrou et Brian Curtin; :issue:`7461` et :issue:" "`10554`)" #: ../Doc/whatsnew/3.2.rst:1379 ../Doc/whatsnew/3.3.rst:1769 #: ../Doc/whatsnew/3.4.rst:1338 msgid "select" msgstr "" #: ../Doc/whatsnew/3.2.rst:1381 msgid "" "The :mod:`select` module now exposes a new, constant attribute, :attr:" "`~select.PIPE_BUF`, which gives the minimum number of bytes which are " "guaranteed not to block when :func:`select.select` says a pipe is ready for " "writing." msgstr "" #: ../Doc/whatsnew/3.2.rst:1390 msgid "(Available on Unix systems. Patch by Sébastien Sablé in :issue:`9862`)" msgstr "" #: ../Doc/whatsnew/3.2.rst:1393 msgid "gzip and zipfile" msgstr "" #: ../Doc/whatsnew/3.2.rst:1395 msgid "" ":class:`gzip.GzipFile` now implements the :class:`io.BufferedIOBase` :term:" "`abstract base class` (except for ``truncate()``). It also has a :meth:" "`~gzip.GzipFile.peek` method and supports unseekable as well as zero-padded " "file objects." msgstr "" #: ../Doc/whatsnew/3.2.rst:1400 msgid "" "The :mod:`gzip` module also gains the :func:`~gzip.compress` and :func:" "`~gzip.decompress` functions for easier in-memory compression and " "decompression. Keep in mind that text needs to be encoded as :class:`bytes` " "before compressing and decompressing:" msgstr "" #: ../Doc/whatsnew/3.2.rst:1417 msgid "" "(Contributed by Anand B. Pillai in :issue:`3488`; and by Antoine Pitrou, Nir " "Aides and Brian Curtin in :issue:`9962`, :issue:`1675951`, :issue:`7471` " "and :issue:`2846`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:1421 msgid "" "Also, the :class:`zipfile.ZipExtFile` class was reworked internally to " "represent files stored inside an archive. The new implementation is " "significantly faster and can be wrapped in an :class:`io.BufferedReader` " "object for more speedups. It also solves an issue where interleaved calls " "to *read* and *readline* gave the wrong results." msgstr "" #: ../Doc/whatsnew/3.2.rst:1427 msgid "(Patch submitted by Nir Aides in :issue:`7610`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:1430 ../Doc/whatsnew/3.3.rst:2011 #: ../Doc/whatsnew/3.4.rst:1573 ../Doc/whatsnew/3.5.rst:1888 msgid "tarfile" msgstr "" #: ../Doc/whatsnew/3.2.rst:1432 msgid "" "The :class:`~tarfile.TarFile` class can now be used as a context manager. " "In addition, its :meth:`~tarfile.TarFile.add` method has a new option, " "*filter*, that controls which files are added to the archive and allows the " "file metadata to be edited." msgstr "" #: ../Doc/whatsnew/3.2.rst:1437 msgid "" "The new *filter* option replaces the older, less flexible *exclude* " "parameter which is now deprecated. If specified, the optional *filter* " "parameter needs to be a :term:`keyword argument`. The user-supplied filter " "function accepts a :class:`~tarfile.TarInfo` object and returns an updated :" "class:`~tarfile.TarInfo` object, or if it wants the file to be excluded, the " "function can return *None*::" msgstr "" #: ../Doc/whatsnew/3.2.rst:1461 msgid "" "(Proposed by Tarek Ziadé and implemented by Lars Gustäbel in :issue:`6856`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:1464 ../Doc/whatsnew/3.4.rst:901 #: ../Doc/whatsnew/3.6.rst:715 msgid "hashlib" msgstr "" #: ../Doc/whatsnew/3.2.rst:1466 msgid "" "The :mod:`hashlib` module has two new constant attributes listing the " "hashing algorithms guaranteed to be present in all implementations and those " "available on the current implementation::" msgstr "" #: ../Doc/whatsnew/3.2.rst:1481 msgid "(Suggested by Carl Chenet in :issue:`7418`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:1484 msgid "ast" msgstr "ast" #: ../Doc/whatsnew/3.2.rst:1486 msgid "" "The :mod:`ast` module has a wonderful a general-purpose tool for safely " "evaluating expression strings using the Python literal syntax. The :func:" "`ast.literal_eval` function serves as a secure alternative to the builtin :" "func:`eval` function which is easily abused. Python 3.2 adds :class:`bytes` " "and :class:`set` literals to the list of supported types: strings, bytes, " "numbers, tuples, lists, dicts, sets, booleans, and None." msgstr "" #: ../Doc/whatsnew/3.2.rst:1507 msgid "(Implemented by Benjamin Peterson and Georg Brandl.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:1510 ../Doc/whatsnew/3.3.rst:1575 #: ../Doc/whatsnew/3.4.rst:1171 ../Doc/whatsnew/3.5.rst:1480 #: ../Doc/whatsnew/3.6.rst:782 msgid "os" msgstr "" #: ../Doc/whatsnew/3.2.rst:1512 msgid "" "Different operating systems use various encodings for filenames and " "environment variables. The :mod:`os` module provides two new functions, :" "func:`~os.fsencode` and :func:`~os.fsdecode`, for encoding and decoding " "filenames:" msgstr "" #: ../Doc/whatsnew/3.2.rst:1522 msgid "" "Some operating systems allow direct access to encoded bytes in the " "environment. If so, the :attr:`os.supports_bytes_environ` constant will be " "true." msgstr "" #: ../Doc/whatsnew/3.2.rst:1526 msgid "" "For direct access to encoded environment variables (if available), use the " "new :func:`os.getenvb` function or use :data:`os.environb` which is a bytes " "version of :data:`os.environ`." msgstr "" #: ../Doc/whatsnew/3.2.rst:1530 msgid "(Contributed by Victor Stinner.)" msgstr "(Contribution par Victor Stinner)" #: ../Doc/whatsnew/3.2.rst:1533 ../Doc/whatsnew/3.3.rst:1786 #: ../Doc/whatsnew/3.4.rst:1360 ../Doc/whatsnew/3.5.rst:1639 msgid "shutil" msgstr "" #: ../Doc/whatsnew/3.2.rst:1535 msgid "The :func:`shutil.copytree` function has two new options:" msgstr "" #: ../Doc/whatsnew/3.2.rst:1537 msgid "" "*ignore_dangling_symlinks*: when ``symlinks=False`` so that the function " "copies a file pointed to by a symlink, not the symlink itself. This option " "will silence the error raised if the file doesn't exist." msgstr "" #: ../Doc/whatsnew/3.2.rst:1541 msgid "" "*copy_function*: is a callable that will be used to copy files. :func:" "`shutil.copy2` is used by default." msgstr "" #: ../Doc/whatsnew/3.2.rst:1544 ../Doc/whatsnew/3.2.rst:1582 msgid "(Contributed by Tarek Ziadé.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:1546 msgid "" "In addition, the :mod:`shutil` module now supports :ref:`archiving " "operations ` for zipfiles, uncompressed tarfiles, " "gzipped tarfiles, and bzipped tarfiles. And there are functions for " "registering additional archiving file formats (such as xz compressed " "tarfiles or custom formats)." msgstr "" #: ../Doc/whatsnew/3.2.rst:1551 msgid "" "The principal functions are :func:`~shutil.make_archive` and :func:`~shutil." "unpack_archive`. By default, both operate on the current directory (which " "can be set by :func:`os.chdir`) and on any sub-directories. The archive " "filename needs to be specified with a full pathname. The archiving step is " "non-destructive (the original files are left unchanged)." msgstr "" #: ../Doc/whatsnew/3.2.rst:1585 ../Doc/whatsnew/3.3.rst:1916 #: ../Doc/whatsnew/3.4.rst:1409 ../Doc/whatsnew/3.5.rst:1827 #: ../Doc/whatsnew/3.6.rst:851 msgid "sqlite3" msgstr "" #: ../Doc/whatsnew/3.2.rst:1587 msgid "" "The :mod:`sqlite3` module was updated to pysqlite version 2.6.0. It has two " "new capabilities." msgstr "" #: ../Doc/whatsnew/3.2.rst:1589 msgid "" "The :attr:`sqlite3.Connection.in_transit` attribute is true if there is an " "active transaction for uncommitted changes." msgstr "" #: ../Doc/whatsnew/3.2.rst:1592 msgid "" "The :meth:`sqlite3.Connection.enable_load_extension` and :meth:`sqlite3." "Connection.load_extension` methods allows you to load SQLite extensions from " "\".so\" files. One well-known extension is the fulltext-search extension " "distributed with SQLite." msgstr "" #: ../Doc/whatsnew/3.2.rst:1597 msgid "(Contributed by R. David Murray and Shashwat Anand; :issue:`8845`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:1600 ../Doc/whatsnew/3.3.rst:1430 #: ../Doc/whatsnew/3.4.rst:938 msgid "html" msgstr "" #: ../Doc/whatsnew/3.2.rst:1602 msgid "" "A new :mod:`html` module was introduced with only a single function, :func:" "`~html.escape`, which is used for escaping reserved characters from HTML " "markup:" msgstr "" #: ../Doc/whatsnew/3.2.rst:1611 ../Doc/whatsnew/3.3.rst:1875 #: ../Doc/whatsnew/3.4.rst:1389 ../Doc/whatsnew/3.5.rst:1723 #: ../Doc/whatsnew/3.6.rst:858 msgid "socket" msgstr "" #: ../Doc/whatsnew/3.2.rst:1613 msgid "The :mod:`socket` module has two new improvements." msgstr "" #: ../Doc/whatsnew/3.2.rst:1615 msgid "" "Socket objects now have a :meth:`~socket.socket.detach()` method which puts " "the socket into closed state without actually closing the underlying file " "descriptor. The latter can then be reused for other purposes. (Added by " "Antoine Pitrou; :issue:`8524`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:1620 msgid "" ":func:`socket.create_connection` now supports the context management " "protocol to unconditionally consume :exc:`socket.error` exceptions and to " "close the socket when done. (Contributed by Giampaolo Rodolà; :issue:`9794`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:1626 ../Doc/whatsnew/3.3.rst:1925 #: ../Doc/whatsnew/3.4.rst:1418 ../Doc/whatsnew/3.5.rst:1746 #: ../Doc/whatsnew/3.6.rst:890 msgid "ssl" msgstr "" #: ../Doc/whatsnew/3.2.rst:1628 msgid "" "The :mod:`ssl` module added a number of features to satisfy common " "requirements for secure (encrypted, authenticated) internet connections:" msgstr "" #: ../Doc/whatsnew/3.2.rst:1631 msgid "" "A new class, :class:`~ssl.SSLContext`, serves as a container for persistent " "SSL data, such as protocol settings, certificates, private keys, and various " "other options. It includes a :meth:`~ssl.SSLContext.wrap_socket` for " "creating an SSL socket from an SSL context." msgstr "" #: ../Doc/whatsnew/3.2.rst:1636 msgid "" "A new function, :func:`ssl.match_hostname`, supports server identity " "verification for higher-level protocols by implementing the rules of HTTPS " "(from :rfc:`2818`) which are also suitable for other protocols." msgstr "" #: ../Doc/whatsnew/3.2.rst:1640 msgid "" "The :func:`ssl.wrap_socket` constructor function now takes a *ciphers* " "argument. The *ciphers* string lists the allowed encryption algorithms " "using the format described in the `OpenSSL documentation `__." msgstr "" #: ../Doc/whatsnew/3.2.rst:1645 msgid "" "When linked against recent versions of OpenSSL, the :mod:`ssl` module now " "supports the Server Name Indication extension to the TLS protocol, allowing " "multiple \"virtual hosts\" using different certificates on a single IP port. " "This extension is only supported in client mode, and is activated by passing " "the *server_hostname* argument to :meth:`ssl.SSLContext.wrap_socket`." msgstr "" #: ../Doc/whatsnew/3.2.rst:1651 msgid "" "Various options have been added to the :mod:`ssl` module, such as :data:" "`~ssl.OP_NO_SSLv2` which disables the insecure and obsolete SSLv2 protocol." msgstr "" #: ../Doc/whatsnew/3.2.rst:1655 msgid "" "The extension now loads all the OpenSSL ciphers and digest algorithms. If " "some SSL certificates cannot be verified, they are reported as an \"unknown " "algorithm\" error." msgstr "" #: ../Doc/whatsnew/3.2.rst:1659 msgid "" "The version of OpenSSL being used is now accessible using the module " "attributes :data:`ssl.OPENSSL_VERSION` (a string), :data:`ssl." "OPENSSL_VERSION_INFO` (a 5-tuple), and :data:`ssl.OPENSSL_VERSION_NUMBER` " "(an integer)." msgstr "" #: ../Doc/whatsnew/3.2.rst:1664 msgid "" "(Contributed by Antoine Pitrou in :issue:`8850`, :issue:`1589`, :issue:" "`8322`, :issue:`5639`, :issue:`4870`, :issue:`8484`, and :issue:`8321`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:1668 msgid "nntp" msgstr "" #: ../Doc/whatsnew/3.2.rst:1670 msgid "" "The :mod:`nntplib` module has a revamped implementation with better bytes " "and text semantics as well as more practical APIs. These improvements break " "compatibility with the nntplib version in Python 3.1, which was partly " "dysfunctional in itself." msgstr "" #: ../Doc/whatsnew/3.2.rst:1675 msgid "" "Support for secure connections through both implicit (using :class:`nntplib." "NNTP_SSL`) and explicit (using :meth:`nntplib.NNTP.starttls`) TLS has also " "been added." msgstr "" #: ../Doc/whatsnew/3.2.rst:1679 msgid "" "(Contributed by Antoine Pitrou in :issue:`9360` and Andrew Vant in :issue:" "`1926`.)" msgstr "" "(Contribution par Antoine Pitrou, :issue:`9360`, et Andrew Vant, :issue:" "`1926`)" #: ../Doc/whatsnew/3.2.rst:1682 msgid "certificates" msgstr "" #: ../Doc/whatsnew/3.2.rst:1684 msgid "" ":class:`http.client.HTTPSConnection`, :class:`urllib.request.HTTPSHandler` " "and :func:`urllib.request.urlopen` now take optional arguments to allow for " "server certificate checking against a set of Certificate Authorities, as " "recommended in public uses of HTTPS." msgstr "" #: ../Doc/whatsnew/3.2.rst:1689 msgid "(Added by Antoine Pitrou, :issue:`9003`.)" msgstr "(Ajouté par Antoine Pitrou; :issue:`9003`.)" #: ../Doc/whatsnew/3.2.rst:1692 ../Doc/whatsnew/3.3.rst:1450 #: ../Doc/whatsnew/3.5.rst:1233 msgid "imaplib" msgstr "" #: ../Doc/whatsnew/3.2.rst:1694 msgid "" "Support for explicit TLS on standard IMAP4 connections has been added " "through the new :mod:`imaplib.IMAP4.starttls` method." msgstr "" #: ../Doc/whatsnew/3.2.rst:1697 msgid "(Contributed by Lorenzo M. Catucci and Antoine Pitrou, :issue:`4471`.)" msgstr "" "(Contribution par Lorenzo M. Catucci et Antoine Pitrou; :issue:`4471`.)" #: ../Doc/whatsnew/3.2.rst:1700 ../Doc/whatsnew/3.5.rst:1201 #: ../Doc/whatsnew/3.6.rst:740 msgid "http.client" msgstr "" #: ../Doc/whatsnew/3.2.rst:1702 msgid "" "There were a number of small API improvements in the :mod:`http.client` " "module. The old-style HTTP 0.9 simple responses are no longer supported and " "the *strict* parameter is deprecated in all classes." msgstr "" #: ../Doc/whatsnew/3.2.rst:1706 msgid "" "The :class:`~http.client.HTTPConnection` and :class:`~http.client." "HTTPSConnection` classes now have a *source_address* parameter for a (host, " "port) tuple indicating where the HTTP connection is made from." msgstr "" #: ../Doc/whatsnew/3.2.rst:1711 msgid "" "Support for certificate checking and HTTPS virtual hosts were added to :" "class:`~http.client.HTTPSConnection`." msgstr "" #: ../Doc/whatsnew/3.2.rst:1714 msgid "" "The :meth:`~http.client.HTTPConnection.request` method on connection objects " "allowed an optional *body* argument so that a :term:`file object` could be " "used to supply the content of the request. Conveniently, the *body* " "argument now also accepts an :term:`iterable` object so long as it includes " "an explicit ``Content-Length`` header. This extended interface is much more " "flexible than before." msgstr "" #: ../Doc/whatsnew/3.2.rst:1721 msgid "" "To establish an HTTPS connection through a proxy server, there is a new :" "meth:`~http.client.HTTPConnection.set_tunnel` method that sets the host and " "port for HTTP Connect tunneling." msgstr "" #: ../Doc/whatsnew/3.2.rst:1725 msgid "" "To match the behavior of :mod:`http.server`, the HTTP client library now " "also encodes headers with ISO-8859-1 (Latin-1) encoding. It was already " "doing that for incoming headers, so now the behavior is consistent for both " "incoming and outgoing traffic. (See work by Armin Ronacher in :issue:" "`10980`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:1731 ../Doc/whatsnew/3.3.rst:2089 #: ../Doc/whatsnew/3.4.rst:1655 ../Doc/whatsnew/3.5.rst:1984 msgid "unittest" msgstr "unittest" #: ../Doc/whatsnew/3.2.rst:1733 msgid "" "The unittest module has a number of improvements supporting test discovery " "for packages, easier experimentation at the interactive prompt, new testcase " "methods, improved diagnostic messages for test failures, and better method " "names." msgstr "" #: ../Doc/whatsnew/3.2.rst:1738 msgid "" "The command-line call ``python -m unittest`` can now accept file paths " "instead of module names for running specific tests (:issue:`10620`). The " "new test discovery can find tests within packages, locating any test " "importable from the top-level directory. The top-level directory can be " "specified with the `-t` option, a pattern for matching files with ``-p``, " "and a directory to start discovery with ``-s``:" msgstr "" #: ../Doc/whatsnew/3.2.rst:1749 ../Doc/whatsnew/3.2.rst:1758 #: ../Doc/whatsnew/3.2.rst:1914 msgid "(Contributed by Michael Foord.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:1751 msgid "" "Experimentation at the interactive prompt is now easier because the :class:" "`unittest.case.TestCase` class can now be instantiated without arguments:" msgstr "" #: ../Doc/whatsnew/3.2.rst:1760 msgid "" "The :mod:`unittest` module has two new methods, :meth:`~unittest.TestCase." "assertWarns` and :meth:`~unittest.TestCase.assertWarnsRegex` to verify that " "a given warning type is triggered by the code under test::" msgstr "" #: ../Doc/whatsnew/3.2.rst:1768 msgid "(Contributed by Antoine Pitrou, :issue:`9754`.)" msgstr "(Contribution par Antoine Pitrou; :issue:`9754`.)" #: ../Doc/whatsnew/3.2.rst:1770 msgid "" "Another new method, :meth:`~unittest.TestCase.assertCountEqual` is used to " "compare two iterables to determine if their element counts are equal " "(whether the same elements are present with the same number of occurrences " "regardless of order)::" msgstr "" #: ../Doc/whatsnew/3.2.rst:1780 msgid "" "A principal feature of the unittest module is an effort to produce " "meaningful diagnostics when a test fails. When possible, the failure is " "recorded along with a diff of the output. This is especially helpful for " "analyzing log files of failed test runs. However, since diffs can sometime " "be voluminous, there is a new :attr:`~unittest.TestCase.maxDiff` attribute " "that sets maximum length of diffs displayed." msgstr "" #: ../Doc/whatsnew/3.2.rst:1787 msgid "" "In addition, the method names in the module have undergone a number of clean-" "ups." msgstr "" #: ../Doc/whatsnew/3.2.rst:1789 msgid "" "For example, :meth:`~unittest.TestCase.assertRegex` is the new name for :" "meth:`~unittest.TestCase.assertRegexpMatches` which was misnamed because the " "test uses :func:`re.search`, not :func:`re.match`. Other methods using " "regular expressions are now named using short form \"Regex\" in preference " "to \"Regexp\" -- this matches the names used in other unittest " "implementations, matches Python's old name for the :mod:`re` module, and it " "has unambiguous camel-casing." msgstr "" #: ../Doc/whatsnew/3.2.rst:1797 msgid "(Contributed by Raymond Hettinger and implemented by Ezio Melotti.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:1799 msgid "" "To improve consistency, some long-standing method aliases are being " "deprecated in favor of the preferred names:" msgstr "" #: ../Doc/whatsnew/3.2.rst:1803 msgid "Preferred Name" msgstr "" #: ../Doc/whatsnew/3.2.rst:1805 msgid ":meth:`assert_`" msgstr ":meth:`assert_`" #: ../Doc/whatsnew/3.2.rst:1805 msgid ":meth:`.assertTrue`" msgstr ":meth:`.assertTrue`" #: ../Doc/whatsnew/3.2.rst:1806 msgid ":meth:`assertEquals`" msgstr ":meth:`assertEquals`" #: ../Doc/whatsnew/3.2.rst:1806 msgid ":meth:`.assertEqual`" msgstr ":meth:`.assertEqual`" #: ../Doc/whatsnew/3.2.rst:1807 msgid ":meth:`assertNotEquals`" msgstr ":meth:`assertNotEquals`" #: ../Doc/whatsnew/3.2.rst:1807 msgid ":meth:`.assertNotEqual`" msgstr ":meth:`.assertNotEqual`" #: ../Doc/whatsnew/3.2.rst:1808 msgid ":meth:`assertAlmostEquals`" msgstr ":meth:`assertAlmostEquals`" #: ../Doc/whatsnew/3.2.rst:1808 msgid ":meth:`.assertAlmostEqual`" msgstr ":meth:`.assertAlmostEqual`" #: ../Doc/whatsnew/3.2.rst:1809 msgid ":meth:`assertNotAlmostEquals`" msgstr ":meth:`assertNotAlmostEquals`" #: ../Doc/whatsnew/3.2.rst:1809 msgid ":meth:`.assertNotAlmostEqual`" msgstr ":meth:`.assertNotAlmostEqual`" #: ../Doc/whatsnew/3.2.rst:1812 msgid "" "Likewise, the ``TestCase.fail*`` methods deprecated in Python 3.1 are " "expected to be removed in Python 3.3. Also see the :ref:`deprecated-" "aliases` section in the :mod:`unittest` documentation." msgstr "" #: ../Doc/whatsnew/3.2.rst:1816 msgid "(Contributed by Ezio Melotti; :issue:`9424`.)" msgstr "(Contribution par Ezio Melotti; :issue:`9424`)" #: ../Doc/whatsnew/3.2.rst:1818 msgid "" "The :meth:`~unittest.TestCase.assertDictContainsSubset` method was " "deprecated because it was misimplemented with the arguments in the wrong " "order. This created hard-to-debug optical illusions where tests like " "``TestCase().assertDictContainsSubset({'a':1, 'b':2}, {'a':1})`` would fail." msgstr "" #: ../Doc/whatsnew/3.2.rst:1826 msgid "random" msgstr "" #: ../Doc/whatsnew/3.2.rst:1828 msgid "" "The integer methods in the :mod:`random` module now do a better job of " "producing uniform distributions. Previously, they computed selections with " "``int(n*random())`` which had a slight bias whenever *n* was not a power of " "two. Now, multiple selections are made from a range up to the next power of " "two and a selection is kept only when it falls within the range ``0 <= x < " "n``. The functions and methods affected are :func:`~random.randrange`, :" "func:`~random.randint`, :func:`~random.choice`, :func:`~random.shuffle` and :" "func:`~random.sample`." msgstr "" #: ../Doc/whatsnew/3.2.rst:1837 msgid "(Contributed by Raymond Hettinger; :issue:`9025`.)" msgstr "(Contribution par Raymond Hettinger; :issue:`9025`)" #: ../Doc/whatsnew/3.2.rst:1840 ../Doc/whatsnew/3.4.rst:1247 #: ../Doc/whatsnew/3.5.rst:1576 msgid "poplib" msgstr "" #: ../Doc/whatsnew/3.2.rst:1842 msgid "" ":class:`~poplib.POP3_SSL` class now accepts a *context* parameter, which is " "a :class:`ssl.SSLContext` object allowing bundling SSL configuration " "options, certificates and private keys into a single (potentially long-" "lived) structure." msgstr "" #: ../Doc/whatsnew/3.2.rst:1847 msgid "(Contributed by Giampaolo Rodolà; :issue:`8807`.)" msgstr "(Contribution par Giampaolo Rodolà; :issue:`8807`)" #: ../Doc/whatsnew/3.2.rst:1850 msgid "asyncore" msgstr "asyncore" #: ../Doc/whatsnew/3.2.rst:1852 msgid "" ":class:`asyncore.dispatcher` now provides a :meth:`~asyncore.dispatcher." "handle_accepted()` method returning a `(sock, addr)` pair which is called " "when a connection has actually been established with a new remote endpoint. " "This is supposed to be used as a replacement for old :meth:`~asyncore." "dispatcher.handle_accept()` and avoids the user to call :meth:`~asyncore." "dispatcher.accept()` directly." msgstr "" #: ../Doc/whatsnew/3.2.rst:1859 msgid "(Contributed by Giampaolo Rodolà; :issue:`6706`.)" msgstr "(Contribution par Giampaolo Rodolà; :issue:`6706`)" #: ../Doc/whatsnew/3.2.rst:1862 ../Doc/whatsnew/3.3.rst:2018 msgid "tempfile" msgstr "" #: ../Doc/whatsnew/3.2.rst:1864 msgid "" "The :mod:`tempfile` module has a new context manager, :class:`~tempfile." "TemporaryDirectory` which provides easy deterministic cleanup of temporary " "directories::" msgstr "" #: ../Doc/whatsnew/3.2.rst:1871 msgid "(Contributed by Neil Schemenauer and Nick Coghlan; :issue:`5178`.)" msgstr "(Contribution par Neil Schemenauer et Nick Coghlan; :issue:`5178`.)" #: ../Doc/whatsnew/3.2.rst:1874 ../Doc/whatsnew/3.3.rst:1459 #: ../Doc/whatsnew/3.4.rst:1024 ../Doc/whatsnew/3.5.rst:1283 msgid "inspect" msgstr "" #: ../Doc/whatsnew/3.2.rst:1876 msgid "" "The :mod:`inspect` module has a new function :func:`~inspect." "getgeneratorstate` to easily identify the current state of a generator-" "iterator::" msgstr "" #: ../Doc/whatsnew/3.2.rst:1894 msgid "(Contributed by Rodolpho Eckhardt and Nick Coghlan, :issue:`10220`.)" msgstr "(Contribution par Rodolpho Eckhardt et Nick Coghlan; :issue:`10220`.)" #: ../Doc/whatsnew/3.2.rst:1896 msgid "" "To support lookups without the possibility of activating a dynamic " "attribute, the :mod:`inspect` module has a new function, :func:`~inspect." "getattr_static`. Unlike :func:`hasattr`, this is a true read-only search, " "guaranteed not to change state while it is searching::" msgstr "" #: ../Doc/whatsnew/3.2.rst:1917 ../Doc/whatsnew/3.3.rst:1726 #: ../Doc/whatsnew/3.4.rst:1278 msgid "pydoc" msgstr "" #: ../Doc/whatsnew/3.2.rst:1919 msgid "" "The :mod:`pydoc` module now provides a much-improved Web server interface, " "as well as a new command-line option ``-b`` to automatically open a browser " "window to display that server:" msgstr "" #: ../Doc/whatsnew/3.2.rst:1927 msgid "(Contributed by Ron Adam; :issue:`2001`.)" msgstr "(Contribution par Ron Adam; :issue:`2001`.)" #: ../Doc/whatsnew/3.2.rst:1930 ../Doc/whatsnew/3.4.rst:713 msgid "dis" msgstr "dis" #: ../Doc/whatsnew/3.2.rst:1932 msgid "" "The :mod:`dis` module gained two new functions for inspecting code, :func:" "`~dis.code_info` and :func:`~dis.show_code`. Both provide detailed code " "object information for the supplied function, method, source code string or " "code object. The former returns a string and the latter prints it::" msgstr "" #: ../Doc/whatsnew/3.2.rst:1959 msgid "" "In addition, the :func:`~dis.dis` function now accepts string arguments so " "that the common idiom ``dis(compile(s, '', 'eval'))`` can be shortened to " "``dis(s)``::" msgstr "" #: ../Doc/whatsnew/3.2.rst:1981 msgid "" "Taken together, these improvements make it easier to explore how CPython is " "implemented and to see for yourself what the language syntax does under-the-" "hood." msgstr "" #: ../Doc/whatsnew/3.2.rst:1985 msgid "(Contributed by Nick Coghlan in :issue:`9147`.)" msgstr "(Contribution par Nick Coghlan; :issue:`9147`.)" #: ../Doc/whatsnew/3.2.rst:1988 ../Doc/whatsnew/3.4.rst:704 #: ../Doc/whatsnew/3.5.rst:1054 msgid "dbm" msgstr "dbm" #: ../Doc/whatsnew/3.2.rst:1990 msgid "" "All database modules now support the :meth:`get` and :meth:`setdefault` " "methods." msgstr "" #: ../Doc/whatsnew/3.2.rst:1992 msgid "(Suggested by Ray Allen in :issue:`9523`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:1995 msgid "ctypes" msgstr "ctypes" #: ../Doc/whatsnew/3.2.rst:1997 msgid "" "A new type, :class:`ctypes.c_ssize_t` represents the C :c:type:`ssize_t` " "datatype." msgstr "" #: ../Doc/whatsnew/3.2.rst:2000 ../Doc/whatsnew/3.6.rst:843 msgid "site" msgstr "" #: ../Doc/whatsnew/3.2.rst:2002 msgid "" "The :mod:`site` module has three new functions useful for reporting on the " "details of a given Python installation." msgstr "" #: ../Doc/whatsnew/3.2.rst:2005 msgid "" ":func:`~site.getsitepackages` lists all global site-packages directories." msgstr "" #: ../Doc/whatsnew/3.2.rst:2007 msgid "" ":func:`~site.getuserbase` reports on the user's base directory where data " "can be stored." msgstr "" #: ../Doc/whatsnew/3.2.rst:2010 msgid "" ":func:`~site.getusersitepackages` reveals the user-specific site-packages " "directory path." msgstr "" #: ../Doc/whatsnew/3.2.rst:2025 msgid "" "Conveniently, some of site's functionality is accessible directly from the " "command-line:" msgstr "" #: ../Doc/whatsnew/3.2.rst:2035 msgid "(Contributed by Tarek Ziadé in :issue:`6693`.)" msgstr "(Contribution par Tarek Ziadé; :issue:`6693`.)" #: ../Doc/whatsnew/3.2.rst:2038 ../Doc/whatsnew/3.5.rst:1880 msgid "sysconfig" msgstr "" #: ../Doc/whatsnew/3.2.rst:2040 msgid "" "The new :mod:`sysconfig` module makes it straightforward to discover " "installation paths and configuration variables that vary across platforms " "and installations." msgstr "" #: ../Doc/whatsnew/3.2.rst:2044 msgid "" "The module offers access simple access functions for platform and version " "information:" msgstr "" #: ../Doc/whatsnew/3.2.rst:2047 msgid "" ":func:`~sysconfig.get_platform` returning values like *linux-i586* or " "*macosx-10.6-ppc*." msgstr "" #: ../Doc/whatsnew/3.2.rst:2049 msgid "" ":func:`~sysconfig.get_python_version` returns a Python version string such " "as \"3.2\"." msgstr "" #: ../Doc/whatsnew/3.2.rst:2052 msgid "" "It also provides access to the paths and variables corresponding to one of " "seven named schemes used by :mod:`distutils`. Those include *posix_prefix*, " "*posix_home*, *posix_user*, *nt*, *nt_user*, *os2*, *os2_home*:" msgstr "" #: ../Doc/whatsnew/3.2.rst:2056 msgid "" ":func:`~sysconfig.get_paths` makes a dictionary containing installation " "paths for the current installation scheme." msgstr "" #: ../Doc/whatsnew/3.2.rst:2058 msgid "" ":func:`~sysconfig.get_config_vars` returns a dictionary of platform specific " "variables." msgstr "" #: ../Doc/whatsnew/3.2.rst:2061 msgid "There is also a convenient command-line interface:" msgstr "" #: ../Doc/whatsnew/3.2.rst:2100 msgid "(Moved out of Distutils by Tarek Ziadé.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:2103 ../Doc/whatsnew/3.3.rst:1706 #: ../Doc/whatsnew/3.4.rst:1199 msgid "pdb" msgstr "" #: ../Doc/whatsnew/3.2.rst:2105 msgid "" "The :mod:`pdb` debugger module gained a number of usability improvements:" msgstr "" #: ../Doc/whatsnew/3.2.rst:2107 msgid "" ":file:`pdb.py` now has a ``-c`` option that executes commands as given in a :" "file:`.pdbrc` script file." msgstr "" #: ../Doc/whatsnew/3.2.rst:2109 msgid "" "A :file:`.pdbrc` script file can contain ``continue`` and ``next`` commands " "that continue debugging." msgstr "" #: ../Doc/whatsnew/3.2.rst:2111 msgid "The :class:`Pdb` class constructor now accepts a *nosigint* argument." msgstr "" #: ../Doc/whatsnew/3.2.rst:2112 msgid "" "New commands: ``l(list)``, ``ll(long list)`` and ``source`` for listing " "source code." msgstr "" #: ../Doc/whatsnew/3.2.rst:2114 msgid "" "New commands: ``display`` and ``undisplay`` for showing or hiding the value " "of an expression if it has changed." msgstr "" #: ../Doc/whatsnew/3.2.rst:2116 msgid "" "New command: ``interact`` for starting an interactive interpreter containing " "the global and local names found in the current scope." msgstr "" #: ../Doc/whatsnew/3.2.rst:2118 msgid "Breakpoints can be cleared by breakpoint number." msgstr "" #: ../Doc/whatsnew/3.2.rst:2120 msgid "(Contributed by Georg Brandl, Antonio Cuni and Ilya Sandler.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:2125 msgid "" "The :mod:`configparser` module was modified to improve usability and " "predictability of the default parser and its supported INI syntax. The old :" "class:`ConfigParser` class was removed in favor of :class:`SafeConfigParser` " "which has in turn been renamed to :class:`~configparser.ConfigParser`. " "Support for inline comments is now turned off by default and section or " "option duplicates are not allowed in a single configuration source." msgstr "" #: ../Doc/whatsnew/3.2.rst:2132 msgid "Config parsers gained a new API based on the mapping protocol::" msgstr "" #: ../Doc/whatsnew/3.2.rst:2160 msgid "" "The new API is implemented on top of the classical API, so custom parser " "subclasses should be able to use it without modifications." msgstr "" #: ../Doc/whatsnew/3.2.rst:2163 msgid "" "The INI file structure accepted by config parsers can now be customized. " "Users can specify alternative option/value delimiters and comment prefixes, " "change the name of the *DEFAULT* section or switch the interpolation syntax." msgstr "" #: ../Doc/whatsnew/3.2.rst:2167 msgid "" "There is support for pluggable interpolation including an additional " "interpolation handler :class:`~configparser.ExtendedInterpolation`::" msgstr "" #: ../Doc/whatsnew/3.2.rst:2200 msgid "" "A number of smaller features were also introduced, like support for " "specifying encoding in read operations, specifying fallback values for get-" "functions, or reading directly from dictionaries and strings." msgstr "" #: ../Doc/whatsnew/3.2.rst:2204 msgid "(All changes contributed by Łukasz Langa.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:2209 msgid "urllib.parse" msgstr "urllib.parse" #: ../Doc/whatsnew/3.2.rst:2211 msgid "" "A number of usability improvements were made for the :mod:`urllib.parse` " "module." msgstr "" #: ../Doc/whatsnew/3.2.rst:2213 msgid "" "The :func:`~urllib.parse.urlparse` function now supports `IPv6 `_ addresses as described in :rfc:`2732`:" msgstr "" #: ../Doc/whatsnew/3.2.rst:2225 msgid "" "The :func:`~urllib.parse.urldefrag` function now returns a :term:`named " "tuple`::" msgstr "" #: ../Doc/whatsnew/3.2.rst:2235 msgid "" "And, the :func:`~urllib.parse.urlencode` function is now much more flexible, " "accepting either a string or bytes type for the *query* argument. If it is " "a string, then the *safe*, *encoding*, and *error* parameters are sent to :" "func:`~urllib.parse.quote_plus` for encoding::" msgstr "" #: ../Doc/whatsnew/3.2.rst:2246 msgid "" "As detailed in :ref:`parsing-ascii-encoded-bytes`, all the :mod:`urllib." "parse` functions now accept ASCII-encoded byte strings as input, so long as " "they are not mixed with regular strings. If ASCII-encoded byte strings are " "given as parameters, the return types will also be an ASCII-encoded byte " "strings:" msgstr "" #: ../Doc/whatsnew/3.2.rst:2255 msgid "" "(Work by Nick Coghlan, Dan Mahn, and Senthil Kumaran in :issue:`2987`, :" "issue:`5468`, and :issue:`9873`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:2259 msgid "mailbox" msgstr "" #: ../Doc/whatsnew/3.2.rst:2261 msgid "" "Thanks to a concerted effort by R. David Murray, the :mod:`mailbox` module " "has been fixed for Python 3.2. The challenge was that mailbox had been " "originally designed with a text interface, but email messages are best " "represented with :class:`bytes` because various parts of a message may have " "different encodings." msgstr "" #: ../Doc/whatsnew/3.2.rst:2266 msgid "" "The solution harnessed the :mod:`email` package's binary support for parsing " "arbitrary email messages. In addition, the solution required a number of " "API changes." msgstr "" #: ../Doc/whatsnew/3.2.rst:2270 msgid "" "As expected, the :meth:`~mailbox.Mailbox.add` method for :class:`mailbox." "Mailbox` objects now accepts binary input." msgstr "" #: ../Doc/whatsnew/3.2.rst:2273 msgid "" ":class:`~io.StringIO` and text file input are deprecated. Also, string " "input will fail early if non-ASCII characters are used. Previously it would " "fail when the email was processed in a later step." msgstr "" #: ../Doc/whatsnew/3.2.rst:2277 msgid "" "There is also support for binary output. The :meth:`~mailbox.Mailbox." "get_file` method now returns a file in the binary mode (where it used to " "incorrectly set the file to text-mode). There is also a new :meth:`~mailbox." "Mailbox.get_bytes` method that returns a :class:`bytes` representation of a " "message corresponding to a given *key*." msgstr "" #: ../Doc/whatsnew/3.2.rst:2283 msgid "" "It is still possible to get non-binary output using the old API's :meth:" "`~mailbox.Mailbox.get_string` method, but that approach is not very useful. " "Instead, it is best to extract messages from a :class:`~mailbox.Message` " "object or to load them from binary input." msgstr "" #: ../Doc/whatsnew/3.2.rst:2288 msgid "" "(Contributed by R. David Murray, with efforts from Steffen Daode Nurpmeso " "and an initial patch by Victor Stinner in :issue:`9124`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:2292 msgid "turtledemo" msgstr "turtledemo" #: ../Doc/whatsnew/3.2.rst:2294 msgid "" "The demonstration code for the :mod:`turtle` module was moved from the " "*Demo* directory to main library. It includes over a dozen sample scripts " "with lively displays. Being on :attr:`sys.path`, it can now be run directly " "from the command-line:" msgstr "" #: ../Doc/whatsnew/3.2.rst:2303 msgid "" "(Moved from the Demo directory by Alexander Belopolsky in :issue:`10199`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:2306 msgid "Multi-threading" msgstr "Threads" #: ../Doc/whatsnew/3.2.rst:2308 msgid "" "The mechanism for serializing execution of concurrently running Python " "threads (generally known as the :term:`GIL` or :term:`Global Interpreter " "Lock`) has been rewritten. Among the objectives were more predictable " "switching intervals and reduced overhead due to lock contention and the " "number of ensuing system calls. The notion of a \"check interval\" to allow " "thread switches has been abandoned and replaced by an absolute duration " "expressed in seconds. This parameter is tunable through :func:`sys." "setswitchinterval()`. It currently defaults to 5 milliseconds." msgstr "" #: ../Doc/whatsnew/3.2.rst:2317 msgid "" "Additional details about the implementation can be read from a `python-dev " "mailing-list message `_ (however, \"priority requests\" as exposed in this " "message have not been kept for inclusion)." msgstr "" #: ../Doc/whatsnew/3.2.rst:2325 msgid "" "Regular and recursive locks now accept an optional *timeout* argument to " "their :meth:`~threading.Lock.acquire` method. (Contributed by Antoine " "Pitrou; :issue:`7316`.)" msgstr "" "Les verrous standards et récursifs acceptent désormais un argument optionnel " "*timeout* à leur méthode :meth:`~threading.Lock.acquire`. (Contribution par " "Antoine Pitrou; :issue:`7316`)." #: ../Doc/whatsnew/3.2.rst:2329 msgid "" "Similarly, :meth:`threading.Semaphore.acquire` also gained a *timeout* " "argument. (Contributed by Torsten Landschoff; :issue:`850728`.)" msgstr "" "Pareillement, :meth:`threading.Semaphore.acquire` acquière un argument " "*timeout* (Contribution par Torsten Landschoff; :issue:`850728`)." #: ../Doc/whatsnew/3.2.rst:2332 msgid "" "Regular and recursive lock acquisitions can now be interrupted by signals on " "platforms using Pthreads. This means that Python programs that deadlock " "while acquiring locks can be successfully killed by repeatedly sending " "SIGINT to the process (by pressing :kbd:`Ctrl+C` in most shells). " "(Contributed by Reid Kleckner; :issue:`8844`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:2342 msgid "A number of small performance enhancements have been added:" msgstr "" #: ../Doc/whatsnew/3.2.rst:2344 msgid "" "Python's peephole optimizer now recognizes patterns such ``x in {1, 2, 3}`` " "as being a test for membership in a set of constants. The optimizer recasts " "the :class:`set` as a :class:`frozenset` and stores the pre-built constant." msgstr "" #: ../Doc/whatsnew/3.2.rst:2348 msgid "" "Now that the speed penalty is gone, it is practical to start writing " "membership tests using set-notation. This style is both semantically clear " "and operationally fast::" msgstr "" #: ../Doc/whatsnew/3.2.rst:2356 msgid "" "(Patch and additional tests contributed by Dave Malcolm; :issue:`6690`)." msgstr "" #: ../Doc/whatsnew/3.2.rst:2358 msgid "" "Serializing and unserializing data using the :mod:`pickle` module is now " "several times faster." msgstr "" #: ../Doc/whatsnew/3.2.rst:2361 msgid "" "(Contributed by Alexandre Vassalotti, Antoine Pitrou and the Unladen Swallow " "team in :issue:`9410` and :issue:`3873`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:2364 msgid "" "The `Timsort algorithm `_ used in :" "meth:`list.sort` and :func:`sorted` now runs faster and uses less memory " "when called with a :term:`key function`. Previously, every element of a " "list was wrapped with a temporary object that remembered the key value " "associated with each element. Now, two arrays of keys and values are sorted " "in parallel. This saves the memory consumed by the sort wrappers, and it " "saves time lost to delegating comparisons." msgstr "" #: ../Doc/whatsnew/3.2.rst:2372 msgid "(Patch by Daniel Stutzbach in :issue:`9915`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:2374 msgid "" "JSON decoding performance is improved and memory consumption is reduced " "whenever the same string is repeated for multiple keys. Also, JSON encoding " "now uses the C speedups when the ``sort_keys`` argument is true." msgstr "" #: ../Doc/whatsnew/3.2.rst:2378 msgid "" "(Contributed by Antoine Pitrou in :issue:`7451` and by Raymond Hettinger and " "Antoine Pitrou in :issue:`10314`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:2381 msgid "" "Recursive locks (created with the :func:`threading.RLock` API) now benefit " "from a C implementation which makes them as fast as regular locks, and " "between 10x and 15x faster than their previous pure Python implementation." msgstr "" #: ../Doc/whatsnew/3.2.rst:2385 msgid "(Contributed by Antoine Pitrou; :issue:`3001`.)" msgstr "(Contribution par Antoine Pitrou; :issue:`3001`.)" #: ../Doc/whatsnew/3.2.rst:2387 msgid "" "The fast-search algorithm in stringlib is now used by the :meth:`split`, :" "meth:`rsplit`, :meth:`splitlines` and :meth:`replace` methods on :class:" "`bytes`, :class:`bytearray` and :class:`str` objects. Likewise, the " "algorithm is also used by :meth:`rfind`, :meth:`rindex`, :meth:`rsplit` and :" "meth:`rpartition`." msgstr "" #: ../Doc/whatsnew/3.2.rst:2393 msgid "(Patch by Florent Xicluna in :issue:`7622` and :issue:`7462`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:2396 msgid "" "Integer to string conversions now work two \"digits\" at a time, reducing " "the number of division and modulo operations." msgstr "" #: ../Doc/whatsnew/3.2.rst:2399 msgid "(:issue:`6713` by Gawain Bolton, Mark Dickinson, and Victor Stinner.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:2401 msgid "" "There were several other minor optimizations. Set differencing now runs " "faster when one operand is much larger than the other (patch by Andress " "Bennetts in :issue:`8685`). The :meth:`array.repeat` method has a faster " "implementation (:issue:`1569291` by Alexander Belopolsky). The :class:" "`BaseHTTPRequestHandler` has more efficient buffering (:issue:`3709` by " "Andrew Schaaf). The :func:`operator.attrgetter` function has been sped-up (:" "issue:`10160` by Christos Georgiou). And :class:`ConfigParser` loads multi-" "line arguments a bit faster (:issue:`7113` by Łukasz Langa)." msgstr "" #: ../Doc/whatsnew/3.2.rst:2414 msgid "" "Python has been updated to `Unicode 6.0.0 `_. The update to the standard adds over 2,000 new characters " "including `emoji `_ symbols which are " "important for mobile phones." msgstr "" #: ../Doc/whatsnew/3.2.rst:2419 msgid "" "In addition, the updated standard has altered the character properties for " "two Kannada characters (U+0CF1, U+0CF2) and one New Tai Lue numeric " "character (U+19DA), making the former eligible for use in identifiers while " "disqualifying the latter. For more information, see `Unicode Character " "Database Changes `_." msgstr "" #: ../Doc/whatsnew/3.2.rst:2427 msgid "Codecs" msgstr "" #: ../Doc/whatsnew/3.2.rst:2429 msgid "Support was added for *cp720* Arabic DOS encoding (:issue:`1616979`)." msgstr "" #: ../Doc/whatsnew/3.2.rst:2431 msgid "" "MBCS encoding no longer ignores the error handler argument. In the default " "strict mode, it raises an :exc:`UnicodeDecodeError` when it encounters an " "undecodable byte sequence and an :exc:`UnicodeEncodeError` for an " "unencodable character." msgstr "" #: ../Doc/whatsnew/3.2.rst:2436 msgid "" "The MBCS codec supports ``'strict'`` and ``'ignore'`` error handlers for " "decoding, and ``'strict'`` and ``'replace'`` for encoding." msgstr "" #: ../Doc/whatsnew/3.2.rst:2439 msgid "" "To emulate Python3.1 MBCS encoding, select the ``'ignore'`` handler for " "decoding and the ``'replace'`` handler for encoding." msgstr "" #: ../Doc/whatsnew/3.2.rst:2442 msgid "" "On Mac OS X, Python decodes command line arguments with ``'utf-8'`` rather " "than the locale encoding." msgstr "" #: ../Doc/whatsnew/3.2.rst:2445 msgid "" "By default, :mod:`tarfile` uses ``'utf-8'`` encoding on Windows (instead of " "``'mbcs'``) and the ``'surrogateescape'`` error handler on all operating " "systems." msgstr "" #: ../Doc/whatsnew/3.2.rst:2451 ../../../Misc/NEWS:1227 ../../../Misc/NEWS:1479 #: ../../../Misc/NEWS:2647 ../../../Misc/NEWS:3239 ../../../Misc/NEWS:3489 #: ../../../Misc/NEWS:3684 ../../../Misc/NEWS:3994 ../../../Misc/NEWS:6184 #: ../../../Misc/NEWS:6408 ../../../Misc/NEWS:6782 ../../../Misc/NEWS:7381 #: ../../../Misc/NEWS:7813 ../../../Misc/NEWS:8087 ../../../Misc/NEWS:8214 #: ../../../Misc/NEWS:8477 ../../../Misc/NEWS:10528 msgid "Documentation" msgstr "Documentation" #: ../Doc/whatsnew/3.2.rst:2453 msgid "The documentation continues to be improved." msgstr "" #: ../Doc/whatsnew/3.2.rst:2455 msgid "" "A table of quick links has been added to the top of lengthy sections such " "as :ref:`built-in-funcs`. In the case of :mod:`itertools`, the links are " "accompanied by tables of cheatsheet-style summaries to provide an overview " "and memory jog without having to read all of the docs." msgstr "" #: ../Doc/whatsnew/3.2.rst:2460 msgid "" "In some cases, the pure Python source code can be a helpful adjunct to the " "documentation, so now many modules now feature quick links to the latest " "version of the source code. For example, the :mod:`functools` module " "documentation has a quick link at the top labeled:" msgstr "" #: ../Doc/whatsnew/3.2.rst:2465 msgid "**Source code** :source:`Lib/functools.py`." msgstr "" #: ../Doc/whatsnew/3.2.rst:2467 msgid "" "(Contributed by Raymond Hettinger; see `rationale `_.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:2470 msgid "" "The docs now contain more examples and recipes. In particular, :mod:`re` " "module has an extensive section, :ref:`re-examples`. Likewise, the :mod:" "`itertools` module continues to be updated with new :ref:`itertools-recipes`." msgstr "" #: ../Doc/whatsnew/3.2.rst:2475 msgid "" "The :mod:`datetime` module now has an auxiliary implementation in pure " "Python. No functionality was changed. This just provides an easier-to-read " "alternate implementation." msgstr "" #: ../Doc/whatsnew/3.2.rst:2479 msgid "(Contributed by Alexander Belopolsky in :issue:`9528`.)" msgstr "(Contribution par Alexander Belopolsky; :issue:`9528`.)" #: ../Doc/whatsnew/3.2.rst:2481 msgid "" "The unmaintained :file:`Demo` directory has been removed. Some demos were " "integrated into the documentation, some were moved to the :file:`Tools/demo` " "directory, and others were removed altogether." msgstr "" #: ../Doc/whatsnew/3.2.rst:2485 msgid "(Contributed by Georg Brandl in :issue:`7962`.)" msgstr "(Contribution par Georg Brandl; :issue:`7962`.)" #: ../Doc/whatsnew/3.2.rst:2491 msgid "" "The format menu now has an option to clean source files by stripping " "trailing whitespace." msgstr "" #: ../Doc/whatsnew/3.2.rst:2494 msgid "(Contributed by Raymond Hettinger; :issue:`5150`.)" msgstr "(Contribution par Raymond Hettinger; :issue:`5150`.)" #: ../Doc/whatsnew/3.2.rst:2496 msgid "IDLE on Mac OS X now works with both Carbon AquaTk and Cocoa AquaTk." msgstr "" #: ../Doc/whatsnew/3.2.rst:2498 msgid "" "(Contributed by Kevin Walzer, Ned Deily, and Ronald Oussoren; :issue:`6075`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:2501 msgid "Code Repository" msgstr "" #: ../Doc/whatsnew/3.2.rst:2503 msgid "" "In addition to the existing Subversion code repository at http://svn.python." "org there is now a `Mercurial `_ repository " "at https://hg.python.org/\\ ." msgstr "" #: ../Doc/whatsnew/3.2.rst:2507 msgid "" "After the 3.2 release, there are plans to switch to Mercurial as the primary " "repository. This distributed version control system should make it easier " "for members of the community to create and share external changesets. See :" "pep:`385` for details." msgstr "" #: ../Doc/whatsnew/3.2.rst:2512 msgid "" "To learn to use the new version control system, see the `tutorial by Joel " "Spolsky `_ or the `Guide to Mercurial Workflows `_." msgstr "" #: ../Doc/whatsnew/3.2.rst:2522 msgid "" "The *idle*, *pydoc* and *2to3* scripts are now installed with a version-" "specific suffix on ``make altinstall`` (:issue:`10679`)." msgstr "" #: ../Doc/whatsnew/3.2.rst:2525 msgid "" "The C functions that access the Unicode Database now accept and return " "characters from the full Unicode range, even on narrow unicode builds " "(Py_UNICODE_TOLOWER, Py_UNICODE_ISDECIMAL, and others). A visible " "difference in Python is that :func:`unicodedata.numeric` now returns the " "correct value for large code points, and :func:`repr` may consider more " "characters as printable." msgstr "" #: ../Doc/whatsnew/3.2.rst:2532 msgid "" "(Reported by Bupjoe Lee and fixed by Amaury Forgeot D'Arc; :issue:`5127`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:2534 msgid "" "Computed gotos are now enabled by default on supported compilers (which are " "detected by the configure script). They can still be disabled selectively " "by specifying ``--without-computed-gotos``." msgstr "" #: ../Doc/whatsnew/3.2.rst:2538 msgid "(Contributed by Antoine Pitrou; :issue:`9203`.)" msgstr "(Contribution par Antoine Pitrou; :issue:`9203`.)" #: ../Doc/whatsnew/3.2.rst:2540 msgid "" "The option ``--with-wctype-functions`` was removed. The built-in unicode " "database is now used for all functions." msgstr "" #: ../Doc/whatsnew/3.2.rst:2543 msgid "(Contributed by Amaury Forgeot D'Arc; :issue:`9210`.)" msgstr "(Contribution par Amaury Forgeot D'Arc; :issue:`9210`.)" #: ../Doc/whatsnew/3.2.rst:2545 msgid "" "Hash values are now values of a new type, :c:type:`Py_hash_t`, which is " "defined to be the same size as a pointer. Previously they were of type " "long, which on some 64-bit operating systems is still only 32 bits long. As " "a result of this fix, :class:`set` and :class:`dict` can now hold more than " "``2**32`` entries on builds with 64-bit pointers (previously, they could " "grow to that size but their performance degraded catastrophically)." msgstr "" #: ../Doc/whatsnew/3.2.rst:2552 msgid "" "(Suggested by Raymond Hettinger and implemented by Benjamin Peterson; :issue:" "`9778`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:2555 msgid "" "A new macro :c:macro:`Py_VA_COPY` copies the state of the variable argument " "list. It is equivalent to C99 *va_copy* but available on all Python " "platforms (:issue:`2443`)." msgstr "" #: ../Doc/whatsnew/3.2.rst:2559 msgid "" "A new C API function :c:func:`PySys_SetArgvEx` allows an embedded " "interpreter to set :attr:`sys.argv` without also modifying :attr:`sys.path` " "(:issue:`5753`)." msgstr "" #: ../Doc/whatsnew/3.2.rst:2563 msgid "" ":c:macro:`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 (:issue:`8276`)." msgstr "" #: ../Doc/whatsnew/3.2.rst:2567 msgid "" "There is a new function :c:func:`PyLong_AsLongLongAndOverflow` which is " "analogous to :c:func:`PyLong_AsLongAndOverflow`. They both serve to convert " "Python :class:`int` into a native fixed-width type while providing detection " "of cases where the conversion won't fit (:issue:`7767`)." msgstr "" #: ../Doc/whatsnew/3.2.rst:2572 msgid "" "The :c:func:`PyUnicode_CompareWithASCIIString` function now returns *not " "equal* if the Python string is *NUL* terminated." msgstr "" #: ../Doc/whatsnew/3.2.rst:2575 msgid "" "There is a new function :c:func:`PyErr_NewExceptionWithDoc` that is like :c:" "func:`PyErr_NewException` but allows a docstring to be specified. This lets " "C exceptions have the same self-documenting capabilities as their pure " "Python counterparts (:issue:`7033`)." msgstr "" #: ../Doc/whatsnew/3.2.rst:2580 msgid "" "When compiled with the ``--with-valgrind`` option, the pymalloc allocator " "will be automatically disabled when running under Valgrind. This gives " "improved memory leak detection when running under Valgrind, while taking " "advantage of pymalloc at other times (:issue:`2422`)." msgstr "" #: ../Doc/whatsnew/3.2.rst:2585 msgid "" "Removed the ``O?`` format from the *PyArg_Parse* functions. The format is " "no longer used and it had never been documented (:issue:`8837`)." msgstr "" #: ../Doc/whatsnew/3.2.rst:2588 msgid "" "There were a number of other small changes to the C-API. See the :source:" "`Misc/NEWS` file for a complete list." msgstr "" #: ../Doc/whatsnew/3.2.rst:2591 msgid "" "Also, there were a number of updates to the Mac OS X build, see :source:`Mac/" "BuildScript/README.txt` for details. For users running a 32/64-bit build, " "there is a known problem with the default Tcl/Tk on Mac OS X 10.6. " "Accordingly, we recommend installing an updated alternative such as " "`ActiveState Tcl/Tk 8.5.9 `_" "\\. See https://www.python.org/download/mac/tcltk/ for additional details." msgstr "" #: ../Doc/whatsnew/3.2.rst:2599 msgid "Porting to Python 3.2" msgstr "Portage vers Python 3.2" #: ../Doc/whatsnew/3.2.rst:2604 msgid "" "The :mod:`configparser` module has a number of clean-ups. The major change " "is to replace the old :class:`ConfigParser` class with long-standing " "preferred alternative :class:`SafeConfigParser`. In addition there are a " "number of smaller incompatibilities:" msgstr "" #: ../Doc/whatsnew/3.2.rst:2609 msgid "" "The interpolation syntax is now validated on :meth:`~configparser." "ConfigParser.get` and :meth:`~configparser.ConfigParser.set` operations. In " "the default interpolation scheme, only two tokens with percent signs are " "valid: ``%(name)s`` and ``%%``, the latter being an escaped percent sign." msgstr "" #: ../Doc/whatsnew/3.2.rst:2615 msgid "" "The :meth:`~configparser.ConfigParser.set` and :meth:`~configparser." "ConfigParser.add_section` methods now verify that values are actual " "strings. Formerly, unsupported types could be introduced unintentionally." msgstr "" #: ../Doc/whatsnew/3.2.rst:2620 msgid "" "Duplicate sections or options from a single source now raise either :exc:" "`~configparser.DuplicateSectionError` or :exc:`~configparser." "DuplicateOptionError`. Formerly, duplicates would silently overwrite a " "previous entry." msgstr "" #: ../Doc/whatsnew/3.2.rst:2625 msgid "" "Inline comments are now disabled by default so now the **;** character can " "be safely used in values." msgstr "" #: ../Doc/whatsnew/3.2.rst:2628 msgid "" "Comments now can be indented. Consequently, for **;** or **#** to appear at " "the start of a line in multiline values, it has to be interpolated. This " "keeps comment prefix characters in values from being mistaken as comments." msgstr "" #: ../Doc/whatsnew/3.2.rst:2632 msgid "" "``\"\"`` is now a valid value and is no longer automatically converted to an " "empty string. For empty strings, use ``\"option =\"`` in a line." msgstr "" #: ../Doc/whatsnew/3.2.rst:2635 msgid "" "The :mod:`nntplib` module was reworked extensively, meaning that its APIs " "are often incompatible with the 3.1 APIs." msgstr "" #: ../Doc/whatsnew/3.2.rst:2638 msgid "" ":class:`bytearray` objects can no longer be used as filenames; instead, they " "should be converted to :class:`bytes`." msgstr "" "Les objets :class:`bytearray` ne peuvent plus être utilisés en tant que nom " "de fichiers : ils doivent être convertis en :class:`bytes` à la place." #: ../Doc/whatsnew/3.2.rst:2641 msgid "" "The :meth:`array.tostring` and :meth:`array.fromstring` have been renamed " "to :meth:`array.tobytes` and :meth:`array.frombytes` for clarity. The old " "names have been deprecated. (See :issue:`8990`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:2645 msgid "``PyArg_Parse*()`` functions:" msgstr "Les fonctions ``PyArg_Parse*()`` :" #: ../Doc/whatsnew/3.2.rst:2647 msgid "\"t#\" format has been removed: use \"s#\" or \"s*\" instead" msgstr "Le format \"t#\" a été supprimé : utiliser \"s#\" ou \"s*\" à la place" #: ../Doc/whatsnew/3.2.rst:2648 msgid "\"w\" and \"w#\" formats has been removed: use \"w*\" instead" msgstr "" "Les formats \"w\" et \"w#\" ont été supprimés : utiliser \"w*\" à la place" #: ../Doc/whatsnew/3.2.rst:2650 msgid "" "The :c:type:`PyCObject` type, deprecated in 3.1, has been removed. To wrap " "opaque C pointers in Python objects, the :c:type:`PyCapsule` API should be " "used instead; the new type has a well-defined interface for passing typing " "safety information and a less complicated signature for calling a destructor." msgstr "" #: ../Doc/whatsnew/3.2.rst:2655 msgid "" "The :func:`sys.setfilesystemencoding` function was removed because it had a " "flawed design." msgstr "" #: ../Doc/whatsnew/3.2.rst:2658 msgid "" "The :func:`random.seed` function and method now salt string seeds with an " "sha512 hash function. To access the previous version of *seed* in order to " "reproduce Python 3.1 sequences, set the *version* argument to *1*, ``random." "seed(s, version=1)``." msgstr "" #: ../Doc/whatsnew/3.2.rst:2663 msgid "" "The previously deprecated :func:`string.maketrans` function has been removed " "in favor of the static methods :meth:`bytes.maketrans` and :meth:`bytearray." "maketrans`. This change solves the confusion around which types were " "supported by the :mod:`string` module. Now, :class:`str`, :class:`bytes`, " "and :class:`bytearray` each have their own **maketrans** and **translate** " "methods with intermediate translation tables of the appropriate type." msgstr "" #: ../Doc/whatsnew/3.2.rst:2673 msgid "" "The previously deprecated :func:`contextlib.nested` function has been " "removed in favor of a plain :keyword:`with` statement which can accept " "multiple context managers. The latter technique is faster (because it is " "built-in), and it does a better job finalizing multiple context managers " "when one of them raises an exception::" msgstr "" #: ../Doc/whatsnew/3.2.rst:2687 msgid "" ":func:`struct.pack` now only allows bytes for the ``s`` string pack code. " "Formerly, it would accept text arguments and implicitly encode them to bytes " "using UTF-8. This was problematic because it made assumptions about the " "correct encoding and because a variable-length encoding can fail when " "writing to fixed length segment of a structure." msgstr "" #: ../Doc/whatsnew/3.2.rst:2693 msgid "" "Code such as ``struct.pack('<6sHHBBB', 'GIF87a', x, y)`` should be rewritten " "with to use bytes instead of text, ``struct.pack('<6sHHBBB', b'GIF87a', x, " "y)``." msgstr "" #: ../Doc/whatsnew/3.2.rst:2696 msgid "" "(Discovered by David Beazley and fixed by Victor Stinner; :issue:`10783`.)" msgstr "" #: ../Doc/whatsnew/3.2.rst:2698 msgid "" "The :class:`xml.etree.ElementTree` class now raises an :exc:`xml.etree." "ElementTree.ParseError` when a parse fails. Previously it raised an :exc:" "`xml.parsers.expat.ExpatError`." msgstr "" #: ../Doc/whatsnew/3.2.rst:2702 msgid "" "The new, longer :func:`str` value on floats may break doctests which rely on " "the old output format." msgstr "" #: ../Doc/whatsnew/3.2.rst:2705 msgid "" "In :class:`subprocess.Popen`, the default value for *close_fds* is now " "``True`` under Unix; under Windows, it is ``True`` if the three standard " "streams are set to ``None``, ``False`` otherwise. Previously, *close_fds* " "was always ``False`` by default, which produced difficult to solve bugs or " "race conditions when open file descriptors would leak into the child process." msgstr "" #: ../Doc/whatsnew/3.2.rst:2712 msgid "" "Support for legacy HTTP 0.9 has been removed from :mod:`urllib.request` and :" "mod:`http.client`. Such support is still present on the server side (in :" "mod:`http.server`)." msgstr "" #: ../Doc/whatsnew/3.2.rst:2716 msgid "(Contributed by Antoine Pitrou, :issue:`10711`.)" msgstr "(Contribution par Antoine Pitrou; :issue:`10711`.)" #: ../Doc/whatsnew/3.2.rst:2718 msgid "" "SSL sockets in timeout mode now raise :exc:`socket.timeout` when a timeout " "occurs, rather than a generic :exc:`~ssl.SSLError`." msgstr "" #: ../Doc/whatsnew/3.2.rst:2721 msgid "(Contributed by Antoine Pitrou, :issue:`10272`.)" msgstr "(Contribution par Antoine Pitrou; :issue:`10272`.)" #: ../Doc/whatsnew/3.2.rst:2723 msgid "" "The misleading functions :c:func:`PyEval_AcquireLock()` and :c:func:" "`PyEval_ReleaseLock()` have been officially deprecated. The thread-state " "aware APIs (such as :c:func:`PyEval_SaveThread()` and :c:func:" "`PyEval_RestoreThread()`) should be used instead." msgstr "" #: ../Doc/whatsnew/3.2.rst:2728 msgid "" "Due to security risks, :func:`asyncore.handle_accept` has been deprecated, " "and a new function, :func:`asyncore.handle_accepted`, was added to replace " "it." msgstr "" #: ../Doc/whatsnew/3.2.rst:2731 msgid "(Contributed by Giampaolo Rodola in :issue:`6706`.)" msgstr "(Contribution par Giampaolo Rodola; :issue:`6706`.)" #: ../Doc/whatsnew/3.2.rst:2733 msgid "" "Due to the new :term:`GIL` implementation, :c:func:`PyEval_InitThreads()` " "cannot be called before :c:func:`Py_Initialize()` anymore." msgstr "" #: ../Doc/whatsnew/3.3.rst:3 msgid "What's New In Python 3.3" msgstr "Nouveautés de Python 3.3" #: ../Doc/whatsnew/3.3.rst:45 msgid "" "This article explains the new features in Python 3.3, compared to 3.2. " "Python 3.3 was released on September 29, 2012. For full details, see the " "`changelog `_." msgstr "" #: ../Doc/whatsnew/3.3.rst:51 msgid ":pep:`398` - Python 3.3 Release Schedule" msgstr "" #: ../Doc/whatsnew/3.3.rst:55 ../Doc/whatsnew/3.5.rst:58 #: ../Doc/whatsnew/3.6.rst:60 msgid "Summary -- Release highlights" msgstr "" #: ../Doc/whatsnew/3.3.rst:60 ../Doc/whatsnew/3.4.rst:80 #: ../Doc/whatsnew/3.5.rst:60 ../Doc/whatsnew/3.6.rst:65 msgid "New syntax features:" msgstr "" #: ../Doc/whatsnew/3.3.rst:62 msgid "" "New ``yield from`` expression for :ref:`generator delegation `." msgstr "" #: ../Doc/whatsnew/3.3.rst:63 msgid "The ``u'unicode'`` syntax is accepted again for :class:`str` objects." msgstr "" #: ../Doc/whatsnew/3.3.rst:65 ../Doc/whatsnew/3.4.rst:98 #: ../Doc/whatsnew/3.5.rst:67 msgid "New library modules:" msgstr "" #: ../Doc/whatsnew/3.3.rst:67 msgid ":mod:`faulthandler` (helps debugging low-level crashes)" msgstr "" #: ../Doc/whatsnew/3.3.rst:68 msgid "" ":mod:`ipaddress` (high-level objects representing IP addresses and masks)" msgstr "" #: ../Doc/whatsnew/3.3.rst:69 msgid ":mod:`lzma` (compress data using the XZ / LZMA algorithm)" msgstr "" #: ../Doc/whatsnew/3.3.rst:70 msgid "" ":mod:`unittest.mock` (replace parts of your system under test with mock " "objects)" msgstr "" #: ../Doc/whatsnew/3.3.rst:71 msgid "" ":mod:`venv` (Python :ref:`virtual environments `, as in the popular " "``virtualenv`` package)" msgstr "" #: ../Doc/whatsnew/3.3.rst:74 ../Doc/whatsnew/3.5.rst:74 #: ../Doc/whatsnew/3.6.rst:134 msgid "New built-in features:" msgstr "" #: ../Doc/whatsnew/3.3.rst:76 msgid "Reworked :ref:`I/O exception hierarchy `." msgstr "" #: ../Doc/whatsnew/3.3.rst:78 msgid "Implementation improvements:" msgstr "" #: ../Doc/whatsnew/3.3.rst:80 msgid "" "Rewritten :ref:`import machinery ` based on :mod:`importlib`." msgstr "" #: ../Doc/whatsnew/3.3.rst:81 msgid "More compact :ref:`unicode strings `." msgstr "" #: ../Doc/whatsnew/3.3.rst:82 msgid "More compact :ref:`attribute dictionaries `." msgstr "" #: ../Doc/whatsnew/3.3.rst:84 msgid "Significantly Improved Library Modules:" msgstr "" #: ../Doc/whatsnew/3.3.rst:86 msgid "C Accelerator for the :ref:`decimal ` module." msgstr "" #: ../Doc/whatsnew/3.3.rst:87 msgid "" "Better unicode handling in the :ref:`email ` module (:term:" "`provisional `)." msgstr "" #: ../Doc/whatsnew/3.3.rst:90 ../Doc/whatsnew/3.4.rst:132 #: ../Doc/whatsnew/3.5.rst:136 ../Doc/whatsnew/3.6.rst:83 msgid "Security improvements:" msgstr "" #: ../Doc/whatsnew/3.3.rst:92 msgid "Hash randomization is switched on by default." msgstr "" #: ../Doc/whatsnew/3.3.rst:94 msgid "Please read on for a comprehensive list of user-facing changes." msgstr "" #: ../Doc/whatsnew/3.3.rst:100 msgid "PEP 405: Virtual Environments" msgstr "" #: ../Doc/whatsnew/3.3.rst:102 msgid "" "Virtual environments help create separate Python setups while sharing a " "system-wide base install, for ease of maintenance. Virtual environments " "have their own set of private site packages (i.e. locally-installed " "libraries), and are optionally segregated from the system-wide site " "packages. Their concept and implementation are inspired by the popular " "``virtualenv`` third-party package, but benefit from tighter integration " "with the interpreter core." msgstr "" #: ../Doc/whatsnew/3.3.rst:110 msgid "" "This PEP adds the :mod:`venv` module for programmatic access, and the " "``pyvenv`` script for command-line access and administration. The Python " "interpreter checks for a ``pyvenv.cfg``, file whose existence signals the " "base of a virtual environment's directory tree." msgstr "" #: ../Doc/whatsnew/3.3.rst:118 msgid ":pep:`405` - Python Virtual Environments" msgstr "" #: ../Doc/whatsnew/3.3.rst:119 msgid "PEP written by Carl Meyer; implementation by Carl Meyer and Vinay Sajip" msgstr "" #: ../Doc/whatsnew/3.3.rst:123 msgid "PEP 420: Implicit Namespace Packages" msgstr "" #: ../Doc/whatsnew/3.3.rst:125 msgid "" "Native support for package directories that don't require ``__init__.py`` " "marker files and can automatically span multiple path segments (inspired by " "various third party approaches to namespace packages, as described in :pep:" "`420`)" msgstr "" #: ../Doc/whatsnew/3.3.rst:133 msgid ":pep:`420` - Implicit Namespace Packages" msgstr "" #: ../Doc/whatsnew/3.3.rst:133 msgid "" "PEP written by Eric V. Smith; implementation by Eric V. Smith and Barry " "Warsaw" msgstr "" #: ../Doc/whatsnew/3.3.rst:140 msgid "" "PEP 3118: New memoryview implementation and buffer protocol documentation" msgstr "" #: ../Doc/whatsnew/3.3.rst:142 msgid "The implementation of :pep:`3118` has been significantly improved." msgstr "" #: ../Doc/whatsnew/3.3.rst:144 msgid "" "The new memoryview implementation comprehensively fixes all ownership and " "lifetime issues of dynamically allocated fields in the Py_buffer struct that " "led to multiple crash reports. Additionally, several functions that crashed " "or returned incorrect results for non-contiguous or multi-dimensional input " "have been fixed." msgstr "" #: ../Doc/whatsnew/3.3.rst:150 msgid "" "The memoryview object now has a PEP-3118 compliant getbufferproc() that " "checks the consumer's request type. Many new features have been added, most " "of them work in full generality for non-contiguous arrays and arrays with " "suboffsets." msgstr "" #: ../Doc/whatsnew/3.3.rst:155 msgid "" "The documentation has been updated, clearly spelling out responsibilities " "for both exporters and consumers. Buffer request flags are grouped into " "basic and compound flags. The memory layout of non-contiguous and multi-" "dimensional NumPy-style arrays is explained." msgstr "" #: ../Doc/whatsnew/3.3.rst:161 ../Doc/whatsnew/3.3.rst:1122 msgid "Features" msgstr "" #: ../Doc/whatsnew/3.3.rst:163 msgid "" "All native single character format specifiers in struct module syntax " "(optionally prefixed with '@') are now supported." msgstr "" #: ../Doc/whatsnew/3.3.rst:166 msgid "" "With some restrictions, the cast() method allows changing of format and " "shape of C-contiguous arrays." msgstr "" #: ../Doc/whatsnew/3.3.rst:169 msgid "" "Multi-dimensional list representations are supported for any array type." msgstr "" #: ../Doc/whatsnew/3.3.rst:171 msgid "Multi-dimensional comparisons are supported for any array type." msgstr "" #: ../Doc/whatsnew/3.3.rst:173 msgid "" "One-dimensional memoryviews of hashable (read-only) types with formats B, b " "or c are now hashable. (Contributed by Antoine Pitrou in :issue:`13411`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:176 msgid "" "Arbitrary slicing of any 1-D arrays type is supported. For example, it is " "now possible to reverse a memoryview in O(1) by using a negative step." msgstr "" #: ../Doc/whatsnew/3.3.rst:180 ../Doc/whatsnew/3.3.rst:1132 msgid "API changes" msgstr "" #: ../Doc/whatsnew/3.3.rst:182 msgid "The maximum number of dimensions is officially limited to 64." msgstr "" #: ../Doc/whatsnew/3.3.rst:184 msgid "" "The representation of empty shape, strides and suboffsets is now an empty " "tuple instead of None." msgstr "" #: ../Doc/whatsnew/3.3.rst:187 msgid "" "Accessing a memoryview element with format 'B' (unsigned bytes) now returns " "an integer (in accordance with the struct module syntax). For returning a " "bytes object the view must be cast to 'c' first." msgstr "" #: ../Doc/whatsnew/3.3.rst:191 msgid "" "memoryview comparisons now use the logical structure of the operands and " "compare all array elements by value. All format strings in struct module " "syntax are supported. Views with unrecognised format strings are still " "permitted, but will always compare as unequal, regardless of view contents." msgstr "" #: ../Doc/whatsnew/3.3.rst:197 msgid "" "For further changes see `Build and C API Changes`_ and `Porting C code`_." msgstr "" #: ../Doc/whatsnew/3.3.rst:199 msgid "(Contributed by Stefan Krah in :issue:`10181`.)" msgstr "(Contribution par Stefan Krah; :issue:`10181`.)" #: ../Doc/whatsnew/3.3.rst:203 msgid ":pep:`3118` - Revising the Buffer Protocol" msgstr "" #: ../Doc/whatsnew/3.3.rst:209 msgid "PEP 393: Flexible String Representation" msgstr "" #: ../Doc/whatsnew/3.3.rst:211 msgid "" "The Unicode string type is changed to support multiple internal " "representations, depending on the character with the largest Unicode ordinal " "(1, 2, or 4 bytes) in the represented string. This allows a space-efficient " "representation in common cases, but gives access to full UCS-4 on all " "systems. For compatibility with existing APIs, several representations may " "exist in parallel; over time, this compatibility should be phased out." msgstr "" #: ../Doc/whatsnew/3.3.rst:218 msgid "On the Python side, there should be no downside to this change." msgstr "" #: ../Doc/whatsnew/3.3.rst:220 msgid "" "On the C API side, PEP 393 is fully backward compatible. The legacy API " "should remain available at least five years. Applications using the legacy " "API will not fully benefit of the memory reduction, or - worse - may use a " "bit more memory, because Python may have to maintain two versions of each " "string (in the legacy format and in the new efficient storage)." msgstr "" #: ../Doc/whatsnew/3.3.rst:227 msgid "Functionality" msgstr "" #: ../Doc/whatsnew/3.3.rst:229 msgid "Changes introduced by :pep:`393` are the following:" msgstr "" #: ../Doc/whatsnew/3.3.rst:231 msgid "" "Python now always supports the full range of Unicode code points, including " "non-BMP ones (i.e. from ``U+0000`` to ``U+10FFFF``). The distinction " "between narrow and wide builds no longer exists and Python now behaves like " "a wide build, even under Windows." msgstr "" #: ../Doc/whatsnew/3.3.rst:236 msgid "" "With the death of narrow builds, the problems specific to narrow builds have " "also been fixed, for example:" msgstr "" #: ../Doc/whatsnew/3.3.rst:239 msgid "" ":func:`len` now always returns 1 for non-BMP characters, so " "``len('\\U0010FFFF') == 1``;" msgstr "" #: ../Doc/whatsnew/3.3.rst:242 msgid "" "surrogate pairs are not recombined in string literals, so ``'\\uDBFF" "\\uDFFF' != '\\U0010FFFF'``;" msgstr "" #: ../Doc/whatsnew/3.3.rst:245 msgid "" "indexing or slicing non-BMP characters returns the expected value, so " "``'\\U0010FFFF'[0]`` now returns ``'\\U0010FFFF'`` and not ``'\\uDBFF'``;" msgstr "" #: ../Doc/whatsnew/3.3.rst:248 msgid "" "all other functions in the standard library now correctly handle non-BMP " "code points." msgstr "" #: ../Doc/whatsnew/3.3.rst:251 msgid "" "The value of :data:`sys.maxunicode` is now always ``1114111`` (``0x10FFFF`` " "in hexadecimal). The :c:func:`PyUnicode_GetMax` function still returns " "either ``0xFFFF`` or ``0x10FFFF`` for backward compatibility, and it should " "not be used with the new Unicode API (see :issue:`13054`)." msgstr "" #: ../Doc/whatsnew/3.3.rst:256 msgid "The :file:`./configure` flag ``--with-wide-unicode`` has been removed." msgstr "" #: ../Doc/whatsnew/3.3.rst:259 msgid "Performance and resource usage" msgstr "" #: ../Doc/whatsnew/3.3.rst:261 msgid "" "The storage of Unicode strings now depends on the highest code point in the " "string:" msgstr "" #: ../Doc/whatsnew/3.3.rst:263 msgid "" "pure ASCII and Latin1 strings (``U+0000-U+00FF``) use 1 byte per code point;" msgstr "" #: ../Doc/whatsnew/3.3.rst:265 msgid "BMP strings (``U+0000-U+FFFF``) use 2 bytes per code point;" msgstr "" #: ../Doc/whatsnew/3.3.rst:267 msgid "non-BMP strings (``U+10000-U+10FFFF``) use 4 bytes per code point." msgstr "" #: ../Doc/whatsnew/3.3.rst:269 msgid "" "The net effect is that for most applications, memory usage of string storage " "should decrease significantly - especially compared to former wide unicode " "builds - as, in many cases, strings will be pure ASCII even in international " "contexts (because many strings store non-human language data, such as XML " "fragments, HTTP headers, JSON-encoded data, etc.). We also hope that it " "will, for the same reasons, increase CPU cache efficiency on non-trivial " "applications. The memory usage of Python 3.3 is two to three times smaller " "than Python 3.2, and a little bit better than Python 2.7, on a Django " "benchmark (see the PEP for details)." msgstr "" #: ../Doc/whatsnew/3.3.rst:283 msgid ":pep:`393` - Flexible String Representation" msgstr "" #: ../Doc/whatsnew/3.3.rst:283 msgid "" "PEP written by Martin von Löwis; implementation by Torsten Becker and Martin " "von Löwis." msgstr "" #: ../Doc/whatsnew/3.3.rst:290 msgid "PEP 397: Python Launcher for Windows" msgstr "" #: ../Doc/whatsnew/3.3.rst:292 msgid "" "The Python 3.3 Windows installer now includes a ``py`` launcher application " "that can be used to launch Python applications in a version independent " "fashion." msgstr "" #: ../Doc/whatsnew/3.3.rst:296 msgid "" "This launcher is invoked implicitly when double-clicking ``*.py`` files. If " "only a single Python version is installed on the system, that version will " "be used to run the file. If multiple versions are installed, the most recent " "version is used by default, but this can be overridden by including a Unix-" "style \"shebang line\" in the Python script." msgstr "" #: ../Doc/whatsnew/3.3.rst:302 msgid "" "The launcher can also be used explicitly from the command line as the ``py`` " "application. Running ``py`` follows the same version selection rules as " "implicitly launching scripts, but a more specific version can be selected by " "passing appropriate arguments (such as ``-3`` to request Python 3 when " "Python 2 is also installed, or ``-2.6`` to specifclly request an earlier " "Python version when a more recent version is installed)." msgstr "" #: ../Doc/whatsnew/3.3.rst:309 msgid "" "In addition to the launcher, the Windows installer now includes an option to " "add the newly installed Python to the system PATH. (Contributed by Brian " "Curtin in :issue:`3561`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:317 msgid ":pep:`397` - Python Launcher for Windows" msgstr "" #: ../Doc/whatsnew/3.3.rst:316 msgid "" "PEP written by Mark Hammond and Martin v. Löwis; implementation by Vinay " "Sajip." msgstr "" #: ../Doc/whatsnew/3.3.rst:319 msgid "Launcher documentation: :ref:`launcher`" msgstr "" #: ../Doc/whatsnew/3.3.rst:321 msgid "Installer PATH modification: :ref:`windows-path-mod`" msgstr "" #: ../Doc/whatsnew/3.3.rst:327 msgid "PEP 3151: Reworking the OS and IO exception hierarchy" msgstr "" #: ../Doc/whatsnew/3.3.rst:329 msgid "" "The hierarchy of exceptions raised by operating system errors is now both " "simplified and finer-grained." msgstr "" #: ../Doc/whatsnew/3.3.rst:332 msgid "" "You don't have to worry anymore about choosing the appropriate exception " "type between :exc:`OSError`, :exc:`IOError`, :exc:`EnvironmentError`, :exc:" "`WindowsError`, :exc:`mmap.error`, :exc:`socket.error` or :exc:`select." "error`. All these exception types are now only one: :exc:`OSError`. The " "other names are kept as aliases for compatibility reasons." msgstr "" #: ../Doc/whatsnew/3.3.rst:339 msgid "" "Also, it is now easier to catch a specific error condition. Instead of " "inspecting the ``errno`` attribute (or ``args[0]``) for a particular " "constant from the :mod:`errno` module, you can catch the adequate :exc:" "`OSError` subclass. The available subclasses are the following:" msgstr "" #: ../Doc/whatsnew/3.3.rst:344 msgid ":exc:`BlockingIOError`" msgstr ":exc:`BlockingIOError`" #: ../Doc/whatsnew/3.3.rst:345 msgid ":exc:`ChildProcessError`" msgstr ":exc:`ChildProcessError`" #: ../Doc/whatsnew/3.3.rst:346 msgid ":exc:`ConnectionError`" msgstr ":exc:`ConnectionError`" #: ../Doc/whatsnew/3.3.rst:347 msgid ":exc:`FileExistsError`" msgstr ":exc:`FileExistsError`" #: ../Doc/whatsnew/3.3.rst:348 msgid ":exc:`FileNotFoundError`" msgstr ":exc:`FileNotFoundError`" #: ../Doc/whatsnew/3.3.rst:349 msgid ":exc:`InterruptedError`" msgstr ":exc:`InterruptedError`" #: ../Doc/whatsnew/3.3.rst:350 msgid ":exc:`IsADirectoryError`" msgstr ":exc:`IsADirectoryError`" #: ../Doc/whatsnew/3.3.rst:351 msgid ":exc:`NotADirectoryError`" msgstr ":exc:`NotADirectoryError`" #: ../Doc/whatsnew/3.3.rst:352 msgid ":exc:`PermissionError`" msgstr ":exc:`PermissionError`" #: ../Doc/whatsnew/3.3.rst:353 msgid ":exc:`ProcessLookupError`" msgstr ":exc:`ProcessLookupError`" #: ../Doc/whatsnew/3.3.rst:354 msgid ":exc:`TimeoutError`" msgstr ":exc:`TimeoutError`" #: ../Doc/whatsnew/3.3.rst:356 msgid "And the :exc:`ConnectionError` itself has finer-grained subclasses:" msgstr "" #: ../Doc/whatsnew/3.3.rst:358 msgid ":exc:`BrokenPipeError`" msgstr ":exc:`BrokenPipeError`" #: ../Doc/whatsnew/3.3.rst:359 msgid ":exc:`ConnectionAbortedError`" msgstr ":exc:`ConnectionAbortedError`" #: ../Doc/whatsnew/3.3.rst:360 msgid ":exc:`ConnectionRefusedError`" msgstr ":exc:`ConnectionRefusedError`" #: ../Doc/whatsnew/3.3.rst:361 msgid ":exc:`ConnectionResetError`" msgstr ":exc:`ConnectionResetError`" #: ../Doc/whatsnew/3.3.rst:363 msgid "" "Thanks to the new exceptions, common usages of the :mod:`errno` can now be " "avoided. For example, the following code written for Python 3.2::" msgstr "" #: ../Doc/whatsnew/3.3.rst:379 msgid "" "can now be written without the :mod:`errno` import and without manual " "inspection of exception attributes::" msgstr "" #: ../Doc/whatsnew/3.3.rst:392 msgid ":pep:`3151` - Reworking the OS and IO Exception Hierarchy" msgstr "" #: ../Doc/whatsnew/3.3.rst:393 msgid "PEP written and implemented by Antoine Pitrou" msgstr "" #: ../Doc/whatsnew/3.3.rst:402 msgid "PEP 380: Syntax for Delegating to a Subgenerator" msgstr "" #: ../Doc/whatsnew/3.3.rst:404 msgid "" "PEP 380 adds the ``yield from`` expression, allowing a :term:`generator` to " "delegate part of its operations to another generator. This allows a section " "of code containing :keyword:`yield` to be factored out and placed in another " "generator. Additionally, the subgenerator is allowed to return with a value, " "and the value is made available to the delegating generator." msgstr "" #: ../Doc/whatsnew/3.3.rst:411 msgid "" "While designed primarily for use in delegating to a subgenerator, the " "``yield from`` expression actually allows delegation to arbitrary " "subiterators." msgstr "" #: ../Doc/whatsnew/3.3.rst:414 msgid "" "For simple iterators, ``yield from iterable`` is essentially just a " "shortened form of ``for item in iterable: yield item``::" msgstr "" #: ../Doc/whatsnew/3.3.rst:424 msgid "" "However, unlike an ordinary loop, ``yield from`` allows subgenerators to " "receive sent and thrown values directly from the calling scope, and return a " "final value to the outer generator::" msgstr "" #: ../Doc/whatsnew/3.3.rst:455 msgid "" "The main principle driving this change is to allow even generators that are " "designed to be used with the ``send`` and ``throw`` methods to be split into " "multiple subgenerators as easily as a single large function can be split " "into multiple subfunctions." msgstr "" #: ../Doc/whatsnew/3.3.rst:464 msgid ":pep:`380` - Syntax for Delegating to a Subgenerator" msgstr "" #: ../Doc/whatsnew/3.3.rst:463 msgid "" "PEP written by Greg Ewing; implementation by Greg Ewing, integrated into 3.3 " "by Renaud Blanch, Ryan Kelly and Nick Coghlan; documentation by Zbigniew " "Jędrzejewski-Szmek and Nick Coghlan" msgstr "" #: ../Doc/whatsnew/3.3.rst:469 msgid "PEP 409: Suppressing exception context" msgstr "" #: ../Doc/whatsnew/3.3.rst:471 msgid "" "PEP 409 introduces new syntax that allows the display of the chained " "exception context to be disabled. This allows cleaner error messages in " "applications that convert between exception types::" msgstr "" #: ../Doc/whatsnew/3.3.rst:490 msgid "" "Without the ``from None`` suffix to suppress the cause, the original " "exception would be displayed by default::" msgstr "" #: ../Doc/whatsnew/3.3.rst:514 msgid "" "No debugging capability is lost, as the original exception context remains " "available if needed (for example, if an intervening library has incorrectly " "suppressed valuable underlying details)::" msgstr "" #: ../Doc/whatsnew/3.3.rst:528 msgid ":pep:`409` - Suppressing exception context" msgstr "" #: ../Doc/whatsnew/3.3.rst:528 msgid "" "PEP written by Ethan Furman; implemented by Ethan Furman and Nick Coghlan." msgstr "" #: ../Doc/whatsnew/3.3.rst:533 msgid "PEP 414: Explicit Unicode literals" msgstr "" #: ../Doc/whatsnew/3.3.rst:535 msgid "" "To ease the transition from Python 2 for Unicode aware Python applications " "that make heavy use of Unicode literals, Python 3.3 once again supports the " "\"``u``\" prefix for string literals. This prefix has no semantic " "significance in Python 3, it is provided solely to reduce the number of " "purely mechanical changes in migrating to Python 3, making it easier for " "developers to focus on the more significant semantic changes (such as the " "stricter default separation of binary and text data)." msgstr "" #: ../Doc/whatsnew/3.3.rst:545 msgid ":pep:`414` - Explicit Unicode literals" msgstr "" #: ../Doc/whatsnew/3.3.rst:546 msgid "PEP written by Armin Ronacher." msgstr "" #: ../Doc/whatsnew/3.3.rst:550 msgid "PEP 3155: Qualified name for classes and functions" msgstr "" #: ../Doc/whatsnew/3.3.rst:552 msgid "" "Functions and class objects have a new ``__qualname__`` attribute " "representing the \"path\" from the module top-level to their definition. " "For global functions and classes, this is the same as ``__name__``. For " "other functions and classes, it provides better information about where they " "were actually defined, and how they might be accessible from the global " "scope." msgstr "" #: ../Doc/whatsnew/3.3.rst:558 msgid "Example with (non-bound) methods::" msgstr "" #: ../Doc/whatsnew/3.3.rst:568 msgid "Example with nested classes::" msgstr "" #: ../Doc/whatsnew/3.3.rst:584 msgid "Example with nested functions::" msgstr "" #: ../Doc/whatsnew/3.3.rst:596 msgid "" "The string representation of those objects is also changed to include the " "new, more precise information::" msgstr "" #: ../Doc/whatsnew/3.3.rst:606 msgid ":pep:`3155` - Qualified name for classes and functions" msgstr "" #: ../Doc/whatsnew/3.3.rst:607 ../Doc/whatsnew/3.4.rst:539 #: ../Doc/whatsnew/3.4.rst:1835 msgid "PEP written and implemented by Antoine Pitrou." msgstr "" #: ../Doc/whatsnew/3.3.rst:613 msgid "PEP 412: Key-Sharing Dictionary" msgstr "" #: ../Doc/whatsnew/3.3.rst:615 msgid "" "Dictionaries used for the storage of objects' attributes are now able to " "share part of their internal storage between each other (namely, the part " "which stores the keys and their respective hashes). This reduces the memory " "consumption of programs creating many instances of non-builtin types." msgstr "" #: ../Doc/whatsnew/3.3.rst:622 msgid ":pep:`412` - Key-Sharing Dictionary" msgstr "" #: ../Doc/whatsnew/3.3.rst:623 msgid "PEP written and implemented by Mark Shannon." msgstr "" #: ../Doc/whatsnew/3.3.rst:627 msgid "PEP 362: Function Signature Object" msgstr "" #: ../Doc/whatsnew/3.3.rst:629 msgid "" "A new function :func:`inspect.signature` makes introspection of python " "callables easy and straightforward. A broad range of callables is " "supported: python functions, decorated or not, classes, and :func:`functools." "partial` objects. New classes :class:`inspect.Signature`, :class:`inspect." "Parameter` and :class:`inspect.BoundArguments` hold information about the " "call signatures, such as, annotations, default values, parameters kinds, and " "bound arguments, which considerably simplifies writing decorators and any " "code that validates or amends calling signatures or arguments." msgstr "" #: ../Doc/whatsnew/3.3.rst:641 msgid ":pep:`362`: - Function Signature Object" msgstr "" #: ../Doc/whatsnew/3.3.rst:641 msgid "" "PEP written by Brett Cannon, Yury Selivanov, Larry Hastings, Jiwon Seo; " "implemented by Yury Selivanov." msgstr "" #: ../Doc/whatsnew/3.3.rst:646 msgid "PEP 421: Adding sys.implementation" msgstr "" #: ../Doc/whatsnew/3.3.rst:648 msgid "" "A new attribute on the :mod:`sys` module exposes details specific to the " "implementation of the currently running interpreter. The initial set of " "attributes on :attr:`sys.implementation` are ``name``, ``version``, " "``hexversion``, and ``cache_tag``." msgstr "" #: ../Doc/whatsnew/3.3.rst:653 msgid "" "The intention of ``sys.implementation`` is to consolidate into one namespace " "the implementation-specific data used by the standard library. This allows " "different Python implementations to share a single standard library code " "base much more easily. In its initial state, ``sys.implementation`` holds " "only a small portion of the implementation-specific data. Over time that " "ratio will shift in order to make the standard library more portable." msgstr "" #: ../Doc/whatsnew/3.3.rst:660 msgid "" "One example of improved standard library portability is ``cache_tag``. As " "of Python 3.3, ``sys.implementation.cache_tag`` is used by :mod:`importlib` " "to support :pep:`3147` compliance. Any Python implementation that uses " "``importlib`` for its built-in import system may use ``cache_tag`` to " "control the caching behavior for modules." msgstr "" #: ../Doc/whatsnew/3.3.rst:667 msgid "SimpleNamespace" msgstr "" #: ../Doc/whatsnew/3.3.rst:669 msgid "" "The implementation of ``sys.implementation`` also introduces a new type to " "Python: :class:`types.SimpleNamespace`. In contrast to a mapping-based " "namespace, like :class:`dict`, ``SimpleNamespace`` is attribute-based, like :" "class:`object`. However, unlike ``object``, ``SimpleNamespace`` instances " "are writable. This means that you can add, remove, and modify the namespace " "through normal attribute access." msgstr "" #: ../Doc/whatsnew/3.3.rst:678 msgid ":pep:`421` - Adding sys.implementation" msgstr "" #: ../Doc/whatsnew/3.3.rst:679 ../Doc/whatsnew/3.6.rst:516 #: ../Doc/whatsnew/3.6.rst:530 msgid "PEP written and implemented by Eric Snow." msgstr "" #: ../Doc/whatsnew/3.3.rst:685 msgid "Using importlib as the Implementation of Import" msgstr "" #: ../Doc/whatsnew/3.3.rst:686 msgid "" ":issue:`2377` - Replace __import__ w/ importlib.__import__ :issue:`13959` - " "Re-implement parts of :mod:`imp` in pure Python :issue:`14605` - Make import " "machinery explicit :issue:`14646` - Require loaders set __loader__ and " "__package__" msgstr "" #: ../Doc/whatsnew/3.3.rst:691 msgid "" "The :func:`__import__` function is now powered by :func:`importlib." "__import__`. This work leads to the completion of \"phase 2\" of :pep:`302`. " "There are multiple benefits to this change. First, it has allowed for more " "of the machinery powering import to be exposed instead of being implicit and " "hidden within the C code. It also provides a single implementation for all " "Python VMs supporting Python 3.3 to use, helping to end any VM-specific " "deviations in import semantics. And finally it eases the maintenance of " "import, allowing for future growth to occur." msgstr "" #: ../Doc/whatsnew/3.3.rst:700 msgid "" "For the common user, there should be no visible change in semantics. For " "those whose code currently manipulates import or calls import " "programmatically, the code changes that might possibly be required are " "covered in the `Porting Python code`_ section of this document." msgstr "" #: ../Doc/whatsnew/3.3.rst:706 msgid "New APIs" msgstr "" #: ../Doc/whatsnew/3.3.rst:707 msgid "" "One of the large benefits of this work is the exposure of what goes into " "making the import statement work. That means the various importers that were " "once implicit are now fully exposed as part of the :mod:`importlib` package." msgstr "" #: ../Doc/whatsnew/3.3.rst:711 msgid "" "The abstract base classes defined in :mod:`importlib.abc` have been expanded " "to properly delineate between :term:`meta path finders ` " "and :term:`path entry finders ` by introducing :class:" "`importlib.abc.MetaPathFinder` and :class:`importlib.abc.PathEntryFinder`, " "respectively. The old ABC of :class:`importlib.abc.Finder` is now only " "provided for backwards-compatibility and does not enforce any method " "requirements." msgstr "" #: ../Doc/whatsnew/3.3.rst:719 msgid "" "In terms of finders, :class:`importlib.machinery.FileFinder` exposes the " "mechanism used to search for source and bytecode files of a module. " "Previously this class was an implicit member of :attr:`sys.path_hooks`." msgstr "" #: ../Doc/whatsnew/3.3.rst:723 msgid "" "For loaders, the new abstract base class :class:`importlib.abc.FileLoader` " "helps write a loader that uses the file system as the storage mechanism for " "a module's code. The loader for source files (:class:`importlib.machinery." "SourceFileLoader`), sourceless bytecode files (:class:`importlib.machinery." "SourcelessFileLoader`), and extension modules (:class:`importlib.machinery." "ExtensionFileLoader`) are now available for direct use." msgstr "" #: ../Doc/whatsnew/3.3.rst:731 msgid "" ":exc:`ImportError` now has ``name`` and ``path`` attributes which are set " "when there is relevant data to provide. The message for failed imports will " "also provide the full name of the module now instead of just the tail end of " "the module's name." msgstr "" #: ../Doc/whatsnew/3.3.rst:736 msgid "" "The :func:`importlib.invalidate_caches` function will now call the method " "with the same name on all finders cached in :attr:`sys.path_importer_cache` " "to help clean up any stored state as necessary." msgstr "" #: ../Doc/whatsnew/3.3.rst:741 msgid "Visible Changes" msgstr "" #: ../Doc/whatsnew/3.3.rst:743 msgid "" "For potential required changes to code, see the `Porting Python code`_ " "section." msgstr "" #: ../Doc/whatsnew/3.3.rst:746 msgid "" "Beyond the expanse of what :mod:`importlib` now exposes, there are other " "visible changes to import. The biggest is that :attr:`sys.meta_path` and :" "attr:`sys.path_hooks` now store all of the meta path finders and path entry " "hooks used by import. Previously the finders were implicit and hidden " "within the C code of import instead of being directly exposed. This means " "that one can now easily remove or change the order of the various finders to " "fit one's needs." msgstr "" #: ../Doc/whatsnew/3.3.rst:753 msgid "" "Another change is that all modules have a ``__loader__`` attribute, storing " "the loader used to create the module. :pep:`302` has been updated to make " "this attribute mandatory for loaders to implement, so in the future once 3rd-" "party loaders have been updated people will be able to rely on the existence " "of the attribute. Until such time, though, import is setting the module post-" "load." msgstr "" #: ../Doc/whatsnew/3.3.rst:759 msgid "" "Loaders are also now expected to set the ``__package__`` attribute from :pep:" "`366`. Once again, import itself is already setting this on all loaders " "from :mod:`importlib` and import itself is setting the attribute post-load." msgstr "" #: ../Doc/whatsnew/3.3.rst:763 msgid "" "``None`` is now inserted into :attr:`sys.path_importer_cache` when no finder " "can be found on :attr:`sys.path_hooks`. Since :class:`imp.NullImporter` is " "not directly exposed on :attr:`sys.path_hooks` it could no longer be relied " "upon to always be available to use as a value representing no finder found." msgstr "" #: ../Doc/whatsnew/3.3.rst:768 msgid "" "All other changes relate to semantic changes which should be taken into " "consideration when updating code for Python 3.3, and thus should be read " "about in the `Porting Python code`_ section of this document." msgstr "" #: ../Doc/whatsnew/3.3.rst:772 msgid "(Implementation by Brett Cannon)" msgstr "" #: ../Doc/whatsnew/3.3.rst:780 msgid "" "Added support for Unicode name aliases and named sequences. Both :func:" "`unicodedata.lookup()` and ``'\\N{...}'`` now resolve name aliases, and :" "func:`unicodedata.lookup()` resolves named sequences too." msgstr "" #: ../Doc/whatsnew/3.3.rst:784 msgid "(Contributed by Ezio Melotti in :issue:`12753`.)" msgstr "(Contribution par Ezio Melotti; :issue:`12753`.)" #: ../Doc/whatsnew/3.3.rst:786 msgid "Unicode database updated to UCD version 6.1.0" msgstr "" #: ../Doc/whatsnew/3.3.rst:788 msgid "" "Equality comparisons on :func:`range` objects now return a result reflecting " "the equality of the underlying sequences generated by those range objects. (:" "issue:`13201`)" msgstr "" #: ../Doc/whatsnew/3.3.rst:792 msgid "" "The ``count()``, ``find()``, ``rfind()``, ``index()`` and ``rindex()`` " "methods of :class:`bytes` and :class:`bytearray` objects now accept an " "integer between 0 and 255 as their first argument." msgstr "" #: ../Doc/whatsnew/3.3.rst:796 msgid "(Contributed by Petri Lehtinen in :issue:`12170`.)" msgstr "(Contribution par Petri Lehtinen; :issue:`12170`.)" #: ../Doc/whatsnew/3.3.rst:798 msgid "" "The ``rjust()``, ``ljust()``, and ``center()`` methods of :class:`bytes` " "and :class:`bytearray` now accept a :class:`bytearray` for the ``fill`` " "argument. (Contributed by Petri Lehtinen in :issue:`12380`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:802 msgid "" "New methods have been added to :class:`list` and :class:`bytearray`: " "``copy()`` and ``clear()`` (:issue:`10516`). Consequently, :class:" "`~collections.abc.MutableSequence` now also defines a :meth:`~collections." "abc.MutableSequence.clear` method (:issue:`11388`)." msgstr "" #: ../Doc/whatsnew/3.3.rst:807 msgid "" "Raw bytes literals can now be written ``rb\"...\"`` as well as ``br\"...\"``." msgstr "" #: ../Doc/whatsnew/3.3.rst:809 msgid "(Contributed by Antoine Pitrou in :issue:`13748`.)" msgstr "(Contribution par Antoine Pitrou; :issue:`13748`.)" #: ../Doc/whatsnew/3.3.rst:811 msgid "" ":meth:`dict.setdefault` now does only one lookup for the given key, making " "it atomic when used with built-in types." msgstr "" #: ../Doc/whatsnew/3.3.rst:814 msgid "(Contributed by Filip Gruszczyński in :issue:`13521`.)" msgstr "(Contribution par Filip Gruszczyński; :issue:`13521`.)" #: ../Doc/whatsnew/3.3.rst:816 msgid "" "The error messages produced when a function call does not match the function " "signature have been significantly improved." msgstr "" #: ../Doc/whatsnew/3.3.rst:819 msgid "(Contributed by Benjamin Peterson.)" msgstr "(Contribution par Benjamin Peterson)" #: ../Doc/whatsnew/3.3.rst:823 msgid "A Finer-Grained Import Lock" msgstr "" #: ../Doc/whatsnew/3.3.rst:825 msgid "" "Previous versions of CPython have always relied on a global import lock. " "This led to unexpected annoyances, such as deadlocks when importing a module " "would trigger code execution in a different thread as a side-effect. Clumsy " "workarounds were sometimes employed, such as the :c:func:" "`PyImport_ImportModuleNoBlock` C API function." msgstr "" #: ../Doc/whatsnew/3.3.rst:831 msgid "" "In Python 3.3, importing a module takes a per-module lock. This correctly " "serializes importation of a given module from multiple threads (preventing " "the exposure of incompletely initialized modules), while eliminating the " "aforementioned annoyances." msgstr "" #: ../Doc/whatsnew/3.3.rst:836 msgid "(Contributed by Antoine Pitrou in :issue:`9260`.)" msgstr "(Contribution par Antoine Pitrou; :issue:`9260`.)" #: ../Doc/whatsnew/3.3.rst:840 msgid "Builtin functions and types" msgstr "" #: ../Doc/whatsnew/3.3.rst:842 msgid "" ":func:`open` gets a new *opener* parameter: the underlying file descriptor " "for the file object is then obtained by calling *opener* with (*file*, " "*flags*). It can be used to use custom flags like :data:`os.O_CLOEXEC` for " "example. The ``'x'`` mode was added: open for exclusive creation, failing if " "the file already exists." msgstr "" #: ../Doc/whatsnew/3.3.rst:847 msgid "" ":func:`print`: added the *flush* keyword argument. If the *flush* keyword " "argument is true, the stream is forcibly flushed." msgstr "" #: ../Doc/whatsnew/3.3.rst:849 msgid "" ":func:`hash`: hash randomization is enabled by default, see :meth:`object." "__hash__` and :envvar:`PYTHONHASHSEED`." msgstr "" #: ../Doc/whatsnew/3.3.rst:851 msgid "" "The :class:`str` type gets a new :meth:`~str.casefold` method: return a " "casefolded copy of the string, casefolded strings may be used for caseless " "matching. For example, ``'ß'.casefold()`` returns ``'ss'``." msgstr "" #: ../Doc/whatsnew/3.3.rst:854 msgid "" "The sequence documentation has been substantially rewritten to better " "explain the binary/text sequence distinction and to provide specific " "documentation sections for the individual builtin sequence types (:issue:" "`4966`)." msgstr "" #: ../Doc/whatsnew/3.3.rst:861 ../Doc/whatsnew/3.4.rst:458 #: ../Doc/whatsnew/3.5.rst:724 ../Doc/whatsnew/3.6.rst:578 msgid "New Modules" msgstr "" #: ../Doc/whatsnew/3.3.rst:864 ../Doc/whatsnew/3.5.rst:1138 #: ../Doc/whatsnew/3.6.rst:707 msgid "faulthandler" msgstr "" #: ../Doc/whatsnew/3.3.rst:866 msgid "" "This new debug module :mod:`faulthandler` contains functions to dump Python " "tracebacks explicitly, on a fault (a crash like a segmentation fault), after " "a timeout, or on a user signal. Call :func:`faulthandler.enable` to install " "fault handlers for the :const:`SIGSEGV`, :const:`SIGFPE`, :const:`SIGABRT`, :" "const:`SIGBUS`, and :const:`SIGILL` signals. You can also enable them at " "startup by setting the :envvar:`PYTHONFAULTHANDLER` environment variable or " "by using :option:`-X` ``faulthandler`` command line option." msgstr "" #: ../Doc/whatsnew/3.3.rst:874 msgid "Example of a segmentation fault on Linux:" msgstr "" #: ../Doc/whatsnew/3.3.rst:890 ../Doc/whatsnew/3.4.rst:1059 #: ../Doc/whatsnew/3.5.rst:1336 msgid "ipaddress" msgstr "" #: ../Doc/whatsnew/3.3.rst:892 msgid "" "The new :mod:`ipaddress` module provides tools for creating and manipulating " "objects representing IPv4 and IPv6 addresses, networks and interfaces (i.e. " "an IP address associated with a specific IP subnet)." msgstr "" #: ../Doc/whatsnew/3.3.rst:896 msgid "(Contributed by Google and Peter Moody in :pep:`3144`.)" msgstr "(Contribution par Google et Peter Moody; :pep:`3144`)" #: ../Doc/whatsnew/3.3.rst:899 ../Doc/whatsnew/3.5.rst:1437 msgid "lzma" msgstr "" #: ../Doc/whatsnew/3.3.rst:901 msgid "" "The newly-added :mod:`lzma` module provides data compression and " "decompression using the LZMA algorithm, including support for the ``.xz`` " "and ``.lzma`` file formats." msgstr "" #: ../Doc/whatsnew/3.3.rst:905 msgid "(Contributed by Nadeem Vawda and Per Øyvind Karlsen in :issue:`6715`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:909 ../Doc/whatsnew/3.4.rst:589 #: ../Doc/whatsnew/3.5.rst:761 ../Doc/whatsnew/3.6.rst:584 msgid "Improved Modules" msgstr "" #: ../Doc/whatsnew/3.3.rst:914 msgid "" "Improved support for abstract base classes containing descriptors composed " "with abstract methods. The recommended approach to declaring abstract " "descriptors is now to provide :attr:`__isabstractmethod__` as a dynamically " "updated property. The built-in descriptors have been updated accordingly." msgstr "" #: ../Doc/whatsnew/3.3.rst:919 ../Doc/whatsnew/3.3.rst:2245 msgid "" ":class:`abc.abstractproperty` has been deprecated, use :class:`property` " "with :func:`abc.abstractmethod` instead." msgstr "" #: ../Doc/whatsnew/3.3.rst:921 ../Doc/whatsnew/3.3.rst:2247 msgid "" ":class:`abc.abstractclassmethod` has been deprecated, use :class:" "`classmethod` with :func:`abc.abstractmethod` instead." msgstr "" #: ../Doc/whatsnew/3.3.rst:923 ../Doc/whatsnew/3.3.rst:2249 msgid "" ":class:`abc.abstractstaticmethod` has been deprecated, use :class:" "`staticmethod` with :func:`abc.abstractmethod` instead." msgstr "" #: ../Doc/whatsnew/3.3.rst:926 msgid "(Contributed by Darren Dale in :issue:`11610`.)" msgstr "(Contribution par Darren Dale; :issue:`11610`.)" #: ../Doc/whatsnew/3.3.rst:928 msgid "" ":meth:`abc.ABCMeta.register` now returns the registered subclass, which " "means it can now be used as a class decorator (:issue:`10868`)." msgstr "" #: ../Doc/whatsnew/3.3.rst:933 msgid "array" msgstr "array" #: ../Doc/whatsnew/3.3.rst:935 msgid "" "The :mod:`array` module supports the :c:type:`long long` type using ``q`` " "and ``Q`` type codes." msgstr "" #: ../Doc/whatsnew/3.3.rst:938 msgid "(Contributed by Oren Tirosh and Hirokazu Yamamoto in :issue:`1172711`.)" msgstr "(Contribution par Oren Tirosh et Hirokazu Yamamoto; :issue:`1172711`.)" #: ../Doc/whatsnew/3.3.rst:942 ../Doc/whatsnew/3.4.rst:645 msgid "base64" msgstr "base64" #: ../Doc/whatsnew/3.3.rst:944 msgid "" "ASCII-only Unicode strings are now accepted by the decoding functions of " "the :mod:`base64` modern interface. For example, ``base64." "b64decode('YWJj')`` returns ``b'abc'``. (Contributed by Catalin Iacob in :" "issue:`13641`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:950 msgid "binascii" msgstr "binascii" #: ../Doc/whatsnew/3.3.rst:952 msgid "" "In addition to the binary objects they normally accept, the ``a2b_`` " "functions now all also accept ASCII-only strings as input. (Contributed by " "Antoine Pitrou in :issue:`13637`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:958 ../Doc/whatsnew/3.5.rst:871 msgid "bz2" msgstr "bz2" #: ../Doc/whatsnew/3.3.rst:960 msgid "" "The :mod:`bz2` module has been rewritten from scratch. In the process, " "several new features have been added:" msgstr "" #: ../Doc/whatsnew/3.3.rst:963 msgid "" "New :func:`bz2.open` function: open a bzip2-compressed file in binary or " "text mode." msgstr "" #: ../Doc/whatsnew/3.3.rst:966 msgid "" ":class:`bz2.BZ2File` can now read from and write to arbitrary file-like " "objects, by means of its constructor's *fileobj* argument." msgstr "" #: ../Doc/whatsnew/3.3.rst:969 msgid "(Contributed by Nadeem Vawda in :issue:`5863`.)" msgstr "(Contribution par Nadeem Vawda; :issue:`5863`.)" #: ../Doc/whatsnew/3.3.rst:971 msgid "" ":class:`bz2.BZ2File` and :func:`bz2.decompress` can now decompress multi-" "stream inputs (such as those produced by the :program:`pbzip2` tool). :class:" "`bz2.BZ2File` can now also be used to create this type of file, using the " "``'a'`` (append) mode." msgstr "" #: ../Doc/whatsnew/3.3.rst:976 msgid "(Contributed by Nir Aides in :issue:`1625`.)" msgstr "(Contribution par Nir Aides; :issue:`1625`.)" #: ../Doc/whatsnew/3.3.rst:978 msgid "" ":class:`bz2.BZ2File` now implements all of the :class:`io.BufferedIOBase` " "API, except for the :meth:`detach` and :meth:`truncate` methods." msgstr "" #: ../Doc/whatsnew/3.3.rst:983 msgid "codecs" msgstr "" #: ../Doc/whatsnew/3.3.rst:985 msgid "" "The :mod:`~encodings.mbcs` codec has been rewritten to handle correctly " "``replace`` and ``ignore`` error handlers on all Windows versions. The :mod:" "`~encodings.mbcs` codec now supports all error handlers, instead of only " "``replace`` to encode and ``ignore`` to decode." msgstr "" #: ../Doc/whatsnew/3.3.rst:990 msgid "" "A new Windows-only codec has been added: ``cp65001`` (:issue:`13216`). It is " "the Windows code page 65001 (Windows UTF-8, ``CP_UTF8``). For example, it " "is used by ``sys.stdout`` if the console output code page is set to cp65001 " "(e.g., using ``chcp 65001`` command)." msgstr "" #: ../Doc/whatsnew/3.3.rst:995 msgid "" "Multibyte CJK decoders now resynchronize faster. They only ignore the first " "byte of an invalid byte sequence. For example, ``b'\\xff\\n'." "decode('gb2312', 'replace')`` now returns a ``\\n`` after the replacement " "character." msgstr "" #: ../Doc/whatsnew/3.3.rst:999 msgid "(:issue:`12016`)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1001 msgid "" "Incremental CJK codec encoders are no longer reset at each call to their " "encode() methods. For example::" msgstr "" #: ../Doc/whatsnew/3.3.rst:1009 msgid "" "This example gives ``b'~{Np~}~{J)~}~{l6~}~{HK~}~{!#~} Bye.'`` with older " "Python versions." msgstr "" #: ../Doc/whatsnew/3.3.rst:1012 msgid "(:issue:`12100`)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1014 msgid "The ``unicode_internal`` codec has been deprecated." msgstr "" #: ../Doc/whatsnew/3.3.rst:1020 msgid "" "Addition of a new :class:`~collections.ChainMap` class to allow treating a " "number of mappings as a single unit. (Written by Raymond Hettinger for :" "issue:`11089`, made public in :issue:`11297`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1024 msgid "" "The abstract base classes have been moved in a new :mod:`collections.abc` " "module, to better differentiate between the abstract and the concrete " "collections classes. Aliases for ABCs are still present in the :mod:" "`collections` module to preserve existing imports. (:issue:`11085`)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1031 msgid "" "The :class:`~collections.Counter` class now supports the unary ``+`` and ``-" "`` operators, as well as the in-place operators ``+=``, ``-=``, ``|=``, and " "``&=``. (Contributed by Raymond Hettinger in :issue:`13121`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1039 msgid "" ":class:`~contextlib.ExitStack` now provides a solid foundation for " "programmatic manipulation of context managers and similar cleanup " "functionality. Unlike the previous ``contextlib.nested`` API (which was " "deprecated and removed), the new API is designed to work correctly " "regardless of whether context managers acquire their resources in their " "``__init__`` method (for example, file objects) or in their ``__enter__`` " "method (for example, synchronisation objects from the :mod:`threading` " "module)." msgstr "" #: ../Doc/whatsnew/3.3.rst:1048 msgid "(:issue:`13585`)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1052 msgid "crypt" msgstr "crypt" #: ../Doc/whatsnew/3.3.rst:1054 msgid "" "Addition of salt and modular crypt format (hashing method) and the :func:" "`~crypt.mksalt` function to the :mod:`crypt` module." msgstr "" #: ../Doc/whatsnew/3.3.rst:1057 msgid "(:issue:`10924`)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1060 ../Doc/whatsnew/3.5.rst:1046 msgid "curses" msgstr "curses" #: ../Doc/whatsnew/3.3.rst:1062 msgid "" "If the :mod:`curses` module is linked to the ncursesw library, use Unicode " "functions when Unicode strings or characters are passed (e.g. :c:func:" "`waddwstr`), and bytes functions otherwise (e.g. :c:func:`waddstr`)." msgstr "" #: ../Doc/whatsnew/3.3.rst:1065 msgid "Use the locale encoding instead of ``utf-8`` to encode Unicode strings." msgstr "" #: ../Doc/whatsnew/3.3.rst:1066 msgid "" ":class:`curses.window` has a new :attr:`curses.window.encoding` attribute." msgstr "" #: ../Doc/whatsnew/3.3.rst:1067 msgid "" "The :class:`curses.window` class has a new :meth:`~curses.window.get_wch` " "method to get a wide character" msgstr "" #: ../Doc/whatsnew/3.3.rst:1069 msgid "" "The :mod:`curses` module has a new :meth:`~curses.unget_wch` function to " "push a wide character so the next :meth:`~curses.window.get_wch` will return " "it" msgstr "" #: ../Doc/whatsnew/3.3.rst:1073 msgid "(Contributed by Iñigo Serna in :issue:`6755`.)" msgstr "(Contribution par Iñigo Serna; :issue:`6755`.)" #: ../Doc/whatsnew/3.3.rst:1076 ../Doc/whatsnew/3.6.rst:659 msgid "datetime" msgstr "datetime" #: ../Doc/whatsnew/3.3.rst:1078 msgid "" "Equality comparisons between naive and aware :class:`~datetime.datetime` " "instances now return :const:`False` instead of raising :exc:`TypeError` (:" "issue:`15006`)." msgstr "" #: ../Doc/whatsnew/3.3.rst:1081 msgid "" "New :meth:`datetime.datetime.timestamp` method: Return POSIX timestamp " "corresponding to the :class:`~datetime.datetime` instance." msgstr "" #: ../Doc/whatsnew/3.3.rst:1083 msgid "" "The :meth:`datetime.datetime.strftime` method supports formatting years " "older than 1000." msgstr "" #: ../Doc/whatsnew/3.3.rst:1085 msgid "" "The :meth:`datetime.datetime.astimezone` method can now be called without " "arguments to convert datetime instance to the system timezone." msgstr "" #: ../Doc/whatsnew/3.3.rst:1093 msgid "decimal" msgstr "" #: ../Doc/whatsnew/3.3.rst:1096 msgid ":issue:`7652` - integrate fast native decimal arithmetic." msgstr "" #: ../Doc/whatsnew/3.3.rst:1096 msgid "C-module and libmpdec written by Stefan Krah." msgstr "" #: ../Doc/whatsnew/3.3.rst:1098 msgid "" "The new C version of the decimal module integrates the high speed libmpdec " "library for arbitrary precision correctly-rounded decimal floating point " "arithmetic. libmpdec conforms to IBM's General Decimal Arithmetic " "Specification." msgstr "" #: ../Doc/whatsnew/3.3.rst:1102 msgid "" "Performance gains range from 10x for database applications to 100x for " "numerically intensive applications. These numbers are expected gains for " "standard precisions used in decimal floating point arithmetic. Since the " "precision is user configurable, the exact figures may vary. For example, in " "integer bignum arithmetic the differences can be significantly higher." msgstr "" #: ../Doc/whatsnew/3.3.rst:1108 msgid "" "The following table is meant as an illustration. Benchmarks are available at " "http://www.bytereef.org/mpdecimal/quickstart.html." msgstr "" #: ../Doc/whatsnew/3.3.rst:1112 msgid "decimal.py" msgstr "decimal.py" #: ../Doc/whatsnew/3.3.rst:1112 msgid "_decimal" msgstr "" #: ../Doc/whatsnew/3.3.rst:1112 msgid "speedup" msgstr "" #: ../Doc/whatsnew/3.3.rst:1114 msgid "pi" msgstr "" #: ../Doc/whatsnew/3.3.rst:1114 msgid "42.02s" msgstr "" #: ../Doc/whatsnew/3.3.rst:1114 msgid "0.345s" msgstr "" #: ../Doc/whatsnew/3.3.rst:1114 msgid "120x" msgstr "120x" #: ../Doc/whatsnew/3.3.rst:1116 msgid "telco" msgstr "" #: ../Doc/whatsnew/3.3.rst:1116 msgid "172.19s" msgstr "" #: ../Doc/whatsnew/3.3.rst:1116 msgid "5.68s" msgstr "" #: ../Doc/whatsnew/3.3.rst:1116 msgid "30x" msgstr "30x" #: ../Doc/whatsnew/3.3.rst:1118 msgid "psycopg" msgstr "" #: ../Doc/whatsnew/3.3.rst:1118 msgid "3.57s" msgstr "" #: ../Doc/whatsnew/3.3.rst:1118 msgid "0.29s" msgstr "" #: ../Doc/whatsnew/3.3.rst:1118 msgid "12x" msgstr "12x" #: ../Doc/whatsnew/3.3.rst:1124 msgid "" "The :exc:`~decimal.FloatOperation` signal optionally enables stricter " "semantics for mixing floats and Decimals." msgstr "" #: ../Doc/whatsnew/3.3.rst:1127 msgid "" "If Python is compiled without threads, the C version automatically disables " "the expensive thread local context machinery. In this case, the variable :" "data:`~decimal.HAVE_THREADS` is set to ``False``." msgstr "" #: ../Doc/whatsnew/3.3.rst:1134 msgid "" "The C module has the following context limits, depending on the machine " "architecture:" msgstr "" #: ../Doc/whatsnew/3.3.rst:1138 msgid "32-bit" msgstr "32-bit" #: ../Doc/whatsnew/3.3.rst:1138 msgid "64-bit" msgstr "64-bit" #: ../Doc/whatsnew/3.3.rst:1140 msgid ":const:`MAX_PREC`" msgstr ":const:`MAX_PREC`" #: ../Doc/whatsnew/3.3.rst:1140 ../Doc/whatsnew/3.3.rst:1142 msgid ":const:`425000000`" msgstr ":const:`425000000`" #: ../Doc/whatsnew/3.3.rst:1140 ../Doc/whatsnew/3.3.rst:1142 msgid ":const:`999999999999999999`" msgstr ":const:`999999999999999999`" #: ../Doc/whatsnew/3.3.rst:1142 msgid ":const:`MAX_EMAX`" msgstr ":const:`MAX_EMAX`" #: ../Doc/whatsnew/3.3.rst:1144 msgid ":const:`MIN_EMIN`" msgstr ":const:`MIN_EMIN`" #: ../Doc/whatsnew/3.3.rst:1144 msgid ":const:`-425000000`" msgstr ":const:`-425000000`" #: ../Doc/whatsnew/3.3.rst:1144 msgid ":const:`-999999999999999999`" msgstr ":const:`-999999999999999999`" #: ../Doc/whatsnew/3.3.rst:1147 msgid "" "In the context templates (:class:`~decimal.DefaultContext`, :class:`~decimal." "BasicContext` and :class:`~decimal.ExtendedContext`) the magnitude of :attr:" "`~decimal.Context.Emax` and :attr:`~decimal.Context.Emin` has changed to :" "const:`999999`." msgstr "" #: ../Doc/whatsnew/3.3.rst:1152 msgid "" "The :class:`~decimal.Decimal` constructor in decimal.py does not observe the " "context limits and converts values with arbitrary exponents or precision " "exactly. Since the C version has internal limits, the following scheme is " "used: If possible, values are converted exactly, otherwise :exc:`~decimal." "InvalidOperation` is raised and the result is NaN. In the latter case it is " "always possible to use :meth:`~decimal.Context.create_decimal` in order to " "obtain a rounded or inexact value." msgstr "" #: ../Doc/whatsnew/3.3.rst:1161 msgid "" "The power function in decimal.py is always correctly-rounded. In the C " "version, it is defined in terms of the correctly-rounded :meth:`~decimal." "Decimal.exp` and :meth:`~decimal.Decimal.ln` functions, but the final result " "is only \"almost always correctly rounded\"." msgstr "" #: ../Doc/whatsnew/3.3.rst:1167 msgid "" "In the C version, the context dictionary containing the signals is a :class:" "`~collections.abc.MutableMapping`. For speed reasons, :attr:`~decimal." "Context.flags` and :attr:`~decimal.Context.traps` always refer to the same :" "class:`~collections.abc.MutableMapping` that the context was initialized " "with. If a new signal dictionary is assigned, :attr:`~decimal.Context.flags` " "and :attr:`~decimal.Context.traps` are updated with the new values, but they " "do not reference the RHS dictionary." msgstr "" #: ../Doc/whatsnew/3.3.rst:1177 msgid "" "Pickling a :class:`~decimal.Context` produces a different output in order to " "have a common interchange format for the Python and C versions." msgstr "" #: ../Doc/whatsnew/3.3.rst:1181 msgid "" "The order of arguments in the :class:`~decimal.Context` constructor has been " "changed to match the order displayed by :func:`repr`." msgstr "" #: ../Doc/whatsnew/3.3.rst:1185 msgid "" "The ``watchexp`` parameter in the :meth:`~decimal.Decimal.quantize` method " "is deprecated." msgstr "" #: ../Doc/whatsnew/3.3.rst:1195 msgid "Policy Framework" msgstr "" #: ../Doc/whatsnew/3.3.rst:1197 msgid "" "The email package now has a :mod:`~email.policy` framework. A :class:" "`~email.policy.Policy` is an object with several methods and properties that " "control how the email package behaves. The primary policy for Python 3.3 is " "the :class:`~email.policy.Compat32` policy, which provides backward " "compatibility with the email package in Python 3.2. A ``policy`` can be " "specified when an email message is parsed by a :mod:`~email.parser`, or when " "a :class:`~email.message.Message` object is created, or when an email is " "serialized using a :mod:`~email.generator`. Unless overridden, a policy " "passed to a ``parser`` is inherited by all the ``Message`` object and sub-" "objects created by the ``parser``. By default a ``generator`` will use the " "policy of the ``Message`` object it is serializing. The default policy is :" "data:`~email.policy.compat32`." msgstr "" #: ../Doc/whatsnew/3.3.rst:1210 msgid "The minimum set of controls implemented by all ``policy`` objects are:" msgstr "" #: ../Doc/whatsnew/3.3.rst:1215 msgid "max_line_length" msgstr "" #: ../Doc/whatsnew/3.3.rst:1215 msgid "" "The maximum length, excluding the linesep character(s), individual lines may " "have when a ``Message`` is serialized. Defaults to 78." msgstr "" #: ../Doc/whatsnew/3.3.rst:1219 msgid "linesep" msgstr "" #: ../Doc/whatsnew/3.3.rst:1219 msgid "" "The character used to separate individual lines when a ``Message`` is " "serialized. Defaults to ``\\n``." msgstr "" #: ../Doc/whatsnew/3.3.rst:1222 msgid "cte_type" msgstr "cte_type" #: ../Doc/whatsnew/3.3.rst:1222 msgid "" "``7bit`` or ``8bit``. ``8bit`` applies only to a ``Bytes`` ``generator``, " "and means that non-ASCII may be used where allowed by the protocol (or where " "it exists in the original input)." msgstr "" #: ../Doc/whatsnew/3.3.rst:1227 msgid "raise_on_defect" msgstr "" #: ../Doc/whatsnew/3.3.rst:1227 msgid "" "Causes a ``parser`` to raise error when defects are encountered instead of " "adding them to the ``Message`` object's ``defects`` list." msgstr "" #: ../Doc/whatsnew/3.3.rst:1232 msgid "" "A new policy instance, with new settings, is created using the :meth:`~email." "policy.Policy.clone` method of policy objects. ``clone`` takes any of the " "above controls as keyword arguments. Any control not specified in the call " "retains its default value. Thus you can create a policy that uses ``\\r" "\\n`` linesep characters like this::" msgstr "" #: ../Doc/whatsnew/3.3.rst:1240 msgid "" "Policies can be used to make the generation of messages in the format needed " "by your application simpler. Instead of having to remember to specify " "``linesep='\\r\\n'`` in all the places you call a ``generator``, you can " "specify it once, when you set the policy used by the ``parser`` or the " "``Message``, whichever your program uses to create ``Message`` objects. On " "the other hand, if you need to generate messages in multiple forms, you can " "still specify the parameters in the appropriate ``generator`` call. Or you " "can have custom policy instances for your different cases, and pass those in " "when you create the ``generator``." msgstr "" #: ../Doc/whatsnew/3.3.rst:1252 msgid "Provisional Policy with New Header API" msgstr "" #: ../Doc/whatsnew/3.3.rst:1254 msgid "" "While the policy framework is worthwhile all by itself, the main motivation " "for introducing it is to allow the creation of new policies that implement " "new features for the email package in a way that maintains backward " "compatibility for those who do not use the new policies. Because the new " "policies introduce a new API, we are releasing them in Python 3.3 as a :term:" "`provisional policy `. Backwards incompatible changes " "(up to and including removal of the code) may occur if deemed necessary by " "the core developers." msgstr "" #: ../Doc/whatsnew/3.3.rst:1262 msgid "" "The new policies are instances of :class:`~email.policy.EmailPolicy`, and " "add the following additional controls:" msgstr "" #: ../Doc/whatsnew/3.3.rst:1268 msgid "refold_source" msgstr "" #: ../Doc/whatsnew/3.3.rst:1268 msgid "" "Controls whether or not headers parsed by a :mod:`~email.parser` are " "refolded by the :mod:`~email.generator`. It can be ``none``, ``long``, or " "``all``. The default is ``long``, which means that source headers with a " "line longer than ``max_line_length`` get refolded. ``none`` means no line " "get refolded, and ``all`` means that all lines get refolded." msgstr "" #: ../Doc/whatsnew/3.3.rst:1277 msgid "header_factory" msgstr "" #: ../Doc/whatsnew/3.3.rst:1277 msgid "" "A callable that take a ``name`` and ``value`` and produces a custom header " "object." msgstr "" #: ../Doc/whatsnew/3.3.rst:1281 msgid "" "The ``header_factory`` is the key to the new features provided by the new " "policies. When one of the new policies is used, any header retrieved from a " "``Message`` object is an object produced by the ``header_factory``, and any " "time you set a header on a ``Message`` it becomes an object produced by " "``header_factory``. All such header objects have a ``name`` attribute equal " "to the header name. Address and Date headers have additional attributes " "that give you access to the parsed data of the header. This means you can " "now do things like this::" msgstr "" #: ../Doc/whatsnew/3.3.rst:1309 msgid "" "You will note that the unicode display name is automatically encoded as " "``utf-8`` when the message is serialized, but that when the header is " "accessed directly, you get the unicode version. This eliminates any need to " "deal with the :mod:`email.header` :meth:`~email.header.decode_header` or :" "meth:`~email.header.make_header` functions." msgstr "" #: ../Doc/whatsnew/3.3.rst:1315 msgid "You can also create addresses from parts::" msgstr "" #: ../Doc/whatsnew/3.3.rst:1325 msgid "Decoding to unicode is done automatically::" msgstr "" #: ../Doc/whatsnew/3.3.rst:1331 msgid "" "When you parse a message, you can use the ``addresses`` and ``groups`` " "attributes of the header objects to access the groups and individual " "addresses::" msgstr "" #: ../Doc/whatsnew/3.3.rst:1340 msgid "" "In summary, if you use one of the new policies, header manipulation works " "the way it ought to: your application works with unicode strings, and the " "email package transparently encodes and decodes the unicode to and from the " "RFC standard Content Transfer Encodings." msgstr "" #: ../Doc/whatsnew/3.3.rst:1346 msgid "Other API Changes" msgstr "" #: ../Doc/whatsnew/3.3.rst:1348 msgid "" "New :class:`~email.parser.BytesHeaderParser`, added to the :mod:`~email." "parser` module to complement :class:`~email.parser.HeaderParser` and " "complete the Bytes API." msgstr "" #: ../Doc/whatsnew/3.3.rst:1352 msgid "New utility functions:" msgstr "" #: ../Doc/whatsnew/3.3.rst:1354 msgid "" ":func:`~email.utils.format_datetime`: given a :class:`~datetime.datetime`, " "produce a string formatted for use in an email header." msgstr "" #: ../Doc/whatsnew/3.3.rst:1357 msgid "" ":func:`~email.utils.parsedate_to_datetime`: given a date string from an " "email header, convert it into an aware :class:`~datetime.datetime`, or a " "naive :class:`~datetime.datetime` if the offset is ``-0000``." msgstr "" #: ../Doc/whatsnew/3.3.rst:1361 msgid "" ":func:`~email.utils.localtime`: With no argument, returns the current local " "time as an aware :class:`~datetime.datetime` using the local :class:" "`~datetime.timezone`. Given an aware :class:`~datetime.datetime`, converts " "it into an aware :class:`~datetime.datetime` using the local :class:" "`~datetime.timezone`." msgstr "" #: ../Doc/whatsnew/3.3.rst:1369 msgid "ftplib" msgstr "" #: ../Doc/whatsnew/3.3.rst:1371 msgid "" ":class:`ftplib.FTP` now accepts a ``source_address`` keyword argument to " "specify the ``(host, port)`` to use as the source address in the bind call " "when creating the outgoing socket. (Contributed by Giampaolo Rodolà in :" "issue:`8594`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1376 msgid "" "The :class:`~ftplib.FTP_TLS` class now provides a new :func:`~ftplib.FTP_TLS." "ccc` function to revert control channel back to plaintext. This can be " "useful to take advantage of firewalls that know how to handle NAT with non-" "secure FTP without opening fixed ports. (Contributed by Giampaolo Rodolà " "in :issue:`12139`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1382 msgid "" "Added :meth:`ftplib.FTP.mlsd` method which provides a parsable directory " "listing format and deprecates :meth:`ftplib.FTP.nlst` and :meth:`ftplib.FTP." "dir`. (Contributed by Giampaolo Rodolà in :issue:`11072`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1390 msgid "" "The :func:`functools.lru_cache` decorator now accepts a ``typed`` keyword " "argument (that defaults to ``False`` to ensure that it caches values of " "different types that compare equal in separate cache slots. (Contributed by " "Raymond Hettinger in :issue:`13227`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1397 ../Doc/whatsnew/3.4.rst:885 msgid "gc" msgstr "" #: ../Doc/whatsnew/3.3.rst:1399 msgid "" "It is now possible to register callbacks invoked by the garbage collector " "before and after collection using the new :data:`~gc.callbacks` list." msgstr "" #: ../Doc/whatsnew/3.3.rst:1404 ../Doc/whatsnew/3.4.rst:917 msgid "hmac" msgstr "" #: ../Doc/whatsnew/3.3.rst:1406 msgid "" "A new :func:`~hmac.compare_digest` function has been added to prevent side " "channel attacks on digests through timing analysis. (Contributed by Nick " "Coghlan and Christian Heimes in :issue:`15061`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1412 ../Doc/whatsnew/3.4.rst:956 #: ../Doc/whatsnew/3.5.rst:1193 msgid "http" msgstr "" #: ../Doc/whatsnew/3.3.rst:1414 msgid "" ":class:`http.server.BaseHTTPRequestHandler` now buffers the headers and " "writes them all at once when :meth:`~http.server.BaseHTTPRequestHandler." "end_headers` is called. A new method :meth:`~http.server." "BaseHTTPRequestHandler.flush_headers` can be used to directly manage when " "the accumlated headers are sent. (Contributed by Andrew Schaaf in :issue:" "`3709`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1420 msgid "" ":class:`http.server` now produces valid ``HTML 4.01 strict`` output. " "(Contributed by Ezio Melotti in :issue:`13295`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1423 msgid "" ":class:`http.client.HTTPResponse` now has a :meth:`~http.client.HTTPResponse." "readinto` method, which means it can be used as an :class:`io.RawIOBase` " "class. (Contributed by John Kuhn in :issue:`13464`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1432 msgid "" ":class:`html.parser.HTMLParser` is now able to parse broken markup without " "raising errors, therefore the *strict* argument of the constructor and the :" "exc:`~html.parser.HTMLParseError` exception are now deprecated. The ability " "to parse broken markup is the result of a number of bug fixes that are also " "available on the latest bug fix releases of Python 2.7/3.2. (Contributed by " "Ezio Melotti in :issue:`15114`, and :issue:`14538`, :issue:`13993`, :issue:" "`13960`, :issue:`13358`, :issue:`1745761`, :issue:`755670`, :issue:`13357`, :" "issue:`12629`, :issue:`1200313`, :issue:`670664`, :issue:`13273`, :issue:" "`12888`, :issue:`7311`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1442 msgid "" "A new :data:`~html.entities.html5` dictionary that maps HTML5 named " "character references to the equivalent Unicode character(s) (e.g. " "``html5['gt;'] == '>'``) has been added to the :mod:`html.entities` module. " "The dictionary is now also used by :class:`~html.parser.HTMLParser`. " "(Contributed by Ezio Melotti in :issue:`11113` and :issue:`15156`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1452 msgid "" "The :class:`~imaplib.IMAP4_SSL` constructor now accepts an SSLContext " "parameter to control parameters of the secure channel." msgstr "" #: ../Doc/whatsnew/3.3.rst:1455 msgid "(Contributed by Sijin Joseph in :issue:`8808`.)" msgstr "(Contribution par Sijin Joseph; :issue:`8808`.)" #: ../Doc/whatsnew/3.3.rst:1461 msgid "" "A new :func:`~inspect.getclosurevars` function has been added. This function " "reports the current binding of all names referenced from the function body " "and where those names were resolved, making it easier to verify correct " "internal state when testing code that relies on stateful closures." msgstr "" #: ../Doc/whatsnew/3.3.rst:1466 msgid "(Contributed by Meador Inge and Nick Coghlan in :issue:`13062`.)" msgstr "(Contribution par Meador Inge et Nick Coghlan; :issue:`13062`.)" #: ../Doc/whatsnew/3.3.rst:1468 msgid "" "A new :func:`~inspect.getgeneratorlocals` function has been added. This " "function reports the current binding of local variables in the generator's " "stack frame, making it easier to verify correct internal state when testing " "generators." msgstr "" #: ../Doc/whatsnew/3.3.rst:1473 msgid "(Contributed by Meador Inge in :issue:`15153`.)" msgstr "(Contribution par Meador Inge; :issue:`15153`.)" #: ../Doc/whatsnew/3.3.rst:1478 msgid "" "The :func:`~io.open` function has a new ``'x'`` mode that can be used to " "exclusively create a new file, and raise a :exc:`FileExistsError` if the " "file already exists. It is based on the C11 'x' mode to fopen()." msgstr "" #: ../Doc/whatsnew/3.3.rst:1482 msgid "(Contributed by David Townshend in :issue:`12760`.)" msgstr "(Contribution par David Townshend; :issue:`12760`.)" #: ../Doc/whatsnew/3.3.rst:1484 msgid "" "The constructor of the :class:`~io.TextIOWrapper` class has a new " "*write_through* optional argument. If *write_through* is ``True``, calls to :" "meth:`~io.TextIOWrapper.write` are guaranteed not to be buffered: any data " "written on the :class:`~io.TextIOWrapper` object is immediately handled to " "its underlying binary buffer." msgstr "" #: ../Doc/whatsnew/3.3.rst:1494 msgid "" ":func:`~itertools.accumulate` now takes an optional ``func`` argument for " "providing a user-supplied binary function." msgstr "" #: ../Doc/whatsnew/3.3.rst:1501 msgid "" "The :func:`~logging.basicConfig` function now supports an optional " "``handlers`` argument taking an iterable of handlers to be added to the root " "logger." msgstr "" #: ../Doc/whatsnew/3.3.rst:1504 msgid "" "A class level attribute :attr:`~logging.handlers.SysLogHandler.append_nul` " "has been added to :class:`~logging.handlers.SysLogHandler` to allow control " "of the appending of the ``NUL`` (``\\000``) byte to syslog records, since " "for some deamons it is required while for others it is passed through to the " "log." msgstr "" #: ../Doc/whatsnew/3.3.rst:1514 msgid "" "The :mod:`math` module has a new function, :func:`~math.log2`, which " "returns the base-2 logarithm of *x*." msgstr "" #: ../Doc/whatsnew/3.3.rst:1517 msgid "(Written by Mark Dickinson in :issue:`11888`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1521 ../Doc/whatsnew/3.4.rst:1114 msgid "mmap" msgstr "" #: ../Doc/whatsnew/3.3.rst:1523 msgid "" "The :meth:`~mmap.mmap.read` method is now more compatible with other file-" "like objects: if the argument is omitted or specified as ``None``, it " "returns the bytes from the current file position to the end of the mapping. " "(Contributed by Petri Lehtinen in :issue:`12021`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1530 ../Doc/whatsnew/3.4.rst:1121 #: ../Doc/whatsnew/3.5.rst:1460 msgid "multiprocessing" msgstr "" #: ../Doc/whatsnew/3.3.rst:1532 msgid "" "The new :func:`multiprocessing.connection.wait` function allows polling " "multiple objects (such as connections, sockets and pipes) with a timeout. " "(Contributed by Richard Oudkerk in :issue:`12328`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1536 msgid "" ":class:`multiprocessing.Connection` objects can now be transferred over " "multiprocessing connections. (Contributed by Richard Oudkerk in :issue:" "`4892`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1540 msgid "" ":class:`multiprocessing.Process` now accepts a ``daemon`` keyword argument " "to override the default behavior of inheriting the ``daemon`` flag from the " "parent process (:issue:`6064`)." msgstr "" #: ../Doc/whatsnew/3.3.rst:1544 msgid "" "New attribute :data:`multiprocessing.Process.sentinel` allows a program to " "wait on multiple :class:`~multiprocessing.Process` objects at one time using " "the appropriate OS primitives (for example, :mod:`select` on posix systems)." msgstr "" #: ../Doc/whatsnew/3.3.rst:1549 msgid "" "New methods :meth:`multiprocessing.pool.Pool.starmap` and :meth:" "`~multiprocessing.pool.Pool.starmap_async` provide :func:`itertools.starmap` " "equivalents to the existing :meth:`multiprocessing.pool.Pool.map` and :meth:" "`~multiprocessing.pool.Pool.map_async` functions. (Contributed by Hynek " "Schlawack in :issue:`12708`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1558 msgid "nntplib" msgstr "" #: ../Doc/whatsnew/3.3.rst:1560 msgid "" "The :class:`nntplib.NNTP` class now supports the context management protocol " "to unconditionally consume :exc:`socket.error` exceptions and to close the " "NNTP connection when done::" msgstr "" #: ../Doc/whatsnew/3.3.rst:1571 msgid "(Contributed by Giampaolo Rodolà in :issue:`9795`.)" msgstr "(Contribution par Giampaolo Rodolà; :issue:`9795`.)" #: ../Doc/whatsnew/3.3.rst:1577 msgid "" "The :mod:`os` module has a new :func:`~os.pipe2` function that makes it " "possible to create a pipe with :data:`~os.O_CLOEXEC` or :data:`~os." "O_NONBLOCK` flags set atomically. This is especially useful to avoid race " "conditions in multi-threaded programs." msgstr "" #: ../Doc/whatsnew/3.3.rst:1582 msgid "" "The :mod:`os` module has a new :func:`~os.sendfile` function which provides " "an efficient \"zero-copy\" way for copying data from one file (or socket) " "descriptor to another. The phrase \"zero-copy\" refers to the fact that all " "of the copying of data between the two descriptors is done entirely by the " "kernel, with no copying of data into userspace buffers. :func:`~os.sendfile` " "can be used to efficiently copy data from a file on disk to a network " "socket, e.g. for downloading a file." msgstr "" #: ../Doc/whatsnew/3.3.rst:1590 msgid "" "(Patch submitted by Ross Lagerwall and Giampaolo Rodolà in :issue:`10882`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1592 msgid "" "To avoid race conditions like symlink attacks and issues with temporary " "files and directories, it is more reliable (and also faster) to manipulate " "file descriptors instead of file names. Python 3.3 enhances existing " "functions and introduces new functions to work on file descriptors (:issue:" "`4761`, :issue:`10755` and :issue:`14626`)." msgstr "" #: ../Doc/whatsnew/3.3.rst:1598 msgid "" "The :mod:`os` module has a new :func:`~os.fwalk` function similar to :func:" "`~os.walk` except that it also yields file descriptors referring to the " "directories visited. This is especially useful to avoid symlink races." msgstr "" #: ../Doc/whatsnew/3.3.rst:1602 msgid "" "The following functions get new optional *dir_fd* (:ref:`paths relative to " "directory descriptors `) and/or *follow_symlinks* (:ref:`not " "following symlinks `): :func:`~os.access`, :func:`~os." "chflags`, :func:`~os.chmod`, :func:`~os.chown`, :func:`~os.link`, :func:`~os." "lstat`, :func:`~os.mkdir`, :func:`~os.mkfifo`, :func:`~os.mknod`, :func:`~os." "open`, :func:`~os.readlink`, :func:`~os.remove`, :func:`~os.rename`, :func:" "`~os.replace`, :func:`~os.rmdir`, :func:`~os.stat`, :func:`~os.symlink`, :" "func:`~os.unlink`, :func:`~os.utime`. Platform support for using these " "parameters can be checked via the sets :data:`os.supports_dir_fd` and :data:" "`os.supports_follows_symlinks`." msgstr "" #: ../Doc/whatsnew/3.3.rst:1613 msgid "" "The following functions now support a file descriptor for their path " "argument: :func:`~os.chdir`, :func:`~os.chmod`, :func:`~os.chown`, :func:" "`~os.execve`, :func:`~os.listdir`, :func:`~os.pathconf`, :func:`~os.path." "exists`, :func:`~os.stat`, :func:`~os.statvfs`, :func:`~os.utime`. Platform " "support for this can be checked via the :data:`os.supports_fd` set." msgstr "" #: ../Doc/whatsnew/3.3.rst:1619 msgid "" ":func:`~os.access` accepts an ``effective_ids`` keyword argument to turn on " "using the effective uid/gid rather than the real uid/gid in the access " "check. Platform support for this can be checked via the :data:`~os." "supports_effective_ids` set." msgstr "" #: ../Doc/whatsnew/3.3.rst:1624 msgid "" "The :mod:`os` module has two new functions: :func:`~os.getpriority` and :" "func:`~os.setpriority`. They can be used to get or set process niceness/" "priority in a fashion similar to :func:`os.nice` but extended to all " "processes instead of just the current one." msgstr "" #: ../Doc/whatsnew/3.3.rst:1629 msgid "(Patch submitted by Giampaolo Rodolà in :issue:`10784`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1631 msgid "" "The new :func:`os.replace` function allows cross-platform renaming of a file " "with overwriting the destination. With :func:`os.rename`, an existing " "destination file is overwritten under POSIX, but raises an error under " "Windows. (Contributed by Antoine Pitrou in :issue:`8828`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1637 msgid "" "The stat family of functions (:func:`~os.stat`, :func:`~os.fstat`, and :func:" "`~os.lstat`) now support reading a file's timestamps with nanosecond " "precision. Symmetrically, :func:`~os.utime` can now write file timestamps " "with nanosecond precision. (Contributed by Larry Hastings in :issue:" "`14127`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1643 msgid "" "The new :func:`os.get_terminal_size` function queries the size of the " "terminal attached to a file descriptor. See also :func:`shutil." "get_terminal_size`. (Contributed by Zbigniew Jędrzejewski-Szmek in :issue:" "`13609`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1650 msgid "" "New functions to support Linux extended attributes (:issue:`12720`): :func:" "`~os.getxattr`, :func:`~os.listxattr`, :func:`~os.removexattr`, :func:`~os." "setxattr`." msgstr "" #: ../Doc/whatsnew/3.3.rst:1654 msgid "" "New interface to the scheduler. These functions control how a process is " "allocated CPU time by the operating system. New functions: :func:`~os." "sched_get_priority_max`, :func:`~os.sched_get_priority_min`, :func:`~os." "sched_getaffinity`, :func:`~os.sched_getparam`, :func:`~os." "sched_getscheduler`, :func:`~os.sched_rr_get_interval`, :func:`~os." "sched_setaffinity`, :func:`~os.sched_setparam`, :func:`~os." "sched_setscheduler`, :func:`~os.sched_yield`," msgstr "" #: ../Doc/whatsnew/3.3.rst:1663 msgid "New functions to control the file system:" msgstr "" #: ../Doc/whatsnew/3.3.rst:1665 msgid "" ":func:`~os.posix_fadvise`: Announces an intention to access data in a " "specific pattern thus allowing the kernel to make optimizations." msgstr "" #: ../Doc/whatsnew/3.3.rst:1667 msgid "" ":func:`~os.posix_fallocate`: Ensures that enough disk space is allocated for " "a file." msgstr "" #: ../Doc/whatsnew/3.3.rst:1669 msgid ":func:`~os.sync`: Force write of everything to disk." msgstr "" #: ../Doc/whatsnew/3.3.rst:1671 msgid "Additional new posix functions:" msgstr "" #: ../Doc/whatsnew/3.3.rst:1673 msgid "" ":func:`~os.lockf`: Apply, test or remove a POSIX lock on an open file " "descriptor." msgstr "" #: ../Doc/whatsnew/3.3.rst:1674 msgid "" ":func:`~os.pread`: Read from a file descriptor at an offset, the file offset " "remains unchanged." msgstr "" #: ../Doc/whatsnew/3.3.rst:1676 msgid "" ":func:`~os.pwrite`: Write to a file descriptor from an offset, leaving the " "file offset unchanged." msgstr "" #: ../Doc/whatsnew/3.3.rst:1678 msgid "" ":func:`~os.readv`: Read from a file descriptor into a number of writable " "buffers." msgstr "" #: ../Doc/whatsnew/3.3.rst:1679 msgid "" ":func:`~os.truncate`: Truncate the file corresponding to *path*, so that it " "is at most *length* bytes in size." msgstr "" #: ../Doc/whatsnew/3.3.rst:1681 msgid "" ":func:`~os.waitid`: Wait for the completion of one or more child processes." msgstr "" #: ../Doc/whatsnew/3.3.rst:1682 msgid "" ":func:`~os.writev`: Write the contents of *buffers* to a file descriptor, " "where *buffers* is an arbitrary sequence of buffers." msgstr "" #: ../Doc/whatsnew/3.3.rst:1684 msgid "" ":func:`~os.getgrouplist` (:issue:`9344`): Return list of group ids that " "specified user belongs to." msgstr "" #: ../Doc/whatsnew/3.3.rst:1687 msgid "" ":func:`~os.times` and :func:`~os.uname`: Return type changed from a tuple to " "a tuple-like object with named attributes." msgstr "" #: ../Doc/whatsnew/3.3.rst:1690 msgid "" "Some platforms now support additional constants for the :func:`~os.lseek` " "function, such as ``os.SEEK_HOLE`` and ``os.SEEK_DATA``." msgstr "" #: ../Doc/whatsnew/3.3.rst:1693 msgid "" "New constants :data:`~os.RTLD_LAZY`, :data:`~os.RTLD_NOW`, :data:`~os." "RTLD_GLOBAL`, :data:`~os.RTLD_LOCAL`, :data:`~os.RTLD_NODELETE`, :data:`~os." "RTLD_NOLOAD`, and :data:`~os.RTLD_DEEPBIND` are available on platforms that " "support them. These are for use with the :func:`sys.setdlopenflags` " "function, and supersede the similar constants defined in :mod:`ctypes` and :" "mod:`DLFCN`. (Contributed by Victor Stinner in :issue:`13226`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1701 msgid "" ":func:`os.symlink` now accepts (and ignores) the ``target_is_directory`` " "keyword argument on non-Windows platforms, to ease cross-platform support." msgstr "" #: ../Doc/whatsnew/3.3.rst:1708 msgid "" "Tab-completion is now available not only for command names, but also their " "arguments. For example, for the ``break`` command, function and file names " "are completed." msgstr "" #: ../Doc/whatsnew/3.3.rst:1712 msgid "(Contributed by Georg Brandl in :issue:`14210`)" msgstr "(Contribution par Georg Brandl; :issue:`14210`.)" #: ../Doc/whatsnew/3.3.rst:1716 ../Doc/whatsnew/3.4.rst:1220 #: ../Doc/whatsnew/3.5.rst:1567 ../Doc/whatsnew/3.6.rst:801 msgid "pickle" msgstr "" #: ../Doc/whatsnew/3.3.rst:1718 msgid "" ":class:`pickle.Pickler` objects now have an optional :attr:`~pickle.Pickler." "dispatch_table` attribute allowing per-pickler reduction functions to be set." msgstr "" #: ../Doc/whatsnew/3.3.rst:1722 msgid "(Contributed by Richard Oudkerk in :issue:`14166`.)" msgstr "(Contribution par Richard Oudkerk; :issue:`14166`.)" #: ../Doc/whatsnew/3.3.rst:1728 msgid "" "The Tk GUI and the :func:`~pydoc.serve` function have been removed from the :" "mod:`pydoc` module: ``pydoc -g`` and :func:`~pydoc.serve` have been " "deprecated in Python 3.2." msgstr "" #: ../Doc/whatsnew/3.3.rst:1734 ../Doc/whatsnew/3.4.rst:1301 #: ../Doc/whatsnew/3.5.rst:1584 ../Doc/whatsnew/3.6.rst:810 msgid "re" msgstr "" #: ../Doc/whatsnew/3.3.rst:1736 msgid "" ":class:`str` regular expressions now support ``\\u`` and ``\\U`` escapes." msgstr "" #: ../Doc/whatsnew/3.3.rst:1738 msgid "(Contributed by Serhiy Storchaka in :issue:`3665`.)" msgstr "(Contribution par Serhiy Storchaka; :issue:`3665`.)" #: ../Doc/whatsnew/3.3.rst:1742 msgid "sched" msgstr "" #: ../Doc/whatsnew/3.3.rst:1744 msgid "" ":meth:`~sched.scheduler.run` now accepts a *blocking* parameter which when " "set to False makes the method execute the scheduled events due to expire " "soonest (if any) and then return immediately. This is useful in case you " "want to use the :class:`~sched.scheduler` in non-blocking applications. " "(Contributed by Giampaolo Rodolà in :issue:`13449`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1750 msgid "" ":class:`~sched.scheduler` class can now be safely used in multi-threaded " "environments. (Contributed by Josiah Carlson and Giampaolo Rodolà in :issue:" "`8684`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1754 msgid "" "*timefunc* and *delayfunct* parameters of :class:`~sched.scheduler` class " "constructor are now optional and defaults to :func:`time.time` and :func:" "`time.sleep` respectively. (Contributed by Chris Clark in :issue:`13245`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1759 msgid "" ":meth:`~sched.scheduler.enter` and :meth:`~sched.scheduler.enterabs` " "*argument* parameter is now optional. (Contributed by Chris Clark in :issue:" "`13245`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1763 msgid "" ":meth:`~sched.scheduler.enter` and :meth:`~sched.scheduler.enterabs` now " "accept a *kwargs* parameter. (Contributed by Chris Clark in :issue:`13245`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1771 msgid "" "Solaris and derivative platforms have a new class :class:`select.devpoll` " "for high performance asynchronous sockets via :file:`/dev/poll`. " "(Contributed by Jesús Cea Avión in :issue:`6397`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1777 msgid "shlex" msgstr "" #: ../Doc/whatsnew/3.3.rst:1779 msgid "" "The previously undocumented helper function ``quote`` from the :mod:`pipes` " "modules has been moved to the :mod:`shlex` module and documented. :func:" "`~shlex.quote` properly escapes all characters in a string that might be " "otherwise given special meaning by the shell." msgstr "" #: ../Doc/whatsnew/3.3.rst:1788 msgid "New functions:" msgstr "Nouvelles fonctions :" #: ../Doc/whatsnew/3.3.rst:1790 msgid "" ":func:`~shutil.disk_usage`: provides total, used and free disk space " "statistics. (Contributed by Giampaolo Rodolà in :issue:`12442`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1792 msgid "" ":func:`~shutil.chown`: allows one to change user and/or group of the given " "path also specifying the user/group names and not only their numeric ids. " "(Contributed by Sandro Tosi in :issue:`12191`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1795 msgid "" ":func:`shutil.get_terminal_size`: returns the size of the terminal window to " "which the interpreter is attached. (Contributed by Zbigniew Jędrzejewski-" "Szmek in :issue:`13609`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1799 msgid "" ":func:`~shutil.copy2` and :func:`~shutil.copystat` now preserve file " "timestamps with nanosecond precision on platforms that support it. They also " "preserve file \"extended attributes\" on Linux. (Contributed by Larry " "Hastings in :issue:`14127` and :issue:`15238`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1804 msgid "" "Several functions now take an optional ``symlinks`` argument: when that " "parameter is true, symlinks aren't dereferenced and the operation instead " "acts on the symlink itself (or creates one, if relevant). (Contributed by " "Hynek Schlawack in :issue:`12715`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1809 msgid "" "When copying files to a different file system, :func:`~shutil.move` now " "handles symlinks the way the posix ``mv`` command does, recreating the " "symlink rather than copying the target file contents. (Contributed by " "Jonathan Niehof in :issue:`9993`.) :func:`~shutil.move` now also returns " "the ``dst`` argument as its result." msgstr "" #: ../Doc/whatsnew/3.3.rst:1815 msgid "" ":func:`~shutil.rmtree` is now resistant to symlink attacks on platforms " "which support the new ``dir_fd`` parameter in :func:`os.open` and :func:`os." "unlink`. (Contributed by Martin von Löwis and Hynek Schlawack in :issue:" "`4489`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1822 ../Doc/whatsnew/3.5.rst:1652 msgid "signal" msgstr "" #: ../Doc/whatsnew/3.3.rst:1824 msgid "The :mod:`signal` module has new functions:" msgstr "Le module :mod:`signal` a de nouvelles fonctions :" #: ../Doc/whatsnew/3.3.rst:1826 msgid "" ":func:`~signal.pthread_sigmask`: fetch and/or change the signal mask of the " "calling thread (Contributed by Jean-Paul Calderone in :issue:`8407`);" msgstr "" #: ../Doc/whatsnew/3.3.rst:1828 msgid ":func:`~signal.pthread_kill`: send a signal to a thread;" msgstr "" #: ../Doc/whatsnew/3.3.rst:1829 msgid ":func:`~signal.sigpending`: examine pending functions;" msgstr "" #: ../Doc/whatsnew/3.3.rst:1830 msgid ":func:`~signal.sigwait`: wait a signal;" msgstr "" #: ../Doc/whatsnew/3.3.rst:1831 msgid "" ":func:`~signal.sigwaitinfo`: wait for a signal, returning detailed " "information about it;" msgstr "" #: ../Doc/whatsnew/3.3.rst:1833 msgid "" ":func:`~signal.sigtimedwait`: like :func:`~signal.sigwaitinfo` but with a " "timeout." msgstr "" #: ../Doc/whatsnew/3.3.rst:1836 msgid "" "The signal handler writes the signal number as a single byte instead of a " "nul byte into the wakeup file descriptor. So it is possible to wait more " "than one signal and know which signals were raised." msgstr "" #: ../Doc/whatsnew/3.3.rst:1840 msgid "" ":func:`signal.signal` and :func:`signal.siginterrupt` raise an OSError, " "instead of a RuntimeError: OSError has an errno attribute." msgstr "" #: ../Doc/whatsnew/3.3.rst:1845 ../Doc/whatsnew/3.4.rst:1370 #: ../Doc/whatsnew/3.5.rst:1664 msgid "smtpd" msgstr "smtpd" #: ../Doc/whatsnew/3.3.rst:1847 msgid "" "The :mod:`smtpd` module now supports :rfc:`5321` (extended SMTP) and :rfc:" "`1870` (size extension). Per the standard, these extensions are enabled if " "and only if the client initiates the session with an ``EHLO`` command." msgstr "" #: ../Doc/whatsnew/3.3.rst:1851 msgid "" "(Initial ``ELHO`` support by Alberto Trevino. Size extension by Juhana " "Jauhiainen. Substantial additional work on the patch contributed by Michele " "Orrù and Dan Boswell. :issue:`8739`)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1857 ../Doc/whatsnew/3.4.rst:1380 #: ../Doc/whatsnew/3.5.rst:1698 msgid "smtplib" msgstr "" #: ../Doc/whatsnew/3.3.rst:1859 msgid "" "The :class:`~smtplib.SMTP`, :class:`~smtplib.SMTP_SSL`, and :class:`~smtplib." "LMTP` classes now accept a ``source_address`` keyword argument to specify " "the ``(host, port)`` to use as the source address in the bind call when " "creating the outgoing socket. (Contributed by Paulo Scardine in :issue:" "`11281`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1865 msgid "" ":class:`~smtplib.SMTP` now supports the context management protocol, " "allowing an ``SMTP`` instance to be used in a ``with`` statement. " "(Contributed by Giampaolo Rodolà in :issue:`11289`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1869 msgid "" "The :class:`~smtplib.SMTP_SSL` constructor and the :meth:`~smtplib.SMTP." "starttls` method now accept an SSLContext parameter to control parameters of " "the secure channel. (Contributed by Kasun Herath in :issue:`8809`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1877 msgid "" "The :class:`~socket.socket` class now exposes additional methods to process " "ancillary data when supported by the underlying platform:" msgstr "" #: ../Doc/whatsnew/3.3.rst:1880 msgid ":func:`~socket.socket.sendmsg`" msgstr ":func:`~socket.socket.sendmsg`" #: ../Doc/whatsnew/3.3.rst:1881 msgid ":func:`~socket.socket.recvmsg`" msgstr ":func:`~socket.socket.recvmsg`" #: ../Doc/whatsnew/3.3.rst:1882 msgid ":func:`~socket.socket.recvmsg_into`" msgstr ":func:`~socket.socket.recvmsg_into`" #: ../Doc/whatsnew/3.3.rst:1884 msgid "" "(Contributed by David Watson in :issue:`6560`, based on an earlier patch by " "Heiko Wundram)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1887 msgid "" "The :class:`~socket.socket` class now supports the PF_CAN protocol family " "(https://en.wikipedia.org/wiki/Socketcan), on Linux (https://lwn.net/" "Articles/253425)." msgstr "" #: ../Doc/whatsnew/3.3.rst:1891 msgid "" "(Contributed by Matthias Fuchs, updated by Tiago Gonçalves in :issue:" "`10141`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1893 msgid "" "The :class:`~socket.socket` class now supports the PF_RDS protocol family " "(https://en.wikipedia.org/wiki/Reliable_Datagram_Sockets and https://oss." "oracle.com/projects/rds/)." msgstr "" #: ../Doc/whatsnew/3.3.rst:1897 msgid "" "The :class:`~socket.socket` class now supports the ``PF_SYSTEM`` protocol " "family on OS X. (Contributed by Michael Goderbauer in :issue:`13777`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1900 msgid "" "New function :func:`~socket.sethostname` allows the hostname to be set on " "unix systems if the calling process has sufficient privileges. (Contributed " "by Ross Lagerwall in :issue:`10866`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1908 msgid "" ":class:`~socketserver.BaseServer` now has an overridable method :meth:" "`~socketserver.BaseServer.service_actions` that is called by the :meth:" "`~socketserver.BaseServer.serve_forever` method in the service loop. :class:" "`~socketserver.ForkingMixIn` now uses this to clean up zombie child " "processes. (Contributed by Justin Warkentin in :issue:`11109`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1918 msgid "" "New :class:`sqlite3.Connection` method :meth:`~sqlite3.Connection." "set_trace_callback` can be used to capture a trace of all sql commands " "processed by sqlite. (Contributed by Torsten Landschoff in :issue:`11688`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1927 msgid "The :mod:`ssl` module has two new random generation functions:" msgstr "" #: ../Doc/whatsnew/3.3.rst:1929 msgid "" ":func:`~ssl.RAND_bytes`: generate cryptographically strong pseudo-random " "bytes." msgstr "" #: ../Doc/whatsnew/3.3.rst:1931 msgid ":func:`~ssl.RAND_pseudo_bytes`: generate pseudo-random bytes." msgstr "" #: ../Doc/whatsnew/3.3.rst:1933 msgid "(Contributed by Victor Stinner in :issue:`12049`.)" msgstr "(Contribution par Victor Stinner; :issue:`12049`.)" #: ../Doc/whatsnew/3.3.rst:1935 msgid "" "The :mod:`ssl` module now exposes a finer-grained exception hierarchy in " "order to make it easier to inspect the various kinds of errors. (Contributed " "by Antoine Pitrou in :issue:`11183`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1939 msgid "" ":meth:`~ssl.SSLContext.load_cert_chain` now accepts a *password* argument to " "be used if the private key is encrypted. (Contributed by Adam Simpkins in :" "issue:`12803`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1943 msgid "" "Diffie-Hellman key exchange, both regular and Elliptic Curve-based, is now " "supported through the :meth:`~ssl.SSLContext.load_dh_params` and :meth:`~ssl." "SSLContext.set_ecdh_curve` methods. (Contributed by Antoine Pitrou in :issue:" "`13626` and :issue:`13627`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1948 msgid "" "SSL sockets have a new :meth:`~ssl.SSLSocket.get_channel_binding` method " "allowing the implementation of certain authentication mechanisms such as " "SCRAM-SHA-1-PLUS. (Contributed by Jacek Konieczny in :issue:`12551`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1952 msgid "" "You can query the SSL compression algorithm used by an SSL socket, thanks to " "its new :meth:`~ssl.SSLSocket.compression` method. The new attribute :attr:" "`~ssl.OP_NO_COMPRESSION` can be used to disable compression. (Contributed by " "Antoine Pitrou in :issue:`13634`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1957 msgid "" "Support has been added for the Next Protocol Negotiation extension using " "the :meth:`ssl.SSLContext.set_npn_protocols` method. (Contributed by Colin " "Marc in :issue:`14204`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1961 msgid "" "SSL errors can now be introspected more easily thanks to :attr:`~ssl." "SSLError.library` and :attr:`~ssl.SSLError.reason` attributes. (Contributed " "by Antoine Pitrou in :issue:`14837`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1965 msgid "" "The :func:`~ssl.get_server_certificate` function now supports IPv6. " "(Contributed by Charles-François Natali in :issue:`11811`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1968 msgid "" "New attribute :attr:`~ssl.OP_CIPHER_SERVER_PREFERENCE` allows setting SSLv3 " "server sockets to use the server's cipher ordering preference rather than " "the client's (:issue:`13635`)." msgstr "" #: ../Doc/whatsnew/3.3.rst:1974 ../Doc/whatsnew/3.4.rst:1496 msgid "stat" msgstr "stat" #: ../Doc/whatsnew/3.3.rst:1976 msgid "" "The undocumented tarfile.filemode function has been moved to :func:`stat." "filemode`. It can be used to convert a file's mode to a string of the form '-" "rwxrwxrwx'." msgstr "" #: ../Doc/whatsnew/3.3.rst:1980 msgid "(Contributed by Giampaolo Rodolà in :issue:`14807`.)" msgstr "(Contribution par Giampaolo Rodolà; :issue:`14807`.)" #: ../Doc/whatsnew/3.3.rst:1984 ../Doc/whatsnew/3.4.rst:1508 msgid "struct" msgstr "struct" #: ../Doc/whatsnew/3.3.rst:1986 msgid "" "The :mod:`struct` module now supports ``ssize_t`` and ``size_t`` via the new " "codes ``n`` and ``N``, respectively. (Contributed by Antoine Pitrou in :" "issue:`3163`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1992 ../Doc/whatsnew/3.4.rst:1517 #: ../Doc/whatsnew/3.5.rst:1838 ../Doc/whatsnew/3.6.rst:924 msgid "subprocess" msgstr "subprocess" #: ../Doc/whatsnew/3.3.rst:1994 msgid "" "Command strings can now be bytes objects on posix platforms. (Contributed " "by Victor Stinner in :issue:`8513`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:1997 msgid "" "A new constant :data:`~subprocess.DEVNULL` allows suppressing output in a " "platform-independent fashion. (Contributed by Ross Lagerwall in :issue:" "`5870`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:2003 ../Doc/whatsnew/3.4.rst:1549 #: ../Doc/whatsnew/3.5.rst:1864 msgid "sys" msgstr "sys" #: ../Doc/whatsnew/3.3.rst:2005 msgid "" "The :mod:`sys` module has a new :data:`~sys.thread_info` :term:`struct " "sequence` holding informations about the thread implementation (:issue:" "`11223`)." msgstr "" #: ../Doc/whatsnew/3.3.rst:2013 msgid "" ":mod:`tarfile` now supports ``lzma`` encoding via the :mod:`lzma` module. " "(Contributed by Lars Gustäbel in :issue:`5689`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:2020 msgid "" ":class:`tempfile.SpooledTemporaryFile`\\'s :meth:`~tempfile." "SpooledTemporaryFile.truncate` method now accepts a ``size`` parameter. " "(Contributed by Ryan Kelly in :issue:`9957`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:2026 ../Doc/whatsnew/3.4.rst:1581 msgid "textwrap" msgstr "textwrap" #: ../Doc/whatsnew/3.3.rst:2028 msgid "" "The :mod:`textwrap` module has a new :func:`~textwrap.indent` that makes it " "straightforward to add a common prefix to selected lines in a block of text " "(:issue:`13857`)." msgstr "" #: ../Doc/whatsnew/3.3.rst:2036 msgid "" ":class:`threading.Condition`, :class:`threading.Semaphore`, :class:" "`threading.BoundedSemaphore`, :class:`threading.Event`, and :class:" "`threading.Timer`, all of which used to be factory functions returning a " "class instance, are now classes and may be subclassed. (Contributed by Éric " "Araujo in :issue:`10968`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:2042 msgid "" "The :class:`threading.Thread` constructor now accepts a ``daemon`` keyword " "argument to override the default behavior of inheriting the ``deamon`` flag " "value from the parent thread (:issue:`6064`)." msgstr "" #: ../Doc/whatsnew/3.3.rst:2046 msgid "" "The formerly private function ``_thread.get_ident`` is now available as the " "public function :func:`threading.get_ident`. This eliminates several cases " "of direct access to the ``_thread`` module in the stdlib. Third party code " "that used ``_thread.get_ident`` should likewise be changed to use the new " "public interface." msgstr "" #: ../Doc/whatsnew/3.3.rst:2054 ../Doc/whatsnew/3.5.rst:1917 msgid "time" msgstr "time" #: ../Doc/whatsnew/3.3.rst:2056 msgid "The :pep:`418` added new functions to the :mod:`time` module:" msgstr "" #: ../Doc/whatsnew/3.3.rst:2058 msgid ":func:`~time.get_clock_info`: Get information on a clock." msgstr "" #: ../Doc/whatsnew/3.3.rst:2059 msgid "" ":func:`~time.monotonic`: Monotonic clock (cannot go backward), not affected " "by system clock updates." msgstr "" #: ../Doc/whatsnew/3.3.rst:2061 msgid "" ":func:`~time.perf_counter`: Performance counter with the highest available " "resolution to measure a short duration." msgstr "" #: ../Doc/whatsnew/3.3.rst:2063 msgid "" ":func:`~time.process_time`: Sum of the system and user CPU time of the " "current process." msgstr "" #: ../Doc/whatsnew/3.3.rst:2066 msgid "Other new functions:" msgstr "" #: ../Doc/whatsnew/3.3.rst:2068 msgid "" ":func:`~time.clock_getres`, :func:`~time.clock_gettime` and :func:`~time." "clock_settime` functions with ``CLOCK_xxx`` constants. (Contributed by " "Victor Stinner in :issue:`10278`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:2072 msgid "" "To improve cross platform consistency, :func:`~time.sleep` now raises a :exc:" "`ValueError` when passed a negative sleep value. Previously this was an " "error on posix, but produced an infinite sleep on Windows." msgstr "" #: ../Doc/whatsnew/3.3.rst:2078 ../Doc/whatsnew/3.4.rst:1613 #: ../Doc/whatsnew/3.5.rst:1963 msgid "types" msgstr "" #: ../Doc/whatsnew/3.3.rst:2080 msgid "" "Add a new :class:`types.MappingProxyType` class: Read-only proxy of a " "mapping. (:issue:`14386`)" msgstr "" #: ../Doc/whatsnew/3.3.rst:2084 msgid "" "The new functions :func:`types.new_class` and :func:`types.prepare_class` " "provide support for PEP 3115 compliant dynamic type creation. (:issue:" "`14588`)" msgstr "" #: ../Doc/whatsnew/3.3.rst:2091 msgid "" ":meth:`.assertRaises`, :meth:`.assertRaisesRegex`, :meth:`.assertWarns`, " "and :meth:`.assertWarnsRegex` now accept a keyword argument *msg* when used " "as context managers. (Contributed by Ezio Melotti and Winston Ewert in :" "issue:`10775`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:2096 msgid "" ":meth:`unittest.TestCase.run` now returns the :class:`~unittest.TestResult` " "object." msgstr "" #: ../Doc/whatsnew/3.3.rst:2101 ../Doc/whatsnew/3.4.rst:1624 #: ../Doc/whatsnew/3.5.rst:2027 msgid "urllib" msgstr "urllib" #: ../Doc/whatsnew/3.3.rst:2103 msgid "" "The :class:`~urllib.request.Request` class, now accepts a *method* argument " "used by :meth:`~urllib.request.Request.get_method` to determine what HTTP " "method should be used. For example, this will send a ``'HEAD'`` request::" msgstr "" #: ../Doc/whatsnew/3.3.rst:2109 msgid "(:issue:`1673007`)" msgstr "" #: ../Doc/whatsnew/3.3.rst:2113 msgid "webbrowser" msgstr "webbrowser" #: ../Doc/whatsnew/3.3.rst:2115 msgid "" "The :mod:`webbrowser` module supports more \"browsers\": Google Chrome " "(named :program:`chrome`, :program:`chromium`, :program:`chrome-browser` or :" "program:`chromium-browser` depending on the version and operating system), " "and the generic launchers :program:`xdg-open`, from the FreeDesktop.org " "project, and :program:`gvfs-open`, which is the default URI handler for " "GNOME 3. (The former contributed by Arnaud Calmettes in :issue:`13620`, the " "latter by Matthias Klose in :issue:`14493`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:2125 msgid "xml.etree.ElementTree" msgstr "xml.etree.ElementTree" #: ../Doc/whatsnew/3.3.rst:2127 msgid "" "The :mod:`xml.etree.ElementTree` module now imports its C accelerator by " "default; there is no longer a need to explicitly import :mod:`xml.etree." "cElementTree` (this module stays for backwards compatibility, but is now " "deprecated). In addition, the ``iter`` family of methods of :class:`~xml." "etree.ElementTree.Element` has been optimized (rewritten in C). The module's " "documentation has also been greatly improved with added examples and a more " "detailed reference." msgstr "" #: ../Doc/whatsnew/3.3.rst:2137 ../Doc/whatsnew/3.6.rst:1099 msgid "zlib" msgstr "zlib" #: ../Doc/whatsnew/3.3.rst:2139 msgid "" "New attribute :attr:`zlib.Decompress.eof` makes it possible to distinguish " "between a properly-formed compressed stream and an incomplete or truncated " "one. (Contributed by Nadeem Vawda in :issue:`12646`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:2143 msgid "" "New attribute :attr:`zlib.ZLIB_RUNTIME_VERSION` reports the version string " "of the underlying ``zlib`` library that is loaded at runtime. (Contributed " "by Torsten Landschoff in :issue:`12306`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:2153 msgid "" "Thanks to :pep:`393`, some operations on Unicode strings have been optimized:" msgstr "" #: ../Doc/whatsnew/3.3.rst:2155 msgid "the memory footprint is divided by 2 to 4 depending on the text" msgstr "" #: ../Doc/whatsnew/3.3.rst:2156 msgid "" "encode an ASCII string to UTF-8 doesn't need to encode characters anymore, " "the UTF-8 representation is shared with the ASCII representation" msgstr "" #: ../Doc/whatsnew/3.3.rst:2158 msgid "the UTF-8 encoder has been optimized" msgstr "l’encodeur UTF-8 a été optimisé" #: ../Doc/whatsnew/3.3.rst:2159 msgid "" "repeating a single ASCII letter and getting a substring of an ASCII string " "is 4 times faster" msgstr "" #: ../Doc/whatsnew/3.3.rst:2162 msgid "UTF-8 is now 2x to 4x faster. UTF-16 encoding is now up to 10x faster." msgstr "" #: ../Doc/whatsnew/3.3.rst:2164 msgid "" "(Contributed by Serhiy Storchaka, :issue:`14624`, :issue:`14738` and :issue:" "`15026`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:2173 msgid "New :pep:`3118` related function:" msgstr "" #: ../Doc/whatsnew/3.3.rst:2175 msgid ":c:func:`PyMemoryView_FromMemory`" msgstr ":c:func:`PyMemoryView_FromMemory`" #: ../Doc/whatsnew/3.3.rst:2177 msgid ":pep:`393` added new Unicode types, macros and functions:" msgstr "" #: ../Doc/whatsnew/3.3.rst:2179 msgid "High-level API:" msgstr "" #: ../Doc/whatsnew/3.3.rst:2181 msgid ":c:func:`PyUnicode_CopyCharacters`" msgstr ":c:func:`PyUnicode_CopyCharacters`" #: ../Doc/whatsnew/3.3.rst:2182 msgid ":c:func:`PyUnicode_FindChar`" msgstr ":c:func:`PyUnicode_FindChar`" #: ../Doc/whatsnew/3.3.rst:2183 msgid ":c:func:`PyUnicode_GetLength`, :c:macro:`PyUnicode_GET_LENGTH`" msgstr ":c:func:`PyUnicode_GetLength`, :c:macro:`PyUnicode_GET_LENGTH`" #: ../Doc/whatsnew/3.3.rst:2184 msgid ":c:func:`PyUnicode_New`" msgstr ":c:func:`PyUnicode_New`" #: ../Doc/whatsnew/3.3.rst:2185 msgid ":c:func:`PyUnicode_Substring`" msgstr ":c:func:`PyUnicode_Substring`" #: ../Doc/whatsnew/3.3.rst:2186 msgid ":c:func:`PyUnicode_ReadChar`, :c:func:`PyUnicode_WriteChar`" msgstr ":c:func:`PyUnicode_ReadChar`, :c:func:`PyUnicode_WriteChar`" #: ../Doc/whatsnew/3.3.rst:2188 msgid "Low-level API:" msgstr "" #: ../Doc/whatsnew/3.3.rst:2190 msgid ":c:type:`Py_UCS1`, :c:type:`Py_UCS2`, :c:type:`Py_UCS4` types" msgstr "" #: ../Doc/whatsnew/3.3.rst:2191 msgid ":c:type:`PyASCIIObject` and :c:type:`PyCompactUnicodeObject` structures" msgstr "" #: ../Doc/whatsnew/3.3.rst:2192 msgid ":c:macro:`PyUnicode_READY`" msgstr ":c:macro:`PyUnicode_READY`" #: ../Doc/whatsnew/3.3.rst:2193 msgid ":c:func:`PyUnicode_FromKindAndData`" msgstr ":c:func:`PyUnicode_FromKindAndData`" #: ../Doc/whatsnew/3.3.rst:2194 msgid ":c:func:`PyUnicode_AsUCS4`, :c:func:`PyUnicode_AsUCS4Copy`" msgstr "" #: ../Doc/whatsnew/3.3.rst:2195 msgid "" ":c:macro:`PyUnicode_DATA`, :c:macro:`PyUnicode_1BYTE_DATA`, :c:macro:" "`PyUnicode_2BYTE_DATA`, :c:macro:`PyUnicode_4BYTE_DATA`" msgstr "" #: ../Doc/whatsnew/3.3.rst:2197 msgid "" ":c:macro:`PyUnicode_KIND` with :c:type:`PyUnicode_Kind` enum: :c:data:" "`PyUnicode_WCHAR_KIND`, :c:data:`PyUnicode_1BYTE_KIND`, :c:data:" "`PyUnicode_2BYTE_KIND`, :c:data:`PyUnicode_4BYTE_KIND`" msgstr "" #: ../Doc/whatsnew/3.3.rst:2200 msgid "" ":c:macro:`PyUnicode_READ`, :c:macro:`PyUnicode_READ_CHAR`, :c:macro:" "`PyUnicode_WRITE`" msgstr "" #: ../Doc/whatsnew/3.3.rst:2201 msgid ":c:macro:`PyUnicode_MAX_CHAR_VALUE`" msgstr ":c:macro:`PyUnicode_MAX_CHAR_VALUE`" #: ../Doc/whatsnew/3.3.rst:2203 msgid "" ":c:macro:`PyArg_ParseTuple` now accepts a :class:`bytearray` for the ``c`` " "format (:issue:`12380`)." msgstr "" #: ../Doc/whatsnew/3.3.rst:2209 ../Doc/whatsnew/3.4.rst:2067 #: ../Doc/whatsnew/3.5.rst:2262 ../Doc/whatsnew/3.6.rst:1196 msgid "Deprecated" msgstr "" #: ../Doc/whatsnew/3.3.rst:2212 ../Doc/whatsnew/3.5.rst:2283 msgid "Unsupported Operating Systems" msgstr "" #: ../Doc/whatsnew/3.3.rst:2214 msgid "OS/2 and VMS are no longer supported due to the lack of a maintainer." msgstr "" #: ../Doc/whatsnew/3.3.rst:2216 msgid "" "Windows 2000 and Windows platforms which set ``COMSPEC`` to ``command.com`` " "are no longer supported due to maintenance burden." msgstr "" #: ../Doc/whatsnew/3.3.rst:2219 msgid "OSF support, which was deprecated in 3.2, has been completely removed." msgstr "" #: ../Doc/whatsnew/3.3.rst:2223 ../Doc/whatsnew/3.5.rst:2290 #: ../Doc/whatsnew/3.6.rst:1217 msgid "Deprecated Python modules, functions and methods" msgstr "" #: ../Doc/whatsnew/3.3.rst:2225 msgid "" "Passing a non-empty string to ``object.__format__()`` is deprecated, and " "will produce a :exc:`TypeError` in Python 3.4 (:issue:`9856`)." msgstr "" #: ../Doc/whatsnew/3.3.rst:2227 msgid "" "The ``unicode_internal`` codec has been deprecated because of the :pep:" "`393`, use UTF-8, UTF-16 (``utf-16-le`` or ``utf-16-be``), or UTF-32 " "(``utf-32-le`` or ``utf-32-be``)" msgstr "" #: ../Doc/whatsnew/3.3.rst:2230 msgid "" ":meth:`ftplib.FTP.nlst` and :meth:`ftplib.FTP.dir`: use :meth:`ftplib.FTP." "mlsd`" msgstr "" #: ../Doc/whatsnew/3.3.rst:2232 msgid "" ":func:`platform.popen`: use the :mod:`subprocess` module. Check especially " "the :ref:`subprocess-replacements` section (:issue:`11377`)." msgstr "" #: ../Doc/whatsnew/3.3.rst:2234 msgid "" ":issue:`13374`: The Windows bytes API has been deprecated in the :mod:`os` " "module. Use Unicode filenames, instead of bytes filenames, to not depend on " "the ANSI code page anymore and to support any filename." msgstr "" #: ../Doc/whatsnew/3.3.rst:2237 msgid "" ":issue:`13988`: The :mod:`xml.etree.cElementTree` module is deprecated. The " "accelerator is used automatically whenever available." msgstr "" #: ../Doc/whatsnew/3.3.rst:2239 msgid "" "The behaviour of :func:`time.clock` depends on the platform: use the new :" "func:`time.perf_counter` or :func:`time.process_time` function instead, " "depending on your requirements, to have a well defined behaviour." msgstr "" #: ../Doc/whatsnew/3.3.rst:2242 msgid "The :func:`os.stat_float_times` function is deprecated." msgstr "" #: ../Doc/whatsnew/3.3.rst:2243 msgid ":mod:`abc` module:" msgstr "" #: ../Doc/whatsnew/3.3.rst:2252 msgid ":mod:`importlib` package:" msgstr "" #: ../Doc/whatsnew/3.3.rst:2254 msgid "" ":meth:`importlib.abc.SourceLoader.path_mtime` is now deprecated in favour " "of :meth:`importlib.abc.SourceLoader.path_stats` as bytecode files now store " "both the modification time and size of the source file the bytecode file was " "compiled from." msgstr "" #: ../Doc/whatsnew/3.3.rst:2264 ../Doc/whatsnew/3.6.rst:1231 msgid "Deprecated functions and types of the C API" msgstr "" #: ../Doc/whatsnew/3.3.rst:2266 msgid "" "The :c:type:`Py_UNICODE` has been deprecated by :pep:`393` and will be " "removed in Python 4. All functions using this type are deprecated:" msgstr "" #: ../Doc/whatsnew/3.3.rst:2269 msgid "" "Unicode functions and methods using :c:type:`Py_UNICODE` and :c:type:" "`Py_UNICODE*` types:" msgstr "" #: ../Doc/whatsnew/3.3.rst:2272 msgid "" ":c:macro:`PyUnicode_FromUnicode`: use :c:func:`PyUnicode_FromWideChar` or :c:" "func:`PyUnicode_FromKindAndData`" msgstr "" #: ../Doc/whatsnew/3.3.rst:2274 msgid "" ":c:macro:`PyUnicode_AS_UNICODE`, :c:func:`PyUnicode_AsUnicode`, :c:func:" "`PyUnicode_AsUnicodeAndSize`: use :c:func:`PyUnicode_AsWideCharString`" msgstr "" #: ../Doc/whatsnew/3.3.rst:2276 msgid "" ":c:macro:`PyUnicode_AS_DATA`: use :c:macro:`PyUnicode_DATA` with :c:macro:" "`PyUnicode_READ` and :c:macro:`PyUnicode_WRITE`" msgstr "" #: ../Doc/whatsnew/3.3.rst:2278 msgid "" ":c:macro:`PyUnicode_GET_SIZE`, :c:func:`PyUnicode_GetSize`: use :c:macro:" "`PyUnicode_GET_LENGTH` or :c:func:`PyUnicode_GetLength`" msgstr "" #: ../Doc/whatsnew/3.3.rst:2280 msgid "" ":c:macro:`PyUnicode_GET_DATA_SIZE`: use ``PyUnicode_GET_LENGTH(str) * " "PyUnicode_KIND(str)`` (only work on ready strings)" msgstr "" #: ../Doc/whatsnew/3.3.rst:2283 msgid "" ":c:func:`PyUnicode_AsUnicodeCopy`: use :c:func:`PyUnicode_AsUCS4Copy` or :c:" "func:`PyUnicode_AsWideCharString`" msgstr "" #: ../Doc/whatsnew/3.3.rst:2285 msgid ":c:func:`PyUnicode_GetMax`" msgstr ":c:func:`PyUnicode_GetMax`" #: ../Doc/whatsnew/3.3.rst:2288 msgid "Functions and macros manipulating Py_UNICODE* strings:" msgstr "" #: ../Doc/whatsnew/3.3.rst:2290 msgid "" ":c:macro:`Py_UNICODE_strlen`: use :c:func:`PyUnicode_GetLength` or :c:macro:" "`PyUnicode_GET_LENGTH`" msgstr "" #: ../Doc/whatsnew/3.3.rst:2292 msgid "" ":c:macro:`Py_UNICODE_strcat`: use :c:func:`PyUnicode_CopyCharacters` or :c:" "func:`PyUnicode_FromFormat`" msgstr "" ":c:macro:`Py_UNICODE_strcat` : utilisez :c:func:`PyUnicode_CopyCharacters` " "ou :c:func:`PyUnicode_FromFormat`" #: ../Doc/whatsnew/3.3.rst:2294 msgid "" ":c:macro:`Py_UNICODE_strcpy`, :c:macro:`Py_UNICODE_strncpy`, :c:macro:" "`Py_UNICODE_COPY`: use :c:func:`PyUnicode_CopyCharacters` or :c:func:" "`PyUnicode_Substring`" msgstr "" #: ../Doc/whatsnew/3.3.rst:2297 msgid ":c:macro:`Py_UNICODE_strcmp`: use :c:func:`PyUnicode_Compare`" msgstr ":c:macro:`Py_UNICODE_strcmp` : utilisez :c:func:`PyUnicode_Compare`" #: ../Doc/whatsnew/3.3.rst:2298 msgid ":c:macro:`Py_UNICODE_strncmp`: use :c:func:`PyUnicode_Tailmatch`" msgstr ":c:macro:`Py_UNICODE_strncmp` : utilisez :c:func:`PyUnicode_Tailmatch`" #: ../Doc/whatsnew/3.3.rst:2299 msgid "" ":c:macro:`Py_UNICODE_strchr`, :c:macro:`Py_UNICODE_strrchr`: use :c:func:" "`PyUnicode_FindChar`" msgstr "" ":c:macro:`Py_UNICODE_strchr`, :c:macro:`Py_UNICODE_strrchr` : utilisez :c:" "func:`PyUnicode_FindChar`" #: ../Doc/whatsnew/3.3.rst:2301 msgid ":c:macro:`Py_UNICODE_FILL`: use :c:func:`PyUnicode_Fill`" msgstr ":c:macro:`Py_UNICODE_FILL` : utilisez :c:func:`PyUnicode_Fill`" #: ../Doc/whatsnew/3.3.rst:2302 msgid ":c:macro:`Py_UNICODE_MATCH`" msgstr ":c:macro:`Py_UNICODE_MATCH`" #: ../Doc/whatsnew/3.3.rst:2304 msgid "Encoders:" msgstr "Encodeurs :" #: ../Doc/whatsnew/3.3.rst:2306 msgid ":c:func:`PyUnicode_Encode`: use :c:func:`PyUnicode_AsEncodedObject`" msgstr "" ":c:func:`PyUnicode_Encode` : utilisez :c:func:`PyUnicode_AsEncodedObject`" #: ../Doc/whatsnew/3.3.rst:2307 msgid ":c:func:`PyUnicode_EncodeUTF7`" msgstr ":c:func:`PyUnicode_EncodeUTF7`" #: ../Doc/whatsnew/3.3.rst:2308 msgid "" ":c:func:`PyUnicode_EncodeUTF8`: use :c:func:`PyUnicode_AsUTF8` or :c:func:" "`PyUnicode_AsUTF8String`" msgstr "" ":c:func:`PyUnicode_EncodeUTF8` : utilisez :c:func:`PyUnicode_AsUTF8` ou :c:" "func:`PyUnicode_AsUTF8String`" #: ../Doc/whatsnew/3.3.rst:2310 msgid ":c:func:`PyUnicode_EncodeUTF32`" msgstr ":c:func:`PyUnicode_EncodeUTF32`" #: ../Doc/whatsnew/3.3.rst:2311 msgid ":c:func:`PyUnicode_EncodeUTF16`" msgstr ":c:func:`PyUnicode_EncodeUTF16`" #: ../Doc/whatsnew/3.3.rst:2312 msgid "" ":c:func:`PyUnicode_EncodeUnicodeEscape:` use :c:func:" "`PyUnicode_AsUnicodeEscapeString`" msgstr "" ":c:func:`PyUnicode_EncodeUnicodeEscape:` utilisez :c:func:" "`PyUnicode_AsUnicodeEscapeString`" #: ../Doc/whatsnew/3.3.rst:2314 msgid "" ":c:func:`PyUnicode_EncodeRawUnicodeEscape:` use :c:func:" "`PyUnicode_AsRawUnicodeEscapeString`" msgstr "" ":c:func:`PyUnicode_EncodeRawUnicodeEscape:` utilisez :c:func:" "`PyUnicode_AsRawUnicodeEscapeString`" #: ../Doc/whatsnew/3.3.rst:2316 msgid "" ":c:func:`PyUnicode_EncodeLatin1`: use :c:func:`PyUnicode_AsLatin1String`" msgstr "" ":c:func:`PyUnicode_EncodeLatin1` : utilisez :c:func:" "`PyUnicode_AsLatin1String`" #: ../Doc/whatsnew/3.3.rst:2317 msgid ":c:func:`PyUnicode_EncodeASCII`: use :c:func:`PyUnicode_AsASCIIString`" msgstr "" ":c:func:`PyUnicode_EncodeASCII` : utilisez :c:func:`PyUnicode_AsASCIIString`" #: ../Doc/whatsnew/3.3.rst:2318 msgid ":c:func:`PyUnicode_EncodeCharmap`" msgstr ":c:func:`PyUnicode_EncodeCharmap`" #: ../Doc/whatsnew/3.3.rst:2319 msgid ":c:func:`PyUnicode_TranslateCharmap`" msgstr ":c:func:`PyUnicode_TranslateCharmap`" #: ../Doc/whatsnew/3.3.rst:2320 msgid "" ":c:func:`PyUnicode_EncodeMBCS`: use :c:func:`PyUnicode_AsMBCSString` or :c:" "func:`PyUnicode_EncodeCodePage` (with ``CP_ACP`` code_page)" msgstr "" #: ../Doc/whatsnew/3.3.rst:2322 msgid "" ":c:func:`PyUnicode_EncodeDecimal`, :c:func:" "`PyUnicode_TransformDecimalToASCII`" msgstr "" ":c:func:`PyUnicode_EncodeDecimal`, :c:func:" "`PyUnicode_TransformDecimalToASCII`" #: ../Doc/whatsnew/3.3.rst:2327 ../Doc/whatsnew/3.6.rst:1237 msgid "Deprecated features" msgstr "Fonctionnalités dépréciées" #: ../Doc/whatsnew/3.3.rst:2329 msgid "" "The :mod:`array` module's ``'u'`` format code is now deprecated and will be " "removed in Python 4 together with the rest of the (:c:type:`Py_UNICODE`) API." msgstr "" #: ../Doc/whatsnew/3.3.rst:2334 msgid "Porting to Python 3.3" msgstr "Portage vers Python 3.3" #: ../Doc/whatsnew/3.3.rst:2336 ../Doc/whatsnew/3.4.rst:2242 #: ../Doc/whatsnew/3.5.rst:2377 ../Doc/whatsnew/3.6.rst:1336 msgid "" "This section lists previously described changes and other bugfixes that may " "require changes to your code." msgstr "" #: ../Doc/whatsnew/3.3.rst:2342 msgid "Porting Python code" msgstr "Portage de code Python" #: ../Doc/whatsnew/3.3.rst:2344 msgid "" "Hash randomization is enabled by default. Set the :envvar:`PYTHONHASHSEED` " "environment variable to ``0`` to disable hash randomization. See also the :" "meth:`object.__hash__` method." msgstr "" #: ../Doc/whatsnew/3.3.rst:2348 msgid "" ":issue:`12326`: On Linux, sys.platform doesn't contain the major version " "anymore. It is now always 'linux', instead of 'linux2' or 'linux3' depending " "on the Linux version used to build Python. Replace sys.platform == 'linux2' " "with sys.platform.startswith('linux'), or directly sys.platform == 'linux' " "if you don't need to support older Python versions." msgstr "" #: ../Doc/whatsnew/3.3.rst:2354 msgid "" ":issue:`13847`, :issue:`14180`: :mod:`time` and :mod:`datetime`: :exc:" "`OverflowError` is now raised instead of :exc:`ValueError` if a timestamp is " "out of range. :exc:`OSError` is now raised if C functions :c:func:`gmtime` " "or :c:func:`localtime` failed." msgstr "" #: ../Doc/whatsnew/3.3.rst:2359 msgid "" "The default finders used by import now utilize a cache of what is contained " "within a specific directory. If you create a Python source file or " "sourceless bytecode file, make sure to call :func:`importlib." "invalidate_caches` to clear out the cache for the finders to notice the new " "file." msgstr "" #: ../Doc/whatsnew/3.3.rst:2364 msgid "" ":exc:`ImportError` now uses the full name of the module that was attempted " "to be imported. Doctests that check ImportErrors' message will need to be " "updated to use the full name of the module instead of just the tail of the " "name." msgstr "" #: ../Doc/whatsnew/3.3.rst:2369 msgid "" "The *index* argument to :func:`__import__` now defaults to 0 instead of -1 " "and no longer support negative values. It was an oversight when :pep:`328` " "was implemented that the default value remained -1. If you need to continue " "to perform a relative import followed by an absolute import, then perform " "the relative import using an index of 1, followed by another import using an " "index of 0. It is preferred, though, that you use :func:`importlib." "import_module` rather than call :func:`__import__` directly." msgstr "" #: ../Doc/whatsnew/3.3.rst:2377 msgid "" ":func:`__import__` no longer allows one to use an index value other than 0 " "for top-level modules. E.g. ``__import__('sys', level=1)`` is now an error." msgstr "" #: ../Doc/whatsnew/3.3.rst:2380 msgid "" "Because :attr:`sys.meta_path` and :attr:`sys.path_hooks` now have finders on " "them by default, you will most likely want to use :meth:`list.insert` " "instead of :meth:`list.append` to add to those lists." msgstr "" #: ../Doc/whatsnew/3.3.rst:2384 msgid "" "Because ``None`` is now inserted into :attr:`sys.path_importer_cache`, if " "you are clearing out entries in the dictionary of paths that do not have a " "finder, you will need to remove keys paired with values of ``None`` **and** :" "class:`imp.NullImporter` to be backwards-compatible. This will lead to extra " "overhead on older versions of Python that re-insert ``None`` into :attr:`sys." "path_importer_cache` where it repesents the use of implicit finders, but " "semantically it should not change anything." msgstr "" #: ../Doc/whatsnew/3.3.rst:2392 msgid "" ":class:`importlib.abc.Finder` no longer specifies a `find_module()` abstract " "method that must be implemented. If you were relying on subclasses to " "implement that method, make sure to check for the method's existence first. " "You will probably want to check for `find_loader()` first, though, in the " "case of working with :term:`path entry finders `." msgstr "" #: ../Doc/whatsnew/3.3.rst:2398 msgid "" ":mod:`pkgutil` has been converted to use :mod:`importlib` internally. This " "eliminates many edge cases where the old behaviour of the PEP 302 import " "emulation failed to match the behaviour of the real import system. The " "import emulation itself is still present, but is now deprecated. The :func:" "`pkgutil.iter_importers` and :func:`pkgutil.walk_packages` functions special " "case the standard import hooks so they are still supported even though they " "do not provide the non-standard ``iter_modules()`` method." msgstr "" #: ../Doc/whatsnew/3.3.rst:2406 msgid "" "A longstanding RFC-compliance bug (:issue:`1079`) in the parsing done by :" "func:`email.header.decode_header` has been fixed. Code that uses the " "standard idiom to convert encoded headers into unicode " "(``str(make_header(decode_header(h))``) will see no change, but code that " "looks at the individual tuples returned by decode_header will see that " "whitespace that precedes or follows ``ASCII`` sections is now included in " "the ``ASCII`` section. Code that builds headers using ``make_header`` " "should also continue to work without change, since ``make_header`` continues " "to add whitespace between ``ASCII`` and non-``ASCII`` sections if it is not " "already present in the input strings." msgstr "" #: ../Doc/whatsnew/3.3.rst:2417 msgid "" ":func:`email.utils.formataddr` now does the correct content transfer " "encoding when passed non-``ASCII`` display names. Any code that depended on " "the previous buggy behavior that preserved the non-``ASCII`` unicode in the " "formatted output string will need to be changed (:issue:`1690608`)." msgstr "" #: ../Doc/whatsnew/3.3.rst:2422 msgid "" ":meth:`poplib.POP3.quit` may now raise protocol errors like all other " "``poplib`` methods. Code that assumes ``quit`` does not raise :exc:`poplib." "error_proto` errors may need to be changed if errors on ``quit`` are " "encountered by a particular application (:issue:`11291`)." msgstr "" #: ../Doc/whatsnew/3.3.rst:2427 msgid "" "The ``strict`` argument to :class:`email.parser.Parser`, deprecated since " "Python 2.4, has finally been removed." msgstr "" #: ../Doc/whatsnew/3.3.rst:2430 msgid "" "The deprecated method ``unittest.TestCase.assertSameElements`` has been " "removed." msgstr "" #: ../Doc/whatsnew/3.3.rst:2433 msgid "The deprecated variable ``time.accept2dyear`` has been removed." msgstr "" #: ../Doc/whatsnew/3.3.rst:2435 msgid "" "The deprecated ``Context._clamp`` attribute has been removed from the :mod:" "`decimal` module. It was previously replaced by the public attribute :attr:" "`~decimal.Context.clamp`. (See :issue:`8540`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:2439 msgid "" "The undocumented internal helper class ``SSLFakeFile`` has been removed " "from :mod:`smtplib`, since its functionality has long been provided directly " "by :meth:`socket.socket.makefile`." msgstr "" #: ../Doc/whatsnew/3.3.rst:2443 msgid "" "Passing a negative value to :func:`time.sleep` on Windows now raises an " "error instead of sleeping forever. It has always raised an error on posix." msgstr "" #: ../Doc/whatsnew/3.3.rst:2446 msgid "" "The ``ast.__version__`` constant has been removed. If you need to make " "decisions affected by the AST version, use :attr:`sys.version_info` to make " "the decision." msgstr "" #: ../Doc/whatsnew/3.3.rst:2450 msgid "" "Code that used to work around the fact that the :mod:`threading` module used " "factory functions by subclassing the private classes will need to change to " "subclass the now-public classes." msgstr "" #: ../Doc/whatsnew/3.3.rst:2454 msgid "" "The undocumented debugging machinery in the threading module has been " "removed, simplifying the code. This should have no effect on production " "code, but is mentioned here in case any application debug frameworks were " "interacting with it (:issue:`13550`)." msgstr "" #: ../Doc/whatsnew/3.3.rst:2461 msgid "Porting C code" msgstr "" #: ../Doc/whatsnew/3.3.rst:2463 msgid "" "In the course of changes to the buffer API the undocumented :c:member:" "`~Py_buffer.smalltable` member of the :c:type:`Py_buffer` structure has been " "removed and the layout of the :c:type:`PyMemoryViewObject` has changed." msgstr "" #: ../Doc/whatsnew/3.3.rst:2468 msgid "" "All extensions relying on the relevant parts in ``memoryobject.h`` or " "``object.h`` must be rebuilt." msgstr "" #: ../Doc/whatsnew/3.3.rst:2471 msgid "" "Due to :ref:`PEP 393 `, the :c:type:`Py_UNICODE` type and all " "functions using this type are deprecated (but will stay available for at " "least five years). If you were using low-level Unicode APIs to construct " "and access unicode objects and you want to benefit of the memory footprint " "reduction provided by PEP 393, you have to convert your code to the new :doc:" "`Unicode API <../c-api/unicode>`." msgstr "" #: ../Doc/whatsnew/3.3.rst:2478 msgid "" "However, if you only have been using high-level functions such as :c:func:" "`PyUnicode_Concat()`, :c:func:`PyUnicode_Join` or :c:func:" "`PyUnicode_FromFormat()`, your code will automatically take advantage of the " "new unicode representations." msgstr "" #: ../Doc/whatsnew/3.3.rst:2483 msgid ":c:func:`PyImport_GetMagicNumber` now returns -1 upon failure." msgstr "" #: ../Doc/whatsnew/3.3.rst:2485 msgid "" "As a negative value for the *level* argument to :func:`__import__` is no " "longer valid, the same now holds for :c:func:`PyImport_ImportModuleLevel`. " "This also means that the value of *level* used by :c:func:" "`PyImport_ImportModuleEx` is now 0 instead of -1." msgstr "" #: ../Doc/whatsnew/3.3.rst:2492 msgid "Building C extensions" msgstr "" #: ../Doc/whatsnew/3.3.rst:2494 msgid "" "The range of possible file names for C extensions has been narrowed. Very " "rarely used spellings have been suppressed: under POSIX, files named " "``xxxmodule.so``, ``xxxmodule.abi3.so`` and ``xxxmodule.cpython-*.so`` are " "no longer recognized as implementing the ``xxx`` module. If you had been " "generating such files, you have to switch to the other spellings (i.e., " "remove the ``module`` string from the file names)." msgstr "" #: ../Doc/whatsnew/3.3.rst:2502 msgid "(implemented in :issue:`14040`.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:2506 msgid "Command Line Switch Changes" msgstr "" #: ../Doc/whatsnew/3.3.rst:2508 msgid "" "The -Q command-line flag and related artifacts have been removed. Code " "checking sys.flags.division_warning will need updating." msgstr "" #: ../Doc/whatsnew/3.3.rst:2511 msgid "(:issue:`10998`, contributed by Éric Araujo.)" msgstr "" #: ../Doc/whatsnew/3.3.rst:2513 msgid "" "When :program:`python` is started with :option:`-S`, ``import site`` will no " "longer add site-specific paths to the module search paths. In previous " "versions, it did." msgstr "" #: ../Doc/whatsnew/3.3.rst:2517 msgid "" "(:issue:`11591`, contributed by Carl Meyer with editions by Éric Araujo.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:3 msgid "What's New In Python 3.4" msgstr "Nouveautés de Python 3.4" #: ../Doc/whatsnew/3.4.rst:5 msgid "R. David Murray (Editor)" msgstr "" #: ../Doc/whatsnew/3.4.rst:63 msgid "" "This article explains the new features in Python 3.4, compared to 3.3. " "Python 3.4 was released on March 16, 2014. For full details, see the " "`changelog `_." msgstr "" #: ../Doc/whatsnew/3.4.rst:70 msgid ":pep:`429` -- Python 3.4 Release Schedule" msgstr "" #: ../Doc/whatsnew/3.4.rst:75 msgid "Summary -- Release Highlights" msgstr "" #: ../Doc/whatsnew/3.4.rst:82 msgid "No new syntax features were added in Python 3.4." msgstr "" #: ../Doc/whatsnew/3.4.rst:84 msgid "Other new features:" msgstr "" #: ../Doc/whatsnew/3.4.rst:86 msgid ":ref:`pip should always be available ` (:pep:`453`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:87 msgid "" ":ref:`Newly created file descriptors are non-inheritable ` " "(:pep:`446`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:89 msgid "" "command line option for :ref:`isolated mode ` (:" "issue:`16499`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:91 msgid "" ":ref:`improvements in the handling of codecs ` " "that are not text encodings (multiple issues)." msgstr "" #: ../Doc/whatsnew/3.4.rst:93 msgid "" ":ref:`A ModuleSpec Type ` for the Import System (:pep:" "`451`). (Affects importer authors.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:95 msgid "" "The :mod:`marshal` format has been made :ref:`more compact and efficient " "` (:issue:`16475`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:100 msgid "" ":mod:`asyncio`: :ref:`New provisional API for asynchronous IO ` (:pep:`3156`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:102 msgid "" ":mod:`ensurepip`: :ref:`Bootstrapping the pip installer ` (:pep:`453`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:104 msgid "" ":mod:`enum`: :ref:`Support for enumeration types ` (:pep:" "`435`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:106 msgid "" ":mod:`pathlib`: :ref:`Object-oriented filesystem paths ` (:" "pep:`428`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:108 msgid "" ":mod:`selectors`: :ref:`High-level and efficient I/O multiplexing `, built upon the :mod:`select` module primitives (part of :pep:" "`3156`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:111 msgid "" ":mod:`statistics`: A basic :ref:`numerically stable statistics library " "` (:pep:`450`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:113 msgid "" ":mod:`tracemalloc`: :ref:`Trace Python memory allocations ` (:pep:`454`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:116 msgid "Significantly improved library modules:" msgstr "" #: ../Doc/whatsnew/3.4.rst:118 msgid "" ":ref:`Single-dispatch generic functions ` in :mod:" "`functools` (:pep:`443`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:120 msgid "" "New :mod:`pickle` :ref:`protocol 4 ` (:pep:`3154`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:121 msgid "" ":mod:`multiprocessing` now has :ref:`an option to avoid using os.fork on " "Unix ` (:issue:`8713`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:123 msgid "" ":mod:`email` has a new submodule, :mod:`~email.contentmanager`, and a new :" "mod:`~email.message.Message` subclass (:class:`~email.contentmanager." "EmailMessage`) that :ref:`simplify MIME handling " "` (:issue:`18891`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:127 msgid "" "The :mod:`inspect` and :mod:`pydoc` modules are now capable of correct " "introspection of a much wider variety of callable objects, which improves " "the output of the Python :func:`help` system." msgstr "" #: ../Doc/whatsnew/3.4.rst:130 msgid "The :mod:`ipaddress` module API has been declared stable" msgstr "" #: ../Doc/whatsnew/3.4.rst:134 msgid "" ":ref:`Secure and interchangeable hash algorithm ` (:pep:" "`456`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:136 msgid "" ":ref:`Make newly created file descriptors non-inheritable ` (:pep:`446`) to avoid leaking file descriptors to child processes." msgstr "" #: ../Doc/whatsnew/3.4.rst:138 msgid "" "New command line option for :ref:`isolated mode `, (:" "issue:`16499`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:140 msgid "" ":mod:`multiprocessing` now has :ref:`an option to avoid using os.fork on " "Unix `. *spawn* and *forkserver* are more " "secure because they avoid sharing data with child processes." msgstr "" #: ../Doc/whatsnew/3.4.rst:143 msgid "" ":mod:`multiprocessing` child processes on Windows no longer inherit all of " "the parent's inheritable handles, only the necessary ones." msgstr "" #: ../Doc/whatsnew/3.4.rst:145 msgid "" "A new :func:`hashlib.pbkdf2_hmac` function provides the `PKCS#5 password-" "based key derivation function 2 `_." msgstr "" #: ../Doc/whatsnew/3.4.rst:148 msgid ":ref:`TLSv1.1 and TLSv1.2 support ` for :mod:`ssl`." msgstr "" #: ../Doc/whatsnew/3.4.rst:149 msgid "" ":ref:`Retrieving certificates from the Windows system cert store support " "` for :mod:`ssl`." msgstr "" #: ../Doc/whatsnew/3.4.rst:151 msgid "" ":ref:`Server-side SNI (Server Name Indication) support ` " "for :mod:`ssl`." msgstr "" #: ../Doc/whatsnew/3.4.rst:153 msgid "" "The :class:`ssl.SSLContext` class has a :ref:`lot of improvements " "`." msgstr "" #: ../Doc/whatsnew/3.4.rst:155 msgid "" "All modules in the standard library that support SSL now support server " "certificate verification, including hostname matching (:func:`ssl." "match_hostname`) and CRLs (Certificate Revocation lists, see :func:`ssl." "SSLContext.load_verify_locations`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:160 ../Doc/whatsnew/3.5.rst:94 msgid "CPython implementation improvements:" msgstr "" #: ../Doc/whatsnew/3.4.rst:162 msgid ":ref:`Safe object finalization ` (:pep:`442`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:163 msgid "" "Leveraging :pep:`442`, in most cases :ref:`module globals are no longer set " "to None during finalization ` (:issue:`18214`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:165 msgid ":ref:`Configurable memory allocators ` (:pep:`445`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:166 msgid ":ref:`Argument Clinic ` (:pep:`436`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:168 ../Doc/whatsnew/3.5.rst:157 msgid "" "Please read on for a comprehensive list of user-facing changes, including " "many other smaller improvements, CPython optimizations, deprecations, and " "potential porting issues." msgstr "" #: ../Doc/whatsnew/3.4.rst:175 ../Doc/whatsnew/3.5.rst:163 #: ../Doc/whatsnew/3.6.rst:161 msgid "New Features" msgstr "Nouvelles fonctionnalités" #: ../Doc/whatsnew/3.4.rst:180 msgid "PEP 453: Explicit Bootstrapping of PIP in Python Installations" msgstr "" #: ../Doc/whatsnew/3.4.rst:183 msgid "Bootstrapping pip By Default" msgstr "" #: ../Doc/whatsnew/3.4.rst:185 msgid "" "The new :mod:`ensurepip` module (defined in :pep:`453`) provides a standard " "cross-platform mechanism to bootstrap the pip installer into Python " "installations and virtual environments. The version of ``pip`` included with " "Python 3.4.0 is ``pip`` 1.5.4, and future 3.4.x maintenance releases will " "update the bundled version to the latest version of ``pip`` that is " "available at the time of creating the release candidate." msgstr "" #: ../Doc/whatsnew/3.4.rst:192 msgid "" "By default, the commands ``pipX`` and ``pipX.Y`` will be installed on all " "platforms (where X.Y stands for the version of the Python installation), " "along with the ``pip`` Python package and its dependencies. On Windows and " "in virtual environments on all platforms, the unversioned ``pip`` command " "will also be installed. On other platforms, the system wide unversioned " "``pip`` command typically refers to the separately installed Python 2 " "version." msgstr "" #: ../Doc/whatsnew/3.4.rst:200 msgid "" "The ``pyvenv`` command line utility and the :mod:`venv` module make use of " "the :mod:`ensurepip` module to make ``pip`` readily available in virtual " "environments. When using the command line utility, ``pip`` is installed by " "default, while when using the :mod:`venv` module :ref:`venv-api` " "installation of ``pip`` must be requested explicitly." msgstr "" #: ../Doc/whatsnew/3.4.rst:206 msgid "" "For CPython :ref:`source builds on POSIX systems `, " "the ``make install`` and ``make altinstall`` commands bootstrap ``pip`` by " "default. This behaviour can be controlled through configure options, and " "overridden through Makefile options." msgstr "" #: ../Doc/whatsnew/3.4.rst:211 msgid "" "On Windows and Mac OS X, the CPython installers now default to installing " "``pip`` along with CPython itself (users may opt out of installing it during " "the installation process). Window users will need to opt in to the automatic " "``PATH`` modifications to have ``pip`` available from the command line by " "default, otherwise it can still be accessed through the Python launcher for " "Windows as ``py -m pip``." msgstr "" #: ../Doc/whatsnew/3.4.rst:218 msgid "" "As `discussed in the PEP`__, platform packagers may choose not to install " "these commands by default, as long as, when invoked, they provide clear and " "simple directions on how to install them on that platform (usually using the " "system package manager)." msgstr "" #: ../Doc/whatsnew/3.4.rst:227 msgid "" "To avoid conflicts between parallel Python 2 and Python 3 installations, " "only the versioned ``pip3`` and ``pip3.4`` commands are bootstrapped by " "default when ``ensurepip`` is invoked directly - the ``--default-pip`` " "option is needed to also request the unversioned ``pip`` command. ``pyvenv`` " "and the Windows installer ensure that the unqualified ``pip`` command is " "made available in those environments, and ``pip`` can always be invoked via " "the ``-m`` switch rather than directly to avoid ambiguity on systems with " "multiple Python installations." msgstr "" #: ../Doc/whatsnew/3.4.rst:238 msgid "Documentation Changes" msgstr "" #: ../Doc/whatsnew/3.4.rst:240 msgid "" "As part of this change, the :ref:`installing-index` and :ref:`distributing-" "index` sections of the documentation have been completely redesigned as " "short getting started and FAQ documents. Most packaging documentation has " "now been moved out to the Python Packaging Authority maintained `Python " "Packaging User Guide `__ and the documentation " "of the individual projects." msgstr "" #: ../Doc/whatsnew/3.4.rst:248 msgid "" "However, as this migration is currently still incomplete, the legacy " "versions of those guides remaining available as :ref:`install-index` and :" "ref:`distutils-index`." msgstr "" #: ../Doc/whatsnew/3.4.rst:255 msgid ":pep:`453` -- Explicit bootstrapping of pip in Python installations" msgstr "" #: ../Doc/whatsnew/3.4.rst:255 msgid "" "PEP written by Donald Stufft and Nick Coghlan, implemented by Donald Stufft, " "Nick Coghlan, Martin von Löwis and Ned Deily." msgstr "" #: ../Doc/whatsnew/3.4.rst:262 msgid "PEP 446: Newly Created File Descriptors Are Non-Inheritable" msgstr "" #: ../Doc/whatsnew/3.4.rst:264 msgid "" ":pep:`446` makes newly created file descriptors :ref:`non-inheritable " "`. In general, this is the behavior an application will " "want: when launching a new process, having currently open files also open in " "the new process can lead to all sorts of hard to find bugs, and potentially " "to security issues." msgstr "" #: ../Doc/whatsnew/3.4.rst:270 msgid "" "However, there are occasions when inheritance is desired. To support these " "cases, the following new functions and methods are available:" msgstr "" #: ../Doc/whatsnew/3.4.rst:273 msgid ":func:`os.get_inheritable`, :func:`os.set_inheritable`" msgstr "" #: ../Doc/whatsnew/3.4.rst:274 msgid ":func:`os.get_handle_inheritable`, :func:`os.set_handle_inheritable`" msgstr "" #: ../Doc/whatsnew/3.4.rst:275 msgid "" ":meth:`socket.socket.get_inheritable`, :meth:`socket.socket.set_inheritable`" msgstr "" #: ../Doc/whatsnew/3.4.rst:279 msgid ":pep:`446` -- Make newly created file descriptors non-inheritable" msgstr "" #: ../Doc/whatsnew/3.4.rst:280 ../Doc/whatsnew/3.4.rst:1812 msgid "PEP written and implemented by Victor Stinner." msgstr "" #: ../Doc/whatsnew/3.4.rst:286 msgid "Improvements to Codec Handling" msgstr "" #: ../Doc/whatsnew/3.4.rst:288 msgid "" "Since it was first introduced, the :mod:`codecs` module has always been " "intended to operate as a type-neutral dynamic encoding and decoding system. " "However, its close coupling with the Python text model, especially the type " "restricted convenience methods on the builtin :class:`str`, :class:`bytes` " "and :class:`bytearray` types, has historically obscured that fact." msgstr "" #: ../Doc/whatsnew/3.4.rst:295 msgid "" "As a key step in clarifying the situation, the :meth:`codecs.encode` and :" "meth:`codecs.decode` convenience functions are now properly documented in " "Python 2.7, 3.3 and 3.4. These functions have existed in the :mod:`codecs` " "module (and have been covered by the regression test suite) since Python " "2.4, but were previously only discoverable through runtime introspection." msgstr "" #: ../Doc/whatsnew/3.4.rst:301 msgid "" "Unlike the convenience methods on :class:`str`, :class:`bytes` and :class:" "`bytearray`, the :mod:`codecs` convenience functions support arbitrary " "codecs in both Python 2 and Python 3, rather than being limited to Unicode " "text encodings (in Python 3) or ``basestring`` <-> ``basestring`` " "conversions (in Python 2)." msgstr "" #: ../Doc/whatsnew/3.4.rst:307 msgid "" "In Python 3.4, the interpreter is able to identify the known non-text " "encodings provided in the standard library and direct users towards these " "general purpose convenience functions when appropriate::" msgstr "" #: ../Doc/whatsnew/3.4.rst:326 msgid "" "In a related change, whenever it is feasible without breaking backwards " "compatibility, exceptions raised during encoding and decoding operations are " "wrapped in a chained exception of the same type that mentions the name of " "the codec responsible for producing the error::" msgstr "" #: ../Doc/whatsnew/3.4.rst:359 msgid "" "Finally, as the examples above show, these improvements have permitted the " "restoration of the convenience aliases for the non-Unicode codecs that were " "themselves restored in Python 3.2. This means that encoding binary data to " "and from its hexadecimal representation (for example) can now be written as::" msgstr "" #: ../Doc/whatsnew/3.4.rst:371 msgid "" "The binary and text transforms provided in the standard library are detailed " "in :ref:`binary-transforms` and :ref:`text-transforms`." msgstr "" #: ../Doc/whatsnew/3.4.rst:374 msgid "" "(Contributed by Nick Coghlan in :issue:`7475`, :issue:`17827`, :issue:" "`17828` and :issue:`19619`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:381 msgid "PEP 451: A ModuleSpec Type for the Import System" msgstr "" #: ../Doc/whatsnew/3.4.rst:383 msgid "" ":pep:`451` provides an encapsulation of the information about a module that " "the import machinery will use to load it (that is, a module specification). " "This helps simplify both the import implementation and several import-" "related APIs. The change is also a stepping stone for `several future import-" "related improvements`__." msgstr "" #: ../Doc/whatsnew/3.4.rst:391 msgid "" "The public-facing changes from the PEP are entirely backward-compatible. " "Furthermore, they should be transparent to everyone but importer authors. " "Key finder and loader methods have been deprecated, but they will continue " "working. New importers should use the new methods described in the PEP. " "Existing importers should be updated to implement the new methods. See the :" "ref:`deprecated-3.4` section for a list of methods that should be replaced " "and their replacements." msgstr "" #: ../Doc/whatsnew/3.4.rst:405 msgid "Unicode database updated to UCD version 6.3." msgstr "" #: ../Doc/whatsnew/3.4.rst:407 msgid "" ":func:`min` and :func:`max` now accept a *default* keyword-only argument " "that can be used to specify the value they return if the iterable they are " "evaluating has no elements. (Contributed by Julian Berman in :issue:" "`18111`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:412 msgid "Module objects are now :mod:`weakref`'able." msgstr "" #: ../Doc/whatsnew/3.4.rst:414 msgid "" "Module ``__file__`` attributes (and related values) should now always " "contain absolute paths by default, with the sole exception of ``__main__." "__file__`` when a script has been executed directly using a relative path. " "(Contributed by Brett Cannon in :issue:`18416`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:419 msgid "" "All the UTF-\\* codecs (except UTF-7) now reject surrogates during both " "encoding and decoding unless the ``surrogatepass`` error handler is used, " "with the exception of the UTF-16 decoder (which accepts valid surrogate " "pairs) and the UTF-16 encoder (which produces them while encoding non-BMP " "characters). (Contributed by Victor Stinner, Kang-Hao (Kenny) Lu and Serhiy " "Storchaka in :issue:`12892`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:426 msgid "" "New German EBCDIC :ref:`codec ` ``cp273``. (Contributed " "by Michael Bierenfeld and Andrew Kuchling in :issue:`1097797`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:429 msgid "" "New Ukrainian :ref:`codec ` ``cp1125``. (Contributed by " "Serhiy Storchaka in :issue:`19668`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:432 msgid "" ":class:`bytes`.join() and :class:`bytearray`.join() now accept arbitrary " "buffer objects as arguments. (Contributed by Antoine Pitrou in :issue:" "`15958`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:436 msgid "" "The :class:`int` constructor now accepts any object that has an " "``__index__`` method for its *base* argument. (Contributed by Mark " "Dickinson in :issue:`16772`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:440 msgid "" "Frame objects now have a :func:`~frame.clear` method that clears all " "references to local variables from the frame. (Contributed by Antoine " "Pitrou in :issue:`17934`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:444 msgid "" ":class:`memoryview` is now registered as a :class:`Sequence `, and supports the :func:`reversed` builtin. (Contributed by Nick " "Coghlan and Claudiu Popa in :issue:`18690` and :issue:`19078`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:448 msgid "" "Signatures reported by :func:`help` have been modified and improved in " "several cases as a result of the introduction of Argument Clinic and other " "changes to the :mod:`inspect` and :mod:`pydoc` modules." msgstr "" #: ../Doc/whatsnew/3.4.rst:452 msgid "" ":meth:`~object.__length_hint__` is now part of the formal language " "specification (see :pep:`424`). (Contributed by Armin Ronacher in :issue:" "`16148`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:464 ../Doc/whatsnew/3.5.rst:773 #: ../Doc/whatsnew/3.6.rst:591 msgid "asyncio" msgstr "asyncio" #: ../Doc/whatsnew/3.4.rst:466 msgid "" "The new :mod:`asyncio` module (defined in :pep:`3156`) provides a standard " "pluggable event loop model for Python, providing solid asynchronous IO " "support in the standard library, and making it easier for other event loop " "implementations to interoperate with the standard library and each other." msgstr "" #: ../Doc/whatsnew/3.4.rst:471 ../Doc/whatsnew/3.4.rst:534 msgid "For Python 3.4, this module is considered a :term:`provisional API`." msgstr "" #: ../Doc/whatsnew/3.4.rst:475 msgid ":pep:`3156` -- Asynchronous IO Support Rebooted: the \"asyncio\" Module" msgstr "" #: ../Doc/whatsnew/3.4.rst:476 msgid "PEP written and implementation led by Guido van Rossum." msgstr "" #: ../Doc/whatsnew/3.4.rst:482 msgid "ensurepip" msgstr "ensurepip" #: ../Doc/whatsnew/3.4.rst:484 msgid "" "The new :mod:`ensurepip` module is the primary infrastructure for the :pep:" "`453` implementation. In the normal course of events end users will not " "need to interact with this module, but it can be used to manually bootstrap " "``pip`` if the automated bootstrapping into an installation or virtual " "environment was declined." msgstr "" #: ../Doc/whatsnew/3.4.rst:490 msgid "" ":mod:`ensurepip` includes a bundled copy of ``pip``, up-to-date as of the " "first release candidate of the release of CPython with which it ships (this " "applies to both maintenance releases and feature releases). ``ensurepip`` " "does not access the internet. If the installation has Internet access, " "after ``ensurepip`` is run the bundled ``pip`` can be used to upgrade " "``pip`` to a more recent release than the bundled one. (Note that such an " "upgraded version of ``pip`` is considered to be a separately installed " "package and will not be removed if Python is uninstalled.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:499 msgid "" "The module is named *ensure*\\ pip because if called when ``pip`` is already " "installed, it does nothing. It also has an ``--upgrade`` option that will " "cause it to install the bundled copy of ``pip`` if the existing installed " "version of ``pip`` is older than the bundled copy." msgstr "" #: ../Doc/whatsnew/3.4.rst:508 ../Doc/whatsnew/3.5.rst:1123 msgid "enum" msgstr "enum" #: ../Doc/whatsnew/3.4.rst:510 msgid "" "The new :mod:`enum` module (defined in :pep:`435`) provides a standard " "implementation of enumeration types, allowing other modules (such as :mod:" "`socket`) to provide more informative error messages and better debugging " "support by replacing opaque integer constants with backwards compatible " "enumeration values." msgstr "" #: ../Doc/whatsnew/3.4.rst:519 msgid ":pep:`435` -- Adding an Enum type to the Python standard library" msgstr "" #: ../Doc/whatsnew/3.4.rst:519 msgid "" "PEP written by Barry Warsaw, Eli Bendersky and Ethan Furman, implemented by " "Ethan Furman." msgstr "" #: ../Doc/whatsnew/3.4.rst:526 ../Doc/whatsnew/3.5.rst:1522 msgid "pathlib" msgstr "" #: ../Doc/whatsnew/3.4.rst:528 msgid "" "The new :mod:`pathlib` module offers classes representing filesystem paths " "with semantics appropriate for different operating systems. Path classes " "are divided between *pure paths*, which provide purely computational " "operations without I/O, and *concrete paths*, which inherit from pure paths " "but also provide I/O operations." msgstr "" #: ../Doc/whatsnew/3.4.rst:538 msgid ":pep:`428` -- The pathlib module -- object-oriented filesystem paths" msgstr "" #: ../Doc/whatsnew/3.4.rst:545 ../Doc/whatsnew/3.5.rst:1631 msgid "selectors" msgstr "" #: ../Doc/whatsnew/3.4.rst:547 msgid "" "The new :mod:`selectors` module (created as part of implementing :pep:" "`3156`) allows high-level and efficient I/O multiplexing, built upon the :" "mod:`select` module primitives." msgstr "" #: ../Doc/whatsnew/3.4.rst:555 msgid "statistics" msgstr "" #: ../Doc/whatsnew/3.4.rst:557 msgid "" "The new :mod:`statistics` module (defined in :pep:`450`) offers some core " "statistics functionality directly in the standard library. This module " "supports calculation of the mean, median, mode, variance and standard " "deviation of a data series." msgstr "" #: ../Doc/whatsnew/3.4.rst:564 msgid ":pep:`450` -- Adding A Statistics Module To The Standard Library" msgstr "" #: ../Doc/whatsnew/3.4.rst:565 msgid "PEP written and implemented by Steven D'Aprano" msgstr "" #: ../Doc/whatsnew/3.4.rst:571 msgid "tracemalloc" msgstr "tracemalloc" #: ../Doc/whatsnew/3.4.rst:573 msgid "" "The new :mod:`tracemalloc` module (defined in :pep:`454`) is a debug tool to " "trace memory blocks allocated by Python. It provides the following " "information:" msgstr "" #: ../Doc/whatsnew/3.4.rst:576 msgid "Trace where an object was allocated" msgstr "" #: ../Doc/whatsnew/3.4.rst:577 msgid "" "Statistics on allocated memory blocks per filename and per line number: " "total size, number and average size of allocated memory blocks" msgstr "" #: ../Doc/whatsnew/3.4.rst:579 msgid "Compute the differences between two snapshots to detect memory leaks" msgstr "" #: ../Doc/whatsnew/3.4.rst:583 msgid "" ":pep:`454` -- Add a new tracemalloc module to trace Python memory allocations" msgstr "" #: ../Doc/whatsnew/3.4.rst:584 msgid "PEP written and implemented by Victor Stinner" msgstr "" #: ../Doc/whatsnew/3.4.rst:595 msgid "" "New function :func:`abc.get_cache_token` can be used to know when to " "invalidate caches that are affected by changes in the object graph. " "(Contributed by Łukasz Langa in :issue:`16832`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:599 msgid "" "New class :class:`~abc.ABC` has :class:`~abc.ABCMeta` as its meta class. " "Using ``ABC`` as a base class has essentially the same effect as specifying " "``metaclass=abc.ABCMeta``, but is simpler to type and easier to read. " "(Contributed by Bruno Dupuis in :issue:`16049`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:606 msgid "aifc" msgstr "aifc" #: ../Doc/whatsnew/3.4.rst:608 msgid "" "The :meth:`~aifc.aifc.getparams` method now returns a namedtuple rather than " "a plain tuple. (Contributed by Claudiu Popa in :issue:`17818`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:611 msgid "" ":func:`aifc.open` now supports the context management protocol: when used in " "a :keyword:`with` block, the :meth:`~aifc.aifc.close` method of the returned " "object will be called automatically at the end of the block. (Contributed " "by Serhiy Storchacha in :issue:`16486`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:616 msgid "" "The :meth:`~aifc.aifc.writeframesraw` and :meth:`~aifc.aifc.writeframes` " "methods now accept any :term:`bytes-like object`. (Contributed by Serhiy " "Storchaka in :issue:`8311`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:622 ../Doc/whatsnew/3.5.rst:764 msgid "argparse" msgstr "argparse" #: ../Doc/whatsnew/3.4.rst:624 msgid "" "The :class:`~argparse.FileType` class now accepts *encoding* and *errors* " "arguments, which are passed through to :func:`open`. (Contributed by Lucas " "Maystre in :issue:`11175`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:630 msgid "audioop" msgstr "audioop" #: ../Doc/whatsnew/3.4.rst:632 msgid "" ":mod:`audioop` now supports 24-bit samples. (Contributed by Serhiy " "Storchaka in :issue:`12866`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:635 msgid "" "New :func:`~audioop.byteswap` function converts big-endian samples to little-" "endian and vice versa. (Contributed by Serhiy Storchaka in :issue:`19641`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:639 msgid "" "All :mod:`audioop` functions now accept any :term:`bytes-like object`. " "Strings are not accepted: they didn't work before, now they raise an error " "right away. (Contributed by Serhiy Storchaka in :issue:`16685`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:647 msgid "" "The encoding and decoding functions in :mod:`base64` now accept any :term:" "`bytes-like object` in cases where it previously required a :class:`bytes` " "or :class:`bytearray` instance. (Contributed by Nick Coghlan in :issue:" "`17839`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:652 msgid "" "New functions :func:`~base64.a85encode`, :func:`~base64.a85decode`, :func:" "`~base64.b85encode`, and :func:`~base64.b85decode` provide the ability to " "encode and decode binary data from and to ``Ascii85`` and the git/mercurial " "``Base85`` formats, respectively. The ``a85`` functions have options that " "can be used to make them compatible with the variants of the ``Ascii85`` " "encoding, including the Adobe variant. (Contributed by Martin Morrison, the " "Mercurial project, Serhiy Storchaka, and Antoine Pitrou in :issue:`17618`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:664 msgid "" "The :meth:`.ChainMap.new_child` method now accepts an *m* argument " "specifying the child map to add to the chain. This allows an existing " "mapping and/or a custom mapping type to be used for the child. (Contributed " "by Vinay Sajip in :issue:`16613`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:671 msgid "colorsys" msgstr "colorsys" #: ../Doc/whatsnew/3.4.rst:673 msgid "" "The number of digits in the coefficients for the RGB --- YIQ conversions " "have been expanded so that they match the FCC NTSC versions. The change in " "results should be less than 1% and may better match results found elsewhere. " "(Contributed by Brian Landers and Serhiy Storchaka in :issue:`14323`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:682 msgid "" "The new :class:`contextlib.suppress` context manager helps to clarify the " "intent of code that deliberately suppresses exceptions from a single " "statement. (Contributed by Raymond Hettinger in :issue:`15806` and Zero " "Piraeus in :issue:`19266`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:687 msgid "" "The new :func:`contextlib.redirect_stdout` context manager makes it easier " "for utility scripts to handle inflexible APIs that write their output to :" "data:`sys.stdout` and don't provide any options to redirect it. Using the " "context manager, the :data:`sys.stdout` output can be redirected to any " "other stream or, in conjunction with :class:`io.StringIO`, to a string. The " "latter can be especially useful, for example, to capture output from a " "function that was written to implement a command line interface. It is " "recommended only for utility scripts because it affects the global state of :" "data:`sys.stdout`. (Contributed by Raymond Hettinger in :issue:`15805`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:698 msgid "" "The :mod:`contextlib` documentation has also been updated to include a :ref:" "`discussion ` of the differences " "between single use, reusable and reentrant context managers." msgstr "" #: ../Doc/whatsnew/3.4.rst:706 msgid "" ":func:`dbm.open` objects now support the context management protocol. When " "used in a :keyword:`with` statement, the ``close`` method of the database " "object will be called automatically at the end of the block. (Contributed " "by Claudiu Popa and Nick Coghlan in :issue:`19282`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:715 msgid "" "Functions :func:`~dis.show_code`, :func:`~dis.dis`, :func:`~dis.distb`, and :" "func:`~dis.disassemble` now accept a keyword-only *file* argument that " "controls where they write their output." msgstr "" #: ../Doc/whatsnew/3.4.rst:719 msgid "" "The :mod:`dis` module is now built around an :class:`~dis.Instruction` class " "that provides object oriented access to the details of each individual " "bytecode operation." msgstr "" #: ../Doc/whatsnew/3.4.rst:723 msgid "" "A new method, :func:`~dis.get_instructions`, provides an iterator that emits " "the Instruction stream for a given piece of Python code. Thus it is now " "possible to write a program that inspects and manipulates a bytecode object " "in ways different from those provided by the :mod:`~dis` module itself. For " "example::" msgstr "" #: ../Doc/whatsnew/3.4.rst:737 msgid "" "The various display tools in the :mod:`dis` module have been rewritten to " "use these new components." msgstr "" #: ../Doc/whatsnew/3.4.rst:740 msgid "" "In addition, a new application-friendly class :class:`~dis.Bytecode` " "provides an object-oriented API for inspecting bytecode in both in human-" "readable form and for iterating over instructions. The :class:`~dis." "Bytecode` constructor takes the same arguments that :func:`~dis." "get_instruction` does (plus an optional *current_offset*), and the resulting " "object can be iterated to produce :class:`~dis.Instruction` objects. But it " "also has a :mod:`~dis.Bytecode.dis` method, equivalent to calling :mod:`~dis." "dis` on the constructor argument, but returned as a multi-line string::" msgstr "" #: ../Doc/whatsnew/3.4.rst:762 msgid "" ":class:`~dis.Bytecode` also has a class method, :meth:`~dis.Bytecode." "from_traceback`, that provides the ability to manipulate a traceback (that " "is, ``print(Bytecode.from_traceback(tb).dis())`` is equivalent to " "``distb(tb)``)." msgstr "" #: ../Doc/whatsnew/3.4.rst:767 msgid "" "(Contributed by Nick Coghlan, Ryan Kelly and Thomas Kluyver in :issue:" "`11816` and Claudiu Popa in :issue:`17916`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:770 msgid "" "New function :func:`~dis.stack_effect` computes the effect on the Python " "stack of a given opcode and argument, information that is not otherwise " "available. (Contributed by Larry Hastings in :issue:`19722`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:778 msgid "" "A new :ref:`option flag `, :data:`~doctest.FAIL_FAST`, " "halts test running as soon as the first failure is detected. (Contributed " "by R. David Murray and Daniel Urban in :issue:`16522`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:782 msgid "" "The :mod:`doctest` command line interface now uses :mod:`argparse`, and has " "two new options, ``-o`` and ``-f``. ``-o`` allows :ref:`doctest options " "` to be specified on the command line, and ``-f`` is a " "shorthand for ``-o FAIL_FAST`` (to parallel the similar option supported by " "the :mod:`unittest` CLI). (Contributed by R. David Murray in :issue:" "`11390`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:788 msgid "" ":mod:`doctest` will now find doctests in extension module ``__doc__`` " "strings. (Contributed by Zachary Ware in :issue:`3158`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:795 msgid "" ":meth:`~email.message.Message.as_string` now accepts a *policy* argument to " "override the default policy of the message when generating a string " "representation of it. This means that ``as_string`` can now be used in more " "circumstances, instead of having to create and use a :mod:`~email.generator` " "in order to pass formatting parameters to its ``flatten`` method. " "(Contributed by R. David Murray in :issue:`18600`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:802 msgid "" "New method :meth:`~email.message.Message.as_bytes` added to produce a bytes " "representation of the message in a fashion similar to how ``as_string`` " "produces a string representation. It does not accept the *maxheaderlen* " "argument, but does accept the *unixfrom* and *policy* arguments. The :class:" "`~email.message.Message` :meth:`~email.message.Message.__bytes__` method " "calls it, meaning that ``bytes(mymsg)`` will now produce the intuitive " "result: a bytes object containing the fully formatted message. " "(Contributed by R. David Murray in :issue:`18600`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:811 msgid "" "The :meth:`.Message.set_param` message now accepts a *replace* keyword " "argument. When specified, the associated header will be updated without " "changing its location in the list of headers. For backward compatibility, " "the default is ``False``. (Contributed by R. David Murray in :issue:" "`18891`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:819 msgid "" "A pair of new subclasses of :class:`~email.message.Message` have been added " "(:class:`.EmailMessage` and :class:`.MIMEPart`), along with a new sub-" "module, :mod:`~email.contentmanager` and a new :mod:`~email.policy` " "attribute :attr:`~email.policy.EmailPolicy.content_manager`. All " "documentation is currently in the new module, which is being added as part " "of email's new :term:`provisional API`. These classes provide a number of " "new methods that make extracting content from and inserting content into " "email messages much easier. For details, see the :mod:`~email." "contentmanager` documentation and the :ref:`email-examples`. These API " "additions complete the bulk of the work that was planned as part of the " "email6 project. The currently provisional API is scheduled to become final " "in Python 3.5 (possibly with a few minor additions in the area of error " "handling). (Contributed by R. David Murray in :issue:`18891`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:835 msgid "filecmp" msgstr "filecmp" #: ../Doc/whatsnew/3.4.rst:837 msgid "" "A new :func:`~filecmp.clear_cache` function provides the ability to clear " "the :mod:`filecmp` comparison cache, which uses :func:`os.stat` information " "to determine if the file has changed since the last compare. This can be " "used, for example, if the file might have been changed and re-checked in " "less time than the resolution of a particular filesystem's file modification " "time field. (Contributed by Mark Levitt in :issue:`18149`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:844 msgid "" "New module attribute :data:`~filecmp.DEFAULT_IGNORES` provides the list of " "directories that are used as the default value for the *ignore* parameter of " "the :func:`~filecmp.dircmp` function. (Contributed by Eli Bendersky in :" "issue:`15442`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:853 msgid "" "The new :func:`~functools.partialmethod` descriptor brings partial argument " "application to descriptors, just as :func:`~functools.partial` provides for " "normal callables. The new descriptor also makes it easier to get arbitrary " "callables (including :func:`~functools.partial` instances) to behave like " "normal instance methods when included in a class definition. (Contributed by " "Alon Horev and Nick Coghlan in :issue:`4331`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:862 msgid "" "The new :func:`~functools.singledispatch` decorator brings support for " "single-dispatch generic functions to the Python standard library. Where " "object oriented programming focuses on grouping multiple operations on a " "common set of data into a class, a generic function focuses on grouping " "multiple implementations of an operation that allows it to work with " "*different* kinds of data." msgstr "" #: ../Doc/whatsnew/3.4.rst:871 msgid ":pep:`443` -- Single-dispatch generic functions" msgstr "" #: ../Doc/whatsnew/3.4.rst:872 msgid "PEP written and implemented by Łukasz Langa." msgstr "" #: ../Doc/whatsnew/3.4.rst:874 msgid "" ":func:`~functools.total_ordering` now supports a return value of :const:" "`NotImplemented` from the underlying comparison function. (Contributed by " "Katie Miller in :issue:`10042`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:878 msgid "" "A pure-python version of the :func:`~functools.partial` function is now in " "the stdlib; in CPython it is overridden by the C accelerated version, but it " "is available for other implementations to use. (Contributed by Brian Thorne " "in :issue:`12428`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:887 msgid "" "New function :func:`~gc.get_stats` returns a list of three per-generation " "dictionaries containing the collections statistics since interpreter " "startup. (Contributed by Antoine Pitrou in :issue:`16351`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:893 ../Doc/whatsnew/3.5.rst:1158 msgid "glob" msgstr "glob" #: ../Doc/whatsnew/3.4.rst:895 msgid "" "A new function :func:`~glob.escape` provides a way to escape special " "characters in a filename so that they do not become part of the globbing " "expansion but are instead matched literally. (Contributed by Serhiy " "Storchaka in :issue:`8402`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:903 msgid "" "A new :func:`hashlib.pbkdf2_hmac` function provides the `PKCS#5 password-" "based key derivation function 2 `_. " "(Contributed by Christian Heimes in :issue:`18582`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:908 msgid "" "The :attr:`~hashlib.hash.name` attribute of :mod:`hashlib` hash objects is " "now a formally supported interface. It has always existed in CPython's :mod:" "`hashlib` (although it did not return lower case names for all supported " "hashes), but it was not a public interface and so some other Python " "implementations have not previously supported it. (Contributed by Jason R. " "Coombs in :issue:`18532`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:919 msgid "" ":mod:`hmac` now accepts ``bytearray`` as well as ``bytes`` for the *key* " "argument to the :func:`~hmac.new` function, and the *msg* parameter to both " "the :func:`~hmac.new` function and the :meth:`~hmac.HMAC.update` method now " "accepts any type supported by the :mod:`hashlib` module. (Contributed by " "Jonas Borgström in :issue:`18240`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:925 msgid "" "The *digestmod* argument to the :func:`hmac.new` function may now be any " "hash digest name recognized by :mod:`hashlib`. In addition, the current " "behavior in which the value of *digestmod* defaults to ``MD5`` is " "deprecated: in a future version of Python there will be no default value. " "(Contributed by Christian Heimes in :issue:`17276`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:931 msgid "" "With the addition of :attr:`~hmac.HMAC.block_size` and :attr:`~hmac.HMAC." "name` attributes (and the formal documentation of the :attr:`~hmac.HMAC." "digest_size` attribute), the :mod:`hmac` module now conforms fully to the :" "pep:`247` API. (Contributed by Christian Heimes in :issue:`18775`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:940 msgid "" "New function :func:`~html.unescape` function converts HTML5 character " "references to the corresponding Unicode characters. (Contributed by Ezio " "Melotti in :issue:`2927`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:944 msgid "" ":class:`~html.parser.HTMLParser` accepts a new keyword argument " "*convert_charrefs* that, when ``True``, automatically converts all character " "references. For backward-compatibility, its value defaults to ``False``, " "but it will change to ``True`` in a future version of Python, so you are " "invited to set it explicitly and update your code to use this new feature. " "(Contributed by Ezio Melotti in :issue:`13633`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:951 msgid "" "The *strict* argument of :class:`~html.parser.HTMLParser` is now deprecated. " "(Contributed by Ezio Melotti in :issue:`15114`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:958 msgid "" ":meth:`~http.server.BaseHTTPRequestHandler.send_error` now accepts an " "optional additional *explain* parameter which can be used to provide an " "extended error description, overriding the hardcoded default if there is " "one. This extended error description will be formatted using the :attr:" "`~http.server.HTTP.error_message_format` attribute and sent as the body of " "the error response. (Contributed by Karl Cow in :issue:`12921`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:965 msgid "" "The :mod:`http.server` :ref:`command line interface ` now " "has a ``-b/--bind`` option that causes the server to listen on a specific " "address. (Contributed by Malte Swart in :issue:`17764`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:971 ../Doc/whatsnew/3.5.rst:1223 #: ../Doc/whatsnew/3.6.rst:749 msgid "idlelib and IDLE" msgstr "" #: ../Doc/whatsnew/3.4.rst:973 msgid "" "Since idlelib implements the IDLE shell and editor and is not intended for " "import by other programs, it gets improvements with every release. See :file:" "`Lib/idlelib/NEWS.txt` for a cumulative list of changes since 3.3.0, as well " "as changes made in future 3.4.x releases. This file is also available from " "the IDLE :menuselection:`Help --> About IDLE` dialog." msgstr "" #: ../Doc/whatsnew/3.4.rst:981 ../Doc/whatsnew/3.5.rst:1263 #: ../Doc/whatsnew/3.6.rst:759 msgid "importlib" msgstr "importlib" #: ../Doc/whatsnew/3.4.rst:983 msgid "" "The :class:`~importlib.abc.InspectLoader` ABC defines a new method, :meth:" "`~importlib.abc.InspectLoader.source_to_code` that accepts source data and a " "path and returns a code object. The default implementation is equivalent to " "``compile(data, path, 'exec', dont_inherit=True)``. (Contributed by Eric " "Snow and Brett Cannon in :issue:`15627`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:989 msgid "" ":class:`~importlib.abc.InspectLoader` also now has a default implementation " "for the :meth:`~importlib.abc.InspectLoader.get_code` method. However, it " "will normally be desirable to override the default implementation for " "performance reasons. (Contributed by Brett Cannon in :issue:`18072`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:994 msgid "" "The :func:`~importlib.reload` function has been moved from :mod:`imp` to :" "mod:`importlib` as part of the :mod:`imp` module deprecation. (Contributed " "by Berker Peksag in :issue:`18193`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:998 msgid "" ":mod:`importlib.util` now has a :data:`~importlib.util.MAGIC_NUMBER` " "attribute providing access to the bytecode version number. This replaces " "the :func:`~imp.get_magic` function in the deprecated :mod:`imp` module. " "(Contributed by Brett Cannon in :issue:`18192`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1003 msgid "" "New :mod:`importlib.util` functions :func:`~importlib.util." "cache_from_source` and :func:`~importlib.util.source_from_cache` replace the " "same-named functions in the deprecated :mod:`imp` module. (Contributed by " "Brett Cannon in :issue:`18194`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1008 msgid "" "The :mod:`importlib` bootstrap :class:`.NamespaceLoader` now conforms to " "the :class:`.InspectLoader` ABC, which means that ``runpy`` and ``python -" "m`` can now be used with namespace packages. (Contributed by Brett Cannon " "in :issue:`18058`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1013 msgid "" ":mod:`importlib.util` has a new function :func:`~importlib.util." "decode_source` that decodes source from bytes using universal newline " "processing. This is useful for implementing :meth:`.InspectLoader." "get_source` methods." msgstr "" #: ../Doc/whatsnew/3.4.rst:1017 msgid "" ":class:`importlib.machinery.ExtensionFileLoader` now has a :meth:`~importlib." "machinery.ExtensionFileLoader.get_filename` method. This was inadvertently " "omitted in the original implementation. (Contributed by Eric Snow in :issue:" "`19152`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1026 msgid "" "The :mod:`inspect` module now offers a basic :ref:`command line interface " "` to quickly display source code and other information " "for modules, classes and functions. (Contributed by Claudiu Popa and Nick " "Coghlan in :issue:`18626`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1031 msgid "" ":func:`~inspect.unwrap` makes it easy to unravel wrapper function chains " "created by :func:`functools.wraps` (and any other API that sets the " "``__wrapped__`` attribute on a wrapper function). (Contributed by Daniel " "Urban, Aaron Iles and Nick Coghlan in :issue:`13266`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1036 msgid "" "As part of the implementation of the new :mod:`enum` module, the :mod:" "`inspect` module now has substantially better support for custom ``__dir__`` " "methods and dynamic class attributes provided through metaclasses. " "(Contributed by Ethan Furman in :issue:`18929` and :issue:`19030`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1042 msgid "" ":func:`~inspect.getfullargspec` and :func:`~inspect.getargspec` now use the :" "func:`~inspect.signature` API. This allows them to support a much broader " "range of callables, including those with ``__signature__`` attributes, those " "with metadata provided by argument clinic, :func:`functools.partial` objects " "and more. Note that, unlike :func:`~inspect.signature`, these functions " "still ignore ``__wrapped__`` attributes, and report the already bound first " "argument for bound methods, so it is still necessary to update your code to " "use :func:`~inspect.signature` directly if those features are desired. " "(Contributed by Yury Selivanov in :issue:`17481`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1053 msgid "" ":func:`~inspect.signature` now supports duck types of CPython functions, " "which adds support for functions compiled with Cython. (Contributed by " "Stefan Behnel and Yury Selivanov in :issue:`17159`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1061 msgid "" ":mod:`ipaddress` was added to the standard library in Python 3.3 as a :term:" "`provisional API`. With the release of Python 3.4, this qualification has " "been removed: :mod:`ipaddress` is now considered a stable API, covered by " "the normal standard library requirements to maintain backwards compatibility." msgstr "" #: ../Doc/whatsnew/3.4.rst:1067 msgid "" "A new :attr:`~ipaddress.IPv4Address.is_global` property is ``True`` if an " "address is globally routeable. (Contributed by Peter Moody in :issue:" "`17400`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1075 msgid "" "The :class:`~logging.handlers.TimedRotatingFileHandler` has a new *atTime* " "parameter that can be used to specify the time of day when rollover should " "happen. (Contributed by Ronald Oussoren in :issue:`9556`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1079 msgid "" ":class:`~logging.handlers.SocketHandler` and :class:`~logging.handlers." "DatagramHandler` now support Unix domain sockets (by setting *port* to " "``None``). (Contributed by Vinay Sajip in commit ce46195b56a9.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1084 msgid "" ":func:`~logging.config.fileConfig` now accepts a :class:`configparser." "RawConfigParser` subclass instance for the *fname* parameter. This " "facilitates using a configuration file when logging configuration is just a " "part of the overall application configuration, or where the application " "modifies the configuration before passing it to :func:`~logging.config." "fileConfig`. (Contributed by Vinay Sajip in :issue:`16110`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1092 msgid "" "Logging configuration data received from a socket via the :func:`logging." "config.listen` function can now be validated before being processed by " "supplying a verification function as the argument to the new *verify* " "keyword argument. (Contributed by Vinay Sajip in :issue:`15452`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1101 msgid "marshal" msgstr "" #: ../Doc/whatsnew/3.4.rst:1103 msgid "" "The default :mod:`marshal` version has been bumped to 3. The code " "implementing the new version restores the Python2 behavior of recording only " "one copy of interned strings and preserving the interning on " "deserialization, and extends this \"one copy\" ability to any object type " "(including handling recursive references). This reduces both the size of ``." "pyc`` files and the amount of memory a module occupies in memory when it is " "loaded from a ``.pyc`` (or ``.pyo``) file. (Contributed by Kristján Valur " "Jónsson in :issue:`16475`, with additional speedups by Antoine Pitrou in :" "issue:`19219`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1116 msgid "" "mmap objects can now be :mod:`weakref`\\ ed. (Contributed by Valerie " "Lambert in :issue:`4885`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1125 msgid "" "On Unix two new :ref:`start methods `, " "``spawn`` and ``forkserver``, have been added for starting processes using :" "mod:`multiprocessing`. These make the mixing of processes with threads more " "robust, and the ``spawn`` method matches the semantics that multiprocessing " "has always used on Windows. New function :func:`~multiprocessing." "get_all_start_methods` reports all start methods available on the platform, :" "func:`~multiprocessing.get_start_method` reports the current start method, " "and :func:`~multiprocessing.set_start_method` sets the start method. " "(Contributed by Richard Oudkerk in :issue:`8713`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1135 msgid "" ":mod:`multiprocessing` also now has the concept of a ``context``, which " "determines how child processes are created. New function :func:" "`~multiprocessing.get_context` returns a context that uses a specified start " "method. It has the same API as the :mod:`multiprocessing` module itself, so " "you can use it to create :class:`~multiprocessing.pool.Pool`\\ s and other " "objects that will operate within that context. This allows a framework and " "an application or different parts of the same application to use " "multiprocessing without interfering with each other. (Contributed by " "Richard Oudkerk in :issue:`18999`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1145 msgid "" "Except when using the old *fork* start method, child processes no longer " "inherit unneeded handles/file descriptors from their parents (part of :issue:" "`8713`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:1149 msgid "" ":mod:`multiprocessing` now relies on :mod:`runpy` (which implements the ``-" "m`` switch) to initialise ``__main__`` appropriately in child processes when " "using the ``spawn`` or ``forkserver`` start methods. This resolves some edge " "cases where combining multiprocessing, the ``-m`` command line switch, and " "explicit relative imports could cause obscure failures in child processes. " "(Contributed by Nick Coghlan in :issue:`19946`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1158 ../Doc/whatsnew/3.5.rst:1468 msgid "operator" msgstr "" #: ../Doc/whatsnew/3.4.rst:1160 msgid "" "New function :func:`~operator.length_hint` provides an implementation of the " "specification for how the :meth:`~object.__length_hint__` special method " "should be used, as part of the :pep:`424` formal specification of this " "language feature. (Contributed by Armin Ronacher in :issue:`16148`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1165 msgid "" "There is now a pure-python version of the :mod:`operator` module available " "for reference and for use by alternate implementations of Python. " "(Contributed by Zachary Ware in :issue:`16694`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1173 msgid "" "There are new functions to get and set the :ref:`inheritable flag " "` of a file descriptor (:func:`os.get_inheritable`, :func:" "`os.set_inheritable`) or a Windows handle (:func:`os." "get_handle_inheritable`, :func:`os.set_handle_inheritable`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:1178 msgid "" "New function :func:`~os.cpu_count` reports the number of CPUs available on " "the platform on which Python is running (or ``None`` if the count can't be " "determined). The :func:`multiprocessing.cpu_count` function is now " "implemented in terms of this function). (Contributed by Trent Nelson, " "Yogesh Chaudhari, Victor Stinner, and Charles-François Natali in :issue:" "`17914`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1184 msgid "" ":func:`os.path.samestat` is now available on the Windows platform (and the :" "func:`os.path.samefile` implementation is now shared between Unix and " "Windows). (Contributed by Brian Curtin in :issue:`11939`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1188 msgid "" ":func:`os.path.ismount` now recognizes volumes mounted below a drive root on " "Windows. (Contributed by Tim Golden in :issue:`9035`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1191 msgid "" ":func:`os.open` supports two new flags on platforms that provide them, :data:" "`~os.O_PATH` (un-opened file descriptor), and :data:`~os.O_TMPFILE` (unnamed " "temporary file; as of 3.4.0 release available only on Linux systems with a " "kernel version of 3.11 or newer that have uapi headers). (Contributed by " "Christian Heimes in :issue:`18673` and Benjamin Peterson, respectively.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1201 msgid "" ":mod:`pdb` has been enhanced to handle generators, :keyword:`yield`, and " "``yield from`` in a more useful fashion. This is especially helpful when " "debugging :mod:`asyncio` based programs. (Contributed by Andrew Svetlov and " "Xavier de Gaye in :issue:`16596`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1206 msgid "" "The ``print`` command has been removed from :mod:`pdb`, restoring access to " "the Python :func:`print` function from the pdb command line. Python2's " "``pdb`` did not have a ``print`` command; instead, entering ``print`` " "executed the ``print`` statement. In Python3 ``print`` was mistakenly made " "an alias for the pdb :pdbcmd:`p` command. ``p``, however, prints the " "``repr`` of its argument, not the ``str`` like the Python2 ``print`` command " "did. Worse, the Python3 ``pdb print`` command shadowed the Python3 " "``print`` function, making it inaccessible at the ``pdb`` prompt. " "(Contributed by Connor Osborn in :issue:`18764`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1222 msgid "" ":mod:`pickle` now supports (but does not use by default) a new pickle " "protocol, protocol 4. This new protocol addresses a number of issues that " "were present in previous protocols, such as the serialization of nested " "classes, very large strings and containers, and classes whose :meth:" "`__new__` method takes keyword-only arguments. It also provides some " "efficiency improvements." msgstr "" #: ../Doc/whatsnew/3.4.rst:1230 msgid ":pep:`3154` -- Pickle protocol 4" msgstr "" #: ../Doc/whatsnew/3.4.rst:1231 msgid "PEP written by Antoine Pitrou and implemented by Alexandre Vassalotti." msgstr "" #: ../Doc/whatsnew/3.4.rst:1235 msgid "plistlib" msgstr "" #: ../Doc/whatsnew/3.4.rst:1237 msgid "" ":mod:`plistlib` now has an API that is similar to the standard pattern for " "stdlib serialization protocols, with new :func:`~plistlib.load`, :func:" "`~plistlib.dump`, :func:`~plistlib.loads`, and :func:`~plistlib.dumps` " "functions. (The older API is now deprecated.) In addition to the already " "supported XML plist format (:data:`~plistlib.FMT_XML`), it also now supports " "the binary plist format (:data:`~plistlib.FMT_BINARY`). (Contributed by " "Ronald Oussoren and others in :issue:`14455`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1249 msgid "" "Two new methods have been added to :mod:`poplib`: :meth:`~poplib.POP3.capa`, " "which returns the list of capabilities advertised by the POP server, and :" "meth:`~poplib.POP3.stls`, which switches a clear-text POP3 session into an " "encrypted POP3 session if the POP server supports it. (Contributed by " "Lorenzo Catucci in :issue:`4473`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1257 msgid "pprint" msgstr "" #: ../Doc/whatsnew/3.4.rst:1259 msgid "" "The :mod:`pprint` module's :class:`~pprint.PrettyPrinter` class and its :" "func:`~pprint.pformat`, and :func:`~pprint.pprint` functions have a new " "option, *compact*, that controls how the output is formatted. Currently " "setting *compact* to ``True`` means that sequences will be printed with as " "many sequence elements as will fit within *width* on each (indented) line. " "(Contributed by Serhiy Storchaka in :issue:`19132`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1266 msgid "" "Long strings are now wrapped using Python's normal line continuation " "syntax. (Contributed by Antoine Pitrou in :issue:`17150`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1271 msgid "pty" msgstr "" #: ../Doc/whatsnew/3.4.rst:1273 msgid "" ":func:`pty.spawn` now returns the status value from :func:`os.waitpid` on " "the child process, instead of ``None``. (Contributed by Gregory P. Smith.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1280 msgid "" "The :mod:`pydoc` module is now based directly on the :func:`inspect." "signature` introspection API, allowing it to provide signature information " "for a wider variety of callable objects. This change also means that " "``__wrapped__`` attributes are now taken into account when displaying help " "information. (Contributed by Larry Hastings in :issue:`19674`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1286 msgid "" "The :mod:`pydoc` module no longer displays the ``self`` parameter for " "already bound methods. Instead, it aims to always display the exact current " "signature of the supplied callable. (Contributed by Larry Hastings in :" "issue:`20710`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1291 msgid "" "In addition to the changes that have been made to :mod:`pydoc` directly, its " "handling of custom ``__dir__`` methods and various descriptor behaviours has " "also been improved substantially by the underlying changes in the :mod:" "`inspect` module." msgstr "" #: ../Doc/whatsnew/3.4.rst:1296 msgid "" "As the :func:`help` builtin is based on :mod:`pydoc`, the above changes also " "affect the behaviour of :func:`help`." msgstr "" #: ../Doc/whatsnew/3.4.rst:1303 msgid "" "New :func:`~re.fullmatch` function and :meth:`.regex.fullmatch` method " "anchor the pattern at both ends of the string to match. This provides a way " "to be explicit about the goal of the match, which avoids a class of subtle " "bugs where ``$`` characters get lost during code changes or the addition of " "alternatives to an existing regular expression. (Contributed by Matthew " "Barnett in :issue:`16203`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1310 msgid "" "The repr of :ref:`regex objects ` now includes the pattern and " "the flags; the repr of :ref:`match objects ` now includes the " "start, end, and the part of the string that matched. (Contributed by Hugo " "Lopes Tavares and Serhiy Storchaka in :issue:`13592` and :issue:`17087`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1318 msgid "resource" msgstr "" #: ../Doc/whatsnew/3.4.rst:1320 msgid "" "New :func:`~resource.prlimit` function, available on Linux platforms with a " "kernel version of 2.6.36 or later and glibc of 2.13 or later, provides the " "ability to query or set the resource limits for processes other than the one " "making the call. (Contributed by Christian Heimes in :issue:`16595`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1325 msgid "" "On Linux kernel version 2.6.36 or later, there are also some new Linux " "specific constants: :attr:`~resource.RLIMIT_MSGQUEUE`, :attr:`~resource." "RLIMIT_NICE`, :attr:`~resource.RLIMIT_RTPRIO`, :attr:`~resource." "RLIMIT_RTTIME`, and :attr:`~resource.RLIMIT_SIGPENDING`. (Contributed by " "Christian Heimes in :issue:`19324`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1331 msgid "" "On FreeBSD version 9 and later, there some new FreeBSD specific constants: :" "attr:`~resource.RLIMIT_SBSIZE`, :attr:`~resource.RLIMIT_SWAP`, and :attr:" "`~resource.RLIMIT_NPTS`. (Contributed by Claudiu Popa in :issue:`19343`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1340 msgid "" ":class:`~select.epoll` objects now support the context management protocol. " "When used in a :keyword:`with` statement, the :meth:`~select.epoll.close` " "method will be called automatically at the end of the block. (Contributed " "by Serhiy Storchaka in :issue:`16488`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1345 msgid "" ":class:`~select.devpoll` objects now have :meth:`~select.devpoll.fileno` " "and :meth:`~select.devpoll.close` methods, as well as a new attribute :attr:" "`~select.devpoll.closed`. (Contributed by Victor Stinner in :issue:`18794`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1352 msgid "shelve" msgstr "" #: ../Doc/whatsnew/3.4.rst:1354 msgid "" ":class:`~shelve.Shelf` instances may now be used in :keyword:`with` " "statements, and will be automatically closed at the end of the :keyword:" "`with` block. (Contributed by Filip Gruszczyński in :issue:`13896`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1362 msgid "" ":func:`~shutil.copyfile` now raises a specific :exc:`~shutil.Error` " "subclass, :exc:`~shutil.SameFileError`, when the source and destination are " "the same file, which allows an application to take appropriate action on " "this specific error. (Contributed by Atsuo Ishimoto and Hynek Schlawack in :" "issue:`1492704`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1372 msgid "" "The :class:`~smtpd.SMTPServer` and :class:`~smtpd.SMTPChannel` classes now " "accept a *map* keyword argument which, if specified, is passed in to :class:" "`asynchat.async_chat` as its *map* argument. This allows an application to " "avoid affecting the global socket map. (Contributed by Vinay Sajip in :" "issue:`11959`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1382 msgid "" ":exc:`~smtplib.SMTPException` is now a subclass of :exc:`OSError`, which " "allows both socket level errors and SMTP protocol level errors to be caught " "in one try/except statement by code that only cares whether or not an error " "occurred. (Contributed by Ned Jackson Lovely in :issue:`2118`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1391 msgid "" "The socket module now supports the :data:`~socket.CAN_BCM` protocol on " "platforms that support it. (Contributed by Brian Thorne in :issue:`15359`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1394 msgid "" "Socket objects have new methods to get or set their :ref:`inheritable flag " "`, :meth:`~socket.socket.get_inheritable` and :meth:`~socket." "socket.set_inheritable`." msgstr "" #: ../Doc/whatsnew/3.4.rst:1398 msgid "" "The ``socket.AF_*`` and ``socket.SOCK_*`` constants are now enumeration " "values using the new :mod:`enum` module. This allows meaningful names to be " "printed during debugging, instead of integer \"magic numbers\"." msgstr "" #: ../Doc/whatsnew/3.4.rst:1402 msgid "The :data:`~socket.AF_LINK` constant is now available on BSD and OSX." msgstr "" #: ../Doc/whatsnew/3.4.rst:1404 msgid "" ":func:`~socket.inet_pton` and :func:`~socket.inet_ntop` are now supported on " "Windows. (Contributed by Atsuo Ishimoto in :issue:`7171`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1411 msgid "" "A new boolean parameter to the :func:`~sqlite3.connect` function, *uri*, can " "be used to indicate that the *database* parameter is a ``uri`` (see the " "`SQLite URI documentation `_). " "(Contributed by poq in :issue:`13773`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1422 msgid "" ":data:`~ssl.PROTOCOL_TLSv1_1` and :data:`~ssl.PROTOCOL_TLSv1_2` (TLSv1.1 and " "TLSv1.2 support) have been added; support for these protocols is only " "available if Python is linked with OpenSSL 1.0.1 or later. (Contributed by " "Michele Orrù and Antoine Pitrou in :issue:`16692`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1429 msgid "" "New function :func:`~ssl.create_default_context` provides a standard way to " "obtain an :class:`~ssl.SSLContext` whose settings are intended to be a " "reasonable balance between compatibility and security. These settings are " "more stringent than the defaults provided by the :class:`~ssl.SSLContext` " "constructor, and may be adjusted in the future, without prior deprecation, " "if best-practice security requirements change. The new recommended best " "practice for using stdlib libraries that support SSL is to use :func:`~ssl." "create_default_context` to obtain an :class:`~ssl.SSLContext` object, modify " "it if needed, and then pass it as the *context* argument of the appropriate " "stdlib API. (Contributed by Christian Heimes in :issue:`19689`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1441 msgid "" ":class:`~ssl.SSLContext` method :meth:`~ssl.SSLContext." "load_verify_locations` accepts a new optional argument *cadata*, which can " "be used to provide PEM or DER encoded certificates directly via strings or " "bytes, respectively. (Contributed by Christian Heimes in :issue:`18138`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1446 msgid "" "New function :func:`~ssl.get_default_verify_paths` returns a named tuple of " "the paths and environment variables that the :meth:`~ssl.SSLContext." "set_default_verify_paths` method uses to set OpenSSL's default ``cafile`` " "and ``capath``. This can be an aid in debugging default verification " "issues. (Contributed by Christian Heimes in :issue:`18143`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1453 msgid "" ":class:`~ssl.SSLContext` has a new method, :meth:`~ssl.SSLContext." "cert_store_stats`, that reports the number of loaded ``X.509`` certs, " "``X.509 CA`` certs, and certificate revocation lists (``crl``\\ s), as well " "as a :meth:`~ssl.SSLContext.get_ca_certs` method that returns a list of the " "loaded ``CA`` certificates. (Contributed by Christian Heimes in :issue:" "`18147`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1460 msgid "" "If OpenSSL 0.9.8 or later is available, :class:`~ssl.SSLContext` has a new " "attribute :attr:`~ssl.SSLContext.verify_flags` that can be used to control " "the certificate verification process by setting it to some combination of " "the new constants :data:`~ssl.VERIFY_DEFAULT`, :data:`~ssl." "VERIFY_CRL_CHECK_LEAF`, :data:`~ssl.VERIFY_CRL_CHECK_CHAIN`, or :data:`~ssl." "VERIFY_X509_STRICT`. OpenSSL does not do any CRL verification by default. " "(Contributed by Christien Heimes in :issue:`8813`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1468 msgid "" "New :class:`~ssl.SSLContext` method :meth:`~ssl.SSLContext." "load_default_certs` loads a set of default \"certificate authority\" (CA) " "certificates from default locations, which vary according to the platform. " "It can be used to load both TLS web server authentication certificates " "(``purpose=``:data:`~ssl.Purpose.SERVER_AUTH`) for a client to use to verify " "a server, and certificates for a server to use in verifying client " "certificates (``purpose=``:data:`~ssl.Purpose.CLIENT_AUTH`). (Contributed " "by Christian Heimes in :issue:`19292`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1479 msgid "" "Two new windows-only functions, :func:`~ssl.enum_certificates` and :func:" "`~ssl.enum_crls` provide the ability to retrieve certificates, certificate " "information, and CRLs from the Windows cert store. (Contributed by " "Christian Heimes in :issue:`17134`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1486 msgid "" "Support for server-side SNI (Server Name Indication) using the new :meth:" "`ssl.SSLContext.set_servername_callback` method. (Contributed by Daniel " "Black in :issue:`8109`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1490 msgid "" "The dictionary returned by :meth:`.SSLSocket.getpeercert` contains " "additional ``X509v3`` extension items: ``crlDistributionPoints``, " "``calIssuers``, and ``OCSP`` URIs. (Contributed by Christian Heimes in :" "issue:`18379`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1498 msgid "" "The :mod:`stat` module is now backed by a C implementation in :mod:`_stat`. " "A C implementation is required as most of the values aren't standardized and " "are platform-dependent. (Contributed by Christian Heimes in :issue:`11016`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1502 msgid "" "The module supports new :mod:`~stat.ST_MODE` flags, :mod:`~stat.S_IFDOOR`, :" "attr:`~stat.S_IFPORT`, and :attr:`~stat.S_IFWHT`. (Contributed by Christian " "Hiemes in :issue:`11016`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1510 msgid "" "New function :mod:`~struct.iter_unpack` and a new :meth:`struct.Struct." "iter_unpack` method on compiled formats provide streamed unpacking of a " "buffer containing repeated instances of a given format of data. (Contributed " "by Antoine Pitrou in :issue:`17804`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1519 msgid "" ":func:`~subprocess.check_output` now accepts an *input* argument that can be " "used to provide the contents of ``stdin`` for the command that is run. " "(Contributed by Zack Weinberg in :issue:`16624`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1523 msgid "" ":func:`~subprocess.getstatus` and :func:`~subprocess.getstatusoutput` now " "work on Windows. This change was actually inadvertently made in 3.3.4. " "(Contributed by Tim Golden in :issue:`10197`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1529 msgid "sunau" msgstr "" #: ../Doc/whatsnew/3.4.rst:1531 msgid "" "The :meth:`~sunau.getparams` method now returns a namedtuple rather than a " "plain tuple. (Contributed by Claudiu Popa in :issue:`18901`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1534 msgid "" ":meth:`sunau.open` now supports the context management protocol: when used " "in a :keyword:`with` block, the ``close`` method of the returned object will " "be called automatically at the end of the block. (Contributed by Serhiy " "Storchaka in :issue:`18878`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1539 msgid "" ":meth:`.AU_write.setsampwidth` now supports 24 bit samples, thus adding " "support for writing 24 sample using the module. (Contributed by Serhiy " "Storchaka in :issue:`19261`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1543 msgid "" "The :meth:`~sunau.AU_write.writeframesraw` and :meth:`~sunau.AU_write." "writeframes` methods now accept any :term:`bytes-like object`. (Contributed " "by Serhiy Storchaka in :issue:`8311`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1551 msgid "" "New function :func:`sys.getallocatedblocks` returns the current number of " "blocks allocated by the interpreter. (In CPython with the default ``--with-" "pymalloc`` setting, this is allocations made through the :c:func:" "`PyObject_Malloc` API.) This can be useful for tracking memory leaks, " "especially if automated via a test suite. (Contributed by Antoine Pitrou " "in :issue:`13390`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1558 msgid "" "When the Python interpreter starts in :ref:`interactive mode `, it checks for an :data:`~sys.__interactivehook__` attribute " "on the :mod:`sys` module. If the attribute exists, its value is called with " "no arguments just before interactive mode is started. The check is made " "after the :envvar:`PYTHONSTARTUP` file is read, so it can be set there. " "The :mod:`site` module :ref:`sets it ` to a function " "that enables tab completion and history saving (in :file:`~/.python-" "history`) if the platform supports :mod:`readline`. If you do not want this " "(new) behavior, you can override it in :envvar:`PYTHONSTARTUP`, :mod:" "`sitecustomize`, or :mod:`usercustomize` by deleting this attribute from :" "mod:`sys` (or setting it to some other callable). (Contributed by Éric " "Araujo and Antoine Pitrou in :issue:`5845`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1575 msgid "" "The :mod:`tarfile` module now supports a simple :ref:`tarfile-commandline` " "when called as a script directly or via ``-m``. This can be used to create " "and extract tarfile archives. (Contributed by Berker Peksag in :issue:" "`13477`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1583 msgid "" "The :class:`~textwrap.TextWrapper` class has two new attributes/constructor " "arguments: :attr:`~textwrap.TextWrapper.max_lines`, which limits the number " "of lines in the output, and :attr:`~textwrap.TextWrapper.placeholder`, which " "is a string that will appear at the end of the output if it has been " "truncated because of *max_lines*. Building on these capabilities, a new " "convenience function :func:`~textwrap.shorten` collapses all of the " "whitespace in the input to single spaces and produces a single line of a " "given *width* that ends with the *placeholder* (by default, ``[...]``). " "(Contributed by Antoine Pitrou and Serhiy Storchaka in :issue:`18585` and :" "issue:`18725`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1597 msgid "" "The :class:`~threading.Thread` object representing the main thread can be " "obtained from the new :func:`~threading.main_thread` function. In normal " "conditions this will be the thread from which the Python interpreter was " "started. (Contributed by Andrew Svetlov in :issue:`18882`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1604 ../Doc/whatsnew/3.5.rst:1947 #: ../Doc/whatsnew/3.6.rst:959 msgid "traceback" msgstr "traceback" #: ../Doc/whatsnew/3.4.rst:1606 msgid "" "A new :func:`traceback.clear_frames` function takes a traceback object and " "clears the local variables in all of the frames it references, reducing the " "amount of memory consumed. (Contributed by Andrew Kuchling in :issue:" "`1565525`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1615 msgid "" "A new :func:`~types.DynamicClassAttribute` descriptor provides a way to " "define an attribute that acts normally when looked up through an instance " "object, but which is routed to the *class* ``__getattr__`` when looked up " "through the class. This allows one to have properties active on a class, " "and have virtual attributes on the class with the same name (see :mod:`Enum` " "for an example). (Contributed by Ethan Furman in :issue:`19030`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1626 msgid "" ":mod:`urllib.request` now supports ``data:`` URLs via the :class:`~urllib." "request.DataHandler` class. (Contributed by Mathias Panzenböck in :issue:" "`16423`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1630 msgid "" "The http method that will be used by a :class:`~urllib.request.Request` " "class can now be specified by setting a :class:`~urllib.request.Request." "method` class attribute on the subclass. (Contributed by Jason R Coombs in :" "issue:`18978`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1635 msgid "" ":class:`~urllib.request.Request` objects are now reusable: if the :attr:" "`~urllib.request.Request.full_url` or :attr:`~urllib.request.Request.data` " "attributes are modified, all relevant internal properties are updated. This " "means, for example, that it is now possible to use the same :class:`~urllib." "request.Request` object in more than one :meth:`.OpenerDirector.open` call " "with different *data* arguments, or to modify a :class:`~urllib.request." "Request`\\ 's ``url`` rather than recomputing it from scratch. There is " "also a new :meth:`~urllib.request.Request.remove_header` method that can be " "used to remove headers from a :class:`~urllib.request.Request`. " "(Contributed by Alexey Kachayev in :issue:`16464`, Daniel Wozniak in :issue:" "`17485`, and Damien Brecht and Senthil Kumaran in :issue:`17272`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1648 msgid "" ":class:`~urllib.error.HTTPError` objects now have a :attr:`~urllib.error." "HTTPError.headers` attribute that provides access to the HTTP response " "headers associated with the error. (Contributed by Berker Peksag in :issue:" "`15701`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1657 msgid "" "The :class:`~unittest.TestCase` class has a new method, :meth:`~unittest." "TestCase.subTest`, that produces a context manager whose :keyword:`with` " "block becomes a \"sub-test\". This context manager allows a test method to " "dynamically generate subtests by, say, calling the ``subTest`` context " "manager inside a loop. A single test method can thereby produce an " "indefinite number of separately-identified and separately-counted tests, all " "of which will run even if one or more of them fail. For example::" msgstr "" #: ../Doc/whatsnew/3.4.rst:1671 msgid "" "will result in six subtests, each identified in the unittest verbose output " "with a label consisting of the variable name ``i`` and a particular value " "for that variable (``i=0``, ``i=1``, etc). See :ref:`subtests` for the full " "version of this example. (Contributed by Antoine Pitrou in :issue:`16997`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1676 msgid "" ":func:`unittest.main` now accepts an iterable of test names for " "*defaultTest*, where previously it only accepted a single test name as a " "string. (Contributed by Jyrki Pulliainen in :issue:`15132`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1680 msgid "" "If :class:`~unittest.SkipTest` is raised during test discovery (that is, at " "the module level in the test file), it is now reported as a skip instead of " "an error. (Contributed by Zach Ware in :issue:`16935`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1684 msgid "" ":meth:`~unittest.TestLoader.discover` now sorts the discovered files to " "provide consistent test ordering. (Contributed by Martin Melin and Jeff " "Ramnani in :issue:`16709`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1688 msgid "" ":class:`~unittest.TestSuite` now drops references to tests as soon as the " "test has been run, if the test is successful. On Python interpreters that " "do garbage collection, this allows the tests to be garbage collected if " "nothing else is holding a reference to the test. It is possible to override " "this behavior by creating a :class:`~unittest.TestSuite` subclass that " "defines a custom ``_removeTestAtIndex`` method. (Contributed by Tom " "Wardill, Matt McClure, and Andrew Svetlov in :issue:`11798`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1696 msgid "" "A new test assertion context-manager, :meth:`~unittest.TestCase.assertLogs`, " "will ensure that a given block of code emits a log message using the :mod:" "`logging` module. By default the message can come from any logger and have " "a priority of ``INFO`` or higher, but both the logger name and an " "alternative minimum logging level may be specified. The object returned by " "the context manager can be queried for the :class:`~logging.LogRecord`\\ s " "and/or formatted messages that were logged. (Contributed by Antoine Pitrou " "in :issue:`18937`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1705 msgid "" "Test discovery now works with namespace packages (Contributed by Claudiu " "Popa in :issue:`17457`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1708 msgid "" ":mod:`unittest.mock` objects now inspect their specification signatures when " "matching calls, which means an argument can now be matched by either " "position or name, instead of only by position. (Contributed by Antoine " "Pitrou in :issue:`17015`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1713 msgid "" ":func:`~mock.mock_open` objects now have ``readline`` and ``readlines`` " "methods. (Contributed by Toshio Kuratomi in :issue:`17467`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1718 ../Doc/whatsnew/3.6.rst:651 msgid "venv" msgstr "venv" #: ../Doc/whatsnew/3.4.rst:1720 msgid "" ":mod:`venv` now includes activation scripts for the ``csh`` and ``fish`` " "shells. (Contributed by Andrew Svetlov in :issue:`15417`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1723 msgid "" ":class:`~venv.EnvBuilder` and the :func:`~venv.create` convenience function " "take a new keyword argument *with_pip*, which defaults to ``False``, that " "controls whether or not :class:`~venv.EnvBuilder` ensures that ``pip`` is " "installed in the virtual environment. (Contributed by Nick Coghlan in :" "issue:`19552` as part of the :pep:`453` implementation.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1731 msgid "wave" msgstr "wave" #: ../Doc/whatsnew/3.4.rst:1733 msgid "" "The :meth:`~wave.getparams` method now returns a namedtuple rather than a " "plain tuple. (Contributed by Claudiu Popa in :issue:`17487`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1736 msgid "" ":meth:`wave.open` now supports the context management protocol. " "(Contributed by Claudiu Popa in :issue:`17616`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1739 msgid "" ":mod:`wave` can now :ref:`write output to unseekable files `. (Contributed by David Jones, Guilherme Polo, and Serhiy " "Storchaka in :issue:`5202`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1743 msgid "" "The :meth:`~wave.Wave_write.writeframesraw` and :meth:`~wave.Wave_write." "writeframes` methods now accept any :term:`bytes-like object`. (Contributed " "by Serhiy Storchaka in :issue:`8311`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1749 msgid "weakref" msgstr "weakref" #: ../Doc/whatsnew/3.4.rst:1751 msgid "" "New :class:`~weakref.WeakMethod` class simulates weak references to bound " "methods. (Contributed by Antoine Pitrou in :issue:`14631`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1754 msgid "" "New :class:`~weakref.finalize` class makes it possible to register a " "callback to be invoked when an object is garbage collected, without needing " "to carefully manage the lifecycle of the weak reference itself. " "(Contributed by Richard Oudkerk in :issue:`15528`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1759 msgid "" "The callback, if any, associated with a :class:`~weakref.ref` is now exposed " "via the :attr:`~weakref.ref.__callback__` attribute. (Contributed by Mark " "Dickinson in :issue:`17643`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1765 msgid "xml.etree" msgstr "xml.etree" #: ../Doc/whatsnew/3.4.rst:1767 msgid "" "A new parser, :class:`~xml.etree.ElementTree.XMLPullParser`, allows a non-" "blocking applications to parse XML documents. An example can be seen at :" "ref:`elementtree-pull-parsing`. (Contributed by Antoine Pitrou in :issue:" "`17741`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1772 msgid "" "The :mod:`xml.etree.ElementTree` :func:`~xml.etree.ElementTree.tostring` " "and :func:`~xml.etree.ElementTree.tostringlist` functions, and the :class:" "`~xml.etree.ElementTree.ElementTree` :meth:`~xml.etree.ElementTree." "ElementTree.write` method, now have a *short_empty_elements* :ref:`keyword-" "only parameter ` providing control over whether " "elements with no content are written in abbreviated (````) or " "expanded (````) form. (Contributed by Ariel Poliak and Serhiy " "Storchaka in :issue:`14377`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1783 ../Doc/whatsnew/3.5.rst:2085 #: ../Doc/whatsnew/3.6.rst:1085 msgid "zipfile" msgstr "zipfile" #: ../Doc/whatsnew/3.4.rst:1785 msgid "" "The :meth:`~zipfile.PyZipFile.writepy` method of the :class:`~zipfile." "PyZipFile` class has a new *filterfunc* option that can be used to control " "which directories and files are added to the archive. For example, this " "could be used to exclude test files from the archive. (Contributed by " "Christian Tismer in :issue:`19274`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1791 msgid "" "The *allowZip64* parameter to :class:`~zipfile.ZipFile` and :class:`~zipfile." "PyZipfile` is now ``True`` by default. (Contributed by William Mallard in :" "issue:`17201`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1798 msgid "CPython Implementation Changes" msgstr "" #: ../Doc/whatsnew/3.4.rst:1804 msgid "PEP 445: Customization of CPython Memory Allocators" msgstr "" #: ../Doc/whatsnew/3.4.rst:1806 msgid "" ":pep:`445` adds new C level interfaces to customize memory allocation in the " "CPython interpreter." msgstr "" #: ../Doc/whatsnew/3.4.rst:1811 msgid ":pep:`445` -- Add new APIs to customize Python memory allocators" msgstr "" #: ../Doc/whatsnew/3.4.rst:1818 msgid "PEP 442: Safe Object Finalization" msgstr "" #: ../Doc/whatsnew/3.4.rst:1820 msgid "" ":pep:`442` removes the current limitations and quirks of object finalization " "in CPython. With it, objects with :meth:`__del__` methods, as well as " "generators with :keyword:`finally` clauses, can be finalized when they are " "part of a reference cycle." msgstr "" #: ../Doc/whatsnew/3.4.rst:1825 msgid "" "As part of this change, module globals are no longer forcibly set to :const:" "`None` during interpreter shutdown in most cases, instead relying on the " "normal operation of the cyclic garbage collector. This avoids a whole class " "of interpreter-shutdown-time errors, usually involving ``__del__`` methods, " "that have plagued Python since the cyclic GC was first introduced." msgstr "" #: ../Doc/whatsnew/3.4.rst:1834 msgid ":pep:`442` -- Safe object finalization" msgstr "" #: ../Doc/whatsnew/3.4.rst:1841 msgid "PEP 456: Secure and Interchangeable Hash Algorithm" msgstr "" #: ../Doc/whatsnew/3.4.rst:1843 msgid "" ":pep:`456` follows up on earlier security fix work done on Python's hash " "algorithm to address certain DOS attacks to which public facing APIs backed " "by dictionary lookups may be subject. (See :issue:`14621` for the start of " "the current round of improvements.) The PEP unifies CPython's hash code to " "make it easier for a packager to substitute a different hash algorithm, and " "switches Python's default implementation to a SipHash implementation on " "platforms that have a 64 bit data type. Any performance differences in " "comparison with the older FNV algorithm are trivial." msgstr "" #: ../Doc/whatsnew/3.4.rst:1852 msgid "" "The PEP adds additional fields to the :attr:`sys.hash_info` struct sequence " "to describe the hash algorithm in use by the currently executing binary. " "Otherwise, the PEP does not alter any existing CPython APIs." msgstr "" #: ../Doc/whatsnew/3.4.rst:1860 msgid "PEP 436: Argument Clinic" msgstr "" #: ../Doc/whatsnew/3.4.rst:1862 msgid "" "\"Argument Clinic\" (:pep:`436`) is now part of the CPython build process " "and can be used to simplify the process of defining and maintaining accurate " "signatures for builtins and standard library extension modules implemented " "in C." msgstr "" #: ../Doc/whatsnew/3.4.rst:1867 msgid "" "Some standard library extension modules have been converted to use Argument " "Clinic in Python 3.4, and :mod:`pydoc` and :mod:`inspect` have been updated " "accordingly." msgstr "" #: ../Doc/whatsnew/3.4.rst:1871 msgid "" "It is expected that signature metadata for programmatic introspection will " "be added to additional callables implemented in C as part of Python 3.4 " "maintenance releases." msgstr "" #: ../Doc/whatsnew/3.4.rst:1876 msgid "" "The Argument Clinic PEP is not fully up to date with the state of the " "implementation. This has been deemed acceptable by the release manager and " "core development team in this case, as Argument Clinic will not be made " "available as a public API for third party use in Python 3.4." msgstr "" #: ../Doc/whatsnew/3.4.rst:1883 msgid ":pep:`436` -- The Argument Clinic DSL" msgstr "" #: ../Doc/whatsnew/3.4.rst:1884 msgid "PEP written and implemented by Larry Hastings." msgstr "" #: ../Doc/whatsnew/3.4.rst:1888 msgid "Other Build and C API Changes" msgstr "" #: ../Doc/whatsnew/3.4.rst:1890 msgid "" "The new :c:func:`PyType_GetSlot` function has been added to the stable ABI, " "allowing retrieval of function pointers from named type slots when using the " "limited API. (Contributed by Martin von Löwis in :issue:`17162`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1894 msgid "" "The new :c:func:`Py_SetStandardStreamEncoding` pre-initialization API allows " "applications embedding the CPython interpreter to reliably force a " "particular encoding and error handler for the standard streams. (Contributed " "by Bastien Montagne and Nick Coghlan in :issue:`16129`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1899 msgid "" "Most Python C APIs that don't mutate string arguments are now correctly " "marked as accepting ``const char *`` rather than ``char *``. (Contributed " "by Serhiy Storchaka in :issue:`1772673`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1903 msgid "" "A new shell version of ``python-config`` can be used even when a python " "interpreter is not available (for example, in cross compilation scenarios)." msgstr "" #: ../Doc/whatsnew/3.4.rst:1906 msgid "" ":c:func:`PyUnicode_FromFormat` now supports width and precision " "specifications for ``%s``, ``%A``, ``%U``, ``%V``, ``%S``, and ``%R``. " "(Contributed by Ysj Ray and Victor Stinner in :issue:`7330`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1910 msgid "" "New function :c:func:`PyStructSequence_InitType2` supplements the existing :" "c:func:`PyStructSequence_InitType` function. The difference is that it " "returns ``0`` on success and ``-1`` on failure." msgstr "" #: ../Doc/whatsnew/3.4.rst:1914 msgid "" "The CPython source can now be compiled using the address sanity checking " "features of recent versions of GCC and clang: the false alarms in the small " "object allocator have been silenced. (Contributed by Dhiru Kholia in :issue:" "`18596`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1919 msgid "" "The Windows build now uses `Address Space Layout Randomization `_ and `Data Execution " "Prevention `_. " "(Contributed by Christian Heimes in :issue:`16632`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1924 msgid "" "New function :c:func:`PyObject_LengthHint` is the C API equivalent of :func:" "`operator.length_hint`. (Contributed by Armin Ronacher in :issue:`16148`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1932 msgid "Other Improvements" msgstr "Autres améliorations" #: ../Doc/whatsnew/3.4.rst:1936 msgid "" "The :ref:`python ` command has a new :ref:`option `, ``-I``, which causes it to run in \"isolated mode\", " "which means that :data:`sys.path` contains neither the script's directory " "nor the user's ``site-packages`` directory, and all :envvar:`PYTHON*` " "environment variables are ignored (it implies both ``-s`` and ``-E``). " "Other restrictions may also be applied in the future, with the goal being to " "isolate the execution of a script from the user's environment. This is " "appropriate, for example, when Python is used to run a system script. On " "most POSIX systems it can and should be used in the ``#!`` line of system " "scripts. (Contributed by Christian Heimes in :issue:`16499`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1947 msgid "" "Tab-completion is now enabled by default in the interactive interpreter on " "systems that support :mod:`readline`. History is also enabled by default, " "and is written to (and read from) the file :file:`~/.python-history`. " "(Contributed by Antoine Pitrou and Éric Araujo in :issue:`5845`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1952 msgid "" "Invoking the Python interpreter with ``--version`` now outputs the version " "to standard output instead of standard error (:issue:`18338`). Similar " "changes were made to :mod:`argparse` (:issue:`18920`) and other modules that " "have script-like invocation capabilities (:issue:`18922`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:1957 msgid "" "The CPython Windows installer now adds ``.py`` to the :envvar:`PATHEXT` " "variable when extensions are registered, allowing users to run a python " "script at the windows command prompt by just typing its name without the ``." "py`` extension. (Contributed by Paul Moore in :issue:`18569`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1962 msgid "" "A new ``make`` target `coverage-report `_ will build " "python, run the test suite, and generate an HTML coverage report for the C " "codebase using ``gcov`` and `lcov `_." msgstr "" #: ../Doc/whatsnew/3.4.rst:1968 msgid "" "The ``-R`` option to the :ref:`python regression test suite ` now " "also checks for memory allocation leaks, using :func:`sys." "getallocatedblocks()`. (Contributed by Antoine Pitrou in :issue:`13390`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1973 msgid "``python -m`` now works with namespace packages." msgstr "" #: ../Doc/whatsnew/3.4.rst:1975 msgid "" "The :mod:`stat` module is now implemented in C, which means it gets the " "values for its constants from the C header files, instead of having the " "values hard-coded in the python module as was previously the case." msgstr "" #: ../Doc/whatsnew/3.4.rst:1979 msgid "" "Loading multiple python modules from a single OS module (``.so``, ``.dll``) " "now works correctly (previously it silently returned the first python module " "in the file). (Contributed by Václav Šmilauer in :issue:`16421`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1983 msgid "" "A new opcode, :opcode:`LOAD_CLASSDEREF`, has been added to fix a bug in the " "loading of free variables in class bodies that could be triggered by certain " "uses of :ref:`__prepare__ `. (Contributed by Benjamin Peterson in :" "issue:`17853`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1988 msgid "" "A number of MemoryError-related crashes were identified and fixed by Victor " "Stinner using his :pep:`445`-based ``pyfailmalloc`` tool (:issue:`18408`, :" "issue:`18520`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:1992 msgid "" "The ``pyvenv`` command now accepts a ``--copies`` option to use copies " "rather than symlinks even on systems where symlinks are the default. " "(Contributed by Vinay Sajip in :issue:`18807`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:1996 msgid "" "The ``pyvenv`` command also accepts a ``--without-pip`` option to suppress " "the otherwise-automatic bootstrapping of pip into the virtual environment. " "(Contributed by Nick Coghlan in :issue:`19552` as part of the :pep:`453` " "implementation.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:2001 msgid "" "The encoding name is now optional in the value set for the :envvar:" "`PYTHONIOENCODING` environment variable. This makes it possible to set just " "the error handler, without changing the default encoding. (Contributed by " "Serhiy Storchaka in :issue:`18818`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:2006 msgid "" "The :mod:`bz2`, :mod:`lzma`, and :mod:`gzip` module ``open`` functions now " "support ``x`` (exclusive creation) mode. (Contributed by Tim Heaney and " "Vajrasky Kok in :issue:`19201`, :issue:`19222`, and :issue:`19223`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:2012 msgid "Significant Optimizations" msgstr "" #: ../Doc/whatsnew/3.4.rst:2014 msgid "" "The UTF-32 decoder is now 3x to 4x faster. (Contributed by Serhiy Storchaka " "in :issue:`14625`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:2017 msgid "" "The cost of hash collisions for sets is now reduced. Each hash table probe " "now checks a series of consecutive, adjacent key/hash pairs before " "continuing to make random probes through the hash table. This exploits " "cache locality to make collision resolution less expensive. The collision " "resolution scheme can be described as a hybrid of linear probing and open " "addressing. The number of additional linear probes defaults to nine. This " "can be changed at compile-time by defining LINEAR_PROBES to be any value. " "Set LINEAR_PROBES=0 to turn-off linear probing entirely. (Contributed by " "Raymond Hettinger in :issue:`18771`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:2028 msgid "" "The interpreter starts about 30% faster. A couple of measures lead to the " "speedup. The interpreter loads fewer modules on startup, e.g. the :mod:" "`re`, :mod:`collections` and :mod:`locale` modules and their dependencies " "are no longer imported by default. The marshal module has been improved to " "load compiled Python code faster. (Contributed by Antoine Pitrou, Christian " "Heimes and Victor Stinner in :issue:`19219`, :issue:`19218`, :issue:" "`19209`, :issue:`19205` and :issue:`9548`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:2036 msgid "" ":class:`bz2.BZ2File` is now as fast or faster than the Python2 version for " "most cases. :class:`lzma.LZMAFile` has also been optimized. (Contributed " "by Serhiy Storchaka and Nadeem Vawda in :issue:`16034`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:2040 msgid "" ":func:`random.getrandbits` is 20%-40% faster for small integers (the most " "common use case). (Contributed by Serhiy Storchaka in :issue:`16674`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:2043 msgid "" "By taking advantage of the new storage format for strings, pickling of " "strings is now significantly faster. (Contributed by Victor Stinner and " "Antoine Pitrou in :issue:`15596`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:2047 msgid "" "A performance issue in :meth:`io.FileIO.readall` has been solved. This " "particularly affects Windows, and significantly speeds up the case of piping " "significant amounts of data through :mod:`subprocess`. (Contributed by " "Richard Oudkerk in :issue:`15758`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:2052 msgid "" ":func:`html.escape` is now 10x faster. (Contributed by Matt Bryant in :" "issue:`18020`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:2055 msgid "" "On Windows, the native ``VirtualAlloc`` is now used instead of the CRT " "``malloc`` in ``obmalloc``. Artificial benchmarks show about a 3% memory " "savings." msgstr "" #: ../Doc/whatsnew/3.4.rst:2059 msgid "" ":func:`os.urandom` now uses a lazily-opened persistent file descriptor so as " "to avoid using many file descriptors when run in parallel from multiple " "threads. (Contributed by Antoine Pitrou in :issue:`18756`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:2069 msgid "" "This section covers various APIs and other features that have been " "deprecated in Python 3.4, and will be removed in Python 3.5 or later. In " "most (but not all) cases, using the deprecated APIs will produce a :exc:" "`DeprecationWarning` when the interpreter is run with deprecation warnings " "enabled (for example, by using ``-Wd``)." msgstr "" #: ../Doc/whatsnew/3.4.rst:2077 msgid "Deprecations in the Python API" msgstr "" #: ../Doc/whatsnew/3.4.rst:2079 msgid "" "As mentioned in :ref:`whatsnew-pep-451`, a number of :mod:`importlib` " "methods and functions are deprecated: :meth:`importlib.find_loader` is " "replaced by :func:`importlib.util.find_spec`; :meth:`importlib.machinery." "PathFinder.find_module` is replaced by :meth:`importlib.machinery.PathFinder." "find_spec`; :meth:`importlib.abc.MetaPathFinder.find_module` is replaced by :" "meth:`importlib.abc.MetaPathFinder.find_spec`; :meth:`importlib.abc." "PathEntryFinder.find_loader` and :meth:`~importlib.abc.PathEntryFinder." "find_module` are replaced by :meth:`importlib.abc.PathEntryFinder." "find_spec`; all of the ``xxxLoader`` ABC ``load_module`` methods (:meth:" "`importlib.abc.Loader.load_module`, :meth:`importlib.abc.InspectLoader." "load_module`, :meth:`importlib.abc.FileLoader.load_module`, :meth:`importlib." "abc.SourceLoader.load_module`) should no longer be implemented, instead " "loaders should implement an ``exec_module`` method (:meth:`importlib.abc." "Loader.exec_module`, :meth:`importlib.abc.InspectLoader.exec_module` :meth:" "`importlib.abc.SourceLoader.exec_module`) and let the import system take " "care of the rest; and :meth:`importlib.abc.Loader.module_repr`, :meth:" "`importlib.util.module_for_loader`, :meth:`importlib.util.set_loader`, and :" "meth:`importlib.util.set_package` are no longer needed because their " "functions are now handled automatically by the import system." msgstr "" #: ../Doc/whatsnew/3.4.rst:2104 msgid "" "The :mod:`imp` module is pending deprecation. To keep compatibility with " "Python 2/3 code bases, the module's removal is currently not scheduled." msgstr "" #: ../Doc/whatsnew/3.4.rst:2107 msgid "" "The :mod:`formatter` module is pending deprecation and is slated for removal " "in Python 3.6." msgstr "" #: ../Doc/whatsnew/3.4.rst:2110 msgid "" "``MD5`` as the default *digestmod* for the :func:`hmac.new` function is " "deprecated. Python 3.6 will require an explicit digest name or constructor " "as *digestmod* argument." msgstr "" #: ../Doc/whatsnew/3.4.rst:2114 msgid "" "The internal ``Netrc`` class in the :mod:`ftplib` module has been documented " "as deprecated in its docstring for quite some time. It now emits a :exc:" "`DeprecationWarning` and will be removed completely in Python 3.5." msgstr "" #: ../Doc/whatsnew/3.4.rst:2118 msgid "" "The undocumented *endtime* argument to :meth:`subprocess.Popen.wait` should " "not have been exposed and is hopefully not in use; it is deprecated and will " "mostly likely be removed in Python 3.5." msgstr "" #: ../Doc/whatsnew/3.4.rst:2122 msgid "" "The *strict* argument of :class:`~html.parser.HTMLParser` is deprecated." msgstr "" #: ../Doc/whatsnew/3.4.rst:2124 msgid "" "The :mod:`plistlib` :func:`~plistlib.readPlist`, :func:`~plistlib." "writePlist`, :func:`~plistlib.readPlistFromBytes`, and :func:`~plistlib." "writePlistToBytes` functions are deprecated in favor of the corresponding " "new functions :func:`~plistlib.load`, :func:`~plistlib.dump`, :func:" "`~plistlib.loads`, and :func:`~plistlib.dumps`. :func:`~plistlib.Data` is " "deprecated in favor of just using the :class:`bytes` constructor." msgstr "" #: ../Doc/whatsnew/3.4.rst:2131 msgid "" "The :mod:`sysconfig` key ``SO`` is deprecated, it has been replaced by " "``EXT_SUFFIX``." msgstr "" #: ../Doc/whatsnew/3.4.rst:2134 msgid "" "The ``U`` mode accepted by various ``open`` functions is deprecated. In " "Python3 it does not do anything useful, and should be replaced by " "appropriate uses of :class:`io.TextIOWrapper` (if needed) and its *newline* " "argument." msgstr "" #: ../Doc/whatsnew/3.4.rst:2139 msgid "" "The *parser* argument of :func:`xml.etree.ElementTree.iterparse` has been " "deprecated, as has the *html* argument of :func:`~xml.etree.ElementTree." "XMLParser`. To prepare for the removal of the latter, all arguments to " "``XMLParser`` should be passed by keyword." msgstr "" #: ../Doc/whatsnew/3.4.rst:2146 msgid "Deprecated Features" msgstr "Fonctionnalités dépréciées" #: ../Doc/whatsnew/3.4.rst:2148 msgid "" "Running :ref:`idle` with the ``-n`` flag (no subprocess) is deprecated. " "However, the feature will not be removed until :issue:`18823` is resolved." msgstr "" #: ../Doc/whatsnew/3.4.rst:2151 msgid "" "The site module adding a \"site-python\" directory to sys.path, if it " "exists, is deprecated (:issue:`19375`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:2157 ../Doc/whatsnew/3.5.rst:2351 #: ../Doc/whatsnew/3.6.rst:1300 msgid "Removed" msgstr "" #: ../Doc/whatsnew/3.4.rst:2161 msgid "Operating Systems No Longer Supported" msgstr "" #: ../Doc/whatsnew/3.4.rst:2163 msgid "" "Support for the following operating systems has been removed from the source " "and build tools:" msgstr "" #: ../Doc/whatsnew/3.4.rst:2166 msgid "OS/2 (:issue:`16135`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:2167 msgid "Windows 2000 (changeset e52df05b496a)." msgstr "" #: ../Doc/whatsnew/3.4.rst:2168 msgid "" "Windows systems where ``COMSPEC`` points to ``command.com`` (:issue:`14470`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:2169 msgid "VMS (:issue:`16136`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:2173 ../Doc/whatsnew/3.5.rst:2354 #: ../Doc/whatsnew/3.6.rst:1303 msgid "API and Feature Removals" msgstr "" #: ../Doc/whatsnew/3.4.rst:2175 ../Doc/whatsnew/3.5.rst:2356 msgid "" "The following obsolete and previously deprecated APIs and features have been " "removed:" msgstr "" #: ../Doc/whatsnew/3.4.rst:2178 msgid "" "The unmaintained ``Misc/TextMate`` and ``Misc/vim`` directories have been " "removed (see the `devguide `_ for " "suggestions on what to use instead)." msgstr "" #: ../Doc/whatsnew/3.4.rst:2182 msgid "" "The ``SO`` makefile macro is removed (it was replaced by the " "``SHLIB_SUFFIX`` and ``EXT_SUFFIX`` macros) (:issue:`16754`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:2185 msgid "" "The ``PyThreadState.tick_counter`` field has been removed; its value has " "been meaningless since Python 3.2, when the \"new GIL\" was introduced (:" "issue:`19199`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:2189 msgid "" "``PyLoader`` and ``PyPycLoader`` have been removed from :mod:`importlib`. " "(Contributed by Taras Lyapun in :issue:`15641`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:2192 msgid "" "The *strict* argument to :class:`~http.client.HTTPConnection` and :class:" "`~http.client.HTTPSConnection` has been removed. HTTP 0.9-style \"Simple " "Responses\" are no longer supported." msgstr "" #: ../Doc/whatsnew/3.4.rst:2196 msgid "" "The deprecated :mod:`urllib.request.Request` getter and setter methods " "``add_data``, ``has_data``, ``get_data``, ``get_type``, ``get_host``, " "``get_selector``, ``set_proxy``, ``get_origin_req_host``, and " "``is_unverifiable`` have been removed (use direct attribute access instead)." msgstr "" #: ../Doc/whatsnew/3.4.rst:2201 msgid "" "Support for loading the deprecated ``TYPE_INT64`` has been removed from :mod:" "`marshal`. (Contributed by Dan Riti in :issue:`15480`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:2204 msgid "" ":class:`inspect.Signature`: positional-only parameters are now required to " "have a valid name." msgstr "" #: ../Doc/whatsnew/3.4.rst:2207 msgid "" ":meth:`object.__format__` no longer accepts non-empty format strings, it now " "raises a :exc:`TypeError` instead. Using a non-empty string has been " "deprecated since Python 3.2. This change has been made to prevent a " "situation where previously working (but incorrect) code would start failing " "if an object gained a __format__ method, which means that your code may now " "raise a :exc:`TypeError` if you are using an ``'s'`` format code with " "objects that do not have a __format__ method that handles it. See :issue:" "`7994` for background." msgstr "" #: ../Doc/whatsnew/3.4.rst:2216 msgid "" ":meth:`difflib.SequenceMatcher.isbjunk` and :meth:`difflib.SequenceMatcher." "isbpopular` were deprecated in 3.2, and have now been removed: use ``x in sm." "bjunk`` and ``x in sm.bpopular``, where *sm* is a :class:`~difflib." "SequenceMatcher` object (:issue:`13248`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:2224 msgid "Code Cleanups" msgstr "" #: ../Doc/whatsnew/3.4.rst:2226 msgid "" "The unused and undocumented internal ``Scanner`` class has been removed from " "the :mod:`pydoc` module." msgstr "" #: ../Doc/whatsnew/3.4.rst:2229 msgid "" "The private and effectively unused ``_gestalt`` module has been removed, " "along with the private :mod:`platform` functions ``_mac_ver_lookup``, " "``_mac_ver_gstalt``, and ``_bcd2str``, which would only have ever been " "called on badly broken OSX systems (see :issue:`18393`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:2234 msgid "" "The hardcoded copies of certain :mod:`stat` constants that were included in " "the :mod:`tarfile` module namespace have been removed." msgstr "" #: ../Doc/whatsnew/3.4.rst:2240 msgid "Porting to Python 3.4" msgstr "Portage vers Python 3.4" #: ../Doc/whatsnew/3.4.rst:2247 ../Doc/whatsnew/3.6.rst:1340 msgid "Changes in 'python' Command Behavior" msgstr "" #: ../Doc/whatsnew/3.4.rst:2249 msgid "" "In a posix shell, setting the :envvar:`PATH` environment variable to an " "empty value is equivalent to not setting it at all. However, setting :" "envvar:`PYTHONPATH` to an empty value was *not* equivalent to not setting it " "at all: setting :envvar:`PYTHONPATH` to an empty value was equivalent to " "setting it to ``.``, which leads to confusion when reasoning by analogy to " "how :envvar:`PATH` works. The behavior now conforms to the posix convention " "for :envvar:`PATH`." msgstr "" #: ../Doc/whatsnew/3.4.rst:2257 msgid "" "The [X refs, Y blocks] output of a debug (``--with-pydebug``) build of the " "CPython interpreter is now off by default. It can be re-enabled using the " "``-X showrefcount`` option. (Contributed by Ezio Melotti in :issue:`17323`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:2261 msgid "" "The python command and most stdlib scripts (as well as :mod:`argparse`) now " "output ``--version`` information to ``stdout`` instead of ``stderr`` (for " "issue list see :ref:`other-improvements-3.4` above)." msgstr "" #: ../Doc/whatsnew/3.4.rst:2267 ../Doc/whatsnew/3.5.rst:2395 #: ../Doc/whatsnew/3.6.rst:1350 msgid "Changes in the Python API" msgstr "" #: ../Doc/whatsnew/3.4.rst:2269 msgid "" "The ABCs defined in :mod:`importlib.abc` now either raise the appropriate " "exception or return a default value instead of raising :exc:" "`NotImplementedError` blindly. This will only affect code calling :func:" "`super` and falling through all the way to the ABCs. For compatibility, " "catch both :exc:`NotImplementedError` or the appropriate exception as needed." msgstr "" #: ../Doc/whatsnew/3.4.rst:2275 msgid "" "The module type now initializes the :attr:`__package__` and :attr:" "`__loader__` attributes to ``None`` by default. To determine if these " "attributes were set in a backwards-compatible fashion, use e.g. " "``getattr(module, '__loader__', None) is not None``. (:issue:`17115`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:2280 msgid "" ":meth:`importlib.util.module_for_loader` now sets ``__loader__`` and " "``__package__`` unconditionally to properly support reloading. If this is " "not desired then you will need to set these attributes manually. You can " "use :func:`importlib.util.module_to_load` for module management." msgstr "" #: ../Doc/whatsnew/3.4.rst:2285 msgid "" "Import now resets relevant attributes (e.g. ``__name__``, ``__loader__``, " "``__package__``, ``__file__``, ``__cached__``) unconditionally when " "reloading. Note that this restores a pre-3.3 behavior in that it means a " "module is re-found when re-loaded (:issue:`19413`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:2290 msgid "" "Frozen packages no longer set ``__path__`` to a list containing the package " "name, they now set it to an empty list. The previous behavior could cause " "the import system to do the wrong thing on submodule imports if there was " "also a directory with the same name as the frozen package. The correct way " "to determine if a module is a package or not is to use ``hasattr(module, " "'__path__')`` (:issue:`18065`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:2297 msgid "" "Frozen modules no longer define a ``__file__`` attribute. It's semantically " "incorrect for frozen modules to set the attribute as they are not loaded " "from any explicit location. If you must know that a module comes from frozen " "code then you can see if the module's ``__spec__.location`` is set to " "``'frozen'``, check if the loader is a subclass of :class:`importlib." "machinery.FrozenImporter`, or if Python 2 compatibility is necessary you can " "use :func:`imp.is_frozen`." msgstr "" #: ../Doc/whatsnew/3.4.rst:2305 msgid "" ":func:`py_compile.compile` now raises :exc:`FileExistsError` if the file " "path it would write to is a symlink or a non-regular file. This is to act as " "a warning that import will overwrite those files with a regular file " "regardless of what type of file path they were originally." msgstr "" #: ../Doc/whatsnew/3.4.rst:2310 msgid "" ":meth:`importlib.abc.SourceLoader.get_source` no longer raises :exc:" "`ImportError` when the source code being loaded triggers a :exc:" "`SyntaxError` or :exc:`UnicodeDecodeError`. As :exc:`ImportError` is meant " "to be raised only when source code cannot be found but it should, it was " "felt to be over-reaching/overloading of that meaning when the source code is " "found but improperly structured. If you were catching ImportError before and " "wish to continue to ignore syntax or decoding issues, catch all three " "exceptions now." msgstr "" #: ../Doc/whatsnew/3.4.rst:2319 msgid "" ":func:`functools.update_wrapper` and :func:`functools.wraps` now correctly " "set the ``__wrapped__`` attribute to the function being wrapped, even if " "that function also had its ``__wrapped__`` attribute set. This means " "``__wrapped__`` attributes now correctly link a stack of decorated functions " "rather than every ``__wrapped__`` attribute in the chain referring to the " "innermost function. Introspection libraries that assumed the previous " "behaviour was intentional can use :func:`inspect.unwrap` to access the first " "function in the chain that has no ``__wrapped__`` attribute." msgstr "" #: ../Doc/whatsnew/3.4.rst:2329 msgid "" ":func:`inspect.getfullargspec` has been reimplemented on top of :func:" "`inspect.signature` and hence handles a much wider variety of callable " "objects than it did in the past. It is expected that additional builtin and " "extension module callables will gain signature metadata over the course of " "the Python 3.4 series. Code that assumes that :func:`inspect.getfullargspec` " "will fail on non-Python callables may need to be adjusted accordingly." msgstr "" #: ../Doc/whatsnew/3.4.rst:2337 msgid "" ":class:`importlib.machinery.PathFinder` now passes on the current working " "directory to objects in :data:`sys.path_hooks` for the empty string. This " "results in :data:`sys.path_importer_cache` never containing ``''``, thus " "iterating through :data:`sys.path_importer_cache` based on :data:`sys.path` " "will not find all keys. A module's ``__file__`` when imported in the current " "working directory will also now have an absolute path, including when using " "``-m`` with the interpreter (except for ``__main__.__file__`` when a script " "has been executed directly using a relative path) (Contributed by Brett " "Cannon in :issue:`18416`). is specified on the command-line) (:issue:" "`18416`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:2348 msgid "" "The removal of the *strict* argument to :class:`~http.client.HTTPConnection` " "and :class:`~http.client.HTTPSConnection` changes the meaning of the " "remaining arguments if you are specifying them positionally rather than by " "keyword. If you've been paying attention to deprecation warnings your code " "should already be specifying any additional arguments via keywords." msgstr "" #: ../Doc/whatsnew/3.4.rst:2354 msgid "" "Strings between ``from __future__ import ...`` statements now *always* raise " "a :exc:`SyntaxError`. Previously if there was no leading docstring, an " "interstitial string would sometimes be ignored. This brings CPython into " "compliance with the language spec; Jython and PyPy already were. (:issue:" "`17434`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:2360 msgid "" ":meth:`ssl.SSLSocket.getpeercert` and :meth:`ssl.SSLSocket.do_handshake` now " "raise an :exc:`OSError` with ``ENOTCONN`` when the ``SSLSocket`` is not " "connected, instead of the previous behavior of raising an :exc:" "`AttributeError`. In addition, :meth:`~ssl.SSLSocket.getpeercert` will " "raise a :exc:`ValueError` if the handshake has not yet been done." msgstr "" #: ../Doc/whatsnew/3.4.rst:2366 msgid "" ":func:`base64.b32decode` now raises a :exc:`binascii.Error` when the input " "string contains non-b32-alphabet characters, instead of a :exc:`TypeError`. " "This particular :exc:`TypeError` was missed when the other :exc:`TypeError`" "\\ s were converted. (Contributed by Serhiy Storchaka in :issue:`18011`.) " "Note: this change was also inadvertently applied in Python 3.3.3." msgstr "" #: ../Doc/whatsnew/3.4.rst:2373 msgid "" "The :attr:`~cgi.FieldStorage.file` attribute is now automatically closed " "when the creating :class:`cgi.FieldStorage` instance is garbage collected. " "If you were pulling the file object out separately from the :class:`cgi." "FieldStorage` instance and not keeping the instance alive, then you should " "either store the entire :class:`cgi.FieldStorage` instance or read the " "contents of the file before the :class:`cgi.FieldStorage` instance is " "garbage collected." msgstr "" #: ../Doc/whatsnew/3.4.rst:2380 msgid "" "Calling ``read`` or ``write`` on a closed SSL socket now raises an " "informative :exc:`ValueError` rather than the previous more mysterious :exc:" "`AttributeError` (:issue:`9177`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:2384 msgid "" ":meth:`slice.indices` no longer produces an :exc:`OverflowError` for huge " "values. As a consequence of this fix, :meth:`slice.indices` now raises a :" "exc:`ValueError` if given a negative length; previously it returned nonsense " "values (:issue:`14794`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:2389 msgid "" "The :class:`complex` constructor, unlike the :mod:`cmath` functions, was " "incorrectly accepting :class:`float` values if an object's ``__complex__`` " "special method returned one. This now raises a :exc:`TypeError`. (:issue:" "`16290`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:2394 msgid "" "The :class:`int` constructor in 3.2 and 3.3 erroneously accepts :class:" "`float` values for the *base* parameter. It is unlikely anyone was doing " "this, but if so, it will now raise a :exc:`TypeError` (:issue:`16772`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:2398 msgid "" "Defaults for keyword-only arguments are now evaluated *after* defaults for " "regular keyword arguments, instead of before. Hopefully no one wrote any " "code that depends on the previous buggy behavior (:issue:`16967`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:2402 msgid "" "Stale thread states are now cleared after :func:`~os.fork`. This may cause " "some system resources to be released that previously were incorrectly kept " "perpetually alive (for example, database connections kept in thread-local " "storage). (:issue:`17094`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:2407 msgid "" "Parameter names in ``__annotations__`` dicts are now mangled properly, " "similarly to ``__kwdefaults__``. (Contributed by Yury Selivanov in :issue:" "`20625`.)" msgstr "" #: ../Doc/whatsnew/3.4.rst:2411 msgid "" ":attr:`hashlib.hash.name` now always returns the identifier in lower case. " "Previously some builtin hashes had uppercase names, but now that it is a " "formal public interface the naming has been made consistent (:issue:`18532`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:2415 msgid "" "Because :mod:`unittest.TestSuite` now drops references to tests after they " "are run, test harnesses that re-use a :class:`~unittest.TestSuite` to re-run " "a set of tests may fail. Test suites should not be re-used in this fashion " "since it means state is retained between test runs, breaking the test " "isolation that :mod:`unittest` is designed to provide. However, if the lack " "of isolation is considered acceptable, the old behavior can be restored by " "creating a :mod:`~unittest.TestSuite` subclass that defines a " "``_removeTestAtIndex`` method that does nothing (see :meth:`.TestSuite." "__iter__`) (:issue:`11798`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:2425 msgid "" ":mod:`unittest` now uses :mod:`argparse` for command line parsing. There " "are certain invalid command forms that used to work that are no longer " "allowed; in theory this should not cause backward compatibility issues since " "the disallowed command forms didn't make any sense and are unlikely to be in " "use." msgstr "" #: ../Doc/whatsnew/3.4.rst:2430 msgid "" "The :func:`re.split`, :func:`re.findall`, and :func:`re.sub` functions, and " "the :meth:`~re.match.group` and :meth:`~re.match.groups` methods of " "``match`` objects now always return a *bytes* object when the string to be " "matched is a :term:`bytes-like object`. Previously the return type matched " "the input type, so if your code was depending on the return value being, " "say, a ``bytearray``, you will need to change your code." msgstr "" #: ../Doc/whatsnew/3.4.rst:2437 msgid "" ":mod:`audioop` functions now raise an error immediately if passed string " "input, instead of failing randomly later on (:issue:`16685`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:2440 msgid "" "The new *convert_charrefs* argument to :class:`~html.parser.HTMLParser` " "currently defaults to ``False`` for backward compatibility, but will " "eventually be changed to default to ``True``. It is recommended that you " "add this keyword, with the appropriate value, to any :class:`~html.parser." "HTMLParser` calls in your code (:issue:`13633`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:2446 msgid "" "Since the *digestmod* argument to the :func:`hmac.new` function will in the " "future have no default, all calls to :func:`hmac.new` should be changed to " "explicitly specify a *digestmod* (:issue:`17276`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:2450 msgid "" "Calling :func:`sysconfig.get_config_var` with the ``SO`` key, or looking " "``SO`` up in the results of a call to :func:`sysconfig.get_config_vars` is " "deprecated. This key should be replaced by ``EXT_SUFFIX`` or " "``SHLIB_SUFFIX``, depending on the context (:issue:`19555`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:2455 msgid "" "Any calls to ``open`` functions that specify ``U`` should be modified. ``U`` " "is ineffective in Python3 and will eventually raise an error if used. " "Depending on the function, the equivalent of its old Python2 behavior can be " "achieved using either a *newline* argument, or if necessary by wrapping the " "stream in :mod:`~io.TextIOWrapper` to use its *newline* argument (:issue:" "`15204`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:2462 msgid "" "If you use ``pyvenv`` in a script and desire that pip *not* be installed, " "you must add ``--without-pip`` to your command invocation." msgstr "" #: ../Doc/whatsnew/3.4.rst:2466 msgid "" "The default behavior of :func:`json.dump` and :func:`json.dumps` when an " "indent is specified has changed: it no longer produces trailing spaces after " "the item separating commas at the ends of lines. This will matter only if " "you have tests that are doing white-space-sensitive comparisons of such " "output (:issue:`16333`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:2472 msgid "" ":mod:`doctest` now looks for doctests in extension module ``__doc__`` " "strings, so if your doctest test discovery includes extension modules that " "have things that look like doctests in them you may see test failures you've " "never seen before when running your tests (:issue:`3158`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:2477 msgid "" "The :mod:`collections.abc` module has been slightly refactored as part of " "the Python startup improvements. As a consequence of this, it is no longer " "the case that importing :mod:`collections` automatically imports :mod:" "`collections.abc`. If your program depended on the (undocumented) implicit " "import, you will need to add an explicit ``import collections.abc`` (:issue:" "`20784`)." msgstr "" #: ../Doc/whatsnew/3.4.rst:2486 ../Doc/whatsnew/3.5.rst:2512 #: ../Doc/whatsnew/3.6.rst:1467 msgid "Changes in the C API" msgstr "" #: ../Doc/whatsnew/3.4.rst:2488 msgid "" ":c:func:`PyEval_EvalFrameEx`, :c:func:`PyObject_Repr`, and :c:func:" "`PyObject_Str`, along with some other internal C APIs, now include a " "debugging assertion that ensures they are not used in situations where they " "may silently discard a currently active exception. In cases where discarding " "the active exception is expected and desired (for example, because it has " "already been saved locally with :c:func:`PyErr_Fetch` or is being " "deliberately replaced with a different exception), an explicit :c:func:" "`PyErr_Clear` call will be needed to avoid triggering the assertion when " "invoking these operations (directly or indirectly) and running against a " "version of Python that is compiled with assertions enabled." msgstr "" #: ../Doc/whatsnew/3.4.rst:2500 msgid "" ":c:func:`PyErr_SetImportError` now sets :exc:`TypeError` when its **msg** " "argument is not set. Previously only ``NULL`` was returned with no exception " "set." msgstr "" #: ../Doc/whatsnew/3.4.rst:2504 msgid "" "The result of the :c:data:`PyOS_ReadlineFunctionPointer` callback must now " "be a string allocated by :c:func:`PyMem_RawMalloc` or :c:func:" "`PyMem_RawRealloc`, or *NULL* if an error occurred, instead of a string " "allocated by :c:func:`PyMem_Malloc` or :c:func:`PyMem_Realloc` (:issue:" "`16742`)" msgstr "" #: ../Doc/whatsnew/3.4.rst:2510 msgid "" ":c:func:`PyThread_set_key_value` now always set the value. In Python 3.3, " "the function did nothing if the key already exists (if the current value is " "a non-NULL pointer)." msgstr "" #: ../Doc/whatsnew/3.4.rst:2514 msgid "" "The ``f_tstate`` (thread state) field of the :c:type:`PyFrameObject` " "structure has been removed to fix a bug: see :issue:`14432` for the " "rationale." msgstr "" #: ../Doc/whatsnew/3.4.rst:2519 msgid "Changed in 3.4.3" msgstr "" #: ../Doc/whatsnew/3.4.rst:2524 msgid "" "PEP 476: Enabling certificate verification by default for stdlib http clients" msgstr "" #: ../Doc/whatsnew/3.4.rst:2526 msgid "" ":mod:`http.client` and modules which use it, such as :mod:`urllib.request` " "and :mod:`xmlrpc.client`, will now verify that the server presents a " "certificate which is signed by a CA in the platform trust store and whose " "hostname matches the hostname being requested by default, significantly " "improving security for many applications." msgstr "" #: ../Doc/whatsnew/3.4.rst:2532 msgid "" "For applications which require the old previous behavior, they can pass an " "alternate context::" msgstr "" #: ../Doc/whatsnew/3.5.rst:3 msgid "What's New In Python 3.5" msgstr "Nouveautés de Python 3.5" #: ../Doc/whatsnew/3.5.rst:5 msgid "Elvis Pranskevichus , Yury Selivanov " msgstr "" #: ../Doc/whatsnew/3.5.rst:47 msgid "" "This article explains the new features in Python 3.5, compared to 3.4. " "Python 3.5 was released on September 13, 2015.  See the `changelog `_ for a full list of changes." msgstr "" #: ../Doc/whatsnew/3.5.rst:54 msgid ":pep:`478` - Python 3.5 Release Schedule" msgstr "" #: ../Doc/whatsnew/3.5.rst:62 msgid "" ":ref:`PEP 492 `, coroutines with async and await syntax." msgstr "" #: ../Doc/whatsnew/3.5.rst:63 msgid "" ":ref:`PEP 465 `, a new matrix multiplication operator: ``a " "@ b``." msgstr "" #: ../Doc/whatsnew/3.5.rst:64 msgid "" ":ref:`PEP 448 `, additional unpacking generalizations." msgstr "" #: ../Doc/whatsnew/3.5.rst:69 msgid ":mod:`typing`: :ref:`PEP 484 -- Type Hints `." msgstr "" #: ../Doc/whatsnew/3.5.rst:70 msgid "" ":mod:`zipapp`: :ref:`PEP 441 Improving Python ZIP Application Support " "`." msgstr "" #: ../Doc/whatsnew/3.5.rst:76 msgid "" "``bytes % args``, ``bytearray % args``: :ref:`PEP 461 ` -- " "Adding ``%`` formatting to bytes and bytearray." msgstr "" #: ../Doc/whatsnew/3.5.rst:79 msgid "" "New :meth:`bytes.hex`, :meth:`bytearray.hex` and :meth:`memoryview.hex` " "methods. (Contributed by Arnon Yaari in :issue:`9951`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:82 msgid "" ":class:`memoryview` now supports tuple indexing (including multi-" "dimensional). (Contributed by Antoine Pitrou in :issue:`23632`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:85 msgid "" "Generators have a new ``gi_yieldfrom`` attribute, which returns the object " "being iterated by ``yield from`` expressions. (Contributed by Benno Leslie " "and Yury Selivanov in :issue:`24450`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:89 msgid "" "A new :exc:`RecursionError` exception is now raised when maximum recursion " "depth is reached. (Contributed by Georg Brandl in :issue:`19235`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:96 msgid "" "When the ``LC_TYPE`` locale is the POSIX locale (``C`` locale), :py:data:" "`sys.stdin` and :py:data:`sys.stdout` now use the ``surrogateescape`` error " "handler, instead of the ``strict`` error handler. (Contributed by Victor " "Stinner in :issue:`19977`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:101 msgid "" "``.pyo`` files are no longer used and have been replaced by a more flexible " "scheme that includes the optimization level explicitly in ``.pyc`` name. " "(See :ref:`PEP 488 overview `.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:105 msgid "" "Builtin and extension modules are now initialized in a multi-phase process, " "which is similar to how Python modules are loaded. (See :ref:`PEP 489 " "overview `.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:110 msgid "Significant improvements in the standard library:" msgstr "" #: ../Doc/whatsnew/3.5.rst:112 msgid "" ":class:`collections.OrderedDict` is now :ref:`implemented in C `, which makes it 4 to 100 times faster." msgstr "" #: ../Doc/whatsnew/3.5.rst:116 msgid "" "The :mod:`ssl` module gained :ref:`support for Memory BIO `, which decouples SSL protocol handling from network IO." msgstr "" #: ../Doc/whatsnew/3.5.rst:120 msgid "" "The new :func:`os.scandir` function provides a :ref:`better and " "significantly faster way ` of directory traversal." msgstr "" #: ../Doc/whatsnew/3.5.rst:124 msgid "" ":func:`functools.lru_cache` has been mostly :ref:`reimplemented in C " "`, yielding much better performance." msgstr "" #: ../Doc/whatsnew/3.5.rst:128 msgid "" "The new :func:`subprocess.run` function provides a :ref:`streamlined way to " "run subprocesses `." msgstr "" #: ../Doc/whatsnew/3.5.rst:131 msgid "" "The :mod:`traceback` module has been significantly :ref:`enhanced ` for improved performance and developer convenience." msgstr "" #: ../Doc/whatsnew/3.5.rst:138 msgid "" "SSLv3 is now disabled throughout the standard library. It can still be " "enabled by instantiating a :class:`ssl.SSLContext` manually. (See :issue:" "`22638` for more details; this change was backported to CPython 3.4 and 2.7.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:143 msgid "" "HTTP cookie parsing is now stricter, in order to protect against potential " "injection attacks. (Contributed by Antoine Pitrou in :issue:`22796`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:148 ../Doc/whatsnew/3.6.rst:96 msgid "Windows improvements:" msgstr "" #: ../Doc/whatsnew/3.5.rst:150 msgid "" "A new installer for Windows has replaced the old MSI. See :ref:`using-on-" "windows` for more information." msgstr "" #: ../Doc/whatsnew/3.5.rst:153 msgid "" "Windows builds now use Microsoft Visual C++ 14.0, and extension modules " "should use the same." msgstr "" #: ../Doc/whatsnew/3.5.rst:168 msgid "PEP 492 - Coroutines with async and await syntax" msgstr "" #: ../Doc/whatsnew/3.5.rst:170 msgid "" ":pep:`492` greatly improves support for asynchronous programming in Python " "by adding :term:`awaitable objects `, :term:`coroutine functions " "`, :term:`asynchronous iteration `, and :term:`asynchronous context managers `." msgstr "" #: ../Doc/whatsnew/3.5.rst:176 msgid "" "Coroutine functions are declared using the new :keyword:`async def` syntax::" msgstr "" #: ../Doc/whatsnew/3.5.rst:181 msgid "" "Inside a coroutine function, the new :keyword:`await` expression can be used " "to suspend coroutine execution until the result is available. Any object " "can be *awaited*, as long as it implements the :term:`awaitable` protocol by " "defining the :meth:`__await__` method." msgstr "" #: ../Doc/whatsnew/3.5.rst:186 msgid "" "PEP 492 also adds :keyword:`async for` statement for convenient iteration " "over asynchronous iterables." msgstr "" #: ../Doc/whatsnew/3.5.rst:189 msgid "An example of a rudimentary HTTP client written using the new syntax::" msgstr "" #: ../Doc/whatsnew/3.5.rst:215 msgid "" "Similarly to asynchronous iteration, there is a new syntax for asynchronous " "context managers. The following script::" msgstr "" #: ../Doc/whatsnew/3.5.rst:235 msgid "will output::" msgstr "affichera ::" #: ../Doc/whatsnew/3.5.rst:244 msgid "" "Note that both :keyword:`async for` and :keyword:`async with` can only be " "used inside a coroutine function declared with :keyword:`async def`." msgstr "" #: ../Doc/whatsnew/3.5.rst:247 msgid "" "Coroutine functions are intended to be run inside a compatible event loop, " "such as the :ref:`asyncio loop `." msgstr "" #: ../Doc/whatsnew/3.5.rst:253 msgid "" "Starting with CPython 3.5.2, ``__aiter__`` can directly return :term:" "`asynchronous iterators `. Returning an :term:" "`awaitable` object will result in a :exc:`PendingDeprecationWarning`." msgstr "" #: ../Doc/whatsnew/3.5.rst:259 msgid "See more details in the :ref:`async-iterators` documentation section." msgstr "" #: ../Doc/whatsnew/3.5.rst:265 msgid ":pep:`492` -- Coroutines with async and await syntax" msgstr "" #: ../Doc/whatsnew/3.5.rst:266 msgid "PEP written and implemented by Yury Selivanov." msgstr "" #: ../Doc/whatsnew/3.5.rst:272 msgid "PEP 465 - A dedicated infix operator for matrix multiplication" msgstr "" #: ../Doc/whatsnew/3.5.rst:274 msgid "" ":pep:`465` adds the ``@`` infix operator for matrix multiplication. " "Currently, no builtin Python types implement the new operator, however, it " "can be implemented by defining :meth:`__matmul__`, :meth:`__rmatmul__`, and :" "meth:`__imatmul__` for regular, reflected, and in-place matrix " "multiplication. The semantics of these methods is similar to that of " "methods defining other infix arithmetic operators." msgstr "" #: ../Doc/whatsnew/3.5.rst:281 msgid "" "Matrix multiplication is a notably common operation in many fields of " "mathematics, science, engineering, and the addition of ``@`` allows writing " "cleaner code::" msgstr "" #: ../Doc/whatsnew/3.5.rst:287 msgid "instead of::" msgstr "" #: ../Doc/whatsnew/3.5.rst:292 msgid "NumPy 1.10 has support for the new operator::" msgstr "" #: ../Doc/whatsnew/3.5.rst:312 msgid ":pep:`465` -- A dedicated infix operator for matrix multiplication" msgstr "" #: ../Doc/whatsnew/3.5.rst:313 msgid "PEP written by Nathaniel J. Smith; implemented by Benjamin Peterson." msgstr "" #: ../Doc/whatsnew/3.5.rst:319 msgid "PEP 448 - Additional Unpacking Generalizations" msgstr "" #: ../Doc/whatsnew/3.5.rst:321 msgid "" ":pep:`448` extends the allowed uses of the ``*`` iterable unpacking operator " "and ``**`` dictionary unpacking operator. It is now possible to use an " "arbitrary number of unpackings in :ref:`function calls `::" msgstr "" #: ../Doc/whatsnew/3.5.rst:335 msgid "" "Similarly, tuple, list, set, and dictionary displays allow multiple " "unpackings (see :ref:`exprlists` and :ref:`dict`)::" msgstr "" #: ../Doc/whatsnew/3.5.rst:353 msgid ":pep:`448` -- Additional Unpacking Generalizations" msgstr "" #: ../Doc/whatsnew/3.5.rst:353 msgid "" "PEP written by Joshua Landau; implemented by Neil Girdhar, Thomas Wouters, " "and Joshua Landau." msgstr "" #: ../Doc/whatsnew/3.5.rst:360 msgid "PEP 461 - percent formatting support for bytes and bytearray" msgstr "" #: ../Doc/whatsnew/3.5.rst:362 msgid "" ":pep:`461` adds support for the ``%`` :ref:`interpolation operator ` to :class:`bytes` and :class:`bytearray`." msgstr "" #: ../Doc/whatsnew/3.5.rst:366 msgid "" "While interpolation is usually thought of as a string operation, there are " "cases where interpolation on ``bytes`` or ``bytearrays`` makes sense, and " "the work needed to make up for this missing functionality detracts from the " "overall readability of the code. This issue is particularly important when " "dealing with wire format protocols, which are often a mixture of binary and " "ASCII compatible text." msgstr "" #: ../Doc/whatsnew/3.5.rst:373 ../Doc/whatsnew/3.5.rst:1848 msgid "Examples::" msgstr "Exemples : ::" #: ../Doc/whatsnew/3.5.rst:381 msgid "" "Unicode is not allowed for ``%b``, but it is accepted by ``%a`` (equivalent " "of ``repr(obj).encode('ascii', 'backslashreplace')``)::" msgstr "" #: ../Doc/whatsnew/3.5.rst:392 msgid "" "Note that ``%s`` and ``%r`` conversion types, although supported, should " "only be used in codebases that need compatibility with Python 2." msgstr "" #: ../Doc/whatsnew/3.5.rst:398 msgid ":pep:`461` -- Adding % formatting to bytes and bytearray" msgstr "" #: ../Doc/whatsnew/3.5.rst:398 msgid "" "PEP written by Ethan Furman; implemented by Neil Schemenauer and Ethan " "Furman." msgstr "" #: ../Doc/whatsnew/3.5.rst:405 msgid "PEP 484 - Type Hints" msgstr "" #: ../Doc/whatsnew/3.5.rst:407 msgid "" "Function annotation syntax has been a Python feature since version 3.0 (:pep:" "`3107`), however the semantics of annotations has been left undefined." msgstr "" #: ../Doc/whatsnew/3.5.rst:410 msgid "" "Experience has shown that the majority of function annotation uses were to " "provide type hints to function parameters and return values. It became " "evident that it would be beneficial for Python users, if the standard " "library included the base definitions and tools for type annotations." msgstr "" #: ../Doc/whatsnew/3.5.rst:415 msgid "" ":pep:`484` introduces a :term:`provisional module ` to " "provide these standard definitions and tools, along with some conventions " "for situations where annotations are not available." msgstr "" #: ../Doc/whatsnew/3.5.rst:419 msgid "" "For example, here is a simple function whose argument and return type are " "declared in the annotations::" msgstr "" #: ../Doc/whatsnew/3.5.rst:425 msgid "" "While these annotations are available at runtime through the usual :attr:" "`__annotations__` attribute, *no automatic type checking happens at " "runtime*. Instead, it is assumed that a separate off-line type checker (e." "g. `mypy `_) will be used for on-demand source code " "analysis." msgstr "" #: ../Doc/whatsnew/3.5.rst:431 msgid "" "The type system supports unions, generic types, and a special type named :" "class:`~typing.Any` which is consistent with (i.e. assignable to and from) " "all types." msgstr "" #: ../Doc/whatsnew/3.5.rst:437 msgid ":mod:`typing` module documentation" msgstr "Documentation du module :mod:`typing`" #: ../Doc/whatsnew/3.5.rst:439 msgid ":pep:`484` -- Type Hints" msgstr "" #: ../Doc/whatsnew/3.5.rst:439 msgid "" "PEP written by Guido van Rossum, Jukka Lehtosalo, and Łukasz Langa; " "implemented by Guido van Rossum." msgstr "" #: ../Doc/whatsnew/3.5.rst:441 msgid ":pep:`483` -- The Theory of Type Hints" msgstr "" #: ../Doc/whatsnew/3.5.rst:442 msgid "PEP written by Guido van Rossum" msgstr "PEP écrite par Guido van Rossum" #: ../Doc/whatsnew/3.5.rst:448 msgid "" "PEP 471 - os.scandir() function -- a better and faster directory iterator" msgstr "" #: ../Doc/whatsnew/3.5.rst:450 msgid "" ":pep:`471` adds a new directory iteration function, :func:`os.scandir`, to " "the standard library. Additionally, :func:`os.walk` is now implemented " "using ``scandir``, which makes it 3 to 5 times faster on POSIX systems and 7 " "to 20 times faster on Windows systems. This is largely achieved by greatly " "reducing the number of calls to :func:`os.stat` required to walk a directory " "tree." msgstr "" #: ../Doc/whatsnew/3.5.rst:457 msgid "" "Additionally, ``scandir`` returns an iterator, as opposed to returning a " "list of file names, which improves memory efficiency when iterating over " "very large directories." msgstr "" #: ../Doc/whatsnew/3.5.rst:461 msgid "" "The following example shows a simple use of :func:`os.scandir` to display " "all the files (excluding directories) in the given *path* that don't start " "with ``'.'``. The :meth:`entry.is_file() ` call will " "generally not make an additional system call::" msgstr "" #: ../Doc/whatsnew/3.5.rst:472 msgid "" ":pep:`471` -- os.scandir() function -- a better and faster directory iterator" msgstr "" #: ../Doc/whatsnew/3.5.rst:473 msgid "" "PEP written and implemented by Ben Hoyt with the help of Victor Stinner." msgstr "" #: ../Doc/whatsnew/3.5.rst:479 msgid "PEP 475: Retry system calls failing with EINTR" msgstr "" #: ../Doc/whatsnew/3.5.rst:481 msgid "" "An :py:data:`errno.EINTR` error code is returned whenever a system call, " "that is waiting for I/O, is interrupted by a signal. Previously, Python " "would raise :exc:`InterruptedError` in such cases. This meant that, when " "writing a Python application, the developer had two choices:" msgstr "" #: ../Doc/whatsnew/3.5.rst:486 msgid "Ignore the ``InterruptedError``." msgstr "" #: ../Doc/whatsnew/3.5.rst:487 msgid "" "Handle the ``InterruptedError`` and attempt to restart the interrupted " "system call at every call site." msgstr "" #: ../Doc/whatsnew/3.5.rst:490 msgid "" "The first option makes an application fail intermittently. The second option " "adds a large amount of boilerplate that makes the code nearly unreadable. " "Compare::" msgstr "" #: ../Doc/whatsnew/3.5.rst:496 msgid "and::" msgstr "et  : ::" #: ../Doc/whatsnew/3.5.rst:505 msgid "" ":pep:`475` implements automatic retry of system calls on ``EINTR``. This " "removes the burden of dealing with ``EINTR`` or :exc:`InterruptedError` in " "user code in most situations and makes Python programs, including the " "standard library, more robust. Note that the system call is only retried if " "the signal handler does not raise an exception." msgstr "" #: ../Doc/whatsnew/3.5.rst:512 msgid "" "Below is a list of functions which are now retried when interrupted by a " "signal:" msgstr "" #: ../Doc/whatsnew/3.5.rst:515 msgid ":func:`open` and :func:`io.open`;" msgstr ":func:`open` et :func:`io.open`;" #: ../Doc/whatsnew/3.5.rst:517 msgid "functions of the :mod:`faulthandler` module;" msgstr "" #: ../Doc/whatsnew/3.5.rst:519 msgid "" ":mod:`os` functions: :func:`~os.fchdir`, :func:`~os.fchmod`, :func:`~os." "fchown`, :func:`~os.fdatasync`, :func:`~os.fstat`, :func:`~os.fstatvfs`, :" "func:`~os.fsync`, :func:`~os.ftruncate`, :func:`~os.mkfifo`, :func:`~os." "mknod`, :func:`~os.open`, :func:`~os.posix_fadvise`, :func:`~os." "posix_fallocate`, :func:`~os.pread`, :func:`~os.pwrite`, :func:`~os.read`, :" "func:`~os.readv`, :func:`~os.sendfile`, :func:`~os.wait3`, :func:`~os." "wait4`, :func:`~os.wait`, :func:`~os.waitid`, :func:`~os.waitpid`, :func:" "`~os.write`, :func:`~os.writev`;" msgstr "" #: ../Doc/whatsnew/3.5.rst:529 msgid "" "special cases: :func:`os.close` and :func:`os.dup2` now ignore :py:data:" "`~errno.EINTR` errors; the syscall is not retried (see the PEP for the " "rationale);" msgstr "" #: ../Doc/whatsnew/3.5.rst:533 msgid "" ":mod:`select` functions: :func:`devpoll.poll() `, :func:" "`epoll.poll() `, :func:`kqueue.control() `, :func:`poll.poll() `, :func:`~select.select`;" msgstr "" #: ../Doc/whatsnew/3.5.rst:538 msgid "" "methods of the :class:`~socket.socket` class: :meth:`~socket.socket." "accept`, :meth:`~socket.socket.connect` (except for non-blocking sockets), :" "meth:`~socket.socket.recv`, :meth:`~socket.socket.recvfrom`, :meth:`~socket." "socket.recvmsg`, :meth:`~socket.socket.send`, :meth:`~socket.socket." "sendall`, :meth:`~socket.socket.sendmsg`, :meth:`~socket.socket.sendto`;" msgstr "" #: ../Doc/whatsnew/3.5.rst:545 msgid ":func:`signal.sigtimedwait` and :func:`signal.sigwaitinfo`;" msgstr "" #: ../Doc/whatsnew/3.5.rst:547 msgid ":func:`time.sleep`." msgstr ":func:`time.sleep`." #: ../Doc/whatsnew/3.5.rst:552 msgid ":pep:`475` -- Retry system calls failing with EINTR" msgstr "" #: ../Doc/whatsnew/3.5.rst:552 msgid "" "PEP and implementation written by Charles-François Natali and Victor " "Stinner, with the help of Antoine Pitrou (the French connection)." msgstr "" #: ../Doc/whatsnew/3.5.rst:559 msgid "PEP 479: Change StopIteration handling inside generators" msgstr "" #: ../Doc/whatsnew/3.5.rst:561 msgid "" "The interaction of generators and :exc:`StopIteration` in Python 3.4 and " "earlier was sometimes surprising, and could conceal obscure bugs. " "Previously, ``StopIteration`` raised accidentally inside a generator " "function was interpreted as the end of the iteration by the loop construct " "driving the generator." msgstr "" #: ../Doc/whatsnew/3.5.rst:567 msgid "" ":pep:`479` changes the behavior of generators: when a ``StopIteration`` " "exception is raised inside a generator, it is replaced with a :exc:" "`RuntimeError` before it exits the generator frame. The main goal of this " "change is to ease debugging in the situation where an unguarded :func:`next` " "call raises ``StopIteration`` and causes the iteration controlled by the " "generator to terminate silently. This is particularly pernicious in " "combination with the ``yield from`` construct." msgstr "" #: ../Doc/whatsnew/3.5.rst:575 msgid "" "This is a backwards incompatible change, so to enable the new behavior, a :" "term:`__future__` import is necessary::" msgstr "" #: ../Doc/whatsnew/3.5.rst:595 msgid "" "Without a ``__future__`` import, a :exc:`PendingDeprecationWarning` will be " "raised whenever a ``StopIteration`` exception is raised inside a generator." msgstr "" #: ../Doc/whatsnew/3.5.rst:601 msgid ":pep:`479` -- Change StopIteration handling inside generators" msgstr "" #: ../Doc/whatsnew/3.5.rst:601 msgid "" "PEP written by Chris Angelico and Guido van Rossum. Implemented by Chris " "Angelico, Yury Selivanov and Nick Coghlan." msgstr "" #: ../Doc/whatsnew/3.5.rst:608 msgid "PEP 485: A function for testing approximate equality" msgstr "" #: ../Doc/whatsnew/3.5.rst:610 msgid "" ":pep:`485` adds the :func:`math.isclose` and :func:`cmath.isclose` functions " "which tell whether two values are approximately equal or \"close\" to each " "other. Whether or not two values are considered close is determined " "according to given absolute and relative tolerances. Relative tolerance is " "the maximum allowed difference between ``isclose`` arguments, relative to " "the larger absolute value::" msgstr "" #: ../Doc/whatsnew/3.5.rst:625 msgid "" "It is also possible to compare two values using absolute tolerance, which " "must be a non-negative value::" msgstr "" #: ../Doc/whatsnew/3.5.rst:639 msgid ":pep:`485` -- A function for testing approximate equality" msgstr ":pep:`485` -- Une fonction pour tester des égalités approximées" #: ../Doc/whatsnew/3.5.rst:639 msgid "" "PEP written by Christopher Barker; implemented by Chris Barker and Tal Einat." msgstr "" #: ../Doc/whatsnew/3.5.rst:646 msgid "PEP 486: Make the Python Launcher aware of virtual environments" msgstr "" #: ../Doc/whatsnew/3.5.rst:648 msgid "" ":pep:`486` makes the Windows launcher (see :pep:`397`) aware of an active " "virtual environment. When the default interpreter would be used and the " "``VIRTUAL_ENV`` environment variable is set, the interpreter in the virtual " "environment will be used." msgstr "" #: ../Doc/whatsnew/3.5.rst:655 msgid ":pep:`486` -- Make the Python Launcher aware of virtual environments" msgstr "" #: ../Doc/whatsnew/3.5.rst:656 msgid "PEP written and implemented by Paul Moore." msgstr "" #: ../Doc/whatsnew/3.5.rst:662 msgid "PEP 488: Elimination of PYO files" msgstr "PEP 488 : Élimination des fichiers PYO" #: ../Doc/whatsnew/3.5.rst:664 msgid "" ":pep:`488` does away with the concept of ``.pyo`` files. This means that ``." "pyc`` files represent both unoptimized and optimized bytecode. To prevent " "the need to constantly regenerate bytecode files, ``.pyc`` files now have an " "optional ``opt-`` tag in their name when the bytecode is optimized. This has " "the side-effect of no more bytecode file name clashes when running under " "either :option:`-O` or :option:`-OO`. Consequently, bytecode files generated " "from :option:`-O`, and :option:`-OO` may now exist simultaneously. :func:" "`importlib.util.cache_from_source` has an updated API to help with this " "change." msgstr "" #: ../Doc/whatsnew/3.5.rst:676 msgid ":pep:`488` -- Elimination of PYO files" msgstr ":pep:`488` : Élimination des fichiers PYO" #: ../Doc/whatsnew/3.5.rst:677 msgid "PEP written and implemented by Brett Cannon." msgstr "" #: ../Doc/whatsnew/3.5.rst:683 msgid "PEP 489: Multi-phase extension module initialization" msgstr "" #: ../Doc/whatsnew/3.5.rst:685 msgid "" ":pep:`489` updates extension module initialization to take advantage of the " "two step module loading mechanism introduced by :pep:`451` in Python 3.4." msgstr "" #: ../Doc/whatsnew/3.5.rst:688 msgid "" "This change brings the import semantics of extension modules that opt-in to " "using the new mechanism much closer to those of Python source and bytecode " "modules, including the ability to use any valid identifier as a module name, " "rather than being restricted to ASCII." msgstr "" #: ../Doc/whatsnew/3.5.rst:696 msgid ":pep:`489` -- Multi-phase extension module initialization" msgstr "" #: ../Doc/whatsnew/3.5.rst:696 msgid "" "PEP written by Petr Viktorin, Stefan Behnel, and Nick Coghlan; implemented " "by Petr Viktorin." msgstr "" #: ../Doc/whatsnew/3.5.rst:705 msgid "" "Added the ``\"namereplace\"`` error handlers. The ``\"backslashreplace\"`` " "error handlers now work with decoding and translating. (Contributed by " "Serhiy Storchaka in :issue:`19676` and :issue:`22286`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:709 msgid "" "The :option:`-b` option now affects comparisons of :class:`bytes` with :" "class:`int`. (Contributed by Serhiy Storchaka in :issue:`23681`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:712 msgid "" "New Kazakh ``kz1048`` and Tajik ``koi8_t`` :ref:`codecs `. (Contributed by Serhiy Storchaka in :issue:`22682` and :issue:" "`22681`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:715 msgid "" "Property docstrings are now writable. This is especially useful for :func:" "`collections.namedtuple` docstrings. (Contributed by Berker Peksag in :issue:" "`24064`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:719 msgid "" "Circular imports involving relative imports are now supported. (Contributed " "by Brett Cannon and Antoine Pitrou in :issue:`17636`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:727 ../Doc/whatsnew/3.6.rst:980 msgid "typing" msgstr "" #: ../Doc/whatsnew/3.5.rst:729 msgid "" "The new :mod:`typing` :term:`provisional ` module provides " "standard definitions and tools for function type annotations. See :ref:`Type " "Hints ` for more information." msgstr "" #: ../Doc/whatsnew/3.5.rst:736 msgid "zipapp" msgstr "zipapp" #: ../Doc/whatsnew/3.5.rst:738 msgid "" "The new :mod:`zipapp` module (specified in :pep:`441`) provides an API and " "command line tool for creating executable Python Zip Applications, which " "were introduced in Python 2.6 in :issue:`1739468`, but which were not well " "publicized, either at the time or since." msgstr "" #: ../Doc/whatsnew/3.5.rst:743 msgid "" "With the new module, bundling your application is as simple as putting all " "the files, including a ``__main__.py`` file, into a directory ``myapp`` and " "running:" msgstr "" #: ../Doc/whatsnew/3.5.rst:752 msgid "" "The module implementation has been contributed by Paul Moore in :issue:" "`23491`." msgstr "" #: ../Doc/whatsnew/3.5.rst:757 msgid ":pep:`441` -- Improving Python ZIP Application Support" msgstr "" #: ../Doc/whatsnew/3.5.rst:766 msgid "" "The :class:`~argparse.ArgumentParser` class now allows disabling :ref:" "`abbreviated usage ` of long options by setting :ref:" "`allow_abbrev` to ``False``. (Contributed by Jonathan Paugh, Steven " "Bethard, paul j3 and Daniel Eriksson in :issue:`14910`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:775 msgid "" "Since the :mod:`asyncio` module is :term:`provisional `, " "all changes introduced in Python 3.5 have also been backported to Python 3.4." "x." msgstr "" #: ../Doc/whatsnew/3.5.rst:778 msgid "Notable changes in the :mod:`asyncio` module since Python 3.4.0:" msgstr "" #: ../Doc/whatsnew/3.5.rst:780 msgid "" "New debugging APIs: :meth:`loop.set_debug() ` and :meth:`loop.get_debug() ` " "methods. (Contributed by Victor Stinner.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:784 msgid "" "The proactor event loop now supports SSL. (Contributed by Antoine Pitrou and " "Victor Stinner in :issue:`22560`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:787 msgid "" "A new :meth:`loop.is_closed() ` method to " "check if the event loop is closed. (Contributed by Victor Stinner in :issue:" "`21326`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:791 msgid "" "A new :meth:`loop.create_task() ` to " "conveniently create and schedule a new :class:`~asyncio.Task` for a " "coroutine. The ``create_task`` method is also used by all asyncio functions " "that wrap coroutines into tasks, such as :func:`asyncio.wait`, :func:" "`asyncio.gather`, etc. (Contributed by Victor Stinner.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:798 msgid "" "A new :meth:`transport.get_write_buffer_limits() ` method to inquire for *high-* and *low-* water " "limits of the flow control. (Contributed by Victor Stinner.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:803 msgid "" "The :func:`~asyncio.async` function is deprecated in favor of :func:" "`~asyncio.ensure_future`. (Contributed by Yury Selivanov.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:807 msgid "" "New :meth:`loop.set_task_factory() ` and :meth:`loop.get_task_factory() ` methods to customize the task factory " "that :meth:`loop.create_task() ` method " "uses. (Contributed by Yury Selivanov.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:814 msgid "" "New :meth:`Queue.join() ` and :meth:`Queue.task_done() " "` queue methods. (Contributed by Victor Stinner.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:818 msgid "" "The ``JoinableQueue`` class was removed, in favor of the :class:`asyncio." "Queue` class. (Contributed by Victor Stinner.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:822 msgid "Updates in 3.5.1:" msgstr "Nouveautés dans la 3.5.1 :" #: ../Doc/whatsnew/3.5.rst:824 ../Doc/whatsnew/3.6.rst:599 msgid "" "The :func:`~asyncio.ensure_future` function and all functions that use it, " "such as :meth:`loop.run_until_complete() `, now accept all kinds of :term:`awaitable objects " "`. (Contributed by Yury Selivanov.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:829 ../Doc/whatsnew/3.6.rst:604 msgid "" "New :func:`~asyncio.run_coroutine_threadsafe` function to submit coroutines " "to event loops from other threads. (Contributed by Vincent Michel.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:833 ../Doc/whatsnew/3.6.rst:608 msgid "" "New :meth:`Transport.is_closing() ` method " "to check if the transport is closing or closed. (Contributed by Yury " "Selivanov.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:837 ../Doc/whatsnew/3.6.rst:612 msgid "" "The :meth:`loop.create_server() ` " "method can now accept a list of hosts. (Contributed by Yann Sionneau.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:841 msgid "Updates in 3.5.2:" msgstr "" #: ../Doc/whatsnew/3.5.rst:843 ../Doc/whatsnew/3.6.rst:616 msgid "" "New :meth:`loop.create_future() ` " "method to create Future objects. This allows alternative event loop " "implementations, such as `uvloop `_, " "to provide a faster :class:`asyncio.Future` implementation. (Contributed by " "Yury Selivanov.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:850 ../Doc/whatsnew/3.6.rst:623 msgid "" "New :meth:`loop.get_exception_handler() ` method to get the current exception handler. " "(Contributed by Yury Selivanov.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:854 ../Doc/whatsnew/3.6.rst:627 msgid "" "New :meth:`StreamReader.readuntil() ` method " "to read data from the stream until a separator bytes sequence appears. " "(Contributed by Mark Korenberg.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:859 msgid "" "The :meth:`loop.create_connection() ` and :meth:`loop.create_server() ` methods are optimized to avoid calling the system " "``getaddrinfo`` function if the address is already resolved. (Contributed by " "A. Jesse Jiryu Davis.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:865 msgid "" "The :meth:`loop.sock_connect(sock, address) ` no longer requires the *address* to be resolved prior to the " "call. (Contributed by A. Jesse Jiryu Davis.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:873 msgid "" "The :meth:`BZ2Decompressor.decompress ` " "method now accepts an optional *max_length* argument to limit the maximum " "size of decompressed data. (Contributed by Nikolaus Rath in :issue:`15955`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:879 msgid "cgi" msgstr "cgi" #: ../Doc/whatsnew/3.5.rst:881 msgid "" "The :class:`~cgi.FieldStorage` class now supports the :term:`context " "manager` protocol. (Contributed by Berker Peksag in :issue:`20289`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:886 msgid "cmath" msgstr "cmath" #: ../Doc/whatsnew/3.5.rst:888 msgid "" "A new function :func:`~cmath.isclose` provides a way to test for approximate " "equality. (Contributed by Chris Barker and Tal Einat in :issue:`24270`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:893 msgid "code" msgstr "" #: ../Doc/whatsnew/3.5.rst:895 msgid "" "The :func:`InteractiveInterpreter.showtraceback() ` method now prints the full chained " "traceback, just like the interactive interpreter. (Contributed by Claudiu " "Popa in :issue:`17442`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:905 msgid "" "The :class:`~collections.OrderedDict` class is now implemented in C, which " "makes it 4 to 100 times faster. (Contributed by Eric Snow in :issue:" "`16991`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:908 msgid "" ":meth:`OrderedDict.items() `, :meth:" "`OrderedDict.keys() `, :meth:`OrderedDict." "values() ` views now support :func:" "`reversed` iteration. (Contributed by Serhiy Storchaka in :issue:`19505`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:914 msgid "" "The :class:`~collections.deque` class now defines :meth:`~collections.deque." "index`, :meth:`~collections.deque.insert`, and :meth:`~collections.deque." "copy`, and supports the ``+`` and ``*`` operators. This allows deques to be " "recognized as a :class:`~collections.abc.MutableSequence` and improves their " "substitutability for lists. (Contributed by Raymond Hettinger in :issue:" "`23704`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:921 msgid "" "Docstrings produced by :func:`~collections.namedtuple` can now be updated::" msgstr "" #: ../Doc/whatsnew/3.5.rst:928 msgid "(Contributed by Berker Peksag in :issue:`24064`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:930 msgid "" "The :class:`~collections.UserString` class now implements the :meth:" "`__getnewargs__`, :meth:`__rmod__`, :meth:`~str.casefold`, :meth:`~str." "format_map`, :meth:`~str.isprintable`, and :meth:`~str.maketrans` methods to " "match the corresponding methods of :class:`str`. (Contributed by Joe Jevnik " "in :issue:`22189`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:938 msgid "collections.abc" msgstr "collections.abc" #: ../Doc/whatsnew/3.5.rst:940 msgid "" "The :meth:`Sequence.index() ` method now " "accepts *start* and *stop* arguments to match the corresponding methods of :" "class:`tuple`, :class:`list`, etc. (Contributed by Devin Jeanpierre in :" "issue:`23086`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:945 msgid "" "A new :class:`~collections.abc.Generator` abstract base class. (Contributed " "by Stefan Behnel in :issue:`24018`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:948 msgid "" "New :class:`~collections.abc.Awaitable`, :class:`~collections.abc." "Coroutine`, :class:`~collections.abc.AsyncIterator`, and :class:" "`~collections.abc.AsyncIterable` abstract base classes. (Contributed by Yury " "Selivanov in :issue:`24184`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:953 msgid "" "For earlier Python versions, a backport of the new ABCs is available in an " "external `PyPI package `_." msgstr "" #: ../Doc/whatsnew/3.5.rst:958 msgid "compileall" msgstr "compileall" #: ../Doc/whatsnew/3.5.rst:960 msgid "" "A new :mod:`compileall` option, :samp:`-j {N}`, allows running *N* workers " "simultaneously to perform parallel bytecode compilation. The :func:" "`~compileall.compile_dir` function has a corresponding ``workers`` " "parameter. (Contributed by Claudiu Popa in :issue:`16104`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:965 msgid "" "Another new option, ``-r``, allows controlling the maximum recursion level " "for subdirectories. (Contributed by Claudiu Popa in :issue:`19628`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:968 msgid "" "The ``-q`` command line option can now be specified more than once, in which " "case all output, including errors, will be suppressed. The corresponding " "``quiet`` parameter in :func:`~compileall.compile_dir`, :func:`~compileall." "compile_file`, and :func:`~compileall.compile_path` can now accept an " "integer value indicating the level of output suppression. (Contributed by " "Thomas Kluyver in :issue:`21338`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:977 msgid "concurrent.futures" msgstr "concurrent.futures" #: ../Doc/whatsnew/3.5.rst:979 msgid "" "The :meth:`Executor.map() ` method now " "accepts a *chunksize* argument to allow batching of tasks to improve " "performance when :meth:`~concurrent.futures.ProcessPoolExecutor` is used. " "(Contributed by Dan O'Reilly in :issue:`11271`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:984 msgid "" "The number of workers in the :class:`~concurrent.futures.ThreadPoolExecutor` " "constructor is optional now. The default value is 5 times the number of " "CPUs. (Contributed by Claudiu Popa in :issue:`21527`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:992 msgid "" ":mod:`configparser` now provides a way to customize the conversion of values " "by specifying a dictionary of converters in the :class:`~configparser." "ConfigParser` constructor, or by defining them as methods in " "``ConfigParser`` subclasses. Converters defined in a parser instance are " "inherited by its section proxies." msgstr "" #: ../Doc/whatsnew/3.5.rst:998 msgid "Example::" msgstr "Exemples ::" #: ../Doc/whatsnew/3.5.rst:1016 msgid "(Contributed by Łukasz Langa in :issue:`18159`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1022 msgid "" "The new :func:`~contextlib.redirect_stderr` :term:`context manager` (similar " "to :func:`~contextlib.redirect_stdout`) makes it easier for utility scripts " "to handle inflexible APIs that write their output to :data:`sys.stderr` and " "don't provide any options to redirect it::" msgstr "" #: ../Doc/whatsnew/3.5.rst:1035 msgid "(Contributed by Berker Peksag in :issue:`22389`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1041 msgid "" "The :meth:`~csv.csvwriter.writerow` method now supports arbitrary iterables, " "not just sequences. (Contributed by Serhiy Storchaka in :issue:`23171`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1048 msgid "" "The new :func:`~curses.update_lines_cols` function updates the :envvar:" "`LINES` and :envvar:`COLS` environment variables. This is useful for " "detecting manual screen resizing. (Contributed by Arnon Yaari in :issue:" "`4254`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1056 msgid "" ":func:`dumb.open ` always creates a new database when the " "flag has the value ``\"n\"``. (Contributed by Claudiu Popa in :issue:" "`18039`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1061 msgid "difflib" msgstr "difflib" #: ../Doc/whatsnew/3.5.rst:1063 msgid "" "The charset of HTML documents generated by :meth:`HtmlDiff.make_file() " "` can now be customized by using a new *charset* " "keyword-only argument. The default charset of HTML document changed from ``" "\"ISO-8859-1\"`` to ``\"utf-8\"``. (Contributed by Berker Peksag in :issue:" "`2052`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1070 msgid "" "The :func:`~difflib.diff_bytes` function can now compare lists of byte " "strings. This fixes a regression from Python 2. (Contributed by Terry J. " "Reedy and Greg Ward in :issue:`17445`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1076 msgid "distutils" msgstr "distutils" #: ../Doc/whatsnew/3.5.rst:1078 msgid "" "Both the ``build`` and ``build_ext`` commands now accept a ``-j`` option to " "enable parallel building of extension modules. (Contributed by Antoine " "Pitrou in :issue:`5309`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1082 msgid "" "The :mod:`distutils` module now supports ``xz`` compression, and can be " "enabled by passing ``xztar`` as an argument to ``bdist --format``. " "(Contributed by Serhiy Storchaka in :issue:`16314`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1090 msgid "" "The :func:`~doctest.DocTestSuite` function returns an empty :class:`unittest." "TestSuite` if *module* contains no docstrings, instead of raising :exc:" "`ValueError`. (Contributed by Glenn Jones in :issue:`15916`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1098 msgid "" "A new policy option :attr:`Policy.mangle_from_ ` controls whether or not lines that start with ``\"From \"`` " "in email bodies are prefixed with a ``\">\"`` character by generators. The " "default is ``True`` for :attr:`~email.policy.compat32` and ``False`` for all " "other policies. (Contributed by Milan Oberkirch in :issue:`20098`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1104 msgid "" "A new :meth:`Message.get_content_disposition() ` method provides easy access to a canonical value " "for the :mailheader:`Content-Disposition` header. (Contributed by Abhilash " "Raj in :issue:`21083`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1110 msgid "" "A new policy option :attr:`EmailPolicy.utf8 ` " "can be set to ``True`` to encode email headers using the UTF-8 charset " "instead of using encoded words. This allows ``Messages`` to be formatted " "according to :rfc:`6532` and used with an SMTP server that supports the :rfc:" "`6531` ``SMTPUTF8`` extension. (Contributed by R. David Murray in :issue:" "`24211`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1117 msgid "" "The :class:`mime.text.MIMEText ` constructor now " "accepts a :class:`charset.Charset ` instance. " "(Contributed by Claude Paroz and Berker Peksag in :issue:`16324`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1125 msgid "" "The :class:`~enum.Enum` callable has a new parameter *start* to specify the " "initial number of enum values if only *names* are provided::" msgstr "" #: ../Doc/whatsnew/3.5.rst:1134 msgid "(Contributed by Ethan Furman in :issue:`21706`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1140 msgid "" "The :func:`~faulthandler.enable`, :func:`~faulthandler.register`, :func:" "`~faulthandler.dump_traceback` and :func:`~faulthandler." "dump_traceback_later` functions now accept file descriptors in addition to " "file-like objects. (Contributed by Wei Wu in :issue:`23566`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1152 msgid "" "Most of the :func:`~functools.lru_cache` machinery is now implemented in C, " "making it significantly faster. (Contributed by Matt Joiner, Alexey " "Kachayev, and Serhiy Storchaka in :issue:`14373`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1160 msgid "" "The :func:`~glob.iglob` and :func:`~glob.glob` functions now support " "recursive search in subdirectories, using the ``\"**\"`` pattern. " "(Contributed by Serhiy Storchaka in :issue:`13968`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1166 msgid "gzip" msgstr "gzip" #: ../Doc/whatsnew/3.5.rst:1168 msgid "" "The *mode* argument of the :class:`~gzip.GzipFile` constructor now accepts ``" "\"x\"`` to request exclusive creation. (Contributed by Tim Heaney in :issue:" "`19222`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1174 msgid "heapq" msgstr "heapq" #: ../Doc/whatsnew/3.5.rst:1176 msgid "" "Element comparison in :func:`~heapq.merge` can now be customized by passing " "a :term:`key function` in a new optional *key* keyword argument, and a new " "optional *reverse* keyword argument can be used to reverse element " "comparison::" msgstr "" #: ../Doc/whatsnew/3.5.rst:1189 msgid "(Contributed by Raymond Hettinger in :issue:`13742`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1195 msgid "" "A new :class:`HTTPStatus ` enum that defines a set of HTTP " "status codes, reason phrases and long descriptions written in English. " "(Contributed by Demian Brecht in :issue:`21793`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1203 msgid "" ":meth:`HTTPConnection.getresponse() ` now raises a :exc:`~http.client.RemoteDisconnected` exception " "when a remote server connection is closed unexpectedly. Additionally, if a :" "exc:`ConnectionError` (of which ``RemoteDisconnected`` is a subclass) is " "raised, the client socket is now closed automatically, and will reconnect on " "the next request::" msgstr "" #: ../Doc/whatsnew/3.5.rst:1219 msgid "(Contributed by Martin Panter in :issue:`3566`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1225 msgid "" "Since idlelib implements the IDLE shell and editor and is not intended for " "import by other programs, it gets improvements with every release. See :" "file:`Lib/idlelib/NEWS.txt` for a cumulative list of changes since 3.4.0, as " "well as changes made in future 3.5.x releases. This file is also available " "from the IDLE :menuselection:`Help --> About IDLE` dialog." msgstr "" #: ../Doc/whatsnew/3.5.rst:1235 msgid "" "The :class:`~imaplib.IMAP4` class now supports the :term:`context manager` " "protocol. When used in a :keyword:`with` statement, the IMAP4 ``LOGOUT`` " "command will be called automatically at the end of the block. (Contributed " "by Tarek Ziadé and Serhiy Storchaka in :issue:`4972`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1240 msgid "" "The :mod:`imaplib` module now supports :rfc:`5161` (ENABLE Extension) and :" "rfc:`6855` (UTF-8 Support) via the :meth:`IMAP4.enable() ` method. A new :attr:`IMAP4.utf8_enabled ` attribute tracks whether or not :rfc:`6855` support is " "enabled. (Contributed by Milan Oberkirch, R. David Murray, and Maciej Szulik " "in :issue:`21800`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1247 msgid "" "The :mod:`imaplib` module now automatically encodes non-ASCII string " "usernames and passwords using UTF-8, as recommended by the RFCs. " "(Contributed by Milan Oberkirch in :issue:`21800`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1253 msgid "imghdr" msgstr "imghdr" #: ../Doc/whatsnew/3.5.rst:1255 msgid "" "The :func:`~imghdr.what` function now recognizes the `OpenEXR `_ format (contributed by Martin Vignali and Claudiu Popa in :" "issue:`20295`), and the `WebP `_ format " "(contributed by Fabrice Aneche and Claudiu Popa in :issue:`20197`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1265 msgid "" "The :class:`util.LazyLoader ` class allows for " "lazy loading of modules in applications where startup time is important. " "(Contributed by Brett Cannon in :issue:`17621`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1269 msgid "" "The :func:`abc.InspectLoader.source_to_code() ` method is now a static method. This makes it easier to " "initialize a module object with code compiled from a string by running " "``exec(code, module.__dict__)``. (Contributed by Brett Cannon in :issue:" "`21156`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1275 msgid "" "The new :func:`util.module_from_spec() ` " "function is now the preferred way to create a new module. As opposed to " "creating a :class:`types.ModuleType` instance directly, this new function " "will set the various import-controlled attributes based on the passed-in " "spec object. (Contributed by Brett Cannon in :issue:`20383`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1285 msgid "" "Both the :class:`~inspect.Signature` and :class:`~inspect.Parameter` classes " "are now picklable and hashable. (Contributed by Yury Selivanov in :issue:" "`20726` and :issue:`20334`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1289 msgid "" "A new :meth:`BoundArguments.apply_defaults() ` method provides a way to set default values for missing " "arguments::" msgstr "" #: ../Doc/whatsnew/3.5.rst:1299 msgid "(Contributed by Yury Selivanov in :issue:`24190`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1301 msgid "" "A new class method :meth:`Signature.from_callable() ` makes subclassing of :class:`~inspect.Signature` easier. " "(Contributed by Yury Selivanov and Eric Snow in :issue:`17373`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1306 msgid "" "The :func:`~inspect.signature` function now accepts a *follow_wrapped* " "optional keyword argument, which, when set to ``False``, disables automatic " "following of ``__wrapped__`` links. (Contributed by Yury Selivanov in :issue:" "`20691`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1311 msgid "" "A set of new functions to inspect :term:`coroutine functions ` and :term:`coroutine objects ` has been added: :func:" "`~inspect.iscoroutine`, :func:`~inspect.iscoroutinefunction`, :func:" "`~inspect.isawaitable`, :func:`~inspect.getcoroutinelocals`, and :func:" "`~inspect.getcoroutinestate`. (Contributed by Yury Selivanov in :issue:" "`24017` and :issue:`24400`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1319 msgid "" "The :func:`~inspect.stack`, :func:`~inspect.trace`, :func:`~inspect." "getouterframes`, and :func:`~inspect.getinnerframes` functions now return a " "list of named tuples. (Contributed by Daniel Shahaf in :issue:`16808`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1328 msgid "" "A new :meth:`BufferedIOBase.readinto1() ` " "method, that uses at most one call to the underlying raw stream's :meth:" "`RawIOBase.read() ` or :meth:`RawIOBase.readinto() ` methods. (Contributed by Nikolaus Rath in :issue:" "`20578`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1338 msgid "" "Both the :class:`~ipaddress.IPv4Network` and :class:`~ipaddress.IPv6Network` " "classes now accept an ``(address, netmask)`` tuple argument, so as to easily " "construct network objects from existing addresses::" msgstr "" #: ../Doc/whatsnew/3.5.rst:1348 msgid "(Contributed by Peter Moody and Antoine Pitrou in :issue:`16531`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1350 msgid "" "A new :attr:`~ipaddress.IPv4Network.reverse_pointer` attribute for the :" "class:`~ipaddress.IPv4Network` and :class:`~ipaddress.IPv6Network` classes " "returns the name of the reverse DNS PTR record::" msgstr "" #: ../Doc/whatsnew/3.5.rst:1362 msgid "(Contributed by Leon Weber in :issue:`20480`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1366 ../Doc/whatsnew/3.6.rst:774 msgid "json" msgstr "" #: ../Doc/whatsnew/3.5.rst:1368 msgid "" "The :mod:`json.tool` command line interface now preserves the order of keys " "in JSON objects passed in input. The new ``--sort-keys`` option can be used " "to sort the keys alphabetically. (Contributed by Berker Peksag in :issue:" "`21650`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1373 msgid "" "JSON decoder now raises :exc:`~json.JSONDecodeError` instead of :exc:" "`ValueError` to provide better context information about the error. " "(Contributed by Serhiy Storchaka in :issue:`19361`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1379 msgid "linecache" msgstr "" #: ../Doc/whatsnew/3.5.rst:1381 msgid "" "A new :func:`~linecache.lazycache` function can be used to capture " "information about a non-file-based module to permit getting its lines later " "via :func:`~linecache.getline`. This avoids doing I/O until a line is " "actually needed, without having to carry the module globals around " "indefinitely. (Contributed by Robert Collins in :issue:`17911`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1389 msgid "locale" msgstr "" #: ../Doc/whatsnew/3.5.rst:1391 msgid "" "A new :func:`~locale.delocalize` function can be used to convert a string " "into a normalized number string, taking the ``LC_NUMERIC`` settings into " "account::" msgstr "" #: ../Doc/whatsnew/3.5.rst:1404 msgid "(Contributed by Cédric Krier in :issue:`13918`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1410 msgid "" "All logging methods (:class:`~logging.Logger` :meth:`~logging.Logger.log`, :" "meth:`~logging.Logger.exception`, :meth:`~logging.Logger.critical`, :meth:" "`~logging.Logger.debug`, etc.), now accept exception instances as an " "*exc_info* argument, in addition to boolean values and exception tuples::" msgstr "" #: ../Doc/whatsnew/3.5.rst:1423 msgid "(Contributed by Yury Selivanov in :issue:`20537`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1425 msgid "" "The :class:`handlers.HTTPHandler ` class now " "accepts an optional :class:`ssl.SSLContext` instance to configure SSL " "settings used in an HTTP connection. (Contributed by Alex Gaynor in :issue:" "`22788`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1430 msgid "" "The :class:`handlers.QueueListener ` class " "now takes a *respect_handler_level* keyword argument which, if set to " "``True``, will pass messages to handlers taking handler levels into account. " "(Contributed by Vinay Sajip.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1439 msgid "" "The :meth:`LZMADecompressor.decompress() ` " "method now accepts an optional *max_length* argument to limit the maximum " "size of decompressed data. (Contributed by Martin Panter in :issue:`15955`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1448 msgid "" "Two new constants have been added to the :mod:`math` module: :data:`~math." "inf` and :data:`~math.nan`. (Contributed by Mark Dickinson in :issue:" "`23185`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1451 msgid "" "A new function :func:`~math.isclose` provides a way to test for approximate " "equality. (Contributed by Chris Barker and Tal Einat in :issue:`24270`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1454 msgid "" "A new :func:`~math.gcd` function has been added. The :func:`fractions.gcd` " "function is now deprecated. (Contributed by Mark Dickinson and Serhiy " "Storchaka in :issue:`22486`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1462 msgid "" ":func:`sharedctypes.synchronized() ` objects now support the :term:`context manager` protocol. " "(Contributed by Charles-François Natali in :issue:`21565`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1470 msgid "" ":func:`~operator.attrgetter`, :func:`~operator.itemgetter`, and :func:" "`~operator.methodcaller` objects now support pickling. (Contributed by Josh " "Rosenberg and Serhiy Storchaka in :issue:`22955`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1474 msgid "" "New :func:`~operator.matmul` and :func:`~operator.imatmul` functions to " "perform matrix multiplication. (Contributed by Benjamin Peterson in :issue:" "`21176`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1482 msgid "" "The new :func:`~os.scandir` function returning an iterator of :class:`~os." "DirEntry` objects has been added. If possible, :func:`~os.scandir` extracts " "file attributes while scanning a directory, removing the need to perform " "subsequent system calls to determine file type or attributes, which may " "significantly improve performance. (Contributed by Ben Hoyt with the help " "of Victor Stinner in :issue:`22524`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1489 msgid "" "On Windows, a new :attr:`stat_result.st_file_attributes ` attribute is now available. It corresponds to the " "``dwFileAttributes`` member of the ``BY_HANDLE_FILE_INFORMATION`` structure " "returned by ``GetFileInformationByHandle()``. (Contributed by Ben Hoyt in :" "issue:`21719`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1495 msgid "" "The :func:`~os.urandom` function now uses the ``getrandom()`` syscall on " "Linux 3.17 or newer, and ``getentropy()`` on OpenBSD 5.6 and newer, removing " "the need to use ``/dev/urandom`` and avoiding failures due to potential file " "descriptor exhaustion. (Contributed by Victor Stinner in :issue:`22181`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1500 msgid "" "New :func:`~os.get_blocking` and :func:`~os.set_blocking` functions allow " "getting and setting a file descriptor's blocking mode (:data:`~os." "O_NONBLOCK`.) (Contributed by Victor Stinner in :issue:`22054`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1504 msgid "" "The :func:`~os.truncate` and :func:`~os.ftruncate` functions are now " "supported on Windows. (Contributed by Steve Dower in :issue:`23668`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1507 msgid "" "There is a new :func:`os.path.commonpath` function returning the longest " "common sub-path of each passed pathname. Unlike the :func:`os.path." "commonprefix` function, it always returns a valid path::" msgstr "" #: ../Doc/whatsnew/3.5.rst:1518 msgid "(Contributed by Rafik Draoui and Serhiy Storchaka in :issue:`10395`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1524 msgid "" "The new :meth:`Path.samefile() ` method can be used " "to check whether the path points to the same file as another path, which can " "be either another :class:`~pathlib.Path` object, or a string::" msgstr "" #: ../Doc/whatsnew/3.5.rst:1534 msgid "(Contributed by Vajrasky Kok and Antoine Pitrou in :issue:`19775`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1536 msgid "" "The :meth:`Path.mkdir() ` method now accepts a new " "optional *exist_ok* argument to match ``mkdir -p`` and :func:`os.makedirs` " "functionality. (Contributed by Berker Peksag in :issue:`21539`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1540 msgid "" "There is a new :meth:`Path.expanduser() ` method to " "expand ``~`` and ``~user`` prefixes. (Contributed by Serhiy Storchaka and " "Claudiu Popa in :issue:`19776`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1544 msgid "" "A new :meth:`Path.home() ` class method can be used to " "get a :class:`~pathlib.Path` instance representing the user’s home " "directory. (Contributed by Victor Salgado and Mayank Tripathi in :issue:" "`19777`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1549 msgid "" "New :meth:`Path.write_text() `, :meth:`Path." "read_text() `, :meth:`Path.write_bytes() `, :meth:`Path.read_bytes() ` " "methods to simplify read/write operations on files." msgstr "" #: ../Doc/whatsnew/3.5.rst:1555 msgid "" "The following code snippet will create or rewrite existing file ``~/" "spam42``::" msgstr "" #: ../Doc/whatsnew/3.5.rst:1563 msgid "(Contributed by Christopher Welborn in :issue:`20218`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1569 msgid "" "Nested objects, such as unbound methods or nested classes, can now be " "pickled using :ref:`pickle protocols ` older than protocol " "version 4. Protocol version 4 already supports these cases. (Contributed by " "Serhiy Storchaka in :issue:`23611`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1578 msgid "" "A new :meth:`POP3.utf8() ` command enables :rfc:`6856` " "(Internationalized Email) support, if a POP server supports it. (Contributed " "by Milan OberKirch in :issue:`21804`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1586 msgid "" "References and conditional references to groups with fixed length are now " "allowed in lookbehind assertions::" msgstr "" #: ../Doc/whatsnew/3.5.rst:1596 msgid "(Contributed by Serhiy Storchaka in :issue:`9179`.)" msgstr "(Contribution par Serhiy Storchaka; :issue:`9179`.)" #: ../Doc/whatsnew/3.5.rst:1598 msgid "" "The number of capturing groups in regular expressions is no longer limited " "to 100. (Contributed by Serhiy Storchaka in :issue:`22437`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1601 msgid "" "The :func:`~re.sub` and :func:`~re.subn` functions now replace unmatched " "groups with empty strings instead of raising an exception. (Contributed by " "Serhiy Storchaka in :issue:`1519638`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1605 msgid "" "The :class:`re.error` exceptions have new attributes, :attr:`~re.error." "msg`, :attr:`~re.error.pattern`, :attr:`~re.error.pos`, :attr:`~re.error." "lineno`, and :attr:`~re.error.colno`, that provide better context " "information about the error::" msgstr "" #: ../Doc/whatsnew/3.5.rst:1619 msgid "(Contributed by Serhiy Storchaka in :issue:`22578`.)" msgstr "(Contribution par Serhiy Storchaka; :issue:`22578`.)" #: ../Doc/whatsnew/3.5.rst:1623 ../Doc/whatsnew/3.6.rst:823 msgid "readline" msgstr "" #: ../Doc/whatsnew/3.5.rst:1625 msgid "" "A new :func:`~readline.append_history_file` function can be used to append " "the specified number of trailing elements in history to the given file. " "(Contributed by Bruno Cauet in :issue:`22940`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1633 msgid "" "The new :class:`~selectors.DevpollSelector` supports efficient ``/dev/poll`` " "polling on Solaris. (Contributed by Giampaolo Rodola' in :issue:`18931`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1641 msgid "" "The :func:`~shutil.move` function now accepts a *copy_function* argument, " "allowing, for example, the :func:`~shutil.copy` function to be used instead " "of the default :func:`~shutil.copy2` if there is a need to ignore file " "metadata when moving. (Contributed by Claudiu Popa in :issue:`19840`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1647 msgid "" "The :func:`~shutil.make_archive` function now supports the *xztar* format. " "(Contributed by Serhiy Storchaka in :issue:`5411`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1654 msgid "" "On Windows, the :func:`~signal.set_wakeup_fd` function now also supports " "socket handles. (Contributed by Victor Stinner in :issue:`22018`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1657 msgid "" "Various ``SIG*`` constants in the :mod:`signal` module have been converted " "into :mod:`Enums `. This allows meaningful names to be printed during " "debugging, instead of integer \"magic numbers\". (Contributed by Giampaolo " "Rodola' in :issue:`21076`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1666 msgid "" "Both the :class:`~smtpd.SMTPServer` and :class:`~smtpd.SMTPChannel` classes " "now accept a *decode_data* keyword argument to determine if the ``DATA`` " "portion of the SMTP transaction is decoded using the ``\"utf-8\"`` codec or " "is instead provided to the :meth:`SMTPServer.process_message() ` method as a byte string. The default is " "``True`` for backward compatibility reasons, but will change to ``False`` in " "Python 3.6. If *decode_data* is set to ``False``, the ``process_message`` " "method must be prepared to accept keyword arguments. (Contributed by Maciej " "Szulik in :issue:`19662`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1677 msgid "" "The :class:`~smtpd.SMTPServer` class now advertises the ``8BITMIME`` " "extension (:rfc:`6152`) if *decode_data* has been set ``True``. If the " "client specifies ``BODY=8BITMIME`` on the ``MAIL`` command, it is passed to :" "meth:`SMTPServer.process_message() ` via " "the *mail_options* keyword. (Contributed by Milan Oberkirch and R. David " "Murray in :issue:`21795`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1684 msgid "" "The :class:`~smtpd.SMTPServer` class now also supports the ``SMTPUTF8`` " "extension (:rfc:`6531`: Internationalized Email). If the client specified " "``SMTPUTF8 BODY=8BITMIME`` on the ``MAIL`` command, they are passed to :meth:" "`SMTPServer.process_message() ` via the " "*mail_options* keyword. It is the responsibility of the ``process_message`` " "method to correctly handle the ``SMTPUTF8`` data. (Contributed by Milan " "Oberkirch in :issue:`21725`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1692 msgid "" "It is now possible to provide, directly or via name resolution, IPv6 " "addresses in the :class:`~smtpd.SMTPServer` constructor, and have it " "successfully connect. (Contributed by Milan Oberkirch in :issue:`14758`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1700 msgid "" "A new :meth:`SMTP.auth() ` method provides a convenient " "way to implement custom authentication mechanisms. (Contributed by Milan " "Oberkirch in :issue:`15014`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1704 msgid "" "The :meth:`SMTP.set_debuglevel() ` method now " "accepts an additional debuglevel (2), which enables timestamps in debug " "messages. (Contributed by Gavin Chappell and Maciej Szulik in :issue:" "`16914`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1708 msgid "" "Both the :meth:`SMTP.sendmail() ` and :meth:`SMTP." "send_message() ` methods now support :rfc:`6531` " "(SMTPUTF8). (Contributed by Milan Oberkirch and R. David Murray in :issue:" "`22027`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1715 msgid "sndhdr" msgstr "" #: ../Doc/whatsnew/3.5.rst:1717 msgid "" "The :func:`~sndhdr.what` and :func:`~sndhdr.whathdr` functions now return " "a :func:`~collections.namedtuple`. (Contributed by Claudiu Popa in :issue:" "`18615`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1725 msgid "" "Functions with timeouts now use a monotonic clock, instead of a system " "clock. (Contributed by Victor Stinner in :issue:`22043`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1728 msgid "" "A new :meth:`socket.sendfile() ` method allows " "sending a file over a socket by using the high-performance :func:`os." "sendfile` function on UNIX, resulting in uploads being from 2 to 3 times " "faster than when using plain :meth:`socket.send() `. " "(Contributed by Giampaolo Rodola' in :issue:`17552`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1734 msgid "" "The :meth:`socket.sendall() ` method no longer resets " "the socket timeout every time bytes are received or sent. The socket " "timeout is now the maximum total duration to send all data. (Contributed by " "Victor Stinner in :issue:`23853`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1739 msgid "" "The *backlog* argument of the :meth:`socket.listen() ` " "method is now optional. By default it is set to :data:`SOMAXCONN ` or to ``128``, whichever is less. (Contributed by Charles-" "François Natali in :issue:`21455`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1751 msgid "Memory BIO Support" msgstr "" #: ../Doc/whatsnew/3.5.rst:1753 msgid "(Contributed by Geert Jansen in :issue:`21965`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1755 msgid "" "The new :class:`~ssl.SSLObject` class has been added to provide SSL protocol " "support for cases when the network I/O capabilities of :class:`~ssl." "SSLSocket` are not necessary or are suboptimal. ``SSLObject`` represents an " "SSL protocol instance, but does not implement any network I/O methods, and " "instead provides a memory buffer interface. The new :class:`~ssl.MemoryBIO` " "class can be used to pass data between Python and an SSL protocol instance." msgstr "" #: ../Doc/whatsnew/3.5.rst:1762 msgid "" "The memory BIO SSL support is primarily intended to be used in frameworks " "implementing asynchronous I/O for which :class:`~ssl.SSLSocket`'s readiness " "model (\"select/poll\") is inefficient." msgstr "" #: ../Doc/whatsnew/3.5.rst:1766 msgid "" "A new :meth:`SSLContext.wrap_bio() ` method can be " "used to create a new ``SSLObject`` instance." msgstr "" #: ../Doc/whatsnew/3.5.rst:1771 msgid "Application-Layer Protocol Negotiation Support" msgstr "" #: ../Doc/whatsnew/3.5.rst:1773 msgid "(Contributed by Benjamin Peterson in :issue:`20188`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1775 msgid "" "Where OpenSSL support is present, the :mod:`ssl` module now implements the " "*Application-Layer Protocol Negotiation* TLS extension as described in :rfc:" "`7301`." msgstr "" #: ../Doc/whatsnew/3.5.rst:1779 msgid "" "The new :meth:`SSLContext.set_alpn_protocols() ` can be used to specify which protocols a socket should " "advertise during the TLS handshake." msgstr "" #: ../Doc/whatsnew/3.5.rst:1783 msgid "" "The new :meth:`SSLSocket.selected_alpn_protocol() ` returns the protocol that was selected during the " "TLS handshake. The :data:`~ssl.HAS_ALPN` flag indicates whether ALPN support " "is present." msgstr "" #: ../Doc/whatsnew/3.5.rst:1790 msgid "Other Changes" msgstr "" #: ../Doc/whatsnew/3.5.rst:1792 msgid "" "There is a new :meth:`SSLSocket.version() ` method to " "query the actual protocol version in use. (Contributed by Antoine Pitrou in :" "issue:`20421`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1796 msgid "" "The :class:`~ssl.SSLSocket` class now implements a :meth:`SSLSocket." "sendfile() ` method. (Contributed by Giampaolo " "Rodola' in :issue:`17552`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1800 msgid "" "The :meth:`SSLSocket.send() ` method now raises either " "the :exc:`ssl.SSLWantReadError` or :exc:`ssl.SSLWantWriteError` exception on " "a non-blocking socket if the operation would block. Previously, it would " "return ``0``. (Contributed by Nikolaus Rath in :issue:`20951`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1805 msgid "" "The :func:`~ssl.cert_time_to_seconds` function now interprets the input time " "as UTC and not as local time, per :rfc:`5280`. Additionally, the return " "value is always an :class:`int`. (Contributed by Akira Li in :issue:`19940`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1809 msgid "" "New :meth:`SSLObject.shared_ciphers() ` and :" "meth:`SSLSocket.shared_ciphers() ` methods " "return the list of ciphers sent by the client during the handshake. " "(Contributed by Benjamin Peterson in :issue:`23186`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1814 msgid "" "The :meth:`SSLSocket.do_handshake() `, :meth:" "`SSLSocket.read() `, :meth:`SSLSocket.shutdown() `, and :meth:`SSLSocket.write() ` " "methods of the :class:`~ssl.SSLSocket` class no longer reset the socket " "timeout every time bytes are received or sent. The socket timeout is now the " "maximum total duration of the method. (Contributed by Victor Stinner in :" "issue:`23853`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1822 msgid "" "The :func:`~ssl.match_hostname` function now supports matching of IP " "addresses. (Contributed by Antoine Pitrou in :issue:`23239`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1829 msgid "" "The :class:`~sqlite3.Row` class now fully supports the sequence protocol, in " "particular :func:`reversed` iteration and slice indexing. (Contributed by " "Claudiu Popa in :issue:`10203`; by Lucas Sinclair, Jessica McKellar, and " "Serhiy Storchaka in :issue:`13583`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1840 msgid "" "The new :func:`~subprocess.run` function has been added. It runs the " "specified command and returns a :class:`~subprocess.CompletedProcess` " "object, which describes a finished process. The new API is more consistent " "and is the recommended approach to invoking subprocesses in Python code that " "does not need to maintain compatibility with earlier Python versions. " "(Contributed by Thomas Kluyver in :issue:`23342`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1866 msgid "" "A new :func:`~sys.set_coroutine_wrapper` function allows setting a global " "hook that will be called whenever a :term:`coroutine object ` is " "created by an :keyword:`async def` function. A corresponding :func:`~sys." "get_coroutine_wrapper` can be used to obtain a currently set wrapper. Both " "functions are :term:`provisional `, and are intended for " "debugging purposes only. (Contributed by Yury Selivanov in :issue:`24017`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1874 msgid "" "A new :func:`~sys.is_finalizing` function can be used to check if the Python " "interpreter is :term:`shutting down `. (Contributed by " "Antoine Pitrou in :issue:`22696`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1882 msgid "" "The name of the user scripts directory on Windows now includes the first two " "components of the Python version. (Contributed by Paul Moore in :issue:" "`23437`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1890 msgid "" "The *mode* argument of the :func:`~tarfile.open` function now accepts ``\"x" "\"`` to request exclusive creation. (Contributed by Berker Peksag in :issue:" "`21717`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1893 msgid "" "The :meth:`TarFile.extractall() ` and :meth:" "`TarFile.extract() ` methods now take a keyword " "argument *numeric_only*. If set to ``True``, the extracted files and " "directories will be owned by the numeric ``uid`` and ``gid`` from the " "tarfile. If set to ``False`` (the default, and the behavior in versions " "prior to 3.5), they will be owned by the named user and group in the " "tarfile. (Contributed by Michael Vogt and Eric Smith in :issue:`23193`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1901 msgid "" "The :meth:`TarFile.list() ` now accepts an optional " "*members* keyword argument that can be set to a subset of the list returned " "by :meth:`TarFile.getmembers() `. (Contributed " "by Serhiy Storchaka in :issue:`21549`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1910 msgid "" "Both the :meth:`Lock.acquire() ` and :meth:`RLock." "acquire() ` methods now use a monotonic clock for " "timeout management. (Contributed by Victor Stinner in :issue:`22043`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1919 msgid "" "The :func:`~time.monotonic` function is now always available. (Contributed " "by Victor Stinner in :issue:`22043`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1924 msgid "timeit" msgstr "timeit" #: ../Doc/whatsnew/3.5.rst:1926 msgid "" "A new command line option ``-u`` or :samp:`--unit={U}` can be used to " "specify the time unit for the timer output. Supported options are ``usec``, " "``msec``, or ``sec``. (Contributed by Julian Gindi in :issue:`18983`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1930 msgid "" "The :func:`~timeit.timeit` function has a new *globals* parameter for " "specifying the namespace in which the code will be running. (Contributed by " "Ben Roberts in :issue:`2527`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1936 ../Doc/whatsnew/3.6.rst:944 msgid "tkinter" msgstr "tkinter" #: ../Doc/whatsnew/3.5.rst:1938 msgid "" "The :mod:`tkinter._fix` module used for setting up the Tcl/Tk environment on " "Windows has been replaced by a private function in the :mod:`_tkinter` " "module which makes no permanent changes to environment variables. " "(Contributed by Zachary Ware in :issue:`20035`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1949 msgid "" "New :func:`~traceback.walk_stack` and :func:`~traceback.walk_tb` functions " "to conveniently traverse frame and traceback objects. (Contributed by Robert " "Collins in :issue:`17911`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1953 msgid "" "New lightweight classes: :class:`~traceback.TracebackException`, :class:" "`~traceback.StackSummary`, and :class:`~traceback.FrameSummary`. " "(Contributed by Robert Collins in :issue:`17911`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1957 msgid "" "Both the :func:`~traceback.print_tb` and :func:`~traceback.print_stack` " "functions now support negative values for the *limit* argument. (Contributed " "by Dmitry Kazakov in :issue:`22619`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1965 msgid "" "A new :func:`~types.coroutine` function to transform :term:`generator " "` and :class:`generator-like ` objects into :term:`awaitables `. (Contributed by " "Yury Selivanov in :issue:`24017`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1971 msgid "" "A new type called :class:`~types.CoroutineType`, which is used for :term:" "`coroutine` objects created by :keyword:`async def` functions. (Contributed " "by Yury Selivanov in :issue:`24400`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1977 ../Doc/whatsnew/3.6.rst:988 msgid "unicodedata" msgstr "unicodedata" #: ../Doc/whatsnew/3.5.rst:1979 msgid "" "The :mod:`unicodedata` module now uses data from `Unicode 8.0.0 `_." msgstr "" #: ../Doc/whatsnew/3.5.rst:1986 msgid "" "The :meth:`TestLoader.loadTestsFromModule() ` method now accepts a keyword-only argument *pattern* " "which is passed to ``load_tests`` as the third argument. Found packages are " "now checked for ``load_tests`` regardless of whether their path matches " "*pattern*, because it is impossible for a package name to match the default " "pattern. (Contributed by Robert Collins and Barry A. Warsaw in :issue:" "`16662`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1993 msgid "" "Unittest discovery errors now are exposed in the :data:`TestLoader.errors " "` attribute of the :class:`~unittest.TestLoader` " "instance. (Contributed by Robert Collins in :issue:`19746`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:1998 msgid "" "A new command line option ``--locals`` to show local variables in " "tracebacks. (Contributed by Robert Collins in :issue:`22936`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2003 ../Doc/whatsnew/3.6.rst:995 msgid "unittest.mock" msgstr "unittest.mock" #: ../Doc/whatsnew/3.5.rst:2005 ../Doc/whatsnew/3.6.rst:997 msgid "The :class:`~unittest.mock.Mock` class has the following improvements:" msgstr "" #: ../Doc/whatsnew/3.5.rst:2007 msgid "" "The class constructor has a new *unsafe* parameter, which causes mock " "objects to raise :exc:`AttributeError` on attribute names starting with ``" "\"assert\"``. (Contributed by Kushal Das in :issue:`21238`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2012 msgid "" "A new :meth:`Mock.assert_not_called() ` method to check if the mock object was called. " "(Contributed by Kushal Das in :issue:`21262`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2016 msgid "" "The :class:`~unittest.mock.MagicMock` class now supports :meth:" "`__truediv__`, :meth:`__divmod__` and :meth:`__matmul__` operators. " "(Contributed by Johannes Baiter in :issue:`20968`, and Håkan Lövdahl in :" "issue:`23581` and :issue:`23568`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2021 msgid "" "It is no longer necessary to explicitly pass ``create=True`` to the :func:" "`~unittest.mock.patch` function when patching builtin names. (Contributed by " "Kushal Das in :issue:`17660`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2029 msgid "" "A new :class:`request.HTTPPasswordMgrWithPriorAuth ` class allows HTTP Basic Authentication " "credentials to be managed so as to eliminate unnecessary ``401`` response " "handling, or to unconditionally send credentials on the first request in " "order to communicate with servers that return a ``404`` response instead of " "a ``401`` if the ``Authorization`` header is not sent. (Contributed by Matej " "Cepl in :issue:`19494` and Akshit Khurana in :issue:`7159`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2038 msgid "" "A new *quote_via* argument for the :func:`parse.urlencode() ` function provides a way to control the encoding of query parts " "if needed. (Contributed by Samwyse and Arnon Yaari in :issue:`13866`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2043 msgid "" "The :func:`request.urlopen() ` function accepts an :" "class:`ssl.SSLContext` object as a *context* argument, which will be used " "for the HTTPS connection. (Contributed by Alex Gaynor in :issue:`22366`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2047 msgid "" "The :func:`parse.urljoin() ` was updated to use the :" "rfc:`3986` semantics for the resolution of relative URLs, rather than :rfc:" "`1808` and :rfc:`2396`. (Contributed by Demian Brecht and Senthil Kumaran " "in :issue:`22118`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2054 msgid "wsgiref" msgstr "wsgiref" #: ../Doc/whatsnew/3.5.rst:2056 msgid "" "The *headers* argument of the :class:`headers.Headers ` class constructor is now optional. (Contributed by Pablo Torres " "Navarrete and SilentGhost in :issue:`5800`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2062 msgid "xmlrpc" msgstr "xmlrpc" #: ../Doc/whatsnew/3.5.rst:2064 msgid "" "The :class:`client.ServerProxy ` class now " "supports the :term:`context manager` protocol. (Contributed by Claudiu Popa " "in :issue:`20627`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2068 msgid "" "The :class:`client.ServerProxy ` constructor now " "accepts an optional :class:`ssl.SSLContext` instance. (Contributed by Alex " "Gaynor in :issue:`22960`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2074 msgid "xml.sax" msgstr "xml.sax" #: ../Doc/whatsnew/3.5.rst:2076 msgid "" "SAX parsers now support a character stream of the :class:`xmlreader." "InputSource ` object. (Contributed by Serhiy " "Storchaka in :issue:`2175`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2080 msgid "" ":func:`~xml.sax.parseString` now accepts a :class:`str` instance. " "(Contributed by Serhiy Storchaka in :issue:`10590`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2087 msgid "" "ZIP output can now be written to unseekable streams. (Contributed by Serhiy " "Storchaka in :issue:`23252`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2090 msgid "" "The *mode* argument of :meth:`ZipFile.open() ` method " "now accepts ``\"x\"`` to request exclusive creation. (Contributed by Serhiy " "Storchaka in :issue:`21717`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2096 msgid "Other module-level changes" msgstr "" #: ../Doc/whatsnew/3.5.rst:2098 msgid "" "Many functions in the :mod:`mmap`, :mod:`ossaudiodev`, :mod:`socket`, :mod:" "`ssl`, and :mod:`codecs` modules now accept writable :term:`bytes-like " "objects `. (Contributed by Serhiy Storchaka in :issue:" "`23001`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2107 msgid "" "The :func:`os.walk` function has been sped up by 3 to 5 times on POSIX " "systems, and by 7 to 20 times on Windows. This was done using the new :func:" "`os.scandir` function, which exposes file information from the underlying " "``readdir`` or ``FindFirstFile``/``FindNextFile`` system calls. " "(Contributed by Ben Hoyt with help from Victor Stinner in :issue:`23605`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2113 msgid "" "Construction of ``bytes(int)`` (filled by zero bytes) is faster and uses " "less memory for large objects. ``calloc()`` is used instead of ``malloc()`` " "to allocate memory for these objects. (Contributed by Victor Stinner in :" "issue:`21233`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2118 msgid "" "Some operations on :mod:`ipaddress` :class:`~ipaddress.IPv4Network` and :" "class:`~ipaddress.IPv6Network` have been massively sped up, such as :meth:" "`~ipaddress.IPv4Network.subnets`, :meth:`~ipaddress.IPv4Network.supernet`, :" "func:`~ipaddress.summarize_address_range`, :func:`~ipaddress." "collapse_addresses`. The speed up can range from 3 to 15 times. (Contributed " "by Antoine Pitrou, Michel Albert, and Markus in :issue:`21486`, :issue:" "`21487`, :issue:`20826`, :issue:`23266`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2126 msgid "" "Pickling of :mod:`ipaddress` objects was optimized to produce significantly " "smaller output. (Contributed by Serhiy Storchaka in :issue:`23133`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2129 msgid "" "Many operations on :class:`io.BytesIO` are now 50% to 100% faster. " "(Contributed by Serhiy Storchaka in :issue:`15381` and David Wilson in :" "issue:`22003`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2133 msgid "" "The :func:`marshal.dumps` function is now faster: 65-85% with versions 3 and " "4, 20-25% with versions 0 to 2 on typical data, and up to 5 times in best " "cases. (Contributed by Serhiy Storchaka in :issue:`20416` and :issue:" "`23344`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2138 msgid "" "The UTF-32 encoder is now 3 to 7 times faster. (Contributed by Serhiy " "Storchaka in :issue:`15027`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2141 msgid "" "Regular expressions are now parsed up to 10% faster. (Contributed by Serhiy " "Storchaka in :issue:`19380`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2144 msgid "" "The :func:`json.dumps` function was optimized to run with " "``ensure_ascii=False`` as fast as with ``ensure_ascii=True``. (Contributed " "by Naoki Inada in :issue:`23206`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2148 msgid "" "The :c:func:`PyObject_IsInstance` and :c:func:`PyObject_IsSubclass` " "functions have been sped up in the common case that the second argument has :" "class:`type` as its metaclass. (Contributed Georg Brandl by in :issue:" "`22540`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2153 msgid "" "Method caching was slightly improved, yielding up to 5% performance " "improvement in some benchmarks. (Contributed by Antoine Pitrou in :issue:" "`22847`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2157 msgid "" "Objects from the :mod:`random` module now use 50% less memory on 64-bit " "builds. (Contributed by Serhiy Storchaka in :issue:`23488`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2160 msgid "" "The :func:`property` getter calls are up to 25% faster. (Contributed by Joe " "Jevnik in :issue:`23910`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2163 msgid "" "Instantiation of :class:`fractions.Fraction` is now up to 30% faster. " "(Contributed by Stefan Behnel in :issue:`22464`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2166 msgid "" "String methods :meth:`~str.find`, :meth:`~str.rfind`, :meth:`~str.split`, :" "meth:`~str.partition` and the :keyword:`in` string operator are now " "significantly faster for searching 1-character substrings. (Contributed by " "Serhiy Storchaka in :issue:`23573`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2175 msgid "New ``calloc`` functions were added:" msgstr "" #: ../Doc/whatsnew/3.5.rst:2177 msgid ":c:func:`PyMem_RawCalloc`," msgstr ":c:func:`PyMem_RawCalloc`," #: ../Doc/whatsnew/3.5.rst:2178 msgid ":c:func:`PyMem_Calloc`," msgstr ":c:func:`PyMem_Calloc`," #: ../Doc/whatsnew/3.5.rst:2179 msgid ":c:func:`PyObject_Calloc`." msgstr "" #: ../Doc/whatsnew/3.5.rst:2181 msgid "(Contributed by Victor Stinner in :issue:`21233`.)" msgstr "(Contribution par Victor Stinner; :issue:`21233`.)" #: ../Doc/whatsnew/3.5.rst:2183 msgid "New encoding/decoding helper functions:" msgstr "" #: ../Doc/whatsnew/3.5.rst:2185 msgid ":c:func:`Py_DecodeLocale` (replaced ``_Py_char2wchar()``)," msgstr "" #: ../Doc/whatsnew/3.5.rst:2186 msgid ":c:func:`Py_EncodeLocale` (replaced ``_Py_wchar2char()``)." msgstr "" #: ../Doc/whatsnew/3.5.rst:2188 msgid "(Contributed by Victor Stinner in :issue:`18395`.)" msgstr "(Contribution par Victor Stinner; :issue:`18395`.)" #: ../Doc/whatsnew/3.5.rst:2190 msgid "" "A new :c:func:`PyCodec_NameReplaceErrors` function to replace the unicode " "encode error with ``\\N{...}`` escapes. (Contributed by Serhiy Storchaka in :" "issue:`19676`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2194 msgid "" "A new :c:func:`PyErr_FormatV` function similar to :c:func:`PyErr_Format`, " "but accepts a ``va_list`` argument. (Contributed by Antoine Pitrou in :issue:" "`18711`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2198 msgid "" "A new :c:data:`PyExc_RecursionError` exception. (Contributed by Georg Brandl " "in :issue:`19235`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2201 msgid "" "New :c:func:`PyModule_FromDefAndSpec`, :c:func:`PyModule_FromDefAndSpec2`, " "and :c:func:`PyModule_ExecDef` functions introduced by :pep:`489` -- multi-" "phase extension module initialization. (Contributed by Petr Viktorin in :" "issue:`24268`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2206 msgid "" "New :c:func:`PyNumber_MatrixMultiply` and :c:func:" "`PyNumber_InPlaceMatrixMultiply` functions to perform matrix multiplication. " "(Contributed by Benjamin Peterson in :issue:`21176`. See also :pep:`465` " "for details.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2212 msgid "" "The :c:member:`PyTypeObject.tp_finalize` slot is now part of the stable ABI." msgstr "" #: ../Doc/whatsnew/3.5.rst:2214 msgid "" "Windows builds now require Microsoft Visual C++ 14.0, which is available as " "part of `Visual Studio 2015 `_." msgstr "" #: ../Doc/whatsnew/3.5.rst:2217 msgid "" "Extension modules now include a platform information tag in their filename " "on some platforms (the tag is optional, and CPython will import extensions " "without it, although if the tag is present and mismatched, the extension " "won't be loaded):" msgstr "" #: ../Doc/whatsnew/3.5.rst:2222 msgid "" "On Linux, extension module filenames end with ``.cpython-m-" "-.pyd``:" msgstr "" #: ../Doc/whatsnew/3.5.rst:2225 ../Doc/whatsnew/3.5.rst:2242 msgid "" "```` is the major number of the Python version; for Python 3.5 this " "is ``3``." msgstr "" #: ../Doc/whatsnew/3.5.rst:2228 ../Doc/whatsnew/3.5.rst:2245 msgid "" "```` is the minor number of the Python version; for Python 3.5 this " "is ``5``." msgstr "" #: ../Doc/whatsnew/3.5.rst:2231 msgid "" "```` is the hardware architecture the extension module was " "built to run on. It's most commonly either ``i386`` for 32-bit Intel " "platforms or ``x86_64`` for 64-bit Intel (and AMD) platforms." msgstr "" #: ../Doc/whatsnew/3.5.rst:2235 msgid "" "```` is always ``linux-gnu``, except for extensions built to talk to the " "32-bit ABI on 64-bit platforms, in which case it is ``linux-gnu32`` (and " "```` will be ``x86_64``)." msgstr "" #: ../Doc/whatsnew/3.5.rst:2239 msgid "" "On Windows, extension module filenames end with ``.cp-" ".pyd``:" msgstr "" #: ../Doc/whatsnew/3.5.rst:2248 msgid "" "```` is the platform the extension module was built for, either " "``win32`` for Win32, ``win_amd64`` for Win64, ``win_ia64`` for Windows " "Itanium 64, and ``win_arm`` for Windows on ARM." msgstr "" #: ../Doc/whatsnew/3.5.rst:2252 msgid "" "If built in debug mode, ```` will be ``_d``, otherwise it will be " "blank." msgstr "" #: ../Doc/whatsnew/3.5.rst:2255 msgid "" "On OS X platforms, extension module filenames now end with ``-darwin.so``." msgstr "" #: ../Doc/whatsnew/3.5.rst:2257 msgid "" "On all other platforms, extension module filenames are the same as they were " "with Python 3.4." msgstr "" #: ../Doc/whatsnew/3.5.rst:2265 ../Doc/whatsnew/3.6.rst:1209 msgid "New Keywords" msgstr "Nouveaux mot-clefs" #: ../Doc/whatsnew/3.5.rst:2267 ../Doc/whatsnew/3.6.rst:1211 msgid "" "``async`` and ``await`` are not recommended to be used as variable, class, " "function or module names. Introduced by :pep:`492` in Python 3.5, they will " "become proper keywords in Python 3.7." msgstr "" #: ../Doc/whatsnew/3.5.rst:2273 msgid "Deprecated Python Behavior" msgstr "" #: ../Doc/whatsnew/3.5.rst:2275 msgid "" "Raising the :exc:`StopIteration` exception inside a generator will now " "generate a silent :exc:`PendingDeprecationWarning`, which will become a non-" "silent deprecation warning in Python 3.6 and will trigger a :exc:" "`RuntimeError` in Python 3.7. See :ref:`PEP 479: Change StopIteration " "handling inside generators ` for details." msgstr "" #: ../Doc/whatsnew/3.5.rst:2285 msgid "" "Windows XP is no longer supported by Microsoft, thus, per :PEP:`11`, CPython " "3.5 is no longer officially supported on this OS." msgstr "" #: ../Doc/whatsnew/3.5.rst:2292 msgid "" "The :mod:`formatter` module has now graduated to full deprecation and is " "still slated for removal in Python 3.6." msgstr "" #: ../Doc/whatsnew/3.5.rst:2295 msgid "" "The :func:`asyncio.async` function is deprecated in favor of :func:`~asyncio." "ensure_future`." msgstr "" #: ../Doc/whatsnew/3.5.rst:2298 msgid "" "The :mod:`smtpd` module has in the past always decoded the DATA portion of " "email messages using the ``utf-8`` codec. This can now be controlled by the " "new *decode_data* keyword to :class:`~smtpd.SMTPServer`. The default value " "is ``True``, but this default is deprecated. Specify the *decode_data* " "keyword with an appropriate value to avoid the deprecation warning." msgstr "" #: ../Doc/whatsnew/3.5.rst:2304 msgid "" "Directly assigning values to the :attr:`~http.cookies.Morsel.key`, :attr:" "`~http.cookies.Morsel.value` and :attr:`~http.cookies.Morsel.coded_value` " "of :class:`http.cookies.Morsel` objects is deprecated. Use the :meth:`~http." "cookies.Morsel.set` method instead. In addition, the undocumented " "*LegalChars* parameter of :meth:`~http.cookies.Morsel.set` is deprecated, " "and is now ignored." msgstr "" #: ../Doc/whatsnew/3.5.rst:2311 msgid "" "Passing a format string as keyword argument *format_string* to the :meth:" "`~string.Formatter.format` method of the :class:`string.Formatter` class has " "been deprecated. (Contributed by Serhiy Storchaka in :issue:`23671`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2316 msgid "" "The :func:`platform.dist` and :func:`platform.linux_distribution` functions " "are now deprecated. Linux distributions use too many different ways of " "describing themselves, so the functionality is left to a package. " "(Contributed by Vajrasky Kok and Berker Peksag in :issue:`1322`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2321 msgid "" "The previously undocumented ``from_function`` and ``from_builtin`` methods " "of :class:`inspect.Signature` are deprecated. Use the new :meth:`Signature." "from_callable() ` method instead. " "(Contributed by Yury Selivanov in :issue:`24248`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2326 msgid "" "The :func:`inspect.getargspec` function is deprecated and scheduled to be " "removed in Python 3.6. (See :issue:`20438` for details.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2329 msgid "" "The :mod:`inspect` :func:`~inspect.getfullargspec`, :func:`~inspect." "getargvalues`, :func:`~inspect.getcallargs`, :func:`~inspect.getargvalues`, :" "func:`~inspect.formatargspec`, and :func:`~inspect.formatargvalues` " "functions are deprecated in favor of the :func:`inspect.signature` API. " "(Contributed by Yury Selivanov in :issue:`20438`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2336 msgid "" "Use of :const:`re.LOCALE` flag with str patterns or :const:`re.ASCII` is now " "deprecated. (Contributed by Serhiy Storchaka in :issue:`22407`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2339 msgid "" "Use of unrecognized special sequences consisting of ``'\\'`` and an ASCII " "letter in regular expression patterns and replacement patterns now raises a " "deprecation warning and will be forbidden in Python 3.6. (Contributed by " "Serhiy Storchaka in :issue:`23622`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2344 msgid "" "The undocumented and unofficial *use_load_tests* default argument of the :" "meth:`unittest.TestLoader.loadTestsFromModule` method now is deprecated and " "ignored. (Contributed by Robert Collins and Barry A. Warsaw in :issue:" "`16662`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2359 msgid "" "The ``__version__`` attribute has been dropped from the email package. The " "email code hasn't been shipped separately from the stdlib for a long time, " "and the ``__version__`` string was not updated in the last few releases." msgstr "" #: ../Doc/whatsnew/3.5.rst:2363 msgid "" "The internal ``Netrc`` class in the :mod:`ftplib` module was deprecated in " "3.4, and has now been removed. (Contributed by Matt Chaput in :issue:`6623`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2367 msgid "The concept of ``.pyo`` files has been removed." msgstr "" #: ../Doc/whatsnew/3.5.rst:2369 msgid "" "The JoinableQueue class in the provisional :mod:`asyncio` module was " "deprecated in 3.4.4 and is now removed. (Contributed by A. Jesse Jiryu Davis " "in :issue:`23464`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2375 msgid "Porting to Python 3.5" msgstr "Portage vers Python 3.5" #: ../Doc/whatsnew/3.5.rst:2382 msgid "Changes in Python behavior" msgstr "" #: ../Doc/whatsnew/3.5.rst:2384 msgid "" "Due to an oversight, earlier Python versions erroneously accepted the " "following syntax::" msgstr "" #: ../Doc/whatsnew/3.5.rst:2390 msgid "" "Python 3.5 now correctly raises a :exc:`SyntaxError`, as generator " "expressions must be put in parentheses if not a sole argument to a function." msgstr "" #: ../Doc/whatsnew/3.5.rst:2397 msgid "" ":pep:`475`: System calls are now retried when interrupted by a signal " "instead of raising :exc:`InterruptedError` if the Python signal handler does " "not raise an exception." msgstr "" #: ../Doc/whatsnew/3.5.rst:2401 msgid "" "Before Python 3.5, a :class:`datetime.time` object was considered to be " "false if it represented midnight in UTC. This behavior was considered " "obscure and error-prone and has been removed in Python 3.5. See :issue:" "`13936` for full details." msgstr "" #: ../Doc/whatsnew/3.5.rst:2406 msgid "" "The :meth:`ssl.SSLSocket.send()` method now raises either :exc:`ssl." "SSLWantReadError` or :exc:`ssl.SSLWantWriteError` on a non-blocking socket " "if the operation would block. Previously, it would return ``0``. " "(Contributed by Nikolaus Rath in :issue:`20951`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2411 msgid "" "The ``__name__`` attribute of generators is now set from the function name, " "instead of being set from the code name. Use ``gen.gi_code.co_name`` to " "retrieve the code name. Generators also have a new ``__qualname__`` " "attribute, the qualified name, which is now used for the representation of a " "generator (``repr(gen)``). (Contributed by Victor Stinner in :issue:`21205`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2418 msgid "" "The deprecated \"strict\" mode and argument of :class:`~html.parser." "HTMLParser`, :meth:`HTMLParser.error`, and the :exc:`HTMLParserError` " "exception have been removed. (Contributed by Ezio Melotti in :issue:" "`15114`.) The *convert_charrefs* argument of :class:`~html.parser." "HTMLParser` is now ``True`` by default. (Contributed by Berker Peksag in :" "issue:`21047`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2424 msgid "" "Although it is not formally part of the API, it is worth noting for porting " "purposes (ie: fixing tests) that error messages that were previously of the " "form \"'sometype' does not support the buffer protocol\" are now of the form " "\"a :term:`bytes-like object` is required, not 'sometype'\". (Contributed by " "Ezio Melotti in :issue:`16518`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2430 msgid "" "If the current directory is set to a directory that no longer exists then :" "exc:`FileNotFoundError` will no longer be raised and instead :meth:" "`~importlib.machinery.FileFinder.find_spec` will return ``None`` **without** " "caching ``None`` in :data:`sys.path_importer_cache`, which is different than " "the typical case (:issue:`22834`)." msgstr "" #: ../Doc/whatsnew/3.5.rst:2436 msgid "" "HTTP status code and messages from :mod:`http.client` and :mod:`http.server` " "were refactored into a common :class:`~http.HTTPStatus` enum. The values " "in :mod:`http.client` and :mod:`http.server` remain available for backwards " "compatibility. (Contributed by Demian Brecht in :issue:`21793`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2441 msgid "" "When an import loader defines :meth:`importlib.machinery.Loader.exec_module` " "it is now expected to also define :meth:`~importlib.machinery.Loader." "create_module` (raises a :exc:`DeprecationWarning` now, will be an error in " "Python 3.6). If the loader inherits from :class:`importlib.abc.Loader` then " "there is nothing to do, else simply define :meth:`~importlib.machinery." "Loader.create_module` to return ``None``. (Contributed by Brett Cannon in :" "issue:`23014`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2449 msgid "" "The :func:`re.split` function always ignored empty pattern matches, so the ``" "\"x*\"`` pattern worked the same as ``\"x+\"``, and the ``\"\\b\"`` pattern " "never worked. Now :func:`re.split` raises a warning if the pattern could " "match an empty string. For compatibility, use patterns that never match an " "empty string (e.g. ``\"x+\"`` instead of ``\"x*\"``). Patterns that could " "only match an empty string (such as ``\"\\b\"``) now raise an error. " "(Contributed by Serhiy Storchaka in :issue:`22818`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2457 msgid "" "The :class:`http.cookies.Morsel` dict-like interface has been made self " "consistent: morsel comparison now takes the :attr:`~http.cookies.Morsel." "key` and :attr:`~http.cookies.Morsel.value` into account, :meth:`~http." "cookies.Morsel.copy` now results in a :class:`~http.cookies.Morsel` instance " "rather than a :class:`dict`, and :meth:`~http.cookies.Morsel.update` will " "now raise an exception if any of the keys in the update dictionary are " "invalid. In addition, the undocumented *LegalChars* parameter of :func:" "`~http.cookies.Morsel.set` is deprecated and is now ignored. (Contributed " "by Demian Brecht in :issue:`2211`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2467 msgid "" ":pep:`488` has removed ``.pyo`` files from Python and introduced the " "optional ``opt-`` tag in ``.pyc`` file names. The :func:`importlib.util." "cache_from_source` has gained an *optimization* parameter to help control " "the ``opt-`` tag. Because of this, the *debug_override* parameter of the " "function is now deprecated. `.pyo` files are also no longer supported as a " "file argument to the Python interpreter and thus serve no purpose when " "distributed on their own (i.e. sourcless code distribution). Due to the fact " "that the magic number for bytecode has changed in Python 3.5, all old `.pyo` " "files from previous versions of Python are invalid regardless of this PEP." msgstr "" #: ../Doc/whatsnew/3.5.rst:2478 msgid "" "The :mod:`socket` module now exports the :data:`~socket.CAN_RAW_FD_FRAMES` " "constant on linux 3.6 and greater." msgstr "" #: ../Doc/whatsnew/3.5.rst:2481 msgid "" "The :func:`ssl.cert_time_to_seconds` function now interprets the input time " "as UTC and not as local time, per :rfc:`5280`. Additionally, the return " "value is always an :class:`int`. (Contributed by Akira Li in :issue:`19940`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2485 msgid "" "The ``pygettext.py`` Tool now uses the standard +NNNN format for timezones " "in the POT-Creation-Date header." msgstr "" #: ../Doc/whatsnew/3.5.rst:2488 msgid "" "The :mod:`smtplib` module now uses :data:`sys.stderr` instead of the " "previous module-level :data:`stderr` variable for debug output. If your " "(test) program depends on patching the module-level variable to capture the " "debug output, you will need to update it to capture sys.stderr instead." msgstr "" #: ../Doc/whatsnew/3.5.rst:2493 msgid "" "The :meth:`str.startswith` and :meth:`str.endswith` methods no longer return " "``True`` when finding the empty string and the indexes are completely out of " "range. (Contributed by Serhiy Storchaka in :issue:`24284`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2497 msgid "" "The :func:`inspect.getdoc` function now returns documentation strings " "inherited from base classes. Documentation strings no longer need to be " "duplicated if the inherited documentation is appropriate. To suppress an " "inherited string, an empty string must be specified (or the documentation " "may be filled in). This change affects the output of the :mod:`pydoc` " "module and the :func:`help` function. (Contributed by Serhiy Storchaka in :" "issue:`15582`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2505 msgid "" "Nested :func:`functools.partial` calls are now flattened. If you were " "relying on the previous behavior, you can now either add an attribute to a :" "func:`functools.partial` object or you can create a subclass of :func:" "`functools.partial`. (Contributed by Alexander Belopolsky in :issue:`7830`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2514 msgid "" "The undocumented :c:member:`~PyMemoryViewObject.format` member of the (non-" "public) :c:type:`PyMemoryViewObject` structure has been removed. All " "extensions relying on the relevant parts in ``memoryobject.h`` must be " "rebuilt." msgstr "" #: ../Doc/whatsnew/3.5.rst:2519 msgid "" "The :c:type:`PyMemAllocator` structure was renamed to :c:type:" "`PyMemAllocatorEx` and a new ``calloc`` field was added." msgstr "" #: ../Doc/whatsnew/3.5.rst:2522 msgid "" "Removed non-documented macro :c:macro:`PyObject_REPR` which leaked " "references. Use format character ``%R`` in :c:func:`PyUnicode_FromFormat`-" "like functions to format the :func:`repr` of the object. (Contributed by " "Serhiy Storchaka in :issue:`22453`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2527 msgid "" "Because the lack of the :attr:`__module__` attribute breaks pickling and " "introspection, a deprecation warning is now raised for builtin types without " "the :attr:`__module__` attribute. This would be an AttributeError in the " "future. (Contributed by Serhiy Storchaka in :issue:`20204`.)" msgstr "" #: ../Doc/whatsnew/3.5.rst:2533 msgid "" "As part of the :pep:`492` implementation, the ``tp_reserved`` slot of :c:" "type:`PyTypeObject` was replaced with a :c:member:`tp_as_async` slot. Refer " "to :ref:`coro-objects` for new types, structures and functions." msgstr "" #: ../Doc/whatsnew/3.6.rst:3 msgid "What's New In Python 3.6" msgstr "" #: ../Doc/whatsnew/3.6.rst:5 msgid "|release|" msgstr "" #: ../Doc/whatsnew/3.6.rst:6 msgid "|today|" msgstr "|today|" #: ../Doc/whatsnew/3.6.rst:48 msgid "This article explains the new features in Python 3.6, compared to 3.5." msgstr "" #: ../Doc/whatsnew/3.6.rst:50 msgid "For full details, see the :ref:`changelog `." msgstr "" #: ../Doc/whatsnew/3.6.rst:54 msgid "" "Prerelease users should be aware that this document is currently in draft " "form. It will be updated substantially as Python 3.6 moves towards release, " "so it's worth checking back even after reading earlier versions." msgstr "" #: ../Doc/whatsnew/3.6.rst:67 msgid "" "A ``global`` or ``nonlocal`` statement must now textually appear before the " "first use of the affected name in the same scope. Previously this was a " "SyntaxWarning." msgstr "" #: ../Doc/whatsnew/3.6.rst:71 msgid "PEP 498: :ref:`Formatted string literals `" msgstr "" #: ../Doc/whatsnew/3.6.rst:73 ../Doc/whatsnew/3.6.rst:166 msgid "PEP 515: Underscores in Numeric Literals" msgstr "" #: ../Doc/whatsnew/3.6.rst:75 msgid "PEP 526: :ref:`Syntax for Variable Annotations `" msgstr "" #: ../Doc/whatsnew/3.6.rst:77 msgid "PEP 525: Asynchronous Generators" msgstr "" #: ../Doc/whatsnew/3.6.rst:79 msgid "PEP 530: Asynchronous Comprehensions" msgstr "" #: ../Doc/whatsnew/3.6.rst:81 msgid "Standard library improvements:" msgstr "" #: ../Doc/whatsnew/3.6.rst:85 ../Doc/whatsnew/3.6.rst:586 msgid "" "On Linux, :func:`os.urandom` now blocks until the system urandom entropy " "pool is initialized to increase the security. See the :pep:`524` for the " "rationale." msgstr "" #: ../Doc/whatsnew/3.6.rst:89 msgid ":mod:`hashlib` and :mod:`ssl` now support OpenSSL 1.1.0." msgstr "" #: ../Doc/whatsnew/3.6.rst:91 msgid "" "The default settings and feature set of the :mod:`ssl` have been improved." msgstr "" #: ../Doc/whatsnew/3.6.rst:93 msgid "" "The :mod:`hashlib` module has got support for BLAKE2, SHA-3 and SHAKE hash " "algorithms and :func:`~hashlib.scrypt` key derivation function." msgstr "" #: ../Doc/whatsnew/3.6.rst:98 msgid "PEP 529: :ref:`Change Windows filesystem encoding to UTF-8 `" msgstr "" #: ../Doc/whatsnew/3.6.rst:100 msgid "PEP 528: :ref:`Change Windows console encoding to UTF-8 `" msgstr "" #: ../Doc/whatsnew/3.6.rst:102 msgid "" "The ``py.exe`` launcher, when used interactively, no longer prefers Python 2 " "over Python 3 when the user doesn't specify a version (via command line " "arguments or a config file). Handling of shebang lines remains unchanged - " "\"python\" refers to Python 2 in that case." msgstr "" #: ../Doc/whatsnew/3.6.rst:107 msgid "" "``python.exe`` and ``pythonw.exe`` have been marked as long-path aware, " "which means that when the 260 character path limit may no longer apply. See :" "ref:`removing the MAX_PATH limitation ` for details." msgstr "" #: ../Doc/whatsnew/3.6.rst:111 msgid "" "A ``._pth`` file can be added to force isolated mode and fully specify all " "search paths to avoid registry and environment lookup. See :ref:`the " "documentation ` for more information." msgstr "" #: ../Doc/whatsnew/3.6.rst:115 msgid "" "A ``python36.zip`` file now works as a landmark to infer :envvar:" "`PYTHONHOME`. See :ref:`the documentation ` for more " "information." msgstr "" #: ../Doc/whatsnew/3.6.rst:136 msgid "" "PEP 520: :ref:`Preserving Class Attribute Definition Order`" msgstr "" #: ../Doc/whatsnew/3.6.rst:138 msgid "PEP 468: :ref:`Preserving Keyword Argument Order`" msgstr "" #: ../Doc/whatsnew/3.6.rst:140 msgid "A complete list of PEP's implemented in Python 3.6:" msgstr "" #: ../Doc/whatsnew/3.6.rst:142 msgid ":pep:`468`, :ref:`Preserving Keyword Argument Order`" msgstr "" #: ../Doc/whatsnew/3.6.rst:143 msgid "" ":pep:`487`, :ref:`Simpler customization of class creation`" msgstr "" #: ../Doc/whatsnew/3.6.rst:144 msgid ":pep:`495`, Local Time Disambiguation" msgstr "" #: ../Doc/whatsnew/3.6.rst:145 msgid ":pep:`498`, :ref:`Formatted string literals `" msgstr "" #: ../Doc/whatsnew/3.6.rst:146 msgid ":pep:`506`, Adding A Secrets Module To The Standard Library" msgstr "" #: ../Doc/whatsnew/3.6.rst:147 msgid ":pep:`509`, :ref:`Add a private version to dict`" msgstr "" #: ../Doc/whatsnew/3.6.rst:148 msgid ":pep:`515`, :ref:`Underscores in Numeric Literals`" msgstr "" #: ../Doc/whatsnew/3.6.rst:149 msgid ":pep:`519`, :ref:`Adding a file system path protocol`" msgstr "" #: ../Doc/whatsnew/3.6.rst:150 msgid "" ":pep:`520`, :ref:`Preserving Class Attribute Definition Order`" msgstr "" #: ../Doc/whatsnew/3.6.rst:151 msgid ":pep:`523`, :ref:`Adding a frame evaluation API to CPython`" msgstr "" #: ../Doc/whatsnew/3.6.rst:152 msgid ":pep:`524`, Make os.urandom() blocking on Linux (during system startup)" msgstr "" #: ../Doc/whatsnew/3.6.rst:153 msgid ":pep:`525`, Asynchronous Generators (provisional)" msgstr "" #: ../Doc/whatsnew/3.6.rst:154 msgid "" ":pep:`526`, :ref:`Syntax for Variable Annotations (provisional)`" msgstr "" #: ../Doc/whatsnew/3.6.rst:155 msgid "" ":pep:`528`, :ref:`Change Windows console encoding to UTF-8 " "(provisional)`" msgstr "" #: ../Doc/whatsnew/3.6.rst:156 msgid "" ":pep:`529`, :ref:`Change Windows filesystem encoding to UTF-8 " "(provisional)`" msgstr "" #: ../Doc/whatsnew/3.6.rst:157 msgid ":pep:`530`, Asynchronous Comprehensions" msgstr "" #: ../Doc/whatsnew/3.6.rst:168 msgid "" "Prior to PEP 515, there was no support for writing long numeric literals " "with some form of separator to improve readability. For instance, how big is " "``1000000000000000``? With :pep:`515`, though, you can use underscores to " "separate digits as desired to make numeric literals easier to read: " "``1_000_000_000_000_000``. Underscores can be used with other numeric " "literals beyond integers, e.g. ``0x_FF_FF_FF_FF``." msgstr "" #: ../Doc/whatsnew/3.6.rst:176 msgid "" "Single underscores are allowed between digits and after any base specifier. " "More than a single underscore in a row, leading, or trailing underscores are " "not allowed." msgstr "" #: ../Doc/whatsnew/3.6.rst:182 msgid ":pep:`515` -- Underscores in Numeric Literals" msgstr "" #: ../Doc/whatsnew/3.6.rst:183 msgid "PEP written by Georg Brandl and Serhiy Storchaka." msgstr "" #: ../Doc/whatsnew/3.6.rst:189 msgid "PEP 523: Adding a frame evaluation API to CPython" msgstr "" #: ../Doc/whatsnew/3.6.rst:191 msgid "" "While Python provides extensive support to customize how code executes, one " "place it has not done so is in the evaluation of frame objects. If you " "wanted some way to intercept frame evaluation in Python there really wasn't " "any way without directly manipulating function pointers for defined " "functions." msgstr "" #: ../Doc/whatsnew/3.6.rst:197 msgid "" ":pep:`523` changes this by providing an API to make frame evaluation " "pluggable at the C level. This will allow for tools such as debuggers and " "JITs to intercept frame evaluation before the execution of Python code " "begins. This enables the use of alternative evaluation implementations for " "Python code, tracking frame evaluation, etc." msgstr "" #: ../Doc/whatsnew/3.6.rst:204 msgid "" "This API is not part of the limited C API and is marked as private to signal " "that usage of this API is expected to be limited and only applicable to very " "select, low-level use-cases. Semantics of the API will change with Python as " "necessary." msgstr "" #: ../Doc/whatsnew/3.6.rst:211 msgid ":pep:`523` -- Adding a frame evaluation API to CPython" msgstr "" #: ../Doc/whatsnew/3.6.rst:212 msgid "PEP written by Brett Cannon and Dino Viehland." msgstr "" #: ../Doc/whatsnew/3.6.rst:218 msgid "PEP 519: Adding a file system path protocol" msgstr "" #: ../Doc/whatsnew/3.6.rst:220 msgid "" "File system paths have historically been represented as :class:`str` or :" "class:`bytes` objects. This has led to people who write code which operate " "on file system paths to assume that such objects are only one of those two " "types (an :class:`int` representing a file descriptor does not count as that " "is not a file path). Unfortunately that assumption prevents alternative " "object representations of file system paths like :mod:`pathlib` from working " "with pre-existing code, including Python's standard library." msgstr "" #: ../Doc/whatsnew/3.6.rst:229 msgid "" "To fix this situation, a new interface represented by :class:`os.PathLike` " "has been defined. By implementing the :meth:`~os.PathLike.__fspath__` " "method, an object signals that it represents a path. An object can then " "provide a low-level representation of a file system path as a :class:`str` " "or :class:`bytes` object. This means an object is considered :term:`path-" "like ` if it implements :class:`os.PathLike` or is a :" "class:`str` or :class:`bytes` object which represents a file system path. " "Code can use :func:`os.fspath`, :func:`os.fsdecode`, or :func:`os.fsencode` " "to explicitly get a :class:`str` and/or :class:`bytes` representation of a " "path-like object." msgstr "" #: ../Doc/whatsnew/3.6.rst:242 msgid "" "The built-in :func:`open` function has been updated to accept :class:`os." "PathLike` objects as have all relevant functions in the :mod:`os` and :mod:" "`os.path` modules. :c:func:`PyUnicode_FSConverter` and :c:func:" "`PyUnicode_FSConverter` have been changed to accept path-like objects. The :" "class:`os.DirEntry` class and relevant classes in :mod:`pathlib` have also " "been updated to implement :class:`os.PathLike`." msgstr "" #: ../Doc/whatsnew/3.6.rst:250 msgid "" "The hope in is that updating the fundamental functions for operating on file " "system paths will lead to third-party code to implicitly support all :term:" "`path-like objects ` without any code changes or at least " "very minimal ones (e.g. calling :func:`os.fspath` at the beginning of code " "before operating on a path-like object)." msgstr "" #: ../Doc/whatsnew/3.6.rst:257 msgid "" "Here are some examples of how the new interface allows for :class:`pathlib." "Path` to be used more easily and transparently with pre-existing code::" msgstr "" #: ../Doc/whatsnew/3.6.rst:274 msgid "" "(Implemented by Brett Cannon, Ethan Furman, Dusty Phillips, and Jelle " "Zijlstra.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:278 msgid ":pep:`519` -- Adding a file system path protocol" msgstr "" #: ../Doc/whatsnew/3.6.rst:279 msgid "PEP written by Brett Cannon and Koos Zevenhoven." msgstr "" #: ../Doc/whatsnew/3.6.rst:285 msgid "PEP 498: Formatted string literals" msgstr "" #: ../Doc/whatsnew/3.6.rst:287 msgid "" "Formatted string literals are a new kind of string literal, prefixed with " "``'f'``. They are similar to the format strings accepted by :meth:`str." "format`. They contain replacement fields surrounded by curly braces. The " "replacement fields are expressions, which are evaluated at run time, and " "then formatted using the :func:`format` protocol::" msgstr "" #: ../Doc/whatsnew/3.6.rst:297 msgid "See :pep:`498` and the main documentation at :ref:`f-strings`." msgstr "" #: ../Doc/whatsnew/3.6.rst:303 msgid "PEP 526: Syntax for variable annotations" msgstr "" #: ../Doc/whatsnew/3.6.rst:305 msgid "" ":pep:`484` introduced standard for type annotations of function parameters, " "a.k.a. type hints. This PEP adds syntax to Python for annotating the types " "of variables including class variables and instance variables::" msgstr "" #: ../Doc/whatsnew/3.6.rst:316 msgid "" "Just as for function annotations, the Python interpreter does not attach any " "particular meaning to variable annotations and only stores them in a special " "attribute ``__annotations__`` of a class or module. In contrast to variable " "declarations in statically typed languages, the goal of annotation syntax is " "to provide an easy way to specify structured type metadata for third party " "tools and libraries via the abstract syntax tree and the ``__annotations__`` " "attribute." msgstr "" #: ../Doc/whatsnew/3.6.rst:328 msgid ":pep:`526` -- Syntax for variable annotations." msgstr "" #: ../Doc/whatsnew/3.6.rst:327 msgid "" "PEP written by Ryan Gonzalez, Philip House, Ivan Levkivskyi, Lisa Roach, and " "Guido van Rossum. Implemented by Ivan Levkivskyi." msgstr "" #: ../Doc/whatsnew/3.6.rst:330 msgid "" "Tools that use or will use the new syntax: `mypy `_, `pytype `_, PyCharm, etc." msgstr "" #: ../Doc/whatsnew/3.6.rst:338 msgid "PEP 529: Change Windows filesystem encoding to UTF-8" msgstr "" #: ../Doc/whatsnew/3.6.rst:340 msgid "" "Representing filesystem paths is best performed with str (Unicode) rather " "than bytes. However, there are some situations where using bytes is " "sufficient and correct." msgstr "" #: ../Doc/whatsnew/3.6.rst:344 msgid "" "Prior to Python 3.6, data loss could result when using bytes paths on " "Windows. With this change, using bytes to represent paths is now supported " "on Windows, provided those bytes are encoded with the encoding returned by :" "func:`sys.getfilesystemencoding()`, which now defaults to ``'utf-8'``." msgstr "" #: ../Doc/whatsnew/3.6.rst:349 msgid "" "Applications that do not use str to represent paths should use :func:`os." "fsencode()` and :func:`os.fsdecode()` to ensure their bytes are correctly " "encoded. To revert to the previous behaviour, set :envvar:" "`PYTHONLEGACYWINDOWSFSENCODING` or call :func:`sys." "_enablelegacywindowsfsencoding`." msgstr "" #: ../Doc/whatsnew/3.6.rst:355 msgid "" "See :pep:`529` for more information and discussion of code modifications " "that may be required." msgstr "" #: ../Doc/whatsnew/3.6.rst:360 msgid "" "This change is considered experimental for 3.6.0 beta releases. The default " "encoding may change before the final release." msgstr "" #: ../Doc/whatsnew/3.6.rst:366 msgid "PEP 487: Simpler customization of class creation" msgstr "" #: ../Doc/whatsnew/3.6.rst:368 msgid "" "Upon subclassing a class, the ``__init_subclass__`` classmethod (if defined) " "is called on the base class. This makes it straightforward to write classes " "that customize initialization of future subclasses without introducing the " "complexity of a full custom metaclass." msgstr "" #: ../Doc/whatsnew/3.6.rst:373 msgid "" "The descriptor protocol has also been expanded to include a new optional " "method, ``__set_name__``. Whenever a new class is defined, the new method " "will be called on all descriptors included in the definition, providing them " "with a reference to the class being defined and the name given to the " "descriptor within the class namespace." msgstr "" #: ../Doc/whatsnew/3.6.rst:379 msgid "" "Also see :pep:`487` and the updated class customization documentation at :" "ref:`class-customization` and :ref:`descriptors`." msgstr "" #: ../Doc/whatsnew/3.6.rst:382 msgid "(Contributed by Martin Teichmann in :issue:`27366`)" msgstr "" #: ../Doc/whatsnew/3.6.rst:387 msgid "PEP 528: Change Windows console encoding to UTF-8" msgstr "" #: ../Doc/whatsnew/3.6.rst:389 msgid "" "The default console on Windows will now accept all Unicode characters and " "provide correctly read str objects to Python code. ``sys.stdin``, ``sys." "stdout`` and ``sys.stderr`` now default to utf-8 encoding." msgstr "" #: ../Doc/whatsnew/3.6.rst:393 msgid "" "This change only applies when using an interactive console, and not when " "redirecting files or pipes. To revert to the previous behaviour for " "interactive console use, set :envvar:`PYTHONLEGACYWINDOWSIOENCODING`." msgstr "" #: ../Doc/whatsnew/3.6.rst:399 msgid ":pep:`528` -- Change Windows console encoding to UTF-8" msgstr "" #: ../Doc/whatsnew/3.6.rst:400 msgid "PEP written and implemented by Steve Dower." msgstr "" #: ../Doc/whatsnew/3.6.rst:403 msgid "PYTHONMALLOC environment variable" msgstr "" #: ../Doc/whatsnew/3.6.rst:405 msgid "" "The new :envvar:`PYTHONMALLOC` environment variable allows setting the " "Python memory allocators and/or install debug hooks." msgstr "" #: ../Doc/whatsnew/3.6.rst:408 msgid "" "It is now possible to install debug hooks on Python memory allocators on " "Python compiled in release mode using ``PYTHONMALLOC=debug``. Effects of " "debug hooks:" msgstr "" #: ../Doc/whatsnew/3.6.rst:411 msgid "Newly allocated memory is filled with the byte ``0xCB``" msgstr "" #: ../Doc/whatsnew/3.6.rst:412 msgid "Freed memory is filled with the byte ``0xDB``" msgstr "" #: ../Doc/whatsnew/3.6.rst:413 msgid "" "Detect violations of Python memory allocator API. For example, :c:func:" "`PyObject_Free` called on a memory block allocated by :c:func:`PyMem_Malloc`." msgstr "" #: ../Doc/whatsnew/3.6.rst:416 msgid "Detect write before the start of the buffer (buffer underflow)" msgstr "" #: ../Doc/whatsnew/3.6.rst:417 msgid "Detect write after the end of the buffer (buffer overflow)" msgstr "" #: ../Doc/whatsnew/3.6.rst:418 msgid "" "Check that the :term:`GIL ` is held when allocator " "functions of :c:data:`PYMEM_DOMAIN_OBJ` (ex: :c:func:`PyObject_Malloc`) and :" "c:data:`PYMEM_DOMAIN_MEM` (ex: :c:func:`PyMem_Malloc`) domains are called." msgstr "" #: ../Doc/whatsnew/3.6.rst:422 msgid "Checking if the GIL is held is also a new feature of Python 3.6." msgstr "" #: ../Doc/whatsnew/3.6.rst:424 msgid "" "See the :c:func:`PyMem_SetupDebugHooks` function for debug hooks on Python " "memory allocators." msgstr "" #: ../Doc/whatsnew/3.6.rst:427 msgid "" "It is now also possible to force the usage of the :c:func:`malloc` allocator " "of the C library for all Python memory allocations using " "``PYTHONMALLOC=malloc``. It helps to use external memory debuggers like " "Valgrind on a Python compiled in release mode." msgstr "" #: ../Doc/whatsnew/3.6.rst:432 msgid "" "On error, the debug hooks on Python memory allocators now use the :mod:" "`tracemalloc` module to get the traceback where a memory block was allocated." msgstr "" #: ../Doc/whatsnew/3.6.rst:436 msgid "" "Example of fatal error on buffer overflow using ``python3.6 -X " "tracemalloc=5`` (store 5 frames in traces)::" msgstr "" #: ../Doc/whatsnew/3.6.rst:473 msgid "(Contributed by Victor Stinner in :issue:`26516` and :issue:`26564`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:477 msgid "DTrace and SystemTap probing support" msgstr "" #: ../Doc/whatsnew/3.6.rst:479 msgid "" "Python can now be built ``--with-dtrace`` which enables static markers for " "the following events in the interpreter:" msgstr "" #: ../Doc/whatsnew/3.6.rst:482 msgid "function call/return" msgstr "" #: ../Doc/whatsnew/3.6.rst:484 msgid "garbage collection started/finished" msgstr "" #: ../Doc/whatsnew/3.6.rst:486 msgid "line of code executed." msgstr "" #: ../Doc/whatsnew/3.6.rst:488 msgid "" "This can be used to instrument running interpreters in production, without " "the need to recompile specific debug builds or providing application-" "specific profiling/debugging code." msgstr "" #: ../Doc/whatsnew/3.6.rst:492 msgid "More details in :ref:`instrumentation`." msgstr "" #: ../Doc/whatsnew/3.6.rst:494 msgid "" "The current implementation is tested on Linux and macOS. Additional markers " "may be added in the future." msgstr "" #: ../Doc/whatsnew/3.6.rst:497 msgid "" "(Contributed by Łukasz Langa in :issue:`21590`, based on patches by Jesús " "Cea Avión, David Malcolm, and Nikhil Benesch.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:504 msgid "PEP 520: Preserving Class Attribute Definition Order" msgstr "" #: ../Doc/whatsnew/3.6.rst:506 msgid "" "Attributes in a class definition body have a natural ordering: the same " "order in which the names appear in the source. This order is now preserved " "in the new class's ``__dict__`` attribute." msgstr "" #: ../Doc/whatsnew/3.6.rst:510 msgid "" "Also, the effective default class *execution* namespace (returned from " "``type.__prepare__()``) is now an insertion-order-preserving mapping." msgstr "" #: ../Doc/whatsnew/3.6.rst:515 msgid ":pep:`520` -- Preserving Class Attribute Definition Order" msgstr "" #: ../Doc/whatsnew/3.6.rst:522 msgid "PEP 468: Preserving Keyword Argument Order" msgstr "" #: ../Doc/whatsnew/3.6.rst:524 msgid "" "``**kwargs`` in a function signature is now guaranteed to be an insertion-" "order-preserving mapping." msgstr "" #: ../Doc/whatsnew/3.6.rst:529 msgid ":pep:`468` -- Preserving Keyword Argument Order" msgstr "" #: ../Doc/whatsnew/3.6.rst:535 msgid "PEP 509: Add a private version to dict" msgstr "" #: ../Doc/whatsnew/3.6.rst:537 msgid "" "Add a new private version to the builtin ``dict`` type, incremented at each " "dictionary creation and at each dictionary change, to implement fast guards " "on namespaces." msgstr "" #: ../Doc/whatsnew/3.6.rst:541 msgid "(Contributed by Victor Stinner in :issue:`26058`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:549 msgid "" ":func:`dict` now uses a \"compact\" representation `pioneered by PyPy " "`_. The memory usage of the new :func:`dict` is between 20% and 25% " "smaller compared to Python 3.5. :pep:`468` (Preserving the order of " "``**kwargs`` in a function.) is implemented by this. The order-preserving " "aspect of this new implementation is considered an implementation detail and " "should not be relied upon (this may change in the future, but it is desired " "to have this new dict implementation in the language for a few releases " "before changing the language spec to mandate order-preserving semantics for " "all current and future Python implementations; this also helps preserve " "backwards-compatibility with older versions of the language where random " "iteration order is still in effect, e.g. Python 3.5). (Contributed by INADA " "Naoki in :issue:`27350`. Idea `originally suggested by Raymond Hettinger " "`_.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:567 msgid "" "Long sequences of repeated traceback lines are now abbreviated as ``" "\"[Previous line repeated {count} more times]\"`` (see :ref:`py36-traceback` " "for an example). (Contributed by Emanuel Barry in :issue:`26823`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:572 msgid "" "Import now raises the new exception :exc:`ModuleNotFoundError` (subclass of :" "exc:`ImportError`) when it cannot find a module. Code that current checks " "for ImportError (in try-except) will still work." msgstr "" #: ../Doc/whatsnew/3.6.rst:580 ../Doc/whatsnew/3.6.rst:1233 msgid "None yet." msgstr "" #: ../Doc/whatsnew/3.6.rst:593 msgid "" "Since the :mod:`asyncio` module is :term:`provisional `, " "all changes introduced in Python 3.6 have also been backported to Python 3.5." "x." msgstr "" #: ../Doc/whatsnew/3.6.rst:597 msgid "Notable changes in the :mod:`asyncio` module since Python 3.5.0:" msgstr "" #: ../Doc/whatsnew/3.6.rst:632 msgid "" "The :meth:`loop.getaddrinfo() ` method is " "optimized to avoid calling the system ``getaddrinfo`` function if the " "address is already resolved. (Contributed by A. Jesse Jiryu Davis.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:641 msgid "" "The :class:`contextlib.AbstractContextManager` class has been added to " "provide an abstract base class for context managers. It provides a sensible " "default implementation for `__enter__()` which returns ``self`` and leaves " "`__exit__()` an abstract method. A matching class has been added to the :mod:" "`typing` module as :class:`typing.ContextManager`. (Contributed by Brett " "Cannon in :issue:`25609`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:653 msgid "" ":mod:`venv` accepts a new parameter ``--prompt``. This parameter provides an " "alternative prefix for the virtual environment. (Proposed by Łukasz." "Balcerzak and ported to 3.6 by Stéphane Wirtel in :issue:`22829`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:661 msgid "" "The :meth:`datetime.strftime() ` and :meth:`date." "strftime() ` methods now support ISO 8601 date " "directives ``%G``, ``%u`` and ``%V``. (Contributed by Ashley Anderson in :" "issue:`12006`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:668 msgid "distutils.command.sdist" msgstr "" #: ../Doc/whatsnew/3.6.rst:670 msgid "" "The ``default_format`` attribute has been removed from :class:`distutils." "command.sdist.sdist` and the ``formats`` attribute defaults to " "``['gztar']``. Although not anticipated, Any code relying on the presence of " "``default_format`` may need to be adapted. See :issue:`27819` for more " "details." msgstr "" #: ../Doc/whatsnew/3.6.rst:680 msgid "" "The new email API, enabled via the *policy* keyword to various constructors, " "is no longer provisional. The :mod:`email` documentation has been " "reorganized and rewritten to focus on the new API, while retaining the old " "documentation for the legacy API. (Contributed by R. David Murray in :issue:" "`24277`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:685 msgid "" "The :mod:`email.mime` classes now all accept an optional *policy* keyword. " "(Contributed by Berker Peksag in :issue:`27331`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:688 msgid "" "The :class:`~email.generator.DecodedGenerator` now supports the *policy* " "keyword." msgstr "" #: ../Doc/whatsnew/3.6.rst:691 msgid "" "There is a new :mod:`~email.policy` attribute, :attr:`~email.policy.Policy." "message_factory`, that controls what class is used by default when the " "parser creates new message objects. For the :attr:`email.policy.compat32` " "policy this is :class:`~email.message.Message`, for the new policies it is :" "class:`~email.message.EmailMessage`. (Contributed by R. David Murray in :" "issue:`20476`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:700 msgid "encodings" msgstr "" #: ../Doc/whatsnew/3.6.rst:702 msgid "" "On Windows, added the ``'oem'`` encoding to use ``CP_OEMCP`` and the " "``'ansi'`` alias for the existing ``'mbcs'`` encoding, which uses the " "``CP_ACP`` code page." msgstr "" #: ../Doc/whatsnew/3.6.rst:709 msgid "" "On Windows, the :mod:`faulthandler` module now installs a handler for " "Windows exceptions: see :func:`faulthandler.enable`. (Contributed by Victor " "Stinner in :issue:`23848`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:717 msgid "" ":mod:`hashlib` supports OpenSSL 1.1.0. The minimum recommend version is " "1.0.2. It has been tested with 0.9.8zc, 0.9.8zh and 1.0.1t as well as " "LibreSSL 2.3 and 2.4. (Contributed by Christian Heimes in :issue:`26470`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:722 msgid "" "BLAKE2 hash functions were added to the module. :func:`~hashlib.blake2b` " "and :func:`~hashlib.blake2s` are always available and support the full " "feature set of BLAKE2. (Contributed by Christian Heimes in :issue:`26798` " "based on code by Dmitry Chestnykh and Samuel Neves. Documentation written by " "Dmitry Chestnykh.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:728 msgid "" "The SHA-3 hash functions :func:`~hashlib.sha3_224`, :func:`~hashlib." "sha3_256`, :func:`~hashlib.sha3_384`, :func:`~hashlib.sha3_512`, and SHAKE " "hash functions :func:`~hashlib.shake_128` and :func:`~hashlib.shake_256` " "were added. (Contributed by Christian Heimes in :issue:`16113`. Keccak Code " "Package by Guido Bertoni, Joan Daemen, Michaël Peeters, Gilles Van Assche, " "and Ronny Van Keer.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:735 msgid "" "The password-based key derivation function :func:`~hashlib.scrypt` is now " "available with OpenSSL 1.1.0 and newer. (Contributed by Christian Heimes in :" "issue:`27928`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:742 msgid "" ":meth:`HTTPConnection.request() ` and :" "meth:`~http.client.HTTPConnection.endheaders` both now support chunked " "encoding request bodies. (Contributed by Demian Brecht and Rolf Krahl in :" "issue:`12319`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:751 msgid "" "The idlelib package is being modernized and refactored to make IDLE look and " "work better and to make the code easier to understand, test, and improve. " "Part of making IDLE look better, especially on Linux and Mac, is using ttk " "widgets, mostly in the dialogs. As a result, IDLE no longer runs with tcl/" "tk 8.4. It now requires tcl/tk 8.5 or 8.6. We recommend running the latest " "release of either." msgstr "" #: ../Doc/whatsnew/3.6.rst:753 msgid "" "'Modernizing' includes renaming and consolidation of idlelib modules. The " "renaming of files with partial uppercase names is similar to the renaming " "of, for instance, Tkinter and TkFont to tkinter and tkinter.font in 3.0. As " "a result, imports of idlelib files that worked in 3.5 will usually not work " "in 3.6. At least a module name change will be needed (see idlelib/README." "txt), sometimes more. (Name changes contributed by Al Swiegart and Terry " "Reedy in :issue:`24225`. Most idlelib patches since have been and will be " "part of the process.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:755 msgid "" "In compensation, the eventual result with be that some idlelib classes will " "be easier to use, with better APIs and docstrings explaining them. " "Additional useful information will be added to idlelib when available." msgstr "" #: ../Doc/whatsnew/3.6.rst:761 msgid "" ":class:`importlib.util.LazyLoader` now calls :meth:`~importlib.abc.Loader." "create_module` on the wrapped loader, removing the restriction that :class:" "`importlib.machinery.BuiltinImporter` and :class:`importlib.machinery." "ExtensionFileLoader` couldn't be used with :class:`importlib.util." "LazyLoader`." msgstr "" #: ../Doc/whatsnew/3.6.rst:767 msgid "" ":func:`importlib.util.cache_from_source`, :func:`importlib.util." "source_from_cache`, and :func:`importlib.util.spec_from_file_location` now " "accept a :term:`path-like object`." msgstr "" #: ../Doc/whatsnew/3.6.rst:776 msgid "" ":func:`json.load` and :func:`json.loads` now support binary input. Encoded " "JSON should be represented using either UTF-8, UTF-16, or UTF-32. " "(Contributed by Serhiy Storchaka in :issue:`17909`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:784 msgid "" "A new :meth:`~os.scandir.close` method allows explicitly closing a :func:" "`~os.scandir` iterator. The :func:`~os.scandir` iterator now supports the :" "term:`context manager` protocol. If a :func:`scandir` iterator is neither " "exhausted nor explicitly closed a :exc:`ResourceWarning` will be emitted in " "its destructor. (Contributed by Serhiy Storchaka in :issue:`25994`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:791 msgid "" "The Linux ``getrandom()`` syscall (get random bytes) is now exposed as the " "new :func:`os.getrandom` function. (Contributed by Victor Stinner, part of " "the :pep:`524`)" msgstr "" #: ../Doc/whatsnew/3.6.rst:795 msgid "" "See the summary for :ref:`PEP 519 ` for details on how the :mod:" "`os` and :mod:`os.path` modules now support :term:`path-like objects `." msgstr "" #: ../Doc/whatsnew/3.6.rst:803 msgid "" "Objects that need calling ``__new__`` with keyword arguments can now be " "pickled using :ref:`pickle protocols ` older than protocol " "version 4. Protocol version 4 already supports this case. (Contributed by " "Serhiy Storchaka in :issue:`24164`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:812 msgid "" "Added support of modifier spans in regular expressions. Examples: ``'(?i:" "p)ython'`` matches ``'python'`` and ``'Python'``, but not ``'PYTHON'``; ``'(?" "i)g(?-i:v)r'`` matches ``'GvR'`` and ``'gvr'``, but not ``'GVR'``. " "(Contributed by Serhiy Storchaka in :issue:`433028`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:817 msgid "" "Match object groups can be accessed by ``__getitem__``, which is equivalent " "to ``group()``. So ``mo['name']`` is now equivalent to ``mo." "group('name')``. (Contributed by Eric Smith in :issue:`24454`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:825 msgid "" "Added :func:`~readline.set_auto_history` to enable or disable automatic " "addition of input to the history list. (Contributed by Tyler Crompton in :" "issue:`26870`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:831 msgid "rlcompleter" msgstr "" #: ../Doc/whatsnew/3.6.rst:833 msgid "" "Private and special attribute names now are omitted unless the prefix starts " "with underscores. A space or a colon is added after some completed " "keywords. (Contributed by Serhiy Storchaka in :issue:`25011` and :issue:" "`25209`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:837 msgid "" "Names of most attributes listed by :func:`dir` are now completed. " "Previously, names of properties and slots which were not yet created on an " "instance were excluded. (Contributed by Martin Panter in :issue:`25590`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:845 msgid "" "When specifying paths to add to :attr:`sys.path` in a `.pth` file, you may " "now specify file paths on top of directories (e.g. zip files). (Contributed " "by Wolfgang Langner in :issue:`26587`)." msgstr "" #: ../Doc/whatsnew/3.6.rst:853 msgid "" ":attr:`sqlite3.Cursor.lastrowid` now supports the ``REPLACE`` statement. " "(Contributed by Alex LordThorsen in :issue:`16864`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:860 msgid "" "The :func:`~socket.socket.ioctl` function now supports the :data:`~socket." "SIO_LOOPBACK_FAST_PATH` control code. (Contributed by Daniel Stokes in :" "issue:`26536`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:864 msgid "" "The :meth:`~socket.socket.getsockopt` constants ``SO_DOMAIN``, " "``SO_PROTOCOL``, ``SO_PEERSEC``, and ``SO_PASSSEC`` are now supported. " "(Contributed by Christian Heimes in :issue:`26907`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:868 msgid "" "The socket module now supports the address family :data:`~socket.AF_ALG` to " "interface with Linux Kernel crypto API. ``ALG_*``, ``SOL_ALG`` and :meth:" "`~socket.socket.sendmsg_afalg` were added. (Contributed by Christian Heimes " "in :issue:`27744` with support from Victor Stinner.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:877 msgid "" "Servers based on the :mod:`socketserver` module, including those defined in :" "mod:`http.server`, :mod:`xmlrpc.server` and :mod:`wsgiref.simple_server`, " "now support the :term:`context manager` protocol. (Contributed by Aviv " "Palivoda in :issue:`26404`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:883 msgid "" "The :attr:`~socketserver.StreamRequestHandler.wfile` attribute of :class:" "`~socketserver.StreamRequestHandler` classes now implements the :class:`io." "BufferedIOBase` writable interface. In particular, calling :meth:`~io." "BufferedIOBase.write` is now guaranteed to send the data in full. " "(Contributed by Martin Panter in :issue:`26721`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:892 msgid "" ":mod:`ssl` supports OpenSSL 1.1.0. The minimum recommend version is 1.0.2. " "It has been tested with 0.9.8zc, 0.9.8zh and 1.0.1t as well as LibreSSL 2.3 " "and 2.4. (Contributed by Christian Heimes in :issue:`26470`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:897 msgid "" "3DES has been removed from the default cipher suites and ChaCha20 Poly1305 " "cipher suites are now in the right position. (Contributed by Christian " "Heimes in :issue:`27850` and :issue:`27766`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:901 msgid "" ":class:`~ssl.SSLContext` has better default configuration for options and " "ciphers. (Contributed by Christian Heimes in :issue:`28043`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:905 msgid "" "SSL session can be copied from one client-side connection to another with :" "class:`~ssl.SSLSession`. TLS session resumption can speed up the initial " "handshake, reduce latency and improve performance (Contributed by Christian " "Heimes in :issue:`19500` based on a draft by Alex Warhawk.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:911 msgid "" "All constants and flags have been converted to :class:`~enum.IntEnum` and :" "class:`~enum.IntFlags`. (Contributed by Christian Heimes in :issue:`28025`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:915 msgid "" "Server and client-side specific TLS protocols for :class:`~ssl.SSLContext` " "were added. (Contributed by Christian Heimes in :issue:`28085`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:919 msgid "" "General resource ids (``GEN_RID``) in subject alternative name extensions no " "longer case a SystemError. (Contributed by Christian Heimes in :issue:" "`27691`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:926 msgid "" ":class:`subprocess.Popen` destructor now emits a :exc:`ResourceWarning` " "warning if the child process is still running. Use the context manager " "protocol (``with proc: ...``) or call explicitly the :meth:`~subprocess." "Popen.wait` method to read the exit status of the child process (Contributed " "by Victor Stinner in :issue:`26741`)." msgstr "" #: ../Doc/whatsnew/3.6.rst:932 msgid "" "The :class:`subprocess.Popen` constructor and all functions that pass " "arguments through to it now accept *encoding* and *errors* arguments. " "Specifying either of these will enable text mode for the *stdin*, *stdout* " "and *stderr* streams." msgstr "" #: ../Doc/whatsnew/3.6.rst:937 msgid "telnetlib" msgstr "" #: ../Doc/whatsnew/3.6.rst:939 msgid "" ":class:`~telnetlib.Telnet` is now a context manager (contributed by Stéphane " "Wirtel in :issue:`25485`)." msgstr "" #: ../Doc/whatsnew/3.6.rst:946 msgid "" "Added methods :meth:`~tkinter.Variable.trace_add`, :meth:`~tkinter.Variable." "trace_remove` and :meth:`~tkinter.Variable.trace_info` in the :class:" "`tkinter.Variable` class. They replace old methods :meth:`~tkinter.Variable." "trace_variable`, :meth:`~tkinter.Variable.trace`, :meth:`~tkinter.Variable." "trace_vdelete` and :meth:`~tkinter.Variable.trace_vinfo` that use obsolete " "Tcl commands and might not work in future versions of Tcl. (Contributed by " "Serhiy Storchaka in :issue:`22115`)." msgstr "" #: ../Doc/whatsnew/3.6.rst:961 msgid "" "Both the traceback module and the interpreter's builtin exception display " "now abbreviate long sequences of repeated lines in tracebacks as shown in " "the following example::" msgstr "" #: ../Doc/whatsnew/3.6.rst:976 msgid "(Contributed by Emanuel Barry in :issue:`26823`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:982 msgid "" "The :class:`typing.ContextManager` class has been added for representing :" "class:`contextlib.AbstractContextManager`. (Contributed by Brett Cannon in :" "issue:`25609`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:990 msgid "" "The internal database has been upgraded to use Unicode 9.0.0. (Contributed " "by Benjamin Peterson.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:999 msgid "" "Two new methods, :meth:`Mock.assert_called() ` and :meth:`Mock.assert_called_once() ` to check if the mock object was called. (Contributed by " "Amit Saha in :issue:`26323`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:1007 msgid "urllib.request" msgstr "" #: ../Doc/whatsnew/3.6.rst:1009 msgid "" "If a HTTP request has a file or iterable body (other than a bytes object) " "but no Content-Length header, rather than throwing an error, :class:`~urllib." "request.AbstractHTTPHandler` now falls back to use chunked transfer " "encoding. (Contributed by Demian Brecht and Rolf Krahl in :issue:`12319`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:1017 msgid "urllib.robotparser" msgstr "" #: ../Doc/whatsnew/3.6.rst:1019 msgid "" ":class:`~urllib.robotparser.RobotFileParser` now supports the ``Crawl-" "delay`` and ``Request-rate`` extensions. (Contributed by Nikolay Bogoychev " "in :issue:`16099`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:1025 msgid "warnings" msgstr "" #: ../Doc/whatsnew/3.6.rst:1027 msgid "" "A new optional *source* parameter has been added to the :func:`warnings." "warn_explicit` function: the destroyed object which emitted a :exc:" "`ResourceWarning`. A *source* attribute has also been added to :class:" "`warnings.WarningMessage` (contributed by Victor Stinner in :issue:`26568` " "and :issue:`26567`)." msgstr "" #: ../Doc/whatsnew/3.6.rst:1033 msgid "" "When a :exc:`ResourceWarning` warning is logged, the :mod:`tracemalloc` is " "now used to try to retrieve the traceback where the detroyed object was " "allocated." msgstr "" #: ../Doc/whatsnew/3.6.rst:1036 msgid "Example with the script ``example.py``::" msgstr "" #: ../Doc/whatsnew/3.6.rst:1046 msgid "Output of the command ``python3.6 -Wd -X tracemalloc=5 example.py``::" msgstr "" #: ../Doc/whatsnew/3.6.rst:1056 msgid "" "The \"Object allocated at\" traceback is new and only displayed if :mod:" "`tracemalloc` is tracing Python memory allocations and if the :mod:" "`warnings` was already imported." msgstr "" #: ../Doc/whatsnew/3.6.rst:1064 msgid "" "Added the 64-bit integer type :data:`REG_QWORD `. " "(Contributed by Clement Rouault in :issue:`23026`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:1069 msgid "winsound" msgstr "" #: ../Doc/whatsnew/3.6.rst:1071 msgid "" "Allowed keyword arguments to be passed to :func:`Beep `, :" "func:`MessageBeep `, and :func:`PlaySound ` (:issue:`27982`)." msgstr "" #: ../Doc/whatsnew/3.6.rst:1077 msgid "xmlrpc.client" msgstr "" #: ../Doc/whatsnew/3.6.rst:1079 msgid "" "The module now supports unmarshalling additional data types used by Apache " "XML-RPC implementation for numerics and ``None``. (Contributed by Serhiy " "Storchaka in :issue:`26885`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:1087 msgid "" "A new :meth:`ZipInfo.from_file() ` class method " "allows making a :class:`~zipfile.ZipInfo` instance from a filesystem file. A " "new :meth:`ZipInfo.is_dir() ` method can be used to " "check if the :class:`~zipfile.ZipInfo` instance represents a directory. " "(Contributed by Thomas Kluyver in :issue:`26039`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:1093 msgid "" "The :meth:`ZipFile.open() ` method can now be used to " "write data into a ZIP file, as well as for extracting data. (Contributed by " "Thomas Kluyver in :issue:`26039`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:1101 msgid "" "The :func:`~zlib.compress` function now accepts keyword arguments. " "(Contributed by Aviv Palivoda in :issue:`26243`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:1106 msgid "fileinput" msgstr "" #: ../Doc/whatsnew/3.6.rst:1108 msgid "" ":func:`~fileinput.hook_encoded` now supports the *errors* argument. " "(Contributed by Joseph Hackman in :issue:`25788`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:1115 msgid "" "The ASCII decoder is now up to 60 times as fast for error handlers " "``surrogateescape``, ``ignore`` and ``replace`` (Contributed by Victor " "Stinner in :issue:`24870`)." msgstr "" #: ../Doc/whatsnew/3.6.rst:1119 msgid "" "The ASCII and the Latin1 encoders are now up to 3 times as fast for the " "error handler ``surrogateescape`` (Contributed by Victor Stinner in :issue:" "`25227`)." msgstr "" #: ../Doc/whatsnew/3.6.rst:1122 msgid "" "The UTF-8 encoder is now up to 75 times as fast for error handlers " "``ignore``, ``replace``, ``surrogateescape``, ``surrogatepass`` (Contributed " "by Victor Stinner in :issue:`25267`)." msgstr "" #: ../Doc/whatsnew/3.6.rst:1126 msgid "" "The UTF-8 decoder is now up to 15 times as fast for error handlers " "``ignore``, ``replace`` and ``surrogateescape`` (Contributed by Victor " "Stinner in :issue:`25301`)." msgstr "" #: ../Doc/whatsnew/3.6.rst:1130 msgid "" "``bytes % args`` is now up to 2 times faster. (Contributed by Victor Stinner " "in :issue:`25349`)." msgstr "" #: ../Doc/whatsnew/3.6.rst:1133 msgid "" "``bytearray % args`` is now between 2.5 and 5 times faster. (Contributed by " "Victor Stinner in :issue:`25399`)." msgstr "" #: ../Doc/whatsnew/3.6.rst:1136 msgid "" "Optimize :meth:`bytes.fromhex` and :meth:`bytearray.fromhex`: they are now " "between 2x and 3.5x faster. (Contributed by Victor Stinner in :issue:" "`25401`)." msgstr "" #: ../Doc/whatsnew/3.6.rst:1139 msgid "" "Optimize ``bytes.replace(b'', b'.')`` and ``bytearray.replace(b'', b'.')``: " "up to 80% faster. (Contributed by Josh Snider in :issue:`26574`)." msgstr "" #: ../Doc/whatsnew/3.6.rst:1142 msgid "" "Allocator functions of the :c:func:`PyMem_Malloc` domain (:c:data:" "`PYMEM_DOMAIN_MEM`) now use the :ref:`pymalloc memory allocator ` " "instead of :c:func:`malloc` function of the C library. The pymalloc " "allocator is optimized for objects smaller or equal to 512 bytes with a " "short lifetime, and use :c:func:`malloc` for larger memory blocks. " "(Contributed by Victor Stinner in :issue:`26249`)." msgstr "" #: ../Doc/whatsnew/3.6.rst:1149 msgid "" ":func:`pickle.load` and :func:`pickle.loads` are now up to 10% faster when " "deserializing many small objects (Contributed by Victor Stinner in :issue:" "`27056`)." msgstr "" #: ../Doc/whatsnew/3.6.rst:1153 msgid "" "Passing :term:`keyword arguments ` to a function has an " "overhead in comparison with passing :term:`positional arguments `. Now in extension functions implemented with using Argument " "Clinic this overhead is significantly decreased. (Contributed by Serhiy " "Storchaka in :issue:`27574`)." msgstr "" #: ../Doc/whatsnew/3.6.rst:1159 msgid "" "Optimized :func:`~glob.glob` and :func:`~glob.iglob` functions in the :mod:" "`glob` module; they are now about 3--6 times faster. (Contributed by Serhiy " "Storchaka in :issue:`25596`)." msgstr "" #: ../Doc/whatsnew/3.6.rst:1163 msgid "" "Optimized globbing in :mod:`pathlib` by using :func:`os.scandir`; it is now " "about 1.5--4 times faster. (Contributed by Serhiy Storchaka in :issue:" "`26032`)." msgstr "" #: ../Doc/whatsnew/3.6.rst:1170 msgid "" "Python now requires some C99 support in the toolchain to build. For more " "information, see :pep:`7`." msgstr "" #: ../Doc/whatsnew/3.6.rst:1173 msgid "" "Cross-compiling CPython with the Android NDK and the Android API level set " "to 21 (Android 5.0 Lollilop) or greater, runs successfully. While Android is " "not yet a supported platform, the Python test suite runs on the Android " "emulator with only about 16 tests failures. See the Android meta-issue :" "issue:`26865`." msgstr "" #: ../Doc/whatsnew/3.6.rst:1178 msgid "" "The ``--with-optimizations`` configure flag has been added. Turning it on " "will activate LTO and PGO build support (when available). (Original patch by " "Alecsandru Patrascu of Intel in :issue:`26539`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:1182 msgid "" "New :c:func:`Py_FinalizeEx` API which indicates if flushing buffered data " "failed (:issue:`5319`)." msgstr "" #: ../Doc/whatsnew/3.6.rst:1185 msgid "" ":c:func:`PyArg_ParseTupleAndKeywords` now supports :ref:`positional-only " "parameters `. Positional-only parameters are " "defined by empty names. (Contributed by Serhiy Storchaka in :issue:`26282`)." msgstr "" #: ../Doc/whatsnew/3.6.rst:1190 msgid "" "``PyTraceback_Print`` method now abbreviates long sequences of repeated " "lines as ``\"[Previous line repeated {count} more times]\"``. (Contributed " "by Emanuel Barry in :issue:`26823`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:1199 msgid "Deprecated Build Options" msgstr "" #: ../Doc/whatsnew/3.6.rst:1201 msgid "" "The ``--with-system-ffi`` configure flag is now on by default on non-OSX " "UNIX platforms. It may be disabled by using ``--without-system-ffi``, but " "using the flag is deprecated and will not be accepted in Python 3.7. OSX is " "unaffected by this change. Note that many OS distributors already use the " "``--with-system-ffi`` flag when building their system Python." msgstr "" #: ../Doc/whatsnew/3.6.rst:1219 msgid "" ":meth:`importlib.machinery.SourceFileLoader.load_module` and :meth:" "`importlib.machinery.SourcelessFileLoader.load_module` are now deprecated. " "They were the only remaining implementations of :meth:`importlib.abc.Loader." "load_module` in :mod:`importlib` that had not been deprecated in previous " "versions of Python in favour of :meth:`importlib.abc.Loader.exec_module`." msgstr "" #: ../Doc/whatsnew/3.6.rst:1226 msgid "" "The :mod:`tkinter.tix` module is now deprecated. :mod:`tkinter` users " "should use :mod:`tkinter.ttk` instead." msgstr "" #: ../Doc/whatsnew/3.6.rst:1239 msgid "" "The ``pyvenv`` script has been deprecated in favour of ``python3 -m venv``. " "This prevents confusion as to what Python interpreter ``pyvenv`` is " "connected to and thus what Python interpreter will be used by the virtual " "environment. (Contributed by Brett Cannon in :issue:`25154`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:1244 msgid "" "When performing a relative import, falling back on ``__name__`` and " "``__path__`` from the calling module when ``__spec__`` or ``__package__`` " "are not defined now raises an :exc:`ImportWarning`. (Contributed by Rose " "Ames in :issue:`25791`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:1249 msgid "" "Unlike to other :mod:`dbm` implementations, the :mod:`dbm.dumb` module " "creates database in ``'r'`` and ``'w'`` modes if it doesn't exist and allows " "modifying database in ``'r'`` mode. This behavior is now deprecated and " "will be removed in 3.8. (Contributed by Serhiy Storchaka in :issue:`21708`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:1255 msgid "" "Undocumented support of general :term:`bytes-like objects ` as paths in :mod:`os` functions, :func:`compile` and similar " "functions is now deprecated. (Contributed by Serhiy Storchaka in :issue:" "`25791` and :issue:`26754`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:1260 msgid "" "The undocumented ``extra_path`` argument to a distutils Distribution is now " "considered deprecated, will raise a warning during install if set. Support " "for this parameter will be dropped in a future Python release and likely " "earlier through third party tools. See :issue:`27919` for details." msgstr "" #: ../Doc/whatsnew/3.6.rst:1266 msgid "" "A backslash-character pair that is not a valid escape sequence now generates " "a DeprecationWarning. Although this will eventually become a SyntaxError, " "that will not be for several Python releases. (Contributed by Emanuel Barry " "in :issue:`27364`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:1271 msgid "" "Inline flags ``(?letters)`` now should be used only at the start of the " "regular expression. Inline flags in the middle of the regular expression " "affects global flags in Python :mod:`re` module. This is an exception to " "other regular expression engines that either apply flags to only part of the " "regular expression or treat them as an error. To avoid distinguishing " "inline flags in the middle of the regular expression now emit a deprecation " "warning. It will be an error in future Python releases. (Contributed by " "Serhiy Storchaka in :issue:`22493`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:1280 msgid "" "SSL-related arguments like ``certfile``, ``keyfile`` and ``check_hostname`` " "in :mod:`ftplib`, :mod:`http.client`, :mod:`imaplib`, :mod:`poplib`, and :" "mod:`smtplib` have been deprecated in favor of ``context``. (Contributed by " "Christian Heimes in :issue:`28022`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:1285 msgid "" "A couple of protocols and functions of the :mod:`ssl` module are now " "deprecated. Some features will no longer be available in future versions of " "OpenSSL. Other features are deprecated in favor of a different API. " "(Contributed by Christian Heimes in :issue:`28022` and :issue:`26470`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:1292 msgid "Deprecated Python behavior" msgstr "" #: ../Doc/whatsnew/3.6.rst:1294 msgid "" "Raising the :exc:`StopIteration` exception inside a generator will now " "generate a :exc:`DeprecationWarning`, and will trigger a :exc:`RuntimeError` " "in Python 3.7. See :ref:`whatsnew-pep-479` for details." msgstr "" #: ../Doc/whatsnew/3.6.rst:1305 msgid "" "``inspect.getmoduleinfo()`` was removed (was deprecated since CPython 3.3). :" "func:`inspect.getmodulename` should be used for obtaining the module name " "for a given path." msgstr "" #: ../Doc/whatsnew/3.6.rst:1309 msgid "" "``traceback.Ignore`` class and ``traceback.usage``, ``traceback.modname``, " "``traceback.fullmodname``, ``traceback.find_lines_from_code``, ``traceback." "find_lines``, ``traceback.find_strings``, ``traceback." "find_executable_lines`` methods were removed from the :mod:`traceback` " "module. They were undocumented methods deprecated since Python 3.2 and " "equivalent functionality is available from private methods." msgstr "" #: ../Doc/whatsnew/3.6.rst:1316 msgid "" "The ``tk_menuBar()`` and ``tk_bindForTraversal()`` dummy methods in :mod:" "`tkinter` widget classes were removed (corresponding Tk commands were " "obsolete since Tk 4.0)." msgstr "" #: ../Doc/whatsnew/3.6.rst:1320 msgid "" "The :meth:`~zipfile.ZipFile.open` method of the :class:`zipfile.ZipFile` " "class no longer supports the ``'U'`` mode (was deprecated since Python 3.4). " "Use :class:`io.TextIOWrapper` for reading compressed text files in :term:" "`universal newlines` mode." msgstr "" #: ../Doc/whatsnew/3.6.rst:1325 msgid "" "The undocumented ``IN``, ``CDROM``, ``DLFCN``, ``TYPES``, ``CDIO``, and " "``STROPTS`` modules have been removed. They had been available in the " "platform specific ``Lib/plat-*/`` directories, but were chronically out of " "date, inconsistently available across platforms, and unmaintained. The " "script that created these modules is still available in the source " "distribution at :source:`Tools/scripts/h2py.py`." msgstr "" #: ../Doc/whatsnew/3.6.rst:1334 msgid "Porting to Python 3.6" msgstr "" #: ../Doc/whatsnew/3.6.rst:1342 msgid "" "The output of a special Python build with defined ``COUNT_ALLOCS``, " "``SHOW_ALLOC_COUNT`` or ``SHOW_TRACK_COUNT`` macros is now off by default. " "It can be re-enabled using the ``-X showalloccount`` option. It now outputs " "to ``stderr`` instead of ``stdout``. (Contributed by Serhiy Storchaka in :" "issue:`23034`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:1352 msgid "" ":mod:`sqlite3` no longer implicitly commit an open transaction before DDL " "statements." msgstr "" #: ../Doc/whatsnew/3.6.rst:1355 msgid "" "On Linux, :func:`os.urandom` now blocks until the system urandom entropy " "pool is initialized to increase the security." msgstr "" #: ../Doc/whatsnew/3.6.rst:1358 msgid "" "When :meth:`importlib.abc.Loader.exec_module` is defined, :meth:`importlib." "abc.Loader.create_module` must also be defined." msgstr "" #: ../Doc/whatsnew/3.6.rst:1361 msgid "" ":c:func:`PyErr_SetImportError` now sets :exc:`TypeError` when its **msg** " "argument is not set. Previously only ``NULL`` was returned." msgstr "" #: ../Doc/whatsnew/3.6.rst:1364 msgid "" "The format of the ``co_lnotab`` attribute of code objects changed to support " "negative line number delta. By default, Python does not emit bytecode with " "negative line number delta. Functions using ``frame.f_lineno``, " "``PyFrame_GetLineNumber()`` or ``PyCode_Addr2Line()`` are not affected. " "Functions decoding directly ``co_lnotab`` should be updated to use a signed " "8-bit integer type for the line number delta, but it's only required to " "support applications using negative line number delta. See ``Objects/" "lnotab_notes.txt`` for the ``co_lnotab`` format and how to decode it, and " "see the :pep:`511` for the rationale." msgstr "" #: ../Doc/whatsnew/3.6.rst:1374 msgid "" "The functions in the :mod:`compileall` module now return booleans instead of " "``1`` or ``0`` to represent success or failure, respectively. Thanks to " "booleans being a subclass of integers, this should only be an issue if you " "were doing identity checks for ``1`` or ``0``. See :issue:`25768`." msgstr "" #: ../Doc/whatsnew/3.6.rst:1379 msgid "" "Reading the :attr:`~urllib.parse.SplitResult.port` attribute of :func:" "`urllib.parse.urlsplit` and :func:`~urllib.parse.urlparse` results now " "raises :exc:`ValueError` for out-of-range values, rather than returning :" "const:`None`. See :issue:`20059`." msgstr "" #: ../Doc/whatsnew/3.6.rst:1384 msgid "" "The :mod:`imp` module now raises a :exc:`DeprecationWarning` instead of :exc:" "`PendingDeprecationWarning`." msgstr "" #: ../Doc/whatsnew/3.6.rst:1387 msgid "" "The following modules have had missing APIs added to their :attr:`__all__` " "attributes to match the documented APIs: :mod:`calendar`, :mod:`cgi`, :mod:" "`csv`, :mod:`~xml.etree.ElementTree`, :mod:`enum`, :mod:`fileinput`, :mod:" "`ftplib`, :mod:`logging`, :mod:`mailbox`, :mod:`mimetypes`, :mod:" "`optparse`, :mod:`plistlib`, :mod:`smtpd`, :mod:`subprocess`, :mod:" "`tarfile`, :mod:`threading` and :mod:`wave`. This means they will export " "new symbols when ``import *`` is used. See :issue:`23883`." msgstr "" #: ../Doc/whatsnew/3.6.rst:1397 msgid "" "When performing a relative import, if ``__package__`` does not compare equal " "to ``__spec__.parent`` then :exc:`ImportWarning` is raised. (Contributed by " "Brett Cannon in :issue:`25791`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:1401 msgid "" "When a relative import is performed and no parent package is known, then :" "exc:`ImportError` will be raised. Previously, :exc:`SystemError` could be " "raised. (Contributed by Brett Cannon in :issue:`18018`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:1405 msgid "" "Servers based on the :mod:`socketserver` module, including those defined in :" "mod:`http.server`, :mod:`xmlrpc.server` and :mod:`wsgiref.simple_server`, " "now only catch exceptions derived from :exc:`Exception`. Therefore if a " "request handler raises an exception like :exc:`SystemExit` or :exc:" "`KeyboardInterrupt`, :meth:`~socketserver.BaseServer.handle_error` is no " "longer called, and the exception will stop a single-threaded server. " "(Contributed by Martin Panter in :issue:`23430`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:1414 msgid "" ":func:`spwd.getspnam` now raises a :exc:`PermissionError` instead of :exc:" "`KeyError` if the user doesn't have privileges." msgstr "" #: ../Doc/whatsnew/3.6.rst:1417 msgid "" "The :meth:`socket.socket.close` method now raises an exception if an error " "(e.g. EBADF) was reported by the underlying system call. See :issue:`26685`." msgstr "" #: ../Doc/whatsnew/3.6.rst:1421 msgid "" "The *decode_data* argument for :class:`smtpd.SMTPChannel` and :class:`smtpd." "SMTPServer` constructors is now ``False`` by default. This means that the " "argument passed to :meth:`~smtpd.SMTPServer.process_message` is now a bytes " "object by default, and ``process_message()`` will be passed keyword " "arguments. Code that has already been updated in accordance with the " "deprecation warning generated by 3.5 will not be affected." msgstr "" #: ../Doc/whatsnew/3.6.rst:1429 msgid "" "All optional parameters of the :func:`~json.dump`, :func:`~json.dumps`, :" "func:`~json.load` and :func:`~json.loads` functions and :class:`~json." "JSONEncoder` and :class:`~json.JSONDecoder` class constructors in the :mod:" "`json` module are now :ref:`keyword-only `. " "(Contributed by Serhiy Storchaka in :issue:`18726`.)" msgstr "" #: ../Doc/whatsnew/3.6.rst:1436 msgid "" "As part of :pep:`487`, the handling of keyword arguments passed to :class:" "`type` (other than the metaclass hint, ``metaclass``) is now consistently " "delegated to :meth:`object.__init_subclass__`. This means that :meth:`type." "__new__` and :meth:`type.__init__` both now accept arbitrary keyword " "arguments, but :meth:`object.__init_subclass__` (which is called from :meth:" "`type.__new__`) will reject them by default. Custom metaclasses accepting " "additional keyword arguments will need to adjust their calls to :meth:`type." "__new__` (whether direct or via :class:`super`) accordingly." msgstr "" #: ../Doc/whatsnew/3.6.rst:1445 msgid "" "In :class:`distutils.command.sdist.sdist`, the ``default_format`` attribute " "has been removed and is no longer honored. Instead, the gzipped tarfile " "format is the default on all platforms and no platform-specific selection is " "made. In environments where distributions are built on Windows and zip " "distributions are required, configure the project with a ``setup.cfg`` file " "containing the following::" msgstr "" #: ../Doc/whatsnew/3.6.rst:1456 msgid "" "This behavior has also been backported to earlier Python versions by " "Setuptools 26.0.0." msgstr "" #: ../Doc/whatsnew/3.6.rst:1459 msgid "" "In the :mod:`urllib.request` module and the :meth:`http.client." "HTTPConnection.request` method, if no Content-Length header field has been " "specified and the request body is a file object, it is now sent with HTTP " "1.1 chunked encoding. If a file object has to be sent to a HTTP 1.0 server, " "the Content-Length value now has to be specified by the caller. See :issue:" "`12319`." msgstr "" #: ../Doc/whatsnew/3.6.rst:1469 msgid "" ":c:func:`PyMem_Malloc` allocator family now uses the :ref:`pymalloc " "allocator ` rather than system :c:func:`malloc`. Applications " "calling :c:func:`PyMem_Malloc` without holding the GIL can now crash. Set " "the :envvar:`PYTHONMALLOC` environment variable to ``debug`` to validate the " "usage of memory allocators in your application. See :issue:`26249`." msgstr "" #: ../Doc/whatsnew/3.6.rst:1475 msgid "" ":c:func:`Py_Exit` (and the main interpreter) now override the exit status " "with 120 if flushing buffered data failed. See :issue:`5319`." msgstr "" #: ../Doc/whatsnew/changelog.rst:5 msgid "Changelog" msgstr "Changements" #: ../../../Misc/NEWS:5 msgid "Python 3.6.0 beta 3" msgstr "" #: ../../../Misc/NEWS:7 msgid "*Release date: XXXX-XX-XX*" msgstr "" #: ../../../Misc/NEWS:10 ../../../Misc/NEWS:39 ../../../Misc/NEWS:304 #: ../../../Misc/NEWS:803 ../../../Misc/NEWS:1040 ../../../Misc/NEWS:1248 #: ../../../Misc/NEWS:1543 ../../../Misc/NEWS:2828 ../../../Misc/NEWS:2846 #: ../../../Misc/NEWS:3363 ../../../Misc/NEWS:3398 ../../../Misc/NEWS:3426 #: ../../../Misc/NEWS:3517 ../../../Misc/NEWS:3600 ../../../Misc/NEWS:3705 #: ../../../Misc/NEWS:3747 ../../../Misc/NEWS:4023 ../../../Misc/NEWS:4254 #: ../../../Misc/NEWS:4440 ../../../Misc/NEWS:4580 ../../../Misc/NEWS:6419 #: ../../../Misc/NEWS:6456 ../../../Misc/NEWS:6535 ../../../Misc/NEWS:6798 #: ../../../Misc/NEWS:7038 ../../../Misc/NEWS:7414 ../../../Misc/NEWS:7888 #: ../../../Misc/NEWS:8118 ../../../Misc/NEWS:8239 ../../../Misc/NEWS:8508 msgid "Core and Builtins" msgstr "" #: ../../../Misc/NEWS:13 ../../../Misc/NEWS:108 ../../../Misc/NEWS:439 #: ../../../Misc/NEWS:848 ../../../Misc/NEWS:1057 ../../../Misc/NEWS:1288 #: ../../../Misc/NEWS:1827 ../../../Misc/NEWS:2912 ../../../Misc/NEWS:3346 #: ../../../Misc/NEWS:3373 ../../../Misc/NEWS:3411 ../../../Misc/NEWS:3431 #: ../../../Misc/NEWS:3538 ../../../Misc/NEWS:3627 ../../../Misc/NEWS:3723 #: ../../../Misc/NEWS:3800 ../../../Misc/NEWS:4055 ../../../Misc/NEWS:4274 #: ../../../Misc/NEWS:4447 ../../../Misc/NEWS:4807 ../../../Misc/NEWS:6402 #: ../../../Misc/NEWS:6425 ../../../Misc/NEWS:6472 ../../../Misc/NEWS:6562 #: ../../../Misc/NEWS:6819 ../../../Misc/NEWS:7083 ../../../Misc/NEWS:7475 #: ../../../Misc/NEWS:7940 ../../../Misc/NEWS:8126 ../../../Misc/NEWS:8285 #: ../../../Misc/NEWS:8925 msgid "Library" msgstr "Bibliothèque" #: ../../../Misc/NEWS:15 msgid "" "`Issue #24452 `__: Make webbrowser support " "Chrome on Mac OS X." msgstr "" "`Issue #24452 `__: Make webbrowser support " "Chrome on Mac OS X." #: ../../../Misc/NEWS:17 msgid "" "`Issue #20766 `__: Fix references leaked by " "pdb in the handling of SIGINT handlers." msgstr "" "`Issue #20766 `__: Fix references leaked by " "pdb in the handling of SIGINT handlers." #: ../../../Misc/NEWS:21 ../../../Misc/NEWS:282 ../../../Misc/NEWS:726 #: ../../../Misc/NEWS:1012 ../../../Misc/NEWS:1196 ../../../Misc/NEWS:1508 #: ../../../Misc/NEWS:2708 ../../../Misc/NEWS:3274 ../../../Misc/NEWS:3334 #: ../../../Misc/NEWS:3351 ../../../Misc/NEWS:3589 ../../../Misc/NEWS:3693 #: ../../../Misc/NEWS:4203 ../../../Misc/NEWS:4415 ../../../Misc/NEWS:4551 #: ../../../Misc/NEWS:6075 ../../../Misc/NEWS:6432 ../../../Misc/NEWS:6517 #: ../../../Misc/NEWS:6770 ../../../Misc/NEWS:7026 ../../../Misc/NEWS:7364 #: ../../../Misc/NEWS:7820 ../../../Misc/NEWS:8094 ../../../Misc/NEWS:8220 #: ../../../Misc/NEWS:8485 ../../../Misc/NEWS:10398 msgid "Build" msgstr "Build" #: ../../../Misc/NEWS:23 msgid "" "`Issue #28208 `__: Update Windows build to " "use SQLite 3.14.2.0." msgstr "" "`Issue #28208 `__: Update Windows build to " "use SQLite 3.14.2.0." #: ../../../Misc/NEWS:25 msgid "" "`Issue #28248 `__: Update Windows build to " "use OpenSSL 1.0.2j." msgstr "" "`Issue #28248 `__: Update Windows build to " "use OpenSSL 1.0.2j." #: ../../../Misc/NEWS:28 ../../../Misc/NEWS:293 ../../../Misc/NEWS:712 #: ../../../Misc/NEWS:985 ../../../Misc/NEWS:1236 ../../../Misc/NEWS:1491 #: ../../../Misc/NEWS:2665 ../../../Misc/NEWS:3261 ../../../Misc/NEWS:3504 #: ../../../Misc/NEWS:3677 ../../../Misc/NEWS:3985 ../../../Misc/NEWS:4211 #: ../../../Misc/NEWS:4420 ../../../Misc/NEWS:6224 ../../../Misc/NEWS:6726 #: ../../../Misc/NEWS:6925 ../../../Misc/NEWS:7328 ../../../Misc/NEWS:7788 #: ../../../Misc/NEWS:8075 ../../../Misc/NEWS:8199 ../../../Misc/NEWS:8452 #: ../../../Misc/NEWS:10177 msgid "Tests" msgstr "Tests" #: ../../../Misc/NEWS:30 msgid "" "`Issue #28409 `__: regrtest: fix the parser " "of command line arguments." msgstr "" "`Issue #28409 `__: regrtest: fix the parser " "of command line arguments." #: ../../../Misc/NEWS:34 msgid "Python 3.6.0 beta 2" msgstr "" #: ../../../Misc/NEWS:36 msgid "*Release date: 2016-10-10*" msgstr "" #: ../../../Misc/NEWS:41 msgid "" "`Issue #28183 `__: Optimize and cleanup dict " "iteration." msgstr "" "`Issue #28183 `__: Optimize and cleanup dict " "iteration." #: ../../../Misc/NEWS:43 msgid "" "`Issue #26081 `__: Added C implementation of " "asyncio.Future. Original patch by Yury Selivanov." msgstr "" "`Issue #26081 `__: Added C implementation of " "asyncio.Future. Original patch by Yury Selivanov." #: ../../../Misc/NEWS:46 msgid "" "`Issue #28379 `__: Added sanity checks and " "tests for PyUnicode_CopyCharacters(). Patch by Xiang Zhang." msgstr "" "`Issue #28379 `__: Added sanity checks and " "tests for PyUnicode_CopyCharacters(). Patch by Xiang Zhang." #: ../../../Misc/NEWS:49 msgid "" "`Issue #28376 `__: The type of long range " "iterator is now registered as Iterator. Patch by Oren Milman." msgstr "" "`Issue #28376 `__: The type of long range " "iterator is now registered as Iterator. Patch by Oren Milman." #: ../../../Misc/NEWS:52 msgid "" "`Issue #28376 `__: Creating instances of " "range_iterator by calling range_iterator type now is deprecated. Patch by " "Oren Milman." msgstr "" "`Issue #28376 `__: Creating instances of " "range_iterator by calling range_iterator type now is deprecated. Patch by " "Oren Milman." #: ../../../Misc/NEWS:55 msgid "" "`Issue #28376 `__: The constructor of " "range_iterator now checks that step is not 0. Patch by Oren Milman." msgstr "" "`Issue #28376 `__: The constructor of " "range_iterator now checks that step is not 0. Patch by Oren Milman." #: ../../../Misc/NEWS:58 msgid "" "`Issue #26906 `__: Resolving special methods " "of uninitialized type now causes implicit initialization of the type instead " "of a fail." msgstr "" "`Issue #26906 `__: Resolving special methods " "of uninitialized type now causes implicit initialization of the type instead " "of a fail." #: ../../../Misc/NEWS:61 msgid "" "`Issue #18287 `__: PyType_Ready() now checks " "that tp_name is not NULL. Original patch by Niklas Koep." msgstr "" "`Issue #18287 `__: PyType_Ready() now checks " "that tp_name is not NULL. Original patch by Niklas Koep." #: ../../../Misc/NEWS:64 msgid "" "`Issue #24098 `__: Fixed possible crash when " "AST is changed in process of compiling it." msgstr "" "`Issue #24098 `__: Fixed possible crash when " "AST is changed in process of compiling it." #: ../../../Misc/NEWS:67 msgid "" "`Issue #28201 `__: Dict reduces possibility " "of 2nd conflict in hash table when hashes have same lower bits." msgstr "" "`Issue #28201 `__: Dict reduces possibility " "of 2nd conflict in hash table when hashes have same lower bits." #: ../../../Misc/NEWS:70 msgid "" "`Issue #28350 `__: String constants with null " "character no longer interned." msgstr "" "`Issue #28350 `__: String constants with null " "character no longer interned." #: ../../../Misc/NEWS:72 msgid "" "`Issue #26617 `__: Fix crash when GC runs " "during weakref callbacks." msgstr "" "`Issue #26617 `__: Fix crash when GC runs " "during weakref callbacks." #: ../../../Misc/NEWS:74 msgid "" "`Issue #27942 `__: String constants now " "interned recursively in tuples and frozensets." msgstr "" "`Issue #27942 `__: String constants now " "interned recursively in tuples and frozensets." #: ../../../Misc/NEWS:76 msgid "" "`Issue #21578 `__: Fixed misleading error " "message when ImportError called with invalid keyword args." msgstr "" "`Issue #21578 `__: Fixed misleading error " "message when ImportError called with invalid keyword args." #: ../../../Misc/NEWS:79 msgid "" "`Issue #28203 `__: Fix incorrect type in " "complex(1.0, {2:3}) error message. Patch by Soumya Sharma." msgstr "" "`Issue #28203 `__: Fix incorrect type in " "complex(1.0, {2:3}) error message. Patch by Soumya Sharma." #: ../../../Misc/NEWS:82 msgid "" "`Issue #28086 `__: Single var-positional " "argument of tuple subtype was passed unscathed to the C-defined function. " "Now it is converted to exact tuple." msgstr "" "`Issue #28086 `__: Single var-positional " "argument of tuple subtype was passed unscathed to the C-defined function. " "Now it is converted to exact tuple." #: ../../../Misc/NEWS:85 msgid "" "`Issue #28214 `__: Now __set_name__ is looked " "up on the class instead of the instance." msgstr "" "`Issue #28214 `__: Now __set_name__ is looked " "up on the class instead of the instance." #: ../../../Misc/NEWS:88 msgid "" "`Issue #27955 `__: Fallback on reading /dev/" "urandom device when the getrandom() syscall fails with EPERM, for example " "when blocked by SECCOMP." msgstr "" "`Issue #27955 `__: Fallback on reading /dev/" "urandom device when the getrandom() syscall fails with EPERM, for example " "when blocked by SECCOMP." #: ../../../Misc/NEWS:91 msgid "" "`Issue #28192 `__: Don't import readline in " "isolated mode." msgstr "" "`Issue #28192 `__: Don't import readline in " "isolated mode." #: ../../../Misc/NEWS:93 msgid "Upgrade internal unicode databases to Unicode version 9.0.0." msgstr "" #: ../../../Misc/NEWS:95 msgid "" "`Issue #28131 `__: Fix a regression in " "zipimport's compile_source(). zipimport should use the same optimization " "level as the interpreter." msgstr "" "`Issue #28131 `__: Fix a regression in " "zipimport's compile_source(). zipimport should use the same optimization " "level as the interpreter." #: ../../../Misc/NEWS:98 msgid "" "`Issue #28126 `__: Replace Py_MEMCPY with " "memcpy(). Visual Studio can properly optimize memcpy()." msgstr "" "`Issue #28126 `__: Replace Py_MEMCPY with " "memcpy(). Visual Studio can properly optimize memcpy()." #: ../../../Misc/NEWS:101 msgid "" "`Issue #28120 `__: Fix dict.pop() for " "splitted dictionary when trying to remove a \"pending key\" (Not yet " "inserted in split-table). Patch by Xiang Zhang." msgstr "" "`Issue #28120 `__: Fix dict.pop() for " "splitted dictionary when trying to remove a \"pending key\" (Not yet " "inserted in split-table). Patch by Xiang Zhang." #: ../../../Misc/NEWS:104 msgid "" "`Issue #26182 `__: Raise DeprecationWarning " "when async and await keywords are used as variable/attribute/class/function " "name." msgstr "" "`Issue #26182 `__: Raise DeprecationWarning " "when async and await keywords are used as variable/attribute/class/function " "name." #: ../../../Misc/NEWS:110 msgid "" "`Issue #27998 `__: Fixed bytes path support " "in os.scandir() on Windows. Patch by Eryk Sun." msgstr "" "`Issue #27998 `__: Fixed bytes path support " "in os.scandir() on Windows. Patch by Eryk Sun." #: ../../../Misc/NEWS:113 msgid "" "`Issue #28317 `__: The disassembler now " "decodes FORMAT_VALUE argument." msgstr "" "`Issue #28317 `__: The disassembler now " "decodes FORMAT_VALUE argument." #: ../../../Misc/NEWS:115 msgid "" "`Issue #26293 `__: Fixed writing ZIP files " "that starts not from the start of the file. Offsets in ZIP file now are " "relative to the start of the archive in conforming to the specification." msgstr "" "`Issue #26293 `__: Fixed writing ZIP files " "that starts not from the start of the file. Offsets in ZIP file now are " "relative to the start of the archive in conforming to the specification." #: ../../../Misc/NEWS:119 msgid "" "`Issue #28380 `__: unittest.mock Mock " "autospec functions now properly support assert_called, assert_not_called, " "and assert_called_once." msgstr "" "`Issue #28380 `__: unittest.mock Mock " "autospec functions now properly support assert_called, assert_not_called, " "and assert_called_once." #: ../../../Misc/NEWS:122 msgid "" "`Issue #27181 `__ remove statistics." "geometric_mean and defer until 3.7." msgstr "" "`Issue #27181 `__ remove statistics." "geometric_mean and defer until 3.7." #: ../../../Misc/NEWS:124 msgid "" "`Issue #28229 `__: lzma module now supports " "pathlib." msgstr "" "`Issue #28229 `__: lzma module now supports " "pathlib." #: ../../../Misc/NEWS:126 msgid "" "`Issue #28321 `__: Fixed writing non-BMP " "characters with binary format in plistlib." msgstr "" "`Issue #28321 `__: Fixed writing non-BMP " "characters with binary format in plistlib." #: ../../../Misc/NEWS:128 msgid "" "`Issue #28225 `__: bz2 module now supports " "pathlib. Initial patch by Ethan Furman." msgstr "" "`Issue #28225 `__: bz2 module now supports " "pathlib. Initial patch by Ethan Furman." #: ../../../Misc/NEWS:130 msgid "" "`Issue #28227 `__: gzip now supports " "pathlib. Patch by Ethan Furman." msgstr "" "`Issue #28227 `__: gzip now supports " "pathlib. Patch by Ethan Furman." #: ../../../Misc/NEWS:132 msgid "" "`Issue #27358 `__: Optimized merging var-" "keyword arguments and improved error message when pass a non-mapping as a " "var-keyword argument." msgstr "" "`Issue #27358 `__: Optimized merging var-" "keyword arguments and improved error message when pass a non-mapping as a " "var-keyword argument." #: ../../../Misc/NEWS:135 msgid "" "`Issue #28257 `__: Improved error message " "when pass a non-iterable as a var-positional argument. Added opcode " "BUILD_TUPLE_UNPACK_WITH_CALL." msgstr "" "`Issue #28257 `__: Improved error message " "when pass a non-iterable as a var-positional argument. Added opcode " "BUILD_TUPLE_UNPACK_WITH_CALL." #: ../../../Misc/NEWS:138 msgid "" "`Issue #28322 `__: Fixed possible crashes " "when unpickle itertools objects from incorrect pickle data. Based on patch " "by John Leitch." msgstr "" "`Issue #28322 `__: Fixed possible crashes " "when unpickle itertools objects from incorrect pickle data. Based on patch " "by John Leitch." #: ../../../Misc/NEWS:141 msgid "" "`Issue #28228 `__: imghdr now supports " "pathlib." msgstr "" "`Issue #28228 `__: imghdr now supports " "pathlib." #: ../../../Misc/NEWS:143 msgid "" "`Issue #28226 `__: compileall now supports " "pathlib." msgstr "" "`Issue #28226 `__: compileall now supports " "pathlib." #: ../../../Misc/NEWS:145 msgid "" "`Issue #28314 `__: Fix function declaration " "(C flags) for the getiterator() method of xml.etree.ElementTree.Element." msgstr "" "`Issue #28314 `__: Fix function declaration " "(C flags) for the getiterator() method of xml.etree.ElementTree.Element." #: ../../../Misc/NEWS:148 msgid "" "`Issue #28148 `__: Stop using localtime() and " "gmtime() in the time module." msgstr "" "`Issue #28148 `__: Stop using localtime() and " "gmtime() in the time module." #: ../../../Misc/NEWS:151 msgid "" "Introduced platform independent _PyTime_localtime API that is similar to " "POSIX localtime_r, but available on all platforms. Patch by Ed Schouten." msgstr "" #: ../../../Misc/NEWS:155 msgid "" "`Issue #28253 `__: Fixed calendar functions " "for extreme months: 0001-01 and 9999-12." msgstr "" "`Issue #28253 `__: Fixed calendar functions " "for extreme months: 0001-01 and 9999-12." #: ../../../Misc/NEWS:158 msgid "" "Methods itermonthdays() and itermonthdays2() are reimplemented so that they " "don't call itermonthdates() which can cause datetime.date under/overflow." msgstr "" #: ../../../Misc/NEWS:162 msgid "" "`Issue #28275 `__: Fixed possible use after " "free in the decompress() methods of the LZMADecompressor and BZ2Decompressor " "classes. Original patch by John Leitch." msgstr "" "`Issue #28275 `__: Fixed possible use after " "free in the decompress() methods of the LZMADecompressor and BZ2Decompressor " "classes. Original patch by John Leitch." #: ../../../Misc/NEWS:166 msgid "" "`Issue #27897 `__: Fixed possible crash in " "sqlite3.Connection.create_collation() if pass invalid string-like object as " "a name. Patch by Xiang Zhang." msgstr "" "`Issue #27897 `__: Fixed possible crash in " "sqlite3.Connection.create_collation() if pass invalid string-like object as " "a name. Patch by Xiang Zhang." #: ../../../Misc/NEWS:169 msgid "" "`Issue #18844 `__: random.choices() now has k " "as a keyword-only argument to improve the readability of common cases and " "the come into line with the signature used in other languages." msgstr "" "`Issue #18844 `__: random.choices() now has k " "as a keyword-only argument to improve the readability of common cases and " "the come into line with the signature used in other languages." #: ../../../Misc/NEWS:173 msgid "" "`Issue #18893 `__: Fix invalid exception " "handling in Lib/ctypes/macholib/dyld.py. Patch by Madison May." msgstr "" "`Issue #18893 `__: Fix invalid exception " "handling in Lib/ctypes/macholib/dyld.py. Patch by Madison May." #: ../../../Misc/NEWS:176 msgid "" "`Issue #27611 `__: Fixed support of default " "root window in the tkinter.tix module. Added the master parameter in the " "DisplayStyle constructor." msgstr "" "`Issue #27611 `__: Fixed support of default " "root window in the tkinter.tix module. Added the master parameter in the " "DisplayStyle constructor." #: ../../../Misc/NEWS:179 msgid "" "`Issue #27348 `__: In the traceback module, " "restore the formatting of exception messages like \"Exception: None\". This " "fixes a regression introduced in 3.5a2." msgstr "" "`Issue #27348 `__: In the traceback module, " "restore the formatting of exception messages like \"Exception: None\". This " "fixes a regression introduced in 3.5a2." #: ../../../Misc/NEWS:183 msgid "" "`Issue #25651 `__: Allow falsy values to be " "used for msg parameter of subTest()." msgstr "" "`Issue #25651 `__: Allow falsy values to be " "used for msg parameter of subTest()." #: ../../../Misc/NEWS:185 msgid "" "`Issue #27778 `__: Fix a memory leak in os." "getrandom() when the getrandom() is interrupted by a signal and a signal " "handler raises a Python exception." msgstr "" "`Issue #27778 `__: Fix a memory leak in os." "getrandom() when the getrandom() is interrupted by a signal and a signal " "handler raises a Python exception." #: ../../../Misc/NEWS:188 msgid "" "`Issue #28200 `__: Fix memory leak on Windows " "in the os module (fix path_converter() function)." msgstr "" "`Issue #28200 `__: Fix memory leak on Windows " "in the os module (fix path_converter() function)." #: ../../../Misc/NEWS:191 msgid "" "`Issue #25400 `__: RobotFileParser now " "correctly returns default values for crawl_delay and request_rate. Initial " "patch by Peter Wirtz." msgstr "" "`Issue #25400 `__: RobotFileParser now " "correctly returns default values for crawl_delay and request_rate. Initial " "patch by Peter Wirtz." #: ../../../Misc/NEWS:194 msgid "" "`Issue #27932 `__: Prevent memory leak in " "win32_ver()." msgstr "" "`Issue #27932 `__: Prevent memory leak in " "win32_ver()." #: ../../../Misc/NEWS:196 msgid "Fix UnboundLocalError in socket._sendfile_use_sendfile." msgstr "" #: ../../../Misc/NEWS:198 msgid "" "`Issue #28075 `__: Check for " "ERROR_ACCESS_DENIED in Windows implementation of os.stat(). Patch by Eryk " "Sun." msgstr "" "`Issue #28075 `__: Check for " "ERROR_ACCESS_DENIED in Windows implementation of os.stat(). Patch by Eryk " "Sun." #: ../../../Misc/NEWS:201 msgid "" "`Issue #22493 `__: Warning message emitted by " "using inline flags in the middle of regular expression now contains a " "(truncated) regex pattern. Patch by Tim Graham." msgstr "" "`Issue #22493 `__: Warning message emitted by " "using inline flags in the middle of regular expression now contains a " "(truncated) regex pattern. Patch by Tim Graham." #: ../../../Misc/NEWS:205 msgid "" "`Issue #25270 `__: Prevent codecs." "escape_encode() from raising SystemError when an empty bytestring is passed." msgstr "" "`Issue #25270 `__: Prevent codecs." "escape_encode() from raising SystemError when an empty bytestring is passed." #: ../../../Misc/NEWS:208 msgid "" "`Issue #28181 `__: Get antigravity over " "HTTPS. Patch by Kaartic Sivaraam." msgstr "" "`Issue #28181 `__: Get antigravity over " "HTTPS. Patch by Kaartic Sivaraam." #: ../../../Misc/NEWS:210 msgid "" "`Issue #25895 `__: Enable WebSocket URL " "schemes in urllib.parse.urljoin. Patch by Gergely Imreh and Markus " "Holtermann." msgstr "" "`Issue #25895 `__: Enable WebSocket URL " "schemes in urllib.parse.urljoin. Patch by Gergely Imreh and Markus " "Holtermann." #: ../../../Misc/NEWS:213 msgid "" "`Issue #28114 `__: Fix a crash in " "parse_envlist() when env contains byte strings. Patch by Eryk Sun." msgstr "" "`Issue #28114 `__: Fix a crash in " "parse_envlist() when env contains byte strings. Patch by Eryk Sun." #: ../../../Misc/NEWS:216 msgid "" "`Issue #27599 `__: Fixed buffer overrun in " "binascii.b2a_qp() and binascii.a2b_qp()." msgstr "" "`Issue #27599 `__: Fixed buffer overrun in " "binascii.b2a_qp() and binascii.a2b_qp()." #: ../../../Misc/NEWS:218 msgid "" "`Issue #27906 `__: Fix socket accept " "exhaustion during high TCP traffic. Patch by Kevin Conway." msgstr "" "`Issue #27906 `__: Fix socket accept " "exhaustion during high TCP traffic. Patch by Kevin Conway." #: ../../../Misc/NEWS:221 msgid "" "`Issue #28174 `__: Handle when SO_REUSEPORT " "isn't properly supported. Patch by Seth Michael Larson." msgstr "" "`Issue #28174 `__: Handle when SO_REUSEPORT " "isn't properly supported. Patch by Seth Michael Larson." #: ../../../Misc/NEWS:224 msgid "" "`Issue #26654 `__: Inspect functools.partial " "in asyncio.Handle.__repr__. Patch by iceboy." msgstr "" "`Issue #26654 `__: Inspect functools.partial " "in asyncio.Handle.__repr__. Patch by iceboy." #: ../../../Misc/NEWS:227 msgid "" "`Issue #26909 `__: Fix slow pipes IO in " "asyncio. Patch by INADA Naoki." msgstr "" "`Issue #26909 `__: Fix slow pipes IO in " "asyncio. Patch by INADA Naoki." #: ../../../Misc/NEWS:230 msgid "" "`Issue #28176 `__: Fix callbacks race in " "asyncio.SelectorLoop.sock_connect." msgstr "" "`Issue #28176 `__: Fix callbacks race in " "asyncio.SelectorLoop.sock_connect." #: ../../../Misc/NEWS:232 msgid "" "`Issue #27759 `__: Fix selectors incorrectly " "retain invalid file descriptors. Patch by Mark Williams." msgstr "" "`Issue #27759 `__: Fix selectors incorrectly " "retain invalid file descriptors. Patch by Mark Williams." #: ../../../Misc/NEWS:235 msgid "" "`Issue #28368 `__: Refuse monitoring " "processes if the child watcher has no loop attached. Patch by Vincent Michel." msgstr "" "`Issue #28368 `__: Refuse monitoring " "processes if the child watcher has no loop attached. Patch by Vincent Michel." #: ../../../Misc/NEWS:239 msgid "" "`Issue #28369 `__: Raise RuntimeError when " "transport's FD is used with add_reader, add_writer, etc." msgstr "" "`Issue #28369 `__: Raise RuntimeError when " "transport's FD is used with add_reader, add_writer, etc." #: ../../../Misc/NEWS:242 msgid "" "`Issue #28370 `__: Speedup asyncio." "StreamReader.readexactly. Patch by Коренберг Марк." msgstr "" "`Issue #28370 `__: Speedup asyncio." "StreamReader.readexactly. Patch by Коренберг Марк." #: ../../../Misc/NEWS:245 msgid "" "`Issue #28371 `__: Deprecate passing asyncio." "Handles to run_in_executor." msgstr "" "`Issue #28371 `__: Deprecate passing asyncio." "Handles to run_in_executor." #: ../../../Misc/NEWS:247 msgid "" "`Issue #28372 `__: Fix asyncio to support " "formatting of non-python coroutines." msgstr "" "`Issue #28372 `__: Fix asyncio to support " "formatting of non-python coroutines." #: ../../../Misc/NEWS:249 msgid "" "`Issue #28399 `__: Remove UNIX socket from FS " "before binding. Patch by Коренберг Марк." msgstr "" "`Issue #28399 `__: Remove UNIX socket from FS " "before binding. Patch by Коренберг Марк." #: ../../../Misc/NEWS:252 msgid "" "`Issue #27972 `__: Prohibit Tasks to await on " "themselves." msgstr "" "`Issue #27972 `__: Prohibit Tasks to await on " "themselves." #: ../../../Misc/NEWS:255 ../../../Misc/NEWS:768 ../../../Misc/NEWS:1000 #: ../../../Misc/NEWS:1501 ../../../Misc/NEWS:2771 ../../../Misc/NEWS:2834 #: ../../../Misc/NEWS:3285 ../../../Misc/NEWS:4565 ../../../Misc/NEWS:6370 #: ../../../Misc/NEWS:10691 msgid "Windows" msgstr "Windows" #: ../../../Misc/NEWS:257 msgid "" "`Issue #28402 `__: Adds signed catalog files " "for stdlib on Windows." msgstr "" "`Issue #28402 `__: Adds signed catalog files " "for stdlib on Windows." #: ../../../Misc/NEWS:259 msgid "" "`Issue #28333 `__: Enables Unicode for ps1/" "ps2 and input() prompts. (Patch by Eryk Sun)" msgstr "" "`Issue #28333 `__: Enables Unicode for ps1/" "ps2 and input() prompts. (Patch by Eryk Sun)" #: ../../../Misc/NEWS:262 msgid "" "`Issue #28251 `__: Improvements to help " "manuals on Windows." msgstr "" "`Issue #28251 `__: Improvements to help " "manuals on Windows." #: ../../../Misc/NEWS:264 msgid "" "`Issue #28110 `__: launcher.msi has different " "product codes between 32-bit and 64-bit" msgstr "" "`Issue #28110 `__: launcher.msi has different " "product codes between 32-bit and 64-bit" #: ../../../Misc/NEWS:267 msgid "" "`Issue #28161 `__: Opening CON for write " "access fails" msgstr "" "`Issue #28161 `__: Opening CON for write " "access fails" #: ../../../Misc/NEWS:269 msgid "" "`Issue #28162 `__: WindowsConsoleIO readall() " "fails if first line starts with Ctrl+Z" msgstr "" "`Issue #28162 `__: WindowsConsoleIO readall() " "fails if first line starts with Ctrl+Z" #: ../../../Misc/NEWS:272 msgid "" "`Issue #28163 `__: WindowsConsoleIO fileno() " "passes wrong flags to _open_osfhandle" msgstr "" "`Issue #28163 `__: WindowsConsoleIO fileno() " "passes wrong flags to _open_osfhandle" #: ../../../Misc/NEWS:275 msgid "" "`Issue #28164 `__: _PyIO_get_console_type " "fails for various paths" msgstr "" "`Issue #28164 `__: _PyIO_get_console_type " "fails for various paths" #: ../../../Misc/NEWS:277 msgid "" "`Issue #28137 `__: Renames Windows path file " "to ._pth" msgstr "" "`Issue #28137 `__: Renames Windows path file " "to ._pth" #: ../../../Misc/NEWS:279 msgid "" "`Issue #28138 `__: Windows ._pth file should " "allow import site" msgstr "" "`Issue #28138 `__: Windows ._pth file should " "allow import site" #: ../../../Misc/NEWS:284 msgid "" "`Issue #28258 `__: Fixed build with Estonian " "locale (python-config and distclean targets in Makefile). Patch by Arfrever " "Frehtes Taifersar Arahesis." msgstr "" "`Issue #28258 `__: Fixed build with Estonian " "locale (python-config and distclean targets in Makefile). Patch by Arfrever " "Frehtes Taifersar Arahesis." #: ../../../Misc/NEWS:287 msgid "" "`Issue #26661 `__: setup.py now detects " "system libffi with multiarch wrapper." msgstr "" "`Issue #26661 `__: setup.py now detects " "system libffi with multiarch wrapper." #: ../../../Misc/NEWS:289 msgid "" "`Issue #15819 `__: Remove redundant include " "search directory option for building outside the source tree." msgstr "" "`Issue #15819 `__: Remove redundant include " "search directory option for building outside the source tree." #: ../../../Misc/NEWS:295 msgid "" "`Issue #28217 `__: Adds _testconsole module " "to test console input." msgstr "" "`Issue #28217 `__: Adds _testconsole module " "to test console input." #: ../../../Misc/NEWS:299 msgid "Python 3.6.0 beta 1" msgstr "" #: ../../../Misc/NEWS:301 msgid "*Release date: 2016-09-12*" msgstr "" #: ../../../Misc/NEWS:306 msgid "" "`Issue #23722 `__: The __class__ cell used by " "zero-argument super() is now initialized from type.__new__ rather than " "__build_class__, so class methods relying on that will now work correctly " "when called from metaclass methods during class creation. Patch by Martin " "Teichmann." msgstr "" "`Issue #23722 `__: The __class__ cell used by " "zero-argument super() is now initialized from type.__new__ rather than " "__build_class__, so class methods relying on that will now work correctly " "when called from metaclass methods during class creation. Patch by Martin " "Teichmann." #: ../../../Misc/NEWS:311 msgid "" "`Issue #25221 `__: Fix corrupted result from " "PyLong_FromLong(0) when Python is compiled with NSMALLPOSINTS = 0." msgstr "" "`Issue #25221 `__: Fix corrupted result from " "PyLong_FromLong(0) when Python is compiled with NSMALLPOSINTS = 0." #: ../../../Misc/NEWS:314 msgid "" "`Issue #27080 `__: Implement formatting " "support for PEP 515. Initial patch by Chris Angelico." msgstr "" "`Issue #27080 `__: Implement formatting " "support for PEP 515. Initial patch by Chris Angelico." #: ../../../Misc/NEWS:317 msgid "" "`Issue #27199 `__: In tarfile, expose " "copyfileobj bufsize to improve throughput. Patch by Jason Fried." msgstr "" "`Issue #27199 `__: In tarfile, expose " "copyfileobj bufsize to improve throughput. Patch by Jason Fried." #: ../../../Misc/NEWS:320 msgid "" "`Issue #27948 `__: In f-strings, only allow " "backslashes inside the braces (where the expressions are). This is a " "breaking change from the 3.6 alpha releases, where backslashes are allowed " "anywhere in an f-string. Also, require that expressions inside f-strings be " "enclosed within literal braces, and not escapes like f'\\x7b\"hi\"\\x7d'." msgstr "" "`Issue #27948 `__: In f-strings, only allow " "backslashes inside the braces (where the expressions are). This is a " "breaking change from the 3.6 alpha releases, where backslashes are allowed " "anywhere in an f-string. Also, require that expressions inside f-strings be " "enclosed within literal braces, and not escapes like f'\\x7b\"hi\"\\x7d'." #: ../../../Misc/NEWS:327 msgid "" "`Issue #28046 `__: Remove platform-specific " "directories from sys.path." msgstr "" "`Issue #28046 `__: Remove platform-specific " "directories from sys.path." #: ../../../Misc/NEWS:329 msgid "" "`Issue #28071 `__: Add early-out for " "differencing from an empty set." msgstr "" "`Issue #28071 `__: Add early-out for " "differencing from an empty set." #: ../../../Misc/NEWS:331 msgid "" "`Issue #25758 `__: Prevents zipimport from " "unnecessarily encoding a filename (patch by Eryk Sun)" msgstr "" "`Issue #25758 `__: Prevents zipimport from " "unnecessarily encoding a filename (patch by Eryk Sun)" #: ../../../Misc/NEWS:334 msgid "" "`Issue #25856 `__: The __module__ attribute " "of extension classes and functions now is interned. This leads to more " "compact pickle data with protocol 4." msgstr "" "`Issue #25856 `__: The __module__ attribute " "of extension classes and functions now is interned. This leads to more " "compact pickle data with protocol 4." #: ../../../Misc/NEWS:337 msgid "" "`Issue #27213 `__: Rework CALL_FUNCTION* " "opcodes to produce shorter and more efficient bytecode. Patch by Demur " "Rumed, design by Serhiy Storchaka, reviewed by Serhiy Storchaka and Victor " "Stinner." msgstr "" "`Issue #27213 `__: Rework CALL_FUNCTION* " "opcodes to produce shorter and more efficient bytecode. Patch by Demur " "Rumed, design by Serhiy Storchaka, reviewed by Serhiy Storchaka and Victor " "Stinner." #: ../../../Misc/NEWS:341 msgid "" "`Issue #26331 `__: Implement tokenizing " "support for PEP 515. Patch by Georg Brandl." msgstr "" "`Issue #26331 `__: Implement tokenizing " "support for PEP 515. Patch by Georg Brandl." #: ../../../Misc/NEWS:343 msgid "" "`Issue #27999 `__: Make \"global after use\" " "a SyntaxError, and ditto for nonlocal. Patch by Ivan Levkivskyi." msgstr "" "`Issue #27999 `__: Make \"global after use\" " "a SyntaxError, and ditto for nonlocal. Patch by Ivan Levkivskyi." #: ../../../Misc/NEWS:346 msgid "" "`Issue #28003 `__: Implement PEP 525 -- " "Asynchronous Generators." msgstr "" "`Issue #28003 `__: Implement PEP 525 -- " "Asynchronous Generators." #: ../../../Misc/NEWS:348 msgid "" "`Issue #27985 `__: Implement PEP 526 -- " "Syntax for Variable Annotations. Patch by Ivan Levkivskyi." msgstr "" "`Issue #27985 `__: Implement PEP 526 -- " "Syntax for Variable Annotations. Patch by Ivan Levkivskyi." #: ../../../Misc/NEWS:351 msgid "" "`Issue #26058 `__: Add a new private version " "to the builtin dict type, incremented at each dictionary creation and at " "each dictionary change. Implementation of the PEP 509." msgstr "" "`Issue #26058 `__: Add a new private version " "to the builtin dict type, incremented at each dictionary creation and at " "each dictionary change. Implementation of the PEP 509." #: ../../../Misc/NEWS:355 msgid "" "`Issue #27364 `__: A backslash-character pair " "that is not a valid escape sequence now generates a DeprecationWarning. " "Patch by Emanuel Barry." msgstr "" "`Issue #27364 `__: A backslash-character pair " "that is not a valid escape sequence now generates a DeprecationWarning. " "Patch by Emanuel Barry." #: ../../../Misc/NEWS:358 msgid "" "`Issue #27350 `__: `dict` implementation is " "changed like PyPy. It is more compact and preserves insertion order. " "(Concept developed by Raymond Hettinger and patch by Inada Naoki.)" msgstr "" "`Issue #27350 `__: `dict` implementation is " "changed like PyPy. It is more compact and preserves insertion order. " "(Concept developed by Raymond Hettinger and patch by Inada Naoki.)" #: ../../../Misc/NEWS:362 msgid "" "`Issue #27911 `__: Remove unnecessary error " "checks in ``exec_builtin_or_dynamic()``." msgstr "" "`Issue #27911 `__: Remove unnecessary error " "checks in ``exec_builtin_or_dynamic()``." #: ../../../Misc/NEWS:365 msgid "" "`Issue #27078 `__: Added BUILD_STRING " "opcode. Optimized f-strings evaluation." msgstr "" "`Issue #27078 `__: Added BUILD_STRING " "opcode. Optimized f-strings evaluation." #: ../../../Misc/NEWS:367 msgid "" "`Issue #17884 `__: Python now requires " "systems with inttypes.h and stdint.h" msgstr "" "`Issue #17884 `__: Python now requires " "systems with inttypes.h and stdint.h" #: ../../../Misc/NEWS:369 msgid "" "`Issue #27961 `__: Require platforms to " "support ``long long``. Python hasn't compiled without ``long long`` for " "years, so this is basically a formality." msgstr "" "`Issue #27961 `__: Require platforms to " "support ``long long``. Python hasn't compiled without ``long long`` for " "years, so this is basically a formality." #: ../../../Misc/NEWS:372 msgid "" "`Issue #27355 `__: Removed support for " "Windows CE. It was never finished, and Windows CE is no longer a relevant " "platform for Python." msgstr "" "`Issue #27355 `__: Removed support for " "Windows CE. It was never finished, and Windows CE is no longer a relevant " "platform for Python." #: ../../../Misc/NEWS:375 msgid "Implement PEP 523." msgstr "" #: ../../../Misc/NEWS:377 msgid "" "`Issue #27870 `__: A left shift of zero by a " "large integer no longer attempts to allocate large amounts of memory." msgstr "" "`Issue #27870 `__: A left shift of zero by a " "large integer no longer attempts to allocate large amounts of memory." #: ../../../Misc/NEWS:380 msgid "" "`Issue #25402 `__: In int-to-decimal-string " "conversion, improve the estimate of the intermediate memory required, and " "remove an unnecessarily strict overflow check. Patch by Serhiy Storchaka." msgstr "" "`Issue #25402 `__: In int-to-decimal-string " "conversion, improve the estimate of the intermediate memory required, and " "remove an unnecessarily strict overflow check. Patch by Serhiy Storchaka." #: ../../../Misc/NEWS:384 msgid "" "`Issue #27214 `__: In long_invert, be more " "careful about modifying object returned by long_add, and remove an " "unnecessary check for small longs. Thanks Oren Milman for analysis and patch." msgstr "" "`Issue #27214 `__: In long_invert, be more " "careful about modifying object returned by long_add, and remove an " "unnecessary check for small longs. Thanks Oren Milman for analysis and patch." #: ../../../Misc/NEWS:388 msgid "" "`Issue #27506 `__: Support passing the bytes/" "bytearray.translate() \"delete\" argument by keyword." msgstr "" "`Issue #27506 `__: Support passing the bytes/" "bytearray.translate() \"delete\" argument by keyword." #: ../../../Misc/NEWS:391 msgid "" "`Issue #27812 `__: Properly clear out a " "generator's frame's backreference to the generator to prevent crashes in " "frame.clear()." msgstr "" "`Issue #27812 `__: Properly clear out a " "generator's frame's backreference to the generator to prevent crashes in " "frame.clear()." #: ../../../Misc/NEWS:394 msgid "" "`Issue #27811 `__: Fix a crash when a " "coroutine that has not been awaited is finalized with warnings-as-errors " "enabled." msgstr "" "`Issue #27811 `__: Fix a crash when a " "coroutine that has not been awaited is finalized with warnings-as-errors " "enabled." #: ../../../Misc/NEWS:397 msgid "" "`Issue #27587 `__: Fix another issue found by " "PVS-Studio: Null pointer check after use of 'def' in _PyState_AddModule(). " "Initial patch by Christian Heimes." msgstr "" "`Issue #27587 `__: Fix another issue found by " "PVS-Studio: Null pointer check after use of 'def' in _PyState_AddModule(). " "Initial patch by Christian Heimes." #: ../../../Misc/NEWS:401 msgid "" "`Issue #27792 `__: The modulo operation " "applied to ``bool`` and other ``int`` subclasses now always returns an " "``int``. Previously the return type depended on the input values. Patch by " "Xiang Zhang." msgstr "" "`Issue #27792 `__: The modulo operation " "applied to ``bool`` and other ``int`` subclasses now always returns an " "``int``. Previously the return type depended on the input values. Patch by " "Xiang Zhang." #: ../../../Misc/NEWS:405 msgid "" "`Issue #26984 `__: int() now always returns " "an instance of exact int." msgstr "" "`Issue #26984 `__: int() now always returns " "an instance of exact int." #: ../../../Misc/NEWS:407 msgid "" "`Issue #25604 `__: Fix a minor bug in integer " "true division; this bug could potentially have caused off-by-one-ulp results " "on platforms with unreliable ldexp implementations." msgstr "" "`Issue #25604 `__: Fix a minor bug in integer " "true division; this bug could potentially have caused off-by-one-ulp results " "on platforms with unreliable ldexp implementations." #: ../../../Misc/NEWS:411 msgid "" "`Issue #24254 `__: Make class definition " "namespace ordered by default." msgstr "" "`Issue #24254 `__: Make class definition " "namespace ordered by default." #: ../../../Misc/NEWS:413 msgid "" "`Issue #27662 `__: Fix an overflow check in " "``List_New``: the original code was checking against ``Py_SIZE_MAX`` instead " "of the correct upper bound of ``Py_SSIZE_T_MAX``. Patch by Xiang Zhang." msgstr "" "`Issue #27662 `__: Fix an overflow check in " "``List_New``: the original code was checking against ``Py_SIZE_MAX`` instead " "of the correct upper bound of ``Py_SSIZE_T_MAX``. Patch by Xiang Zhang." #: ../../../Misc/NEWS:417 msgid "" "`Issue #27782 `__: Multi-phase extension " "module import now correctly allows the ``m_methods`` field to be used to add " "module level functions to instances of non-module types returned from " "``Py_create_mod``. Patch by Xiang Zhang." msgstr "" "`Issue #27782 `__: Multi-phase extension " "module import now correctly allows the ``m_methods`` field to be used to add " "module level functions to instances of non-module types returned from " "``Py_create_mod``. Patch by Xiang Zhang." #: ../../../Misc/NEWS:421 msgid "" "`Issue #27936 `__: The round() function " "accepted a second None argument for some types but not for others. Fixed " "the inconsistency by accepting None for all numeric types." msgstr "" "`Issue #27936 `__: The round() function " "accepted a second None argument for some types but not for others. Fixed " "the inconsistency by accepting None for all numeric types." #: ../../../Misc/NEWS:425 msgid "" "`Issue #27487 `__: Warn if a submodule " "argument to \"python -m\" or runpy.run_module() is found in sys.modules " "after parent packages are imported, but before the submodule is executed." msgstr "" "`Issue #27487 `__: Warn if a submodule " "argument to \"python -m\" or runpy.run_module() is found in sys.modules " "after parent packages are imported, but before the submodule is executed." #: ../../../Misc/NEWS:429 msgid "" "`Issue #27157 `__: Make only type() itself " "accept the one-argument form. Patch by Eryk Sun and Emanuel Barry." msgstr "" "`Issue #27157 `__: Make only type() itself " "accept the one-argument form. Patch by Eryk Sun and Emanuel Barry." #: ../../../Misc/NEWS:432 msgid "" "`Issue #27558 `__: Fix a SystemError in the " "implementation of \"raise\" statement. In a brand new thread, raise a " "RuntimeError since there is no active exception to reraise. Patch written by " "Xiang Zhang." msgstr "" "`Issue #27558 `__: Fix a SystemError in the " "implementation of \"raise\" statement. In a brand new thread, raise a " "RuntimeError since there is no active exception to reraise. Patch written by " "Xiang Zhang." #: ../../../Misc/NEWS:436 msgid "" "`Issue #28008 `__: Implement PEP 530 -- " "asynchronous comprehensions." msgstr "" "`Issue #28008 `__: Implement PEP 530 -- " "asynchronous comprehensions." #: ../../../Misc/NEWS:441 msgid "" "`Issue #28037 `__: Use " "sqlite3_get_autocommit() instead of setting Connection->inTransaction " "manually." msgstr "" "`Issue #28037 `__: Use " "sqlite3_get_autocommit() instead of setting Connection->inTransaction " "manually." #: ../../../Misc/NEWS:444 msgid "" "`Issue #25283 `__: Attributes tm_gmtoff and " "tm_zone are now available on all platforms in the return values of time." "localtime() and time.gmtime()." msgstr "" "`Issue #25283 `__: Attributes tm_gmtoff and " "tm_zone are now available on all platforms in the return values of time." "localtime() and time.gmtime()." #: ../../../Misc/NEWS:448 msgid "" "`Issue #24454 `__: Regular expression match " "object groups are now accessible using __getitem__. \"mo[x]\" is equivalent " "to \"mo.group(x)\"." msgstr "" "`Issue #24454 `__: Regular expression match " "object groups are now accessible using __getitem__. \"mo[x]\" is equivalent " "to \"mo.group(x)\"." #: ../../../Misc/NEWS:452 msgid "" "`Issue #10740 `__: sqlite3 no longer " "implicitly commit an open transaction before DDL statements." msgstr "" "`Issue #10740 `__: sqlite3 no longer " "implicitly commit an open transaction before DDL statements." #: ../../../Misc/NEWS:455 msgid "" "`Issue #17941 `__: Add a *module* parameter " "to collections.namedtuple()." msgstr "" "`Issue #17941 `__: Add a *module* parameter " "to collections.namedtuple()." #: ../../../Misc/NEWS:457 msgid "" "`Issue #22493 `__: Inline flags now should be " "used only at the start of the regular expression. Deprecation warning is " "emitted if uses them in the middle of the regular expression." msgstr "" "`Issue #22493 `__: Inline flags now should be " "used only at the start of the regular expression. Deprecation warning is " "emitted if uses them in the middle of the regular expression." #: ../../../Misc/NEWS:461 msgid "" "`Issue #26885 `__: xmlrpc now supports " "unmarshalling additional data types used by Apache XML-RPC implementation " "for numerics and None." msgstr "" "`Issue #26885 `__: xmlrpc now supports " "unmarshalling additional data types used by Apache XML-RPC implementation " "for numerics and None." #: ../../../Misc/NEWS:464 msgid "" "`Issue #28070 `__: Fixed parsing inline " "verbose flag in regular expressions." msgstr "" "`Issue #28070 `__: Fixed parsing inline " "verbose flag in regular expressions." #: ../../../Misc/NEWS:466 msgid "" "`Issue #19500 `__: Add client-side SSL " "session resumption to the ssl module." msgstr "" "`Issue #19500 `__: Add client-side SSL " "session resumption to the ssl module." #: ../../../Misc/NEWS:468 msgid "" "`Issue #28022 `__: Deprecate ssl-related " "arguments in favor of SSLContext. The deprecation include manual creation of " "SSLSocket and certfile/keyfile (or similar) in ftplib, httplib, imaplib, " "smtplib, poplib and urllib." msgstr "" "`Issue #28022 `__: Deprecate ssl-related " "arguments in favor of SSLContext. The deprecation include manual creation of " "SSLSocket and certfile/keyfile (or similar) in ftplib, httplib, imaplib, " "smtplib, poplib and urllib." #: ../../../Misc/NEWS:472 msgid "" "`Issue #28043 `__: SSLContext has improved " "default settings: OP_NO_SSLv2, OP_NO_SSLv3, OP_NO_COMPRESSION, " "OP_CIPHER_SERVER_PREFERENCE, OP_SINGLE_DH_USE, OP_SINGLE_ECDH_USE and HIGH " "ciphers without MD5." msgstr "" "`Issue #28043 `__: SSLContext has improved " "default settings: OP_NO_SSLv2, OP_NO_SSLv3, OP_NO_COMPRESSION, " "OP_CIPHER_SERVER_PREFERENCE, OP_SINGLE_DH_USE, OP_SINGLE_ECDH_USE and HIGH " "ciphers without MD5." #: ../../../Misc/NEWS:476 msgid "" "`Issue #24693 `__: Changed some " "RuntimeError's in the zipfile module to more appropriate types. Improved " "some error messages and debugging output." msgstr "" "`Issue #24693 `__: Changed some " "RuntimeError's in the zipfile module to more appropriate types. Improved " "some error messages and debugging output." #: ../../../Misc/NEWS:479 msgid "" "`Issue #17909 `__: ``json.load`` and ``json." "loads`` now support binary input encoded as UTF-8, UTF-16 or UTF-32. Patch " "by Serhiy Storchaka." msgstr "" "`Issue #17909 `__: ``json.load`` and ``json." "loads`` now support binary input encoded as UTF-8, UTF-16 or UTF-32. Patch " "by Serhiy Storchaka." #: ../../../Misc/NEWS:482 msgid "" "`Issue #27137 `__: the pure Python fallback " "implementation of ``functools.partial`` now matches the behaviour of its " "accelerated C counterpart for subclassing, pickling and text representation " "purposes. Patch by Emanuel Barry and Serhiy Storchaka." msgstr "" "`Issue #27137 `__: the pure Python fallback " "implementation of ``functools.partial`` now matches the behaviour of its " "accelerated C counterpart for subclassing, pickling and text representation " "purposes. Patch by Emanuel Barry and Serhiy Storchaka." #: ../../../Misc/NEWS:487 msgid "" "Fix possible integer overflows and crashes in the mmap module with unusual " "usage patterns." msgstr "" #: ../../../Misc/NEWS:490 msgid "" "`Issue #1703178 `__: Fix the ability to " "pass the --link-objects option to the distutils build_ext command." msgstr "" "`Issue #1703178 `__: Fix the ability to " "pass the --link-objects option to the distutils build_ext command." #: ../../../Misc/NEWS:493 msgid "" "`Issue #28019 `__: itertools.count() no " "longer rounds non-integer step in range between 1.0 and 2.0 to 1." msgstr "" "`Issue #28019 `__: itertools.count() no " "longer rounds non-integer step in range between 1.0 and 2.0 to 1." #: ../../../Misc/NEWS:496 msgid "" "`Issue #18401 `__: Pdb now supports the " "'readrc' keyword argument to control whether .pdbrc files should be read. " "Patch by Martin Matusiak and Sam Kimbrel." msgstr "" "`Issue #18401 `__: Pdb now supports the " "'readrc' keyword argument to control whether .pdbrc files should be read. " "Patch by Martin Matusiak and Sam Kimbrel." #: ../../../Misc/NEWS:500 msgid "" "`Issue #25969 `__: Update the lib2to3 grammar " "to handle the unpacking generalizations added in 3.5." msgstr "" "`Issue #25969 `__: Update the lib2to3 grammar " "to handle the unpacking generalizations added in 3.5." #: ../../../Misc/NEWS:503 msgid "" "`Issue #14977 `__: mailcap now respects the " "order of the lines in the mailcap files (\"first match\"), as required by " "RFC 1542. Patch by Michael Lazar." msgstr "" "`Issue #14977 `__: mailcap now respects the " "order of the lines in the mailcap files (\"first match\"), as required by " "RFC 1542. Patch by Michael Lazar." #: ../../../Misc/NEWS:506 msgid "" "`Issue #28025 `__: Convert all ssl module " "constants to IntEnum and IntFlags. SSLContext properties now return flags " "and enums." msgstr "" "`Issue #28025 `__: Convert all ssl module " "constants to IntEnum and IntFlags. SSLContext properties now return flags " "and enums." #: ../../../Misc/NEWS:509 msgid "" "`Issue #433028 `__: Added support of " "modifier spans in regular expressions." msgstr "" "`Issue #433028 `__: Added support of " "modifier spans in regular expressions." #: ../../../Misc/NEWS:511 msgid "" "`Issue #24594 `__: Validates persist " "parameter when opening MSI database" msgstr "" "`Issue #24594 `__: Validates persist " "parameter when opening MSI database" #: ../../../Misc/NEWS:513 msgid "" "`Issue #17582 `__: xml.etree.ElementTree nows " "preserves whitespaces in attributes (Patch by Duane Griffin. Reviewed and " "approved by Stefan Behnel.)" msgstr "" "`Issue #17582 `__: xml.etree.ElementTree nows " "preserves whitespaces in attributes (Patch by Duane Griffin. Reviewed and " "approved by Stefan Behnel.)" #: ../../../Misc/NEWS:516 msgid "" "`Issue #28047 `__: Fixed calculation of line " "length used for the base64 CTE in the new email policies." msgstr "" "`Issue #28047 `__: Fixed calculation of line " "length used for the base64 CTE in the new email policies." #: ../../../Misc/NEWS:519 msgid "" "`Issue #27576 `__: Fix call order in " "OrderedDict.__init__()." msgstr "" "`Issue #27576 `__: Fix call order in " "OrderedDict.__init__()." #: ../../../Misc/NEWS:521 msgid "email.generator.DecodedGenerator now supports the policy keyword." msgstr "" #: ../../../Misc/NEWS:523 msgid "" "`Issue #28027 `__: Remove undocumented " "modules from ``Lib/plat-*``: IN, CDROM, DLFCN, TYPES, CDIO, and STROPTS." msgstr "" "`Issue #28027 `__: Remove undocumented " "modules from ``Lib/plat-*``: IN, CDROM, DLFCN, TYPES, CDIO, and STROPTS." #: ../../../Misc/NEWS:526 msgid "" "`Issue #27445 `__: Don't pass str(_charset) " "to MIMEText.set_payload(). Patch by Claude Paroz." msgstr "" "`Issue #27445 `__: Don't pass str(_charset) " "to MIMEText.set_payload(). Patch by Claude Paroz." #: ../../../Misc/NEWS:529 msgid "" "`Issue #24277 `__: The new email API is no " "longer provisional, and the docs have been reorganized and rewritten to " "emphasize the new API." msgstr "" "`Issue #24277 `__: The new email API is no " "longer provisional, and the docs have been reorganized and rewritten to " "emphasize the new API." #: ../../../Misc/NEWS:532 msgid "" "`Issue #22450 `__: urllib now includes an " "\"Accept: */*\" header among the default headers. This makes the results of " "REST API requests more consistent and predictable especially when proxy " "servers are involved." msgstr "" "`Issue #22450 `__: urllib now includes an " "\"Accept: */*\" header among the default headers. This makes the results of " "REST API requests more consistent and predictable especially when proxy " "servers are involved." #: ../../../Misc/NEWS:536 msgid "" "lib2to3.pgen3.driver.load_grammar() now creates a stable cache file between " "runs given the same Grammar.txt input regardless of the hash randomization " "setting." msgstr "" #: ../../../Misc/NEWS:540 msgid "" "`Issue #28005 `__: Allow ImportErrors in " "encoding implementation to propagate." msgstr "" "`Issue #28005 `__: Allow ImportErrors in " "encoding implementation to propagate." #: ../../../Misc/NEWS:542 msgid "" "`Issue #26667 `__: Support path-like objects " "in importlib.util." msgstr "" "`Issue #26667 `__: Support path-like objects " "in importlib.util." #: ../../../Misc/NEWS:544 msgid "" "`Issue #27570 `__: Avoid zero-length memcpy() " "etc calls with null source pointers in the \"ctypes\" and \"array\" modules." msgstr "" "`Issue #27570 `__: Avoid zero-length memcpy() " "etc calls with null source pointers in the \"ctypes\" and \"array\" modules." #: ../../../Misc/NEWS:547 msgid "" "`Issue #22233 `__: Break email header lines " "*only* on the RFC specified CR and LF characters, not on arbitrary unicode " "line breaks. This also fixes a bug in HTTP header parsing." msgstr "" "`Issue #22233 `__: Break email header lines " "*only* on the RFC specified CR and LF characters, not on arbitrary unicode " "line breaks. This also fixes a bug in HTTP header parsing." #: ../../../Misc/NEWS:551 msgid "" "Issue 27331: The email.mime classes now all accept an optional policy " "keyword." msgstr "" #: ../../../Misc/NEWS:553 msgid "" "Issue 27988: Fix email iter_attachments incorrect mutation of payload list." msgstr "" #: ../../../Misc/NEWS:555 msgid "" "`Issue #16113 `__: Add SHA-3 and SHAKE " "support to hashlib module." msgstr "" "`Issue #16113 `__: Add SHA-3 and SHAKE " "support to hashlib module." #: ../../../Misc/NEWS:557 msgid "Eliminate a tautological-pointer-compare warning in _scproxy.c." msgstr "" #: ../../../Misc/NEWS:559 msgid "" "`Issue #27776 `__: The :func:`os.urandom` " "function does now block on Linux 3.17 and newer until the system urandom " "entropy pool is initialized to increase the security. This change is part of " "the :pep:`524`." msgstr "" "`Issue #27776 `__: The :func:`os.urandom` " "function does now block on Linux 3.17 and newer until the system urandom " "entropy pool is initialized to increase the security. This change is part of " "the :pep:`524`." #: ../../../Misc/NEWS:563 msgid "" "`Issue #27778 `__: Expose the Linux " "``getrandom()`` syscall as a new :func:`os.getrandom` function. This change " "is part of the :pep:`524`." msgstr "" "`Issue #27778 `__: Expose the Linux " "``getrandom()`` syscall as a new :func:`os.getrandom` function. This change " "is part of the :pep:`524`." #: ../../../Misc/NEWS:566 msgid "" "`Issue #27691 `__: Fix ssl module's parsing " "of GEN_RID subject alternative name fields in X.509 certs." msgstr "" "`Issue #27691 `__: Fix ssl module's parsing " "of GEN_RID subject alternative name fields in X.509 certs." #: ../../../Misc/NEWS:569 msgid "`Issue #18844 `__: Add random.choices()." msgstr "" "`Issue #18844 `__: Add random.choices()." #: ../../../Misc/NEWS:571 msgid "" "`Issue #25761 `__: Improved error reporting " "about truncated pickle data in C implementation of unpickler. " "UnpicklingError is now raised instead of AttributeError and ValueError in " "some cases." msgstr "" "`Issue #25761 `__: Improved error reporting " "about truncated pickle data in C implementation of unpickler. " "UnpicklingError is now raised instead of AttributeError and ValueError in " "some cases." #: ../../../Misc/NEWS:575 msgid "" "`Issue #26798 `__: Add BLAKE2 (blake2b and " "blake2s) to hashlib." msgstr "" "`Issue #26798 `__: Add BLAKE2 (blake2b and " "blake2s) to hashlib." #: ../../../Misc/NEWS:577 msgid "" "`Issue #26032 `__: Optimized globbing in " "pathlib by using os.scandir(); it is now about 1.5--4 times faster." msgstr "" "`Issue #26032 `__: Optimized globbing in " "pathlib by using os.scandir(); it is now about 1.5--4 times faster." #: ../../../Misc/NEWS:580 msgid "" "`Issue #25596 `__: Optimized glob() and " "iglob() functions in the glob module; they are now about 3--6 times faster." msgstr "" "`Issue #25596 `__: Optimized glob() and " "iglob() functions in the glob module; they are now about 3--6 times faster." #: ../../../Misc/NEWS:583 msgid "" "`Issue #27928 `__: Add scrypt (password-based " "key derivation function) to hashlib module (requires OpenSSL 1.1.0)." msgstr "" "`Issue #27928 `__: Add scrypt (password-based " "key derivation function) to hashlib module (requires OpenSSL 1.1.0)." #: ../../../Misc/NEWS:586 msgid "" "`Issue #27850 `__: Remove 3DES from ssl " "module's default cipher list to counter measure sweet32 attack " "(CVE-2016-2183)." msgstr "" "`Issue #27850 `__: Remove 3DES from ssl " "module's default cipher list to counter measure sweet32 attack " "(CVE-2016-2183)." #: ../../../Misc/NEWS:589 msgid "" "`Issue #27766 `__: Add ChaCha20 Poly1305 to " "ssl module's default ciper list. (Required OpenSSL 1.1.0 or LibreSSL)." msgstr "" "`Issue #27766 `__: Add ChaCha20 Poly1305 to " "ssl module's default ciper list. (Required OpenSSL 1.1.0 or LibreSSL)." #: ../../../Misc/NEWS:592 msgid "" "`Issue #25387 `__: Check return value of " "winsound.MessageBeep." msgstr "" "`Issue #25387 `__: Check return value of " "winsound.MessageBeep." #: ../../../Misc/NEWS:594 msgid "" "`Issue #27866 `__: Add SSLContext." "get_ciphers() method to get a list of all enabled ciphers." msgstr "" "`Issue #27866 `__: Add SSLContext." "get_ciphers() method to get a list of all enabled ciphers." #: ../../../Misc/NEWS:597 msgid "" "`Issue #27744 `__: Add AF_ALG (Linux Kernel " "crypto) to socket module." msgstr "" "`Issue #27744 `__: Add AF_ALG (Linux Kernel " "crypto) to socket module." #: ../../../Misc/NEWS:599 msgid "" "`Issue #26470 `__: Port ssl and hashlib " "module to OpenSSL 1.1.0." msgstr "" "`Issue #26470 `__: Port ssl and hashlib " "module to OpenSSL 1.1.0." #: ../../../Misc/NEWS:601 msgid "" "`Issue #11620 `__: Fix support for SND_MEMORY " "in winsound.PlaySound. Based on a patch by Tim Lesher." msgstr "" "`Issue #11620 `__: Fix support for SND_MEMORY " "in winsound.PlaySound. Based on a patch by Tim Lesher." #: ../../../Misc/NEWS:604 msgid "" "`Issue #11734 `__: Add support for IEEE 754 " "half-precision floats to the struct module. Based on a patch by Eli Stevens." msgstr "" "`Issue #11734 `__: Add support for IEEE 754 " "half-precision floats to the struct module. Based on a patch by Eli Stevens." #: ../../../Misc/NEWS:607 msgid "" "`Issue #27919 `__: Deprecated ``extra_path`` " "distribution option in distutils packaging." msgstr "" "`Issue #27919 `__: Deprecated ``extra_path`` " "distribution option in distutils packaging." #: ../../../Misc/NEWS:610 msgid "" "`Issue #23229 `__: Add new ``cmath`` " "constants: ``cmath.inf`` and ``cmath.nan`` to match ``math.inf`` and ``math." "nan``, and also ``cmath.infj`` and ``cmath.nanj`` to match the format used " "by complex repr." msgstr "" "`Issue #23229 `__: Add new ``cmath`` " "constants: ``cmath.inf`` and ``cmath.nan`` to match ``math.inf`` and ``math." "nan``, and also ``cmath.infj`` and ``cmath.nanj`` to match the format used " "by complex repr." #: ../../../Misc/NEWS:614 msgid "" "`Issue #27842 `__: The csv.DictReader now " "returns rows of type OrderedDict. (Contributed by Steve Holden.)" msgstr "" "`Issue #27842 `__: The csv.DictReader now " "returns rows of type OrderedDict. (Contributed by Steve Holden.)" #: ../../../Misc/NEWS:617 msgid "" "Remove support for passing a file descriptor to os.access. It never worked " "but previously didn't raise." msgstr "" #: ../../../Misc/NEWS:620 msgid "" "`Issue #12885 `__: Fix error when distutils " "encounters symlink." msgstr "" "`Issue #12885 `__: Fix error when distutils " "encounters symlink." #: ../../../Misc/NEWS:622 msgid "" "`Issue #27881 `__: Fixed possible bugs when " "setting sqlite3.Connection.isolation_level. Based on patch by Xiang Zhang." msgstr "" "`Issue #27881 `__: Fixed possible bugs when " "setting sqlite3.Connection.isolation_level. Based on patch by Xiang Zhang." #: ../../../Misc/NEWS:625 msgid "" "`Issue #27861 `__: Fixed a crash in sqlite3." "Connection.cursor() when a factory creates not a cursor. Patch by Xiang " "Zhang." msgstr "" "`Issue #27861 `__: Fixed a crash in sqlite3." "Connection.cursor() when a factory creates not a cursor. Patch by Xiang " "Zhang." #: ../../../Misc/NEWS:628 msgid "" "`Issue #19884 `__: Avoid spurious output on " "OS X with Gnu Readline." msgstr "" "`Issue #19884 `__: Avoid spurious output on " "OS X with Gnu Readline." #: ../../../Misc/NEWS:630 msgid "" "`Issue #27706 `__: Restore deterministic " "behavior of random.Random().seed() for string seeds using seeding version " "1. Allows sequences of calls to random() to exactly match those obtained in " "Python 2. Patch by Nofar Schnider." msgstr "" "`Issue #27706 `__: Restore deterministic " "behavior of random.Random().seed() for string seeds using seeding version " "1. Allows sequences of calls to random() to exactly match those obtained in " "Python 2. Patch by Nofar Schnider." #: ../../../Misc/NEWS:635 msgid "" "`Issue #10513 `__: Fix a regression in " "Connection.commit(). Statements should not be reset after a commit." msgstr "" "`Issue #10513 `__: Fix a regression in " "Connection.commit(). Statements should not be reset after a commit." #: ../../../Misc/NEWS:638 msgid "" "`Issue #12319 `__: Chunked transfer encoding " "support added to http.client.HTTPConnection requests. The urllib.request." "AbstractHTTPHandler class does not enforce a Content-Length header any " "more. If a HTTP request has a file or iterable body, but no Content-Length " "header, the library now falls back to use chunked transfer- encoding." msgstr "" "`Issue #12319 `__: Chunked transfer encoding " "support added to http.client.HTTPConnection requests. The urllib.request." "AbstractHTTPHandler class does not enforce a Content-Length header any " "more. If a HTTP request has a file or iterable body, but no Content-Length " "header, the library now falls back to use chunked transfer- encoding." #: ../../../Misc/NEWS:645 msgid "" "A new version of typing.py from https://github.com/python/typing: - " "Collection (only for 3.6) (`Issue #27598 `__) " "- Add FrozenSet to __all__ (upstream #261) - fix crash in _get_type_vars() " "(upstream #259) - Remove the dict constraint in ForwardRef._eval_type " "(upstream #252)" msgstr "" #: ../../../Misc/NEWS:651 msgid "" "`Issue #27832 `__: Make ``_normalize`` " "parameter to ``Fraction`` constuctor keyword-only, so that ``Fraction(2, 3, " "4)`` now raises ``TypeError``." msgstr "" "`Issue #27832 `__: Make ``_normalize`` " "parameter to ``Fraction`` constuctor keyword-only, so that ``Fraction(2, 3, " "4)`` now raises ``TypeError``." #: ../../../Misc/NEWS:654 msgid "" "`Issue #27539 `__: Fix unnormalised " "``Fraction.__pow__`` result in the case of negative exponent and negative " "base." msgstr "" "`Issue #27539 `__: Fix unnormalised " "``Fraction.__pow__`` result in the case of negative exponent and negative " "base." #: ../../../Misc/NEWS:657 msgid "" "`Issue #21718 `__: cursor.description is now " "available for queries using CTEs." msgstr "" "`Issue #21718 `__: cursor.description is now " "available for queries using CTEs." #: ../../../Misc/NEWS:659 msgid "" "`Issue #27819 `__: In distutils sdists, " "simply produce the \"gztar\" (gzipped tar format) distributions on all " "platforms unless \"formats\" is supplied." msgstr "" "`Issue #27819 `__: In distutils sdists, " "simply produce the \"gztar\" (gzipped tar format) distributions on all " "platforms unless \"formats\" is supplied." #: ../../../Misc/NEWS:662 msgid "" "`Issue #2466 `__: posixpath.ismount now " "correctly recognizes mount points which the user does not have permission to " "access." msgstr "" "`Issue #2466 `__: posixpath.ismount now " "correctly recognizes mount points which the user does not have permission to " "access." #: ../../../Misc/NEWS:665 msgid "" "`Issue #9998 `__: On Linux, ctypes.util." "find_library now looks in LD_LIBRARY_PATH for shared libraries." msgstr "" "`Issue #9998 `__: On Linux, ctypes.util." "find_library now looks in LD_LIBRARY_PATH for shared libraries." #: ../../../Misc/NEWS:668 msgid "" "`Issue #27573 `__: exit message for code." "interact is now configurable." msgstr "" "`Issue #27573 `__: exit message for code." "interact is now configurable." #: ../../../Misc/NEWS:670 msgid "" "`Issue #27930 `__: Improved behaviour of " "logging.handlers.QueueListener. Thanks to Paulo Andrade and Petr Viktorin " "for the analysis and patch." msgstr "" "`Issue #27930 `__: Improved behaviour of " "logging.handlers.QueueListener. Thanks to Paulo Andrade and Petr Viktorin " "for the analysis and patch." #: ../../../Misc/NEWS:673 msgid "" "`Issue #6766 `__: Distributed reference " "counting added to multiprocessing to support nesting of shared values / " "proxy objects." msgstr "" "`Issue #6766 `__: Distributed reference " "counting added to multiprocessing to support nesting of shared values / " "proxy objects." #: ../../../Misc/NEWS:676 msgid "" "`Issue #21201 `__: Improves readability of " "multiprocessing error message. Thanks to Wojciech Walczak for patch." msgstr "" "`Issue #21201 `__: Improves readability of " "multiprocessing error message. Thanks to Wojciech Walczak for patch." #: ../../../Misc/NEWS:679 msgid "asyncio: Add set_protocol / get_protocol to Transports." msgstr "" #: ../../../Misc/NEWS:681 msgid "" "`Issue #27456 `__: asyncio: Set TCP_NODELAY " "by default." msgstr "" "`Issue #27456 `__: asyncio: Set TCP_NODELAY " "by default." #: ../../../Misc/NEWS:686 msgid "" "`Issue #15308 `__: Add 'interrupt " "execution' (^C) to Shell menu. Patch by Roger Serwy, updated by Bayard " "Randel." msgstr "" "`Issue #15308 `__: Add 'interrupt " "execution' (^C) to Shell menu. Patch by Roger Serwy, updated by Bayard " "Randel." #: ../../../Misc/NEWS:689 msgid "" "`Issue #27922 `__: Stop IDLE tests from " "'flashing' gui widgets on the screen." msgstr "" "`Issue #27922 `__: Stop IDLE tests from " "'flashing' gui widgets on the screen." #: ../../../Misc/NEWS:691 msgid "" "`Issue #27891 `__: Consistently group and " "sort imports within idlelib modules." msgstr "" "`Issue #27891 `__: Consistently group and " "sort imports within idlelib modules." #: ../../../Misc/NEWS:693 msgid "" "`Issue #17642 `__: add larger font sizes for " "classroom projection." msgstr "" "`Issue #17642 `__: add larger font sizes for " "classroom projection." #: ../../../Misc/NEWS:695 msgid "Add version to title of IDLE help window." msgstr "" #: ../../../Misc/NEWS:697 msgid "" "`Issue #25564 `__: In section on IDLE -- " "console differences, mention that using exec means that __builtins__ is " "defined for each statement." msgstr "" "`Issue #25564 `__: In section on IDLE -- " "console differences, mention that using exec means that __builtins__ is " "defined for each statement." #: ../../../Misc/NEWS:700 msgid "" "`Issue #27821 `__: Fix 3.6.0a3 regression " "that prevented custom key sets from being selected when no custom theme was " "defined." msgstr "" "`Issue #27821 `__: Fix 3.6.0a3 regression " "that prevented custom key sets from being selected when no custom theme was " "defined." #: ../../../Misc/NEWS:704 ../../../Misc/NEWS:1190 ../../../Misc/NEWS:1523 #: ../../../Misc/NEWS:2811 ../../../Misc/NEWS:4243 ../../../Misc/NEWS:4559 #: ../../../Misc/NEWS:6155 ../../../Misc/NEWS:8065 msgid "C API" msgstr "" #: ../../../Misc/NEWS:706 msgid "" "`Issue #26900 `__: Excluded underscored names " "and other private API from limited API." msgstr "" "`Issue #26900 `__: Excluded underscored names " "and other private API from limited API." #: ../../../Misc/NEWS:708 msgid "" "`Issue #26027 `__: Add support for path-like " "objects in PyUnicode_FSConverter() & PyUnicode_FSDecoder()." msgstr "" "`Issue #26027 `__: Add support for path-like " "objects in PyUnicode_FSConverter() & PyUnicode_FSDecoder()." #: ../../../Misc/NEWS:714 msgid "" "`Issue #27427 `__: Additional tests for the " "math module. Patch by Francisco Couzo." msgstr "" "`Issue #27427 `__: Additional tests for the " "math module. Patch by Francisco Couzo." #: ../../../Misc/NEWS:716 msgid "" "`Issue #27953 `__: Skip math and cmath tests " "that fail on OS X 10.4 due to a poor libm implementation of tan." msgstr "" "`Issue #27953 `__: Skip math and cmath tests " "that fail on OS X 10.4 due to a poor libm implementation of tan." #: ../../../Misc/NEWS:719 msgid "" "`Issue #26040 `__: Improve test_math and " "test_cmath coverage and rigour. Patch by Jeff Allen." msgstr "" "`Issue #26040 `__: Improve test_math and " "test_cmath coverage and rigour. Patch by Jeff Allen." #: ../../../Misc/NEWS:722 msgid "" "`Issue #27787 `__: Call gc.collect() before " "checking each test for \"dangling threads\", since the dangling threads are " "weak references." msgstr "" "`Issue #27787 `__: Call gc.collect() before " "checking each test for \"dangling threads\", since the dangling threads are " "weak references." #: ../../../Misc/NEWS:728 msgid "" "`Issue #27566 `__: Fix clean target in freeze " "makefile (patch by Lisa Roach)" msgstr "" "`Issue #27566 `__: Fix clean target in freeze " "makefile (patch by Lisa Roach)" #: ../../../Misc/NEWS:730 msgid "" "`Issue #27705 `__: Update message in " "validate_ucrtbase.py" msgstr "" "`Issue #27705 `__: Update message in " "validate_ucrtbase.py" #: ../../../Misc/NEWS:732 msgid "" "`Issue #27976 `__: Deprecate building _ctypes " "with the bundled copy of libffi on non-OSX UNIX platforms." msgstr "" "`Issue #27976 `__: Deprecate building _ctypes " "with the bundled copy of libffi on non-OSX UNIX platforms." #: ../../../Misc/NEWS:735 msgid "" "`Issue #27983 `__: Cause lack of llvm-" "profdata tool when using clang as required for PGO linking to be a configure " "time error rather than make time when --with-optimizations is enabled. Also " "improve our ability to find the llvm-profdata tool on MacOS and some Linuxes." msgstr "" "`Issue #27983 `__: Cause lack of llvm-" "profdata tool when using clang as required for PGO linking to be a configure " "time error rather than make time when --with-optimizations is enabled. Also " "improve our ability to find the llvm-profdata tool on MacOS and some Linuxes." #: ../../../Misc/NEWS:740 msgid "" "`Issue #21590 `__: Support for DTrace and " "SystemTap probes." msgstr "" "`Issue #21590 `__: Support for DTrace and " "SystemTap probes." #: ../../../Misc/NEWS:742 msgid "" "`Issue #26307 `__: The profile-opt build now " "applies PGO to the built-in modules." msgstr "" "`Issue #26307 `__: The profile-opt build now " "applies PGO to the built-in modules." #: ../../../Misc/NEWS:744 msgid "" "`Issue #26539 `__: Add the --with-" "optimizations flag to turn on LTO and PGO build support when available." msgstr "" "`Issue #26539 `__: Add the --with-" "optimizations flag to turn on LTO and PGO build support when available." #: ../../../Misc/NEWS:747 msgid "" "`Issue #27917 `__: Set platform triplets for " "Android builds." msgstr "" "`Issue #27917 `__: Set platform triplets for " "Android builds." #: ../../../Misc/NEWS:749 msgid "" "`Issue #25825 `__: Update references to the " "$(LIBPL) installation path on AIX. This path was changed in 3.2a4." msgstr "" "`Issue #25825 `__: Update references to the " "$(LIBPL) installation path on AIX. This path was changed in 3.2a4." #: ../../../Misc/NEWS:752 msgid "Update OS X installer to use SQLite 3.14.1 and XZ 5.2.2." msgstr "" #: ../../../Misc/NEWS:754 msgid "" "`Issue #21122 `__: Fix LTO builds on OS X." msgstr "" "`Issue #21122 `__: Fix LTO builds on OS X." #: ../../../Misc/NEWS:756 msgid "" "`Issue #17128 `__: Build OS X installer with " "a private copy of OpenSSL. Also provide a sample Install Certificates " "command script to install a set of root certificates from the third-party " "certifi module." msgstr "" "`Issue #17128 `__: Build OS X installer with " "a private copy of OpenSSL. Also provide a sample Install Certificates " "command script to install a set of root certificates from the third-party " "certifi module." #: ../../../Misc/NEWS:761 ../../../Misc/NEWS:1219 ../../../Misc/NEWS:1531 #: ../../../Misc/NEWS:2790 ../../../Misc/NEWS:3323 ../../../Misc/NEWS:4004 #: ../../../Misc/NEWS:4220 ../../../Misc/NEWS:4427 ../../../Misc/NEWS:6330 #: ../../../Misc/NEWS:6738 ../../../Misc/NEWS:6936 ../../../Misc/NEWS:7400 #: ../../../Misc/NEWS:7869 ../../../Misc/NEWS:8227 ../../../Misc/NEWS:8496 #: ../../../Misc/NEWS:10640 msgid "Tools/Demos" msgstr "" #: ../../../Misc/NEWS:763 msgid "" "`Issue #27952 `__: Get Tools/scripts/fixcid." "py working with Python 3 and the current \"re\" module, avoid invalid Python " "backslash escapes, and fix a bug parsing escaped C quote signs." msgstr "" "`Issue #27952 `__: Get Tools/scripts/fixcid." "py working with Python 3 and the current \"re\" module, avoid invalid Python " "backslash escapes, and fix a bug parsing escaped C quote signs." #: ../../../Misc/NEWS:770 msgid "" "`Issue #28065 `__: Update xz dependency to " "5.2.2 and build it from source." msgstr "" "`Issue #28065 `__: Update xz dependency to " "5.2.2 and build it from source." #: ../../../Misc/NEWS:772 msgid "" "`Issue #25144 `__: Ensures TargetDir is set " "before continuing with custom install." msgstr "" "`Issue #25144 `__: Ensures TargetDir is set " "before continuing with custom install." #: ../../../Misc/NEWS:775 msgid "" "`Issue #1602 `__: Windows console doesn't " "input or print Unicode (PEP 528)" msgstr "" "`Issue #1602 `__: Windows console doesn't " "input or print Unicode (PEP 528)" #: ../../../Misc/NEWS:777 msgid "" "`Issue #27781 `__: Change file system " "encoding on Windows to UTF-8 (PEP 529)" msgstr "" "`Issue #27781 `__: Change file system " "encoding on Windows to UTF-8 (PEP 529)" #: ../../../Misc/NEWS:779 msgid "" "`Issue #27731 `__: Opt-out of MAX_PATH on " "Windows 10" msgstr "" "`Issue #27731 `__: Opt-out of MAX_PATH on " "Windows 10" #: ../../../Misc/NEWS:781 msgid "" "`Issue #6135 `__: Adds encoding and errors " "parameters to subprocess." msgstr "" "`Issue #6135 `__: Adds encoding and errors " "parameters to subprocess." #: ../../../Misc/NEWS:783 msgid "" "`Issue #27959 `__: Adds oem encoding, alias " "ansi to mbcs, move aliasmbcs to codec lookup." msgstr "" "`Issue #27959 `__: Adds oem encoding, alias " "ansi to mbcs, move aliasmbcs to codec lookup." #: ../../../Misc/NEWS:786 msgid "" "`Issue #27982 `__: The functions of the " "winsound module now accept keyword arguments." msgstr "" "`Issue #27982 `__: The functions of the " "winsound module now accept keyword arguments." #: ../../../Misc/NEWS:789 msgid "" "`Issue #20366 `__: Build full text search " "support into SQLite on Windows." msgstr "" "`Issue #20366 `__: Build full text search " "support into SQLite on Windows." #: ../../../Misc/NEWS:791 msgid "" "`Issue #27756 `__: Adds new icons for Python " "files and processes on Windows. Designs by Cherry Wang." msgstr "" "`Issue #27756 `__: Adds new icons for Python " "files and processes on Windows. Designs by Cherry Wang." #: ../../../Misc/NEWS:794 msgid "" "`Issue #27883 `__: Update sqlite to 3.14.1.0 " "on Windows." msgstr "" "`Issue #27883 `__: Update sqlite to 3.14.1.0 " "on Windows." #: ../../../Misc/NEWS:798 msgid "Python 3.6.0 alpha 4" msgstr "" #: ../../../Misc/NEWS:800 msgid "*Release date: 2016-08-15*" msgstr "" #: ../../../Misc/NEWS:805 msgid "" "`Issue #27704 `__: Optimized creating bytes " "and bytearray from byte-like objects and iterables. Speed up to 3 times for " "short objects. Original patch by Naoki Inada." msgstr "" "`Issue #27704 `__: Optimized creating bytes " "and bytearray from byte-like objects and iterables. Speed up to 3 times for " "short objects. Original patch by Naoki Inada." #: ../../../Misc/NEWS:809 msgid "" "`Issue #26823 `__: Large sections of repeated " "lines in tracebacks are now abbreviated as \"[Previous line repeated {count} " "more times]\" by the builtin traceback rendering. Patch by Emanuel Barry." msgstr "" "`Issue #26823 `__: Large sections of repeated " "lines in tracebacks are now abbreviated as \"[Previous line repeated {count} " "more times]\" by the builtin traceback rendering. Patch by Emanuel Barry." #: ../../../Misc/NEWS:813 msgid "" "`Issue #27574 `__: Decreased an overhead of " "parsing keyword arguments in functions implemented with using Argument " "Clinic." msgstr "" "`Issue #27574 `__: Decreased an overhead of " "parsing keyword arguments in functions implemented with using Argument " "Clinic." #: ../../../Misc/NEWS:816 msgid "" "`Issue #22557 `__: Now importing already " "imported modules is up to 2.5 times faster." msgstr "" "`Issue #22557 `__: Now importing already " "imported modules is up to 2.5 times faster." #: ../../../Misc/NEWS:819 msgid "" "`Issue #17596 `__: Include to " "help with Min GW building." msgstr "" "`Issue #17596 `__: Include to " "help with Min GW building." #: ../../../Misc/NEWS:821 msgid "" "`Issue #17599 `__: On Windows, rename the " "privately defined REPARSE_DATA_BUFFER structure to avoid conflicting with " "the definition from Min GW." msgstr "" "`Issue #17599 `__: On Windows, rename the " "privately defined REPARSE_DATA_BUFFER structure to avoid conflicting with " "the definition from Min GW." #: ../../../Misc/NEWS:824 msgid "" "`Issue #27507 `__: Add integer overflow check " "in bytearray.extend(). Patch by Xiang Zhang." msgstr "" "`Issue #27507 `__: Add integer overflow check " "in bytearray.extend(). Patch by Xiang Zhang." #: ../../../Misc/NEWS:827 msgid "" "`Issue #27581 `__: Don't rely on wrapping for " "overflow check in PySequence_Tuple(). Patch by Xiang Zhang." msgstr "" "`Issue #27581 `__: Don't rely on wrapping for " "overflow check in PySequence_Tuple(). Patch by Xiang Zhang." #: ../../../Misc/NEWS:830 msgid "" "`Issue #1621 `__: Avoid signed integer " "overflow in list and tuple operations. Patch by Xiang Zhang." msgstr "" "`Issue #1621 `__: Avoid signed integer " "overflow in list and tuple operations. Patch by Xiang Zhang." #: ../../../Misc/NEWS:833 msgid "" "`Issue #27419 `__: Standard __import__() no " "longer look up \"__import__\" in globals or builtins for importing " "submodules or \"from import\". Fixed a crash if raise a warning about " "unabling to resolve package from __spec__ or __package__." msgstr "" "`Issue #27419 `__: Standard __import__() no " "longer look up \"__import__\" in globals or builtins for importing " "submodules or \"from import\". Fixed a crash if raise a warning about " "unabling to resolve package from __spec__ or __package__." #: ../../../Misc/NEWS:838 msgid "" "`Issue #27083 `__: Respect the PYTHONCASEOK " "environment variable under Windows." msgstr "" "`Issue #27083 `__: Respect the PYTHONCASEOK " "environment variable under Windows." #: ../../../Misc/NEWS:840 msgid "" "`Issue #27514 `__: Make having too many " "statically nested blocks a SyntaxError instead of SystemError." msgstr "" "`Issue #27514 `__: Make having too many " "statically nested blocks a SyntaxError instead of SystemError." #: ../../../Misc/NEWS:843 msgid "" "`Issue #27366 `__: Implemented PEP 487 " "(Simpler customization of class creation). Upon subclassing, the " "__init_subclass__ classmethod is called on the base class. Descriptors are " "initialized with __set_name__ after class creation." msgstr "" "`Issue #27366 `__: Implemented PEP 487 " "(Simpler customization of class creation). Upon subclassing, the " "__init_subclass__ classmethod is called on the base class. Descriptors are " "initialized with __set_name__ after class creation." #: ../../../Misc/NEWS:850 msgid "" "`Issue #26027 `__, #27524: Add PEP 519/" "__fspath__() support to the os and os.path modules. Includes code from Jelle " "Zijlstra." msgstr "" "`Issue #26027 `__, #27524: Add PEP 519/" "__fspath__() support to the os and os.path modules. Includes code from Jelle " "Zijlstra." #: ../../../Misc/NEWS:853 msgid "" "`Issue #27598 `__: Add Collections to " "collections.abc. Patch by Ivan Levkivskyi, docs by Neil Girdhar." msgstr "" "`Issue #27598 `__: Add Collections to " "collections.abc. Patch by Ivan Levkivskyi, docs by Neil Girdhar." #: ../../../Misc/NEWS:856 msgid "" "`Issue #25958 `__: Support \"anti-registration" "\" of special methods from various ABCs, like __hash__, __iter__ or " "__len__. All these (and several more) can be set to None in an " "implementation class and the behavior will be as if the method is not " "defined at all. (Previously, this mechanism existed only for __hash__, to " "make mutable classes unhashable.) Code contributed by Andrew Barnert and " "Ivan Levkivskyi." msgstr "" "`Issue #25958 `__: Support \"anti-registration" "\" of special methods from various ABCs, like __hash__, __iter__ or " "__len__. All these (and several more) can be set to None in an " "implementation class and the behavior will be as if the method is not " "defined at all. (Previously, this mechanism existed only for __hash__, to " "make mutable classes unhashable.) Code contributed by Andrew Barnert and " "Ivan Levkivskyi." #: ../../../Misc/NEWS:864 msgid "" "`Issue #16764 `__: Support keyword arguments " "to zlib.decompress(). Patch by Xiang Zhang." msgstr "" "`Issue #16764 `__: Support keyword arguments " "to zlib.decompress(). Patch by Xiang Zhang." #: ../../../Misc/NEWS:867 msgid "" "`Issue #27736 `__: Prevent segfault after " "interpreter re-initialization due to ref count problem introduced in code " "for `Issue #27038 `__ in 3.6.0a3. Patch by " "Xiang Zhang." msgstr "" "`Issue #27736 `__: Prevent segfault after " "interpreter re-initialization due to ref count problem introduced in code " "for `Issue #27038 `__ in 3.6.0a3. Patch by " "Xiang Zhang." #: ../../../Misc/NEWS:871 msgid "" "`Issue #25628 `__: The *verbose* and " "*rename* parameters for collections.namedtuple are now keyword-only." msgstr "" "`Issue #25628 `__: The *verbose* and " "*rename* parameters for collections.namedtuple are now keyword-only." #: ../../../Misc/NEWS:874 msgid "" "`Issue #12345 `__: Add mathematical constant " "tau to math and cmath. See also PEP 628." msgstr "" "`Issue #12345 `__: Add mathematical constant " "tau to math and cmath. See also PEP 628." #: ../../../Misc/NEWS:877 msgid "" "`Issue #26823 `__: traceback.StackSummary." "format now abbreviates large sections of repeated lines as \"[Previous line " "repeated {count} more times]\" (this change then further affects other " "traceback display operations in the module). Patch by Emanuel Barry." msgstr "" "`Issue #26823 `__: traceback.StackSummary." "format now abbreviates large sections of repeated lines as \"[Previous line " "repeated {count} more times]\" (this change then further affects other " "traceback display operations in the module). Patch by Emanuel Barry." #: ../../../Misc/NEWS:882 msgid "" "`Issue #27664 `__: Add to concurrent.futures." "thread.ThreadPoolExecutor() the ability to specify a thread name prefix." msgstr "" "`Issue #27664 `__: Add to concurrent.futures." "thread.ThreadPoolExecutor() the ability to specify a thread name prefix." #: ../../../Misc/NEWS:885 msgid "" "`Issue #27181 `__: Add geometric_mean and " "harmonic_mean to statistics module." msgstr "" "`Issue #27181 `__: Add geometric_mean and " "harmonic_mean to statistics module." #: ../../../Misc/NEWS:887 msgid "" "`Issue #27573 `__: code.interact now prints " "an message when exiting." msgstr "" "`Issue #27573 `__: code.interact now prints " "an message when exiting." #: ../../../Misc/NEWS:889 msgid "" "`Issue #6422 `__: Add autorange method to " "timeit.Timer objects." msgstr "" "`Issue #6422 `__: Add autorange method to " "timeit.Timer objects." #: ../../../Misc/NEWS:891 msgid "" "`Issue #27773 `__: Correct some memory " "management errors server_hostname in _ssl.wrap_socket()." msgstr "" "`Issue #27773 `__: Correct some memory " "management errors server_hostname in _ssl.wrap_socket()." #: ../../../Misc/NEWS:894 msgid "" "`Issue #26750 `__: unittest.mock." "create_autospec() now works properly for subclasses of property() and other " "data descriptors. Removes the never publicly used, never documented " "unittest.mock.DescriptorTypes tuple." msgstr "" "`Issue #26750 `__: unittest.mock." "create_autospec() now works properly for subclasses of property() and other " "data descriptors. Removes the never publicly used, never documented " "unittest.mock.DescriptorTypes tuple." #: ../../../Misc/NEWS:898 msgid "" "`Issue #26754 `__: Undocumented support of " "general bytes-like objects as path in compile() and similar functions is now " "deprecated." msgstr "" "`Issue #26754 `__: Undocumented support of " "general bytes-like objects as path in compile() and similar functions is now " "deprecated." #: ../../../Misc/NEWS:901 msgid "" "`Issue #26800 `__: Undocumented support of " "general bytes-like objects as paths in os functions is now deprecated." msgstr "" "`Issue #26800 `__: Undocumented support of " "general bytes-like objects as paths in os functions is now deprecated." #: ../../../Misc/NEWS:904 msgid "" "`Issue #26981 `__: Add _order_ compatibility " "shim to enum.Enum for Python 2/3 code bases." msgstr "" "`Issue #26981 `__: Add _order_ compatibility " "shim to enum.Enum for Python 2/3 code bases." #: ../../../Misc/NEWS:907 msgid "" "`Issue #27661 `__: Added tzinfo keyword " "argument to datetime.combine." msgstr "" "`Issue #27661 `__: Added tzinfo keyword " "argument to datetime.combine." #: ../../../Misc/NEWS:909 msgid "" "In the curses module, raise an error if window.getstr() or window.instr() is " "passed a negative value." msgstr "" #: ../../../Misc/NEWS:912 msgid "" "`Issue #27783 `__: Fix possible usage of " "uninitialized memory in operator.methodcaller." msgstr "" "`Issue #27783 `__: Fix possible usage of " "uninitialized memory in operator.methodcaller." #: ../../../Misc/NEWS:915 msgid "" "`Issue #27774 `__: Fix possible Py_DECREF on " "unowned object in _sre." msgstr "" "`Issue #27774 `__: Fix possible Py_DECREF on " "unowned object in _sre." #: ../../../Misc/NEWS:917 msgid "" "`Issue #27760 `__: Fix possible integer " "overflow in binascii.b2a_qp." msgstr "" "`Issue #27760 `__: Fix possible integer " "overflow in binascii.b2a_qp." #: ../../../Misc/NEWS:919 msgid "" "`Issue #27758 `__: Fix possible integer " "overflow in the _csv module for large record lengths." msgstr "" "`Issue #27758 `__: Fix possible integer " "overflow in the _csv module for large record lengths." #: ../../../Misc/NEWS:922 msgid "" "`Issue #27568 `__: Prevent HTTPoxy attack " "(CVE-2016-1000110). Ignore the HTTP_PROXY variable when REQUEST_METHOD " "environment is set, which indicates that the script is in CGI mode." msgstr "" "`Issue #27568 `__: Prevent HTTPoxy attack " "(CVE-2016-1000110). Ignore the HTTP_PROXY variable when REQUEST_METHOD " "environment is set, which indicates that the script is in CGI mode." #: ../../../Misc/NEWS:926 msgid "" "`Issue #7063 `__: Remove dead code from the " "\"array\" module's slice handling. Patch by Chuck." msgstr "" "`Issue #7063 `__: Remove dead code from the " "\"array\" module's slice handling. Patch by Chuck." #: ../../../Misc/NEWS:929 msgid "" "`Issue #27656 `__: Do not assume sched.h " "defines any SCHED_* constants." msgstr "" "`Issue #27656 `__: Do not assume sched.h " "defines any SCHED_* constants." #: ../../../Misc/NEWS:931 msgid "" "`Issue #27130 `__: In the \"zlib\" module, " "fix handling of large buffers (typically 4 GiB) when compressing and " "decompressing. Previously, inputs were limited to 4 GiB, and compression " "and decompression operations did not properly handle results of 4 GiB." msgstr "" "`Issue #27130 `__: In the \"zlib\" module, " "fix handling of large buffers (typically 4 GiB) when compressing and " "decompressing. Previously, inputs were limited to 4 GiB, and compression " "and decompression operations did not properly handle results of 4 GiB." #: ../../../Misc/NEWS:936 msgid "" "`Issue #24773 `__: Implemented PEP 495 (Local " "Time Disambiguation)." msgstr "" "`Issue #24773 `__: Implemented PEP 495 (Local " "Time Disambiguation)." #: ../../../Misc/NEWS:938 msgid "" "Expose the EPOLLEXCLUSIVE constant (when it is defined) in the select module." msgstr "" #: ../../../Misc/NEWS:940 msgid "" "`Issue #27567 `__: Expose the EPOLLRDHUP and " "POLLRDHUP constants in the select module." msgstr "" "`Issue #27567 `__: Expose the EPOLLRDHUP and " "POLLRDHUP constants in the select module." #: ../../../Misc/NEWS:943 msgid "" "`Issue #1621 `__: Avoid signed int negation " "overflow in the \"audioop\" module." msgstr "" "`Issue #1621 `__: Avoid signed int negation " "overflow in the \"audioop\" module." #: ../../../Misc/NEWS:945 msgid "" "`Issue #27533 `__: Release GIL in nt._isdir" msgstr "" "`Issue #27533 `__: Release GIL in nt._isdir" #: ../../../Misc/NEWS:947 msgid "" "`Issue #17711 `__: Fixed unpickling by the " "persistent ID with protocol 0. Original patch by Alexandre Vassalotti." msgstr "" "`Issue #17711 `__: Fixed unpickling by the " "persistent ID with protocol 0. Original patch by Alexandre Vassalotti." #: ../../../Misc/NEWS:950 msgid "" "`Issue #27522 `__: Avoid an unintentional " "reference cycle in email.feedparser." msgstr "" "`Issue #27522 `__: Avoid an unintentional " "reference cycle in email.feedparser." #: ../../../Misc/NEWS:952 msgid "" "`Issue #27512 `__: Fix a segfault when os." "fspath() called an __fspath__() method that raised an exception. Patch by " "Xiang Zhang." msgstr "" "`Issue #27512 `__: Fix a segfault when os." "fspath() called an __fspath__() method that raised an exception. Patch by " "Xiang Zhang." #: ../../../Misc/NEWS:958 msgid "" "`Issue #27714 `__: text_textview and " "test_autocomplete now pass when re-run in the same process. This occurs " "when test_idle fails when run with the -w option but without -jn. Fix " "warning from test_config." msgstr "" "`Issue #27714 `__: text_textview and " "test_autocomplete now pass when re-run in the same process. This occurs " "when test_idle fails when run with the -w option but without -jn. Fix " "warning from test_config." #: ../../../Misc/NEWS:962 msgid "" "`Issue #27621 `__: Put query response " "validation error messages in the query box itself instead of in a separate " "massagebox. Redo tests to match. Add Mac OSX refinements. Original patch " "by Mark Roseman." msgstr "" "`Issue #27621 `__: Put query response " "validation error messages in the query box itself instead of in a separate " "massagebox. Redo tests to match. Add Mac OSX refinements. Original patch " "by Mark Roseman." #: ../../../Misc/NEWS:966 msgid "" "`Issue #27620 `__: Escape key now closes " "Query box as cancelled." msgstr "" "`Issue #27620 `__: Escape key now closes " "Query box as cancelled." #: ../../../Misc/NEWS:968 msgid "" "`Issue #27609 `__: IDLE: tab after initial " "whitespace should tab, not autocomplete. This fixes problem with writing " "docstrings at least twice indented." msgstr "" "`Issue #27609 `__: IDLE: tab after initial " "whitespace should tab, not autocomplete. This fixes problem with writing " "docstrings at least twice indented." #: ../../../Misc/NEWS:972 msgid "" "`Issue #27609 `__: Explicitly return None " "when there are also non-None returns. In a few cases, reverse a condition " "and eliminate a return." msgstr "" "`Issue #27609 `__: Explicitly return None " "when there are also non-None returns. In a few cases, reverse a condition " "and eliminate a return." #: ../../../Misc/NEWS:975 msgid "" "`Issue #25507 `__: IDLE no longer runs buggy " "code because of its tkinter imports. Users must include the same imports " "required to run directly in Python." msgstr "" "`Issue #25507 `__: IDLE no longer runs buggy " "code because of its tkinter imports. Users must include the same imports " "required to run directly in Python." #: ../../../Misc/NEWS:978 ../../../Misc/NEWS:1159 msgid "" "`Issue #27173 `__: Add 'IDLE Modern Unix' to " "the built-in key sets. Make the default key set depend on the platform. Add " "tests for the changes to the config module." msgstr "" "`Issue #27173 `__: Add 'IDLE Modern Unix' to " "the built-in key sets. Make the default key set depend on the platform. Add " "tests for the changes to the config module." #: ../../../Misc/NEWS:982 ../../../Misc/NEWS:1166 msgid "" "`Issue #27452 `__: add line counter and crc " "to IDLE configHandler test dump." msgstr "" "`Issue #27452 `__: add line counter and crc " "to IDLE configHandler test dump." #: ../../../Misc/NEWS:987 msgid "" "`Issue #25805 `__: Skip a test in " "test_pkgutil as needed that doesn't work when ``__name__ == __main__``. " "Patch by SilentGhost." msgstr "" "`Issue #25805 `__: Skip a test in " "test_pkgutil as needed that doesn't work when ``__name__ == __main__``. " "Patch by SilentGhost." #: ../../../Misc/NEWS:990 msgid "" "`Issue #27472 `__: Add test.support." "unix_shell as the path to the default shell." msgstr "" "`Issue #27472 `__: Add test.support." "unix_shell as the path to the default shell." #: ../../../Misc/NEWS:992 msgid "" "`Issue #27369 `__: In test_pyexpat, avoid " "testing an error message detail that changed in Expat 2.2.0." msgstr "" "`Issue #27369 `__: In test_pyexpat, avoid " "testing an error message detail that changed in Expat 2.2.0." #: ../../../Misc/NEWS:995 msgid "" "`Issue #27594 `__: Prevent assertion error " "when running test_ast with coverage enabled: ensure code object has a valid " "first line number. Patch suggested by Ivan Levkivskyi." msgstr "" "`Issue #27594 `__: Prevent assertion error " "when running test_ast with coverage enabled: ensure code object has a valid " "first line number. Patch suggested by Ivan Levkivskyi." #: ../../../Misc/NEWS:1002 msgid "" "`Issue #27647 `__: Update bundled Tcl/Tk to " "8.6.6." msgstr "" "`Issue #27647 `__: Update bundled Tcl/Tk to " "8.6.6." #: ../../../Misc/NEWS:1004 msgid "" "`Issue #27610 `__: Adds PEP 514 metadata to " "Windows installer" msgstr "" "`Issue #27610 `__: Adds PEP 514 metadata to " "Windows installer" #: ../../../Misc/NEWS:1006 msgid "" "`Issue #27469 `__: Adds a shell extension to " "the launcher so that drag and drop works correctly." msgstr "" "`Issue #27469 `__: Adds a shell extension to " "the launcher so that drag and drop works correctly." #: ../../../Misc/NEWS:1009 msgid "" "`Issue #27309 `__: Enables proper Windows " "styles in python[w].exe manifest." msgstr "" "`Issue #27309 `__: Enables proper Windows " "styles in python[w].exe manifest." #: ../../../Misc/NEWS:1014 msgid "" "`Issue #27713 `__: Suppress spurious build " "warnings when updating importlib's bootstrap files. Patch by Xiang Zhang" msgstr "" "`Issue #27713 `__: Suppress spurious build " "warnings when updating importlib's bootstrap files. Patch by Xiang Zhang" #: ../../../Misc/NEWS:1017 msgid "" "`Issue #25825 `__: Correct the references to " "Modules/python.exp, which is required on AIX. The references were " "accidentally changed in 3.5.0a1." msgstr "" "`Issue #25825 `__: Correct the references to " "Modules/python.exp, which is required on AIX. The references were " "accidentally changed in 3.5.0a1." #: ../../../Misc/NEWS:1020 msgid "" "`Issue #27453 `__: CPP invocation in " "configure must use CPPFLAGS. Patch by Chi Hsuan Yen." msgstr "" "`Issue #27453 `__: CPP invocation in " "configure must use CPPFLAGS. Patch by Chi Hsuan Yen." #: ../../../Misc/NEWS:1023 msgid "" "`Issue #27641 `__: The configure script now " "inserts comments into the makefile to prevent the pgen and _freeze_importlib " "executables from being cross- compiled." msgstr "" "`Issue #27641 `__: The configure script now " "inserts comments into the makefile to prevent the pgen and _freeze_importlib " "executables from being cross- compiled." #: ../../../Misc/NEWS:1027 msgid "" "`Issue #26662 `__: Set PYTHON_FOR_GEN in " "configure as the Python program to be used for file generation during the " "build." msgstr "" "`Issue #26662 `__: Set PYTHON_FOR_GEN in " "configure as the Python program to be used for file generation during the " "build." #: ../../../Misc/NEWS:1030 msgid "" "`Issue #10910 `__: Avoid C++ compilation " "errors on FreeBSD and OS X. Also update FreedBSD version checks for the " "original ctype UTF-8 workaround." msgstr "" "`Issue #10910 `__: Avoid C++ compilation " "errors on FreeBSD and OS X. Also update FreedBSD version checks for the " "original ctype UTF-8 workaround." #: ../../../Misc/NEWS:1035 msgid "Python 3.6.0 alpha 3" msgstr "" #: ../../../Misc/NEWS:1037 msgid "*Release date: 2016-07-11*" msgstr "" #: ../../../Misc/NEWS:1042 msgid "" "`Issue #27473 `__: Fixed possible integer " "overflow in bytes and bytearray concatenations. Patch by Xiang Zhang." msgstr "" "`Issue #27473 `__: Fixed possible integer " "overflow in bytes and bytearray concatenations. Patch by Xiang Zhang." #: ../../../Misc/NEWS:1045 msgid "" "`Issue #23034 `__: The output of a special " "Python build with defined COUNT_ALLOCS, SHOW_ALLOC_COUNT or SHOW_TRACK_COUNT " "macros is now off by default. It can be re-enabled using the \"-X " "showalloccount\" option. It now outputs to stderr instead of stdout." msgstr "" "`Issue #23034 `__: The output of a special " "Python build with defined COUNT_ALLOCS, SHOW_ALLOC_COUNT or SHOW_TRACK_COUNT " "macros is now off by default. It can be re-enabled using the \"-X " "showalloccount\" option. It now outputs to stderr instead of stdout." #: ../../../Misc/NEWS:1050 msgid "" "`Issue #27443 `__: __length_hint__() of " "bytearray iterators no longer return a negative integer for a resized " "bytearray." msgstr "" "`Issue #27443 `__: __length_hint__() of " "bytearray iterators no longer return a negative integer for a resized " "bytearray." #: ../../../Misc/NEWS:1053 msgid "" "`Issue #27007 `__: The fromhex() class " "methods of bytes and bytearray subclasses now return an instance of " "corresponding subclass." msgstr "" "`Issue #27007 `__: The fromhex() class " "methods of bytes and bytearray subclasses now return an instance of " "corresponding subclass." #: ../../../Misc/NEWS:1059 msgid "" "`Issue #26844 `__: Fix error message for imp." "find_module() to refer to 'path' instead of 'name'. Patch by Lev Maximov." msgstr "" "`Issue #26844 `__: Fix error message for imp." "find_module() to refer to 'path' instead of 'name'. Patch by Lev Maximov." #: ../../../Misc/NEWS:1062 msgid "" "`Issue #23804 `__: Fix SSL zero-length recv() " "calls to not block and not raise an error about unclean EOF." msgstr "" "`Issue #23804 `__: Fix SSL zero-length recv() " "calls to not block and not raise an error about unclean EOF." #: ../../../Misc/NEWS:1065 msgid "" "`Issue #27466 `__: Change time format " "returned by http.cookie.time2netscape, confirming the netscape cookie format " "and making it consistent with documentation." msgstr "" "`Issue #27466 `__: Change time format " "returned by http.cookie.time2netscape, confirming the netscape cookie format " "and making it consistent with documentation." #: ../../../Misc/NEWS:1069 msgid "" "`Issue #21708 `__: Deprecated dbm.dumb " "behavior that differs from common dbm behavior: creating a database in 'r' " "and 'w' modes and modifying a database in 'r' mode." msgstr "" "`Issue #21708 `__: Deprecated dbm.dumb " "behavior that differs from common dbm behavior: creating a database in 'r' " "and 'w' modes and modifying a database in 'r' mode." #: ../../../Misc/NEWS:1073 msgid "" "`Issue #26721 `__: Change the socketserver." "StreamRequestHandler.wfile attribute to implement BufferedIOBase. In " "particular, the write() method no longer does partial writes." msgstr "" "`Issue #26721 `__: Change the socketserver." "StreamRequestHandler.wfile attribute to implement BufferedIOBase. In " "particular, the write() method no longer does partial writes." #: ../../../Misc/NEWS:1077 msgid "" "`Issue #22115 `__: Added methods trace_add, " "trace_remove and trace_info in the tkinter.Variable class. They replace old " "methods trace_variable, trace, trace_vdelete and trace_vinfo that use " "obsolete Tcl commands and might not work in future versions of Tcl. Fixed " "old tracing methods: trace_vdelete() with wrong mode no longer break " "tracing, trace_vinfo() now always returns a list of pairs of strings, " "tracing in the \"u\" mode now works." msgstr "" "`Issue #22115 `__: Added methods trace_add, " "trace_remove and trace_info in the tkinter.Variable class. They replace old " "methods trace_variable, trace, trace_vdelete and trace_vinfo that use " "obsolete Tcl commands and might not work in future versions of Tcl. Fixed " "old tracing methods: trace_vdelete() with wrong mode no longer break " "tracing, trace_vinfo() now always returns a list of pairs of strings, " "tracing in the \"u\" mode now works." #: ../../../Misc/NEWS:1084 msgid "" "`Issue #26243 `__: Only the level argument to " "zlib.compress() is keyword argument now. The first argument is positional-" "only." msgstr "" "`Issue #26243 `__: Only the level argument to " "zlib.compress() is keyword argument now. The first argument is positional-" "only." #: ../../../Misc/NEWS:1087 msgid "" "`Issue #27038 `__: Expose the DirEntry type " "as os.DirEntry. Code patch by Jelle Zijlstra." msgstr "" "`Issue #27038 `__: Expose the DirEntry type " "as os.DirEntry. Code patch by Jelle Zijlstra." #: ../../../Misc/NEWS:1090 msgid "" "`Issue #27186 `__: Update os.fspath()/" "PyOS_FSPath() to check the return value of __fspath__() to be either str or " "bytes." msgstr "" "`Issue #27186 `__: Update os.fspath()/" "PyOS_FSPath() to check the return value of __fspath__() to be either str or " "bytes." #: ../../../Misc/NEWS:1093 msgid "" "`Issue #18726 `__: All optional parameters of " "the dump(), dumps(), load() and loads() functions and JSONEncoder and " "JSONDecoder class constructors in the json module are now keyword-only." msgstr "" "`Issue #18726 `__: All optional parameters of " "the dump(), dumps(), load() and loads() functions and JSONEncoder and " "JSONDecoder class constructors in the json module are now keyword-only." #: ../../../Misc/NEWS:1097 msgid "" "`Issue #27319 `__: Methods selection_set(), " "selection_add(), selection_remove() and selection_toggle() of ttk.TreeView " "now allow passing multiple items as multiple arguments instead of passing " "them as a tuple. Deprecated undocumented ability of calling the selection() " "method with arguments." msgstr "" "`Issue #27319 `__: Methods selection_set(), " "selection_add(), selection_remove() and selection_toggle() of ttk.TreeView " "now allow passing multiple items as multiple arguments instead of passing " "them as a tuple. Deprecated undocumented ability of calling the selection() " "method with arguments." #: ../../../Misc/NEWS:1102 msgid "" "`Issue #27079 `__: Fixed curses.ascii " "functions isblank(), iscntrl() and ispunct()." msgstr "" "`Issue #27079 `__: Fixed curses.ascii " "functions isblank(), iscntrl() and ispunct()." #: ../../../Misc/NEWS:1104 msgid "" "`Issue #27294 `__: Numerical state in the " "repr for Tkinter event objects is now represented as a combination of known " "flags." msgstr "" "`Issue #27294 `__: Numerical state in the " "repr for Tkinter event objects is now represented as a combination of known " "flags." #: ../../../Misc/NEWS:1107 msgid "" "`Issue #27177 `__: Match objects in the re " "module now support index-like objects as group indices. Based on patches by " "Jeroen Demeyer and Xiang Zhang." msgstr "" "`Issue #27177 `__: Match objects in the re " "module now support index-like objects as group indices. Based on patches by " "Jeroen Demeyer and Xiang Zhang." #: ../../../Misc/NEWS:1110 msgid "" "`Issue #26754 `__: Some functions (compile() " "etc) accepted a filename argument encoded as an iterable of integers. Now " "only strings and byte-like objects are accepted." msgstr "" "`Issue #26754 `__: Some functions (compile() " "etc) accepted a filename argument encoded as an iterable of integers. Now " "only strings and byte-like objects are accepted." #: ../../../Misc/NEWS:1114 msgid "" "`Issue #26536 `__: socket.ioctl now supports " "SIO_LOOPBACK_FAST_PATH. Patch by Daniel Stokes." msgstr "" "`Issue #26536 `__: socket.ioctl now supports " "SIO_LOOPBACK_FAST_PATH. Patch by Daniel Stokes." #: ../../../Misc/NEWS:1117 msgid "" "`Issue #27048 `__: Prevents distutils failing " "on Windows when environment variables contain non-ASCII characters" msgstr "" "`Issue #27048 `__: Prevents distutils failing " "on Windows when environment variables contain non-ASCII characters" #: ../../../Misc/NEWS:1120 msgid "" "`Issue #27330 `__: Fixed possible leaks in " "the ctypes module." msgstr "" "`Issue #27330 `__: Fixed possible leaks in " "the ctypes module." #: ../../../Misc/NEWS:1122 msgid "" "`Issue #27238 `__: Got rid of bare excepts in " "the turtle module. Original patch by Jelle Zijlstra." msgstr "" "`Issue #27238 `__: Got rid of bare excepts in " "the turtle module. Original patch by Jelle Zijlstra." #: ../../../Misc/NEWS:1125 msgid "" "`Issue #27122 `__: When an exception is " "raised within the context being managed by a contextlib.ExitStack() and one " "of the exit stack generators catches and raises it in a chain, do not re-" "raise the original exception when exiting, let the new chained one through. " "This avoids the PEP 479 bug described in issue25782." msgstr "" "`Issue #27122 `__: When an exception is " "raised within the context being managed by a contextlib.ExitStack() and one " "of the exit stack generators catches and raises it in a chain, do not re-" "raise the original exception when exiting, let the new chained one through. " "This avoids the PEP 479 bug described in issue25782." #: ../../../Misc/NEWS:1131 msgid "" "[Security] `Issue #27278 `__: Fix os." "urandom() implementation using getrandom() on Linux. Truncate size to " "INT_MAX and loop until we collected enough random bytes, instead of casting " "a directly Py_ssize_t to int." msgstr "" #: ../../../Misc/NEWS:1135 msgid "" "`Issue #16864 `__: sqlite3.Cursor.lastrowid " "now supports REPLACE statement. Initial patch by Alex LordThorsen." msgstr "" "`Issue #16864 `__: sqlite3.Cursor.lastrowid " "now supports REPLACE statement. Initial patch by Alex LordThorsen." #: ../../../Misc/NEWS:1138 msgid "" "`Issue #26386 `__: Fixed ttk.TreeView " "selection operations with item id's containing spaces." msgstr "" "`Issue #26386 `__: Fixed ttk.TreeView " "selection operations with item id's containing spaces." #: ../../../Misc/NEWS:1141 msgid "" "`Issue #8637 `__: Honor a pager set by the env " "var MANPAGER (in preference to one set by the env var PAGER)." msgstr "" "`Issue #8637 `__: Honor a pager set by the env " "var MANPAGER (in preference to one set by the env var PAGER)." #: ../../../Misc/NEWS:1144 msgid "" "[Security] `Issue #22636 `__: Avoid shell " "injection problems with ctypes.util.find_library()." msgstr "" #: ../../../Misc/NEWS:1147 msgid "" "`Issue #16182 `__: Fix various functions in " "the \"readline\" module to use the locale encoding, and fix get_begidx() and " "get_endidx() to return code point indexes." msgstr "" "`Issue #16182 `__: Fix various functions in " "the \"readline\" module to use the locale encoding, and fix get_begidx() and " "get_endidx() to return code point indexes." #: ../../../Misc/NEWS:1151 msgid "" "`Issue #27392 `__: Add loop." "connect_accepted_socket(). Patch by Jim Fulton." msgstr "" "`Issue #27392 `__: Add loop." "connect_accepted_socket(). Patch by Jim Fulton." #: ../../../Misc/NEWS:1157 msgid "" "`Issue #27477 `__: IDLE search dialogs now " "use ttk widgets." msgstr "" "`Issue #27477 `__: IDLE search dialogs now " "use ttk widgets." #: ../../../Misc/NEWS:1163 msgid "" "`Issue #27452 `__: make command line \"idle-" "test> python test_help.py\" work. __file__ is relative when python is " "started in the file's directory." msgstr "" "`Issue #27452 `__: make command line \"idle-" "test> python test_help.py\" work. __file__ is relative when python is " "started in the file's directory." #: ../../../Misc/NEWS:1168 msgid "" "`Issue #27380 `__: IDLE: add query.py with " "base Query dialog and ttk widgets. Module had subclasses SectionName, " "ModuleName, and HelpSource, which are used to get information from users by " "configdialog and file =>Load Module. Each subclass has itw own validity " "checks. Using ModuleName allows users to edit bad module names instead of " "starting over. Add tests and delete the two files combined into the new one." msgstr "" "`Issue #27380 `__: IDLE: add query.py with " "base Query dialog and ttk widgets. Module had subclasses SectionName, " "ModuleName, and HelpSource, which are used to get information from users by " "configdialog and file =>Load Module. Each subclass has itw own validity " "checks. Using ModuleName allows users to edit bad module names instead of " "starting over. Add tests and delete the two files combined into the new one." #: ../../../Misc/NEWS:1175 msgid "" "`Issue #27372 `__: Test_idle no longer " "changes the locale." msgstr "" "`Issue #27372 `__: Test_idle no longer " "changes the locale." #: ../../../Misc/NEWS:1177 msgid "" "`Issue #27365 `__: Allow non-ascii chars in " "IDLE NEWS.txt, for contributor names." msgstr "" "`Issue #27365 `__: Allow non-ascii chars in " "IDLE NEWS.txt, for contributor names." #: ../../../Misc/NEWS:1179 msgid "" "`Issue #27245 `__: IDLE: Cleanly delete " "custom themes and key bindings. Previously, when IDLE was started from a " "console or by import, a cascade of warnings was emitted. Patch by Serhiy " "Storchaka." msgstr "" "`Issue #27245 `__: IDLE: Cleanly delete " "custom themes and key bindings. Previously, when IDLE was started from a " "console or by import, a cascade of warnings was emitted. Patch by Serhiy " "Storchaka." #: ../../../Misc/NEWS:1183 msgid "" "`Issue #24137 `__: Run IDLE, test_idle, and " "htest with tkinter default root disabled. Fix code and tests that fail with " "this restriction. Fix htests to not create a second and redundant root and " "mainloop." msgstr "" "`Issue #24137 `__: Run IDLE, test_idle, and " "htest with tkinter default root disabled. Fix code and tests that fail with " "this restriction. Fix htests to not create a second and redundant root and " "mainloop." #: ../../../Misc/NEWS:1187 msgid "" "`Issue #27310 `__: Fix IDLE.app failure to " "launch on OS X due to vestigial import." msgstr "" "`Issue #27310 `__: Fix IDLE.app failure to " "launch on OS X due to vestigial import." #: ../../../Misc/NEWS:1192 msgid "" "`Issue #26754 `__: PyUnicode_FSDecoder() " "accepted a filename argument encoded as an iterable of integers. Now only " "strings and byte-like objects are accepted." msgstr "" "`Issue #26754 `__: PyUnicode_FSDecoder() " "accepted a filename argument encoded as an iterable of integers. Now only " "strings and byte-like objects are accepted." #: ../../../Misc/NEWS:1198 msgid "" "`Issue #28066 `__: Fix the logic that " "searches build directories for generated include files when building outside " "the source tree." msgstr "" "`Issue #28066 `__: Fix the logic that " "searches build directories for generated include files when building outside " "the source tree." #: ../../../Misc/NEWS:1201 msgid "" "`Issue #27442 `__: Expose the Android API " "level that python was built against, in sysconfig.get_config_vars() as " "'ANDROID_API_LEVEL'." msgstr "" "`Issue #27442 `__: Expose the Android API " "level that python was built against, in sysconfig.get_config_vars() as " "'ANDROID_API_LEVEL'." #: ../../../Misc/NEWS:1204 msgid "" "`Issue #27434 `__: The interpreter that runs " "the cross-build, found in PATH, must now be of the same feature version (e." "g. 3.6) as the source being built." msgstr "" "`Issue #27434 `__: The interpreter that runs " "the cross-build, found in PATH, must now be of the same feature version (e." "g. 3.6) as the source being built." #: ../../../Misc/NEWS:1207 msgid "" "`Issue #26930 `__: Update Windows builds to " "use OpenSSL 1.0.2h." msgstr "" "`Issue #26930 `__: Update Windows builds to " "use OpenSSL 1.0.2h." #: ../../../Misc/NEWS:1209 msgid "" "`Issue #23968 `__: Rename the platform " "directory from plat-$(MACHDEP) to plat-$(PLATFORM_TRIPLET). Rename the " "config directory (LIBPL) from config-$(LDVERSION) to config-$(LDVERSION)-" "$(PLATFORM_TRIPLET). Install the platform specifc _sysconfigdata module into " "the platform directory and rename it to include the ABIFLAGS." msgstr "" "`Issue #23968 `__: Rename the platform " "directory from plat-$(MACHDEP) to plat-$(PLATFORM_TRIPLET). Rename the " "config directory (LIBPL) from config-$(LDVERSION) to config-$(LDVERSION)-" "$(PLATFORM_TRIPLET). Install the platform specifc _sysconfigdata module into " "the platform directory and rename it to include the ABIFLAGS." #: ../../../Misc/NEWS:1216 msgid "Don't use largefile support for GNU/Hurd." msgstr "" #: ../../../Misc/NEWS:1221 msgid "" "`Issue #27332 `__: Fixed the type of the " "first argument of module-level functions generated by Argument Clinic. " "Patch by Petr Viktorin." msgstr "" "`Issue #27332 `__: Fixed the type of the " "first argument of module-level functions generated by Argument Clinic. " "Patch by Petr Viktorin." #: ../../../Misc/NEWS:1224 msgid "" "`Issue #27418 `__: Fixed Tools/importbench/" "importbench.py." msgstr "" "`Issue #27418 `__: Fixed Tools/importbench/" "importbench.py." #: ../../../Misc/NEWS:1229 msgid "" "`Issue #19489 `__: Moved the search box from " "the sidebar to the header and footer of each page. Patch by Ammar Askar." msgstr "" "`Issue #19489 `__: Moved the search box from " "the sidebar to the header and footer of each page. Patch by Ammar Askar." #: ../../../Misc/NEWS:1232 msgid "" "`Issue #27285 `__: Update documentation to " "reflect the deprecation of ``pyvenv`` and normalize on the term \"virtual " "environment\". Patch by Steve Piercy." msgstr "" "`Issue #27285 `__: Update documentation to " "reflect the deprecation of ``pyvenv`` and normalize on the term \"virtual " "environment\". Patch by Steve Piercy." #: ../../../Misc/NEWS:1238 msgid "" "`Issue #27027 `__: Added test.support." "is_android that is True when this is an Android build." msgstr "" "`Issue #27027 `__: Added test.support." "is_android that is True when this is an Android build." #: ../../../Misc/NEWS:1243 msgid "Python 3.6.0 alpha 2" msgstr "" #: ../../../Misc/NEWS:1245 msgid "*Release date: 2016-06-13*" msgstr "" #: ../../../Misc/NEWS:1250 msgid "" "`Issue #27095 `__: Simplified MAKE_FUNCTION " "and removed MAKE_CLOSURE opcodes. Patch by Demur Rumed." msgstr "" "`Issue #27095 `__: Simplified MAKE_FUNCTION " "and removed MAKE_CLOSURE opcodes. Patch by Demur Rumed." #: ../../../Misc/NEWS:1253 msgid "" "`Issue #27190 `__: Raise NotSupportedError if " "sqlite3 is older than 3.3.1. Patch by Dave Sawyer." msgstr "" "`Issue #27190 `__: Raise NotSupportedError if " "sqlite3 is older than 3.3.1. Patch by Dave Sawyer." #: ../../../Misc/NEWS:1256 msgid "" "`Issue #27286 `__: Fixed compiling " "BUILD_MAP_UNPACK_WITH_CALL opcode. Calling function with generalized " "unpacking (PEP 448) and conflicting keyword names could cause undefined " "behavior." msgstr "" "`Issue #27286 `__: Fixed compiling " "BUILD_MAP_UNPACK_WITH_CALL opcode. Calling function with generalized " "unpacking (PEP 448) and conflicting keyword names could cause undefined " "behavior." #: ../../../Misc/NEWS:1260 msgid "" "`Issue #27140 `__: Added BUILD_CONST_KEY_MAP " "opcode." msgstr "" "`Issue #27140 `__: Added BUILD_CONST_KEY_MAP " "opcode." #: ../../../Misc/NEWS:1262 msgid "" "`Issue #27186 `__: Add support for os." "PathLike objects to open() (part of PEP 519)." msgstr "" "`Issue #27186 `__: Add support for os." "PathLike objects to open() (part of PEP 519)." #: ../../../Misc/NEWS:1264 msgid "" "`Issue #27066 `__: Fixed SystemError if a " "custom opener (for open()) returns a negative number without setting an " "exception." msgstr "" "`Issue #27066 `__: Fixed SystemError if a " "custom opener (for open()) returns a negative number without setting an " "exception." #: ../../../Misc/NEWS:1267 msgid "" "`Issue #26983 `__: float() now always return " "an instance of exact float. The deprecation warning is emitted if __float__ " "returns an instance of a strict subclass of float. In a future versions of " "Python this can be an error." msgstr "" "`Issue #26983 `__: float() now always return " "an instance of exact float. The deprecation warning is emitted if __float__ " "returns an instance of a strict subclass of float. In a future versions of " "Python this can be an error." #: ../../../Misc/NEWS:1272 msgid "" "`Issue #27097 `__: Python interpreter is now " "about 7% faster due to optimized instruction decoding. Based on patch by " "Demur Rumed." msgstr "" "`Issue #27097 `__: Python interpreter is now " "about 7% faster due to optimized instruction decoding. Based on patch by " "Demur Rumed." #: ../../../Misc/NEWS:1275 msgid "" "`Issue #26647 `__: Python interpreter now " "uses 16-bit wordcode instead of bytecode. Patch by Demur Rumed." msgstr "" "`Issue #26647 `__: Python interpreter now " "uses 16-bit wordcode instead of bytecode. Patch by Demur Rumed." #: ../../../Misc/NEWS:1278 msgid "" "`Issue #23275 `__: Allow assigning to an " "empty target list in round brackets: () = iterable." msgstr "" "`Issue #23275 `__: Allow assigning to an " "empty target list in round brackets: () = iterable." #: ../../../Misc/NEWS:1281 msgid "" "`Issue #27243 `__: Update the __aiter__ " "protocol: instead of returning an awaitable that resolves to an asynchronous " "iterator, the asynchronous iterator should be returned directly. Doing the " "former will trigger a PendingDeprecationWarning." msgstr "" "`Issue #27243 `__: Update the __aiter__ " "protocol: instead of returning an awaitable that resolves to an asynchronous " "iterator, the asynchronous iterator should be returned directly. Doing the " "former will trigger a PendingDeprecationWarning." #: ../../../Misc/NEWS:1290 msgid "" "Comment out socket (SO_REUSEPORT) and posix (O_SHLOCK, O_EXLOCK) constants " "exposed on the API which are not implemented on GNU/Hurd. They would not " "work at runtime anyway." msgstr "" #: ../../../Misc/NEWS:1294 msgid "" "`Issue #25455 `__: Fixed crashes in repr of " "recursive ElementTree.Element and functools.partial objects." msgstr "" "`Issue #25455 `__: Fixed crashes in repr of " "recursive ElementTree.Element and functools.partial objects." #: ../../../Misc/NEWS:1297 msgid "" "`Issue #27294 `__: Improved repr for Tkinter " "event objects." msgstr "" "`Issue #27294 `__: Improved repr for Tkinter " "event objects." #: ../../../Misc/NEWS:1299 msgid "" "`Issue #20508 `__: Improve exception message " "of IPv{4,6}Network.__getitem__. Patch by Gareth Rees." msgstr "" "`Issue #20508 `__: Improve exception message " "of IPv{4,6}Network.__getitem__. Patch by Gareth Rees." #: ../../../Misc/NEWS:1302 msgid "" "[Security] `Issue #26556 `__: Update expat to " "2.1.1, fixes CVE-2015-1283." msgstr "" #: ../../../Misc/NEWS:1304 msgid "" "[Security] Fix TLS stripping vulnerability in smtplib, CVE-2016-0772. " "Reported by Team Oststrom." msgstr "" #: ../../../Misc/NEWS:1307 msgid "" "`Issue #21386 `__: Implement missing " "IPv4Address.is_global property. It was documented since 07a5610bae9d. " "Initial patch by Roger Luethi." msgstr "" "`Issue #21386 `__: Implement missing " "IPv4Address.is_global property. It was documented since 07a5610bae9d. " "Initial patch by Roger Luethi." #: ../../../Misc/NEWS:1310 msgid "" "`Issue #27029 `__: Removed deprecated support " "of universal newlines mode from ZipFile.open()." msgstr "" "`Issue #27029 `__: Removed deprecated support " "of universal newlines mode from ZipFile.open()." #: ../../../Misc/NEWS:1313 msgid "" "`Issue #27030 `__: Unknown escapes consisting " "of ``'\\'`` and an ASCII letter in regular expressions now are errors. The " "re.LOCALE flag now can be used only with bytes patterns." msgstr "" "`Issue #27030 `__: Unknown escapes consisting " "of ``'\\'`` and an ASCII letter in regular expressions now are errors. The " "re.LOCALE flag now can be used only with bytes patterns." #: ../../../Misc/NEWS:1317 msgid "" "`Issue #27186 `__: Add os.PathLike support to " "DirEntry (part of PEP 519). Initial patch by Jelle Zijlstra." msgstr "" "`Issue #27186 `__: Add os.PathLike support to " "DirEntry (part of PEP 519). Initial patch by Jelle Zijlstra." #: ../../../Misc/NEWS:1320 msgid "" "`Issue #20900 `__: distutils register command " "now decodes HTTP responses correctly. Initial patch by ingrid." msgstr "" "`Issue #20900 `__: distutils register command " "now decodes HTTP responses correctly. Initial patch by ingrid." #: ../../../Misc/NEWS:1323 msgid "" "`Issue #27186 `__: Add os.PathLike support to " "pathlib, removing its provisional status (part of PEP 519). Initial patch by " "Dusty Phillips." msgstr "" "`Issue #27186 `__: Add os.PathLike support to " "pathlib, removing its provisional status (part of PEP 519). Initial patch by " "Dusty Phillips." #: ../../../Misc/NEWS:1326 msgid "" "`Issue #27186 `__: Add support for os." "PathLike objects to os.fsencode() and os.fsdecode() (part of PEP 519)." msgstr "" "`Issue #27186 `__: Add support for os." "PathLike objects to os.fsencode() and os.fsdecode() (part of PEP 519)." #: ../../../Misc/NEWS:1329 msgid "" "`Issue #27186 `__: Introduce os.PathLike and " "os.fspath() (part of PEP 519)." msgstr "" "`Issue #27186 `__: Introduce os.PathLike and " "os.fspath() (part of PEP 519)." #: ../../../Misc/NEWS:1331 msgid "" "A new version of typing.py provides several new classes and features: " "@overload outside stubs, Reversible, DefaultDict, Text, ContextManager, " "Type[], NewType(), TYPE_CHECKING, and numerous bug fixes (note that some of " "the new features are not yet implemented in mypy or other static " "analyzers). Also classes for PEP 492 (Awaitable, AsyncIterable, " "AsyncIterator) have been added (in fact they made it into 3.5.1 but were " "never mentioned)." msgstr "" #: ../../../Misc/NEWS:1339 msgid "" "`Issue #25738 `__: Stop http.server." "BaseHTTPRequestHandler.send_error() from sending a message body for 205 " "Reset Content. Also, don't send Content header fields in responses that " "don't have a body. Patch by Susumu Koshiba." msgstr "" "`Issue #25738 `__: Stop http.server." "BaseHTTPRequestHandler.send_error() from sending a message body for 205 " "Reset Content. Also, don't send Content header fields in responses that " "don't have a body. Patch by Susumu Koshiba." #: ../../../Misc/NEWS:1344 msgid "" "`Issue #21313 `__: Fix the \"platform\" " "module to tolerate when sys.version contains truncated build information." msgstr "" "`Issue #21313 `__: Fix the \"platform\" " "module to tolerate when sys.version contains truncated build information." #: ../../../Misc/NEWS:1347 msgid "" "[Security] `Issue #26839 `__: On Linux, :func:" "`os.urandom` now calls ``getrandom()`` with ``GRND_NONBLOCK`` to fall back " "on reading ``/dev/urandom`` if the urandom entropy pool is not initialized " "yet. Patch written by Colm Buckley." msgstr "" #: ../../../Misc/NEWS:1352 msgid "" "`Issue #23883 `__: Added missing APIs to " "__all__ to match the documented APIs for the following modules: cgi, " "mailbox, mimetypes, plistlib and smtpd. Patches by Jacek Kołodziej." msgstr "" "`Issue #23883 `__: Added missing APIs to " "__all__ to match the documented APIs for the following modules: cgi, " "mailbox, mimetypes, plistlib and smtpd. Patches by Jacek Kołodziej." #: ../../../Misc/NEWS:1356 msgid "" "`Issue #27164 `__: In the zlib module, allow " "decompressing raw Deflate streams with a predefined zdict. Based on patch " "by Xiang Zhang." msgstr "" "`Issue #27164 `__: In the zlib module, allow " "decompressing raw Deflate streams with a predefined zdict. Based on patch " "by Xiang Zhang." #: ../../../Misc/NEWS:1359 msgid "" "`Issue #24291 `__: Fix wsgiref.simple_server." "WSGIRequestHandler to completely write data to the client. Previously it " "could do partial writes and truncate data. Also, wsgiref.handler." "ServerHandler can now handle stdout doing partial writes, but this is " "deprecated." msgstr "" "`Issue #24291 `__: Fix wsgiref.simple_server." "WSGIRequestHandler to completely write data to the client. Previously it " "could do partial writes and truncate data. Also, wsgiref.handler." "ServerHandler can now handle stdout doing partial writes, but this is " "deprecated." #: ../../../Misc/NEWS:1364 msgid "" "`Issue #21272 `__: Use _sysconfigdata.py to " "initialize distutils.sysconfig." msgstr "" "`Issue #21272 `__: Use _sysconfigdata.py to " "initialize distutils.sysconfig." #: ../../../Misc/NEWS:1366 msgid "" "`Issue #19611 `__: :mod:`inspect` now reports " "the implicit ``.0`` parameters generated by the compiler for comprehension " "and generator expression scopes as if they were positional-only parameters " "called ``implicit0``. Patch by Jelle Zijlstra." msgstr "" "`Issue #19611 `__: :mod:`inspect` now reports " "the implicit ``.0`` parameters generated by the compiler for comprehension " "and generator expression scopes as if they were positional-only parameters " "called ``implicit0``. Patch by Jelle Zijlstra." #: ../../../Misc/NEWS:1371 msgid "" "`Issue #26809 `__: Add ``__all__`` to :mod:" "`string`. Patch by Emanuel Barry." msgstr "" "`Issue #26809 `__: Add ``__all__`` to :mod:" "`string`. Patch by Emanuel Barry." #: ../../../Misc/NEWS:1373 msgid "" "`Issue #26373 `__: subprocess.Popen." "communicate now correctly ignores BrokenPipeError when the child process " "dies before .communicate() is called in more/all circumstances." msgstr "" "`Issue #26373 `__: subprocess.Popen." "communicate now correctly ignores BrokenPipeError when the child process " "dies before .communicate() is called in more/all circumstances." #: ../../../Misc/NEWS:1377 msgid "" "signal, socket, and ssl module IntEnum constant name lookups now return a " "consistent name for values having multiple names. Ex: signal.Signals(6) now " "refers to itself as signal.SIGALRM rather than flipping between that and " "signal.SIGIOT based on the interpreter's hash randomization seed." msgstr "" #: ../../../Misc/NEWS:1382 msgid "" "`Issue #27167 `__: Clarify the subprocess." "CalledProcessError error message text when the child process died due to a " "signal." msgstr "" "`Issue #27167 `__: Clarify the subprocess." "CalledProcessError error message text when the child process died due to a " "signal." #: ../../../Misc/NEWS:1385 msgid "" "`Issue #25931 `__: Don't define socketserver." "Forking* names on platforms such as Windows that do not support os.fork()." msgstr "" "`Issue #25931 `__: Don't define socketserver." "Forking* names on platforms such as Windows that do not support os.fork()." #: ../../../Misc/NEWS:1388 msgid "" "`Issue #21776 `__: distutils.upload now " "correctly handles HTTPError. Initial patch by Claudiu Popa." msgstr "" "`Issue #21776 `__: distutils.upload now " "correctly handles HTTPError. Initial patch by Claudiu Popa." #: ../../../Misc/NEWS:1391 msgid "" "`Issue #26526 `__: Replace custom parse tree " "validation in the parser module with a simple DFA validator." msgstr "" "`Issue #26526 `__: Replace custom parse tree " "validation in the parser module with a simple DFA validator." #: ../../../Misc/NEWS:1394 msgid "" "`Issue #27114 `__: Fix SSLContext." "_load_windows_store_certs fails with PermissionError" msgstr "" "`Issue #27114 `__: Fix SSLContext." "_load_windows_store_certs fails with PermissionError" #: ../../../Misc/NEWS:1397 msgid "" "`Issue #18383 `__: Avoid creating duplicate " "filters when using filterwarnings and simplefilter. Based on patch by Alex " "Shkop." msgstr "" "`Issue #18383 `__: Avoid creating duplicate " "filters when using filterwarnings and simplefilter. Based on patch by Alex " "Shkop." #: ../../../Misc/NEWS:1400 msgid "" "`Issue #23026 `__: winreg.QueryValueEx() now " "return an integer for REG_QWORD type." msgstr "" "`Issue #23026 `__: winreg.QueryValueEx() now " "return an integer for REG_QWORD type." #: ../../../Misc/NEWS:1402 msgid "" "`Issue #26741 `__: subprocess.Popen " "destructor now emits a ResourceWarning warning if the child process is still " "running." msgstr "" "`Issue #26741 `__: subprocess.Popen " "destructor now emits a ResourceWarning warning if the child process is still " "running." #: ../../../Misc/NEWS:1405 msgid "" "`Issue #27056 `__: Optimize pickle.load() and " "pickle.loads(), up to 10% faster to deserialize a lot of small objects." msgstr "" "`Issue #27056 `__: Optimize pickle.load() and " "pickle.loads(), up to 10% faster to deserialize a lot of small objects." #: ../../../Misc/NEWS:1408 msgid "" "`Issue #21271 `__: New keyword only " "parameters in reset_mock call." msgstr "" "`Issue #21271 `__: New keyword only " "parameters in reset_mock call." #: ../../../Misc/NEWS:1413 msgid "" "`Issue #5124 `__: Paste with text selected now " "replaces the selection on X11. This matches how paste works on Windows, Mac, " "most modern Linux apps, and ttk widgets. Original patch by Serhiy Storchaka." msgstr "" "`Issue #5124 `__: Paste with text selected now " "replaces the selection on X11. This matches how paste works on Windows, Mac, " "most modern Linux apps, and ttk widgets. Original patch by Serhiy Storchaka." #: ../../../Misc/NEWS:1417 msgid "" "`Issue #24750 `__: Switch all scrollbars in " "IDLE to ttk versions. Where needed, minimal tests are added to cover changes." msgstr "" "`Issue #24750 `__: Switch all scrollbars in " "IDLE to ttk versions. Where needed, minimal tests are added to cover changes." #: ../../../Misc/NEWS:1420 msgid "" "`Issue #24759 `__: IDLE requires tk 8.5 and " "availability ttk widgets. Delete now unneeded tk version tests and code for " "older versions. Add test for IDLE syntax colorizoer." msgstr "" "`Issue #24759 `__: IDLE requires tk 8.5 and " "availability ttk widgets. Delete now unneeded tk version tests and code for " "older versions. Add test for IDLE syntax colorizoer." #: ../../../Misc/NEWS:1424 msgid "" "`Issue #27239 `__: idlelib.macosx.isXyzTk " "functions initialize as needed." msgstr "" "`Issue #27239 `__: idlelib.macosx.isXyzTk " "functions initialize as needed." #: ../../../Misc/NEWS:1426 msgid "" "`Issue #27262 `__: move Aqua unbinding code, " "which enable context menus, to maxosx." msgstr "" "`Issue #27262 `__: move Aqua unbinding code, " "which enable context menus, to maxosx." #: ../../../Misc/NEWS:1428 msgid "" "`Issue #24759 `__: Make clear in idlelib." "idle_test.__init__ that the directory is a private implementation of test." "test_idle and tool for maintainers." msgstr "" "`Issue #24759 `__: Make clear in idlelib." "idle_test.__init__ that the directory is a private implementation of test." "test_idle and tool for maintainers." #: ../../../Misc/NEWS:1431 msgid "" "`Issue #27196 `__: Stop 'ThemeChanged' " "warnings when running IDLE tests. These persisted after other warnings were " "suppressed in #20567. Apply Serhiy Storchaka's update_idletasks solution to " "four test files. Record this additional advice in idle_test/README.txt" msgstr "" "`Issue #27196 `__: Stop 'ThemeChanged' " "warnings when running IDLE tests. These persisted after other warnings were " "suppressed in #20567. Apply Serhiy Storchaka's update_idletasks solution to " "four test files. Record this additional advice in idle_test/README.txt" #: ../../../Misc/NEWS:1436 msgid "" "`Issue #20567 `__: Revise idle_test/README." "txt with advice about avoiding tk warning messages from tests. Apply advice " "to several IDLE tests." msgstr "" "`Issue #20567 `__: Revise idle_test/README." "txt with advice about avoiding tk warning messages from tests. Apply advice " "to several IDLE tests." #: ../../../Misc/NEWS:1439 msgid "" "`Issue #24225 `__: Update idlelib/README.txt " "with new file names and event handlers." msgstr "" "`Issue #24225 `__: Update idlelib/README.txt " "with new file names and event handlers." #: ../../../Misc/NEWS:1442 msgid "" "`Issue #27156 `__: Remove obsolete code not " "used by IDLE. Replacements: 1. help.txt, replaced by help.html, is out-of-" "date and should not be used. Its dedicated viewer has be replaced by the " "html viewer in help.py. 2. ``import idlever; I = idlever.IDLE_VERSION`` is " "the same as ``import sys; I = version[:version.index(' ')]`` 3. After ``ob = " "stackviewer.VariablesTreeItem(*args)``, ``ob.keys() == list(ob.object." "keys)``. 4. In macosc, runningAsOSXAPP == isAquaTk; idCarbonAquaTk == " "isCarbonTk" msgstr "" "`Issue #27156 `__: Remove obsolete code not " "used by IDLE. Replacements: 1. help.txt, replaced by help.html, is out-of-" "date and should not be used. Its dedicated viewer has be replaced by the " "html viewer in help.py. 2. ``import idlever; I = idlever.IDLE_VERSION`` is " "the same as ``import sys; I = version[:version.index(' ')]`` 3. After ``ob = " "stackviewer.VariablesTreeItem(*args)``, ``ob.keys() == list(ob.object." "keys)``. 4. In macosc, runningAsOSXAPP == isAquaTk; idCarbonAquaTk == " "isCarbonTk" #: ../../../Misc/NEWS:1451 msgid "" "`Issue #27117 `__: Make colorizer htest and " "turtledemo work with dark themes. Move code for configuring text widget " "colors to a new function." msgstr "" "`Issue #27117 `__: Make colorizer htest and " "turtledemo work with dark themes. Move code for configuring text widget " "colors to a new function." #: ../../../Misc/NEWS:1454 msgid "" "`Issue #24225 `__: Rename many `idlelib/*.py` " "and `idle_test/test_*.py` files. Edit files to replace old names with new " "names when the old name referred to the module rather than the class it " "contained. See the issue and IDLE section in What's New in 3.6 for more." msgstr "" "`Issue #24225 `__: Rename many `idlelib/*.py` " "and `idle_test/test_*.py` files. Edit files to replace old names with new " "names when the old name referred to the module rather than the class it " "contained. See the issue and IDLE section in What's New in 3.6 for more." #: ../../../Misc/NEWS:1459 msgid "" "`Issue #26673 `__: When tk reports font size " "as 0, change to size 10. Such fonts on Linux prevented the configuration " "dialog from opening." msgstr "" "`Issue #26673 `__: When tk reports font size " "as 0, change to size 10. Such fonts on Linux prevented the configuration " "dialog from opening." #: ../../../Misc/NEWS:1462 msgid "" "`Issue #21939 `__: Add test for IDLE's " "percolator. Original patch by Saimadhav Heblikar." msgstr "" "`Issue #21939 `__: Add test for IDLE's " "percolator. Original patch by Saimadhav Heblikar." #: ../../../Misc/NEWS:1465 msgid "" "`Issue #21676 `__: Add test for IDLE's " "replace dialog. Original patch by Saimadhav Heblikar." msgstr "" "`Issue #21676 `__: Add test for IDLE's " "replace dialog. Original patch by Saimadhav Heblikar." #: ../../../Misc/NEWS:1468 msgid "" "`Issue #18410 `__: Add test for IDLE's search " "dialog. Original patch by Westley Martínez." msgstr "" "`Issue #18410 `__: Add test for IDLE's search " "dialog. Original patch by Westley Martínez." #: ../../../Misc/NEWS:1471 msgid "" "`Issue #21703 `__: Add test for undo " "delegator. Patch mostly by Saimadhav Heblikar ." msgstr "" "`Issue #21703 `__: Add test for undo " "delegator. Patch mostly by Saimadhav Heblikar ." #: ../../../Misc/NEWS:1474 msgid "" "`Issue #27044 `__: Add ConfigDialog." "remove_var_callbacks to stop memory leaks." msgstr "" "`Issue #27044 `__: Add ConfigDialog." "remove_var_callbacks to stop memory leaks." #: ../../../Misc/NEWS:1476 msgid "" "`Issue #23977 `__: Add more asserts to " "test_delegator." msgstr "" "`Issue #23977 `__: Add more asserts to " "test_delegator." #: ../../../Misc/NEWS:1481 msgid "" "`Issue #16484 `__: Change the default " "PYTHONDOCS URL to \"https:\", and fix the resulting links to use lowercase. " "Patch by Sean Rodman, test by Kaushik Nadikuditi." msgstr "" "`Issue #16484 `__: Change the default " "PYTHONDOCS URL to \"https:\", and fix the resulting links to use lowercase. " "Patch by Sean Rodman, test by Kaushik Nadikuditi." #: ../../../Misc/NEWS:1485 msgid "" "`Issue #24136 `__: Document the new PEP 448 " "unpacking syntax of 3.5." msgstr "" "`Issue #24136 `__: Document the new PEP 448 " "unpacking syntax of 3.5." #: ../../../Misc/NEWS:1487 msgid "" "`Issue #22558 `__: Add remaining doc links to " "source code for Python-coded modules. Patch by Yoni Lavi." msgstr "" "`Issue #22558 `__: Add remaining doc links to " "source code for Python-coded modules. Patch by Yoni Lavi." #: ../../../Misc/NEWS:1493 msgid "" "`Issue #25285 `__: regrtest now uses " "subprocesses when the -j1 command line option is used: each test file runs " "in a fresh child process. Before, the -j1 option was ignored." msgstr "" "`Issue #25285 `__: regrtest now uses " "subprocesses when the -j1 command line option is used: each test file runs " "in a fresh child process. Before, the -j1 option was ignored." #: ../../../Misc/NEWS:1497 msgid "" "`Issue #25285 `__: Tools/buildbot/test.bat " "script now uses -j1 by default to run each test file in fresh child process." msgstr "" "`Issue #25285 `__: Tools/buildbot/test.bat " "script now uses -j1 by default to run each test file in fresh child process." #: ../../../Misc/NEWS:1503 msgid "" "`Issue #27064 `__: The py.exe launcher now " "defaults to Python 3. The Windows launcher ``py.exe`` no longer prefers an " "installed Python 2 version over Python 3 by default when used interactively." msgstr "" "`Issue #27064 `__: The py.exe launcher now " "defaults to Python 3. The Windows launcher ``py.exe`` no longer prefers an " "installed Python 2 version over Python 3 by default when used interactively." #: ../../../Misc/NEWS:1510 msgid "" "`Issue #27229 `__: Fix the cross-compiling " "pgen rule for in-tree builds. Patch by Xavier de Gaye." msgstr "" "`Issue #27229 `__: Fix the cross-compiling " "pgen rule for in-tree builds. Patch by Xavier de Gaye." #: ../../../Misc/NEWS:1513 msgid "" "`Issue #26930 `__: Update OS X 10.5+ 32-bit-" "only installer to build and link with OpenSSL 1.0.2h." msgstr "" "`Issue #26930 `__: Update OS X 10.5+ 32-bit-" "only installer to build and link with OpenSSL 1.0.2h." #: ../../../Misc/NEWS:1517 msgid "Misc" msgstr "" #: ../../../Misc/NEWS:1519 msgid "" "`Issue #17500 `__, and https://github.com/" "python/pythondotorg/issues/945: Remove unused and outdated icons." msgstr "" "`Issue #17500 `__, and https://github.com/" "python/pythondotorg/issues/945: Remove unused and outdated icons." #: ../../../Misc/NEWS:1525 msgid "" "`Issue #27186 `__: Add the PyOS_FSPath() " "function (part of PEP 519)." msgstr "" "`Issue #27186 `__: Add the PyOS_FSPath() " "function (part of PEP 519)." #: ../../../Misc/NEWS:1527 msgid "" "`Issue #26282 `__: " "PyArg_ParseTupleAndKeywords() now supports positional-only parameters." msgstr "" "`Issue #26282 `__: " "PyArg_ParseTupleAndKeywords() now supports positional-only parameters." #: ../../../Misc/NEWS:1533 msgid "" "`Issue #26282 `__: Argument Clinic now " "supports positional-only and keyword parameters in the same function." msgstr "" "`Issue #26282 `__: Argument Clinic now " "supports positional-only and keyword parameters in the same function." #: ../../../Misc/NEWS:1538 msgid "Python 3.6.0 alpha 1" msgstr "" #: ../../../Misc/NEWS:1540 msgid "Release date: 2016-05-16" msgstr "" #: ../../../Misc/NEWS:1545 msgid "" "`Issue #20041 `__: Fixed TypeError when frame." "f_trace is set to None. Patch by Xavier de Gaye." msgstr "" "`Issue #20041 `__: Fixed TypeError when frame." "f_trace is set to None. Patch by Xavier de Gaye." #: ../../../Misc/NEWS:1548 msgid "" "`Issue #26168 `__: Fixed possible refleaks in " "failing Py_BuildValue() with the \"N\" format unit." msgstr "" "`Issue #26168 `__: Fixed possible refleaks in " "failing Py_BuildValue() with the \"N\" format unit." #: ../../../Misc/NEWS:1551 msgid "" "`Issue #26991 `__: Fix possible refleak when " "creating a function with annotations." msgstr "" "`Issue #26991 `__: Fix possible refleak when " "creating a function with annotations." #: ../../../Misc/NEWS:1553 msgid "" "`Issue #27039 `__: Fixed bytearray.remove() " "for values greater than 127. Based on patch by Joe Jevnik." msgstr "" "`Issue #27039 `__: Fixed bytearray.remove() " "for values greater than 127. Based on patch by Joe Jevnik." #: ../../../Misc/NEWS:1556 msgid "" "`Issue #23640 `__: int.from_bytes() no longer " "bypasses constructors for subclasses." msgstr "" "`Issue #23640 `__: int.from_bytes() no longer " "bypasses constructors for subclasses." #: ../../../Misc/NEWS:1558 msgid "" "`Issue #27005 `__: Optimized the float." "fromhex() class method for exact float. It is now 2 times faster." msgstr "" "`Issue #27005 `__: Optimized the float." "fromhex() class method for exact float. It is now 2 times faster." #: ../../../Misc/NEWS:1561 msgid "" "`Issue #18531 `__: Single var-keyword " "argument of dict subtype was passed unscathed to the C-defined function. " "Now it is converted to exact dict." msgstr "" "`Issue #18531 `__: Single var-keyword " "argument of dict subtype was passed unscathed to the C-defined function. " "Now it is converted to exact dict." #: ../../../Misc/NEWS:1564 msgid "" "`Issue #26811 `__: gc.get_objects() no longer " "contains a broken tuple with NULL pointer." msgstr "" "`Issue #26811 `__: gc.get_objects() no longer " "contains a broken tuple with NULL pointer." #: ../../../Misc/NEWS:1567 msgid "" "`Issue #20120 `__: Use RawConfigParser for ." "pypirc parsing, removing support for interpolation unintentionally added " "with move to Python 3. Behavior no longer does any interpolation in .pypirc " "files, matching behavior in Python 2.7 and Setuptools 19.0." msgstr "" "`Issue #20120 `__: Use RawConfigParser for ." "pypirc parsing, removing support for interpolation unintentionally added " "with move to Python 3. Behavior no longer does any interpolation in .pypirc " "files, matching behavior in Python 2.7 and Setuptools 19.0." #: ../../../Misc/NEWS:1573 msgid "" "`Issue #26249 `__: Memory functions of the :c:" "func:`PyMem_Malloc` domain (:c:data:`PYMEM_DOMAIN_MEM`) now use the :ref:" "`pymalloc allocator ` rather than system :c:func:`malloc`. " "Applications calling :c:func:`PyMem_Malloc` without holding the GIL can now " "crash: use ``PYTHONMALLOC=debug`` environment variable to validate the usage " "of memory allocators in your application." msgstr "" "`Issue #26249 `__: Memory functions of the :c:" "func:`PyMem_Malloc` domain (:c:data:`PYMEM_DOMAIN_MEM`) now use the :ref:" "`pymalloc allocator ` rather than system :c:func:`malloc`. " "Applications calling :c:func:`PyMem_Malloc` without holding the GIL can now " "crash: use ``PYTHONMALLOC=debug`` environment variable to validate the usage " "of memory allocators in your application." #: ../../../Misc/NEWS:1580 msgid "" "`Issue #26802 `__: Optimize function calls " "only using unpacking like ``func(*tuple)`` (no other positional argument, no " "keyword): avoid copying the tuple. Patch written by Joe Jevnik." msgstr "" "`Issue #26802 `__: Optimize function calls " "only using unpacking like ``func(*tuple)`` (no other positional argument, no " "keyword): avoid copying the tuple. Patch written by Joe Jevnik." #: ../../../Misc/NEWS:1584 msgid "" "`Issue #26659 `__: Make the builtin slice " "type support cycle collection." msgstr "" "`Issue #26659 `__: Make the builtin slice " "type support cycle collection." #: ../../../Misc/NEWS:1586 msgid "" "`Issue #26718 `__: super.__init__ no longer " "leaks memory if called multiple times. NOTE: A direct call of super.__init__ " "is not endorsed!" msgstr "" "`Issue #26718 `__: super.__init__ no longer " "leaks memory if called multiple times. NOTE: A direct call of super.__init__ " "is not endorsed!" #: ../../../Misc/NEWS:1589 msgid "" "`Issue #27138 `__: Fix the doc comment for " "FileFinder.find_spec()." msgstr "" "`Issue #27138 `__: Fix the doc comment for " "FileFinder.find_spec()." #: ../../../Misc/NEWS:1591 msgid "" "`Issue #27147 `__: Mention PEP 420 in the " "importlib docs." msgstr "" "`Issue #27147 `__: Mention PEP 420 in the " "importlib docs." #: ../../../Misc/NEWS:1593 msgid "" "`Issue #25339 `__: PYTHONIOENCODING now has " "priority over locale in setting the error handler for stdin and stdout." msgstr "" "`Issue #25339 `__: PYTHONIOENCODING now has " "priority over locale in setting the error handler for stdin and stdout." #: ../../../Misc/NEWS:1596 msgid "" "`Issue #26494 `__: Fixed crash on iterating " "exhausting iterators. Affected classes are generic sequence iterators, " "iterators of str, bytes, bytearray, list, tuple, set, frozenset, dict, " "OrderedDict, corresponding views and os.scandir() iterator." msgstr "" "`Issue #26494 `__: Fixed crash on iterating " "exhausting iterators. Affected classes are generic sequence iterators, " "iterators of str, bytes, bytearray, list, tuple, set, frozenset, dict, " "OrderedDict, corresponding views and os.scandir() iterator." #: ../../../Misc/NEWS:1601 msgid "" "`Issue #26574 `__: Optimize ``bytes." "replace(b'', b'.')`` and ``bytearray.replace(b'', b'.')``. Patch written by " "Josh Snider." msgstr "" "`Issue #26574 `__: Optimize ``bytes." "replace(b'', b'.')`` and ``bytearray.replace(b'', b'.')``. Patch written by " "Josh Snider." #: ../../../Misc/NEWS:1604 msgid "" "`Issue #26581 `__: If coding cookie is " "specified multiple times on a line in Python source code file, only the " "first one is taken to account." msgstr "" "`Issue #26581 `__: If coding cookie is " "specified multiple times on a line in Python source code file, only the " "first one is taken to account." #: ../../../Misc/NEWS:1607 msgid "" "`Issue #19711 `__: Add tests for reloading " "namespace packages." msgstr "" "`Issue #19711 `__: Add tests for reloading " "namespace packages." #: ../../../Misc/NEWS:1609 msgid "" "`Issue #21099 `__: Switch applicable " "importlib tests to use PEP 451 API." msgstr "" "`Issue #21099 `__: Switch applicable " "importlib tests to use PEP 451 API." #: ../../../Misc/NEWS:1611 msgid "" "`Issue #26563 `__: Debug hooks on Python " "memory allocators now raise a fatal error if functions of the :c:func:" "`PyMem_Malloc` family are called without holding the GIL." msgstr "" "`Issue #26563 `__: Debug hooks on Python " "memory allocators now raise a fatal error if functions of the :c:func:" "`PyMem_Malloc` family are called without holding the GIL." #: ../../../Misc/NEWS:1615 msgid "" "`Issue #26564 `__: On error, the debug hooks " "on Python memory allocators now use the :mod:`tracemalloc` module to get the " "traceback where a memory block was allocated." msgstr "" "`Issue #26564 `__: On error, the debug hooks " "on Python memory allocators now use the :mod:`tracemalloc` module to get the " "traceback where a memory block was allocated." #: ../../../Misc/NEWS:1619 msgid "" "`Issue #26558 `__: The debug hooks on Python " "memory allocator :c:func:`PyObject_Malloc` now detect when functions are " "called without holding the GIL." msgstr "" "`Issue #26558 `__: The debug hooks on Python " "memory allocator :c:func:`PyObject_Malloc` now detect when functions are " "called without holding the GIL." #: ../../../Misc/NEWS:1623 msgid "" "`Issue #26516 `__: Add :envvar:`PYTHONMALLOC` " "environment variable to set the Python memory allocators and/or install " "debug hooks." msgstr "" "`Issue #26516 `__: Add :envvar:`PYTHONMALLOC` " "environment variable to set the Python memory allocators and/or install " "debug hooks." #: ../../../Misc/NEWS:1626 msgid "" "`Issue #26516 `__: The :c:func:" "`PyMem_SetupDebugHooks` function can now also be used on Python compiled in " "release mode." msgstr "" "`Issue #26516 `__: The :c:func:" "`PyMem_SetupDebugHooks` function can now also be used on Python compiled in " "release mode." #: ../../../Misc/NEWS:1629 msgid "" "`Issue #26516 `__: The :envvar:" "`PYTHONMALLOCSTATS` environment variable can now also be used on Python " "compiled in release mode. It now has no effect if set to an empty string." msgstr "" "`Issue #26516 `__: The :envvar:" "`PYTHONMALLOCSTATS` environment variable can now also be used on Python " "compiled in release mode. It now has no effect if set to an empty string." #: ../../../Misc/NEWS:1633 msgid "" "`Issue #26516 `__: In debug mode, debug hooks " "are now also installed on Python memory allocators when Python is configured " "without pymalloc." msgstr "" "`Issue #26516 `__: In debug mode, debug hooks " "are now also installed on Python memory allocators when Python is configured " "without pymalloc." #: ../../../Misc/NEWS:1636 msgid "" "`Issue #26464 `__: Fix str.translate() when " "string is ASCII and first replacements removes character, but next " "replacement uses a non-ASCII character or a string longer than 1 character. " "Regression introduced in Python 3.5.0." msgstr "" "`Issue #26464 `__: Fix str.translate() when " "string is ASCII and first replacements removes character, but next " "replacement uses a non-ASCII character or a string longer than 1 character. " "Regression introduced in Python 3.5.0." #: ../../../Misc/NEWS:1640 msgid "" "`Issue #22836 `__: Ensure exception reports " "from PyErr_Display() and PyErr_WriteUnraisable() are sensible even when " "formatting them produces secondary errors. This affects the reports " "produced by sys.__excepthook__() and when __del__() raises an exception." msgstr "" "`Issue #22836 `__: Ensure exception reports " "from PyErr_Display() and PyErr_WriteUnraisable() are sensible even when " "formatting them produces secondary errors. This affects the reports " "produced by sys.__excepthook__() and when __del__() raises an exception." #: ../../../Misc/NEWS:1645 msgid "" "`Issue #26302 `__: Correct behavior to reject " "comma as a legal character for cookie names." msgstr "" "`Issue #26302 `__: Correct behavior to reject " "comma as a legal character for cookie names." #: ../../../Misc/NEWS:1648 msgid "" "`Issue #26136 `__: Upgrade the warning when a " "generator raises StopIteration from PendingDeprecationWarning to " "DeprecationWarning. Patch by Anish Shah." msgstr "" "`Issue #26136 `__: Upgrade the warning when a " "generator raises StopIteration from PendingDeprecationWarning to " "DeprecationWarning. Patch by Anish Shah." #: ../../../Misc/NEWS:1652 msgid "" "`Issue #26204 `__: The compiler now ignores " "all constant statements: bytes, str, int, float, complex, name constants " "(None, False, True), Ellipsis and ast.Constant; not only str and int. For " "example, ``1.0`` is now ignored in ``def f(): 1.0``." msgstr "" "`Issue #26204 `__: The compiler now ignores " "all constant statements: bytes, str, int, float, complex, name constants " "(None, False, True), Ellipsis and ast.Constant; not only str and int. For " "example, ``1.0`` is now ignored in ``def f(): 1.0``." #: ../../../Misc/NEWS:1657 msgid "" "`Issue #4806 `__: Avoid masking the original " "TypeError exception when using star (*) unpacking in function calls. Based " "on patch by Hagen Fürstenau and Daniel Urban." msgstr "" "`Issue #4806 `__: Avoid masking the original " "TypeError exception when using star (*) unpacking in function calls. Based " "on patch by Hagen Fürstenau and Daniel Urban." #: ../../../Misc/NEWS:1661 msgid "" "`Issue #26146 `__: Add a new kind of AST " "node: ``ast.Constant``. It can be used by external AST optimizers, but the " "compiler does not emit directly such node." msgstr "" "`Issue #26146 `__: Add a new kind of AST " "node: ``ast.Constant``. It can be used by external AST optimizers, but the " "compiler does not emit directly such node." #: ../../../Misc/NEWS:1665 msgid "" "`Issue #23601 `__: Sped-up allocation of " "dict key objects by using Python's small object allocator. (Contributed by " "Julian Taylor.)" msgstr "" "`Issue #23601 `__: Sped-up allocation of " "dict key objects by using Python's small object allocator. (Contributed by " "Julian Taylor.)" #: ../../../Misc/NEWS:1668 msgid "" "`Issue #18018 `__: Import raises ImportError " "instead of SystemError if a relative import is attempted without a known " "parent package." msgstr "" "`Issue #18018 `__: Import raises ImportError " "instead of SystemError if a relative import is attempted without a known " "parent package." #: ../../../Misc/NEWS:1671 msgid "" "`Issue #25843 `__: When compiling code, don't " "merge constants if they are equal but have a different types. For example, " "``f1, f2 = lambda: 1, lambda: 1.0`` is now correctly compiled to two " "different functions: ``f1()`` returns ``1`` (``int``) and ``f2()`` returns " "``1.0`` (``float``), even if ``1`` and ``1.0`` are equal." msgstr "" "`Issue #25843 `__: When compiling code, don't " "merge constants if they are equal but have a different types. For example, " "``f1, f2 = lambda: 1, lambda: 1.0`` is now correctly compiled to two " "different functions: ``f1()`` returns ``1`` (``int``) and ``f2()`` returns " "``1.0`` (``float``), even if ``1`` and ``1.0`` are equal." #: ../../../Misc/NEWS:1677 msgid "" "`Issue #26107 `__: The format of the " "``co_lnotab`` attribute of code objects changes to support negative line " "number delta." msgstr "" "`Issue #26107 `__: The format of the " "``co_lnotab`` attribute of code objects changes to support negative line " "number delta." #: ../../../Misc/NEWS:1680 msgid "" "`Issue #26154 `__: Add a new private " "_PyThreadState_UncheckedGet() function to get the current Python thread " "state, but don't issue a fatal error if it is NULL. This new function must " "be used instead of accessing directly the _PyThreadState_Current variable. " "The variable is no more exposed since Python 3.5.1 to hide the exact " "implementation of atomic C types, to avoid compiler issues." msgstr "" "`Issue #26154 `__: Add a new private " "_PyThreadState_UncheckedGet() function to get the current Python thread " "state, but don't issue a fatal error if it is NULL. This new function must " "be used instead of accessing directly the _PyThreadState_Current variable. " "The variable is no more exposed since Python 3.5.1 to hide the exact " "implementation of atomic C types, to avoid compiler issues." #: ../../../Misc/NEWS:1687 msgid "" "`Issue #25791 `__: If __package__ != __spec__." "parent or if neither __package__ or __spec__ are defined then ImportWarning " "is raised." msgstr "" "`Issue #25791 `__: If __package__ != __spec__." "parent or if neither __package__ or __spec__ are defined then ImportWarning " "is raised." #: ../../../Misc/NEWS:1690 msgid "" "`Issue #22995 `__: [UPDATE] Comment out the " "one of the pickleability tests in _PyObject_GetState() due to regressions " "observed in Cython-based projects." msgstr "" "`Issue #22995 `__: [UPDATE] Comment out the " "one of the pickleability tests in _PyObject_GetState() due to regressions " "observed in Cython-based projects." #: ../../../Misc/NEWS:1693 msgid "" "`Issue #25961 `__: Disallowed null characters " "in the type name." msgstr "" "`Issue #25961 `__: Disallowed null characters " "in the type name." #: ../../../Misc/NEWS:1695 msgid "" "`Issue #25973 `__: Fix segfault when an " "invalid nonlocal statement binds a name starting with two underscores." msgstr "" "`Issue #25973 `__: Fix segfault when an " "invalid nonlocal statement binds a name starting with two underscores." #: ../../../Misc/NEWS:1698 msgid "" "`Issue #22995 `__: Instances of extension " "types with a state that aren't subclasses of list or dict and haven't " "implemented any pickle-related methods (__reduce__, __reduce_ex__, " "__getnewargs__, __getnewargs_ex__, or __getstate__), can no longer be " "pickled. Including memoryview." msgstr "" "`Issue #22995 `__: Instances of extension " "types with a state that aren't subclasses of list or dict and haven't " "implemented any pickle-related methods (__reduce__, __reduce_ex__, " "__getnewargs__, __getnewargs_ex__, or __getstate__), can no longer be " "pickled. Including memoryview." #: ../../../Misc/NEWS:1703 msgid "" "`Issue #20440 `__: Massive replacing unsafe " "attribute setting code with special macro Py_SETREF." msgstr "" "`Issue #20440 `__: Massive replacing unsafe " "attribute setting code with special macro Py_SETREF." #: ../../../Misc/NEWS:1706 msgid "" "`Issue #25766 `__: Special method __bytes__() " "now works in str subclasses." msgstr "" "`Issue #25766 `__: Special method __bytes__() " "now works in str subclasses." #: ../../../Misc/NEWS:1708 msgid "" "`Issue #25421 `__: __sizeof__ methods of " "builtin types now use dynamic basic size. This allows sys.getsize() to work " "correctly with their subclasses with __slots__ defined." msgstr "" "`Issue #25421 `__: __sizeof__ methods of " "builtin types now use dynamic basic size. This allows sys.getsize() to work " "correctly with their subclasses with __slots__ defined." #: ../../../Misc/NEWS:1712 ../../../Misc/NEWS:2830 msgid "" "`Issue #25709 `__: Fixed problem with in-" "place string concatenation and utf-8 cache." msgstr "" "`Issue #25709 `__: Fixed problem with in-" "place string concatenation and utf-8 cache." #: ../../../Misc/NEWS:1715 msgid "" "`Issue #5319 `__: New Py_FinalizeEx() API " "allowing Python to set an exit status of 120 on failure to flush buffered " "streams." msgstr "" "`Issue #5319 `__: New Py_FinalizeEx() API " "allowing Python to set an exit status of 120 on failure to flush buffered " "streams." #: ../../../Misc/NEWS:1718 msgid "" "`Issue #25485 `__: telnetlib.Telnet is now a " "context manager." msgstr "" "`Issue #25485 `__: telnetlib.Telnet is now a " "context manager." #: ../../../Misc/NEWS:1720 msgid "" "`Issue #24097 `__: Fixed crash in object." "__reduce__() if slot name is freed inside __getattr__." msgstr "" "`Issue #24097 `__: Fixed crash in object." "__reduce__() if slot name is freed inside __getattr__." #: ../../../Misc/NEWS:1723 msgid "" "`Issue #24731 `__: Fixed crash on converting " "objects with special methods __bytes__, __trunc__, and __float__ returning " "instances of subclasses of bytes, int, and float to subclasses of bytes, " "int, and float correspondingly." msgstr "" "`Issue #24731 `__: Fixed crash on converting " "objects with special methods __bytes__, __trunc__, and __float__ returning " "instances of subclasses of bytes, int, and float to subclasses of bytes, " "int, and float correspondingly." #: ../../../Misc/NEWS:1727 ../../../Misc/NEWS:2848 msgid "" "`Issue #25630 `__: Fix a possible segfault " "during argument parsing in functions that accept filesystem paths." msgstr "" "`Issue #25630 `__: Fix a possible segfault " "during argument parsing in functions that accept filesystem paths." #: ../../../Misc/NEWS:1730 ../../../Misc/NEWS:2851 msgid "" "`Issue #23564 `__: Fixed a partially broken " "sanity check in the _posixsubprocess internals regarding how fds_to_pass " "were passed to the child. The bug had no actual impact as subprocess.py " "already avoided it." msgstr "" "`Issue #23564 `__: Fixed a partially broken " "sanity check in the _posixsubprocess internals regarding how fds_to_pass " "were passed to the child. The bug had no actual impact as subprocess.py " "already avoided it." #: ../../../Misc/NEWS:1734 ../../../Misc/NEWS:2855 msgid "" "`Issue #25388 `__: Fixed tokenizer crash when " "processing undecodable source code with a null byte." msgstr "" "`Issue #25388 `__: Fixed tokenizer crash when " "processing undecodable source code with a null byte." #: ../../../Misc/NEWS:1737 ../../../Misc/NEWS:2858 msgid "" "`Issue #25462 `__: The hash of the key now is " "calculated only once in most operations in C implementation of OrderedDict." msgstr "" "`Issue #25462 `__: The hash of the key now is " "calculated only once in most operations in C implementation of OrderedDict." #: ../../../Misc/NEWS:1740 ../../../Misc/NEWS:2861 msgid "" "`Issue #22995 `__: Default implementation of " "__reduce__ and __reduce_ex__ now rejects builtin types with not defined " "__new__." msgstr "" "`Issue #22995 `__: Default implementation of " "__reduce__ and __reduce_ex__ now rejects builtin types with not defined " "__new__." #: ../../../Misc/NEWS:1743 ../../../Misc/NEWS:2867 msgid "" "`Issue #24802 `__: Avoid buffer overreads " "when int(), float(), compile(), exec() and eval() are passed bytes-like " "objects. These objects are not necessarily terminated by a null byte, but " "the functions assumed they were." msgstr "" "`Issue #24802 `__: Avoid buffer overreads " "when int(), float(), compile(), exec() and eval() are passed bytes-like " "objects. These objects are not necessarily terminated by a null byte, but " "the functions assumed they were." #: ../../../Misc/NEWS:1747 ../../../Misc/NEWS:2864 msgid "" "`Issue #25555 `__: Fix parser and AST: fill " "lineno and col_offset of \"arg\" node when compiling AST from Python objects." msgstr "" "`Issue #25555 `__: Fix parser and AST: fill " "lineno and col_offset of \"arg\" node when compiling AST from Python objects." #: ../../../Misc/NEWS:1750 ../../../Misc/NEWS:2871 msgid "" "`Issue #24726 `__: Fixed a crash and leaking " "NULL in repr() of OrderedDict that was mutated by direct calls of dict " "methods." msgstr "" "`Issue #24726 `__: Fixed a crash and leaking " "NULL in repr() of OrderedDict that was mutated by direct calls of dict " "methods." #: ../../../Misc/NEWS:1753 ../../../Misc/NEWS:2874 msgid "" "`Issue #25449 `__: Iterating OrderedDict with " "keys with unstable hash now raises KeyError in C implementations as well as " "in Python implementation." msgstr "" "`Issue #25449 `__: Iterating OrderedDict with " "keys with unstable hash now raises KeyError in C implementations as well as " "in Python implementation." #: ../../../Misc/NEWS:1756 ../../../Misc/NEWS:2877 msgid "" "`Issue #25395 `__: Fixed crash when highly " "nested OrderedDict structures were garbage collected." msgstr "" "`Issue #25395 `__: Fixed crash when highly " "nested OrderedDict structures were garbage collected." #: ../../../Misc/NEWS:1759 msgid "" "`Issue #25401 `__: Optimize bytes.fromhex() " "and bytearray.fromhex(): they are now between 2x and 3.5x faster." msgstr "" "`Issue #25401 `__: Optimize bytes.fromhex() " "and bytearray.fromhex(): they are now between 2x and 3.5x faster." #: ../../../Misc/NEWS:1762 msgid "" "`Issue #25399 `__: Optimize bytearray % args " "using the new private _PyBytesWriter API. Formatting is now between 2.5 and " "5 times faster." msgstr "" "`Issue #25399 `__: Optimize bytearray % args " "using the new private _PyBytesWriter API. Formatting is now between 2.5 and " "5 times faster." #: ../../../Misc/NEWS:1765 ../../../Misc/NEWS:2880 msgid "" "`Issue #25274 `__: sys.setrecursionlimit() " "now raises a RecursionError if the new recursion limit is too low depending " "at the current recursion depth. Modify also the \"lower-water mark\" formula " "to make it monotonic. This mark is used to decide when the overflowed flag " "of the thread state is reset." msgstr "" "`Issue #25274 `__: sys.setrecursionlimit() " "now raises a RecursionError if the new recursion limit is too low depending " "at the current recursion depth. Modify also the \"lower-water mark\" formula " "to make it monotonic. This mark is used to decide when the overflowed flag " "of the thread state is reset." #: ../../../Misc/NEWS:1770 ../../../Misc/NEWS:2885 msgid "" "`Issue #24402 `__: Fix input() to prompt to " "the redirected stdout when sys.stdout.fileno() fails." msgstr "" "`Issue #24402 `__: Fix input() to prompt to " "the redirected stdout when sys.stdout.fileno() fails." #: ../../../Misc/NEWS:1773 msgid "" "`Issue #25349 `__: Optimize bytes % args " "using the new private _PyBytesWriter API. Formatting is now up to 2 times " "faster." msgstr "" "`Issue #25349 `__: Optimize bytes % args " "using the new private _PyBytesWriter API. Formatting is now up to 2 times " "faster." #: ../../../Misc/NEWS:1776 ../../../Misc/NEWS:2888 msgid "" "`Issue #24806 `__: Prevent builtin types that " "are not allowed to be subclassed from being subclassed through multiple " "inheritance." msgstr "" "`Issue #24806 `__: Prevent builtin types that " "are not allowed to be subclassed from being subclassed through multiple " "inheritance." #: ../../../Misc/NEWS:1779 msgid "" "`Issue #25301 `__: The UTF-8 decoder is now " "up to 15 times as fast for error handlers: ``ignore``, ``replace`` and " "``surrogateescape``." msgstr "" "`Issue #25301 `__: The UTF-8 decoder is now " "up to 15 times as fast for error handlers: ``ignore``, ``replace`` and " "``surrogateescape``." #: ../../../Misc/NEWS:1782 ../../../Misc/NEWS:2891 msgid "" "`Issue #24848 `__: Fixed a number of bugs in " "UTF-7 decoding of misformed data." msgstr "" "`Issue #24848 `__: Fixed a number of bugs in " "UTF-7 decoding of misformed data." #: ../../../Misc/NEWS:1784 msgid "" "`Issue #25267 `__: The UTF-8 encoder is now " "up to 75 times as fast for error handlers: ``ignore``, ``replace``, " "``surrogateescape``, ``surrogatepass``. Patch co-written with Serhiy " "Storchaka." msgstr "" "`Issue #25267 `__: The UTF-8 encoder is now " "up to 75 times as fast for error handlers: ``ignore``, ``replace``, " "``surrogateescape``, ``surrogatepass``. Patch co-written with Serhiy " "Storchaka." #: ../../../Misc/NEWS:1788 ../../../Misc/NEWS:2893 msgid "" "`Issue #25280 `__: Import trace messages " "emitted in verbose (-v) mode are no longer formatted twice." msgstr "" "`Issue #25280 `__: Import trace messages " "emitted in verbose (-v) mode are no longer formatted twice." #: ../../../Misc/NEWS:1791 msgid "" "`Issue #25227 `__: Optimize ASCII and latin1 " "encoders with the ``surrogateescape`` error handler: the encoders are now up " "to 3 times as fast. Initial patch written by Serhiy Storchaka." msgstr "" "`Issue #25227 `__: Optimize ASCII and latin1 " "encoders with the ``surrogateescape`` error handler: the encoders are now up " "to 3 times as fast. Initial patch written by Serhiy Storchaka." #: ../../../Misc/NEWS:1795 ../../../Misc/NEWS:2896 msgid "" "`Issue #25003 `__: On Solaris 11.3 or newer, " "os.urandom() now uses the getrandom() function instead of the getentropy() " "function. The getentropy() function is blocking to generate very good " "quality entropy, os.urandom() doesn't need such high-quality entropy." msgstr "" "`Issue #25003 `__: On Solaris 11.3 or newer, " "os.urandom() now uses the getrandom() function instead of the getentropy() " "function. The getentropy() function is blocking to generate very good " "quality entropy, os.urandom() doesn't need such high-quality entropy." #: ../../../Misc/NEWS:1800 msgid "" "`Issue #9232 `__: Modify Python's grammar to " "allow trailing commas in the argument list of a function declaration. For " "example, \"def f(\\*, a = 3,): pass\" is now legal. Patch from Mark " "Dickinson." msgstr "" "`Issue #9232 `__: Modify Python's grammar to " "allow trailing commas in the argument list of a function declaration. For " "example, \"def f(\\*, a = 3,): pass\" is now legal. Patch from Mark " "Dickinson." #: ../../../Misc/NEWS:1804 msgid "" "`Issue #24965 `__: Implement PEP 498 " "\"Literal String Interpolation\". This allows you to embed expressions " "inside f-strings, which are converted to normal strings at run time. Given " "x=3, then f'value={x}' == 'value=3'. Patch by Eric V. Smith." msgstr "" "`Issue #24965 `__: Implement PEP 498 " "\"Literal String Interpolation\". This allows you to embed expressions " "inside f-strings, which are converted to normal strings at run time. Given " "x=3, then f'value={x}' == 'value=3'. Patch by Eric V. Smith." #: ../../../Misc/NEWS:1809 msgid "" "`Issue #26478 `__: Fix semantic bugs when " "using binary operators with dictionary views and tuples." msgstr "" "`Issue #26478 `__: Fix semantic bugs when " "using binary operators with dictionary views and tuples." #: ../../../Misc/NEWS:1812 msgid "" "`Issue #26171 `__: Fix possible integer " "overflow and heap corruption in zipimporter.get_data()." msgstr "" "`Issue #26171 `__: Fix possible integer " "overflow and heap corruption in zipimporter.get_data()." #: ../../../Misc/NEWS:1815 msgid "" "`Issue #25660 `__: Fix TAB key behaviour in " "REPL with readline." msgstr "" "`Issue #25660 `__: Fix TAB key behaviour in " "REPL with readline." #: ../../../Misc/NEWS:1817 msgid "" "`Issue #26288 `__: Optimize PyLong_AsDouble." msgstr "" "`Issue #26288 `__: Optimize PyLong_AsDouble." #: ../../../Misc/NEWS:1819 msgid "" "Issues #26289 and #26315: Optimize floor and modulo division for single-" "digit longs. Microbenchmarks show 2-2.5x improvement. Built-in 'divmod' " "function is now also ~10% faster." msgstr "" #: ../../../Misc/NEWS:1823 msgid "" "`Issue #25887 `__: Raise a RuntimeError when " "a coroutine object is awaited more than once." msgstr "" "`Issue #25887 `__: Raise a RuntimeError when " "a coroutine object is awaited more than once." #: ../../../Misc/NEWS:1829 msgid "" "`Issue #27057 `__: Fix os.set_inheritable() " "on Android, ioctl() is blocked by SELinux and fails with EACCESS. The " "function now falls back to fcntl(). Patch written by Michał Bednarski." msgstr "" "`Issue #27057 `__: Fix os.set_inheritable() " "on Android, ioctl() is blocked by SELinux and fails with EACCESS. The " "function now falls back to fcntl(). Patch written by Michał Bednarski." #: ../../../Misc/NEWS:1833 msgid "" "`Issue #27014 `__: Fix infinite recursion " "using typing.py. Thanks to Kalle Tuure!" msgstr "" "`Issue #27014 `__: Fix infinite recursion " "using typing.py. Thanks to Kalle Tuure!" #: ../../../Misc/NEWS:1835 msgid "" "`Issue #27031 `__: Removed dummy methods in " "Tkinter widget classes: tk_menuBar() and tk_bindForTraversal()." msgstr "" "`Issue #27031 `__: Removed dummy methods in " "Tkinter widget classes: tk_menuBar() and tk_bindForTraversal()." #: ../../../Misc/NEWS:1838 msgid "" "`Issue #14132 `__: Fix urllib.request " "redirect handling when the target only has a query string. Original fix by " "Ján Janech." msgstr "" "`Issue #14132 `__: Fix urllib.request " "redirect handling when the target only has a query string. Original fix by " "Ján Janech." #: ../../../Misc/NEWS:1841 msgid "" "`Issue #17214 `__: The \"urllib.request\" " "module now percent-encodes non-ASCII bytes found in redirect target URLs. " "Some servers send Location header fields with non-ASCII bytes, but \"http." "client\" requires the request target to be ASCII-encodable, otherwise a " "UnicodeEncodeError is raised. Based on patch by Christian Heimes." msgstr "" "`Issue #17214 `__: The \"urllib.request\" " "module now percent-encodes non-ASCII bytes found in redirect target URLs. " "Some servers send Location header fields with non-ASCII bytes, but \"http." "client\" requires the request target to be ASCII-encodable, otherwise a " "UnicodeEncodeError is raised. Based on patch by Christian Heimes." #: ../../../Misc/NEWS:1847 msgid "" "`Issue #27033 `__: The default value of the " "decode_data parameter for smtpd.SMTPChannel and smtpd.SMTPServer " "constructors is changed to False." msgstr "" "`Issue #27033 `__: The default value of the " "decode_data parameter for smtpd.SMTPChannel and smtpd.SMTPServer " "constructors is changed to False." #: ../../../Misc/NEWS:1850 msgid "" "`Issue #27034 `__: Removed deprecated class " "asynchat.fifo." msgstr "" "`Issue #27034 `__: Removed deprecated class " "asynchat.fifo." #: ../../../Misc/NEWS:1852 msgid "" "`Issue #26870 `__: Added readline." "set_auto_history(), which can stop entries being automatically added to the " "history list. Based on patch by Tyler Crompton." msgstr "" "`Issue #26870 `__: Added readline." "set_auto_history(), which can stop entries being automatically added to the " "history list. Based on patch by Tyler Crompton." #: ../../../Misc/NEWS:1856 msgid "" "`Issue #26039 `__: zipfile.ZipFile.open() can " "now be used to write data into a ZIP file, as well as for extracting data. " "Patch by Thomas Kluyver." msgstr "" "`Issue #26039 `__: zipfile.ZipFile.open() can " "now be used to write data into a ZIP file, as well as for extracting data. " "Patch by Thomas Kluyver." #: ../../../Misc/NEWS:1859 msgid "" "`Issue #26892 `__: Honor debuglevel flag in " "urllib.request.HTTPHandler. Patch contributed by Chi Hsuan Yen." msgstr "" "`Issue #26892 `__: Honor debuglevel flag in " "urllib.request.HTTPHandler. Patch contributed by Chi Hsuan Yen." #: ../../../Misc/NEWS:1862 msgid "" "`Issue #22274 `__: In the subprocess module, " "allow stderr to be redirected to stdout even when stdout is not redirected. " "Patch by Akira Li." msgstr "" "`Issue #22274 `__: In the subprocess module, " "allow stderr to be redirected to stdout even when stdout is not redirected. " "Patch by Akira Li." #: ../../../Misc/NEWS:1865 msgid "" "`Issue #26807 `__: mock_open 'files' no " "longer error on readline at end of file. Patch from Yolanda Robla." msgstr "" "`Issue #26807 `__: mock_open 'files' no " "longer error on readline at end of file. Patch from Yolanda Robla." #: ../../../Misc/NEWS:1868 msgid "" "`Issue #25745 `__: Fixed leaking a userptr in " "curses panel destructor." msgstr "" "`Issue #25745 `__: Fixed leaking a userptr in " "curses panel destructor." #: ../../../Misc/NEWS:1870 msgid "" "`Issue #26977 `__: Removed unnecessary, and " "ignored, call to sum of squares helper in statistics.pvariance." msgstr "" "`Issue #26977 `__: Removed unnecessary, and " "ignored, call to sum of squares helper in statistics.pvariance." #: ../../../Misc/NEWS:1873 msgid "" "`Issue #26002 `__: Use bisect in statistics." "median instead of a linear search. Patch by Upendra Kuma." msgstr "" "`Issue #26002 `__: Use bisect in statistics." "median instead of a linear search. Patch by Upendra Kuma." #: ../../../Misc/NEWS:1876 msgid "" "`Issue #25974 `__: Make use of new Decimal." "as_integer_ratio() method in statistics module. Patch by Stefan Krah." msgstr "" "`Issue #25974 `__: Make use of new Decimal." "as_integer_ratio() method in statistics module. Patch by Stefan Krah." #: ../../../Misc/NEWS:1879 msgid "" "`Issue #26996 `__: Add secrets module as " "described in PEP 506." msgstr "" "`Issue #26996 `__: Add secrets module as " "described in PEP 506." #: ../../../Misc/NEWS:1881 msgid "" "`Issue #26881 `__: The modulefinder module " "now supports extended opcode arguments." msgstr "" "`Issue #26881 `__: The modulefinder module " "now supports extended opcode arguments." #: ../../../Misc/NEWS:1883 msgid "" "`Issue #23815 `__: Fixed crashes related to " "directly created instances of types in _tkinter and curses.panel modules." msgstr "" "`Issue #23815 `__: Fixed crashes related to " "directly created instances of types in _tkinter and curses.panel modules." #: ../../../Misc/NEWS:1886 msgid "" "`Issue #17765 `__: weakref.ref() no longer " "silently ignores keyword arguments. Patch by Georg Brandl." msgstr "" "`Issue #17765 `__: weakref.ref() no longer " "silently ignores keyword arguments. Patch by Georg Brandl." #: ../../../Misc/NEWS:1889 msgid "" "`Issue #26873 `__: xmlrpc now raises " "ResponseError on unsupported type tags instead of silently return incorrect " "result." msgstr "" "`Issue #26873 `__: xmlrpc now raises " "ResponseError on unsupported type tags instead of silently return incorrect " "result." #: ../../../Misc/NEWS:1892 msgid "" "`Issue #26915 `__: The __contains__ methods " "in the collections ABCs now check for identity before checking equality. " "This better matches the behavior of the concrete classes, allows sensible " "handling of NaNs, and makes it easier to reason about container invariants." msgstr "" "`Issue #26915 `__: The __contains__ methods " "in the collections ABCs now check for identity before checking equality. " "This better matches the behavior of the concrete classes, allows sensible " "handling of NaNs, and makes it easier to reason about container invariants." #: ../../../Misc/NEWS:1897 msgid "" "`Issue #26711 `__: Fixed the comparison of " "plistlib.Data with other types." msgstr "" "`Issue #26711 `__: Fixed the comparison of " "plistlib.Data with other types." #: ../../../Misc/NEWS:1899 msgid "" "`Issue #24114 `__: Fix an uninitialized " "variable in `ctypes.util`." msgstr "" "`Issue #24114 `__: Fix an uninitialized " "variable in `ctypes.util`." #: ../../../Misc/NEWS:1901 msgid "" "The bug only occurs on SunOS when the ctypes implementation searches for the " "`crle` program. Patch by Xiang Zhang. Tested on SunOS by Kees Bos." msgstr "" #: ../../../Misc/NEWS:1905 msgid "" "`Issue #26864 `__: In urllib.request, change " "the proxy bypass host checking against no_proxy to be case-insensitive, and " "to not match unrelated host names that happen to have a bypassed hostname as " "a suffix. Patch by Xiang Zhang." msgstr "" "`Issue #26864 `__: In urllib.request, change " "the proxy bypass host checking against no_proxy to be case-insensitive, and " "to not match unrelated host names that happen to have a bypassed hostname as " "a suffix. Patch by Xiang Zhang." #: ../../../Misc/NEWS:1910 msgid "" "`Issue #24902 `__: Print server URL on http." "server startup. Initial patch by Felix Kaiser." msgstr "" "`Issue #24902 `__: Print server URL on http." "server startup. Initial patch by Felix Kaiser." #: ../../../Misc/NEWS:1913 msgid "" "`Issue #25788 `__: fileinput.hook_encoded() " "now supports an \"errors\" argument for passing to open. Original patch by " "Joseph Hackman." msgstr "" "`Issue #25788 `__: fileinput.hook_encoded() " "now supports an \"errors\" argument for passing to open. Original patch by " "Joseph Hackman." #: ../../../Misc/NEWS:1916 msgid "" "`Issue #26634 `__: recursive_repr() now sets " "__qualname__ of wrapper. Patch by Xiang Zhang." msgstr "" "`Issue #26634 `__: recursive_repr() now sets " "__qualname__ of wrapper. Patch by Xiang Zhang." #: ../../../Misc/NEWS:1919 msgid "" "`Issue #26804 `__: urllib.request will prefer " "lower_case proxy environment variables over UPPER_CASE or Mixed_Case ones. " "Patch contributed by Hans-Peter Jansen." msgstr "" "`Issue #26804 `__: urllib.request will prefer " "lower_case proxy environment variables over UPPER_CASE or Mixed_Case ones. " "Patch contributed by Hans-Peter Jansen." #: ../../../Misc/NEWS:1923 msgid "" "`Issue #26837 `__: assertSequenceEqual() now " "correctly outputs non-stringified differing items (like bytes in the -b " "mode). This affects assertListEqual() and assertTupleEqual()." msgstr "" "`Issue #26837 `__: assertSequenceEqual() now " "correctly outputs non-stringified differing items (like bytes in the -b " "mode). This affects assertListEqual() and assertTupleEqual()." #: ../../../Misc/NEWS:1927 msgid "" "`Issue #26041 `__: Remove \"will be removed " "in Python 3.7\" from deprecation messages of platform.dist() and platform." "linux_distribution(). Patch by Kumaripaba Miyurusara Athukorala." msgstr "" "`Issue #26041 `__: Remove \"will be removed " "in Python 3.7\" from deprecation messages of platform.dist() and platform." "linux_distribution(). Patch by Kumaripaba Miyurusara Athukorala." #: ../../../Misc/NEWS:1931 msgid "" "`Issue #26822 `__: itemgetter, attrgetter and " "methodcaller objects no longer silently ignore keyword arguments." msgstr "" "`Issue #26822 `__: itemgetter, attrgetter and " "methodcaller objects no longer silently ignore keyword arguments." #: ../../../Misc/NEWS:1934 msgid "" "`Issue #26733 `__: Disassembling a class now " "disassembles class and static methods. Patch by Xiang Zhang." msgstr "" "`Issue #26733 `__: Disassembling a class now " "disassembles class and static methods. Patch by Xiang Zhang." #: ../../../Misc/NEWS:1937 msgid "" "`Issue #26801 `__: Fix error handling in :" "func:`shutil.get_terminal_size`, catch :exc:`AttributeError` instead of :exc:" "`NameError`. Patch written by Emanuel Barry." msgstr "" "`Issue #26801 `__: Fix error handling in :" "func:`shutil.get_terminal_size`, catch :exc:`AttributeError` instead of :exc:" "`NameError`. Patch written by Emanuel Barry." #: ../../../Misc/NEWS:1941 msgid "" "`Issue #24838 `__: tarfile's ustar and gnu " "formats now correctly calculate name and link field limits for multibyte " "character encodings like utf-8." msgstr "" "`Issue #24838 `__: tarfile's ustar and gnu " "formats now correctly calculate name and link field limits for multibyte " "character encodings like utf-8." #: ../../../Misc/NEWS:1944 msgid "" "[Security] `Issue #26657 `__: Fix directory " "traversal vulnerability with http.server on Windows. This fixes a " "regression that was introduced in 3.3.4rc1 and 3.4.0rc1. Based on patch by " "Philipp Hagemeister." msgstr "" #: ../../../Misc/NEWS:1948 msgid "" "`Issue #26717 `__: Stop encoding Latin-1-ized " "WSGI paths with UTF-8. Patch by Anthony Sottile." msgstr "" "`Issue #26717 `__: Stop encoding Latin-1-ized " "WSGI paths with UTF-8. Patch by Anthony Sottile." #: ../../../Misc/NEWS:1951 msgid "" "`Issue #26782 `__: Add STARTUPINFO to " "subprocess.__all__ on Windows." msgstr "" "`Issue #26782 `__: Add STARTUPINFO to " "subprocess.__all__ on Windows." #: ../../../Misc/NEWS:1953 msgid "" "`Issue #26404 `__: Add context manager to " "socketserver. Patch by Aviv Palivoda." msgstr "" "`Issue #26404 `__: Add context manager to " "socketserver. Patch by Aviv Palivoda." #: ../../../Misc/NEWS:1955 msgid "" "`Issue #26735 `__: Fix :func:`os.urandom` on " "Solaris 11.3 and newer when reading more than 1,024 bytes: call " "``getrandom()`` multiple times with a limit of 1024 bytes per call." msgstr "" "`Issue #26735 `__: Fix :func:`os.urandom` on " "Solaris 11.3 and newer when reading more than 1,024 bytes: call " "``getrandom()`` multiple times with a limit of 1024 bytes per call." #: ../../../Misc/NEWS:1959 msgid "" "`Issue #26585 `__: Eliminate http.server." "_quote_html() and use html.escape(quote=False). Patch by Xiang Zhang." msgstr "" "`Issue #26585 `__: Eliminate http.server." "_quote_html() and use html.escape(quote=False). Patch by Xiang Zhang." #: ../../../Misc/NEWS:1962 msgid "" "`Issue #26685 `__: Raise OSError if closing a " "socket fails." msgstr "" "`Issue #26685 `__: Raise OSError if closing a " "socket fails." #: ../../../Misc/NEWS:1964 msgid "" "`Issue #16329 `__: Add .webm to mimetypes." "types_map. Patch by Giampaolo Rodola'." msgstr "" "`Issue #16329 `__: Add .webm to mimetypes." "types_map. Patch by Giampaolo Rodola'." #: ../../../Misc/NEWS:1966 msgid "" "`Issue #13952 `__: Add .csv to mimetypes." "types_map. Patch by Geoff Wilson." msgstr "" "`Issue #13952 `__: Add .csv to mimetypes." "types_map. Patch by Geoff Wilson." #: ../../../Misc/NEWS:1968 msgid "" "`Issue #26587 `__: the site module now " "allows .pth files to specify files to be added to sys.path (e.g. zip files)." msgstr "" "`Issue #26587 `__: the site module now " "allows .pth files to specify files to be added to sys.path (e.g. zip files)." #: ../../../Misc/NEWS:1971 msgid "" "`Issue #25609 `__: Introduce contextlib." "AbstractContextManager and typing.ContextManager." msgstr "" "`Issue #25609 `__: Introduce contextlib." "AbstractContextManager and typing.ContextManager." #: ../../../Misc/NEWS:1974 msgid "" "`Issue #26709 `__: Fixed Y2038 problem in " "loading binary PLists." msgstr "" "`Issue #26709 `__: Fixed Y2038 problem in " "loading binary PLists." #: ../../../Misc/NEWS:1976 msgid "" "`Issue #23735 `__: Handle terminal resizing " "with Readline 6.3+ by installing our own SIGWINCH handler. Patch by Eric " "Price." msgstr "" "`Issue #23735 `__: Handle terminal resizing " "with Readline 6.3+ by installing our own SIGWINCH handler. Patch by Eric " "Price." #: ../../../Misc/NEWS:1979 msgid "" "`Issue #25951 `__: Change SSLSocket.sendall() " "to return None, as explicitly documented for plain socket objects. Patch by " "Aviv Palivoda." msgstr "" "`Issue #25951 `__: Change SSLSocket.sendall() " "to return None, as explicitly documented for plain socket objects. Patch by " "Aviv Palivoda." #: ../../../Misc/NEWS:1982 msgid "" "`Issue #26586 `__: In http.server, respond " "with \"413 Request header fields too large\" if there are too many header " "fields to parse, rather than killing the connection and raising an unhandled " "exception. Patch by Xiang Zhang." msgstr "" "`Issue #26586 `__: In http.server, respond " "with \"413 Request header fields too large\" if there are too many header " "fields to parse, rather than killing the connection and raising an unhandled " "exception. Patch by Xiang Zhang." #: ../../../Misc/NEWS:1986 msgid "" "`Issue #26676 `__: Added missing " "XMLPullParser to ElementTree.__all__." msgstr "" "`Issue #26676 `__: Added missing " "XMLPullParser to ElementTree.__all__." #: ../../../Misc/NEWS:1988 msgid "" "`Issue #22854 `__: Change BufferedReader." "writable() and BufferedWriter.readable() to always return False." msgstr "" "`Issue #22854 `__: Change BufferedReader." "writable() and BufferedWriter.readable() to always return False." #: ../../../Misc/NEWS:1991 msgid "" "`Issue #26492 `__: Exhausted iterator of " "array.array now conforms with the behavior of iterators of other mutable " "sequences: it lefts exhausted even if iterated array is extended." msgstr "" "`Issue #26492 `__: Exhausted iterator of " "array.array now conforms with the behavior of iterators of other mutable " "sequences: it lefts exhausted even if iterated array is extended." #: ../../../Misc/NEWS:1995 msgid "" "`Issue #26641 `__: doctest.DocFileTest and " "doctest.testfile() now support packages (module splitted into multiple " "directories) for the package parameter." msgstr "" "`Issue #26641 `__: doctest.DocFileTest and " "doctest.testfile() now support packages (module splitted into multiple " "directories) for the package parameter." #: ../../../Misc/NEWS:1999 msgid "" "`Issue #25195 `__: Fix a regression in mock." "MagicMock. _Call is a subclass of tuple (changeset 3603bae63c13 only works " "for classes) so we need to implement __ne__ ourselves. Patch by Andrew " "Plummer." msgstr "" "`Issue #25195 `__: Fix a regression in mock." "MagicMock. _Call is a subclass of tuple (changeset 3603bae63c13 only works " "for classes) so we need to implement __ne__ ourselves. Patch by Andrew " "Plummer." #: ../../../Misc/NEWS:2003 msgid "" "`Issue #26644 `__: Raise ValueError rather " "than SystemError when a negative length is passed to SSLSocket.recv() or " "read()." msgstr "" "`Issue #26644 `__: Raise ValueError rather " "than SystemError when a negative length is passed to SSLSocket.recv() or " "read()." #: ../../../Misc/NEWS:2006 msgid "" "`Issue #23804 `__: Fix SSL recv(0) and " "read(0) methods to return zero bytes instead of up to 1024." msgstr "" "`Issue #23804 `__: Fix SSL recv(0) and " "read(0) methods to return zero bytes instead of up to 1024." #: ../../../Misc/NEWS:2009 msgid "" "`Issue #26616 `__: Fixed a bug in datetime." "astimezone() method." msgstr "" "`Issue #26616 `__: Fixed a bug in datetime." "astimezone() method." #: ../../../Misc/NEWS:2011 msgid "" "`Issue #26637 `__: The :mod:`importlib` " "module now emits an :exc:`ImportError` rather than a :exc:`TypeError` if :" "func:`__import__` is tried during the Python shutdown process but :data:`sys." "path` is already cleared (set to ``None``)." msgstr "" "`Issue #26637 `__: The :mod:`importlib` " "module now emits an :exc:`ImportError` rather than a :exc:`TypeError` if :" "func:`__import__` is tried during the Python shutdown process but :data:`sys." "path` is already cleared (set to ``None``)." #: ../../../Misc/NEWS:2016 msgid "" "`Issue #21925 `__: :func:`warnings." "formatwarning` now catches exceptions when calling :func:`linecache.getline` " "and :func:`tracemalloc.get_object_traceback` to be able to log :exc:" "`ResourceWarning` emitted late during the Python shutdown process." msgstr "" "`Issue #21925 `__: :func:`warnings." "formatwarning` now catches exceptions when calling :func:`linecache.getline` " "and :func:`tracemalloc.get_object_traceback` to be able to log :exc:" "`ResourceWarning` emitted late during the Python shutdown process." #: ../../../Misc/NEWS:2021 msgid "" "`Issue #23848 `__: On Windows, faulthandler." "enable() now also installs an exception handler to dump the traceback of all " "Python threads on any Windows exception, not only on UNIX signals (SIGSEGV, " "SIGFPE, SIGABRT)." msgstr "" "`Issue #23848 `__: On Windows, faulthandler." "enable() now also installs an exception handler to dump the traceback of all " "Python threads on any Windows exception, not only on UNIX signals (SIGSEGV, " "SIGFPE, SIGABRT)." #: ../../../Misc/NEWS:2025 msgid "" "`Issue #26530 `__: Add C functions :c:func:" "`_PyTraceMalloc_Track` and :c:func:`_PyTraceMalloc_Untrack` to track memory " "blocks using the :mod:`tracemalloc` module. Add :c:func:" "`_PyTraceMalloc_GetTraceback` to get the traceback of an object." msgstr "" "`Issue #26530 `__: Add C functions :c:func:" "`_PyTraceMalloc_Track` and :c:func:`_PyTraceMalloc_Untrack` to track memory " "blocks using the :mod:`tracemalloc` module. Add :c:func:" "`_PyTraceMalloc_GetTraceback` to get the traceback of an object." #: ../../../Misc/NEWS:2030 msgid "" "`Issue #26588 `__: The _tracemalloc now " "supports tracing memory allocations of multiple address spaces (domains)." msgstr "" "`Issue #26588 `__: The _tracemalloc now " "supports tracing memory allocations of multiple address spaces (domains)." #: ../../../Misc/NEWS:2033 msgid "" "`Issue #24266 `__: Ctrl+C during Readline " "history search now cancels the search mode when compiled with Readline 7." msgstr "" "`Issue #24266 `__: Ctrl+C during Readline " "history search now cancels the search mode when compiled with Readline 7." #: ../../../Misc/NEWS:2036 msgid "" "`Issue #26590 `__: Implement a safe finalizer " "for the _socket.socket type. It now releases the GIL to close the socket." msgstr "" "`Issue #26590 `__: Implement a safe finalizer " "for the _socket.socket type. It now releases the GIL to close the socket." #: ../../../Misc/NEWS:2039 msgid "" "`Issue #18787 `__: spwd.getspnam() now raises " "a PermissionError if the user doesn't have privileges." msgstr "" "`Issue #18787 `__: spwd.getspnam() now raises " "a PermissionError if the user doesn't have privileges." #: ../../../Misc/NEWS:2042 msgid "" "`Issue #26560 `__: Avoid potential ValueError " "in BaseHandler.start_response. Initial patch by Peter Inglesby." msgstr "" "`Issue #26560 `__: Avoid potential ValueError " "in BaseHandler.start_response. Initial patch by Peter Inglesby." #: ../../../Misc/NEWS:2045 msgid "" "`Issue #26567 `__: Add a new function :c:func:" "`PyErr_ResourceWarning` function to pass the destroyed object. Add a " "*source* attribute to :class:`warnings.WarningMessage`. Add warnings." "_showwarnmsg() which uses tracemalloc to get the traceback where source " "object was allocated." msgstr "" "`Issue #26567 `__: Add a new function :c:func:" "`PyErr_ResourceWarning` function to pass the destroyed object. Add a " "*source* attribute to :class:`warnings.WarningMessage`. Add warnings." "_showwarnmsg() which uses tracemalloc to get the traceback where source " "object was allocated." #: ../../../Misc/NEWS:2050 msgid "" "[Security] `Issue #26313 `__: ssl.py " "_load_windows_store_certs fails if windows cert store is empty. Patch by " "Baji." msgstr "" #: ../../../Misc/NEWS:2053 msgid "" "`Issue #26569 `__: Fix :func:`pyclbr." "readmodule` and :func:`pyclbr.readmodule_ex` to support importing packages." msgstr "" "`Issue #26569 `__: Fix :func:`pyclbr." "readmodule` and :func:`pyclbr.readmodule_ex` to support importing packages." #: ../../../Misc/NEWS:2056 msgid "" "`Issue #26499 `__: Account for remaining " "Content-Length in HTTPResponse.readline() and read1(). Based on patch by " "Silent Ghost. Also document that HTTPResponse now supports these methods." msgstr "" "`Issue #26499 `__: Account for remaining " "Content-Length in HTTPResponse.readline() and read1(). Based on patch by " "Silent Ghost. Also document that HTTPResponse now supports these methods." #: ../../../Misc/NEWS:2060 msgid "" "`Issue #25320 `__: Handle sockets in " "directories unittest discovery is scanning. Patch from Victor van den Elzen." msgstr "" "`Issue #25320 `__: Handle sockets in " "directories unittest discovery is scanning. Patch from Victor van den Elzen." #: ../../../Misc/NEWS:2063 msgid "" "`Issue #16181 `__: cookiejar.http2time() now " "returns None if year is higher than datetime.MAXYEAR." msgstr "" "`Issue #16181 `__: cookiejar.http2time() now " "returns None if year is higher than datetime.MAXYEAR." #: ../../../Misc/NEWS:2066 msgid "" "`Issue #26513 `__: Fixes platform module " "detection of Windows Server" msgstr "" "`Issue #26513 `__: Fixes platform module " "detection of Windows Server" #: ../../../Misc/NEWS:2068 msgid "" "`Issue #23718 `__: Fixed parsing time in week " "0 before Jan 1. Original patch by Tamás Bence Gedai." msgstr "" "`Issue #23718 `__: Fixed parsing time in week " "0 before Jan 1. Original patch by Tamás Bence Gedai." #: ../../../Misc/NEWS:2071 msgid "" "`Issue #26323 `__: Add Mock.assert_called() " "and Mock.assert_called_once() methods to unittest.mock. Patch written by " "Amit Saha." msgstr "" "`Issue #26323 `__: Add Mock.assert_called() " "and Mock.assert_called_once() methods to unittest.mock. Patch written by " "Amit Saha." #: ../../../Misc/NEWS:2074 msgid "" "`Issue #20589 `__: Invoking Path.owner() and " "Path.group() on Windows now raise NotImplementedError instead of ImportError." msgstr "" "`Issue #20589 `__: Invoking Path.owner() and " "Path.group() on Windows now raise NotImplementedError instead of ImportError." #: ../../../Misc/NEWS:2077 msgid "" "`Issue #26177 `__: Fixed the keys() method " "for Canvas and Scrollbar widgets." msgstr "" "`Issue #26177 `__: Fixed the keys() method " "for Canvas and Scrollbar widgets." #: ../../../Misc/NEWS:2079 msgid "" "`Issue #15068 `__: Got rid of excessive " "buffering in fileinput. The bufsize parameter is now deprecated and ignored." msgstr "" "`Issue #15068 `__: Got rid of excessive " "buffering in fileinput. The bufsize parameter is now deprecated and ignored." #: ../../../Misc/NEWS:2082 msgid "" "`Issue #19475 `__: Added an optional argument " "timespec to the datetime isoformat() method to choose the precision of the " "time component." msgstr "" "`Issue #19475 `__: Added an optional argument " "timespec to the datetime isoformat() method to choose the precision of the " "time component." #: ../../../Misc/NEWS:2085 msgid "" "`Issue #2202 `__: Fix UnboundLocalError in " "AbstractDigestAuthHandler.get_algorithm_impls. Initial patch by Mathieu " "Dupuy." msgstr "" "`Issue #2202 `__: Fix UnboundLocalError in " "AbstractDigestAuthHandler.get_algorithm_impls. Initial patch by Mathieu " "Dupuy." #: ../../../Misc/NEWS:2089 msgid "" "`Issue #26167 `__: Minimized overhead in copy." "copy() and copy.deepcopy(). Optimized copying and deepcopying bytearrays, " "NotImplemented, slices, short lists, tuples, dicts, sets." msgstr "" "`Issue #26167 `__: Minimized overhead in copy." "copy() and copy.deepcopy(). Optimized copying and deepcopying bytearrays, " "NotImplemented, slices, short lists, tuples, dicts, sets." #: ../../../Misc/NEWS:2093 msgid "" "`Issue #25718 `__: Fixed pickling and copying " "the accumulate() iterator with total is None." msgstr "" "`Issue #25718 `__: Fixed pickling and copying " "the accumulate() iterator with total is None." #: ../../../Misc/NEWS:2096 msgid "" "`Issue #26475 `__: Fixed debugging output for " "regular expressions with the (?x) flag." msgstr "" "`Issue #26475 `__: Fixed debugging output for " "regular expressions with the (?x) flag." #: ../../../Misc/NEWS:2099 msgid "" "`Issue #26482 `__: Allowed pickling recursive " "dequeues." msgstr "" "`Issue #26482 `__: Allowed pickling recursive " "dequeues." #: ../../../Misc/NEWS:2101 msgid "" "`Issue #26335 `__: Make mmap.write() return " "the number of bytes written like other write methods. Patch by Jakub " "Stasiak." msgstr "" "`Issue #26335 `__: Make mmap.write() return " "the number of bytes written like other write methods. Patch by Jakub " "Stasiak." #: ../../../Misc/NEWS:2104 msgid "" "`Issue #26457 `__: Fixed the subnets() " "methods in IP network classes for the case when resulting prefix length is " "equal to maximal prefix length. Based on patch by Xiang Zhang." msgstr "" "`Issue #26457 `__: Fixed the subnets() " "methods in IP network classes for the case when resulting prefix length is " "equal to maximal prefix length. Based on patch by Xiang Zhang." #: ../../../Misc/NEWS:2108 msgid "" "`Issue #26385 `__: Remove the file if the " "internal open() call in NamedTemporaryFile() fails. Patch by Silent Ghost." msgstr "" "`Issue #26385 `__: Remove the file if the " "internal open() call in NamedTemporaryFile() fails. Patch by Silent Ghost." #: ../../../Misc/NEWS:2111 msgid "" "`Issue #26402 `__: Fix XML-RPC client to " "retry when the server shuts down a persistent connection. This was a " "regression related to the new http.client.RemoteDisconnected exception in " "3.5.0a4." msgstr "" "`Issue #26402 `__: Fix XML-RPC client to " "retry when the server shuts down a persistent connection. This was a " "regression related to the new http.client.RemoteDisconnected exception in " "3.5.0a4." #: ../../../Misc/NEWS:2115 msgid "" "`Issue #25913 `__: Leading ``<~`` is optional " "now in base64.a85decode() with adobe=True. Patch by Swati Jaiswal." msgstr "" "`Issue #25913 `__: Leading ``<~`` is optional " "now in base64.a85decode() with adobe=True. Patch by Swati Jaiswal." #: ../../../Misc/NEWS:2118 msgid "" "`Issue #26186 `__: Remove an invalid type " "check in importlib.util.LazyLoader." msgstr "" "`Issue #26186 `__: Remove an invalid type " "check in importlib.util.LazyLoader." #: ../../../Misc/NEWS:2120 msgid "" "`Issue #26367 `__: importlib.__import__() " "raises ImportError like builtins.__import__() when ``level`` is specified " "but without an accompanying package specified." msgstr "" "`Issue #26367 `__: importlib.__import__() " "raises ImportError like builtins.__import__() when ``level`` is specified " "but without an accompanying package specified." #: ../../../Misc/NEWS:2124 msgid "" "`Issue #26309 `__: In the \"socketserver\" " "module, shut down the request (closing the connected socket) when " "verify_request() returns false. Patch by Aviv Palivoda." msgstr "" "`Issue #26309 `__: In the \"socketserver\" " "module, shut down the request (closing the connected socket) when " "verify_request() returns false. Patch by Aviv Palivoda." #: ../../../Misc/NEWS:2128 msgid "" "`Issue #23430 `__: Change the socketserver " "module to only catch exceptions raised from a request handler that are " "derived from Exception (instead of BaseException). Therefore SystemExit and " "KeyboardInterrupt no longer trigger the handle_error() method, and will now " "to stop a single-threaded server." msgstr "" "`Issue #23430 `__: Change the socketserver " "module to only catch exceptions raised from a request handler that are " "derived from Exception (instead of BaseException). Therefore SystemExit and " "KeyboardInterrupt no longer trigger the handle_error() method, and will now " "to stop a single-threaded server." #: ../../../Misc/NEWS:2134 msgid "" "[Security] `Issue #25939 `__: On Windows open " "the cert store readonly in ssl.enum_certificates." msgstr "" #: ../../../Misc/NEWS:2137 msgid "" "`Issue #25995 `__: os.walk() no longer uses " "FDs proportional to the tree depth." msgstr "" "`Issue #25995 `__: os.walk() no longer uses " "FDs proportional to the tree depth." #: ../../../Misc/NEWS:2139 msgid "" "`Issue #25994 `__: Added the close() method " "and the support of the context manager protocol for the os.scandir() " "iterator." msgstr "" "`Issue #25994 `__: Added the close() method " "and the support of the context manager protocol for the os.scandir() " "iterator." #: ../../../Misc/NEWS:2142 msgid "" "`Issue #23992 `__: multiprocessing: make " "MapResult not fail-fast upon exception." msgstr "" "`Issue #23992 `__: multiprocessing: make " "MapResult not fail-fast upon exception." #: ../../../Misc/NEWS:2144 msgid "" "`Issue #26243 `__: Support keyword arguments " "to zlib.compress(). Patch by Aviv Palivoda." msgstr "" "`Issue #26243 `__: Support keyword arguments " "to zlib.compress(). Patch by Aviv Palivoda." #: ../../../Misc/NEWS:2147 msgid "" "`Issue #26117 `__: The os.scandir() iterator " "now closes file descriptor not only when the iteration is finished, but when " "it was failed with error." msgstr "" "`Issue #26117 `__: The os.scandir() iterator " "now closes file descriptor not only when the iteration is finished, but when " "it was failed with error." #: ../../../Misc/NEWS:2150 msgid "" "`Issue #25949 `__: __dict__ for an " "OrderedDict instance is now created only when needed." msgstr "" "`Issue #25949 `__: __dict__ for an " "OrderedDict instance is now created only when needed." #: ../../../Misc/NEWS:2153 msgid "" "`Issue #25911 `__: Restored support of bytes " "paths in os.walk() on Windows." msgstr "" "`Issue #25911 `__: Restored support of bytes " "paths in os.walk() on Windows." #: ../../../Misc/NEWS:2155 msgid "" "`Issue #26045 `__: Add UTF-8 suggestion to " "error message when posting a non-Latin-1 string with http.client." msgstr "" "`Issue #26045 `__: Add UTF-8 suggestion to " "error message when posting a non-Latin-1 string with http.client." #: ../../../Misc/NEWS:2158 msgid "" "`Issue #26039 `__: Added zipfile.ZipInfo." "from_file() and zipinfo.ZipInfo.is_dir(). Patch by Thomas Kluyver." msgstr "" "`Issue #26039 `__: Added zipfile.ZipInfo." "from_file() and zipinfo.ZipInfo.is_dir(). Patch by Thomas Kluyver." #: ../../../Misc/NEWS:2161 msgid "" "`Issue #12923 `__: Reset FancyURLopener's " "redirect counter even if there is an exception. Based on patches by Brian " "Brazil and Daniel Rocco." msgstr "" "`Issue #12923 `__: Reset FancyURLopener's " "redirect counter even if there is an exception. Based on patches by Brian " "Brazil and Daniel Rocco." #: ../../../Misc/NEWS:2164 msgid "" "`Issue #25945 `__: Fixed a crash when " "unpickle the functools.partial object with wrong state. Fixed a leak in " "failed functools.partial constructor. \"args\" and \"keywords\" attributes " "of functools.partial have now always types tuple and dict correspondingly." msgstr "" "`Issue #25945 `__: Fixed a crash when " "unpickle the functools.partial object with wrong state. Fixed a leak in " "failed functools.partial constructor. \"args\" and \"keywords\" attributes " "of functools.partial have now always types tuple and dict correspondingly." #: ../../../Misc/NEWS:2169 msgid "" "`Issue #26202 `__: copy.deepcopy() now " "correctly copies range() objects with non-atomic attributes." msgstr "" "`Issue #26202 `__: copy.deepcopy() now " "correctly copies range() objects with non-atomic attributes." #: ../../../Misc/NEWS:2172 msgid "" "`Issue #23076 `__: Path.glob() now raises a " "ValueError if it's called with an invalid pattern. Patch by Thomas Nyberg." msgstr "" "`Issue #23076 `__: Path.glob() now raises a " "ValueError if it's called with an invalid pattern. Patch by Thomas Nyberg." #: ../../../Misc/NEWS:2175 msgid "" "`Issue #19883 `__: Fixed possible integer " "overflows in zipimport." msgstr "" "`Issue #19883 `__: Fixed possible integer " "overflows in zipimport." #: ../../../Misc/NEWS:2177 msgid "" "`Issue #26227 `__: On Windows, getnameinfo(), " "gethostbyaddr() and gethostbyname_ex() functions of the socket module now " "decode the hostname from the ANSI code page rather than UTF-8." msgstr "" "`Issue #26227 `__: On Windows, getnameinfo(), " "gethostbyaddr() and gethostbyname_ex() functions of the socket module now " "decode the hostname from the ANSI code page rather than UTF-8." #: ../../../Misc/NEWS:2181 msgid "" "`Issue #26099 `__: The site module now writes " "an error into stderr if sitecustomize module can be imported but executing " "the module raise an ImportError. Same change for usercustomize." msgstr "" "`Issue #26099 `__: The site module now writes " "an error into stderr if sitecustomize module can be imported but executing " "the module raise an ImportError. Same change for usercustomize." #: ../../../Misc/NEWS:2185 msgid "" "`Issue #26147 `__: xmlrpc now works with " "strings not encodable with used non-UTF-8 encoding." msgstr "" "`Issue #26147 `__: xmlrpc now works with " "strings not encodable with used non-UTF-8 encoding." #: ../../../Misc/NEWS:2188 msgid "" "`Issue #25935 `__: Garbage collector now " "breaks reference loops with OrderedDict." msgstr "" "`Issue #25935 `__: Garbage collector now " "breaks reference loops with OrderedDict." #: ../../../Misc/NEWS:2190 msgid "" "`Issue #16620 `__: Fixed AttributeError in " "msilib.Directory.glob()." msgstr "" "`Issue #16620 `__: Fixed AttributeError in " "msilib.Directory.glob()." #: ../../../Misc/NEWS:2192 msgid "" "`Issue #26013 `__: Added compatibility with " "broken protocol 2 pickles created in old Python 3 versions (3.4.3 and lower)." msgstr "" "`Issue #26013 `__: Added compatibility with " "broken protocol 2 pickles created in old Python 3 versions (3.4.3 and lower)." #: ../../../Misc/NEWS:2195 msgid "" "`Issue #26129 `__: Deprecated accepting non-" "integers in grp.getgrgid()." msgstr "" "`Issue #26129 `__: Deprecated accepting non-" "integers in grp.getgrgid()." #: ../../../Misc/NEWS:2197 msgid "" "`Issue #25850 `__: Use cross-compilation by " "default for 64-bit Windows." msgstr "" "`Issue #25850 `__: Use cross-compilation by " "default for 64-bit Windows." #: ../../../Misc/NEWS:2199 msgid "" "`Issue #25822 `__: Add docstrings to the " "fields of urllib.parse results. Patch contributed by Swati Jaiswal." msgstr "" "`Issue #25822 `__: Add docstrings to the " "fields of urllib.parse results. Patch contributed by Swati Jaiswal." #: ../../../Misc/NEWS:2202 msgid "" "`Issue #22642 `__: Convert trace module " "option parsing mechanism to argparse. Patch contributed by SilentGhost." msgstr "" "`Issue #22642 `__: Convert trace module " "option parsing mechanism to argparse. Patch contributed by SilentGhost." #: ../../../Misc/NEWS:2205 msgid "" "`Issue #24705 `__: Fix sysconfig." "_parse_makefile not expanding ${} vars appearing before $() vars." msgstr "" "`Issue #24705 `__: Fix sysconfig." "_parse_makefile not expanding ${} vars appearing before $() vars." #: ../../../Misc/NEWS:2208 msgid "" "`Issue #26069 `__: Remove the deprecated apis " "in the trace module." msgstr "" "`Issue #26069 `__: Remove the deprecated apis " "in the trace module." #: ../../../Misc/NEWS:2210 msgid "" "`Issue #22138 `__: Fix mock.patch behavior " "when patching descriptors. Restore original values after patching. Patch " "contributed by Sean McCully." msgstr "" "`Issue #22138 `__: Fix mock.patch behavior " "when patching descriptors. Restore original values after patching. Patch " "contributed by Sean McCully." #: ../../../Misc/NEWS:2213 msgid "" "`Issue #25672 `__: In the ssl module, enable " "the SSL_MODE_RELEASE_BUFFERS mode option if it is safe to do so." msgstr "" "`Issue #25672 `__: In the ssl module, enable " "the SSL_MODE_RELEASE_BUFFERS mode option if it is safe to do so." #: ../../../Misc/NEWS:2216 msgid "" "`Issue #26012 `__: Don't traverse into " "symlinks for ** pattern in pathlib.Path.[r]glob()." msgstr "" "`Issue #26012 `__: Don't traverse into " "symlinks for ** pattern in pathlib.Path.[r]glob()." #: ../../../Misc/NEWS:2219 msgid "" "`Issue #24120 `__: Ignore PermissionError " "when traversing a tree with pathlib.Path.[r]glob(). Patch by Ulrich Petri." msgstr "" "`Issue #24120 `__: Ignore PermissionError " "when traversing a tree with pathlib.Path.[r]glob(). Patch by Ulrich Petri." #: ../../../Misc/NEWS:2222 msgid "" "`Issue #21815 `__: Accept ] characters in the " "data portion of imap responses, in order to handle the flags with square " "brackets accepted and produced by servers such as gmail." msgstr "" "`Issue #21815 `__: Accept ] characters in the " "data portion of imap responses, in order to handle the flags with square " "brackets accepted and produced by servers such as gmail." #: ../../../Misc/NEWS:2226 msgid "" "`Issue #25447 `__: fileinput now uses sys." "stdin as-is if it does not have a buffer attribute (restores backward " "compatibility)." msgstr "" "`Issue #25447 `__: fileinput now uses sys." "stdin as-is if it does not have a buffer attribute (restores backward " "compatibility)." #: ../../../Misc/NEWS:2229 msgid "" "`Issue #25971 `__: Optimized creating " "Fractions from floats by 2 times and from Decimals by 3 times." msgstr "" "`Issue #25971 `__: Optimized creating " "Fractions from floats by 2 times and from Decimals by 3 times." #: ../../../Misc/NEWS:2232 msgid "" "`Issue #25802 `__: Document as deprecated the " "remaining implementations of importlib.abc.Loader.load_module()." msgstr "" "`Issue #25802 `__: Document as deprecated the " "remaining implementations of importlib.abc.Loader.load_module()." #: ../../../Misc/NEWS:2235 msgid "" "`Issue #25928 `__: Add Decimal." "as_integer_ratio()." msgstr "" "`Issue #25928 `__: Add Decimal." "as_integer_ratio()." #: ../../../Misc/NEWS:2237 msgid "" "`Issue #25447 `__: Copying the lru_cache() " "wrapper object now always works, independently from the type of the wrapped " "object (by returning the original object unchanged)." msgstr "" "`Issue #25447 `__: Copying the lru_cache() " "wrapper object now always works, independently from the type of the wrapped " "object (by returning the original object unchanged)." #: ../../../Misc/NEWS:2241 msgid "" "`Issue #25768 `__: Have the functions in " "compileall return booleans instead of ints and add proper documentation and " "tests for the return values." msgstr "" "`Issue #25768 `__: Have the functions in " "compileall return booleans instead of ints and add proper documentation and " "tests for the return values." #: ../../../Misc/NEWS:2244 msgid "" "`Issue #24103 `__: Fixed possible use after " "free in ElementTree.XMLPullParser." msgstr "" "`Issue #24103 `__: Fixed possible use after " "free in ElementTree.XMLPullParser." #: ../../../Misc/NEWS:2246 msgid "" "`Issue #25860 `__: os.fwalk() no longer skips " "remaining directories when error occurs. Original patch by Samson Lee." msgstr "" "`Issue #25860 `__: os.fwalk() no longer skips " "remaining directories when error occurs. Original patch by Samson Lee." #: ../../../Misc/NEWS:2249 msgid "" "`Issue #25914 `__: Fixed and simplified " "OrderedDict.__sizeof__." msgstr "" "`Issue #25914 `__: Fixed and simplified " "OrderedDict.__sizeof__." #: ../../../Misc/NEWS:2251 msgid "" "`Issue #25869 `__: Optimized deepcopying " "ElementTree; it is now 20 times faster." msgstr "" "`Issue #25869 `__: Optimized deepcopying " "ElementTree; it is now 20 times faster." #: ../../../Misc/NEWS:2253 msgid "" "`Issue #25873 `__: Optimized iterating " "ElementTree. Iterating elements Element.iter() is now 40% faster, iterating " "text Element.itertext() is now up to 2.5 times faster." msgstr "" "`Issue #25873 `__: Optimized iterating " "ElementTree. Iterating elements Element.iter() is now 40% faster, iterating " "text Element.itertext() is now up to 2.5 times faster." #: ../../../Misc/NEWS:2257 msgid "" "`Issue #25902 `__: Fixed various refcount " "issues in ElementTree iteration." msgstr "" "`Issue #25902 `__: Fixed various refcount " "issues in ElementTree iteration." #: ../../../Misc/NEWS:2259 msgid "" "`Issue #22227 `__: The TarFile iterator is " "reimplemented using generator. This implementation is simpler that using " "class." msgstr "" "`Issue #22227 `__: The TarFile iterator is " "reimplemented using generator. This implementation is simpler that using " "class." #: ../../../Misc/NEWS:2262 msgid "" "`Issue #25638 `__: Optimized ElementTree." "iterparse(); it is now 2x faster. Optimized ElementTree parsing; it is now " "10% faster." msgstr "" "`Issue #25638 `__: Optimized ElementTree." "iterparse(); it is now 2x faster. Optimized ElementTree parsing; it is now " "10% faster." #: ../../../Misc/NEWS:2265 msgid "" "`Issue #25761 `__: Improved detecting errors " "in broken pickle data." msgstr "" "`Issue #25761 `__: Improved detecting errors " "in broken pickle data." #: ../../../Misc/NEWS:2267 msgid "" "`Issue #25717 `__: Restore the previous " "behaviour of tolerating most fstat() errors when opening files. This was a " "regression in 3.5a1, and stopped anonymous temporary files from working in " "special cases." msgstr "" "`Issue #25717 `__: Restore the previous " "behaviour of tolerating most fstat() errors when opening files. This was a " "regression in 3.5a1, and stopped anonymous temporary files from working in " "special cases." #: ../../../Misc/NEWS:2271 msgid "" "`Issue #24903 `__: Fix regression in number " "of arguments compileall accepts when '-d' is specified. The check on the " "number of arguments has been dropped completely as it never worked correctly " "anyway." msgstr "" "`Issue #24903 `__: Fix regression in number " "of arguments compileall accepts when '-d' is specified. The check on the " "number of arguments has been dropped completely as it never worked correctly " "anyway." #: ../../../Misc/NEWS:2275 msgid "" "`Issue #25764 `__: In the subprocess module, " "preserve any exception caused by fork() failure when preexec_fn is used." msgstr "" "`Issue #25764 `__: In the subprocess module, " "preserve any exception caused by fork() failure when preexec_fn is used." #: ../../../Misc/NEWS:2278 msgid "" "`Issue #25771 `__: Tweak the exception " "message for importlib.util.resolve_name() when 'package' isn't specified but " "necessary." msgstr "" "`Issue #25771 `__: Tweak the exception " "message for importlib.util.resolve_name() when 'package' isn't specified but " "necessary." #: ../../../Misc/NEWS:2281 msgid "" "`Issue #6478 `__: _strptime's regexp cache now " "is reset after changing timezone with time.tzset()." msgstr "" "`Issue #6478 `__: _strptime's regexp cache now " "is reset after changing timezone with time.tzset()." #: ../../../Misc/NEWS:2284 msgid "" "`Issue #14285 `__: When executing a package " "with the \"python -m package\" option, and package initialization fails, a " "proper traceback is now reported. The \"runpy\" module now lets exceptions " "from package initialization pass back to the caller, rather than raising " "ImportError." msgstr "" "`Issue #14285 `__: When executing a package " "with the \"python -m package\" option, and package initialization fails, a " "proper traceback is now reported. The \"runpy\" module now lets exceptions " "from package initialization pass back to the caller, rather than raising " "ImportError." #: ../../../Misc/NEWS:2289 msgid "" "`Issue #19771 `__: Also in runpy and the \"-m" "\" option, omit the irrelevant message \". . . is a package and cannot be " "directly executed\" if the package could not even be initialized (e.g. due " "to a bad ``*.pyc`` file)." msgstr "" "`Issue #19771 `__: Also in runpy and the \"-m" "\" option, omit the irrelevant message \". . . is a package and cannot be " "directly executed\" if the package could not even be initialized (e.g. due " "to a bad ``*.pyc`` file)." #: ../../../Misc/NEWS:2293 msgid "" "`Issue #25177 `__: Fixed problem with the " "mean of very small and very large numbers. As a side effect, statistics.mean " "and statistics.variance should be significantly faster." msgstr "" "`Issue #25177 `__: Fixed problem with the " "mean of very small and very large numbers. As a side effect, statistics.mean " "and statistics.variance should be significantly faster." #: ../../../Misc/NEWS:2297 msgid "" "`Issue #25718 `__: Fixed copying object with " "state with boolean value is false." msgstr "" "`Issue #25718 `__: Fixed copying object with " "state with boolean value is false." #: ../../../Misc/NEWS:2299 msgid "" "`Issue #10131 `__: Fixed deep copying of " "minidom documents. Based on patch by Marian Ganisin." msgstr "" "`Issue #10131 `__: Fixed deep copying of " "minidom documents. Based on patch by Marian Ganisin." #: ../../../Misc/NEWS:2302 msgid "" "`Issue #7990 `__: dir() on ElementTree.Element " "now lists properties: \"tag\", \"text\", \"tail\" and \"attrib\". Original " "patch by Santoso Wijaya." msgstr "" "`Issue #7990 `__: dir() on ElementTree.Element " "now lists properties: \"tag\", \"text\", \"tail\" and \"attrib\". Original " "patch by Santoso Wijaya." #: ../../../Misc/NEWS:2305 msgid "" "`Issue #25725 `__: Fixed a reference leak in " "pickle.loads() when unpickling invalid data including tuple instructions." msgstr "" "`Issue #25725 `__: Fixed a reference leak in " "pickle.loads() when unpickling invalid data including tuple instructions." #: ../../../Misc/NEWS:2308 msgid "" "`Issue #25663 `__: In the Readline completer, " "avoid listing duplicate global names, and search the global namespace before " "searching builtins." msgstr "" "`Issue #25663 `__: In the Readline completer, " "avoid listing duplicate global names, and search the global namespace before " "searching builtins." #: ../../../Misc/NEWS:2311 msgid "" "`Issue #25688 `__: Fixed file leak in " "ElementTree.iterparse() raising an error." msgstr "" "`Issue #25688 `__: Fixed file leak in " "ElementTree.iterparse() raising an error." #: ../../../Misc/NEWS:2313 msgid "" "`Issue #23914 `__: Fixed SystemError raised " "by unpickler on broken pickle data." msgstr "" "`Issue #23914 `__: Fixed SystemError raised " "by unpickler on broken pickle data." #: ../../../Misc/NEWS:2315 msgid "" "`Issue #25691 `__: Fixed crash on deleting " "ElementTree.Element attributes." msgstr "" "`Issue #25691 `__: Fixed crash on deleting " "ElementTree.Element attributes." #: ../../../Misc/NEWS:2317 msgid "" "`Issue #25624 `__: ZipFile now always writes " "a ZIP_STORED header for directory entries. Patch by Dingyuan Wang." msgstr "" "`Issue #25624 `__: ZipFile now always writes " "a ZIP_STORED header for directory entries. Patch by Dingyuan Wang." #: ../../../Misc/NEWS:2320 ../../../Misc/NEWS:2914 msgid "" "`Issue #25626 `__: Change three zlib " "functions to accept sizes that fit in Py_ssize_t, but internally cap those " "sizes to UINT_MAX. This resolves a regression in 3.5 where GzipFile.read() " "failed to read chunks larger than 2 or 4 GiB. The change affects the zlib." "Decompress.decompress() max_length parameter, the zlib.decompress() bufsize " "parameter, and the zlib.Decompress.flush() length parameter." msgstr "" "`Issue #25626 `__: Change three zlib " "functions to accept sizes that fit in Py_ssize_t, but internally cap those " "sizes to UINT_MAX. This resolves a regression in 3.5 where GzipFile.read() " "failed to read chunks larger than 2 or 4 GiB. The change affects the zlib." "Decompress.decompress() max_length parameter, the zlib.decompress() bufsize " "parameter, and the zlib.Decompress.flush() length parameter." #: ../../../Misc/NEWS:2327 ../../../Misc/NEWS:2921 msgid "" "`Issue #25583 `__: Avoid incorrect errors " "raised by os.makedirs(exist_ok=True) when the OS gives priority to errors " "such as EACCES over EEXIST." msgstr "" "`Issue #25583 `__: Avoid incorrect errors " "raised by os.makedirs(exist_ok=True) when the OS gives priority to errors " "such as EACCES over EEXIST." #: ../../../Misc/NEWS:2330 ../../../Misc/NEWS:2924 msgid "" "`Issue #25593 `__: Change semantics of " "EventLoop.stop() in asyncio." msgstr "" "`Issue #25593 `__: Change semantics of " "EventLoop.stop() in asyncio." #: ../../../Misc/NEWS:2332 ../../../Misc/NEWS:2926 msgid "" "`Issue #6973 `__: When we know a subprocess." "Popen process has died, do not allow the send_signal(), terminate(), or " "kill() methods to do anything as they could potentially signal a different " "process." msgstr "" "`Issue #6973 `__: When we know a subprocess." "Popen process has died, do not allow the send_signal(), terminate(), or " "kill() methods to do anything as they could potentially signal a different " "process." #: ../../../Misc/NEWS:2336 msgid "" "`Issue #23883 `__: Added missing APIs to " "__all__ to match the documented APIs for the following modules: calendar, " "csv, enum, fileinput, ftplib, logging, optparse, tarfile, threading and " "wave. Also added a test.support.check__all__() helper. Patches by Jacek " "Kołodziej, Mauro S. M. Rodrigues and Joel Taddei." msgstr "" "`Issue #23883 `__: Added missing APIs to " "__all__ to match the documented APIs for the following modules: calendar, " "csv, enum, fileinput, ftplib, logging, optparse, tarfile, threading and " "wave. Also added a test.support.check__all__() helper. Patches by Jacek " "Kołodziej, Mauro S. M. Rodrigues and Joel Taddei." #: ../../../Misc/NEWS:2342 msgid "" "`Issue #25590 `__: In the Readline completer, " "only call getattr() once per attribute. Also complete names of attributes " "such as properties and slots which are listed by dir() but not yet created " "on an instance." msgstr "" "`Issue #25590 `__: In the Readline completer, " "only call getattr() once per attribute. Also complete names of attributes " "such as properties and slots which are listed by dir() but not yet created " "on an instance." #: ../../../Misc/NEWS:2346 ../../../Misc/NEWS:2933 msgid "" "`Issue #25498 `__: Fix a crash when garbage-" "collecting ctypes objects created by wrapping a memoryview. This was a " "regression made in 3.5a1. Based on patch by Eryksun." msgstr "" "`Issue #25498 `__: Fix a crash when garbage-" "collecting ctypes objects created by wrapping a memoryview. This was a " "regression made in 3.5a1. Based on patch by Eryksun." #: ../../../Misc/NEWS:2350 ../../../Misc/NEWS:2937 msgid "" "`Issue #25584 `__: Added \"escape\" to the " "__all__ list in the glob module." msgstr "" "`Issue #25584 `__: Added \"escape\" to the " "__all__ list in the glob module." #: ../../../Misc/NEWS:2352 ../../../Misc/NEWS:2939 msgid "" "`Issue #25584 `__: Fixed recursive glob() " "with patterns starting with '\\*\\*'." msgstr "" "`Issue #25584 `__: Fixed recursive glob() " "with patterns starting with '\\*\\*'." #: ../../../Misc/NEWS:2354 ../../../Misc/NEWS:2941 msgid "" "`Issue #25446 `__: Fix regression in " "smtplib's AUTH LOGIN support." msgstr "" "`Issue #25446 `__: Fix regression in " "smtplib's AUTH LOGIN support." #: ../../../Misc/NEWS:2356 ../../../Misc/NEWS:2943 msgid "" "`Issue #18010 `__: Fix the pydoc web server's " "module search function to handle exceptions from importing packages." msgstr "" "`Issue #18010 `__: Fix the pydoc web server's " "module search function to handle exceptions from importing packages." #: ../../../Misc/NEWS:2359 ../../../Misc/NEWS:2946 msgid "" "`Issue #25554 `__: Got rid of circular " "references in regular expression parsing." msgstr "" "`Issue #25554 `__: Got rid of circular " "references in regular expression parsing." #: ../../../Misc/NEWS:2361 msgid "" "`Issue #18973 `__: Command-line interface of " "the calendar module now uses argparse instead of optparse." msgstr "" "`Issue #18973 `__: Command-line interface of " "the calendar module now uses argparse instead of optparse." #: ../../../Misc/NEWS:2364 ../../../Misc/NEWS:2948 msgid "" "`Issue #25510 `__: fileinput.FileInput." "readline() now returns b'' instead of '' at the end if the FileInput was " "opened with binary mode. Patch by Ryosuke Ito." msgstr "" "`Issue #25510 `__: fileinput.FileInput." "readline() now returns b'' instead of '' at the end if the FileInput was " "opened with binary mode. Patch by Ryosuke Ito." #: ../../../Misc/NEWS:2368 ../../../Misc/NEWS:2952 msgid "" "`Issue #25503 `__: Fixed inspect.getdoc() for " "inherited docstrings of properties. Original patch by John Mark Vandenberg." msgstr "" "`Issue #25503 `__: Fixed inspect.getdoc() for " "inherited docstrings of properties. Original patch by John Mark Vandenberg." #: ../../../Misc/NEWS:2371 ../../../Misc/NEWS:2955 msgid "" "`Issue #25515 `__: Always use os.urandom as a " "source of randomness in uuid.uuid4." msgstr "" "`Issue #25515 `__: Always use os.urandom as a " "source of randomness in uuid.uuid4." #: ../../../Misc/NEWS:2373 ../../../Misc/NEWS:2957 msgid "" "`Issue #21827 `__: Fixed textwrap.dedent() " "for the case when largest common whitespace is a substring of smallest " "leading whitespace. Based on patch by Robert Li." msgstr "" "`Issue #21827 `__: Fixed textwrap.dedent() " "for the case when largest common whitespace is a substring of smallest " "leading whitespace. Based on patch by Robert Li." #: ../../../Misc/NEWS:2377 ../../../Misc/NEWS:2961 msgid "" "`Issue #25447 `__: The lru_cache() wrapper " "objects now can be copied and pickled (by returning the original object " "unchanged)." msgstr "" "`Issue #25447 `__: The lru_cache() wrapper " "objects now can be copied and pickled (by returning the original object " "unchanged)." #: ../../../Misc/NEWS:2380 ../../../Misc/NEWS:2964 msgid "" "`Issue #25390 `__: typing: Don't crash on " "Union[str, Pattern]." msgstr "" "`Issue #25390 `__: typing: Don't crash on " "Union[str, Pattern]." #: ../../../Misc/NEWS:2382 ../../../Misc/NEWS:2966 msgid "" "`Issue #25441 `__: asyncio: Raise error from " "drain() when socket is closed." msgstr "" "`Issue #25441 `__: asyncio: Raise error from " "drain() when socket is closed." #: ../../../Misc/NEWS:2384 ../../../Misc/NEWS:2968 msgid "" "`Issue #25410 `__: Cleaned up and fixed minor " "bugs in C implementation of OrderedDict." msgstr "" "`Issue #25410 `__: Cleaned up and fixed minor " "bugs in C implementation of OrderedDict." #: ../../../Misc/NEWS:2387 ../../../Misc/NEWS:2971 msgid "" "`Issue #25411 `__: Improved Unicode support " "in SMTPHandler through better use of the email package. Thanks to user " "simon04 for the patch." msgstr "" "`Issue #25411 `__: Improved Unicode support " "in SMTPHandler through better use of the email package. Thanks to user " "simon04 for the patch." #: ../../../Misc/NEWS:2390 msgid "" "Move the imp module from a PendingDeprecationWarning to DeprecationWarning." msgstr "" #: ../../../Misc/NEWS:2392 ../../../Misc/NEWS:2974 msgid "" "`Issue #25407 `__: Remove mentions of the " "formatter module being removed in Python 3.6." msgstr "" "`Issue #25407 `__: Remove mentions of the " "formatter module being removed in Python 3.6." #: ../../../Misc/NEWS:2395 ../../../Misc/NEWS:2977 msgid "" "`Issue #25406 `__: Fixed a bug in C " "implementation of OrderedDict.move_to_end() that caused segmentation fault " "or hang in iterating after moving several items to the start of ordered dict." msgstr "" "`Issue #25406 `__: Fixed a bug in C " "implementation of OrderedDict.move_to_end() that caused segmentation fault " "or hang in iterating after moving several items to the start of ordered dict." #: ../../../Misc/NEWS:2399 msgid "" "`Issue #25382 `__: pickletools.dis() now " "outputs implicit memo index for the MEMOIZE opcode." msgstr "" "`Issue #25382 `__: pickletools.dis() now " "outputs implicit memo index for the MEMOIZE opcode." #: ../../../Misc/NEWS:2402 msgid "" "`Issue #25357 `__: Add an optional newline " "paramer to binascii.b2a_base64(). base64.b64encode() uses it to avoid a " "memory copy." msgstr "" "`Issue #25357 `__: Add an optional newline " "paramer to binascii.b2a_base64(). base64.b64encode() uses it to avoid a " "memory copy." #: ../../../Misc/NEWS:2405 msgid "" "`Issue #24164 `__: Objects that need calling " "``__new__`` with keyword arguments, can now be pickled using pickle " "protocols older than protocol version 4." msgstr "" "`Issue #24164 `__: Objects that need calling " "``__new__`` with keyword arguments, can now be pickled using pickle " "protocols older than protocol version 4." #: ../../../Misc/NEWS:2408 ../../../Misc/NEWS:2981 msgid "" "`Issue #25364 `__: zipfile now works in " "threads disabled builds." msgstr "" "`Issue #25364 `__: zipfile now works in " "threads disabled builds." #: ../../../Misc/NEWS:2410 ../../../Misc/NEWS:2983 msgid "" "`Issue #25328 `__: smtpd's SMTPChannel now " "correctly raises a ValueError if both decode_data and enable_SMTPUTF8 are " "set to true." msgstr "" "`Issue #25328 `__: smtpd's SMTPChannel now " "correctly raises a ValueError if both decode_data and enable_SMTPUTF8 are " "set to true." #: ../../../Misc/NEWS:2413 msgid "" "`Issue #16099 `__: RobotFileParser now " "supports Crawl-delay and Request-rate extensions. Patch by Nikolay " "Bogoychev." msgstr "" "`Issue #16099 `__: RobotFileParser now " "supports Crawl-delay and Request-rate extensions. Patch by Nikolay " "Bogoychev." #: ../../../Misc/NEWS:2416 ../../../Misc/NEWS:2986 msgid "" "`Issue #25316 `__: distutils raises OSError " "instead of DistutilsPlatformError when MSVC is not installed." msgstr "" "`Issue #25316 `__: distutils raises OSError " "instead of DistutilsPlatformError when MSVC is not installed." #: ../../../Misc/NEWS:2419 ../../../Misc/NEWS:2989 msgid "" "`Issue #25380 `__: Fixed protocol for the " "STACK_GLOBAL opcode in pickletools.opcodes." msgstr "" "`Issue #25380 `__: Fixed protocol for the " "STACK_GLOBAL opcode in pickletools.opcodes." #: ../../../Misc/NEWS:2422 ../../../Misc/NEWS:2992 msgid "" "`Issue #23972 `__: Updates asyncio datagram " "create method allowing reuseport and reuseaddr socket options to be set " "prior to binding the socket. Mirroring the existing asyncio create_server " "method the reuseaddr option for datagram sockets defaults to True if the O/S " "is 'posix' (except if the platform is Cygwin). Patch by Chris Laws." msgstr "" "`Issue #23972 `__: Updates asyncio datagram " "create method allowing reuseport and reuseaddr socket options to be set " "prior to binding the socket. Mirroring the existing asyncio create_server " "method the reuseaddr option for datagram sockets defaults to True if the O/S " "is 'posix' (except if the platform is Cygwin). Patch by Chris Laws." #: ../../../Misc/NEWS:2428 ../../../Misc/NEWS:2998 msgid "" "`Issue #25304 `__: Add asyncio." "run_coroutine_threadsafe(). This lets you submit a coroutine to a loop from " "another thread, returning a concurrent.futures.Future. By Vincent Michel." msgstr "" "`Issue #25304 `__: Add asyncio." "run_coroutine_threadsafe(). This lets you submit a coroutine to a loop from " "another thread, returning a concurrent.futures.Future. By Vincent Michel." #: ../../../Misc/NEWS:2432 ../../../Misc/NEWS:3002 msgid "" "`Issue #25232 `__: Fix CGIRequestHandler to " "split the query from the URL at the first question mark (?) rather than the " "last. Patch from Xiang Zhang." msgstr "" "`Issue #25232 `__: Fix CGIRequestHandler to " "split the query from the URL at the first question mark (?) rather than the " "last. Patch from Xiang Zhang." #: ../../../Misc/NEWS:2435 ../../../Misc/NEWS:3005 msgid "" "`Issue #24657 `__: Prevent CGIRequestHandler " "from collapsing slashes in the query part of the URL as if it were a path. " "Patch from Xiang Zhang." msgstr "" "`Issue #24657 `__: Prevent CGIRequestHandler " "from collapsing slashes in the query part of the URL as if it were a path. " "Patch from Xiang Zhang." #: ../../../Misc/NEWS:2438 msgid "" "`Issue #25287 `__: Don't add crypt." "METHOD_CRYPT to crypt.methods if it's not supported. Check if it is " "supported, it may not be supported on OpenBSD for example." msgstr "" "`Issue #25287 `__: Don't add crypt." "METHOD_CRYPT to crypt.methods if it's not supported. Check if it is " "supported, it may not be supported on OpenBSD for example." #: ../../../Misc/NEWS:2442 ../../../Misc/NEWS:3032 msgid "" "`Issue #23600 `__: Default implementation of " "tzinfo.fromutc() was returning wrong results in some cases." msgstr "" "`Issue #23600 `__: Default implementation of " "tzinfo.fromutc() was returning wrong results in some cases." #: ../../../Misc/NEWS:2445 ../../../Misc/NEWS:3029 msgid "" "`Issue #25203 `__: Failed readline." "set_completer_delims() no longer left the module in inconsistent state." msgstr "" "`Issue #25203 `__: Failed readline." "set_completer_delims() no longer left the module in inconsistent state." #: ../../../Misc/NEWS:2448 msgid "" "`Issue #25011 `__: rlcompleter now omits " "private and special attribute names unless the prefix starts with " "underscores." msgstr "" "`Issue #25011 `__: rlcompleter now omits " "private and special attribute names unless the prefix starts with " "underscores." #: ../../../Misc/NEWS:2451 msgid "" "`Issue #25209 `__: rlcompleter now can add a " "space or a colon after completed keyword." msgstr "" "`Issue #25209 `__: rlcompleter now can add a " "space or a colon after completed keyword." #: ../../../Misc/NEWS:2454 msgid "" "`Issue #22241 `__: timezone.utc name is now " "plain 'UTC', not 'UTC-00:00'." msgstr "" "`Issue #22241 `__: timezone.utc name is now " "plain 'UTC', not 'UTC-00:00'." #: ../../../Misc/NEWS:2456 msgid "" "`Issue #23517 `__: fromtimestamp() and " "utcfromtimestamp() methods of datetime.datetime now round microseconds to " "nearest with ties going to nearest even integer (ROUND_HALF_EVEN), as " "round(float), instead of rounding towards -Infinity (ROUND_FLOOR)." msgstr "" "`Issue #23517 `__: fromtimestamp() and " "utcfromtimestamp() methods of datetime.datetime now round microseconds to " "nearest with ties going to nearest even integer (ROUND_HALF_EVEN), as " "round(float), instead of rounding towards -Infinity (ROUND_FLOOR)." #: ../../../Misc/NEWS:2461 msgid "" "`Issue #23552 `__: Timeit now warns when " "there is substantial (4x) variance between best and worst times. Patch from " "Serhiy Storchaka." msgstr "" "`Issue #23552 `__: Timeit now warns when " "there is substantial (4x) variance between best and worst times. Patch from " "Serhiy Storchaka." #: ../../../Misc/NEWS:2464 msgid "" "`Issue #24633 `__: site-packages/README -> " "README.txt." msgstr "" "`Issue #24633 `__: site-packages/README -> " "README.txt." #: ../../../Misc/NEWS:2466 msgid "" "`Issue #24879 `__: help() and pydoc can now " "list named tuple fields in the order they were defined rather than " "alphabetically. The ordering is determined by the _fields attribute if " "present." msgstr "" "`Issue #24879 `__: help() and pydoc can now " "list named tuple fields in the order they were defined rather than " "alphabetically. The ordering is determined by the _fields attribute if " "present." #: ../../../Misc/NEWS:2470 msgid "" "`Issue #24874 `__: Improve speed of itertools." "cycle() and make its pickle more compact." msgstr "" "`Issue #24874 `__: Improve speed of itertools." "cycle() and make its pickle more compact." #: ../../../Misc/NEWS:2473 msgid "" "Fix crash in itertools.cycle.__setstate__() when the first argument wasn't a " "list." msgstr "" #: ../../../Misc/NEWS:2476 msgid "" "`Issue #20059 `__: urllib.parse raises " "ValueError on all invalid ports. Patch by Martin Panter." msgstr "" "`Issue #20059 `__: urllib.parse raises " "ValueError on all invalid ports. Patch by Martin Panter." #: ../../../Misc/NEWS:2479 msgid "" "`Issue #24360 `__: Improve __repr__ of " "argparse.Namespace() for invalid identifiers. Patch by Matthias Bussonnier." msgstr "" "`Issue #24360 `__: Improve __repr__ of " "argparse.Namespace() for invalid identifiers. Patch by Matthias Bussonnier." #: ../../../Misc/NEWS:2482 msgid "" "`Issue #23426 `__: run_setup was broken in " "distutils. Patch from Alexander Belopolsky." msgstr "" "`Issue #23426 `__: run_setup was broken in " "distutils. Patch from Alexander Belopolsky." #: ../../../Misc/NEWS:2485 msgid "" "`Issue #13938 `__: 2to3 converts StringTypes " "to a tuple. Patch from Mark Hammond." msgstr "" "`Issue #13938 `__: 2to3 converts StringTypes " "to a tuple. Patch from Mark Hammond." #: ../../../Misc/NEWS:2487 msgid "" "`Issue #2091 `__: open() accepted a 'U' mode " "string containing '+', but 'U' can only be used with 'r'. Patch from Jeff " "Balogh and John O'Connor." msgstr "" "`Issue #2091 `__: open() accepted a 'U' mode " "string containing '+', but 'U' can only be used with 'r'. Patch from Jeff " "Balogh and John O'Connor." #: ../../../Misc/NEWS:2490 msgid "" "`Issue #8585 `__: improved tests for " "zipimporter2. Patch from Mark Lawrence." msgstr "" "`Issue #8585 `__: improved tests for " "zipimporter2. Patch from Mark Lawrence." #: ../../../Misc/NEWS:2492 msgid "" "`Issue #18622 `__: unittest.mock.mock_open()." "reset_mock would recurse infinitely. Patch from Nicola Palumbo and Laurent " "De Buyst." msgstr "" "`Issue #18622 `__: unittest.mock.mock_open()." "reset_mock would recurse infinitely. Patch from Nicola Palumbo and Laurent " "De Buyst." #: ../../../Misc/NEWS:2495 msgid "" "`Issue #24426 `__: Fast searching " "optimization in regular expressions now works for patterns that starts with " "capturing groups. Fast searching optimization now can't be disabled at " "compile time." msgstr "" "`Issue #24426 `__: Fast searching " "optimization in regular expressions now works for patterns that starts with " "capturing groups. Fast searching optimization now can't be disabled at " "compile time." #: ../../../Misc/NEWS:2499 msgid "" "`Issue #23661 `__: unittest.mock side_effects " "can now be exceptions again. This was a regression vs Python 3.4. Patch from " "Ignacio Rossi" msgstr "" "`Issue #23661 `__: unittest.mock side_effects " "can now be exceptions again. This was a regression vs Python 3.4. Patch from " "Ignacio Rossi" #: ../../../Misc/NEWS:2502 msgid "" "`Issue #13248 `__: Remove deprecated inspect." "getmoduleinfo function." msgstr "" "`Issue #13248 `__: Remove deprecated inspect." "getmoduleinfo function." #: ../../../Misc/NEWS:2504 ../../../Misc/NEWS:3105 msgid "" "`Issue #25578 `__: Fix (another) memory leak " "in SSLSocket.getpeercer()." msgstr "" "`Issue #25578 `__: Fix (another) memory leak " "in SSLSocket.getpeercer()." #: ../../../Misc/NEWS:2506 ../../../Misc/NEWS:3107 msgid "" "`Issue #25530 `__: Disable the vulnerable " "SSLv3 protocol by default when creating ssl.SSLContext." msgstr "" "`Issue #25530 `__: Disable the vulnerable " "SSLv3 protocol by default when creating ssl.SSLContext." #: ../../../Misc/NEWS:2509 ../../../Misc/NEWS:3110 msgid "" "`Issue #25569 `__: Fix memory leak in " "SSLSocket.getpeercert()." msgstr "" "`Issue #25569 `__: Fix memory leak in " "SSLSocket.getpeercert()." #: ../../../Misc/NEWS:2511 ../../../Misc/NEWS:3112 msgid "" "`Issue #25471 `__: Sockets returned from " "accept() shouldn't appear to be nonblocking." msgstr "" "`Issue #25471 `__: Sockets returned from " "accept() shouldn't appear to be nonblocking." #: ../../../Misc/NEWS:2514 ../../../Misc/NEWS:3115 msgid "" "`Issue #25319 `__: When threading.Event is " "reinitialized, the underlying condition should use a regular lock rather " "than a recursive lock." msgstr "" "`Issue #25319 `__: When threading.Event is " "reinitialized, the underlying condition should use a regular lock rather " "than a recursive lock." #: ../../../Misc/NEWS:2517 msgid "" "Skip getaddrinfo if host is already resolved. Patch by A. Jesse Jiryu Davis." msgstr "" #: ../../../Misc/NEWS:2520 msgid "" "`Issue #26050 `__: Add asyncio.StreamReader." "readuntil() method. Patch by Марк Коренберг." msgstr "" "`Issue #26050 `__: Add asyncio.StreamReader." "readuntil() method. Patch by Марк Коренберг." #: ../../../Misc/NEWS:2523 msgid "" "`Issue #25924 `__: Avoid unnecessary " "serialization of getaddrinfo(3) calls on OS X versions 10.5 or higher. " "Original patch by A. Jesse Jiryu Davis." msgstr "" "`Issue #25924 `__: Avoid unnecessary " "serialization of getaddrinfo(3) calls on OS X versions 10.5 or higher. " "Original patch by A. Jesse Jiryu Davis." #: ../../../Misc/NEWS:2526 msgid "" "`Issue #26406 `__: Avoid unnecessary " "serialization of getaddrinfo(3) calls on current versions of OpenBSD and " "NetBSD. Patch by A. Jesse Jiryu Davis." msgstr "" "`Issue #26406 `__: Avoid unnecessary " "serialization of getaddrinfo(3) calls on current versions of OpenBSD and " "NetBSD. Patch by A. Jesse Jiryu Davis." #: ../../../Misc/NEWS:2529 msgid "" "`Issue #26848 `__: Fix asyncio/subprocess." "communicate() to handle empty input. Patch by Jack O'Connor." msgstr "" "`Issue #26848 `__: Fix asyncio/subprocess." "communicate() to handle empty input. Patch by Jack O'Connor." #: ../../../Misc/NEWS:2532 msgid "" "`Issue #27040 `__: Add loop." "get_exception_handler method" msgstr "" "`Issue #27040 `__: Add loop." "get_exception_handler method" #: ../../../Misc/NEWS:2534 msgid "" "`Issue #27041 `__: asyncio: Add loop." "create_future method" msgstr "" "`Issue #27041 `__: asyncio: Add loop." "create_future method" #: ../../../Misc/NEWS:2539 msgid "" "`Issue #20640 `__: Add tests for idlelib." "configHelpSourceEdit. Patch by Saimadhav Heblikar." msgstr "" "`Issue #20640 `__: Add tests for idlelib." "configHelpSourceEdit. Patch by Saimadhav Heblikar." #: ../../../Misc/NEWS:2542 msgid "" "In the 'IDLE-console differences' section of the IDLE doc, clarify how " "running with IDLE affects sys.modules and the standard streams." msgstr "" #: ../../../Misc/NEWS:2545 msgid "" "`Issue #25507 `__: fix incorrect change in " "IOBinding that prevented printing. Augment IOBinding htest to include all " "major IOBinding functions." msgstr "" "`Issue #25507 `__: fix incorrect change in " "IOBinding that prevented printing. Augment IOBinding htest to include all " "major IOBinding functions." #: ../../../Misc/NEWS:2548 msgid "" "`Issue #25905 `__: Revert unwanted conversion " "of ' to ’ RIGHT SINGLE QUOTATION MARK in README.txt and open this and NEWS." "txt with 'ascii'. Re-encode CREDITS.txt to utf-8 and open it with 'utf-8'." msgstr "" "`Issue #25905 `__: Revert unwanted conversion " "of ' to ’ RIGHT SINGLE QUOTATION MARK in README.txt and open this and NEWS." "txt with 'ascii'. Re-encode CREDITS.txt to utf-8 and open it with 'utf-8'." #: ../../../Misc/NEWS:2552 ../../../Misc/NEWS:3144 msgid "" "`Issue #15348 `__: Stop the debugger engine " "(normally in a user process) before closing the debugger window (running in " "the IDLE process). This prevents the RuntimeErrors that were being caught " "and ignored." msgstr "" "`Issue #15348 `__: Stop the debugger engine " "(normally in a user process) before closing the debugger window (running in " "the IDLE process). This prevents the RuntimeErrors that were being caught " "and ignored." #: ../../../Misc/NEWS:2556 ../../../Misc/NEWS:3148 msgid "" "`Issue #24455 `__: Prevent IDLE from hanging " "when a) closing the shell while the debugger is active (15347); b) closing " "the debugger with the [X] button (15348); and c) activating the debugger " "when already active (24455). The patch by Mark Roseman does this by making " "two changes. 1. Suspend and resume the gui.interaction method with the tcl " "vwait mechanism intended for this purpose (instead of root.mainloop & ." "quit). 2. In gui.run, allow any existing interaction to terminate first." msgstr "" "`Issue #24455 `__: Prevent IDLE from hanging " "when a) closing the shell while the debugger is active (15347); b) closing " "the debugger with the [X] button (15348); and c) activating the debugger " "when already active (24455). The patch by Mark Roseman does this by making " "two changes. 1. Suspend and resume the gui.interaction method with the tcl " "vwait mechanism intended for this purpose (instead of root.mainloop & ." "quit). 2. In gui.run, allow any existing interaction to terminate first." #: ../../../Misc/NEWS:2564 ../../../Misc/NEWS:3156 msgid "" "Change 'The program' to 'Your program' in an IDLE 'kill program?' message to " "make it clearer that the program referred to is the currently running user " "program, not IDLE itself." msgstr "" #: ../../../Misc/NEWS:2568 ../../../Misc/NEWS:3160 msgid "" "`Issue #24750 `__: Improve the appearance of " "the IDLE editor window status bar. Patch by Mark Roseman." msgstr "" "`Issue #24750 `__: Improve the appearance of " "the IDLE editor window status bar. Patch by Mark Roseman." #: ../../../Misc/NEWS:2571 ../../../Misc/NEWS:3163 msgid "" "`Issue #25313 `__: Change the handling of new " "built-in text color themes to better address the compatibility problem " "introduced by the addition of IDLE Dark. Consistently use the revised " "idleConf.CurrentTheme everywhere in idlelib." msgstr "" "`Issue #25313 `__: Change the handling of new " "built-in text color themes to better address the compatibility problem " "introduced by the addition of IDLE Dark. Consistently use the revised " "idleConf.CurrentTheme everywhere in idlelib." #: ../../../Misc/NEWS:2575 ../../../Misc/NEWS:3167 msgid "" "`Issue #24782 `__: Extension configuration is " "now a tab in the IDLE Preferences dialog rather than a separate dialog. The " "former tabs are now a sorted list. Patch by Mark Roseman." msgstr "" "`Issue #24782 `__: Extension configuration is " "now a tab in the IDLE Preferences dialog rather than a separate dialog. The " "former tabs are now a sorted list. Patch by Mark Roseman." #: ../../../Misc/NEWS:2579 ../../../Misc/NEWS:3171 msgid "" "`Issue #22726 `__: Re-activate the config " "dialog help button with some content about the other buttons and the new " "IDLE Dark theme." msgstr "" "`Issue #22726 `__: Re-activate the config " "dialog help button with some content about the other buttons and the new " "IDLE Dark theme." #: ../../../Misc/NEWS:2582 ../../../Misc/NEWS:3174 msgid "" "`Issue #24820 `__: IDLE now has an 'IDLE " "Dark' built-in text color theme. It is more or less IDLE Classic inverted, " "with a cobalt blue background. Strings, comments, keywords, ... are still " "green, red, orange, ... . To use it with IDLEs released before November " "2015, hit the 'Save as New Custom Theme' button and enter a new name, such " "as 'Custom Dark'. The custom theme will work with any IDLE release, and can " "be modified." msgstr "" "`Issue #24820 `__: IDLE now has an 'IDLE " "Dark' built-in text color theme. It is more or less IDLE Classic inverted, " "with a cobalt blue background. Strings, comments, keywords, ... are still " "green, red, orange, ... . To use it with IDLEs released before November " "2015, hit the 'Save as New Custom Theme' button and enter a new name, such " "as 'Custom Dark'. The custom theme will work with any IDLE release, and can " "be modified." #: ../../../Misc/NEWS:2590 ../../../Misc/NEWS:3182 msgid "" "`Issue #25224 `__: README.txt is now an " "idlelib index for IDLE developers and curious users. The previous user " "content is now in the IDLE doc chapter. 'IDLE' now means 'Integrated " "Development and Learning Environment'." msgstr "" "`Issue #25224 `__: README.txt is now an " "idlelib index for IDLE developers and curious users. The previous user " "content is now in the IDLE doc chapter. 'IDLE' now means 'Integrated " "Development and Learning Environment'." #: ../../../Misc/NEWS:2594 ../../../Misc/NEWS:3186 msgid "" "`Issue #24820 `__: Users can now set " "breakpoint colors in Settings -> Custom Highlighting. Original patch by " "Mark Roseman." msgstr "" "`Issue #24820 `__: Users can now set " "breakpoint colors in Settings -> Custom Highlighting. Original patch by " "Mark Roseman." #: ../../../Misc/NEWS:2597 ../../../Misc/NEWS:3189 msgid "" "`Issue #24972 `__: Inactive selection " "background now matches active selection background, as configured by users, " "on all systems. Found items are now always highlighted on Windows. Initial " "patch by Mark Roseman." msgstr "" "`Issue #24972 `__: Inactive selection " "background now matches active selection background, as configured by users, " "on all systems. Found items are now always highlighted on Windows. Initial " "patch by Mark Roseman." #: ../../../Misc/NEWS:2601 ../../../Misc/NEWS:3193 msgid "" "`Issue #24570 `__: Idle: make calltip and " "completion boxes appear on Macs affected by a tk regression. Initial patch " "by Mark Roseman." msgstr "" "`Issue #24570 `__: Idle: make calltip and " "completion boxes appear on Macs affected by a tk regression. Initial patch " "by Mark Roseman." #: ../../../Misc/NEWS:2604 ../../../Misc/NEWS:3196 msgid "" "`Issue #24988 `__: Idle ScrolledList context " "menus (used in debugger) now work on Mac Aqua. Patch by Mark Roseman." msgstr "" "`Issue #24988 `__: Idle ScrolledList context " "menus (used in debugger) now work on Mac Aqua. Patch by Mark Roseman." #: ../../../Misc/NEWS:2607 ../../../Misc/NEWS:3199 msgid "" "`Issue #24801 `__: Make right-click for " "context menu work on Mac Aqua. Patch by Mark Roseman." msgstr "" "`Issue #24801 `__: Make right-click for " "context menu work on Mac Aqua. Patch by Mark Roseman." #: ../../../Misc/NEWS:2610 ../../../Misc/NEWS:3202 msgid "" "`Issue #25173 `__: Associate tkinter " "messageboxes with a specific widget. For Mac OSX, make them a 'sheet'. " "Patch by Mark Roseman." msgstr "" "`Issue #25173 `__: Associate tkinter " "messageboxes with a specific widget. For Mac OSX, make them a 'sheet'. " "Patch by Mark Roseman." #: ../../../Misc/NEWS:2613 ../../../Misc/NEWS:3205 msgid "" "`Issue #25198 `__: Enhance the initial html " "viewer now used for Idle Help. * Properly indent fixed-pitch text (patch by " "Mark Roseman). * Give code snippet a very Sphinx-like light blueish-gray " "background. * Re-use initial width and height set by users for shell and " "editor. * When the Table of Contents (TOC) menu is used, put the section " "header at the top of the screen." msgstr "" "`Issue #25198 `__: Enhance the initial html " "viewer now used for Idle Help. * Properly indent fixed-pitch text (patch by " "Mark Roseman). * Give code snippet a very Sphinx-like light blueish-gray " "background. * Re-use initial width and height set by users for shell and " "editor. * When the Table of Contents (TOC) menu is used, put the section " "header at the top of the screen." #: ../../../Misc/NEWS:2620 ../../../Misc/NEWS:3212 msgid "" "`Issue #25225 `__: Condense and rewrite Idle " "doc section on text colors." msgstr "" "`Issue #25225 `__: Condense and rewrite Idle " "doc section on text colors." #: ../../../Misc/NEWS:2622 ../../../Misc/NEWS:3214 msgid "" "`Issue #21995 `__: Explain some differences " "between IDLE and console Python." msgstr "" "`Issue #21995 `__: Explain some differences " "between IDLE and console Python." #: ../../../Misc/NEWS:2624 ../../../Misc/NEWS:3216 msgid "" "`Issue #22820 `__: Explain need for *print* " "when running file from Idle editor." msgstr "" "`Issue #22820 `__: Explain need for *print* " "when running file from Idle editor." #: ../../../Misc/NEWS:2626 ../../../Misc/NEWS:3218 msgid "" "`Issue #25224 `__: Doc: augment Idle feature " "list and no-subprocess section." msgstr "" "`Issue #25224 `__: Doc: augment Idle feature " "list and no-subprocess section." #: ../../../Misc/NEWS:2628 ../../../Misc/NEWS:3220 msgid "" "`Issue #25219 `__: Update doc for Idle " "command line options. Some were missing and notes were not correct." msgstr "" "`Issue #25219 `__: Update doc for Idle " "command line options. Some were missing and notes were not correct." #: ../../../Misc/NEWS:2631 ../../../Misc/NEWS:3223 msgid "" "`Issue #24861 `__: Most of idlelib is private " "and subject to change. Use idleib.idle.* to start Idle. See idlelib.__init__." "__doc__." msgstr "" "`Issue #24861 `__: Most of idlelib is private " "and subject to change. Use idleib.idle.* to start Idle. See idlelib.__init__." "__doc__." #: ../../../Misc/NEWS:2634 ../../../Misc/NEWS:3226 msgid "" "`Issue #25199 `__: Idle: add synchronization " "comments for future maintainers." msgstr "" "`Issue #25199 `__: Idle: add synchronization " "comments for future maintainers." #: ../../../Misc/NEWS:2636 msgid "" "`Issue #16893 `__: Replace help.txt with help." "html for Idle doc display. The new idlelib/help.html is rstripped Doc/build/" "html/library/idle.html. It looks better than help.txt and will better " "document Idle as released. The tkinter html viewer that works for this file " "was written by Rose Roseman. The now unused EditorWindow.HelpDialog class " "and helt.txt file are deprecated." msgstr "" "`Issue #16893 `__: Replace help.txt with help." "html for Idle doc display. The new idlelib/help.html is rstripped Doc/build/" "html/library/idle.html. It looks better than help.txt and will better " "document Idle as released. The tkinter html viewer that works for this file " "was written by Rose Roseman. The now unused EditorWindow.HelpDialog class " "and helt.txt file are deprecated." #: ../../../Misc/NEWS:2642 ../../../Misc/NEWS:3234 msgid "" "`Issue #24199 `__: Deprecate unused idlelib." "idlever with possible removal in 3.6." msgstr "" "`Issue #24199 `__: Deprecate unused idlelib." "idlever with possible removal in 3.6." #: ../../../Misc/NEWS:2644 ../../../Misc/NEWS:3236 msgid "" "`Issue #24790 `__: Remove extraneous code " "(which also create 2 & 3 conflicts)." msgstr "" "`Issue #24790 `__: Remove extraneous code " "(which also create 2 & 3 conflicts)." #: ../../../Misc/NEWS:2649 msgid "" "`Issue #26736 `__: Used HTTPS for external " "links in the documentation if possible." msgstr "" "`Issue #26736 `__: Used HTTPS for external " "links in the documentation if possible." #: ../../../Misc/NEWS:2651 msgid "" "`Issue #6953 `__: Rework the Readline module " "documentation to group related functions together, and add more details such " "as what underlying Readline functions and variables are accessed." msgstr "" "`Issue #6953 `__: Rework the Readline module " "documentation to group related functions together, and add more details such " "as what underlying Readline functions and variables are accessed." #: ../../../Misc/NEWS:2655 msgid "" "`Issue #23606 `__: Adds note to ctypes " "documentation regarding cdll.msvcrt." msgstr "" "`Issue #23606 `__: Adds note to ctypes " "documentation regarding cdll.msvcrt." #: ../../../Misc/NEWS:2657 ../../../Misc/NEWS:3248 msgid "" "`Issue #24952 `__: Clarify the default size " "argument of stack_size() in the \"threading\" and \"_thread\" modules. Patch " "from Mattip." msgstr "" "`Issue #24952 `__: Clarify the default size " "argument of stack_size() in the \"threading\" and \"_thread\" modules. Patch " "from Mattip." #: ../../../Misc/NEWS:2660 msgid "" "`Issue #26014 `__: Update 3.x packaging " "documentation: * \"See also\" links to the new docs are now provided in the " "legacy pages * links to setuptools documentation have been updated" msgstr "" "`Issue #26014 `__: Update 3.x packaging " "documentation: * \"See also\" links to the new docs are now provided in the " "legacy pages * links to setuptools documentation have been updated" #: ../../../Misc/NEWS:2667 msgid "" "`Issue #21916 `__: Added tests for the turtle " "module. Patch by ingrid, Gregory Loyse and Jelle Zijlstra." msgstr "" "`Issue #21916 `__: Added tests for the turtle " "module. Patch by ingrid, Gregory Loyse and Jelle Zijlstra." #: ../../../Misc/NEWS:2670 msgid "" "`Issue #26295 `__: When using \"python3 -m " "test --testdir=TESTDIR\", regrtest doesn't add \"test.\" prefix to test " "module names." msgstr "" "`Issue #26295 `__: When using \"python3 -m " "test --testdir=TESTDIR\", regrtest doesn't add \"test.\" prefix to test " "module names." #: ../../../Misc/NEWS:2673 msgid "" "`Issue #26523 `__: The multiprocessing thread " "pool (multiprocessing.dummy.Pool) was untested." msgstr "" "`Issue #26523 `__: The multiprocessing thread " "pool (multiprocessing.dummy.Pool) was untested." #: ../../../Misc/NEWS:2676 msgid "" "`Issue #26015 `__: Added new tests for " "pickling iterators of mutable sequences." msgstr "" "`Issue #26015 `__: Added new tests for " "pickling iterators of mutable sequences." #: ../../../Misc/NEWS:2678 msgid "" "`Issue #26325 `__: Added test.support." "check_no_resource_warning() to check that no ResourceWarning is emitted." msgstr "" "`Issue #26325 `__: Added test.support." "check_no_resource_warning() to check that no ResourceWarning is emitted." #: ../../../Misc/NEWS:2681 msgid "" "`Issue #25940 `__: Changed test_ssl to use " "its internal local server more. This avoids relying on svn.python.org, " "which recently changed root certificate." msgstr "" "`Issue #25940 `__: Changed test_ssl to use " "its internal local server more. This avoids relying on svn.python.org, " "which recently changed root certificate." #: ../../../Misc/NEWS:2684 msgid "" "`Issue #25616 `__: Tests for OrderedDict are " "extracted from test_collections into separate file test_ordered_dict." msgstr "" "`Issue #25616 `__: Tests for OrderedDict are " "extracted from test_collections into separate file test_ordered_dict." #: ../../../Misc/NEWS:2687 ../../../Misc/NEWS:3263 msgid "" "`Issue #25449 `__: Added tests for " "OrderedDict subclasses." msgstr "" "`Issue #25449 `__: Added tests for " "OrderedDict subclasses." #: ../../../Misc/NEWS:2689 msgid "" "`Issue #25188 `__: Add -P/--pgo to test." "regrtest to suppress error output when running the test suite for the " "purposes of a PGO build. Initial patch by Alecsandru Patrascu." msgstr "" "`Issue #25188 `__: Add -P/--pgo to test." "regrtest to suppress error output when running the test suite for the " "purposes of a PGO build. Initial patch by Alecsandru Patrascu." #: ../../../Misc/NEWS:2693 msgid "" "`Issue #22806 `__: Add ``python -m test --" "list-tests`` command to list tests." msgstr "" "`Issue #22806 `__: Add ``python -m test --" "list-tests`` command to list tests." #: ../../../Misc/NEWS:2695 msgid "" "`Issue #18174 `__: ``python -m test --" "huntrleaks ...`` now also checks for leak of file descriptors. Patch written " "by Richard Oudkerk." msgstr "" "`Issue #18174 `__: ``python -m test --" "huntrleaks ...`` now also checks for leak of file descriptors. Patch written " "by Richard Oudkerk." #: ../../../Misc/NEWS:2698 msgid "" "`Issue #25260 `__: Fix ``python -m test --" "coverage`` on Windows. Remove the list of ignored directories." msgstr "" "`Issue #25260 `__: Fix ``python -m test --" "coverage`` on Windows. Remove the list of ignored directories." #: ../../../Misc/NEWS:2701 ../../../Misc/NEWS:3270 msgid "" "``PCbuild\\rt.bat`` now accepts an unlimited number of arguments to pass " "along to regrtest.py. Previously there was a limit of 9." msgstr "" #: ../../../Misc/NEWS:2704 msgid "" "`Issue #26583 `__: Skip " "test_timestamp_overflow in test_import if bytecode files cannot be written." msgstr "" "`Issue #26583 `__: Skip " "test_timestamp_overflow in test_import if bytecode files cannot be written." #: ../../../Misc/NEWS:2710 msgid "" "`Issue #21277 `__: Don't try to link _ctypes " "with a ffi_convenience library." msgstr "" "`Issue #21277 `__: Don't try to link _ctypes " "with a ffi_convenience library." #: ../../../Misc/NEWS:2712 msgid "" "`Issue #26884 `__: Fix linking extension " "modules for cross builds. Patch by Xavier de Gaye." msgstr "" "`Issue #26884 `__: Fix linking extension " "modules for cross builds. Patch by Xavier de Gaye." #: ../../../Misc/NEWS:2715 msgid "" "`Issue #26932 `__: Fixed support of RTLD_* " "constants defined as enum values, not via macros (in particular on " "Android). Patch by Chi Hsuan Yen." msgstr "" "`Issue #26932 `__: Fixed support of RTLD_* " "constants defined as enum values, not via macros (in particular on " "Android). Patch by Chi Hsuan Yen." #: ../../../Misc/NEWS:2718 msgid "" "`Issue #22359 `__: Disable the rules for " "running _freeze_importlib and pgen when cross-compiling. The output of " "these programs is normally saved with the source code anyway, and is still " "regenerated when doing a native build. Patch by Xavier de Gaye." msgstr "" "`Issue #22359 `__: Disable the rules for " "running _freeze_importlib and pgen when cross-compiling. The output of " "these programs is normally saved with the source code anyway, and is still " "regenerated when doing a native build. Patch by Xavier de Gaye." #: ../../../Misc/NEWS:2723 msgid "" "`Issue #21668 `__: Link audioop, _datetime, " "_ctypes_test modules to libm, except on Mac OS X. Patch written by Chi Hsuan " "Yen." msgstr "" "`Issue #21668 `__: Link audioop, _datetime, " "_ctypes_test modules to libm, except on Mac OS X. Patch written by Chi Hsuan " "Yen." #: ../../../Misc/NEWS:2726 msgid "" "`Issue #25702 `__: A --with-lto configure " "option has been added that will enable link time optimizations at build time " "during a make profile-opt. Some compilers and toolchains are known to not " "produce stable code when using LTO, be sure to test things thoroughly before " "relying on it. It can provide a few % speed up over profile-opt alone." msgstr "" "`Issue #25702 `__: A --with-lto configure " "option has been added that will enable link time optimizations at build time " "during a make profile-opt. Some compilers and toolchains are known to not " "produce stable code when using LTO, be sure to test things thoroughly before " "relying on it. It can provide a few % speed up over profile-opt alone." #: ../../../Misc/NEWS:2732 msgid "" "`Issue #26624 `__: Adds validation of " "ucrtbase[d].dll version with warning for old versions." msgstr "" "`Issue #26624 `__: Adds validation of " "ucrtbase[d].dll version with warning for old versions." #: ../../../Misc/NEWS:2735 msgid "" "`Issue #17603 `__: Avoid error about " "nonexistant fileblocks.o file by using a lower-level check for st_blocks in " "struct stat." msgstr "" "`Issue #17603 `__: Avoid error about " "nonexistant fileblocks.o file by using a lower-level check for st_blocks in " "struct stat." #: ../../../Misc/NEWS:2738 msgid "" "`Issue #26079 `__: Fixing the build output " "folder for tix-8.4.3.6. Patch by Bjoern Thiel." msgstr "" "`Issue #26079 `__: Fixing the build output " "folder for tix-8.4.3.6. Patch by Bjoern Thiel." #: ../../../Misc/NEWS:2741 msgid "" "`Issue #26465 `__: Update Windows builds to " "use OpenSSL 1.0.2g." msgstr "" "`Issue #26465 `__: Update Windows builds to " "use OpenSSL 1.0.2g." #: ../../../Misc/NEWS:2743 msgid "" "`Issue #25348 `__: Added ``--pgo`` and ``--" "pgo-job`` arguments to ``PCbuild\\build.bat`` for building with Profile-" "Guided Optimization. The old ``PCbuild\\build_pgo.bat`` script is removed." msgstr "" "`Issue #25348 `__: Added ``--pgo`` and ``--" "pgo-job`` arguments to ``PCbuild\\build.bat`` for building with Profile-" "Guided Optimization. The old ``PCbuild\\build_pgo.bat`` script is removed." #: ../../../Misc/NEWS:2747 msgid "" "`Issue #25827 `__: Add support for building " "with ICC to ``configure``, including a new ``--with-icc`` flag." msgstr "" "`Issue #25827 `__: Add support for building " "with ICC to ``configure``, including a new ``--with-icc`` flag." #: ../../../Misc/NEWS:2750 msgid "" "`Issue #25696 `__: Fix installation of Python " "on UNIX with make -j9." msgstr "" "`Issue #25696 `__: Fix installation of Python " "on UNIX with make -j9." #: ../../../Misc/NEWS:2752 ../../../Misc/NEWS:3281 msgid "" "`Issue #24986 `__: It is now possible to " "build Python on Windows without errors when external libraries are not " "available." msgstr "" "`Issue #24986 `__: It is now possible to " "build Python on Windows without errors when external libraries are not " "available." #: ../../../Misc/NEWS:2755 msgid "" "`Issue #24421 `__: Compile Modules/_math.c " "once, before building extensions. Previously it could fail to compile " "properly if the math and cmath builds were concurrent." msgstr "" "`Issue #24421 `__: Compile Modules/_math.c " "once, before building extensions. Previously it could fail to compile " "properly if the math and cmath builds were concurrent." #: ../../../Misc/NEWS:2759 msgid "" "`Issue #26465 `__: Update OS X 10.5+ 32-bit-" "only installer to build and link with OpenSSL 1.0.2g." msgstr "" "`Issue #26465 `__: Update OS X 10.5+ 32-bit-" "only installer to build and link with OpenSSL 1.0.2g." #: ../../../Misc/NEWS:2762 msgid "" "`Issue #26268 `__: Update Windows builds to " "use OpenSSL 1.0.2f." msgstr "" "`Issue #26268 `__: Update Windows builds to " "use OpenSSL 1.0.2f." #: ../../../Misc/NEWS:2764 msgid "" "`Issue #25136 `__: Support Apple Xcode 7's " "new textual SDK stub libraries." msgstr "" "`Issue #25136 `__: Support Apple Xcode 7's " "new textual SDK stub libraries." #: ../../../Misc/NEWS:2766 msgid "" "`Issue #24324 `__: Do not enable unreachable " "code warnings when using gcc as the option does not work correctly in older " "versions of gcc and has been silently removed as of gcc-4.5." msgstr "" "`Issue #24324 `__: Do not enable unreachable " "code warnings when using gcc as the option does not work correctly in older " "versions of gcc and has been silently removed as of gcc-4.5." #: ../../../Misc/NEWS:2773 msgid "" "`Issue #27053 `__: Updates make_zip.py to " "correctly generate library ZIP file." msgstr "" "`Issue #27053 `__: Updates make_zip.py to " "correctly generate library ZIP file." #: ../../../Misc/NEWS:2775 msgid "" "`Issue #26268 `__: Update the prepare_ssl.py " "script to handle OpenSSL releases that don't include the contents of the " "include directory (that is, 1.0.2e and later)." msgstr "" "`Issue #26268 `__: Update the prepare_ssl.py " "script to handle OpenSSL releases that don't include the contents of the " "include directory (that is, 1.0.2e and later)." #: ../../../Misc/NEWS:2779 msgid "" "`Issue #26071 `__: bdist_wininst created " "binaries fail to start and find 32bit Python" msgstr "" "`Issue #26071 `__: bdist_wininst created " "binaries fail to start and find 32bit Python" #: ../../../Misc/NEWS:2782 msgid "" "`Issue #26073 `__: Update the list of magic " "numbers in launcher" msgstr "" "`Issue #26073 `__: Update the list of magic " "numbers in launcher" #: ../../../Misc/NEWS:2784 msgid "" "`Issue #26065 `__: Excludes venv from library " "when generating embeddable distro." msgstr "" "`Issue #26065 `__: Excludes venv from library " "when generating embeddable distro." #: ../../../Misc/NEWS:2787 ../../../Misc/NEWS:3320 msgid "" "`Issue #25022 `__: Removed very outdated PC/" "example_nt/ directory." msgstr "" "`Issue #25022 `__: Removed very outdated PC/" "example_nt/ directory." #: ../../../Misc/NEWS:2792 msgid "" "`Issue #26799 `__: Fix python-gdb.py: don't " "get C types once when the Python code is loaded, but get C types on demand. " "The C types can change if python-gdb.py is loaded before the Python " "executable. Patch written by Thomas Ilsche." msgstr "" "`Issue #26799 `__: Fix python-gdb.py: don't " "get C types once when the Python code is loaded, but get C types on demand. " "The C types can change if python-gdb.py is loaded before the Python " "executable. Patch written by Thomas Ilsche." #: ../../../Misc/NEWS:2797 msgid "" "`Issue #26271 `__: Fix the Freeze tool to " "properly use flags passed through configure. Patch by Daniel Shaulov." msgstr "" "`Issue #26271 `__: Fix the Freeze tool to " "properly use flags passed through configure. Patch by Daniel Shaulov." #: ../../../Misc/NEWS:2800 msgid "" "`Issue #26489 `__: Add dictionary unpacking " "support to Tools/parser/unparse.py. Patch by Guo Ci Teo." msgstr "" "`Issue #26489 `__: Add dictionary unpacking " "support to Tools/parser/unparse.py. Patch by Guo Ci Teo." #: ../../../Misc/NEWS:2803 msgid "" "`Issue #26316 `__: Fix variable name typo in " "Argument Clinic." msgstr "" "`Issue #26316 `__: Fix variable name typo in " "Argument Clinic." #: ../../../Misc/NEWS:2805 ../../../Misc/NEWS:3325 msgid "" "`Issue #25440 `__: Fix output of python-" "config --extension-suffix." msgstr "" "`Issue #25440 `__: Fix output of python-" "config --extension-suffix." #: ../../../Misc/NEWS:2807 msgid "" "`Issue #25154 `__: The pyvenv script has been " "deprecated in favour of `python3 -m venv`." msgstr "" "`Issue #25154 `__: The pyvenv script has been " "deprecated in favour of `python3 -m venv`." #: ../../../Misc/NEWS:2813 msgid "" "`Issue #26312 `__: SystemError is now raised " "in all programming bugs with using PyArg_ParseTupleAndKeywords(). " "RuntimeError did raised before in some programming bugs." msgstr "" "`Issue #26312 `__: SystemError is now raised " "in all programming bugs with using PyArg_ParseTupleAndKeywords(). " "RuntimeError did raised before in some programming bugs." #: ../../../Misc/NEWS:2817 msgid "" "`Issue #26198 `__: ValueError is now raised " "instead of TypeError on buffer overflow in parsing \"es#\" and \"et#\" " "format units. SystemError is now raised instead of TypeError on " "programmical error in parsing format string." msgstr "" "`Issue #26198 `__: ValueError is now raised " "instead of TypeError on buffer overflow in parsing \"es#\" and \"et#\" " "format units. SystemError is now raised instead of TypeError on " "programmical error in parsing format string." #: ../../../Misc/NEWS:2823 msgid "Python 3.5.1 final" msgstr "Python 3.5.1 final" #: ../../../Misc/NEWS:2825 msgid "Release date: 2015-12-06" msgstr "" #: ../../../Misc/NEWS:2836 msgid "" "`Issue #25715 `__: Python 3.5.1 installer " "shows wrong upgrade path and incorrect logic for launcher detection." msgstr "" "`Issue #25715 `__: Python 3.5.1 installer " "shows wrong upgrade path and incorrect logic for launcher detection." #: ../../../Misc/NEWS:2841 msgid "Python 3.5.1 release candidate 1" msgstr "" #: ../../../Misc/NEWS:2843 msgid "Release date: 2015-11-22" msgstr "" #: ../../../Misc/NEWS:2901 msgid "" "`Issue #25182 `__: The stdprinter (used as " "sys.stderr before the io module is imported at startup) now uses the " "backslashreplace error handler." msgstr "" "`Issue #25182 `__: The stdprinter (used as " "sys.stderr before the io module is imported at startup) now uses the " "backslashreplace error handler." #: ../../../Misc/NEWS:2904 msgid "" "`Issue #25131 `__: Make the line number and " "column offset of set/dict literals and comprehensions correspond to the " "opening brace." msgstr "" "`Issue #25131 `__: Make the line number and " "column offset of set/dict literals and comprehensions correspond to the " "opening brace." #: ../../../Misc/NEWS:2907 msgid "" "`Issue #25150 `__: Hide the private " "_Py_atomic_xxx symbols from the public Python.h header to fix a compilation " "error with OpenMP. PyThreadState_GET() becomes an alias to " "PyThreadState_Get() to avoid ABI incompatibilies." msgstr "" "`Issue #25150 `__: Hide the private " "_Py_atomic_xxx symbols from the public Python.h header to fix a compilation " "error with OpenMP. PyThreadState_GET() becomes an alias to " "PyThreadState_Get() to avoid ABI incompatibilies." #: ../../../Misc/NEWS:2930 msgid "" "`Issue #25590 `__: In the Readline completer, " "only call getattr() once per attribute." msgstr "" "`Issue #25590 `__: In the Readline completer, " "only call getattr() once per attribute." #: ../../../Misc/NEWS:3008 msgid "" "`Issue #24483 `__: C implementation of " "functools.lru_cache() now calculates key's hash only once." msgstr "" "`Issue #24483 `__: C implementation of " "functools.lru_cache() now calculates key's hash only once." #: ../../../Misc/NEWS:3011 msgid "" "`Issue #22958 `__: Constructor and update " "method of weakref.WeakValueDictionary now accept the self and the dict " "keyword arguments." msgstr "" "`Issue #22958 `__: Constructor and update " "method of weakref.WeakValueDictionary now accept the self and the dict " "keyword arguments." #: ../../../Misc/NEWS:3014 msgid "" "`Issue #22609 `__: Constructor of collections." "UserDict now accepts the self keyword argument." msgstr "" "`Issue #22609 `__: Constructor of collections." "UserDict now accepts the self keyword argument." #: ../../../Misc/NEWS:3017 msgid "" "`Issue #25111 `__: Fixed comparison of " "traceback.FrameSummary." msgstr "" "`Issue #25111 `__: Fixed comparison of " "traceback.FrameSummary." #: ../../../Misc/NEWS:3019 msgid "" "`Issue #25262 `__: Added support for " "BINBYTES8 opcode in Python implementation of unpickler. Highest 32 bits of " "64-bit size for BINUNICODE8 and BINBYTES8 opcodes no longer silently ignored " "on 32-bit platforms in C implementation." msgstr "" "`Issue #25262 `__: Added support for " "BINBYTES8 opcode in Python implementation of unpickler. Highest 32 bits of " "64-bit size for BINUNICODE8 and BINBYTES8 opcodes no longer silently ignored " "on 32-bit platforms in C implementation." #: ../../../Misc/NEWS:3023 msgid "" "`Issue #25034 `__: Fix string.Formatter " "problem with auto-numbering and nested format_specs. Patch by Anthon van der " "Neut." msgstr "" "`Issue #25034 `__: Fix string.Formatter " "problem with auto-numbering and nested format_specs. Patch by Anthon van der " "Neut." #: ../../../Misc/NEWS:3026 msgid "" "`Issue #25233 `__: Rewrite the guts of " "asyncio.Queue and asyncio.Semaphore to be more understandable and correct." msgstr "" "`Issue #25233 `__: Rewrite the guts of " "asyncio.Queue and asyncio.Semaphore to be more understandable and correct." #: ../../../Misc/NEWS:3035 msgid "" "`Issue #23329 `__: Allow the ssl module to be " "built with older versions of LibreSSL." msgstr "" "`Issue #23329 `__: Allow the ssl module to be " "built with older versions of LibreSSL." #: ../../../Misc/NEWS:3038 msgid "Prevent overflow in _Unpickler_Read." msgstr "" #: ../../../Misc/NEWS:3040 msgid "" "`Issue #25047 `__: The XML encoding " "declaration written by Element Tree now respects the letter case given by " "the user. This restores the ability to write encoding names in uppercase " "like \"UTF-8\", which worked in Python 2." msgstr "" "`Issue #25047 `__: The XML encoding " "declaration written by Element Tree now respects the letter case given by " "the user. This restores the ability to write encoding names in uppercase " "like \"UTF-8\", which worked in Python 2." #: ../../../Misc/NEWS:3044 msgid "" "`Issue #25135 `__: Make deque_clear() safer " "by emptying the deque before clearing. This helps avoid possible reentrancy " "issues." msgstr "" "`Issue #25135 `__: Make deque_clear() safer " "by emptying the deque before clearing. This helps avoid possible reentrancy " "issues." #: ../../../Misc/NEWS:3047 msgid "" "`Issue #19143 `__: platform module now reads " "Windows version from kernel32.dll to avoid compatibility shims." msgstr "" "`Issue #19143 `__: platform module now reads " "Windows version from kernel32.dll to avoid compatibility shims." #: ../../../Misc/NEWS:3050 msgid "" "`Issue #25092 `__: Fix datetime.strftime() " "failure when errno was already set to EINVAL." msgstr "" "`Issue #25092 `__: Fix datetime.strftime() " "failure when errno was already set to EINVAL." #: ../../../Misc/NEWS:3053 msgid "" "`Issue #23517 `__: Fix rounding in " "fromtimestamp() and utcfromtimestamp() methods of datetime.datetime: " "microseconds are now rounded to nearest with ties going to nearest even " "integer (ROUND_HALF_EVEN), instead of being rounding towards minus infinity " "(ROUND_FLOOR). It's important that these methods use the same rounding mode " "than datetime.timedelta to keep the property: (datetime(1970,1,1) + " "timedelta(seconds=t)) == datetime.utcfromtimestamp(t). It also the rounding " "mode used by round(float) for example." msgstr "" "`Issue #23517 `__: Fix rounding in " "fromtimestamp() and utcfromtimestamp() methods of datetime.datetime: " "microseconds are now rounded to nearest with ties going to nearest even " "integer (ROUND_HALF_EVEN), instead of being rounding towards minus infinity " "(ROUND_FLOOR). It's important that these methods use the same rounding mode " "than datetime.timedelta to keep the property: (datetime(1970,1,1) + " "timedelta(seconds=t)) == datetime.utcfromtimestamp(t). It also the rounding " "mode used by round(float) for example." #: ../../../Misc/NEWS:3061 msgid "" "`Issue #25155 `__: Fix datetime.datetime." "now() and datetime.datetime.utcnow() on Windows to support date after year " "2038. It was a regression introduced in Python 3.5.0." msgstr "" "`Issue #25155 `__: Fix datetime.datetime." "now() and datetime.datetime.utcnow() on Windows to support date after year " "2038. It was a regression introduced in Python 3.5.0." #: ../../../Misc/NEWS:3065 msgid "" "`Issue #25108 `__: Omitted internal frames in " "traceback functions print_stack(), format_stack(), and extract_stack() " "called without arguments." msgstr "" "`Issue #25108 `__: Omitted internal frames in " "traceback functions print_stack(), format_stack(), and extract_stack() " "called without arguments." #: ../../../Misc/NEWS:3068 msgid "" "`Issue #25118 `__: Fix a regression of Python " "3.5.0 in os.waitpid() on Windows." msgstr "" "`Issue #25118 `__: Fix a regression of Python " "3.5.0 in os.waitpid() on Windows." #: ../../../Misc/NEWS:3070 msgid "" "`Issue #24684 `__: socket.socket." "getaddrinfo() now calls PyUnicode_AsEncodedString() instead of calling the " "encode() method of the host, to handle correctly custom string with an " "encode() method which doesn't return a byte string. The encoder of the IDNA " "codec is now called directly instead of calling the encode() method of the " "string." msgstr "" "`Issue #24684 `__: socket.socket." "getaddrinfo() now calls PyUnicode_AsEncodedString() instead of calling the " "encode() method of the host, to handle correctly custom string with an " "encode() method which doesn't return a byte string. The encoder of the IDNA " "codec is now called directly instead of calling the encode() method of the " "string." #: ../../../Misc/NEWS:3076 msgid "" "`Issue #25060 `__: Correctly compute stack " "usage of the BUILD_MAP opcode." msgstr "" "`Issue #25060 `__: Correctly compute stack " "usage of the BUILD_MAP opcode." #: ../../../Misc/NEWS:3078 msgid "" "`Issue #24857 `__: Comparing call_args to a " "long sequence now correctly returns a boolean result instead of raising an " "exception. Patch by A Kaptur." msgstr "" "`Issue #24857 `__: Comparing call_args to a " "long sequence now correctly returns a boolean result instead of raising an " "exception. Patch by A Kaptur." #: ../../../Misc/NEWS:3081 msgid "" "`Issue #23144 `__: Make sure that HTMLParser." "feed() returns all the data, even when convert_charrefs is True." msgstr "" "`Issue #23144 `__: Make sure that HTMLParser." "feed() returns all the data, even when convert_charrefs is True." #: ../../../Misc/NEWS:3084 msgid "" "`Issue #24982 `__: shutil.make_archive() with " "the \"zip\" format now adds entries for directories (including empty " "directories) in ZIP file." msgstr "" "`Issue #24982 `__: shutil.make_archive() with " "the \"zip\" format now adds entries for directories (including empty " "directories) in ZIP file." #: ../../../Misc/NEWS:3087 msgid "" "`Issue #25019 `__: Fixed a crash caused by " "setting non-string key of expat parser. Based on patch by John Leitch." msgstr "" "`Issue #25019 `__: Fixed a crash caused by " "setting non-string key of expat parser. Based on patch by John Leitch." #: ../../../Misc/NEWS:3090 msgid "" "`Issue #16180 `__: Exit pdb if file has " "syntax error, instead of trapping user in an infinite loop. Patch by Xavier " "de Gaye." msgstr "" "`Issue #16180 `__: Exit pdb if file has " "syntax error, instead of trapping user in an infinite loop. Patch by Xavier " "de Gaye." #: ../../../Misc/NEWS:3093 msgid "" "`Issue #24891 `__: Fix a race condition at " "Python startup if the file descriptor of stdin (0), stdout (1) or stderr (2) " "is closed while Python is creating sys.stdin, sys.stdout and sys.stderr " "objects. These attributes are now set to None if the creation of the object " "failed, instead of raising an OSError exception. Initial patch written by " "Marco Paolini." msgstr "" "`Issue #24891 `__: Fix a race condition at " "Python startup if the file descriptor of stdin (0), stdout (1) or stderr (2) " "is closed while Python is creating sys.stdin, sys.stdout and sys.stderr " "objects. These attributes are now set to None if the creation of the object " "failed, instead of raising an OSError exception. Initial patch written by " "Marco Paolini." #: ../../../Misc/NEWS:3099 msgid "" "`Issue #24992 `__: Fix error handling and a " "race condition (related to garbage collection) in collections.OrderedDict " "constructor." msgstr "" "`Issue #24992 `__: Fix error handling and a " "race condition (related to garbage collection) in collections.OrderedDict " "constructor." #: ../../../Misc/NEWS:3102 msgid "" "`Issue #24881 `__: Fixed setting binary mode " "in Python implementation of FileIO on Windows and Cygwin. Patch from Akira " "Li." msgstr "" "`Issue #24881 `__: Fixed setting binary mode " "in Python implementation of FileIO on Windows and Cygwin. Patch from Akira " "Li." #: ../../../Misc/NEWS:3118 msgid "" "`Issue #21112 `__: Fix regression in unittest." "expectedFailure on subclasses. Patch from Berker Peksag." msgstr "" "`Issue #21112 `__: Fix regression in unittest." "expectedFailure on subclasses. Patch from Berker Peksag." #: ../../../Misc/NEWS:3121 msgid "" "`Issue #24764 `__: cgi.FieldStorage." "read_multi() now ignores the Content-Length header in part headers. Patch " "written by Peter Landry and reviewed by Pierre Quentel." msgstr "" "`Issue #24764 `__: cgi.FieldStorage." "read_multi() now ignores the Content-Length header in part headers. Patch " "written by Peter Landry and reviewed by Pierre Quentel." #: ../../../Misc/NEWS:3125 ../../../Misc/NEWS:3388 msgid "" "`Issue #24913 `__: Fix overrun error in deque." "index(). Found by John Leitch and Bryce Darling." msgstr "" "`Issue #24913 `__: Fix overrun error in deque." "index(). Found by John Leitch and Bryce Darling." #: ../../../Misc/NEWS:3128 msgid "" "`Issue #24774 `__: Fix docstring in http." "server.test. Patch from Chiu-Hsiang Hsu." msgstr "" "`Issue #24774 `__: Fix docstring in http." "server.test. Patch from Chiu-Hsiang Hsu." #: ../../../Misc/NEWS:3130 msgid "" "`Issue #21159 `__: Improve message in " "configparser.InterpolationMissingOptionError. Patch from �?ukasz Langa." msgstr "" "`Issue #21159 `__: Improve message in " "configparser.InterpolationMissingOptionError. Patch from �?ukasz Langa." #: ../../../Misc/NEWS:3133 msgid "" "`Issue #20362 `__: Honour TestCase." "longMessage correctly in assertRegex. Patch from Ilia Kurenkov." msgstr "" "`Issue #20362 `__: Honour TestCase." "longMessage correctly in assertRegex. Patch from Ilia Kurenkov." #: ../../../Misc/NEWS:3136 msgid "" "`Issue #23572 `__: Fixed functools." "singledispatch on classes with falsy metaclasses. Patch by Ethan Furman." msgstr "" "`Issue #23572 `__: Fixed functools." "singledispatch on classes with falsy metaclasses. Patch by Ethan Furman." #: ../../../Misc/NEWS:3139 msgid "asyncio: ensure_future() now accepts awaitable objects." msgstr "" #: ../../../Misc/NEWS:3228 msgid "" "`Issue #16893 `__: Replace help.txt with help." "html for Idle doc display. The new idlelib/help.html is rstripped Doc/build/" "html/library/idle.html. It looks better than help.txt and will better " "document Idle as released. The tkinter html viewer that works for this file " "was written by Mark Roseman. The now unused EditorWindow.HelpDialog class " "and helt.txt file are deprecated." msgstr "" "`Issue #16893 `__: Replace help.txt with help." "html for Idle doc display. The new idlelib/help.html is rstripped Doc/build/" "html/library/idle.html. It looks better than help.txt and will better " "document Idle as released. The tkinter html viewer that works for this file " "was written by Mark Roseman. The now unused EditorWindow.HelpDialog class " "and helt.txt file are deprecated." #: ../../../Misc/NEWS:3241 msgid "" "`Issue #12067 `__: Rewrite Comparisons " "section in the Expressions chapter of the language reference. Some of the " "details of comparing mixed types were incorrect or ambiguous. NotImplemented " "is only relevant at a lower level than the Expressions chapter. Added " "details of comparing range() objects, and default behaviour and consistency " "suggestions for user-defined classes. Patch from Andy Maier." msgstr "" "`Issue #12067 `__: Rewrite Comparisons " "section in the Expressions chapter of the language reference. Some of the " "details of comparing mixed types were incorrect or ambiguous. NotImplemented " "is only relevant at a lower level than the Expressions chapter. Added " "details of comparing range() objects, and default behaviour and consistency " "suggestions for user-defined classes. Patch from Andy Maier." #: ../../../Misc/NEWS:3251 msgid "" "`Issue #23725 `__: Overhaul tempfile docs. " "Note deprecated status of mktemp. Patch from Zbigniew Jędrzejewski-Szmek." msgstr "" "`Issue #23725 `__: Overhaul tempfile docs. " "Note deprecated status of mktemp. Patch from Zbigniew Jędrzejewski-Szmek." #: ../../../Misc/NEWS:3254 msgid "" "`Issue #24808 `__: Update the types of some " "PyTypeObject fields. Patch by Joseph Weston." msgstr "" "`Issue #24808 `__: Update the types of some " "PyTypeObject fields. Patch by Joseph Weston." #: ../../../Misc/NEWS:3257 msgid "" "`Issue #22812 `__: Fix unittest discovery " "examples. Patch from Pam McA'Nulty." msgstr "" "`Issue #22812 `__: Fix unittest discovery " "examples. Patch from Pam McA'Nulty." #: ../../../Misc/NEWS:3265 msgid "" "`Issue #25099 `__: Make test_compileall not " "fail when an entry on sys.path cannot be written to (commonly seen in " "administrative installs on Windows)." msgstr "" "`Issue #25099 `__: Make test_compileall not " "fail when an entry on sys.path cannot be written to (commonly seen in " "administrative installs on Windows)." #: ../../../Misc/NEWS:3268 msgid "" "`Issue #23919 `__: Prevents assert dialogs " "appearing in the test suite." msgstr "" "`Issue #23919 `__: Prevents assert dialogs " "appearing in the test suite." #: ../../../Misc/NEWS:3276 msgid "" "`Issue #24915 `__: Add LLVM support for PGO " "builds and use the test suite to generate the profile data. Initial patch by " "Alecsandru Patrascu of Intel." msgstr "" "`Issue #24915 `__: Add LLVM support for PGO " "builds and use the test suite to generate the profile data. Initial patch by " "Alecsandru Patrascu of Intel." #: ../../../Misc/NEWS:3279 msgid "" "`Issue #24910 `__: Windows MSIs now have " "unique display names." msgstr "" "`Issue #24910 `__: Windows MSIs now have " "unique display names." #: ../../../Misc/NEWS:3287 msgid "" "`Issue #25450 `__: Updates shortcuts to start " "Python in installation directory." msgstr "" "`Issue #25450 `__: Updates shortcuts to start " "Python in installation directory." #: ../../../Misc/NEWS:3289 msgid "" "`Issue #25164 `__: Changes default all-users " "install directory to match per-user directory." msgstr "" "`Issue #25164 `__: Changes default all-users " "install directory to match per-user directory." #: ../../../Misc/NEWS:3292 msgid "" "`Issue #25143 `__: Improves installer error " "messages for unsupported platforms." msgstr "" "`Issue #25143 `__: Improves installer error " "messages for unsupported platforms." #: ../../../Misc/NEWS:3294 msgid "" "`Issue #25163 `__: Display correct directory " "in installer when using non-default settings." msgstr "" "`Issue #25163 `__: Display correct directory " "in installer when using non-default settings." #: ../../../Misc/NEWS:3297 msgid "" "`Issue #25361 `__: Disables use of SSE2 " "instructions in Windows 32-bit build" msgstr "" "`Issue #25361 `__: Disables use of SSE2 " "instructions in Windows 32-bit build" #: ../../../Misc/NEWS:3299 msgid "" "`Issue #25089 `__: Adds logging to installer " "for case where launcher is not selected on upgrade." msgstr "" "`Issue #25089 `__: Adds logging to installer " "for case where launcher is not selected on upgrade." #: ../../../Misc/NEWS:3302 msgid "" "`Issue #25165 `__: Windows uninstallation " "should not remove launcher if other versions remain" msgstr "" "`Issue #25165 `__: Windows uninstallation " "should not remove launcher if other versions remain" #: ../../../Misc/NEWS:3305 msgid "" "`Issue #25112 `__: py.exe launcher is missing " "icons" msgstr "" "`Issue #25112 `__: py.exe launcher is missing " "icons" #: ../../../Misc/NEWS:3307 msgid "" "`Issue #25102 `__: Windows installer does not " "precompile for -O or -OO." msgstr "" "`Issue #25102 `__: Windows installer does not " "precompile for -O or -OO." #: ../../../Misc/NEWS:3309 msgid "" "`Issue #25081 `__: Makes Back button in " "installer go back to upgrade page when upgrading." msgstr "" "`Issue #25081 `__: Makes Back button in " "installer go back to upgrade page when upgrading." #: ../../../Misc/NEWS:3312 msgid "" "`Issue #25091 `__: Increases font size of the " "installer." msgstr "" "`Issue #25091 `__: Increases font size of the " "installer." #: ../../../Misc/NEWS:3314 msgid "" "`Issue #25126 `__: Clarifies that the non-web " "installer will download some components." msgstr "" "`Issue #25126 `__: Clarifies that the non-web " "installer will download some components." #: ../../../Misc/NEWS:3317 msgid "" "`Issue #25213 `__: Restores " "requestedExecutionLevel to manifest to disable UAC virtualization." msgstr "" "`Issue #25213 `__: Restores " "requestedExecutionLevel to manifest to disable UAC virtualization." #: ../../../Misc/NEWS:3329 msgid "Python 3.5.0 final" msgstr "Python 3.5.0 final" #: ../../../Misc/NEWS:3331 msgid "Release date: 2015-09-13" msgstr "" #: ../../../Misc/NEWS:3336 msgid "" "`Issue #25071 `__: Windows installer should " "not require TargetDir parameter when installing quietly." msgstr "" "`Issue #25071 `__: Windows installer should " "not require TargetDir parameter when installing quietly." #: ../../../Misc/NEWS:3341 msgid "Python 3.5.0 release candidate 4" msgstr "" #: ../../../Misc/NEWS:3343 msgid "Release date: 2015-09-09" msgstr "Date de sortie : 2015-09-09" #: ../../../Misc/NEWS:3348 msgid "" "`Issue #25029 `__: Fixes MemoryError in " "test_strptime." msgstr "" "`Issue #25029 `__: Fixes MemoryError in " "test_strptime." #: ../../../Misc/NEWS:3353 msgid "" "`Issue #25027 `__: Reverts partial-static " "build options and adds vcruntime140.dll to Windows installation." msgstr "" "`Issue #25027 `__: Reverts partial-static " "build options and adds vcruntime140.dll to Windows installation." #: ../../../Misc/NEWS:3358 msgid "Python 3.5.0 release candidate 3" msgstr "" #: ../../../Misc/NEWS:3360 msgid "Release date: 2015-09-07" msgstr "Date de sortie : 2015-09-07" #: ../../../Misc/NEWS:3365 msgid "" "`Issue #24305 `__: Prevent import subsystem " "stack frames from being counted by the warnings.warn(stacklevel=) parameter." msgstr "" "`Issue #24305 `__: Prevent import subsystem " "stack frames from being counted by the warnings.warn(stacklevel=) parameter." #: ../../../Misc/NEWS:3368 msgid "" "`Issue #24912 `__: Prevent __class__ " "assignment to immutable built-in objects." msgstr "" "`Issue #24912 `__: Prevent __class__ " "assignment to immutable built-in objects." #: ../../../Misc/NEWS:3370 msgid "" "`Issue #24975 `__: Fix AST compilation for " "PEP 448 syntax." msgstr "" "`Issue #24975 `__: Fix AST compilation for " "PEP 448 syntax." #: ../../../Misc/NEWS:3375 msgid "" "`Issue #24917 `__: time_strftime() buffer " "over-read." msgstr "" "`Issue #24917 `__: time_strftime() buffer " "over-read." #: ../../../Misc/NEWS:3377 msgid "" "`Issue #24748 `__: To resolve a compatibility " "problem found with py2exe and pywin32, imp.load_dynamic() once again ignores " "previously loaded modules to support Python modules replacing themselves " "with extension modules. Patch by Petr Viktorin." msgstr "" "`Issue #24748 `__: To resolve a compatibility " "problem found with py2exe and pywin32, imp.load_dynamic() once again ignores " "previously loaded modules to support Python modules replacing themselves " "with extension modules. Patch by Petr Viktorin." #: ../../../Misc/NEWS:3382 msgid "" "`Issue #24635 `__: Fixed a bug in typing.py " "where isinstance([], typing.Iterable) would return True once, then False on " "subsequent calls." msgstr "" "`Issue #24635 `__: Fixed a bug in typing.py " "where isinstance([], typing.Iterable) would return True once, then False on " "subsequent calls." #: ../../../Misc/NEWS:3385 msgid "" "`Issue #24989 `__: Fixed buffer overread in " "BytesIO.readline() if a position is set beyond size. Based on patch by John " "Leitch." msgstr "" "`Issue #24989 `__: Fixed buffer overread in " "BytesIO.readline() if a position is set beyond size. Based on patch by John " "Leitch." #: ../../../Misc/NEWS:3393 msgid "Python 3.5.0 release candidate 2" msgstr "" #: ../../../Misc/NEWS:3395 msgid "Release date: 2015-08-25" msgstr "" #: ../../../Misc/NEWS:3400 msgid "" "`Issue #24769 `__: Interpreter now starts " "properly when dynamic loading is disabled. Patch by Petr Viktorin." msgstr "" "`Issue #24769 `__: Interpreter now starts " "properly when dynamic loading is disabled. Patch by Petr Viktorin." #: ../../../Misc/NEWS:3403 msgid "" "`Issue #21167 `__: NAN operations are now " "handled correctly when python is compiled with ICC even if -fp-model strict " "is not specified." msgstr "" "`Issue #21167 `__: NAN operations are now " "handled correctly when python is compiled with ICC even if -fp-model strict " "is not specified." #: ../../../Misc/NEWS:3406 msgid "" "`Issue #24492 `__: A \"package\" lacking a " "__name__ attribute when trying to perform a ``from .. import ...`` statement " "will trigger an ImportError instead of an AttributeError." msgstr "" "`Issue #24492 `__: A \"package\" lacking a " "__name__ attribute when trying to perform a ``from .. import ...`` statement " "will trigger an ImportError instead of an AttributeError." #: ../../../Misc/NEWS:3413 msgid "" "`Issue #24847 `__: Removes vcruntime140.dll " "dependency from Tcl/Tk." msgstr "" "`Issue #24847 `__: Removes vcruntime140.dll " "dependency from Tcl/Tk." #: ../../../Misc/NEWS:3415 msgid "" "`Issue #24839 `__: platform._syscmd_ver " "raises DeprecationWarning" msgstr "" "`Issue #24839 `__: platform._syscmd_ver " "raises DeprecationWarning" #: ../../../Misc/NEWS:3417 msgid "" "`Issue #24867 `__: Fix Task.get_stack() for " "'async def' coroutines" msgstr "" "`Issue #24867 `__: Fix Task.get_stack() for " "'async def' coroutines" #: ../../../Misc/NEWS:3421 msgid "Python 3.5.0 release candidate 1" msgstr "" #: ../../../Misc/NEWS:3423 msgid "Release date: 2015-08-09" msgstr "" #: ../../../Misc/NEWS:3428 msgid "" "`Issue #24667 `__: Resize odict in all cases " "that the underlying dict resizes." msgstr "" "`Issue #24667 `__: Resize odict in all cases " "that the underlying dict resizes." #: ../../../Misc/NEWS:3433 msgid "" "`Issue #24824 `__: Signatures of codecs." "encode() and codecs.decode() now are compatible with pydoc." msgstr "" "`Issue #24824 `__: Signatures of codecs." "encode() and codecs.decode() now are compatible with pydoc." #: ../../../Misc/NEWS:3436 msgid "" "`Issue #24634 `__: Importing uuid should not " "try to load libc on Windows" msgstr "" "`Issue #24634 `__: Importing uuid should not " "try to load libc on Windows" #: ../../../Misc/NEWS:3438 msgid "" "`Issue #24798 `__: _msvccompiler.py doesn't " "properly support manifests" msgstr "" "`Issue #24798 `__: _msvccompiler.py doesn't " "properly support manifests" #: ../../../Misc/NEWS:3440 msgid "" "`Issue #4395 `__: Better testing and " "documentation of binary operators. Patch by Martin Panter." msgstr "" "`Issue #4395 `__: Better testing and " "documentation of binary operators. Patch by Martin Panter." #: ../../../Misc/NEWS:3443 msgid "" "`Issue #23973 `__: Update typing.py from " "GitHub repo." msgstr "" "`Issue #23973 `__: Update typing.py from " "GitHub repo." #: ../../../Misc/NEWS:3445 msgid "" "`Issue #23004 `__: mock_open() now reads " "binary data correctly when the type of read_data is bytes. Initial patch by " "Aaron Hill." msgstr "" "`Issue #23004 `__: mock_open() now reads " "binary data correctly when the type of read_data is bytes. Initial patch by " "Aaron Hill." #: ../../../Misc/NEWS:3448 msgid "" "`Issue #23888 `__: Handle fractional time in " "cookie expiry. Patch by ssh." msgstr "" "`Issue #23888 `__: Handle fractional time in " "cookie expiry. Patch by ssh." #: ../../../Misc/NEWS:3450 msgid "" "`Issue #23652 `__: Make it possible to " "compile the select module against the libc headers from the Linux Standard " "Base, which do not include some EPOLL macros. Patch by Matt Frank." msgstr "" "`Issue #23652 `__: Make it possible to " "compile the select module against the libc headers from the Linux Standard " "Base, which do not include some EPOLL macros. Patch by Matt Frank." #: ../../../Misc/NEWS:3454 msgid "" "`Issue #22932 `__: Fix timezones in email." "utils.formatdate. Patch from Dmitry Shachnev." msgstr "" "`Issue #22932 `__: Fix timezones in email." "utils.formatdate. Patch from Dmitry Shachnev." #: ../../../Misc/NEWS:3457 msgid "" "`Issue #23779 `__: imaplib raises TypeError " "if authenticator tries to abort. Patch from Craig Holmquist." msgstr "" "`Issue #23779 `__: imaplib raises TypeError " "if authenticator tries to abort. Patch from Craig Holmquist." #: ../../../Misc/NEWS:3460 msgid "" "`Issue #23319 `__: Fix ctypes." "BigEndianStructure, swap correctly bytes. Patch written by Matthieu Gautier." msgstr "" "`Issue #23319 `__: Fix ctypes." "BigEndianStructure, swap correctly bytes. Patch written by Matthieu Gautier." #: ../../../Misc/NEWS:3463 msgid "" "`Issue #23254 `__: Document how to close the " "TCPServer listening socket. Patch from Martin Panter." msgstr "" "`Issue #23254 `__: Document how to close the " "TCPServer listening socket. Patch from Martin Panter." #: ../../../Misc/NEWS:3466 msgid "" "`Issue #19450 `__: Update Windows and OS X " "installer builds to use SQLite 3.8.11." msgstr "" "`Issue #19450 `__: Update Windows and OS X " "installer builds to use SQLite 3.8.11." #: ../../../Misc/NEWS:3468 msgid "" "`Issue #17527 `__: Add PATCH to wsgiref." "validator. Patch from Luca Sbardella." msgstr "" "`Issue #17527 `__: Add PATCH to wsgiref." "validator. Patch from Luca Sbardella." #: ../../../Misc/NEWS:3470 msgid "" "`Issue #24791 `__: Fix grammar regression for " "call syntax: 'g(\\*a or b)'." msgstr "" "`Issue #24791 `__: Fix grammar regression for " "call syntax: 'g(\\*a or b)'." #: ../../../Misc/NEWS:3475 msgid "" "`Issue #23672 `__: Allow Idle to edit and run " "files with astral chars in name. Patch by Mohd Sanad Zaki Rizvi." msgstr "" "`Issue #23672 `__: Allow Idle to edit and run " "files with astral chars in name. Patch by Mohd Sanad Zaki Rizvi." #: ../../../Misc/NEWS:3478 msgid "" "`Issue #24745 `__: Idle editor default font. " "Switch from Courier to platform-sensitive TkFixedFont. This should not " "affect current customized font selections. If there is a problem, edit " "$HOME/.idlerc/config-main.cfg and remove 'fontxxx' entries from [Editor " "Window]. Patch by Mark Roseman." msgstr "" "`Issue #24745 `__: Idle editor default font. " "Switch from Courier to platform-sensitive TkFixedFont. This should not " "affect current customized font selections. If there is a problem, edit " "$HOME/.idlerc/config-main.cfg and remove 'fontxxx' entries from [Editor " "Window]. Patch by Mark Roseman." #: ../../../Misc/NEWS:3483 msgid "" "`Issue #21192 `__: Idle editor. When a file " "is run, put its name in the restart bar. Do not print false prompts. " "Original patch by Adnan Umer." msgstr "" "`Issue #21192 `__: Idle editor. When a file " "is run, put its name in the restart bar. Do not print false prompts. " "Original patch by Adnan Umer." #: ../../../Misc/NEWS:3486 msgid "" "`Issue #13884 `__: Idle menus. Remove tearoff " "lines. Patch by Roger Serwy." msgstr "" "`Issue #13884 `__: Idle menus. Remove tearoff " "lines. Patch by Roger Serwy." #: ../../../Misc/NEWS:3491 msgid "" "`Issue #24129 `__: Clarify the reference " "documentation for name resolution. This includes removing the assumption " "that readers will be familiar with the name resolution scheme Python used " "prior to the introduction of lexical scoping for function namespaces. Patch " "by Ivan Levkivskyi." msgstr "" "`Issue #24129 `__: Clarify the reference " "documentation for name resolution. This includes removing the assumption " "that readers will be familiar with the name resolution scheme Python used " "prior to the introduction of lexical scoping for function namespaces. Patch " "by Ivan Levkivskyi." #: ../../../Misc/NEWS:3496 msgid "" "`Issue #20769 `__: Improve reload() docs. " "Patch by Dorian Pula." msgstr "" "`Issue #20769 `__: Improve reload() docs. " "Patch by Dorian Pula." #: ../../../Misc/NEWS:3498 msgid "" "`Issue #23589 `__: Remove duplicate sentence " "from the FAQ. Patch by Yongzhi Pan." msgstr "" "`Issue #23589 `__: Remove duplicate sentence " "from the FAQ. Patch by Yongzhi Pan." #: ../../../Misc/NEWS:3500 msgid "" "`Issue #24729 `__: Correct IO tutorial to " "match implementation regarding encoding parameter to open function." msgstr "" "`Issue #24729 `__: Correct IO tutorial to " "match implementation regarding encoding parameter to open function." #: ../../../Misc/NEWS:3506 msgid "" "`Issue #24751 `__: When running regrtest with " "the ``-w`` command line option, a test run is no longer marked as a failure " "if all tests succeed when re-run." msgstr "" "`Issue #24751 `__: When running regrtest with " "the ``-w`` command line option, a test run is no longer marked as a failure " "if all tests succeed when re-run." #: ../../../Misc/NEWS:3512 msgid "Python 3.5.0 beta 4" msgstr "" #: ../../../Misc/NEWS:3514 msgid "Release date: 2015-07-26" msgstr "" #: ../../../Misc/NEWS:3519 msgid "" "`Issue #23573 `__: Restored optimization of " "bytes.rfind() and bytearray.rfind() for single-byte argument on Linux." msgstr "" "`Issue #23573 `__: Restored optimization of " "bytes.rfind() and bytearray.rfind() for single-byte argument on Linux." #: ../../../Misc/NEWS:3522 msgid "" "`Issue #24569 `__: Make PEP 448 dictionary " "evaluation more consistent." msgstr "" "`Issue #24569 `__: Make PEP 448 dictionary " "evaluation more consistent." #: ../../../Misc/NEWS:3524 msgid "" "`Issue #24583 `__: Fix crash when set is " "mutated while being updated." msgstr "" "`Issue #24583 `__: Fix crash when set is " "mutated while being updated." #: ../../../Misc/NEWS:3526 msgid "" "`Issue #24407 `__: Fix crash when dict is " "mutated while being updated." msgstr "" "`Issue #24407 `__: Fix crash when dict is " "mutated while being updated." #: ../../../Misc/NEWS:3528 msgid "" "`Issue #24619 `__: New approach for " "tokenizing async/await. As a consequence, it is now possible to have one-" "line 'async def foo(): await ..' functions." msgstr "" "`Issue #24619 `__: New approach for " "tokenizing async/await. As a consequence, it is now possible to have one-" "line 'async def foo(): await ..' functions." #: ../../../Misc/NEWS:3531 msgid "" "`Issue #24687 `__: Plug refleak on " "SyntaxError in function parameters annotations." msgstr "" "`Issue #24687 `__: Plug refleak on " "SyntaxError in function parameters annotations." #: ../../../Misc/NEWS:3534 msgid "" "`Issue #15944 `__: memoryview: Allow " "arbitrary formats when casting to bytes. Patch by Martin Panter." msgstr "" "`Issue #15944 `__: memoryview: Allow " "arbitrary formats when casting to bytes. Patch by Martin Panter." #: ../../../Misc/NEWS:3540 msgid "" "`Issue #23441 `__: rcompleter now prints a " "tab character instead of displaying possible completions for an empty word. " "Initial patch by Martin Sekera." msgstr "" "`Issue #23441 `__: rcompleter now prints a " "tab character instead of displaying possible completions for an empty word. " "Initial patch by Martin Sekera." #: ../../../Misc/NEWS:3543 msgid "" "`Issue #24683 `__: Fixed crashes in _json " "functions called with arguments of inappropriate type." msgstr "" "`Issue #24683 `__: Fixed crashes in _json " "functions called with arguments of inappropriate type." #: ../../../Misc/NEWS:3546 msgid "" "`Issue #21697 `__: shutil.copytree() now " "correctly handles symbolic links that point to directories. Patch by " "Eduardo Seabra and Thomas Kluyver." msgstr "" "`Issue #21697 `__: shutil.copytree() now " "correctly handles symbolic links that point to directories. Patch by " "Eduardo Seabra and Thomas Kluyver." #: ../../../Misc/NEWS:3549 msgid "" "`Issue #14373 `__: Fixed segmentation fault " "when gc.collect() is called during constructing lru_cache (C implementation)." msgstr "" "`Issue #14373 `__: Fixed segmentation fault " "when gc.collect() is called during constructing lru_cache (C implementation)." #: ../../../Misc/NEWS:3552 msgid "" "`Issue #24695 `__: Fix a regression in " "traceback.print_exception(). If exc_traceback is None we shouldn't print a " "traceback header like described in the documentation." msgstr "" "`Issue #24695 `__: Fix a regression in " "traceback.print_exception(). If exc_traceback is None we shouldn't print a " "traceback header like described in the documentation." #: ../../../Misc/NEWS:3556 msgid "" "`Issue #24620 `__: Random.setstate() now " "validates the value of state last element." msgstr "" "`Issue #24620 `__: Random.setstate() now " "validates the value of state last element." #: ../../../Misc/NEWS:3558 msgid "" "`Issue #22485 `__: Fixed an issue that caused " "`inspect.getsource` to return incorrect results on nested functions." msgstr "" "`Issue #22485 `__: Fixed an issue that caused " "`inspect.getsource` to return incorrect results on nested functions." #: ../../../Misc/NEWS:3561 msgid "" "`Issue #22153 `__: Improve unittest docs. " "Patch from Martin Panter and evilzero." msgstr "" "`Issue #22153 `__: Improve unittest docs. " "Patch from Martin Panter and evilzero." #: ../../../Misc/NEWS:3563 msgid "" "`Issue #24580 `__: Symbolic group references " "to open group in re patterns now are explicitly forbidden as well as numeric " "group references." msgstr "" "`Issue #24580 `__: Symbolic group references " "to open group in re patterns now are explicitly forbidden as well as numeric " "group references." #: ../../../Misc/NEWS:3566 msgid "" "`Issue #24206 `__: Fixed __eq__ and __ne__ " "methods of inspect classes." msgstr "" "`Issue #24206 `__: Fixed __eq__ and __ne__ " "methods of inspect classes." #: ../../../Misc/NEWS:3568 msgid "" "`Issue #24631 `__: Fixed regression in the " "timeit module with multiline setup." msgstr "" "`Issue #24631 `__: Fixed regression in the " "timeit module with multiline setup." #: ../../../Misc/NEWS:3570 msgid "" "`Issue #24608 `__: chunk.Chunk.read() now " "always returns bytes, not str." msgstr "" "`Issue #24608 `__: chunk.Chunk.read() now " "always returns bytes, not str." #: ../../../Misc/NEWS:3572 msgid "" "`Issue #18684 `__: Fixed reading out of the " "buffer in the re module." msgstr "" "`Issue #18684 `__: Fixed reading out of the " "buffer in the re module." #: ../../../Misc/NEWS:3574 msgid "" "`Issue #24259 `__: tarfile now raises a " "ReadError if an archive is truncated inside a data segment." msgstr "" "`Issue #24259 `__: tarfile now raises a " "ReadError if an archive is truncated inside a data segment." #: ../../../Misc/NEWS:3577 msgid "" "`Issue #15014 `__: SMTP.auth() and SMTP." "login() now support RFC 4954's optional initial-response argument to the " "SMTP AUTH command." msgstr "" "`Issue #15014 `__: SMTP.auth() and SMTP." "login() now support RFC 4954's optional initial-response argument to the " "SMTP AUTH command." #: ../../../Misc/NEWS:3580 msgid "" "`Issue #6549 `__: Remove hyphen from ttk." "Style().element options. Only return result from ttk.Style().configure if a " "result was generated or a query submitted." msgstr "" "`Issue #6549 `__: Remove hyphen from ttk." "Style().element options. Only return result from ttk.Style().configure if a " "result was generated or a query submitted." #: ../../../Misc/NEWS:3583 msgid "" "`Issue #24669 `__: Fix inspect.getsource() " "for 'async def' functions. Patch by Kai Groner." msgstr "" "`Issue #24669 `__: Fix inspect.getsource() " "for 'async def' functions. Patch by Kai Groner." #: ../../../Misc/NEWS:3586 msgid "" "`Issue #24688 `__: ast.get_docstring() for " "'async def' functions." msgstr "" "`Issue #24688 `__: ast.get_docstring() for " "'async def' functions." #: ../../../Misc/NEWS:3591 msgid "" "`Issue #24603 `__: Update Windows builds and " "OS X 10.5 installer to use OpenSSL 1.0.2d." msgstr "" "`Issue #24603 `__: Update Windows builds and " "OS X 10.5 installer to use OpenSSL 1.0.2d." #: ../../../Misc/NEWS:3595 msgid "Python 3.5.0 beta 3" msgstr "Python 3.5.0 beta 3" #: ../../../Misc/NEWS:3597 msgid "Release date: 2015-07-05" msgstr "Date de sortie : 2015-07-05" #: ../../../Misc/NEWS:3602 msgid "" "`Issue #24467 `__: Fixed possible buffer over-" "read in bytearray. The bytearray object now always allocates place for " "trailing null byte and it's buffer now is always null-terminated." msgstr "" "`Issue #24467 `__: Fixed possible buffer over-" "read in bytearray. The bytearray object now always allocates place for " "trailing null byte and it's buffer now is always null-terminated." #: ../../../Misc/NEWS:3606 msgid "Upgrade to Unicode 8.0.0." msgstr "" #: ../../../Misc/NEWS:3608 msgid "" "`Issue #24345 `__: Add Py_tp_finalize slot " "for the stable ABI." msgstr "" "`Issue #24345 `__: Add Py_tp_finalize slot " "for the stable ABI." #: ../../../Misc/NEWS:3610 msgid "" "`Issue #24400 `__: Introduce a distinct type " "for PEP 492 coroutines; add types.CoroutineType, inspect.getcoroutinestate, " "inspect.getcoroutinelocals; coroutines no longer use CO_GENERATOR flag; sys." "set_coroutine_wrapper works only for 'async def' coroutines; inspect." "iscoroutine no longer uses collections.abc.Coroutine, it's intended to test " "for pure 'async def' coroutines only; add new opcode: GET_YIELD_FROM_ITER; " "fix generators wrapper used in types.coroutine to be instance of collections." "abc.Generator; collections.abc.Awaitable and collections.abc.Coroutine can " "no longer be used to detect generator-based coroutines--use inspect." "isawaitable instead." msgstr "" "`Issue #24400 `__: Introduce a distinct type " "for PEP 492 coroutines; add types.CoroutineType, inspect.getcoroutinestate, " "inspect.getcoroutinelocals; coroutines no longer use CO_GENERATOR flag; sys." "set_coroutine_wrapper works only for 'async def' coroutines; inspect." "iscoroutine no longer uses collections.abc.Coroutine, it's intended to test " "for pure 'async def' coroutines only; add new opcode: GET_YIELD_FROM_ITER; " "fix generators wrapper used in types.coroutine to be instance of collections." "abc.Generator; collections.abc.Awaitable and collections.abc.Coroutine can " "no longer be used to detect generator-based coroutines--use inspect." "isawaitable instead." #: ../../../Misc/NEWS:3621 msgid "" "`Issue #24450 `__: Add gi_yieldfrom to " "generators and cr_await to coroutines. Contributed by Benno Leslie and Yury " "Selivanov." msgstr "" "`Issue #24450 `__: Add gi_yieldfrom to " "generators and cr_await to coroutines. Contributed by Benno Leslie and Yury " "Selivanov." #: ../../../Misc/NEWS:3624 msgid "" "`Issue #19235 `__: Add new RecursionError " "exception. Patch by Georg Brandl." msgstr "" "`Issue #19235 `__: Add new RecursionError " "exception. Patch by Georg Brandl." #: ../../../Misc/NEWS:3629 msgid "" "`Issue #21750 `__: mock_open.read_data can " "now be read from each instance, as it could in Python 3.3." msgstr "" "`Issue #21750 `__: mock_open.read_data can " "now be read from each instance, as it could in Python 3.3." #: ../../../Misc/NEWS:3632 msgid "" "`Issue #24552 `__: Fix use after free in an " "error case of the _pickle module." msgstr "" "`Issue #24552 `__: Fix use after free in an " "error case of the _pickle module." #: ../../../Misc/NEWS:3634 msgid "" "`Issue #24514 `__: tarfile now tolerates " "number fields consisting of only whitespace." msgstr "" "`Issue #24514 `__: tarfile now tolerates " "number fields consisting of only whitespace." #: ../../../Misc/NEWS:3637 msgid "" "`Issue #19176 `__: Fixed doctype() related " "bugs in C implementation of ElementTree. A deprecation warning no longer " "issued by XMLParser subclass with default doctype() method. Direct call of " "doctype() now issues a warning. Parser's doctype() now is not called if " "target's doctype() is called. Based on patch by Martin Panter." msgstr "" "`Issue #19176 `__: Fixed doctype() related " "bugs in C implementation of ElementTree. A deprecation warning no longer " "issued by XMLParser subclass with default doctype() method. Direct call of " "doctype() now issues a warning. Parser's doctype() now is not called if " "target's doctype() is called. Based on patch by Martin Panter." #: ../../../Misc/NEWS:3643 msgid "" "`Issue #20387 `__: Restore semantic round-" "trip correctness in tokenize/untokenize for tab-indented blocks." msgstr "" "`Issue #20387 `__: Restore semantic round-" "trip correctness in tokenize/untokenize for tab-indented blocks." #: ../../../Misc/NEWS:3646 msgid "" "`Issue #24456 `__: Fixed possible buffer over-" "read in adpcm2lin() and lin2adpcm() functions of the audioop module." msgstr "" "`Issue #24456 `__: Fixed possible buffer over-" "read in adpcm2lin() and lin2adpcm() functions of the audioop module." #: ../../../Misc/NEWS:3649 msgid "" "`Issue #24336 `__: The contextmanager " "decorator now works with functions with keyword arguments called \"func\" " "and \"self\". Patch by Martin Panter." msgstr "" "`Issue #24336 `__: The contextmanager " "decorator now works with functions with keyword arguments called \"func\" " "and \"self\". Patch by Martin Panter." #: ../../../Misc/NEWS:3652 msgid "" "`Issue #24522 `__: Fix possible integer " "overflow in json accelerator module." msgstr "" "`Issue #24522 `__: Fix possible integer " "overflow in json accelerator module." #: ../../../Misc/NEWS:3654 msgid "" "`Issue #24489 `__: ensure a previously set C " "errno doesn't disturb cmath.polar()." msgstr "" "`Issue #24489 `__: ensure a previously set C " "errno doesn't disturb cmath.polar()." #: ../../../Misc/NEWS:3656 msgid "" "`Issue #24408 `__: Fixed AttributeError in " "measure() and metrics() methods of tkinter.Font." msgstr "" "`Issue #24408 `__: Fixed AttributeError in " "measure() and metrics() methods of tkinter.Font." #: ../../../Misc/NEWS:3659 msgid "" "`Issue #14373 `__: C implementation of " "functools.lru_cache() now can be used with methods." msgstr "" "`Issue #14373 `__: C implementation of " "functools.lru_cache() now can be used with methods." #: ../../../Misc/NEWS:3662 msgid "" "`Issue #24347 `__: Set KeyError if " "PyDict_GetItemWithError returns NULL." msgstr "" "`Issue #24347 `__: Set KeyError if " "PyDict_GetItemWithError returns NULL." #: ../../../Misc/NEWS:3664 msgid "" "`Issue #24348 `__: Drop superfluous incref/" "decref." msgstr "" "`Issue #24348 `__: Drop superfluous incref/" "decref." #: ../../../Misc/NEWS:3666 msgid "" "`Issue #24359 `__: Check for changed " "OrderedDict size during iteration." msgstr "" "`Issue #24359 `__: Check for changed " "OrderedDict size during iteration." #: ../../../Misc/NEWS:3668 msgid "" "`Issue #24368 `__: Support keyword arguments " "in OrderedDict methods." msgstr "" "`Issue #24368 `__: Support keyword arguments " "in OrderedDict methods." #: ../../../Misc/NEWS:3670 msgid "" "`Issue #24362 `__: Simplify the C OrderedDict " "fast nodes resize logic." msgstr "" "`Issue #24362 `__: Simplify the C OrderedDict " "fast nodes resize logic." #: ../../../Misc/NEWS:3672 msgid "" "`Issue #24377 `__: Fix a ref leak in " "OrderedDict.__repr__." msgstr "" "`Issue #24377 `__: Fix a ref leak in " "OrderedDict.__repr__." #: ../../../Misc/NEWS:3674 msgid "" "`Issue #24369 `__: Defend against key-changes " "during iteration." msgstr "" "`Issue #24369 `__: Defend against key-changes " "during iteration." #: ../../../Misc/NEWS:3679 msgid "" "`Issue #24373 `__: _testmultiphase and " "xxlimited now use tp_traverse and tp_finalize to avoid reference leaks " "encountered when combining tp_dealloc with PyType_FromSpec (see `issue " "#16690 `__ for details)" msgstr "" "`Issue #24373 `__: _testmultiphase and " "xxlimited now use tp_traverse and tp_finalize to avoid reference leaks " "encountered when combining tp_dealloc with PyType_FromSpec (see `issue " "#16690 `__ for details)" #: ../../../Misc/NEWS:3686 msgid "" "`Issue #24458 `__: Update documentation to " "cover multi-phase initialization for extension modules (PEP 489). Patch by " "Petr Viktorin." msgstr "" "`Issue #24458 `__: Update documentation to " "cover multi-phase initialization for extension modules (PEP 489). Patch by " "Petr Viktorin." #: ../../../Misc/NEWS:3689 msgid "" "`Issue #24351 `__: Clarify what is meant by " "\"identifier\" in the context of string.Template instances." msgstr "" "`Issue #24351 `__: Clarify what is meant by " "\"identifier\" in the context of string.Template instances." #: ../../../Misc/NEWS:3695 msgid "" "`Issue #24432 `__: Update Windows builds and " "OS X 10.5 installer to use OpenSSL 1.0.2c." msgstr "" "`Issue #24432 `__: Update Windows builds and " "OS X 10.5 installer to use OpenSSL 1.0.2c." #: ../../../Misc/NEWS:3700 msgid "Python 3.5.0 beta 2" msgstr "" #: ../../../Misc/NEWS:3702 msgid "Release date: 2015-05-31" msgstr "" #: ../../../Misc/NEWS:3707 msgid "" "`Issue #24284 `__: The startswith and " "endswith methods of the str class no longer return True when finding the " "empty string and the indexes are completely out of range." msgstr "" "`Issue #24284 `__: The startswith and " "endswith methods of the str class no longer return True when finding the " "empty string and the indexes are completely out of range." #: ../../../Misc/NEWS:3711 msgid "" "`Issue #24115 `__: Update uses of " "PyObject_IsTrue(), PyObject_Not(), PyObject_IsInstance(), " "PyObject_RichCompareBool() and _PyDict_Contains() to check for and handle " "errors correctly." msgstr "" "`Issue #24115 `__: Update uses of " "PyObject_IsTrue(), PyObject_Not(), PyObject_IsInstance(), " "PyObject_RichCompareBool() and _PyDict_Contains() to check for and handle " "errors correctly." #: ../../../Misc/NEWS:3715 msgid "" "`Issue #24328 `__: Fix importing one " "character extension modules." msgstr "" "`Issue #24328 `__: Fix importing one " "character extension modules." #: ../../../Misc/NEWS:3717 msgid "" "`Issue #11205 `__: In dictionary displays, " "evaluate the key before the value." msgstr "" "`Issue #11205 `__: In dictionary displays, " "evaluate the key before the value." #: ../../../Misc/NEWS:3719 msgid "" "`Issue #24285 `__: Fixed regression that " "prevented importing extension modules from inside packages. Patch by Petr " "Viktorin." msgstr "" "`Issue #24285 `__: Fixed regression that " "prevented importing extension modules from inside packages. Patch by Petr " "Viktorin." #: ../../../Misc/NEWS:3725 msgid "" "`Issue #23247 `__: Fix a crash in the " "StreamWriter.reset() of CJK codecs." msgstr "" "`Issue #23247 `__: Fix a crash in the " "StreamWriter.reset() of CJK codecs." #: ../../../Misc/NEWS:3727 msgid "" "`Issue #24270 `__: Add math.isclose() and " "cmath.isclose() functions as per PEP 485. Contributed by Chris Barker and " "Tal Einat." msgstr "" "`Issue #24270 `__: Add math.isclose() and " "cmath.isclose() functions as per PEP 485. Contributed by Chris Barker and " "Tal Einat." #: ../../../Misc/NEWS:3730 msgid "" "`Issue #5633 `__: Fixed timeit when the " "statement is a string and the setup is not." msgstr "" "`Issue #5633 `__: Fixed timeit when the " "statement is a string and the setup is not." #: ../../../Misc/NEWS:3732 msgid "" "`Issue #24326 `__: Fixed audioop.ratecv() " "with non-default weightB argument. Original patch by David Moore." msgstr "" "`Issue #24326 `__: Fixed audioop.ratecv() " "with non-default weightB argument. Original patch by David Moore." #: ../../../Misc/NEWS:3735 msgid "" "`Issue #16991 `__: Add a C implementation of " "OrderedDict." msgstr "" "`Issue #16991 `__: Add a C implementation of " "OrderedDict." #: ../../../Misc/NEWS:3737 msgid "" "`Issue #23934 `__: Fix inspect.signature to " "fail correctly for builtin types lacking signature information. Initial " "patch by James Powell." msgstr "" "`Issue #23934 `__: Fix inspect.signature to " "fail correctly for builtin types lacking signature information. Initial " "patch by James Powell." #: ../../../Misc/NEWS:3742 msgid "Python 3.5.0 beta 1" msgstr "Python 3.5.0 beta 1" #: ../../../Misc/NEWS:3744 msgid "Release date: 2015-05-24" msgstr "" #: ../../../Misc/NEWS:3749 msgid "" "`Issue #24276 `__: Fixed optimization of " "property descriptor getter." msgstr "" "`Issue #24276 `__: Fixed optimization of " "property descriptor getter." #: ../../../Misc/NEWS:3751 msgid "" "`Issue #24268 `__: PEP 489: Multi-phase " "extension module initialization. Patch by Petr Viktorin." msgstr "" "`Issue #24268 `__: PEP 489: Multi-phase " "extension module initialization. Patch by Petr Viktorin." #: ../../../Misc/NEWS:3754 msgid "" "`Issue #23359 `__: Optimize set object " "internals by specializing the hash table search into a lookup function and " "an insert function." msgstr "" "`Issue #23359 `__: Optimize set object " "internals by specializing the hash table search into a lookup function and " "an insert function." #: ../../../Misc/NEWS:3757 msgid "" "`Issue #23955 `__: Add pyvenv.cfg option to " "suppress registry/environment lookup for generating sys.path on Windows." msgstr "" "`Issue #23955 `__: Add pyvenv.cfg option to " "suppress registry/environment lookup for generating sys.path on Windows." #: ../../../Misc/NEWS:3760 msgid "" "`Issue #24257 `__: Fixed system error in the " "comparison of faked types.SimpleNamespace." msgstr "" "`Issue #24257 `__: Fixed system error in the " "comparison of faked types.SimpleNamespace." #: ../../../Misc/NEWS:3763 msgid "" "`Issue #22939 `__: Fixed integer overflow in " "iterator object. Patch by Clement Rouault." msgstr "" "`Issue #22939 `__: Fixed integer overflow in " "iterator object. Patch by Clement Rouault." #: ../../../Misc/NEWS:3766 msgid "" "`Issue #23985 `__: Fix a possible buffer " "overrun when deleting a slice from the front of a bytearray and then " "appending some other bytes data." msgstr "" "`Issue #23985 `__: Fix a possible buffer " "overrun when deleting a slice from the front of a bytearray and then " "appending some other bytes data." #: ../../../Misc/NEWS:3769 msgid "" "`Issue #24102 `__: Fixed exception type " "checking in standard error handlers." msgstr "" "`Issue #24102 `__: Fixed exception type " "checking in standard error handlers." #: ../../../Misc/NEWS:3771 msgid "" "`Issue #15027 `__: The UTF-32 encoder is now " "3x to 7x faster." msgstr "" "`Issue #15027 `__: The UTF-32 encoder is now " "3x to 7x faster." #: ../../../Misc/NEWS:3773 msgid "" "`Issue #23290 `__: Optimize set_merge() for " "cases where the target is empty. (Contributed by Serhiy Storchaka.)" msgstr "" "`Issue #23290 `__: Optimize set_merge() for " "cases where the target is empty. (Contributed by Serhiy Storchaka.)" #: ../../../Misc/NEWS:3776 msgid "" "`Issue #2292 `__: PEP 448: Additional " "Unpacking Generalizations." msgstr "" "`Issue #2292 `__: PEP 448: Additional " "Unpacking Generalizations." #: ../../../Misc/NEWS:3778 msgid "" "`Issue #24096 `__: Make warnings." "warn_explicit more robust against mutation of the warnings.filters list." msgstr "" "`Issue #24096 `__: Make warnings." "warn_explicit more robust against mutation of the warnings.filters list." #: ../../../Misc/NEWS:3781 msgid "" "`Issue #23996 `__: Avoid a crash when a " "delegated generator raises an unnormalized StopIteration exception. Patch " "by Stefan Behnel." msgstr "" "`Issue #23996 `__: Avoid a crash when a " "delegated generator raises an unnormalized StopIteration exception. Patch " "by Stefan Behnel." #: ../../../Misc/NEWS:3784 msgid "" "`Issue #23910 `__: Optimize property() getter " "calls. Patch by Joe Jevnik." msgstr "" "`Issue #23910 `__: Optimize property() getter " "calls. Patch by Joe Jevnik." #: ../../../Misc/NEWS:3786 msgid "" "`Issue #23911 `__: Move path-based importlib " "bootstrap code to a separate frozen module." msgstr "" "`Issue #23911 `__: Move path-based importlib " "bootstrap code to a separate frozen module." #: ../../../Misc/NEWS:3789 msgid "" "`Issue #24192 `__: Fix namespace package " "imports." msgstr "" "`Issue #24192 `__: Fix namespace package " "imports." #: ../../../Misc/NEWS:3791 msgid "" "`Issue #24022 `__: Fix tokenizer crash when " "processing undecodable source code." msgstr "" "`Issue #24022 `__: Fix tokenizer crash when " "processing undecodable source code." #: ../../../Misc/NEWS:3793 msgid "" "`Issue #9951 `__: Added a hex() method to " "bytes, bytearray, and memoryview." msgstr "" "`Issue #9951 `__: Added a hex() method to " "bytes, bytearray, and memoryview." #: ../../../Misc/NEWS:3795 msgid "" "`Issue #22906 `__: PEP 479: Change " "StopIteration handling inside generators." msgstr "" "`Issue #22906 `__: PEP 479: Change " "StopIteration handling inside generators." #: ../../../Misc/NEWS:3797 msgid "" "`Issue #24017 `__: PEP 492: Coroutines with " "async and await syntax." msgstr "" "`Issue #24017 `__: PEP 492: Coroutines with " "async and await syntax." #: ../../../Misc/NEWS:3802 msgid "" "`Issue #14373 `__: Added C implementation of " "functools.lru_cache(). Based on patches by Matt Joiner and Alexey Kachayev." msgstr "" "`Issue #14373 `__: Added C implementation of " "functools.lru_cache(). Based on patches by Matt Joiner and Alexey Kachayev." #: ../../../Misc/NEWS:3805 msgid "" "`Issue #24230 `__: The tempfile module now " "accepts bytes for prefix, suffix and dir parameters and returns bytes in " "such situations (matching the os module APIs)." msgstr "" "`Issue #24230 `__: The tempfile module now " "accepts bytes for prefix, suffix and dir parameters and returns bytes in " "such situations (matching the os module APIs)." #: ../../../Misc/NEWS:3808 msgid "" "`Issue #22189 `__: collections.UserString now " "supports __getnewargs__(), __rmod__(), casefold(), format_map(), " "isprintable(), and maketrans(). Patch by Joe Jevnik." msgstr "" "`Issue #22189 `__: collections.UserString now " "supports __getnewargs__(), __rmod__(), casefold(), format_map(), " "isprintable(), and maketrans(). Patch by Joe Jevnik." #: ../../../Misc/NEWS:3812 msgid "" "`Issue #24244 `__: Prevents termination when " "an invalid format string is encountered on Windows in strftime." msgstr "" "`Issue #24244 `__: Prevents termination when " "an invalid format string is encountered on Windows in strftime." #: ../../../Misc/NEWS:3815 msgid "" "`Issue #23973 `__: PEP 484: Add the typing " "module." msgstr "" "`Issue #23973 `__: PEP 484: Add the typing " "module." #: ../../../Misc/NEWS:3817 msgid "" "`Issue #23086 `__: The collections.abc." "Sequence() abstract base class added *start* and *stop* parameters to the " "index() mixin. Patch by Devin Jeanpierre." msgstr "" "`Issue #23086 `__: The collections.abc." "Sequence() abstract base class added *start* and *stop* parameters to the " "index() mixin. Patch by Devin Jeanpierre." #: ../../../Misc/NEWS:3821 msgid "" "`Issue #20035 `__: Replaced the ``tkinter." "_fix`` module used for setting up the Tcl/Tk environment on Windows with a " "private function in the ``_tkinter`` module that makes no permanent changes " "to the environment." msgstr "" "`Issue #20035 `__: Replaced the ``tkinter." "_fix`` module used for setting up the Tcl/Tk environment on Windows with a " "private function in the ``_tkinter`` module that makes no permanent changes " "to the environment." #: ../../../Misc/NEWS:3825 msgid "" "`Issue #24257 `__: Fixed segmentation fault " "in sqlite3.Row constructor with faked cursor type." msgstr "" "`Issue #24257 `__: Fixed segmentation fault " "in sqlite3.Row constructor with faked cursor type." #: ../../../Misc/NEWS:3828 msgid "" "`Issue #15836 `__: assertRaises(), " "assertRaisesRegex(), assertWarns() and assertWarnsRegex() assertments now " "check the type of the first argument to prevent possible user error. Based " "on patch by Daniel Wagner-Hall." msgstr "" "`Issue #15836 `__: assertRaises(), " "assertRaisesRegex(), assertWarns() and assertWarnsRegex() assertments now " "check the type of the first argument to prevent possible user error. Based " "on patch by Daniel Wagner-Hall." #: ../../../Misc/NEWS:3832 msgid "" "`Issue #9858 `__: Add missing method stubs to " "_io.RawIOBase. Patch by Laura Rupprecht." msgstr "" "`Issue #9858 `__: Add missing method stubs to " "_io.RawIOBase. Patch by Laura Rupprecht." #: ../../../Misc/NEWS:3835 msgid "" "`Issue #22955 `__: attrgetter, itemgetter and " "methodcaller objects in the operator module now support pickling. Added " "readable and evaluable repr for these objects. Based on patch by Josh " "Rosenberg." msgstr "" "`Issue #22955 `__: attrgetter, itemgetter and " "methodcaller objects in the operator module now support pickling. Added " "readable and evaluable repr for these objects. Based on patch by Josh " "Rosenberg." #: ../../../Misc/NEWS:3839 msgid "" "`Issue #22107 `__: tempfile.gettempdir() and " "tempfile.mkdtemp() now try again when a directory with the chosen name " "already exists on Windows as well as on Unix. tempfile.mkstemp() now fails " "early if parent directory is not valid (not exists or is a file) on Windows." msgstr "" "`Issue #22107 `__: tempfile.gettempdir() and " "tempfile.mkdtemp() now try again when a directory with the chosen name " "already exists on Windows as well as on Unix. tempfile.mkstemp() now fails " "early if parent directory is not valid (not exists or is a file) on Windows." #: ../../../Misc/NEWS:3844 msgid "" "`Issue #23780 `__: Improved error message in " "os.path.join() with single argument." msgstr "" "`Issue #23780 `__: Improved error message in " "os.path.join() with single argument." #: ../../../Misc/NEWS:3846 msgid "" "`Issue #6598 `__: Increased time precision and " "random number range in email.utils.make_msgid() to strengthen the uniqueness " "of the message ID." msgstr "" "`Issue #6598 `__: Increased time precision and " "random number range in email.utils.make_msgid() to strengthen the uniqueness " "of the message ID." #: ../../../Misc/NEWS:3849 msgid "" "`Issue #24091 `__: Fixed various crashes in " "corner cases in C implementation of ElementTree." msgstr "" "`Issue #24091 `__: Fixed various crashes in " "corner cases in C implementation of ElementTree." #: ../../../Misc/NEWS:3852 msgid "" "`Issue #21931 `__: msilib.FCICreate() now " "raises TypeError in the case of a bad argument instead of a ValueError with " "a bogus FCI error number. Patch by Jeffrey Armstrong." msgstr "" "`Issue #21931 `__: msilib.FCICreate() now " "raises TypeError in the case of a bad argument instead of a ValueError with " "a bogus FCI error number. Patch by Jeffrey Armstrong." #: ../../../Misc/NEWS:3856 msgid "" "`Issue #13866 `__: *quote_via* argument added " "to urllib.parse.urlencode." msgstr "" "`Issue #13866 `__: *quote_via* argument added " "to urllib.parse.urlencode." #: ../../../Misc/NEWS:3858 msgid "" "`Issue #20098 `__: New mangle_from policy " "option for email, default True for compat32, but False for all other " "policies." msgstr "" "`Issue #20098 `__: New mangle_from policy " "option for email, default True for compat32, but False for all other " "policies." #: ../../../Misc/NEWS:3861 msgid "" "`Issue #24211 `__: The email library now " "supports RFC 6532: it can generate headers using utf-8 instead of encoded " "words." msgstr "" "`Issue #24211 `__: The email library now " "supports RFC 6532: it can generate headers using utf-8 instead of encoded " "words." #: ../../../Misc/NEWS:3864 msgid "" "`Issue #16314 `__: Added support for the LZMA " "compression in distutils." msgstr "" "`Issue #16314 `__: Added support for the LZMA " "compression in distutils." #: ../../../Misc/NEWS:3866 msgid "" "`Issue #21804 `__: poplib now supports RFC " "6856 (UTF8)." msgstr "" "`Issue #21804 `__: poplib now supports RFC " "6856 (UTF8)." #: ../../../Misc/NEWS:3868 msgid "" "`Issue #18682 `__: Optimized pprint functions " "for builtin scalar types." msgstr "" "`Issue #18682 `__: Optimized pprint functions " "for builtin scalar types." #: ../../../Misc/NEWS:3870 msgid "" "`Issue #22027 `__: smtplib now supports RFC " "6531 (SMTPUTF8)." msgstr "" "`Issue #22027 `__: smtplib now supports RFC " "6531 (SMTPUTF8)." #: ../../../Misc/NEWS:3872 msgid "" "`Issue #23488 `__: Random generator objects " "now consume 2x less memory on 64-bit." msgstr "" "`Issue #23488 `__: Random generator objects " "now consume 2x less memory on 64-bit." #: ../../../Misc/NEWS:3874 msgid "" "`Issue #1322 `__: platform.dist() and platform." "linux_distribution() functions are now deprecated. Initial patch by " "Vajrasky Kok." msgstr "" "`Issue #1322 `__: platform.dist() and platform." "linux_distribution() functions are now deprecated. Initial patch by " "Vajrasky Kok." #: ../../../Misc/NEWS:3877 msgid "" "`Issue #22486 `__: Added the math.gcd() " "function. The fractions.gcd() function now is deprecated. Based on patch " "by Mark Dickinson." msgstr "" "`Issue #22486 `__: Added the math.gcd() " "function. The fractions.gcd() function now is deprecated. Based on patch " "by Mark Dickinson." #: ../../../Misc/NEWS:3880 msgid "" "`Issue #24064 `__: Property() docstrings are " "now writeable. (Patch by Berker Peksag.)" msgstr "" "`Issue #24064 `__: Property() docstrings are " "now writeable. (Patch by Berker Peksag.)" #: ../../../Misc/NEWS:3883 msgid "" "`Issue #22681 `__: Added support for the " "koi8_t encoding." msgstr "" "`Issue #22681 `__: Added support for the " "koi8_t encoding." #: ../../../Misc/NEWS:3885 msgid "" "`Issue #22682 `__: Added support for the " "kz1048 encoding." msgstr "" "`Issue #22682 `__: Added support for the " "kz1048 encoding." #: ../../../Misc/NEWS:3887 msgid "" "`Issue #23796 `__: peek and read1 methods of " "BufferedReader now raise ValueError if they called on a closed object. Patch " "by John Hergenroeder." msgstr "" "`Issue #23796 `__: peek and read1 methods of " "BufferedReader now raise ValueError if they called on a closed object. Patch " "by John Hergenroeder." #: ../../../Misc/NEWS:3890 msgid "" "`Issue #21795 `__: smtpd now supports the " "8BITMIME extension whenever the new *decode_data* constructor argument is " "set to False." msgstr "" "`Issue #21795 `__: smtpd now supports the " "8BITMIME extension whenever the new *decode_data* constructor argument is " "set to False." #: ../../../Misc/NEWS:3893 msgid "" "`Issue #24155 `__: optimize heapq.heapify() " "for better cache performance when heapifying large lists." msgstr "" "`Issue #24155 `__: optimize heapq.heapify() " "for better cache performance when heapifying large lists." #: ../../../Misc/NEWS:3896 msgid "" "`Issue #21800 `__: imaplib now supports RFC " "5161 (enable), RFC 6855 (utf8/internationalized email) and automatically " "encodes non-ASCII usernames and passwords to UTF8." msgstr "" "`Issue #21800 `__: imaplib now supports RFC " "5161 (enable), RFC 6855 (utf8/internationalized email) and automatically " "encodes non-ASCII usernames and passwords to UTF8." #: ../../../Misc/NEWS:3900 msgid "" "`Issue #20274 `__: When calling a _sqlite." "Connection, it now complains if passed any keyword arguments. Previously it " "silently ignored them." msgstr "" "`Issue #20274 `__: When calling a _sqlite." "Connection, it now complains if passed any keyword arguments. Previously it " "silently ignored them." #: ../../../Misc/NEWS:3903 msgid "" "`Issue #20274 `__: Remove ignored and " "erroneous \"kwargs\" parameters from three METH_VARARGS methods on _sqlite." "Connection." msgstr "" "`Issue #20274 `__: Remove ignored and " "erroneous \"kwargs\" parameters from three METH_VARARGS methods on _sqlite." "Connection." #: ../../../Misc/NEWS:3906 msgid "" "`Issue #24134 `__: assertRaises(), " "assertRaisesRegex(), assertWarns() and assertWarnsRegex() checks now emits a " "deprecation warning when callable is None or keyword arguments except msg is " "passed in the context manager mode." msgstr "" "`Issue #24134 `__: assertRaises(), " "assertRaisesRegex(), assertWarns() and assertWarnsRegex() checks now emits a " "deprecation warning when callable is None or keyword arguments except msg is " "passed in the context manager mode." #: ../../../Misc/NEWS:3910 msgid "" "`Issue #24018 `__: Add a collections.abc." "Generator abstract base class. Contributed by Stefan Behnel." msgstr "" "`Issue #24018 `__: Add a collections.abc." "Generator abstract base class. Contributed by Stefan Behnel." #: ../../../Misc/NEWS:3913 msgid "" "`Issue #23880 `__: Tkinter's getint() and " "getdouble() now support Tcl_Obj. Tkinter's getdouble() now supports any " "numbers (in particular int)." msgstr "" "`Issue #23880 `__: Tkinter's getint() and " "getdouble() now support Tcl_Obj. Tkinter's getdouble() now supports any " "numbers (in particular int)." #: ../../../Misc/NEWS:3916 msgid "" "`Issue #22619 `__: Added negative limit " "support in the traceback module. Based on patch by Dmitry Kazakov." msgstr "" "`Issue #22619 `__: Added negative limit " "support in the traceback module. Based on patch by Dmitry Kazakov." #: ../../../Misc/NEWS:3919 msgid "" "`Issue #24094 `__: Fix possible crash in json." "encode with poorly behaved dict subclasses." msgstr "" "`Issue #24094 `__: Fix possible crash in json." "encode with poorly behaved dict subclasses." #: ../../../Misc/NEWS:3922 msgid "" "`Issue #9246 `__: On POSIX, os.getcwd() now " "supports paths longer than 1025 bytes. Patch written by William Orr." msgstr "" "`Issue #9246 `__: On POSIX, os.getcwd() now " "supports paths longer than 1025 bytes. Patch written by William Orr." #: ../../../Misc/NEWS:3925 msgid "" "`Issue #17445 `__: add difflib.diff_bytes() " "to support comparison of byte strings (fixes a regression from Python 2)." msgstr "" "`Issue #17445 `__: add difflib.diff_bytes() " "to support comparison of byte strings (fixes a regression from Python 2)." #: ../../../Misc/NEWS:3928 msgid "" "`Issue #23917 `__: Fall back to sequential " "compilation when ProcessPoolExecutor doesn't exist. Patch by Claudiu Popa." msgstr "" "`Issue #23917 `__: Fall back to sequential " "compilation when ProcessPoolExecutor doesn't exist. Patch by Claudiu Popa." #: ../../../Misc/NEWS:3931 msgid "" "`Issue #23008 `__: Fixed resolving attributes " "with boolean value is False in pydoc." msgstr "" "`Issue #23008 `__: Fixed resolving attributes " "with boolean value is False in pydoc." #: ../../../Misc/NEWS:3933 msgid "" "Fix asyncio issue 235: LifoQueue and PriorityQueue's put didn't increment " "unfinished tasks (this bug was introduced when JoinableQueue was merged with " "Queue)." msgstr "" #: ../../../Misc/NEWS:3937 msgid "" "`Issue #23908 `__: os functions now reject " "paths with embedded null character on Windows instead of silently truncating " "them." msgstr "" "`Issue #23908 `__: os functions now reject " "paths with embedded null character on Windows instead of silently truncating " "them." #: ../../../Misc/NEWS:3940 msgid "" "`Issue #23728 `__: binascii.crc_hqx() could " "return an integer outside of the range 0-0xffff for empty data." msgstr "" "`Issue #23728 `__: binascii.crc_hqx() could " "return an integer outside of the range 0-0xffff for empty data." #: ../../../Misc/NEWS:3943 msgid "" "`Issue #23887 `__: urllib.error.HTTPError now " "has a proper repr() representation. Patch by Berker Peksag." msgstr "" "`Issue #23887 `__: urllib.error.HTTPError now " "has a proper repr() representation. Patch by Berker Peksag." #: ../../../Misc/NEWS:3946 msgid "" "asyncio: New event loop APIs: set_task_factory() and get_task_factory()." msgstr "" #: ../../../Misc/NEWS:3948 msgid "asyncio: async() function is deprecated in favour of ensure_future()." msgstr "" #: ../../../Misc/NEWS:3950 msgid "" "`Issue #24178 `__: asyncio.Lock, Condition, " "Semaphore, and BoundedSemaphore support new 'async with' syntax. " "Contributed by Yury Selivanov." msgstr "" "`Issue #24178 `__: asyncio.Lock, Condition, " "Semaphore, and BoundedSemaphore support new 'async with' syntax. " "Contributed by Yury Selivanov." #: ../../../Misc/NEWS:3953 msgid "" "`Issue #24179 `__: Support 'async for' for " "asyncio.StreamReader. Contributed by Yury Selivanov." msgstr "" "`Issue #24179 `__: Support 'async for' for " "asyncio.StreamReader. Contributed by Yury Selivanov." #: ../../../Misc/NEWS:3956 msgid "" "`Issue #24184 `__: Add AsyncIterator and " "AsyncIterable ABCs to collections.abc. Contributed by Yury Selivanov." msgstr "" "`Issue #24184 `__: Add AsyncIterator and " "AsyncIterable ABCs to collections.abc. Contributed by Yury Selivanov." #: ../../../Misc/NEWS:3959 msgid "" "`Issue #22547 `__: Implement informative " "__repr__ for inspect.BoundArguments. Contributed by Yury Selivanov." msgstr "" "`Issue #22547 `__: Implement informative " "__repr__ for inspect.BoundArguments. Contributed by Yury Selivanov." #: ../../../Misc/NEWS:3962 msgid "" "`Issue #24190 `__: Implement inspect." "BoundArgument.apply_defaults() method. Contributed by Yury Selivanov." msgstr "" "`Issue #24190 `__: Implement inspect." "BoundArgument.apply_defaults() method. Contributed by Yury Selivanov." #: ../../../Misc/NEWS:3965 msgid "" "`Issue #20691 `__: Add 'follow_wrapped' " "argument to inspect.Signature.from_callable() and inspect.signature(). " "Contributed by Yury Selivanov." msgstr "" "`Issue #20691 `__: Add 'follow_wrapped' " "argument to inspect.Signature.from_callable() and inspect.signature(). " "Contributed by Yury Selivanov." #: ../../../Misc/NEWS:3969 msgid "" "`Issue #24248 `__: Deprecate inspect." "Signature.from_function() and inspect.Signature.from_builtin()." msgstr "" "`Issue #24248 `__: Deprecate inspect." "Signature.from_function() and inspect.Signature.from_builtin()." #: ../../../Misc/NEWS:3972 msgid "" "`Issue #23898 `__: Fix inspect." "classify_class_attrs() to support attributes with overloaded __eq__ and " "__bool__. Patch by Mike Bayer." msgstr "" "`Issue #23898 `__: Fix inspect." "classify_class_attrs() to support attributes with overloaded __eq__ and " "__bool__. Patch by Mike Bayer." #: ../../../Misc/NEWS:3975 msgid "" "`Issue #24298 `__: Fix inspect.signature() to " "correctly unwrap wrappers around bound methods." msgstr "" "`Issue #24298 `__: Fix inspect.signature() to " "correctly unwrap wrappers around bound methods." #: ../../../Misc/NEWS:3981 msgid "" "`Issue #23184 `__: remove unused names and " "imports in idlelib. Initial patch by Al Sweigart." msgstr "" "`Issue #23184 `__: remove unused names and " "imports in idlelib. Initial patch by Al Sweigart." #: ../../../Misc/NEWS:3987 msgid "" "`Issue #21520 `__: test_zipfile no longer " "fails if the word 'bad' appears anywhere in the name of the current " "directory." msgstr "" "`Issue #21520 `__: test_zipfile no longer " "fails if the word 'bad' appears anywhere in the name of the current " "directory." #: ../../../Misc/NEWS:3990 msgid "" "`Issue #9517 `__: Move script_helper into the " "support package. Patch by Christie Wilson." msgstr "" "`Issue #9517 `__: Move script_helper into the " "support package. Patch by Christie Wilson." #: ../../../Misc/NEWS:3996 msgid "" "`Issue #22155 `__: Add File Handlers " "subsection with createfilehandler to tkinter doc. Remove obsolete example " "from FAQ. Patch by Martin Panter." msgstr "" "`Issue #22155 `__: Add File Handlers " "subsection with createfilehandler to tkinter doc. Remove obsolete example " "from FAQ. Patch by Martin Panter." #: ../../../Misc/NEWS:3999 msgid "" "`Issue #24029 `__: Document the name binding " "behavior for submodule imports." msgstr "" "`Issue #24029 `__: Document the name binding " "behavior for submodule imports." #: ../../../Misc/NEWS:4001 msgid "" "`Issue #24077 `__: Fix typo in man page for -" "I command option: -s, not -S" msgstr "" "`Issue #24077 `__: Fix typo in man page for -" "I command option: -s, not -S" #: ../../../Misc/NEWS:4006 msgid "" "`Issue #24000 `__: Improved Argument Clinic's " "mapping of converters to legacy \"format units\". Updated the documentation " "to match." msgstr "" "`Issue #24000 `__: Improved Argument Clinic's " "mapping of converters to legacy \"format units\". Updated the documentation " "to match." #: ../../../Misc/NEWS:4009 msgid "" "`Issue #24001 `__: Argument Clinic converters " "now use accept={type} instead of types={'type'} to specify the types the " "converter accepts." msgstr "" "`Issue #24001 `__: Argument Clinic converters " "now use accept={type} instead of types={'type'} to specify the types the " "converter accepts." #: ../../../Misc/NEWS:4012 msgid "" "`Issue #23330 `__: h2py now supports " "arbitrary filenames in #include." msgstr "" "`Issue #23330 `__: h2py now supports " "arbitrary filenames in #include." #: ../../../Misc/NEWS:4014 msgid "" "`Issue #24031 `__: make patchcheck now " "supports git checkouts, too." msgstr "" "`Issue #24031 `__: make patchcheck now " "supports git checkouts, too." #: ../../../Misc/NEWS:4018 msgid "Python 3.5.0 alpha 4" msgstr "Python 3.5.0 alpha 4" #: ../../../Misc/NEWS:4020 msgid "Release date: 2015-04-19" msgstr "" #: ../../../Misc/NEWS:4025 msgid "" "`Issue #22980 `__: Under Linux, GNU/KFreeBSD " "and the Hurd, C extensions now include the architecture triplet in the " "extension name, to make it easy to test builds for different ABIs in the " "same working tree. Under OS X, the extension name now includes PEP 3149-" "style information." msgstr "" "`Issue #22980 `__: Under Linux, GNU/KFreeBSD " "and the Hurd, C extensions now include the architecture triplet in the " "extension name, to make it easy to test builds for different ABIs in the " "same working tree. Under OS X, the extension name now includes PEP 3149-" "style information." #: ../../../Misc/NEWS:4030 msgid "" "`Issue #22631 `__: Added Linux-specific " "socket constant CAN_RAW_FD_FRAMES. Patch courtesy of Joe Jevnik." msgstr "" "`Issue #22631 `__: Added Linux-specific " "socket constant CAN_RAW_FD_FRAMES. Patch courtesy of Joe Jevnik." #: ../../../Misc/NEWS:4033 msgid "" "`Issue #23731 `__: Implement PEP 488: removal " "of .pyo files." msgstr "" "`Issue #23731 `__: Implement PEP 488: removal " "of .pyo files." #: ../../../Misc/NEWS:4035 msgid "" "`Issue #23726 `__: Don't enable GC for user " "subclasses of non-GC types that don't add any new fields. Patch by Eugene " "Toder." msgstr "" "`Issue #23726 `__: Don't enable GC for user " "subclasses of non-GC types that don't add any new fields. Patch by Eugene " "Toder." #: ../../../Misc/NEWS:4038 msgid "" "`Issue #23309 `__: Avoid a deadlock at " "shutdown if a daemon thread is aborted while it is holding a lock to a " "buffered I/O object, and the main thread tries to use the same I/O object " "(typically stdout or stderr). A fatal error is emitted instead." msgstr "" "`Issue #23309 `__: Avoid a deadlock at " "shutdown if a daemon thread is aborted while it is holding a lock to a " "buffered I/O object, and the main thread tries to use the same I/O object " "(typically stdout or stderr). A fatal error is emitted instead." #: ../../../Misc/NEWS:4043 msgid "" "`Issue #22977 `__: Fixed formatting Windows " "error messages on Wine. Patch by Martin Panter." msgstr "" "`Issue #22977 `__: Fixed formatting Windows " "error messages on Wine. Patch by Martin Panter." #: ../../../Misc/NEWS:4046 msgid "" "`Issue #23466 `__: %c, %o, %x, and %X in " "bytes formatting now raise TypeError on non-integer input." msgstr "" "`Issue #23466 `__: %c, %o, %x, and %X in " "bytes formatting now raise TypeError on non-integer input." #: ../../../Misc/NEWS:4049 msgid "" "`Issue #24044 `__: Fix possible null pointer " "dereference in list.sort in out of memory conditions." msgstr "" "`Issue #24044 `__: Fix possible null pointer " "dereference in list.sort in out of memory conditions." #: ../../../Misc/NEWS:4052 msgid "" "`Issue #21354 `__: PyCFunction_New function " "is exposed by python DLL again." msgstr "" "`Issue #21354 `__: PyCFunction_New function " "is exposed by python DLL again." #: ../../../Misc/NEWS:4057 msgid "" "`Issue #23840 `__: tokenize.open() now closes " "the temporary binary file on error to fix a resource warning." msgstr "" "`Issue #23840 `__: tokenize.open() now closes " "the temporary binary file on error to fix a resource warning." #: ../../../Misc/NEWS:4060 msgid "" "`Issue #16914 `__: new debuglevel 2 in " "smtplib adds timestamps to debug output." msgstr "" "`Issue #16914 `__: new debuglevel 2 in " "smtplib adds timestamps to debug output." #: ../../../Misc/NEWS:4062 msgid "" "`Issue #7159 `__: urllib.request now supports " "sending auth credentials automatically after the first 401. This " "enhancement is a superset of the enhancement from `issue #19494 `__ and supersedes that change." msgstr "" "`Issue #7159 `__: urllib.request now supports " "sending auth credentials automatically after the first 401. This " "enhancement is a superset of the enhancement from `issue #19494 `__ and supersedes that change." #: ../../../Misc/NEWS:4066 msgid "" "`Issue #23703 `__: Fix a regression in " "urljoin() introduced in 901e4e52b20a. Patch by Demian Brecht." msgstr "" "`Issue #23703 `__: Fix a regression in " "urljoin() introduced in 901e4e52b20a. Patch by Demian Brecht." #: ../../../Misc/NEWS:4069 msgid "" "`Issue #4254 `__: Adds _curses." "update_lines_cols(). Patch by Arnon Yaari" msgstr "" "`Issue #4254 `__: Adds _curses." "update_lines_cols(). Patch by Arnon Yaari" #: ../../../Misc/NEWS:4071 msgid "" "`Issue #19933 `__: Provide default argument " "for ndigits in round. Patch by Vajrasky Kok." msgstr "" "`Issue #19933 `__: Provide default argument " "for ndigits in round. Patch by Vajrasky Kok." #: ../../../Misc/NEWS:4074 msgid "" "`Issue #23193 `__: Add a numeric_owner " "parameter to tarfile.TarFile.extract and tarfile.TarFile.extractall. Patch " "by Michael Vogt and Eric Smith." msgstr "" "`Issue #23193 `__: Add a numeric_owner " "parameter to tarfile.TarFile.extract and tarfile.TarFile.extractall. Patch " "by Michael Vogt and Eric Smith." #: ../../../Misc/NEWS:4078 msgid "" "`Issue #23342 `__: Add a subprocess.run() " "function than returns a CalledProcess instance for a more consistent API " "than the existing call* functions." msgstr "" "`Issue #23342 `__: Add a subprocess.run() " "function than returns a CalledProcess instance for a more consistent API " "than the existing call* functions." #: ../../../Misc/NEWS:4081 msgid "" "`Issue #21217 `__: inspect.getsourcelines() " "now tries to compute the start and end lines from the code object, fixing an " "issue when a lambda function is used as decorator argument. Patch by Thomas " "Ballinger and Allison Kaptur." msgstr "" "`Issue #21217 `__: inspect.getsourcelines() " "now tries to compute the start and end lines from the code object, fixing an " "issue when a lambda function is used as decorator argument. Patch by Thomas " "Ballinger and Allison Kaptur." #: ../../../Misc/NEWS:4085 msgid "" "`Issue #24521 `__: Fix possible integer " "overflows in the pickle module." msgstr "" "`Issue #24521 `__: Fix possible integer " "overflows in the pickle module." #: ../../../Misc/NEWS:4087 msgid "" "`Issue #22931 `__: Allow '[' and ']' in " "cookie values." msgstr "" "`Issue #22931 `__: Allow '[' and ']' in " "cookie values." #: ../../../Misc/NEWS:4089 msgid "The keywords attribute of functools.partial is now always a dictionary." msgstr "" #: ../../../Misc/NEWS:4091 msgid "" "`Issue #23811 `__: Add missing newline to the " "PyCompileError error message. Patch by Alex Shkop." msgstr "" "`Issue #23811 `__: Add missing newline to the " "PyCompileError error message. Patch by Alex Shkop." #: ../../../Misc/NEWS:4094 msgid "" "`Issue #21116 `__: Avoid blowing memory when " "allocating a multiprocessing shared array that's larger than 50% of the " "available RAM. Patch by Médéric Boquien." msgstr "" "`Issue #21116 `__: Avoid blowing memory when " "allocating a multiprocessing shared array that's larger than 50% of the " "available RAM. Patch by Médéric Boquien." #: ../../../Misc/NEWS:4097 msgid "" "`Issue #22982 `__: Improve BOM handling when " "seeking to multiple positions of a writable text file." msgstr "" "`Issue #22982 `__: Improve BOM handling when " "seeking to multiple positions of a writable text file." #: ../../../Misc/NEWS:4100 msgid "" "`Issue #23464 `__: Removed deprecated asyncio " "JoinableQueue." msgstr "" "`Issue #23464 `__: Removed deprecated asyncio " "JoinableQueue." #: ../../../Misc/NEWS:4102 msgid "" "`Issue #23529 `__: Limit the size of " "decompressed data when reading from GzipFile, BZ2File or LZMAFile. This " "defeats denial of service attacks using compressed bombs (i.e. compressed " "payloads which decompress to a huge size). Patch by Martin Panter and " "Nikolaus Rath." msgstr "" "`Issue #23529 `__: Limit the size of " "decompressed data when reading from GzipFile, BZ2File or LZMAFile. This " "defeats denial of service attacks using compressed bombs (i.e. compressed " "payloads which decompress to a huge size). Patch by Martin Panter and " "Nikolaus Rath." #: ../../../Misc/NEWS:4107 msgid "" "`Issue #21859 `__: Added Python " "implementation of io.FileIO." msgstr "" "`Issue #21859 `__: Added Python " "implementation of io.FileIO." #: ../../../Misc/NEWS:4109 msgid "" "`Issue #23865 `__: close() methods in " "multiple modules now are idempotent and more robust at shutdown. If they " "need to release multiple resources, all are released even if errors occur." msgstr "" "`Issue #23865 `__: close() methods in " "multiple modules now are idempotent and more robust at shutdown. If they " "need to release multiple resources, all are released even if errors occur." #: ../../../Misc/NEWS:4113 msgid "" "`Issue #23400 `__: Raise same exception on " "both Python 2 and 3 if sem_open is not available. Patch by Davin Potts." msgstr "" "`Issue #23400 `__: Raise same exception on " "both Python 2 and 3 if sem_open is not available. Patch by Davin Potts." #: ../../../Misc/NEWS:4116 msgid "" "`Issue #10838 `__: The subprocess now module " "includes SubprocessError and TimeoutError in its list of exported names for " "the users wild enough to use ``from subprocess import *``." msgstr "" "`Issue #10838 `__: The subprocess now module " "includes SubprocessError and TimeoutError in its list of exported names for " "the users wild enough to use ``from subprocess import *``." #: ../../../Misc/NEWS:4120 msgid "" "`Issue #23411 `__: Added DefragResult, " "ParseResult, SplitResult, DefragResultBytes, ParseResultBytes, and " "SplitResultBytes to urllib.parse.__all__. Patch by Martin Panter." msgstr "" "`Issue #23411 `__: Added DefragResult, " "ParseResult, SplitResult, DefragResultBytes, ParseResultBytes, and " "SplitResultBytes to urllib.parse.__all__. Patch by Martin Panter." #: ../../../Misc/NEWS:4124 msgid "" "`Issue #23881 `__: urllib.request.ftpwrapper " "constructor now closes the socket if the FTP connection failed to fix a " "ResourceWarning." msgstr "" "`Issue #23881 `__: urllib.request.ftpwrapper " "constructor now closes the socket if the FTP connection failed to fix a " "ResourceWarning." #: ../../../Misc/NEWS:4127 msgid "" "`Issue #23853 `__: :meth:`socket.socket." "sendall` does no more reset the socket timeout each time data is sent " "successfully. The socket timeout is now the maximum total duration to send " "all data." msgstr "" "`Issue #23853 `__: :meth:`socket.socket." "sendall` does no more reset the socket timeout each time data is sent " "successfully. The socket timeout is now the maximum total duration to send " "all data." #: ../../../Misc/NEWS:4131 msgid "" "`Issue #22721 `__: An order of multiline " "pprint output of set or dict containing orderable and non-orderable elements " "no longer depends on iteration order of set or dict." msgstr "" "`Issue #22721 `__: An order of multiline " "pprint output of set or dict containing orderable and non-orderable elements " "no longer depends on iteration order of set or dict." #: ../../../Misc/NEWS:4135 msgid "" "`Issue #15133 `__: _tkinter.tkapp." "getboolean() now supports Tcl_Obj and always returns bool. tkinter." "BooleanVar now validates input values (accepted bool, int, str, and " "Tcl_Obj). tkinter.BooleanVar.get() now always returns bool." msgstr "" "`Issue #15133 `__: _tkinter.tkapp." "getboolean() now supports Tcl_Obj and always returns bool. tkinter." "BooleanVar now validates input values (accepted bool, int, str, and " "Tcl_Obj). tkinter.BooleanVar.get() now always returns bool." #: ../../../Misc/NEWS:4139 msgid "" "`Issue #10590 `__: xml.sax.parseString() now " "supports string argument." msgstr "" "`Issue #10590 `__: xml.sax.parseString() now " "supports string argument." #: ../../../Misc/NEWS:4141 msgid "" "`Issue #23338 `__: Fixed formatting ctypes " "error messages on Cygwin. Patch by Makoto Kato." msgstr "" "`Issue #23338 `__: Fixed formatting ctypes " "error messages on Cygwin. Patch by Makoto Kato." #: ../../../Misc/NEWS:4144 msgid "" "`Issue #15582 `__: inspect.getdoc() now " "follows inheritance chains." msgstr "" "`Issue #15582 `__: inspect.getdoc() now " "follows inheritance chains." #: ../../../Misc/NEWS:4146 msgid "" "`Issue #2175 `__: SAX parsers now support a " "character stream of InputSource object." msgstr "" "`Issue #2175 `__: SAX parsers now support a " "character stream of InputSource object." #: ../../../Misc/NEWS:4148 msgid "" "`Issue #16840 `__: Tkinter now supports 64-" "bit integers added in Tcl 8.4 and arbitrary precision integers added in Tcl " "8.5." msgstr "" "`Issue #16840 `__: Tkinter now supports 64-" "bit integers added in Tcl 8.4 and arbitrary precision integers added in Tcl " "8.5." #: ../../../Misc/NEWS:4151 msgid "" "`Issue #23834 `__: Fix socket.sendto(), use " "the C Py_ssize_t type to store the result of sendto() instead of the C int " "type." msgstr "" "`Issue #23834 `__: Fix socket.sendto(), use " "the C Py_ssize_t type to store the result of sendto() instead of the C int " "type." #: ../../../Misc/NEWS:4154 msgid "" "`Issue #23618 `__: :meth:`socket.socket." "connect` now waits until the connection completes instead of raising :exc:" "`InterruptedError` if the connection is interrupted by signals, signal " "handlers don't raise an exception and the socket is blocking or has a " "timeout. :meth:`socket.socket.connect` still raise :exc:`InterruptedError` " "for non-blocking sockets." msgstr "" "`Issue #23618 `__: :meth:`socket.socket." "connect` now waits until the connection completes instead of raising :exc:" "`InterruptedError` if the connection is interrupted by signals, signal " "handlers don't raise an exception and the socket is blocking or has a " "timeout. :meth:`socket.socket.connect` still raise :exc:`InterruptedError` " "for non-blocking sockets." #: ../../../Misc/NEWS:4160 msgid "" "`Issue #21526 `__: Tkinter now supports new " "boolean type in Tcl 8.5." msgstr "" "`Issue #21526 `__: Tkinter now supports new " "boolean type in Tcl 8.5." #: ../../../Misc/NEWS:4162 msgid "" "`Issue #23836 `__: Fix the faulthandler " "module to handle reentrant calls to its signal handlers." msgstr "" "`Issue #23836 `__: Fix the faulthandler " "module to handle reentrant calls to its signal handlers." #: ../../../Misc/NEWS:4165 msgid "" "`Issue #23838 `__: linecache now clears the " "cache and returns an empty result on MemoryError." msgstr "" "`Issue #23838 `__: linecache now clears the " "cache and returns an empty result on MemoryError." #: ../../../Misc/NEWS:4168 msgid "" "`Issue #10395 `__: Added os.path." "commonpath(). Implemented in posixpath and ntpath. Based on patch by Rafik " "Draoui." msgstr "" "`Issue #10395 `__: Added os.path." "commonpath(). Implemented in posixpath and ntpath. Based on patch by Rafik " "Draoui." #: ../../../Misc/NEWS:4171 msgid "" "`Issue #23611 `__: Serializing more " "\"lookupable\" objects (such as unbound methods or nested classes) now are " "supported with pickle protocols < 4." msgstr "" "`Issue #23611 `__: Serializing more " "\"lookupable\" objects (such as unbound methods or nested classes) now are " "supported with pickle protocols < 4." #: ../../../Misc/NEWS:4174 msgid "" "`Issue #13583 `__: sqlite3.Row now supports " "slice indexing." msgstr "" "`Issue #13583 `__: sqlite3.Row now supports " "slice indexing." #: ../../../Misc/NEWS:4176 msgid "" "`Issue #18473 `__: Fixed 2to3 and 3to2 " "compatible pickle mappings. Fixed ambigious reverse mappings. Added many " "new mappings. Import mapping is no longer applied to modules already mapped " "with full name mapping." msgstr "" "`Issue #18473 `__: Fixed 2to3 and 3to2 " "compatible pickle mappings. Fixed ambigious reverse mappings. Added many " "new mappings. Import mapping is no longer applied to modules already mapped " "with full name mapping." #: ../../../Misc/NEWS:4180 msgid "" "`Issue #23485 `__: select.select() is now " "retried automatically with the recomputed timeout when interrupted by a " "signal, except if the signal handler raises an exception. This change is " "part of the PEP 475." msgstr "" "`Issue #23485 `__: select.select() is now " "retried automatically with the recomputed timeout when interrupted by a " "signal, except if the signal handler raises an exception. This change is " "part of the PEP 475." #: ../../../Misc/NEWS:4184 msgid "" "`Issue #23752 `__: When built from an " "existing file descriptor, io.FileIO() now only calls fstat() once. Before " "fstat() was called twice, which was not necessary." msgstr "" "`Issue #23752 `__: When built from an " "existing file descriptor, io.FileIO() now only calls fstat() once. Before " "fstat() was called twice, which was not necessary." #: ../../../Misc/NEWS:4188 msgid "" "`Issue #23704 `__: collections.deque() " "objects now support __add__, __mul__, and __imul__()." msgstr "" "`Issue #23704 `__: collections.deque() " "objects now support __add__, __mul__, and __imul__()." #: ../../../Misc/NEWS:4191 msgid "" "`Issue #23171 `__: csv.Writer.writerow() now " "supports arbitrary iterables." msgstr "" "`Issue #23171 `__: csv.Writer.writerow() now " "supports arbitrary iterables." #: ../../../Misc/NEWS:4193 msgid "" "`Issue #23745 `__: The new email header " "parser now handles duplicate MIME parameter names without error, similar to " "how get_param behaves." msgstr "" "`Issue #23745 `__: The new email header " "parser now handles duplicate MIME parameter names without error, similar to " "how get_param behaves." #: ../../../Misc/NEWS:4196 msgid "" "`Issue #22117 `__: Fix os.utime(), it now " "rounds the timestamp towards minus infinity (-inf) instead of rounding " "towards zero." msgstr "" "`Issue #22117 `__: Fix os.utime(), it now " "rounds the timestamp towards minus infinity (-inf) instead of rounding " "towards zero." #: ../../../Misc/NEWS:4199 msgid "" "`Issue #23310 `__: Fix MagicMock's " "initializer to work with __methods__, just like configure_mock(). Patch by " "Kasia Jachim." msgstr "" "`Issue #23310 `__: Fix MagicMock's " "initializer to work with __methods__, just like configure_mock(). Patch by " "Kasia Jachim." #: ../../../Misc/NEWS:4205 msgid "" "`Issue #23817 `__: FreeBSD now uses \"1.0\" " "in the SOVERSION as other operating systems, instead of just \"1\"." msgstr "" "`Issue #23817 `__: FreeBSD now uses \"1.0\" " "in the SOVERSION as other operating systems, instead of just \"1\"." #: ../../../Misc/NEWS:4208 msgid "" "`Issue #23501 `__: Argument Clinic now " "generates code into separate files by default." msgstr "" "`Issue #23501 `__: Argument Clinic now " "generates code into separate files by default." #: ../../../Misc/NEWS:4213 msgid "" "`Issue #23799 `__: Added test.support." "start_threads() for running and cleaning up multiple threads." msgstr "" "`Issue #23799 `__: Added test.support." "start_threads() for running and cleaning up multiple threads." #: ../../../Misc/NEWS:4216 msgid "" "`Issue #22390 `__: test.regrtest now emits a " "warning if temporary files or directories are left after running a test." msgstr "" "`Issue #22390 `__: test.regrtest now emits a " "warning if temporary files or directories are left after running a test." #: ../../../Misc/NEWS:4222 msgid "" "`Issue #18128 `__: pygettext now uses " "standard +NNNN format in the POT-Creation-Date header." msgstr "" "`Issue #18128 `__: pygettext now uses " "standard +NNNN format in the POT-Creation-Date header." #: ../../../Misc/NEWS:4225 msgid "" "`Issue #23935 `__: Argument Clinic's " "understanding of format units accepting bytes, bytearrays, and buffers is " "now consistent with both the documentation and the implementation." msgstr "" "`Issue #23935 `__: Argument Clinic's " "understanding of format units accepting bytes, bytearrays, and buffers is " "now consistent with both the documentation and the implementation." #: ../../../Misc/NEWS:4229 msgid "" "`Issue #23944 `__: Argument Clinic now wraps " "long impl prototypes at column 78." msgstr "" "`Issue #23944 `__: Argument Clinic now wraps " "long impl prototypes at column 78." #: ../../../Misc/NEWS:4231 msgid "" "`Issue #20586 `__: Argument Clinic now " "ensures that functions without docstrings have signatures." msgstr "" "`Issue #20586 `__: Argument Clinic now " "ensures that functions without docstrings have signatures." #: ../../../Misc/NEWS:4234 msgid "" "`Issue #23492 `__: Argument Clinic now " "generates argument parsing code with PyArg_Parse instead of PyArg_ParseTuple " "if possible." msgstr "" "`Issue #23492 `__: Argument Clinic now " "generates argument parsing code with PyArg_Parse instead of PyArg_ParseTuple " "if possible." #: ../../../Misc/NEWS:4237 msgid "" "`Issue #23500 `__: Argument Clinic is now " "smarter about generating the \"#ifndef\" (empty) definition of the methoddef " "macro: it's only generated once, even if Argument Clinic processes the same " "symbol multiple times, and it's emitted at the end of all processing rather " "than immediately after the first use." msgstr "" "`Issue #23500 `__: Argument Clinic is now " "smarter about generating the \"#ifndef\" (empty) definition of the methoddef " "macro: it's only generated once, even if Argument Clinic processes the same " "symbol multiple times, and it's emitted at the end of all processing rather " "than immediately after the first use." #: ../../../Misc/NEWS:4245 msgid "" "`Issue #23998 `__: PyImport_ReInitLock() now " "checks for lock allocation error" msgstr "" "`Issue #23998 `__: PyImport_ReInitLock() now " "checks for lock allocation error" #: ../../../Misc/NEWS:4249 msgid "Python 3.5.0 alpha 3" msgstr "Python 3.5.0 alpha 3" #: ../../../Misc/NEWS:4251 msgid "Release date: 2015-03-28" msgstr "" #: ../../../Misc/NEWS:4256 msgid "" "`Issue #23573 `__: Increased performance of " "string search operations (str.find, str.index, str.count, the in operator, " "str.split, str.partition) with arguments of different kinds (UCS1, UCS2, " "UCS4)." msgstr "" "`Issue #23573 `__: Increased performance of " "string search operations (str.find, str.index, str.count, the in operator, " "str.split, str.partition) with arguments of different kinds (UCS1, UCS2, " "UCS4)." #: ../../../Misc/NEWS:4260 msgid "" "`Issue #23753 `__: Python doesn't support " "anymore platforms without stat() or fstat(), these functions are always " "required." msgstr "" "`Issue #23753 `__: Python doesn't support " "anymore platforms without stat() or fstat(), these functions are always " "required." #: ../../../Misc/NEWS:4263 msgid "" "`Issue #23681 `__: The -b option now affects " "comparisons of bytes with int." msgstr "" "`Issue #23681 `__: The -b option now affects " "comparisons of bytes with int." #: ../../../Misc/NEWS:4265 msgid "" "`Issue #23632 `__: Memoryviews now allow " "tuple indexing (including for multi-dimensional memoryviews)." msgstr "" "`Issue #23632 `__: Memoryviews now allow " "tuple indexing (including for multi-dimensional memoryviews)." #: ../../../Misc/NEWS:4268 msgid "" "`Issue #23192 `__: Fixed generator lambdas. " "Patch by Bruno Cauet." msgstr "" "`Issue #23192 `__: Fixed generator lambdas. " "Patch by Bruno Cauet." #: ../../../Misc/NEWS:4270 msgid "" "`Issue #23629 `__: Fix the default __sizeof__ " "implementation for variable-sized objects." msgstr "" "`Issue #23629 `__: Fix the default __sizeof__ " "implementation for variable-sized objects." #: ../../../Misc/NEWS:4276 msgid "" "`Issue #14260 `__: The groupindex attribute " "of regular expression pattern object now is non-modifiable mapping." msgstr "" "`Issue #14260 `__: The groupindex attribute " "of regular expression pattern object now is non-modifiable mapping." #: ../../../Misc/NEWS:4279 msgid "" "`Issue #23792 `__: Ignore KeyboardInterrupt " "when the pydoc pager is active. This mimics the behavior of the standard " "unix pagers, and prevents pipepager from shutting down while the pager " "itself is still running." msgstr "" "`Issue #23792 `__: Ignore KeyboardInterrupt " "when the pydoc pager is active. This mimics the behavior of the standard " "unix pagers, and prevents pipepager from shutting down while the pager " "itself is still running." #: ../../../Misc/NEWS:4283 msgid "" "`Issue #23775 `__: pprint() of OrderedDict " "now outputs the same representation as repr()." msgstr "" "`Issue #23775 `__: pprint() of OrderedDict " "now outputs the same representation as repr()." #: ../../../Misc/NEWS:4286 msgid "" "`Issue #23765 `__: Removed IsBadStringPtr " "calls in ctypes" msgstr "" "`Issue #23765 `__: Removed IsBadStringPtr " "calls in ctypes" #: ../../../Misc/NEWS:4288 msgid "" "`Issue #22364 `__: Improved some re error " "messages using regex for hints." msgstr "" "`Issue #22364 `__: Improved some re error " "messages using regex for hints." #: ../../../Misc/NEWS:4290 msgid "" "`Issue #23742 `__: ntpath.expandvars() no " "longer loses unbalanced single quotes." msgstr "" "`Issue #23742 `__: ntpath.expandvars() no " "longer loses unbalanced single quotes." #: ../../../Misc/NEWS:4292 msgid "" "`Issue #21717 `__: The zipfile.ZipFile.open " "function now supports 'x' (exclusive creation) mode." msgstr "" "`Issue #21717 `__: The zipfile.ZipFile.open " "function now supports 'x' (exclusive creation) mode." #: ../../../Misc/NEWS:4295 msgid "" "`Issue #21802 `__: The reader in " "BufferedRWPair now is closed even when closing writer failed in " "BufferedRWPair.close()." msgstr "" "`Issue #21802 `__: The reader in " "BufferedRWPair now is closed even when closing writer failed in " "BufferedRWPair.close()." #: ../../../Misc/NEWS:4298 msgid "" "`Issue #23622 `__: Unknown escapes in regular " "expressions that consist of ``'\\'`` and an ASCII letter now raise a " "deprecation warning and will be forbidden in Python 3.6." msgstr "" "`Issue #23622 `__: Unknown escapes in regular " "expressions that consist of ``'\\'`` and an ASCII letter now raise a " "deprecation warning and will be forbidden in Python 3.6." #: ../../../Misc/NEWS:4302 msgid "" "`Issue #23671 `__: string.Template now allows " "specifying the \"self\" parameter as a keyword argument. string.Formatter " "now allows specifying the \"self\" and the \"format_string\" parameters as " "keyword arguments." msgstr "" "`Issue #23671 `__: string.Template now allows " "specifying the \"self\" parameter as a keyword argument. string.Formatter " "now allows specifying the \"self\" and the \"format_string\" parameters as " "keyword arguments." #: ../../../Misc/NEWS:4306 msgid "" "`Issue #23502 `__: The pprint module now " "supports mapping proxies." msgstr "" "`Issue #23502 `__: The pprint module now " "supports mapping proxies." #: ../../../Misc/NEWS:4308 msgid "" "`Issue #17530 `__: pprint now wraps long " "bytes objects and bytearrays." msgstr "" "`Issue #17530 `__: pprint now wraps long " "bytes objects and bytearrays." #: ../../../Misc/NEWS:4310 msgid "" "`Issue #22687 `__: Fixed some corner cases in " "breaking words in tetxtwrap. Got rid of quadratic complexity in breaking " "long words." msgstr "" "`Issue #22687 `__: Fixed some corner cases in " "breaking words in tetxtwrap. Got rid of quadratic complexity in breaking " "long words." #: ../../../Misc/NEWS:4313 msgid "" "`Issue #4727 `__: The copy module now uses " "pickle protocol 4 (PEP 3154) and supports copying of instances of classes " "whose __new__ method takes keyword-only arguments." msgstr "" "`Issue #4727 `__: The copy module now uses " "pickle protocol 4 (PEP 3154) and supports copying of instances of classes " "whose __new__ method takes keyword-only arguments." #: ../../../Misc/NEWS:4317 msgid "" "`Issue #23491 `__: Added a zipapp module to " "support creating executable zip file archives of Python code. Registered \"." "pyz\" and \".pyzw\" extensions on Windows for these archives (PEP 441)." msgstr "" "`Issue #23491 `__: Added a zipapp module to " "support creating executable zip file archives of Python code. Registered \"." "pyz\" and \".pyzw\" extensions on Windows for these archives (PEP 441)." #: ../../../Misc/NEWS:4321 msgid "" "`Issue #23657 `__: Avoid explicit checks for " "str in zipapp, adding support for pathlib.Path objects as arguments." msgstr "" "`Issue #23657 `__: Avoid explicit checks for " "str in zipapp, adding support for pathlib.Path objects as arguments." #: ../../../Misc/NEWS:4324 msgid "" "`Issue #23688 `__: Added support of arbitrary " "bytes-like objects and avoided unnecessary copying of memoryview in gzip." "GzipFile.write(). Original patch by Wolfgang Maier." msgstr "" "`Issue #23688 `__: Added support of arbitrary " "bytes-like objects and avoided unnecessary copying of memoryview in gzip." "GzipFile.write(). Original patch by Wolfgang Maier." #: ../../../Misc/NEWS:4328 msgid "" "`Issue #23252 `__: Added support for writing " "ZIP files to unseekable streams." msgstr "" "`Issue #23252 `__: Added support for writing " "ZIP files to unseekable streams." #: ../../../Misc/NEWS:4330 msgid "" "`Issue #23647 `__: Increase impalib's MAXLINE " "to accommodate modern mailbox sizes." msgstr "" "`Issue #23647 `__: Increase impalib's MAXLINE " "to accommodate modern mailbox sizes." #: ../../../Misc/NEWS:4332 msgid "" "`Issue #23539 `__: If body is None, http." "client.HTTPConnection.request now sets Content-Length to 0 for PUT, POST, " "and PATCH headers to avoid 411 errors from some web servers." msgstr "" "`Issue #23539 `__: If body is None, http." "client.HTTPConnection.request now sets Content-Length to 0 for PUT, POST, " "and PATCH headers to avoid 411 errors from some web servers." #: ../../../Misc/NEWS:4336 msgid "" "`Issue #22351 `__: The nntplib.NNTP " "constructor no longer leaves the connection and socket open until the " "garbage collector cleans them up. Patch by Martin Panter." msgstr "" "`Issue #22351 `__: The nntplib.NNTP " "constructor no longer leaves the connection and socket open until the " "garbage collector cleans them up. Patch by Martin Panter." #: ../../../Misc/NEWS:4340 msgid "" "`Issue #23704 `__: collections.deque() " "objects now support methods for index(), insert(), and copy(). This allows " "deques to be registered as a MutableSequence and it improves their " "substitutability for lists." msgstr "" "`Issue #23704 `__: collections.deque() " "objects now support methods for index(), insert(), and copy(). This allows " "deques to be registered as a MutableSequence and it improves their " "substitutability for lists." #: ../../../Misc/NEWS:4344 msgid "" "`Issue #23715 `__: :func:`signal.sigwaitinfo` " "and :func:`signal.sigtimedwait` are now retried when interrupted by a signal " "not in the *sigset* parameter, if the signal handler does not raise an " "exception. signal.sigtimedwait() recomputes the timeout with a monotonic " "clock when it is retried." msgstr "" "`Issue #23715 `__: :func:`signal.sigwaitinfo` " "and :func:`signal.sigtimedwait` are now retried when interrupted by a signal " "not in the *sigset* parameter, if the signal handler does not raise an " "exception. signal.sigtimedwait() recomputes the timeout with a monotonic " "clock when it is retried." #: ../../../Misc/NEWS:4349 msgid "" "`Issue #23001 `__: Few functions in modules " "mmap, ossaudiodev, socket, ssl, and codecs, that accepted only read-only " "bytes-like object now accept writable bytes-like object too." msgstr "" "`Issue #23001 `__: Few functions in modules " "mmap, ossaudiodev, socket, ssl, and codecs, that accepted only read-only " "bytes-like object now accept writable bytes-like object too." #: ../../../Misc/NEWS:4353 msgid "" "`Issue #23646 `__: If time.sleep() is " "interrupted by a signal, the sleep is now retried with the recomputed delay, " "except if the signal handler raises an exception (PEP 475)." msgstr "" "`Issue #23646 `__: If time.sleep() is " "interrupted by a signal, the sleep is now retried with the recomputed delay, " "except if the signal handler raises an exception (PEP 475)." #: ../../../Misc/NEWS:4357 msgid "" "`Issue #23136 `__: _strptime now uniformly " "handles all days in week 0, including Dec 30 of previous year. Based on " "patch by Jim Carroll." msgstr "" "`Issue #23136 `__: _strptime now uniformly " "handles all days in week 0, including Dec 30 of previous year. Based on " "patch by Jim Carroll." #: ../../../Misc/NEWS:4360 msgid "" "`Issue #23700 `__: Iterator of " "NamedTemporaryFile now keeps a reference to NamedTemporaryFile instance. " "Patch by Bohuslav Kabrda." msgstr "" "`Issue #23700 `__: Iterator of " "NamedTemporaryFile now keeps a reference to NamedTemporaryFile instance. " "Patch by Bohuslav Kabrda." #: ../../../Misc/NEWS:4363 msgid "" "`Issue #22903 `__: The fake test case created " "by unittest.loader when it fails importing a test module is now picklable." msgstr "" "`Issue #22903 `__: The fake test case created " "by unittest.loader when it fails importing a test module is now picklable." #: ../../../Misc/NEWS:4366 msgid "" "`Issue #22181 `__: On Linux, os.urandom() now " "uses the new getrandom() syscall if available, syscall introduced in the " "Linux kernel 3.17. It is more reliable and more secure, because it avoids " "the need of a file descriptor and waits until the kernel has enough entropy." msgstr "" "`Issue #22181 `__: On Linux, os.urandom() now " "uses the new getrandom() syscall if available, syscall introduced in the " "Linux kernel 3.17. It is more reliable and more secure, because it avoids " "the need of a file descriptor and waits until the kernel has enough entropy." #: ../../../Misc/NEWS:4371 msgid "" "`Issue #2211 `__: Updated the implementation " "of the http.cookies.Morsel class. Setting attributes key, value and " "coded_value directly now is deprecated. update() and setdefault() now " "transform and check keys. Comparing for equality now takes into account " "attributes key, value and coded_value. copy() now returns a Morsel, not a " "dict. repr() now contains all attributes. Optimized checking keys and " "quoting values. Added new tests. Original patch by Demian Brecht." msgstr "" "`Issue #2211 `__: Updated the implementation " "of the http.cookies.Morsel class. Setting attributes key, value and " "coded_value directly now is deprecated. update() and setdefault() now " "transform and check keys. Comparing for equality now takes into account " "attributes key, value and coded_value. copy() now returns a Morsel, not a " "dict. repr() now contains all attributes. Optimized checking keys and " "quoting values. Added new tests. Original patch by Demian Brecht." #: ../../../Misc/NEWS:4379 msgid "" "`Issue #18983 `__: Allow selection of output " "units in timeit. Patch by Julian Gindi." msgstr "" "`Issue #18983 `__: Allow selection of output " "units in timeit. Patch by Julian Gindi." #: ../../../Misc/NEWS:4382 msgid "" "`Issue #23631 `__: Fix traceback.format_list " "when a traceback has been mutated." msgstr "" "`Issue #23631 `__: Fix traceback.format_list " "when a traceback has been mutated." #: ../../../Misc/NEWS:4384 msgid "" "`Issue #23568 `__: Add rdivmod support to " "MagicMock() objects. Patch by Håkan Lövdahl." msgstr "" "`Issue #23568 `__: Add rdivmod support to " "MagicMock() objects. Patch by Håkan Lövdahl." #: ../../../Misc/NEWS:4387 msgid "" "`Issue #2052 `__: Add charset parameter to " "HtmlDiff.make_file()." msgstr "" "`Issue #2052 `__: Add charset parameter to " "HtmlDiff.make_file()." #: ../../../Misc/NEWS:4389 msgid "" "`Issue #23668 `__: Support os.truncate and os." "ftruncate on Windows." msgstr "" "`Issue #23668 `__: Support os.truncate and os." "ftruncate on Windows." #: ../../../Misc/NEWS:4391 msgid "" "`Issue #23138 `__: Fixed parsing cookies with " "absent keys or values in cookiejar. Patch by Demian Brecht." msgstr "" "`Issue #23138 `__: Fixed parsing cookies with " "absent keys or values in cookiejar. Patch by Demian Brecht." #: ../../../Misc/NEWS:4394 msgid "" "`Issue #23051 `__: multiprocessing.Pool " "methods imap() and imap_unordered() now handle exceptions raised by an " "iterator. Patch by Alon Diamant and Davin Potts." msgstr "" "`Issue #23051 `__: multiprocessing.Pool " "methods imap() and imap_unordered() now handle exceptions raised by an " "iterator. Patch by Alon Diamant and Davin Potts." #: ../../../Misc/NEWS:4398 msgid "" "`Issue #23581 `__: Add matmul support to " "MagicMock. Patch by Håkan Lövdahl." msgstr "" "`Issue #23581 `__: Add matmul support to " "MagicMock. Patch by Håkan Lövdahl." #: ../../../Misc/NEWS:4400 msgid "" "`Issue #23566 `__: enable(), register(), " "dump_traceback() and dump_traceback_later() functions of faulthandler now " "accept file descriptors. Patch by Wei Wu." msgstr "" "`Issue #23566 `__: enable(), register(), " "dump_traceback() and dump_traceback_later() functions of faulthandler now " "accept file descriptors. Patch by Wei Wu." #: ../../../Misc/NEWS:4404 msgid "" "`Issue #22928 `__: Disabled HTTP header " "injections in http.client. Original patch by Demian Brecht." msgstr "" "`Issue #22928 `__: Disabled HTTP header " "injections in http.client. Original patch by Demian Brecht." #: ../../../Misc/NEWS:4407 msgid "" "`Issue #23615 `__: Modules bz2, tarfile and " "tokenize now can be reloaded with imp.reload(). Patch by Thomas Kluyver." msgstr "" "`Issue #23615 `__: Modules bz2, tarfile and " "tokenize now can be reloaded with imp.reload(). Patch by Thomas Kluyver." #: ../../../Misc/NEWS:4410 msgid "" "`Issue #23605 `__: os.walk() now calls os." "scandir() instead of os.listdir(). The usage of os.scandir() reduces the " "number of calls to os.stat(). Initial patch written by Ben Hoyt." msgstr "" "`Issue #23605 `__: os.walk() now calls os." "scandir() instead of os.listdir(). The usage of os.scandir() reduces the " "number of calls to os.stat(). Initial patch written by Ben Hoyt." #: ../../../Misc/NEWS:4417 msgid "" "`Issue #23585 `__: make patchcheck will " "ensure the interpreter is built." msgstr "" "`Issue #23585 `__: make patchcheck will " "ensure the interpreter is built." #: ../../../Misc/NEWS:4422 msgid "" "`Issue #23583 `__: Added tests for standard " "IO streams in IDLE." msgstr "" "`Issue #23583 `__: Added tests for standard " "IO streams in IDLE." #: ../../../Misc/NEWS:4424 msgid "" "`Issue #22289 `__: Prevent test_urllib2net " "failures due to ftp connection timeout." msgstr "" "`Issue #22289 `__: Prevent test_urllib2net " "failures due to ftp connection timeout." #: ../../../Misc/NEWS:4429 msgid "" "`Issue #22826 `__: The result of open() in " "Tools/freeze/bkfile.py is now better compatible with regular files (in " "particular it now supports the context management protocol)." msgstr "" "`Issue #22826 `__: The result of open() in " "Tools/freeze/bkfile.py is now better compatible with regular files (in " "particular it now supports the context management protocol)." #: ../../../Misc/NEWS:4435 msgid "Python 3.5 alpha 2" msgstr "" #: ../../../Misc/NEWS:4437 msgid "Release date: 2015-03-09" msgstr "" #: ../../../Misc/NEWS:4442 msgid "" "`Issue #23571 `__: PyObject_Call() and " "PyCFunction_Call() now raise a SystemError if a function returns a result " "and raises an exception. The SystemError is chained to the previous " "exception." msgstr "" "`Issue #23571 `__: PyObject_Call() and " "PyCFunction_Call() now raise a SystemError if a function returns a result " "and raises an exception. The SystemError is chained to the previous " "exception." #: ../../../Misc/NEWS:4449 msgid "" "`Issue #22524 `__: New os.scandir() function, " "part of the PEP 471: \"os.scandir() function -- a better and faster " "directory iterator\". Patch written by Ben Hoyt." msgstr "" "`Issue #22524 `__: New os.scandir() function, " "part of the PEP 471: \"os.scandir() function -- a better and faster " "directory iterator\". Patch written by Ben Hoyt." #: ../../../Misc/NEWS:4453 msgid "" "`Issue #23103 `__: Reduced the memory " "consumption of IPv4Address and IPv6Address." msgstr "" "`Issue #23103 `__: Reduced the memory " "consumption of IPv4Address and IPv6Address." #: ../../../Misc/NEWS:4455 msgid "" "`Issue #21793 `__: BaseHTTPRequestHandler " "again logs response code as numeric, not as stringified enum. Patch by " "Demian Brecht." msgstr "" "`Issue #21793 `__: BaseHTTPRequestHandler " "again logs response code as numeric, not as stringified enum. Patch by " "Demian Brecht." #: ../../../Misc/NEWS:4458 msgid "" "`Issue #23476 `__: In the ssl module, enable " "OpenSSL's X509_V_FLAG_TRUSTED_FIRST flag on certificate stores when it is " "available." msgstr "" "`Issue #23476 `__: In the ssl module, enable " "OpenSSL's X509_V_FLAG_TRUSTED_FIRST flag on certificate stores when it is " "available." #: ../../../Misc/NEWS:4461 msgid "" "`Issue #23576 `__: Avoid stalling in SSL " "reads when EOF has been reached in the SSL layer but the underlying " "connection hasn't been closed." msgstr "" "`Issue #23576 `__: Avoid stalling in SSL " "reads when EOF has been reached in the SSL layer but the underlying " "connection hasn't been closed." #: ../../../Misc/NEWS:4464 msgid "" "`Issue #23504 `__: Added an __all__ to the " "types module." msgstr "" "`Issue #23504 `__: Added an __all__ to the " "types module." #: ../../../Misc/NEWS:4466 msgid "" "`Issue #23563 `__: Optimized utility " "functions in urllib.parse." msgstr "" "`Issue #23563 `__: Optimized utility " "functions in urllib.parse." #: ../../../Misc/NEWS:4468 msgid "" "`Issue #7830 `__: Flatten nested functools." "partial." msgstr "" "`Issue #7830 `__: Flatten nested functools." "partial." #: ../../../Misc/NEWS:4470 msgid "" "`Issue #20204 `__: Added the __module__ " "attribute to _tkinter classes." msgstr "" "`Issue #20204 `__: Added the __module__ " "attribute to _tkinter classes." #: ../../../Misc/NEWS:4472 msgid "" "`Issue #19980 `__: Improved help() for non-" "recognized strings. help('') now shows the help on str. help('help') now " "shows the help on help(). Original patch by Mark Lawrence." msgstr "" "`Issue #19980 `__: Improved help() for non-" "recognized strings. help('') now shows the help on str. help('help') now " "shows the help on help(). Original patch by Mark Lawrence." #: ../../../Misc/NEWS:4476 msgid "" "`Issue #23521 `__: Corrected pure python " "implementation of timedelta division." msgstr "" "`Issue #23521 `__: Corrected pure python " "implementation of timedelta division." #: ../../../Misc/NEWS:4478 msgid "Eliminated OverflowError from timedelta * float for some floats;" msgstr "" #: ../../../Misc/NEWS:4479 msgid "Corrected rounding in timedlta true division." msgstr "" #: ../../../Misc/NEWS:4481 msgid "" "`Issue #21619 `__: Popen objects no longer " "leave a zombie after exit in the with statement if the pipe was broken. " "Patch by Martin Panter." msgstr "" "`Issue #21619 `__: Popen objects no longer " "leave a zombie after exit in the with statement if the pipe was broken. " "Patch by Martin Panter." #: ../../../Misc/NEWS:4484 msgid "" "`Issue #22936 `__: Make it possible to show " "local variables in tracebacks for both the traceback module and unittest." msgstr "" "`Issue #22936 `__: Make it possible to show " "local variables in tracebacks for both the traceback module and unittest." #: ../../../Misc/NEWS:4487 msgid "" "`Issue #15955 `__: Add an option to limit the " "output size in bz2.decompress(). Patch by Nikolaus Rath." msgstr "" "`Issue #15955 `__: Add an option to limit the " "output size in bz2.decompress(). Patch by Nikolaus Rath." #: ../../../Misc/NEWS:4490 msgid "" "`Issue #6639 `__: Module-level turtle " "functions no longer raise TclError after closing the window." msgstr "" "`Issue #6639 `__: Module-level turtle " "functions no longer raise TclError after closing the window." #: ../../../Misc/NEWS:4493 msgid "" "Issues #814253, #9179: Group references and conditional group references now " "work in lookbehind assertions in regular expressions." msgstr "" #: ../../../Misc/NEWS:4496 msgid "" "`Issue #23215 `__: Multibyte codecs with " "custom error handlers that ignores errors consumed too much memory and " "raised SystemError or MemoryError. Original patch by Aleksi Torhamo." msgstr "" "`Issue #23215 `__: Multibyte codecs with " "custom error handlers that ignores errors consumed too much memory and " "raised SystemError or MemoryError. Original patch by Aleksi Torhamo." #: ../../../Misc/NEWS:4500 msgid "" "`Issue #5700 `__: io.FileIO() called flush() " "after closing the file. flush() was not called in close() if closefd=False." msgstr "" "`Issue #5700 `__: io.FileIO() called flush() " "after closing the file. flush() was not called in close() if closefd=False." #: ../../../Misc/NEWS:4503 msgid "" "`Issue #23374 `__: Fixed pydoc failure with " "non-ASCII files when stdout encoding differs from file system encoding (e.g. " "on Mac OS)." msgstr "" "`Issue #23374 `__: Fixed pydoc failure with " "non-ASCII files when stdout encoding differs from file system encoding (e.g. " "on Mac OS)." #: ../../../Misc/NEWS:4506 msgid "" "`Issue #23481 `__: Remove RC4 from the SSL " "module's default cipher list." msgstr "" "`Issue #23481 `__: Remove RC4 from the SSL " "module's default cipher list." #: ../../../Misc/NEWS:4508 msgid "" "`Issue #21548 `__: Fix pydoc.synopsis() and " "pydoc.apropos() on modules with empty docstrings." msgstr "" "`Issue #21548 `__: Fix pydoc.synopsis() and " "pydoc.apropos() on modules with empty docstrings." #: ../../../Misc/NEWS:4511 msgid "" "`Issue #22885 `__: Fixed arbitrary code " "execution vulnerability in the dbm.dumb module. Original patch by Claudiu " "Popa." msgstr "" "`Issue #22885 `__: Fixed arbitrary code " "execution vulnerability in the dbm.dumb module. Original patch by Claudiu " "Popa." #: ../../../Misc/NEWS:4514 msgid "" "`Issue #23239 `__: ssl.match_hostname() now " "supports matching of IP addresses." msgstr "" "`Issue #23239 `__: ssl.match_hostname() now " "supports matching of IP addresses." #: ../../../Misc/NEWS:4516 msgid "" "`Issue #23146 `__: Fix mishandling of " "absolute Windows paths with forward slashes in pathlib." msgstr "" "`Issue #23146 `__: Fix mishandling of " "absolute Windows paths with forward slashes in pathlib." #: ../../../Misc/NEWS:4519 msgid "" "`Issue #23096 `__: Pickle representation of " "floats with protocol 0 now is the same for both Python and C implementations." msgstr "" "`Issue #23096 `__: Pickle representation of " "floats with protocol 0 now is the same for both Python and C implementations." #: ../../../Misc/NEWS:4522 msgid "" "`Issue #19105 `__: pprint now more " "efficiently uses free space at the right." msgstr "" "`Issue #19105 `__: pprint now more " "efficiently uses free space at the right." #: ../../../Misc/NEWS:4524 msgid "" "`Issue #14910 `__: Add allow_abbrev parameter " "to argparse.ArgumentParser. Patch by Jonathan Paugh, Steven Bethard, paul j3 " "and Daniel Eriksson." msgstr "" "`Issue #14910 `__: Add allow_abbrev parameter " "to argparse.ArgumentParser. Patch by Jonathan Paugh, Steven Bethard, paul j3 " "and Daniel Eriksson." #: ../../../Misc/NEWS:4527 msgid "" "`Issue #21717 `__: tarfile.open() now " "supports 'x' (exclusive creation) mode." msgstr "" "`Issue #21717 `__: tarfile.open() now " "supports 'x' (exclusive creation) mode." #: ../../../Misc/NEWS:4529 msgid "" "`Issue #23344 `__: marshal.dumps() is now " "20-25% faster on average." msgstr "" "`Issue #23344 `__: marshal.dumps() is now " "20-25% faster on average." #: ../../../Misc/NEWS:4531 msgid "" "`Issue #20416 `__: marshal.dumps() with " "protocols 3 and 4 is now 40-50% faster on average." msgstr "" "`Issue #20416 `__: marshal.dumps() with " "protocols 3 and 4 is now 40-50% faster on average." #: ../../../Misc/NEWS:4534 msgid "" "`Issue #23421 `__: Fixed compression in " "tarfile CLI. Patch by wdv4758h." msgstr "" "`Issue #23421 `__: Fixed compression in " "tarfile CLI. Patch by wdv4758h." #: ../../../Misc/NEWS:4536 msgid "" "`Issue #23367 `__: Fix possible overflows in " "the unicodedata module." msgstr "" "`Issue #23367 `__: Fix possible overflows in " "the unicodedata module." #: ../../../Misc/NEWS:4538 msgid "" "`Issue #23361 `__: Fix possible overflow in " "Windows subprocess creation code." msgstr "" "`Issue #23361 `__: Fix possible overflow in " "Windows subprocess creation code." #: ../../../Misc/NEWS:4540 msgid "" "logging.handlers.QueueListener now takes a respect_handler_level keyword " "argument which, if set to True, will pass messages to handlers taking " "handler levels into account." msgstr "" #: ../../../Misc/NEWS:4544 msgid "" "`Issue #19705 `__: turtledemo now has a " "visual sorting algorithm demo. Original patch from Jason Yeo." msgstr "" "`Issue #19705 `__: turtledemo now has a " "visual sorting algorithm demo. Original patch from Jason Yeo." #: ../../../Misc/NEWS:4547 msgid "" "`Issue #23801 `__: Fix issue where cgi." "FieldStorage did not always ignore the entire preamble to a multipart body." msgstr "" "`Issue #23801 `__: Fix issue where cgi." "FieldStorage did not always ignore the entire preamble to a multipart body." #: ../../../Misc/NEWS:4553 msgid "" "`Issue #23445 `__: pydebug builds now use " "\"gcc -Og\" where possible, to make the resulting executable faster." msgstr "" "`Issue #23445 `__: pydebug builds now use " "\"gcc -Og\" where possible, to make the resulting executable faster." #: ../../../Misc/NEWS:4556 msgid "" "`Issue #23686 `__: Update OS X 10.5 installer " "build to use OpenSSL 1.0.2a." msgstr "" "`Issue #23686 `__: Update OS X 10.5 installer " "build to use OpenSSL 1.0.2a." #: ../../../Misc/NEWS:4561 msgid "" "`Issue #20204 `__: Deprecation warning is now " "raised for builtin types without the __module__ attribute." msgstr "" "`Issue #20204 `__: Deprecation warning is now " "raised for builtin types without the __module__ attribute." #: ../../../Misc/NEWS:4567 msgid "" "`Issue #23465 `__: Implement PEP 486 - Make " "the Python Launcher aware of virtual environments. Patch by Paul Moore." msgstr "" "`Issue #23465 `__: Implement PEP 486 - Make " "the Python Launcher aware of virtual environments. Patch by Paul Moore." #: ../../../Misc/NEWS:4570 msgid "" "`Issue #23437 `__: Make user scripts " "directory versioned on Windows. Patch by Paul Moore." msgstr "" "`Issue #23437 `__: Make user scripts " "directory versioned on Windows. Patch by Paul Moore." #: ../../../Misc/NEWS:4575 msgid "Python 3.5 alpha 1" msgstr "" #: ../../../Misc/NEWS:4577 msgid "Release date: 2015-02-08" msgstr "" #: ../../../Misc/NEWS:4582 msgid "" "`Issue #23285 `__: PEP 475 - EINTR handling." msgstr "" "`Issue #23285 `__: PEP 475 - EINTR handling." #: ../../../Misc/NEWS:4584 msgid "" "`Issue #22735 `__: Fix many edge cases " "(including crashes) involving custom mro() implementations." msgstr "" "`Issue #22735 `__: Fix many edge cases " "(including crashes) involving custom mro() implementations." #: ../../../Misc/NEWS:4587 msgid "" "`Issue #22896 `__: Avoid using " "PyObject_AsCharBuffer(), PyObject_AsReadBuffer() and " "PyObject_AsWriteBuffer()." msgstr "" "`Issue #22896 `__: Avoid using " "PyObject_AsCharBuffer(), PyObject_AsReadBuffer() and " "PyObject_AsWriteBuffer()." #: ../../../Misc/NEWS:4590 msgid "" "`Issue #21295 `__: Revert some changes " "(`issue #16795 `__) to AST line numbers and " "column offsets that constituted a regression." msgstr "" "`Issue #21295 `__: Revert some changes " "(`issue #16795 `__) to AST line numbers and " "column offsets that constituted a regression." #: ../../../Misc/NEWS:4593 msgid "" "`Issue #22986 `__: Allow changing an object's " "__class__ between a dynamic type and static type in some cases." msgstr "" "`Issue #22986 `__: Allow changing an object's " "__class__ between a dynamic type and static type in some cases." #: ../../../Misc/NEWS:4596 msgid "" "`Issue #15859 `__: " "PyUnicode_EncodeFSDefault(), PyUnicode_EncodeMBCS() and " "PyUnicode_EncodeCodePage() now raise an exception if the object is not a " "Unicode object. For PyUnicode_EncodeFSDefault(), it was already the case on " "platforms other than Windows. Patch written by Campbell Barton." msgstr "" "`Issue #15859 `__: " "PyUnicode_EncodeFSDefault(), PyUnicode_EncodeMBCS() and " "PyUnicode_EncodeCodePage() now raise an exception if the object is not a " "Unicode object. For PyUnicode_EncodeFSDefault(), it was already the case on " "platforms other than Windows. Patch written by Campbell Barton." #: ../../../Misc/NEWS:4601 msgid "" "`Issue #21408 `__: The default __ne__() now " "returns NotImplemented if __eq__() returned NotImplemented. Original patch " "by Martin Panter." msgstr "" "`Issue #21408 `__: The default __ne__() now " "returns NotImplemented if __eq__() returned NotImplemented. Original patch " "by Martin Panter." #: ../../../Misc/NEWS:4604 msgid "" "`Issue #23321 `__: Fixed a crash in str." "decode() when error handler returned replacment string longer than " "mailformed input data." msgstr "" "`Issue #23321 `__: Fixed a crash in str." "decode() when error handler returned replacment string longer than " "mailformed input data." #: ../../../Misc/NEWS:4607 msgid "" "`Issue #22286 `__: The \"backslashreplace\" " "error handlers now works with decoding and translating." msgstr "" "`Issue #22286 `__: The \"backslashreplace\" " "error handlers now works with decoding and translating." #: ../../../Misc/NEWS:4610 msgid "" "`Issue #23253 `__: Delay-load " "ShellExecute[AW] in os.startfile for reduced startup overhead on Windows." msgstr "" "`Issue #23253 `__: Delay-load " "ShellExecute[AW] in os.startfile for reduced startup overhead on Windows." #: ../../../Misc/NEWS:4613 msgid "" "`Issue #22038 `__: pyatomic.h now uses " "stdatomic.h or GCC built-in functions for atomic memory access if available. " "Patch written by Vitor de Lima and Gustavo Temple." msgstr "" "`Issue #22038 `__: pyatomic.h now uses " "stdatomic.h or GCC built-in functions for atomic memory access if available. " "Patch written by Vitor de Lima and Gustavo Temple." #: ../../../Misc/NEWS:4617 msgid "" "`Issue #20284 `__: %-interpolation (aka " "printf) formatting added for bytes and bytearray." msgstr "" "`Issue #20284 `__: %-interpolation (aka " "printf) formatting added for bytes and bytearray." #: ../../../Misc/NEWS:4620 msgid "" "`Issue #23048 `__: Fix jumping out of an " "infinite while loop in the pdb." msgstr "" "`Issue #23048 `__: Fix jumping out of an " "infinite while loop in the pdb." #: ../../../Misc/NEWS:4622 msgid "" "`Issue #20335 `__: bytes constructor now " "raises TypeError when encoding or errors is specified with non-string " "argument. Based on patch by Renaud Blanch." msgstr "" "`Issue #20335 `__: bytes constructor now " "raises TypeError when encoding or errors is specified with non-string " "argument. Based on patch by Renaud Blanch." #: ../../../Misc/NEWS:4625 msgid "" "`Issue #22834 `__: If the current working " "directory ends up being set to a non-existent directory then import will no " "longer raise FileNotFoundError." msgstr "" "`Issue #22834 `__: If the current working " "directory ends up being set to a non-existent directory then import will no " "longer raise FileNotFoundError." #: ../../../Misc/NEWS:4628 msgid "" "`Issue #22869 `__: Move the interpreter " "startup & shutdown code to a new dedicated pylifecycle.c module" msgstr "" "`Issue #22869 `__: Move the interpreter " "startup & shutdown code to a new dedicated pylifecycle.c module" #: ../../../Misc/NEWS:4631 msgid "" "`Issue #22847 `__: Improve method cache " "efficiency." msgstr "" "`Issue #22847 `__: Improve method cache " "efficiency." #: ../../../Misc/NEWS:4633 msgid "" "`Issue #22335 `__: Fix crash when trying to " "enlarge a bytearray to 0x7fffffff bytes on a 32-bit platform." msgstr "" "`Issue #22335 `__: Fix crash when trying to " "enlarge a bytearray to 0x7fffffff bytes on a 32-bit platform." #: ../../../Misc/NEWS:4636 msgid "" "`Issue #22653 `__: Fix an assertion failure " "in debug mode when doing a reentrant dict insertion in debug mode." msgstr "" "`Issue #22653 `__: Fix an assertion failure " "in debug mode when doing a reentrant dict insertion in debug mode." #: ../../../Misc/NEWS:4639 msgid "" "`Issue #22643 `__: Fix integer overflow in " "Unicode case operations (upper, lower, title, swapcase, casefold)." msgstr "" "`Issue #22643 `__: Fix integer overflow in " "Unicode case operations (upper, lower, title, swapcase, casefold)." #: ../../../Misc/NEWS:4642 msgid "" "`Issue #17636 `__: Circular imports involving " "relative imports are now supported." msgstr "" "`Issue #17636 `__: Circular imports involving " "relative imports are now supported." #: ../../../Misc/NEWS:4645 msgid "" "`Issue #22604 `__: Fix assertion error in " "debug mode when dividing a complex number by (nan+0j)." msgstr "" "`Issue #22604 `__: Fix assertion error in " "debug mode when dividing a complex number by (nan+0j)." #: ../../../Misc/NEWS:4648 msgid "" "`Issue #21052 `__: Do not raise ImportWarning " "when sys.path_hooks or sys.meta_path are set to None." msgstr "" "`Issue #21052 `__: Do not raise ImportWarning " "when sys.path_hooks or sys.meta_path are set to None." #: ../../../Misc/NEWS:4651 msgid "" "`Issue #16518 `__: Use 'bytes-like object " "required' in error messages that previously used the far more cryptic \"'x' " "does not support the buffer protocol." msgstr "" "`Issue #16518 `__: Use 'bytes-like object " "required' in error messages that previously used the far more cryptic \"'x' " "does not support the buffer protocol." #: ../../../Misc/NEWS:4655 msgid "" "`Issue #22470 `__: Fixed integer overflow " "issues in \"backslashreplace\", \"xmlcharrefreplace\", and \"surrogatepass\" " "error handlers." msgstr "" "`Issue #22470 `__: Fixed integer overflow " "issues in \"backslashreplace\", \"xmlcharrefreplace\", and \"surrogatepass\" " "error handlers." #: ../../../Misc/NEWS:4658 msgid "" "`Issue #22540 `__: speed up " "`PyObject_IsInstance` and `PyObject_IsSubclass` in the common case that the " "second argument has metaclass `type`." msgstr "" "`Issue #22540 `__: speed up " "`PyObject_IsInstance` and `PyObject_IsSubclass` in the common case that the " "second argument has metaclass `type`." #: ../../../Misc/NEWS:4661 msgid "" "`Issue #18711 `__: Add a new `PyErr_FormatV` " "function, similar to `PyErr_Format` but accepting a `va_list` argument." msgstr "" "`Issue #18711 `__: Add a new `PyErr_FormatV` " "function, similar to `PyErr_Format` but accepting a `va_list` argument." #: ../../../Misc/NEWS:4664 msgid "" "`Issue #22520 `__: Fix overflow checking when " "generating the repr of a unicode object." msgstr "" "`Issue #22520 `__: Fix overflow checking when " "generating the repr of a unicode object." #: ../../../Misc/NEWS:4667 msgid "" "`Issue #22519 `__: Fix overflow checking in " "PyBytes_Repr." msgstr "" "`Issue #22519 `__: Fix overflow checking in " "PyBytes_Repr." #: ../../../Misc/NEWS:4669 msgid "" "`Issue #22518 `__: Fix integer overflow " "issues in latin-1 encoding." msgstr "" "`Issue #22518 `__: Fix integer overflow " "issues in latin-1 encoding." #: ../../../Misc/NEWS:4671 msgid "" "`Issue #16324 `__: _charset parameter of " "MIMEText now also accepts email.charset.Charset instances. Initial patch by " "Claude Paroz." msgstr "" "`Issue #16324 `__: _charset parameter of " "MIMEText now also accepts email.charset.Charset instances. Initial patch by " "Claude Paroz." #: ../../../Misc/NEWS:4674 msgid "" "`Issue #1764286 `__: Fix inspect." "getsource() to support decorated functions. Patch by Claudiu Popa." msgstr "" "`Issue #1764286 `__: Fix inspect." "getsource() to support decorated functions. Patch by Claudiu Popa." #: ../../../Misc/NEWS:4677 msgid "" "`Issue #18554 `__: os.__all__ includes posix " "functions." msgstr "" "`Issue #18554 `__: os.__all__ includes posix " "functions." #: ../../../Misc/NEWS:4679 msgid "" "`Issue #21391 `__: Use os.path.abspath in the " "shutil module." msgstr "" "`Issue #21391 `__: Use os.path.abspath in the " "shutil module." #: ../../../Misc/NEWS:4681 msgid "" "`Issue #11471 `__: avoid generating a " "JUMP_FORWARD instruction at the end of an if-block if there is no else-" "clause. Original patch by Eugene Toder." msgstr "" "`Issue #11471 `__: avoid generating a " "JUMP_FORWARD instruction at the end of an if-block if there is no else-" "clause. Original patch by Eugene Toder." #: ../../../Misc/NEWS:4684 msgid "" "`Issue #22215 `__: Now ValueError is raised " "instead of TypeError when str or bytes argument contains not permitted null " "character or byte." msgstr "" "`Issue #22215 `__: Now ValueError is raised " "instead of TypeError when str or bytes argument contains not permitted null " "character or byte." #: ../../../Misc/NEWS:4687 msgid "" "`Issue #22258 `__: Fix the internal function " "set_inheritable() on Illumos. This platform exposes the function " "``ioctl(FIOCLEX)``, but calling it fails with errno is ENOTTY: " "\"Inappropriate ioctl for device\". set_inheritable() now falls back to the " "slower ``fcntl()`` (``F_GETFD`` and then ``F_SETFD``)." msgstr "" "`Issue #22258 `__: Fix the internal function " "set_inheritable() on Illumos. This platform exposes the function " "``ioctl(FIOCLEX)``, but calling it fails with errno is ENOTTY: " "\"Inappropriate ioctl for device\". set_inheritable() now falls back to the " "slower ``fcntl()`` (``F_GETFD`` and then ``F_SETFD``)." #: ../../../Misc/NEWS:4692 msgid "" "`Issue #21389 `__: Displaying the " "__qualname__ of the underlying function in the repr of a bound method." msgstr "" "`Issue #21389 `__: Displaying the " "__qualname__ of the underlying function in the repr of a bound method." #: ../../../Misc/NEWS:4695 msgid "" "`Issue #22206 `__: Using pthread, " "PyThread_create_key() now sets errno to ENOMEM and returns -1 (error) on " "integer overflow." msgstr "" "`Issue #22206 `__: Using pthread, " "PyThread_create_key() now sets errno to ENOMEM and returns -1 (error) on " "integer overflow." #: ../../../Misc/NEWS:4698 msgid "" "`Issue #20184 `__: Argument Clinic based " "signature introspection added for 30 of the builtin functions." msgstr "" "`Issue #20184 `__: Argument Clinic based " "signature introspection added for 30 of the builtin functions." #: ../../../Misc/NEWS:4701 msgid "" "`Issue #22116 `__: C functions and methods " "(of the 'builtin_function_or_method' type) can now be weakref'ed. Patch by " "Wei Wu." msgstr "" "`Issue #22116 `__: C functions and methods " "(of the 'builtin_function_or_method' type) can now be weakref'ed. Patch by " "Wei Wu." #: ../../../Misc/NEWS:4704 msgid "" "`Issue #22077 `__: Improve index error " "messages for bytearrays, bytes, lists, and tuples by adding 'or slices'. " "Added ', not ' for bytearrays. Original patch by Claudiu Popa." msgstr "" "`Issue #22077 `__: Improve index error " "messages for bytearrays, bytes, lists, and tuples by adding 'or slices'. " "Added ', not ' for bytearrays. Original patch by Claudiu Popa." #: ../../../Misc/NEWS:4708 msgid "" "`Issue #20179 `__: Apply Argument Clinic to " "bytes and bytearray. Patch by Tal Einat." msgstr "" "`Issue #20179 `__: Apply Argument Clinic to " "bytes and bytearray. Patch by Tal Einat." #: ../../../Misc/NEWS:4711 msgid "" "`Issue #22082 `__: Clear interned strings in " "slotdefs." msgstr "" "`Issue #22082 `__: Clear interned strings in " "slotdefs." #: ../../../Misc/NEWS:4713 msgid "Upgrade Unicode database to Unicode 7.0.0." msgstr "" #: ../../../Misc/NEWS:4715 msgid "" "`Issue #21897 `__: Fix a crash with the " "f_locals attribute with closure variables when frame.clear() has been called." msgstr "" "`Issue #21897 `__: Fix a crash with the " "f_locals attribute with closure variables when frame.clear() has been called." #: ../../../Misc/NEWS:4718 msgid "" "`Issue #21205 `__: Add a new ``__qualname__`` " "attribute to generator, the qualified name, and use it in the representation " "of a generator (``repr(gen)``). The default name of the generator " "(``__name__`` attribute) is now get from the function instead of the code. " "Use ``gen.gi_code.co_name`` to get the name of the code." msgstr "" "`Issue #21205 `__: Add a new ``__qualname__`` " "attribute to generator, the qualified name, and use it in the representation " "of a generator (``repr(gen)``). The default name of the generator " "(``__name__`` attribute) is now get from the function instead of the code. " "Use ``gen.gi_code.co_name`` to get the name of the code." #: ../../../Misc/NEWS:4724 msgid "" "`Issue #21669 `__: With the aid of heuristics " "in SyntaxError.__init__, the parser now attempts to generate more meaningful " "(or at least more search engine friendly) error messages when \"exec\" and " "\"print\" are used as statements." msgstr "" "`Issue #21669 `__: With the aid of heuristics " "in SyntaxError.__init__, the parser now attempts to generate more meaningful " "(or at least more search engine friendly) error messages when \"exec\" and " "\"print\" are used as statements." #: ../../../Misc/NEWS:4729 msgid "" "`Issue #21642 `__: In the conditional if-else " "expression, allow an integer written with no space between itself and the " "``else`` keyword (e.g. ``True if 42else False``) to be valid syntax." msgstr "" "`Issue #21642 `__: In the conditional if-else " "expression, allow an integer written with no space between itself and the " "``else`` keyword (e.g. ``True if 42else False``) to be valid syntax." #: ../../../Misc/NEWS:4733 msgid "" "`Issue #21523 `__: Fix over-pessimistic " "computation of the stack effect of some opcodes in the compiler. This also " "fixes a quadratic compilation time issue noticeable when compiling code with " "a large number of \"and\" and \"or\" operators." msgstr "" "`Issue #21523 `__: Fix over-pessimistic " "computation of the stack effect of some opcodes in the compiler. This also " "fixes a quadratic compilation time issue noticeable when compiling code with " "a large number of \"and\" and \"or\" operators." #: ../../../Misc/NEWS:4738 msgid "" "`Issue #21418 `__: Fix a crash in the builtin " "function super() when called without argument and without current frame (ex: " "embedded Python)." msgstr "" "`Issue #21418 `__: Fix a crash in the builtin " "function super() when called without argument and without current frame (ex: " "embedded Python)." #: ../../../Misc/NEWS:4741 msgid "" "`Issue #21425 `__: Fix flushing of standard " "streams in the interactive interpreter." msgstr "" "`Issue #21425 `__: Fix flushing of standard " "streams in the interactive interpreter." #: ../../../Misc/NEWS:4744 msgid "" "`Issue #21435 `__: In rare cases, when " "running finalizers on objects in cyclic trash a bad pointer dereference " "could occur due to a subtle flaw in internal iteration logic." msgstr "" "`Issue #21435 `__: In rare cases, when " "running finalizers on objects in cyclic trash a bad pointer dereference " "could occur due to a subtle flaw in internal iteration logic." #: ../../../Misc/NEWS:4748 msgid "" "`Issue #21377 `__: PyBytes_Concat() now tries " "to concatenate in-place when the first argument has a reference count of 1. " "Patch by Nikolaus Rath." msgstr "" "`Issue #21377 `__: PyBytes_Concat() now tries " "to concatenate in-place when the first argument has a reference count of 1. " "Patch by Nikolaus Rath." #: ../../../Misc/NEWS:4751 msgid "" "`Issue #20355 `__: -W command line options " "now have higher priority than the PYTHONWARNINGS environment variable. " "Patch by Arfrever." msgstr "" "`Issue #20355 `__: -W command line options " "now have higher priority than the PYTHONWARNINGS environment variable. " "Patch by Arfrever." #: ../../../Misc/NEWS:4754 msgid "" "`Issue #21274 `__: Define PATH_MAX for GNU/" "Hurd in Python/pythonrun.c." msgstr "" "`Issue #21274 `__: Define PATH_MAX for GNU/" "Hurd in Python/pythonrun.c." #: ../../../Misc/NEWS:4756 msgid "" "`Issue #20904 `__: Support setting FPU " "precision on m68k." msgstr "" "`Issue #20904 `__: Support setting FPU " "precision on m68k." #: ../../../Misc/NEWS:4758 msgid "" "`Issue #21209 `__: Fix sending tuples to " "custom generator objects with the yield from syntax." msgstr "" "`Issue #21209 `__: Fix sending tuples to " "custom generator objects with the yield from syntax." #: ../../../Misc/NEWS:4761 msgid "" "`Issue #21193 `__: pow(a, b, c) now raises " "ValueError rather than TypeError when b is negative. Patch by Josh " "Rosenberg." msgstr "" "`Issue #21193 `__: pow(a, b, c) now raises " "ValueError rather than TypeError when b is negative. Patch by Josh " "Rosenberg." #: ../../../Misc/NEWS:4764 msgid "" "PEP 465 and `Issue #21176 `__: Add the '@' " "operator for matrix multiplication." msgstr "" #: ../../../Misc/NEWS:4766 msgid "" "`Issue #21134 `__: Fix segfault when str is " "called on an uninitialized UnicodeEncodeError, UnicodeDecodeError, or " "UnicodeTranslateError object." msgstr "" "`Issue #21134 `__: Fix segfault when str is " "called on an uninitialized UnicodeEncodeError, UnicodeDecodeError, or " "UnicodeTranslateError object." #: ../../../Misc/NEWS:4769 msgid "" "`Issue #19537 `__: Fix PyUnicode_DATA() " "alignment under m68k. Patch by Andreas Schwab." msgstr "" "`Issue #19537 `__: Fix PyUnicode_DATA() " "alignment under m68k. Patch by Andreas Schwab." #: ../../../Misc/NEWS:4772 msgid "" "`Issue #20929 `__: Add a type cast to avoid " "shifting a negative number." msgstr "" "`Issue #20929 `__: Add a type cast to avoid " "shifting a negative number." #: ../../../Misc/NEWS:4774 msgid "" "`Issue #20731 `__: Properly position in " "source code files even if they are opened in text mode. Patch by Serhiy " "Storchaka." msgstr "" "`Issue #20731 `__: Properly position in " "source code files even if they are opened in text mode. Patch by Serhiy " "Storchaka." #: ../../../Misc/NEWS:4777 msgid "" "`Issue #20637 `__: Key-sharing now also works " "for instance dictionaries of subclasses. Patch by Peter Ingebretson." msgstr "" "`Issue #20637 `__: Key-sharing now also works " "for instance dictionaries of subclasses. Patch by Peter Ingebretson." #: ../../../Misc/NEWS:4780 msgid "" "`Issue #8297 `__: Attributes missing from " "modules now include the module name in the error text. Original patch by " "ysj.ray." msgstr "" "`Issue #8297 `__: Attributes missing from " "modules now include the module name in the error text. Original patch by " "ysj.ray." #: ../../../Misc/NEWS:4783 msgid "" "`Issue #19995 `__: %c, %o, %x, and %X now " "raise TypeError on non-integer input." msgstr "" "`Issue #19995 `__: %c, %o, %x, and %X now " "raise TypeError on non-integer input." #: ../../../Misc/NEWS:4785 msgid "" "`Issue #19655 `__: The ASDL parser - used by " "the build process to generate code for managing the Python AST in C - was " "rewritten. The new parser is self contained and does not require to carry " "long the spark.py parser-generator library; spark.py was removed from the " "source base." msgstr "" "`Issue #19655 `__: The ASDL parser - used by " "the build process to generate code for managing the Python AST in C - was " "rewritten. The new parser is self contained and does not require to carry " "long the spark.py parser-generator library; spark.py was removed from the " "source base." #: ../../../Misc/NEWS:4790 msgid "" "`Issue #12546 `__: Allow ``\\x00`` to be used " "as a fill character when using str, int, float, and complex __format__ " "methods." msgstr "" "`Issue #12546 `__: Allow ``\\x00`` to be used " "as a fill character when using str, int, float, and complex __format__ " "methods." #: ../../../Misc/NEWS:4793 msgid "" "`Issue #20480 `__: Add ipaddress." "reverse_pointer. Patch by Leon Weber." msgstr "" "`Issue #20480 `__: Add ipaddress." "reverse_pointer. Patch by Leon Weber." #: ../../../Misc/NEWS:4795 msgid "" "`Issue #13598 `__: Modify string.Formatter to " "support auto-numbering of replacement fields. It now matches the behavior of " "str.format() in this regard. Patches by Phil Elson and Ramchandra Apte." msgstr "" "`Issue #13598 `__: Modify string.Formatter to " "support auto-numbering of replacement fields. It now matches the behavior of " "str.format() in this regard. Patches by Phil Elson and Ramchandra Apte." #: ../../../Misc/NEWS:4799 msgid "" "`Issue #8931 `__: Make alternate formatting " "('#') for type 'c' raise an exception. In versions prior to 3.5, '#' with " "'c' had no effect. Now specifying it is an error. Patch by Torsten " "Landschoff." msgstr "" "`Issue #8931 `__: Make alternate formatting " "('#') for type 'c' raise an exception. In versions prior to 3.5, '#' with " "'c' had no effect. Now specifying it is an error. Patch by Torsten " "Landschoff." #: ../../../Misc/NEWS:4803 msgid "" "`Issue #23165 `__: Perform overflow checks " "before allocating memory in the _Py_char2wchar function." msgstr "" "`Issue #23165 `__: Perform overflow checks " "before allocating memory in the _Py_char2wchar function." #: ../../../Misc/NEWS:4809 msgid "" "`Issue #23399 `__: pyvenv creates relative " "symlinks where possible." msgstr "" "`Issue #23399 `__: pyvenv creates relative " "symlinks where possible." #: ../../../Misc/NEWS:4811 msgid "" "`Issue #20289 `__: cgi.FieldStorage() now " "supports the context management protocol." msgstr "" "`Issue #20289 `__: cgi.FieldStorage() now " "supports the context management protocol." #: ../../../Misc/NEWS:4814 msgid "" "`Issue #13128 `__: Print response headers for " "CONNECT requests when debuglevel > 0. Patch by Demian Brecht." msgstr "" "`Issue #13128 `__: Print response headers for " "CONNECT requests when debuglevel > 0. Patch by Demian Brecht." #: ../../../Misc/NEWS:4817 msgid "" "`Issue #15381 `__: Optimized io.BytesIO to " "make less allocations and copyings." msgstr "" "`Issue #15381 `__: Optimized io.BytesIO to " "make less allocations and copyings." #: ../../../Misc/NEWS:4819 msgid "" "`Issue #22818 `__: Splitting on a pattern " "that could match an empty string now raises a warning. Patterns that can " "only match empty strings are now rejected." msgstr "" "`Issue #22818 `__: Splitting on a pattern " "that could match an empty string now raises a warning. Patterns that can " "only match empty strings are now rejected." #: ../../../Misc/NEWS:4823 msgid "" "`Issue #23099 `__: Closing io.BytesIO with " "exported buffer is rejected now to prevent corrupting exported buffer." msgstr "" "`Issue #23099 `__: Closing io.BytesIO with " "exported buffer is rejected now to prevent corrupting exported buffer." #: ../../../Misc/NEWS:4826 msgid "" "`Issue #23326 `__: Removed __ne__ " "implementations. Since fixing default __ne__ implementation in `issue " "#21408 `__ they are redundant." msgstr "" "`Issue #23326 `__: Removed __ne__ " "implementations. Since fixing default __ne__ implementation in `issue " "#21408 `__ they are redundant." #: ../../../Misc/NEWS:4829 msgid "" "`Issue #23363 `__: Fix possible overflow in " "itertools.permutations." msgstr "" "`Issue #23363 `__: Fix possible overflow in " "itertools.permutations." #: ../../../Misc/NEWS:4831 msgid "" "`Issue #23364 `__: Fix possible overflow in " "itertools.product." msgstr "" "`Issue #23364 `__: Fix possible overflow in " "itertools.product." #: ../../../Misc/NEWS:4833 msgid "" "`Issue #23366 `__: Fixed possible integer " "overflow in itertools.combinations." msgstr "" "`Issue #23366 `__: Fixed possible integer " "overflow in itertools.combinations." #: ../../../Misc/NEWS:4835 msgid "" "`Issue #23369 `__: Fixed possible integer " "overflow in _json.encode_basestring_ascii." msgstr "" "`Issue #23369 `__: Fixed possible integer " "overflow in _json.encode_basestring_ascii." #: ../../../Misc/NEWS:4838 msgid "" "`Issue #23353 `__: Fix the exception handling " "of generators in PyEval_EvalFrameEx(). At entry, save or swap the exception " "state even if PyEval_EvalFrameEx() is called with throwflag=0. At exit, the " "exception state is now always restored or swapped, not only if why is " "WHY_YIELD or WHY_RETURN. Patch co-written with Antoine Pitrou." msgstr "" "`Issue #23353 `__: Fix the exception handling " "of generators in PyEval_EvalFrameEx(). At entry, save or swap the exception " "state even if PyEval_EvalFrameEx() is called with throwflag=0. At exit, the " "exception state is now always restored or swapped, not only if why is " "WHY_YIELD or WHY_RETURN. Patch co-written with Antoine Pitrou." #: ../../../Misc/NEWS:4844 msgid "" "`Issue #14099 `__: Restored support of " "writing ZIP files to tellable but non-seekable streams." msgstr "" "`Issue #14099 `__: Restored support of " "writing ZIP files to tellable but non-seekable streams." #: ../../../Misc/NEWS:4847 msgid "" "`Issue #14099 `__: Writing to ZipFile and " "reading multiple ZipExtFiles is threadsafe now." msgstr "" "`Issue #14099 `__: Writing to ZipFile and " "reading multiple ZipExtFiles is threadsafe now." #: ../../../Misc/NEWS:4850 msgid "" "`Issue #19361 `__: JSON decoder now raises " "JSONDecodeError instead of ValueError." msgstr "" "`Issue #19361 `__: JSON decoder now raises " "JSONDecodeError instead of ValueError." #: ../../../Misc/NEWS:4852 msgid "" "`Issue #18518 `__: timeit now rejects " "statements which can't be compiled outside a function or a loop (e.g. " "\"return\" or \"break\")." msgstr "" "`Issue #18518 `__: timeit now rejects " "statements which can't be compiled outside a function or a loop (e.g. " "\"return\" or \"break\")." #: ../../../Misc/NEWS:4855 msgid "" "`Issue #23094 `__: Fixed readline with frames " "in Python implementation of pickle." msgstr "" "`Issue #23094 `__: Fixed readline with frames " "in Python implementation of pickle." #: ../../../Misc/NEWS:4857 msgid "" "`Issue #23268 `__: Fixed bugs in the " "comparison of ipaddress classes." msgstr "" "`Issue #23268 `__: Fixed bugs in the " "comparison of ipaddress classes." #: ../../../Misc/NEWS:4859 msgid "" "`Issue #21408 `__: Removed incorrect " "implementations of __ne__() which didn't returned NotImplemented if __eq__() " "returned NotImplemented. The default __ne__() now works correctly." msgstr "" "`Issue #21408 `__: Removed incorrect " "implementations of __ne__() which didn't returned NotImplemented if __eq__() " "returned NotImplemented. The default __ne__() now works correctly." #: ../../../Misc/NEWS:4863 msgid "" "`Issue #19996 `__: :class:`email.feedparser." "FeedParser` now handles (malformed) headers with no key rather than assuming " "the body has started." msgstr "" "`Issue #19996 `__: :class:`email.feedparser." "FeedParser` now handles (malformed) headers with no key rather than assuming " "the body has started." #: ../../../Misc/NEWS:4866 msgid "" "`Issue #20188 `__: Support Application-Layer " "Protocol Negotiation (ALPN) in the ssl module." msgstr "" "`Issue #20188 `__: Support Application-Layer " "Protocol Negotiation (ALPN) in the ssl module." #: ../../../Misc/NEWS:4869 msgid "" "`Issue #23133 `__: Pickling of ipaddress " "objects now produces more compact and portable representation." msgstr "" "`Issue #23133 `__: Pickling of ipaddress " "objects now produces more compact and portable representation." #: ../../../Misc/NEWS:4872 msgid "" "`Issue #23248 `__: Update ssl error codes " "from latest OpenSSL git master." msgstr "" "`Issue #23248 `__: Update ssl error codes " "from latest OpenSSL git master." #: ../../../Misc/NEWS:4874 msgid "" "`Issue #23266 `__: Much faster implementation " "of ipaddress.collapse_addresses() when there are many non-consecutive " "addresses." msgstr "" "`Issue #23266 `__: Much faster implementation " "of ipaddress.collapse_addresses() when there are many non-consecutive " "addresses." #: ../../../Misc/NEWS:4877 msgid "" "`Issue #23098 `__: 64-bit dev_t is now " "supported in the os module." msgstr "" "`Issue #23098 `__: 64-bit dev_t is now " "supported in the os module." #: ../../../Misc/NEWS:4879 msgid "" "`Issue #21817 `__: When an exception is " "raised in a task submitted to a ProcessPoolExecutor, the remote traceback is " "now displayed in the parent process. Patch by Claudiu Popa." msgstr "" "`Issue #21817 `__: When an exception is " "raised in a task submitted to a ProcessPoolExecutor, the remote traceback is " "now displayed in the parent process. Patch by Claudiu Popa." #: ../../../Misc/NEWS:4883 msgid "" "`Issue #15955 `__: Add an option to limit " "output size when decompressing LZMA data. Patch by Nikolaus Rath and Martin " "Panter." msgstr "" "`Issue #15955 `__: Add an option to limit " "output size when decompressing LZMA data. Patch by Nikolaus Rath and Martin " "Panter." #: ../../../Misc/NEWS:4886 msgid "" "`Issue #23250 `__: In the http.cookies " "module, capitalize \"HttpOnly\" and \"Secure\" as they are written in the " "standard." msgstr "" "`Issue #23250 `__: In the http.cookies " "module, capitalize \"HttpOnly\" and \"Secure\" as they are written in the " "standard." #: ../../../Misc/NEWS:4889 msgid "" "`Issue #23063 `__: In the disutils' check " "command, fix parsing of reST with code or code-block directives." msgstr "" "`Issue #23063 `__: In the disutils' check " "command, fix parsing of reST with code or code-block directives." #: ../../../Misc/NEWS:4892 msgid "" "`Issue #23209 `__, #23225: selectors." "BaseSelector.get_key() now raises a RuntimeError if the selector is closed. " "And selectors.BaseSelector.close() now clears its internal reference to the " "selector mapping to break a reference cycle. Initial patch written by Martin " "Richard." msgstr "" "`Issue #23209 `__, #23225: selectors." "BaseSelector.get_key() now raises a RuntimeError if the selector is closed. " "And selectors.BaseSelector.close() now clears its internal reference to the " "selector mapping to break a reference cycle. Initial patch written by Martin " "Richard." #: ../../../Misc/NEWS:4897 msgid "" "`Issue #17911 `__: Provide a way to seed the " "linecache for a PEP-302 module without actually loading the code." msgstr "" "`Issue #17911 `__: Provide a way to seed the " "linecache for a PEP-302 module without actually loading the code." #: ../../../Misc/NEWS:4900 msgid "" "`Issue #17911 `__: Provide a new object API " "for traceback, including the ability to not lookup lines at all until the " "traceback is actually rendered, without any trace of the original objects " "being kept alive." msgstr "" "`Issue #17911 `__: Provide a new object API " "for traceback, including the ability to not lookup lines at all until the " "traceback is actually rendered, without any trace of the original objects " "being kept alive." #: ../../../Misc/NEWS:4904 msgid "" "`Issue #19777 `__: Provide a home() " "classmethod on Path objects. Contributed by Victor Salgado and Mayank " "Tripathi." msgstr "" "`Issue #19777 `__: Provide a home() " "classmethod on Path objects. Contributed by Victor Salgado and Mayank " "Tripathi." #: ../../../Misc/NEWS:4907 msgid "" "`Issue #23206 `__: Make ``json.dumps(..., " "ensure_ascii=False)`` as fast as the default case of ``ensure_ascii=True``. " "Patch by Naoki Inada." msgstr "" "`Issue #23206 `__: Make ``json.dumps(..., " "ensure_ascii=False)`` as fast as the default case of ``ensure_ascii=True``. " "Patch by Naoki Inada." #: ../../../Misc/NEWS:4910 msgid "" "`Issue #23185 `__: Add math.inf and math.nan " "constants." msgstr "" "`Issue #23185 `__: Add math.inf and math.nan " "constants." #: ../../../Misc/NEWS:4912 msgid "" "`Issue #23186 `__: Add ssl.SSLObject." "shared_ciphers() and ssl.SSLSocket.shared_ciphers() to fetch the client's " "list ciphers sent at handshake." msgstr "" "`Issue #23186 `__: Add ssl.SSLObject." "shared_ciphers() and ssl.SSLSocket.shared_ciphers() to fetch the client's " "list ciphers sent at handshake." #: ../../../Misc/NEWS:4916 msgid "" "`Issue #23143 `__: Remove compatibility with " "OpenSSLs older than 0.9.8." msgstr "" "`Issue #23143 `__: Remove compatibility with " "OpenSSLs older than 0.9.8." #: ../../../Misc/NEWS:4918 msgid "" "`Issue #23132 `__: Improve performance and " "introspection support of comparison methods created by functool." "total_ordering." msgstr "" "`Issue #23132 `__: Improve performance and " "introspection support of comparison methods created by functool." "total_ordering." #: ../../../Misc/NEWS:4921 msgid "" "`Issue #19776 `__: Add an expanduser() method " "on Path objects." msgstr "" "`Issue #19776 `__: Add an expanduser() method " "on Path objects." #: ../../../Misc/NEWS:4923 msgid "" "`Issue #23112 `__: Fix SimpleHTTPServer to " "correctly carry the query string and fragment when it redirects to add a " "trailing slash." msgstr "" "`Issue #23112 `__: Fix SimpleHTTPServer to " "correctly carry the query string and fragment when it redirects to add a " "trailing slash." #: ../../../Misc/NEWS:4926 msgid "" "`Issue #21793 `__: Added http.HTTPStatus " "enums (i.e. HTTPStatus.OK, HTTPStatus.NOT_FOUND). Patch by Demian Brecht." msgstr "" "`Issue #21793 `__: Added http.HTTPStatus " "enums (i.e. HTTPStatus.OK, HTTPStatus.NOT_FOUND). Patch by Demian Brecht." #: ../../../Misc/NEWS:4929 msgid "" "`Issue #23093 `__: In the io, module allow " "more operations to work on detached streams." msgstr "" "`Issue #23093 `__: In the io, module allow " "more operations to work on detached streams." #: ../../../Misc/NEWS:4932 msgid "" "`Issue #23111 `__: In the ftplib, make ssl." "PROTOCOL_SSLv23 the default protocol version." msgstr "" "`Issue #23111 `__: In the ftplib, make ssl." "PROTOCOL_SSLv23 the default protocol version." #: ../../../Misc/NEWS:4935 msgid "" "`Issue #22585 `__: On OpenBSD 5.6 and newer, " "os.urandom() now calls getentropy(), instead of reading /dev/urandom, to get " "pseudo-random bytes." msgstr "" "`Issue #22585 `__: On OpenBSD 5.6 and newer, " "os.urandom() now calls getentropy(), instead of reading /dev/urandom, to get " "pseudo-random bytes." #: ../../../Misc/NEWS:4938 msgid "" "`Issue #19104 `__: pprint now produces " "evaluable output for wrapped strings." msgstr "" "`Issue #19104 `__: pprint now produces " "evaluable output for wrapped strings." #: ../../../Misc/NEWS:4940 msgid "" "`Issue #23071 `__: Added missing names to " "codecs.__all__. Patch by Martin Panter." msgstr "" "`Issue #23071 `__: Added missing names to " "codecs.__all__. Patch by Martin Panter." #: ../../../Misc/NEWS:4942 msgid "" "`Issue #22783 `__: Pickling now uses the " "NEWOBJ opcode instead of the NEWOBJ_EX opcode if possible." msgstr "" "`Issue #22783 `__: Pickling now uses the " "NEWOBJ opcode instead of the NEWOBJ_EX opcode if possible." #: ../../../Misc/NEWS:4945 msgid "" "`Issue #15513 `__: Added a __sizeof__ " "implementation for pickle classes." msgstr "" "`Issue #15513 `__: Added a __sizeof__ " "implementation for pickle classes." #: ../../../Misc/NEWS:4947 msgid "" "`Issue #19858 `__: pickletools.optimize() now " "aware of the MEMOIZE opcode, can produce more compact result and no longer " "produces invalid output if input data contains MEMOIZE opcodes together with " "PUT or BINPUT opcodes." msgstr "" "`Issue #19858 `__: pickletools.optimize() now " "aware of the MEMOIZE opcode, can produce more compact result and no longer " "produces invalid output if input data contains MEMOIZE opcodes together with " "PUT or BINPUT opcodes." #: ../../../Misc/NEWS:4951 msgid "" "`Issue #22095 `__: Fixed HTTPConnection." "set_tunnel with default port. The port value in the host header was set to " "\"None\". Patch by Demian Brecht." msgstr "" "`Issue #22095 `__: Fixed HTTPConnection." "set_tunnel with default port. The port value in the host header was set to " "\"None\". Patch by Demian Brecht." #: ../../../Misc/NEWS:4954 msgid "" "`Issue #23016 `__: A warning no longer " "produces an AttributeError when the program is run with pythonw.exe." msgstr "" "`Issue #23016 `__: A warning no longer " "produces an AttributeError when the program is run with pythonw.exe." #: ../../../Misc/NEWS:4957 msgid "" "`Issue #21775 `__: shutil.copytree(): fix " "crash when copying to VFAT. An exception handler assumed that OSError " "objects always have a 'winerror' attribute. That is not the case, so the " "exception handler itself raised AttributeError when run on Linux (and, " "presumably, any other non-Windows OS). Patch by Greg Ward." msgstr "" "`Issue #21775 `__: shutil.copytree(): fix " "crash when copying to VFAT. An exception handler assumed that OSError " "objects always have a 'winerror' attribute. That is not the case, so the " "exception handler itself raised AttributeError when run on Linux (and, " "presumably, any other non-Windows OS). Patch by Greg Ward." #: ../../../Misc/NEWS:4963 msgid "" "`Issue #1218234 `__: Fix inspect." "getsource() to load updated source of reloaded module. Initial patch by " "Berker Peksag." msgstr "" "`Issue #1218234 `__: Fix inspect." "getsource() to load updated source of reloaded module. Initial patch by " "Berker Peksag." #: ../../../Misc/NEWS:4966 msgid "" "`Issue #21740 `__: Support wrapped callables " "in doctest. Patch by Claudiu Popa." msgstr "" "`Issue #21740 `__: Support wrapped callables " "in doctest. Patch by Claudiu Popa." #: ../../../Misc/NEWS:4968 msgid "" "`Issue #23009 `__: Make sure selectors." "EpollSelecrtor.select() works when no FD is registered." msgstr "" "`Issue #23009 `__: Make sure selectors." "EpollSelecrtor.select() works when no FD is registered." #: ../../../Misc/NEWS:4971 msgid "" "`Issue #22959 `__: In the constructor of http." "client.HTTPSConnection, prefer the context's check_hostname attribute over " "the *check_hostname* parameter." msgstr "" "`Issue #22959 `__: In the constructor of http." "client.HTTPSConnection, prefer the context's check_hostname attribute over " "the *check_hostname* parameter." #: ../../../Misc/NEWS:4974 msgid "" "`Issue #22696 `__: Add function :func:`sys." "is_finalizing` to know about interpreter shutdown." msgstr "" "`Issue #22696 `__: Add function :func:`sys." "is_finalizing` to know about interpreter shutdown." #: ../../../Misc/NEWS:4977 msgid "" "`Issue #16043 `__: Add a default limit for " "the amount of data xmlrpclib.gzip_decode will return. This resolves " "CVE-2013-1753." msgstr "" "`Issue #16043 `__: Add a default limit for " "the amount of data xmlrpclib.gzip_decode will return. This resolves " "CVE-2013-1753." #: ../../../Misc/NEWS:4980 msgid "" "`Issue #14099 `__: ZipFile.open() no longer " "reopen the underlying file. Objects returned by ZipFile.open() can now " "operate independently of the ZipFile even if the ZipFile was created by " "passing in a file-like object as the first argument to the constructor." msgstr "" "`Issue #14099 `__: ZipFile.open() no longer " "reopen the underlying file. Objects returned by ZipFile.open() can now " "operate independently of the ZipFile even if the ZipFile was created by " "passing in a file-like object as the first argument to the constructor." #: ../../../Misc/NEWS:4985 msgid "" "`Issue #22966 `__: Fix __pycache__ pyc file " "name clobber when pyc_compile is asked to compile a source file containing " "multiple dots in the source file name." msgstr "" "`Issue #22966 `__: Fix __pycache__ pyc file " "name clobber when pyc_compile is asked to compile a source file containing " "multiple dots in the source file name." #: ../../../Misc/NEWS:4989 msgid "" "`Issue #21971 `__: Update turtledemo doc and " "add module to the index." msgstr "" "`Issue #21971 `__: Update turtledemo doc and " "add module to the index." #: ../../../Misc/NEWS:4991 msgid "" "`Issue #21032 `__: Fixed socket leak if " "HTTPConnection.getresponse() fails. Original patch by Martin Panter." msgstr "" "`Issue #21032 `__: Fixed socket leak if " "HTTPConnection.getresponse() fails. Original patch by Martin Panter." #: ../../../Misc/NEWS:4994 msgid "" "`Issue #22407 `__: Deprecated the use of re." "LOCALE flag with str patterns or re.ASCII. It was newer worked." msgstr "" "`Issue #22407 `__: Deprecated the use of re." "LOCALE flag with str patterns or re.ASCII. It was newer worked." #: ../../../Misc/NEWS:4997 msgid "" "`Issue #22902 `__: The \"ip\" command is now " "used on Linux to determine MAC address in uuid.getnode(). Pach by Bruno " "Cauet." msgstr "" "`Issue #22902 `__: The \"ip\" command is now " "used on Linux to determine MAC address in uuid.getnode(). Pach by Bruno " "Cauet." #: ../../../Misc/NEWS:5000 msgid "" "`Issue #22960 `__: Add a context argument to " "xmlrpclib.ServerProxy constructor." msgstr "" "`Issue #22960 `__: Add a context argument to " "xmlrpclib.ServerProxy constructor." #: ../../../Misc/NEWS:5002 msgid "" "`Issue #22389 `__: Add contextlib." "redirect_stderr()." msgstr "" "`Issue #22389 `__: Add contextlib." "redirect_stderr()." #: ../../../Misc/NEWS:5004 msgid "" "`Issue #21356 `__: Make ssl.RAND_egd() " "optional to support LibreSSL. The availability of the function is checked " "during the compilation. Patch written by Bernard Spil." msgstr "" "`Issue #21356 `__: Make ssl.RAND_egd() " "optional to support LibreSSL. The availability of the function is checked " "during the compilation. Patch written by Bernard Spil." #: ../../../Misc/NEWS:5008 msgid "" "`Issue #22915 `__: SAX parser now supports " "files opened with file descriptor or bytes path." msgstr "" "`Issue #22915 `__: SAX parser now supports " "files opened with file descriptor or bytes path." #: ../../../Misc/NEWS:5011 msgid "" "`Issue #22609 `__: Constructors and update " "methods of mapping classes in the collections module now accept the self " "keyword argument." msgstr "" "`Issue #22609 `__: Constructors and update " "methods of mapping classes in the collections module now accept the self " "keyword argument." #: ../../../Misc/NEWS:5014 msgid "" "`Issue #22940 `__: Add readline." "append_history_file." msgstr "" "`Issue #22940 `__: Add readline." "append_history_file." #: ../../../Misc/NEWS:5016 msgid "" "`Issue #19676 `__: Added the \"namereplace\" " "error handler." msgstr "" "`Issue #19676 `__: Added the \"namereplace\" " "error handler." #: ../../../Misc/NEWS:5018 msgid "" "`Issue #22788 `__: Add *context* parameter to " "logging.handlers.HTTPHandler." msgstr "" "`Issue #22788 `__: Add *context* parameter to " "logging.handlers.HTTPHandler." #: ../../../Misc/NEWS:5020 msgid "" "`Issue #22921 `__: Allow SSLContext to take " "the *hostname* parameter even if OpenSSL doesn't support SNI." msgstr "" "`Issue #22921 `__: Allow SSLContext to take " "the *hostname* parameter even if OpenSSL doesn't support SNI." #: ../../../Misc/NEWS:5023 msgid "" "`Issue #22894 `__: TestCase.subTest() would " "cause the test suite to be stopped when in failfast mode, even in the " "absence of failures." msgstr "" "`Issue #22894 `__: TestCase.subTest() would " "cause the test suite to be stopped when in failfast mode, even in the " "absence of failures." #: ../../../Misc/NEWS:5026 msgid "" "`Issue #22796 `__: HTTP cookie parsing is now " "stricter, in order to protect against potential injection attacks." msgstr "" "`Issue #22796 `__: HTTP cookie parsing is now " "stricter, in order to protect against potential injection attacks." #: ../../../Misc/NEWS:5029 msgid "" "`Issue #22370 `__: Windows detection in " "pathlib is now more robust." msgstr "" "`Issue #22370 `__: Windows detection in " "pathlib is now more robust." #: ../../../Misc/NEWS:5031 msgid "" "`Issue #22841 `__: Reject coroutines in " "asyncio add_signal_handler(). Patch by Ludovic.Gasc." msgstr "" "`Issue #22841 `__: Reject coroutines in " "asyncio add_signal_handler(). Patch by Ludovic.Gasc." #: ../../../Misc/NEWS:5034 msgid "" "`Issue #19494 `__: Added urllib.request." "HTTPBasicPriorAuthHandler. Patch by Matej Cepl." msgstr "" "`Issue #19494 `__: Added urllib.request." "HTTPBasicPriorAuthHandler. Patch by Matej Cepl." #: ../../../Misc/NEWS:5037 msgid "" "`Issue #22578 `__: Added attributes to the re." "error class." msgstr "" "`Issue #22578 `__: Added attributes to the re." "error class." #: ../../../Misc/NEWS:5039 msgid "" "`Issue #22849 `__: Fix possible double free " "in the io.TextIOWrapper constructor." msgstr "" "`Issue #22849 `__: Fix possible double free " "in the io.TextIOWrapper constructor." #: ../../../Misc/NEWS:5041 msgid "" "`Issue #12728 `__: Different Unicode " "characters having the same uppercase but different lowercase are now matched " "in case-insensitive regular expressions." msgstr "" "`Issue #12728 `__: Different Unicode " "characters having the same uppercase but different lowercase are now matched " "in case-insensitive regular expressions." #: ../../../Misc/NEWS:5044 msgid "" "`Issue #22821 `__: Fixed fcntl() with integer " "argument on 64-bit big-endian platforms." msgstr "" "`Issue #22821 `__: Fixed fcntl() with integer " "argument on 64-bit big-endian platforms." #: ../../../Misc/NEWS:5047 msgid "" "`Issue #21650 `__: Add an `--sort-keys` " "option to json.tool CLI." msgstr "" "`Issue #21650 `__: Add an `--sort-keys` " "option to json.tool CLI." #: ../../../Misc/NEWS:5049 msgid "" "`Issue #22824 `__: Updated reprlib output " "format for sets to use set literals. Patch contributed by Berker Peksag." msgstr "" "`Issue #22824 `__: Updated reprlib output " "format for sets to use set literals. Patch contributed by Berker Peksag." #: ../../../Misc/NEWS:5052 msgid "" "`Issue #22824 `__: Updated reprlib output " "format for arrays to display empty arrays without an unnecessary empty " "list. Suggested by Serhiy Storchaka." msgstr "" "`Issue #22824 `__: Updated reprlib output " "format for arrays to display empty arrays without an unnecessary empty " "list. Suggested by Serhiy Storchaka." #: ../../../Misc/NEWS:5055 msgid "" "`Issue #22406 `__: Fixed the uu_codec codec " "incorrectly ported to 3.x. Based on patch by Martin Panter." msgstr "" "`Issue #22406 `__: Fixed the uu_codec codec " "incorrectly ported to 3.x. Based on patch by Martin Panter." #: ../../../Misc/NEWS:5058 msgid "" "`Issue #17293 `__: uuid.getnode() now " "determines MAC address on AIX using netstat. Based on patch by Aivars Kalv�?" "ns." msgstr "" "`Issue #17293 `__: uuid.getnode() now " "determines MAC address on AIX using netstat. Based on patch by Aivars Kalv�?" "ns." #: ../../../Misc/NEWS:5061 msgid "" "`Issue #22769 `__: Fixed ttk.Treeview." "tag_has() when called without arguments." msgstr "" "`Issue #22769 `__: Fixed ttk.Treeview." "tag_has() when called without arguments." #: ../../../Misc/NEWS:5063 msgid "" "`Issue #22417 `__: Verify certificates by " "default in httplib (PEP 476)." msgstr "" "`Issue #22417 `__: Verify certificates by " "default in httplib (PEP 476)." #: ../../../Misc/NEWS:5065 msgid "" "`Issue #22775 `__: Fixed unpickling of http." "cookies.SimpleCookie with protocol 2 and above. Patch by Tim Graham." msgstr "" "`Issue #22775 `__: Fixed unpickling of http." "cookies.SimpleCookie with protocol 2 and above. Patch by Tim Graham." #: ../../../Misc/NEWS:5068 msgid "" "`Issue #22776 `__: Brought excluded code into " "the scope of a try block in SysLogHandler.emit()." msgstr "" "`Issue #22776 `__: Brought excluded code into " "the scope of a try block in SysLogHandler.emit()." #: ../../../Misc/NEWS:5071 msgid "" "`Issue #22665 `__: Add missing " "get_terminal_size and SameFileError to shutil.__all__." msgstr "" "`Issue #22665 `__: Add missing " "get_terminal_size and SameFileError to shutil.__all__." #: ../../../Misc/NEWS:5074 msgid "" "`Issue #6623 `__: Remove deprecated Netrc " "class in the ftplib module. Patch by Matt Chaput." msgstr "" "`Issue #6623 `__: Remove deprecated Netrc " "class in the ftplib module. Patch by Matt Chaput." #: ../../../Misc/NEWS:5077 msgid "" "`Issue #17381 `__: Fixed handling of case-" "insensitive ranges in regular expressions." msgstr "" "`Issue #17381 `__: Fixed handling of case-" "insensitive ranges in regular expressions." #: ../../../Misc/NEWS:5080 msgid "" "`Issue #22410 `__: Module level functions in " "the re module now cache compiled locale-dependent regular expressions taking " "into account the locale." msgstr "" "`Issue #22410 `__: Module level functions in " "the re module now cache compiled locale-dependent regular expressions taking " "into account the locale." #: ../../../Misc/NEWS:5083 msgid "" "`Issue #22759 `__: Query methods on pathlib." "Path() (exists(), is_dir(), etc.) now return False when the underlying stat " "call raises NotADirectoryError." msgstr "" "`Issue #22759 `__: Query methods on pathlib." "Path() (exists(), is_dir(), etc.) now return False when the underlying stat " "call raises NotADirectoryError." #: ../../../Misc/NEWS:5086 msgid "" "`Issue #8876 `__: distutils now falls back to " "copying files when hard linking doesn't work. This allows use with special " "filesystems such as VirtualBox shared folders." msgstr "" "`Issue #8876 `__: distutils now falls back to " "copying files when hard linking doesn't work. This allows use with special " "filesystems such as VirtualBox shared folders." #: ../../../Misc/NEWS:5090 msgid "" "`Issue #22217 `__: Implemented reprs of " "classes in the zipfile module." msgstr "" "`Issue #22217 `__: Implemented reprs of " "classes in the zipfile module." #: ../../../Misc/NEWS:5092 msgid "" "`Issue #22457 `__: Honour load_tests in the " "start_dir of discovery." msgstr "" "`Issue #22457 `__: Honour load_tests in the " "start_dir of discovery." #: ../../../Misc/NEWS:5094 msgid "" "`Issue #18216 `__: gettext now raises an " "error when a .mo file has an unsupported major version number. Patch by " "Aaron Hill." msgstr "" "`Issue #18216 `__: gettext now raises an " "error when a .mo file has an unsupported major version number. Patch by " "Aaron Hill." #: ../../../Misc/NEWS:5097 msgid "" "`Issue #13918 `__: Provide a locale." "delocalize() function which can remove locale-specific number formatting " "from a string representing a number, without then converting it to a " "specific type. Patch by Cédric Krier." msgstr "" "`Issue #13918 `__: Provide a locale." "delocalize() function which can remove locale-specific number formatting " "from a string representing a number, without then converting it to a " "specific type. Patch by Cédric Krier." #: ../../../Misc/NEWS:5101 msgid "" "`Issue #22676 `__: Make the pickling of " "global objects which don't have a __module__ attribute less slow." msgstr "" "`Issue #22676 `__: Make the pickling of " "global objects which don't have a __module__ attribute less slow." #: ../../../Misc/NEWS:5104 msgid "" "`Issue #18853 `__: Fixed ResourceWarning in " "shlex.__nain__." msgstr "" "`Issue #18853 `__: Fixed ResourceWarning in " "shlex.__nain__." #: ../../../Misc/NEWS:5106 msgid "" "`Issue #9351 `__: Defaults set with " "set_defaults on an argparse subparser are no longer ignored when also set on " "the parent parser." msgstr "" "`Issue #9351 `__: Defaults set with " "set_defaults on an argparse subparser are no longer ignored when also set on " "the parent parser." #: ../../../Misc/NEWS:5109 msgid "" "`Issue #7559 `__: unittest test loading " "ImportErrors are reported as import errors with their import exception " "rather than as attribute errors after the import has already failed." msgstr "" "`Issue #7559 `__: unittest test loading " "ImportErrors are reported as import errors with their import exception " "rather than as attribute errors after the import has already failed." #: ../../../Misc/NEWS:5113 msgid "" "`Issue #19746 `__: Make it possible to " "examine the errors from unittest discovery without executing the test suite. " "The new `errors` attribute on TestLoader exposes these non-fatal errors " "encountered during discovery." msgstr "" "`Issue #19746 `__: Make it possible to " "examine the errors from unittest discovery without executing the test suite. " "The new `errors` attribute on TestLoader exposes these non-fatal errors " "encountered during discovery." #: ../../../Misc/NEWS:5117 msgid "" "`Issue #21991 `__: Make email." "headerregistry's header 'params' attributes be read-only " "(MappingProxyType). Previously the dictionary was modifiable but a new one " "was created on each access of the attribute." msgstr "" "`Issue #21991 `__: Make email." "headerregistry's header 'params' attributes be read-only " "(MappingProxyType). Previously the dictionary was modifiable but a new one " "was created on each access of the attribute." #: ../../../Misc/NEWS:5121 msgid "" "`Issue #22638 `__: SSLv3 is now disabled " "throughout the standard library. It can still be enabled by instantiating a " "SSLContext manually." msgstr "" "`Issue #22638 `__: SSLv3 is now disabled " "throughout the standard library. It can still be enabled by instantiating a " "SSLContext manually." #: ../../../Misc/NEWS:5124 msgid "" "`Issue #22641 `__: In asyncio, the default " "SSL context for client connections is now created using ssl." "create_default_context(), for stronger security." msgstr "" "`Issue #22641 `__: In asyncio, the default " "SSL context for client connections is now created using ssl." "create_default_context(), for stronger security." #: ../../../Misc/NEWS:5127 msgid "" "`Issue #17401 `__: Include closefd in io." "FileIO repr." msgstr "" "`Issue #17401 `__: Include closefd in io." "FileIO repr." #: ../../../Misc/NEWS:5129 msgid "" "`Issue #21338 `__: Add silent mode for " "compileall. quiet parameters of compile_{dir, file, path} functions now have " "a multilevel value. Also, -q option of the CLI now have a multilevel value. " "Patch by Thomas Kluyver." msgstr "" "`Issue #21338 `__: Add silent mode for " "compileall. quiet parameters of compile_{dir, file, path} functions now have " "a multilevel value. Also, -q option of the CLI now have a multilevel value. " "Patch by Thomas Kluyver." #: ../../../Misc/NEWS:5133 msgid "" "`Issue #20152 `__: Convert the array and " "cmath modules to Argument Clinic." msgstr "" "`Issue #20152 `__: Convert the array and " "cmath modules to Argument Clinic." #: ../../../Misc/NEWS:5135 msgid "" "`Issue #18643 `__: Add socket.socketpair() on " "Windows." msgstr "" "`Issue #18643 `__: Add socket.socketpair() on " "Windows." #: ../../../Misc/NEWS:5137 msgid "" "`Issue #22435 `__: Fix a file descriptor leak " "when socketserver bind fails." msgstr "" "`Issue #22435 `__: Fix a file descriptor leak " "when socketserver bind fails." #: ../../../Misc/NEWS:5139 msgid "" "`Issue #13096 `__: Fixed segfault in CTypes " "POINTER handling of large values." msgstr "" "`Issue #13096 `__: Fixed segfault in CTypes " "POINTER handling of large values." #: ../../../Misc/NEWS:5142 msgid "" "`Issue #11694 `__: Raise ConversionError in " "xdrlib as documented. Patch by Filip Gruszczyński and Claudiu Popa." msgstr "" "`Issue #11694 `__: Raise ConversionError in " "xdrlib as documented. Patch by Filip Gruszczyński and Claudiu Popa." #: ../../../Misc/NEWS:5145 msgid "" "`Issue #19380 `__: Optimized parsing of " "regular expressions." msgstr "" "`Issue #19380 `__: Optimized parsing of " "regular expressions." #: ../../../Misc/NEWS:5147 msgid "" "`Issue #1519638 `__: Now unmatched groups " "are replaced with empty strings in re.sub() and re.subn()." msgstr "" "`Issue #1519638 `__: Now unmatched groups " "are replaced with empty strings in re.sub() and re.subn()." #: ../../../Misc/NEWS:5150 msgid "" "`Issue #18615 `__: sndhdr.what/whathdr now " "return a namedtuple." msgstr "" "`Issue #18615 `__: sndhdr.what/whathdr now " "return a namedtuple." #: ../../../Misc/NEWS:5152 msgid "" "`Issue #22462 `__: Fix pyexpat's creation of " "a dummy frame to make it appear in exception tracebacks." msgstr "" "`Issue #22462 `__: Fix pyexpat's creation of " "a dummy frame to make it appear in exception tracebacks." #: ../../../Misc/NEWS:5155 msgid "" "`Issue #21965 `__: Add support for in-memory " "SSL to the ssl module. Patch by Geert Jansen." msgstr "" "`Issue #21965 `__: Add support for in-memory " "SSL to the ssl module. Patch by Geert Jansen." #: ../../../Misc/NEWS:5158 msgid "" "`Issue #21173 `__: Fix len() on a " "WeakKeyDictionary when .clear() was called with an iterator alive." msgstr "" "`Issue #21173 `__: Fix len() on a " "WeakKeyDictionary when .clear() was called with an iterator alive." #: ../../../Misc/NEWS:5161 msgid "" "`Issue #11866 `__: Eliminated race condition " "in the computation of names for new threads." msgstr "" "`Issue #11866 `__: Eliminated race condition " "in the computation of names for new threads." #: ../../../Misc/NEWS:5164 msgid "" "`Issue #21905 `__: Avoid RuntimeError in " "pickle.whichmodule() when sys.modules is mutated while iterating. Patch by " "Olivier Grisel." msgstr "" "`Issue #21905 `__: Avoid RuntimeError in " "pickle.whichmodule() when sys.modules is mutated while iterating. Patch by " "Olivier Grisel." #: ../../../Misc/NEWS:5167 msgid "" "`Issue #11271 `__: concurrent.futures." "Executor.map() now takes a *chunksize* argument to allow batching of tasks " "in child processes and improve performance of ProcessPoolExecutor. Patch by " "Dan O'Reilly." msgstr "" "`Issue #11271 `__: concurrent.futures." "Executor.map() now takes a *chunksize* argument to allow batching of tasks " "in child processes and improve performance of ProcessPoolExecutor. Patch by " "Dan O'Reilly." #: ../../../Misc/NEWS:5171 msgid "" "`Issue #21883 `__: os.path.join() and os.path." "relpath() now raise a TypeError with more helpful error message for " "unsupported or mismatched types of arguments." msgstr "" "`Issue #21883 `__: os.path.join() and os.path." "relpath() now raise a TypeError with more helpful error message for " "unsupported or mismatched types of arguments." #: ../../../Misc/NEWS:5174 msgid "" "`Issue #22219 `__: The zipfile module CLI now " "adds entries for directories (including empty directories) in ZIP file." msgstr "" "`Issue #22219 `__: The zipfile module CLI now " "adds entries for directories (including empty directories) in ZIP file." #: ../../../Misc/NEWS:5177 msgid "" "`Issue #22449 `__: In the ssl.SSLContext." "load_default_certs, consult the environmental variables SSL_CERT_DIR and " "SSL_CERT_FILE on Windows." msgstr "" "`Issue #22449 `__: In the ssl.SSLContext." "load_default_certs, consult the environmental variables SSL_CERT_DIR and " "SSL_CERT_FILE on Windows." #: ../../../Misc/NEWS:5180 msgid "" "`Issue #22508 `__: The email.__version__ " "variable has been removed; the email code is no longer shipped separately " "from the stdlib, and __version__ hasn't been updated in several releases." msgstr "" "`Issue #22508 `__: The email.__version__ " "variable has been removed; the email code is no longer shipped separately " "from the stdlib, and __version__ hasn't been updated in several releases." #: ../../../Misc/NEWS:5184 msgid "" "`Issue #20076 `__: Added non derived UTF-8 " "aliases to locale aliases table." msgstr "" "`Issue #20076 `__: Added non derived UTF-8 " "aliases to locale aliases table." #: ../../../Misc/NEWS:5186 msgid "" "`Issue #20079 `__: Added locales supported in " "glibc 2.18 to locale alias table." msgstr "" "`Issue #20079 `__: Added locales supported in " "glibc 2.18 to locale alias table." #: ../../../Misc/NEWS:5188 msgid "" "`Issue #20218 `__: Added convenience methods " "read_text/write_text and read_bytes/ write_bytes to pathlib.Path objects." msgstr "" "`Issue #20218 `__: Added convenience methods " "read_text/write_text and read_bytes/ write_bytes to pathlib.Path objects." #: ../../../Misc/NEWS:5191 msgid "" "`Issue #22396 `__: On 32-bit AIX platform, " "don't expose os.posix_fadvise() nor os.posix_fallocate() because their " "prototypes in system headers are wrong." msgstr "" "`Issue #22396 `__: On 32-bit AIX platform, " "don't expose os.posix_fadvise() nor os.posix_fallocate() because their " "prototypes in system headers are wrong." #: ../../../Misc/NEWS:5194 msgid "" "`Issue #22517 `__: When an io.BufferedRWPair " "object is deallocated, clear its weakrefs." msgstr "" "`Issue #22517 `__: When an io.BufferedRWPair " "object is deallocated, clear its weakrefs." #: ../../../Misc/NEWS:5197 msgid "" "`Issue #22437 `__: Number of capturing groups " "in regular expression is no longer limited by 100." msgstr "" "`Issue #22437 `__: Number of capturing groups " "in regular expression is no longer limited by 100." #: ../../../Misc/NEWS:5200 msgid "" "`Issue #17442 `__: InteractiveInterpreter now " "displays the full chained traceback in its showtraceback method, to match " "the built in interactive interpreter." msgstr "" "`Issue #17442 `__: InteractiveInterpreter now " "displays the full chained traceback in its showtraceback method, to match " "the built in interactive interpreter." #: ../../../Misc/NEWS:5203 msgid "" "`Issue #23392 `__: Added tests for marshal C " "API that works with FILE*." msgstr "" "`Issue #23392 `__: Added tests for marshal C " "API that works with FILE*." #: ../../../Misc/NEWS:5206 msgid "" "`Issue #10510 `__: distutils register and " "upload methods now use HTML standards compliant CRLF line endings." msgstr "" "`Issue #10510 `__: distutils register and " "upload methods now use HTML standards compliant CRLF line endings." #: ../../../Misc/NEWS:5209 msgid "" "`Issue #9850 `__: Fixed macpath.join() for " "empty first component. Patch by Oleg Oshmyan." msgstr "" "`Issue #9850 `__: Fixed macpath.join() for " "empty first component. Patch by Oleg Oshmyan." #: ../../../Misc/NEWS:5212 msgid "" "`Issue #5309 `__: distutils' build and " "build_ext commands now accept a ``-j`` option to enable parallel building of " "extension modules." msgstr "" "`Issue #5309 `__: distutils' build and " "build_ext commands now accept a ``-j`` option to enable parallel building of " "extension modules." #: ../../../Misc/NEWS:5215 msgid "" "`Issue #22448 `__: Improve canceled timer " "handles cleanup to prevent unbound memory usage. Patch by Joshua Moore-Oliva." msgstr "" "`Issue #22448 `__: Improve canceled timer " "handles cleanup to prevent unbound memory usage. Patch by Joshua Moore-Oliva." #: ../../../Misc/NEWS:5218 msgid "" "`Issue #22427 `__: TemporaryDirectory no " "longer attempts to clean up twice when used in the with statement in " "generator." msgstr "" "`Issue #22427 `__: TemporaryDirectory no " "longer attempts to clean up twice when used in the with statement in " "generator." #: ../../../Misc/NEWS:5221 msgid "" "`Issue #22362 `__: Forbidden ambiguous octal " "escapes out of range 0-0o377 in regular expressions." msgstr "" "`Issue #22362 `__: Forbidden ambiguous octal " "escapes out of range 0-0o377 in regular expressions." #: ../../../Misc/NEWS:5224 msgid "" "`Issue #20912 `__: Now directories added to " "ZIP file have correct Unix and MS-DOS directory attributes." msgstr "" "`Issue #20912 `__: Now directories added to " "ZIP file have correct Unix and MS-DOS directory attributes." #: ../../../Misc/NEWS:5227 msgid "" "`Issue #21866 `__: ZipFile.close() no longer " "writes ZIP64 central directory records if allowZip64 is false." msgstr "" "`Issue #21866 `__: ZipFile.close() no longer " "writes ZIP64 central directory records if allowZip64 is false." #: ../../../Misc/NEWS:5230 msgid "" "`Issue #22278 `__: Fix urljoin problem with " "relative urls, a regression observed after changes to issue22118 were " "submitted." msgstr "" "`Issue #22278 `__: Fix urljoin problem with " "relative urls, a regression observed after changes to issue22118 were " "submitted." #: ../../../Misc/NEWS:5233 msgid "" "`Issue #22415 `__: Fixed debugging output of " "the GROUPREF_EXISTS opcode in the re module. Removed trailing spaces in " "debugging output." msgstr "" "`Issue #22415 `__: Fixed debugging output of " "the GROUPREF_EXISTS opcode in the re module. Removed trailing spaces in " "debugging output." #: ../../../Misc/NEWS:5236 msgid "" "`Issue #22423 `__: Unhandled exception in " "thread no longer causes unhandled AttributeError when sys.stderr is None." msgstr "" "`Issue #22423 `__: Unhandled exception in " "thread no longer causes unhandled AttributeError when sys.stderr is None." #: ../../../Misc/NEWS:5239 msgid "" "`Issue #21332 `__: Ensure that ``bufsize=1`` " "in subprocess.Popen() selects line buffering, rather than block buffering. " "Patch by Akira Li." msgstr "" "`Issue #21332 `__: Ensure that ``bufsize=1`` " "in subprocess.Popen() selects line buffering, rather than block buffering. " "Patch by Akira Li." #: ../../../Misc/NEWS:5242 msgid "" "`Issue #21091 `__: Fix API bug: email.message." "EmailMessage.is_attachment is now a method." msgstr "" "`Issue #21091 `__: Fix API bug: email.message." "EmailMessage.is_attachment is now a method." #: ../../../Misc/NEWS:5245 msgid "" "`Issue #21079 `__: Fix email.message." "EmailMessage.is_attachment to return the correct result when the header has " "parameters as well as a value." msgstr "" "`Issue #21079 `__: Fix email.message." "EmailMessage.is_attachment to return the correct result when the header has " "parameters as well as a value." #: ../../../Misc/NEWS:5248 msgid "" "`Issue #22247 `__: Add NNTPError to nntplib." "__all__." msgstr "" "`Issue #22247 `__: Add NNTPError to nntplib." "__all__." #: ../../../Misc/NEWS:5250 msgid "" "`Issue #22366 `__: urllib.request.urlopen " "will accept a context object (SSLContext) as an argument which will then be " "used for HTTPS connection. Patch by Alex Gaynor." msgstr "" "`Issue #22366 `__: urllib.request.urlopen " "will accept a context object (SSLContext) as an argument which will then be " "used for HTTPS connection. Patch by Alex Gaynor." #: ../../../Misc/NEWS:5254 msgid "" "`Issue #4180 `__: The warnings registries are " "now reset when the filters are modified." msgstr "" "`Issue #4180 `__: The warnings registries are " "now reset when the filters are modified." #: ../../../Misc/NEWS:5257 msgid "" "`Issue #22419 `__: Limit the length of " "incoming HTTP request in wsgiref server to 65536 bytes and send a 414 error " "code for higher lengths. Patch contributed by Devin Cook." msgstr "" "`Issue #22419 `__: Limit the length of " "incoming HTTP request in wsgiref server to 65536 bytes and send a 414 error " "code for higher lengths. Patch contributed by Devin Cook." #: ../../../Misc/NEWS:5261 msgid "" "Lax cookie parsing in http.cookies could be a security issue when combined " "with non-standard cookie handling in some Web browsers. Reported by Sergey " "Bobrov." msgstr "" #: ../../../Misc/NEWS:5265 msgid "" "`Issue #20537 `__: logging methods now accept " "an exception instance as well as a Boolean value or exception tuple. Thanks " "to Yury Selivanov for the patch." msgstr "" "`Issue #20537 `__: logging methods now accept " "an exception instance as well as a Boolean value or exception tuple. Thanks " "to Yury Selivanov for the patch." #: ../../../Misc/NEWS:5268 msgid "" "`Issue #22384 `__: An exception in Tkinter " "callback no longer crashes the program when it is run with pythonw.exe." msgstr "" "`Issue #22384 `__: An exception in Tkinter " "callback no longer crashes the program when it is run with pythonw.exe." #: ../../../Misc/NEWS:5271 msgid "" "`Issue #22168 `__: Prevent turtle " "AttributeError with non-default Canvas on OS X." msgstr "" "`Issue #22168 `__: Prevent turtle " "AttributeError with non-default Canvas on OS X." #: ../../../Misc/NEWS:5273 msgid "" "`Issue #21147 `__: sqlite3 now raises an " "exception if the request contains a null character instead of truncating " "it. Based on patch by Victor Stinner." msgstr "" "`Issue #21147 `__: sqlite3 now raises an " "exception if the request contains a null character instead of truncating " "it. Based on patch by Victor Stinner." #: ../../../Misc/NEWS:5276 msgid "" "`Issue #13968 `__: The glob module now " "supports recursive search in subdirectories using the \"**\" pattern." msgstr "" "`Issue #13968 `__: The glob module now " "supports recursive search in subdirectories using the \"**\" pattern." #: ../../../Misc/NEWS:5279 msgid "" "`Issue #21951 `__: Fixed a crash in Tkinter " "on AIX when called Tcl command with empty string or tuple argument." msgstr "" "`Issue #21951 `__: Fixed a crash in Tkinter " "on AIX when called Tcl command with empty string or tuple argument." #: ../../../Misc/NEWS:5282 msgid "" "`Issue #21951 `__: Tkinter now most likely " "raises MemoryError instead of crash if the memory allocation fails." msgstr "" "`Issue #21951 `__: Tkinter now most likely " "raises MemoryError instead of crash if the memory allocation fails." #: ../../../Misc/NEWS:5285 msgid "" "`Issue #22338 `__: Fix a crash in the json " "module on memory allocation failure." msgstr "" "`Issue #22338 `__: Fix a crash in the json " "module on memory allocation failure." #: ../../../Misc/NEWS:5287 msgid "" "`Issue #12410 `__: imaplib.IMAP4 now supports " "the context management protocol. Original patch by Tarek Ziadé." msgstr "" "`Issue #12410 `__: imaplib.IMAP4 now supports " "the context management protocol. Original patch by Tarek Ziadé." #: ../../../Misc/NEWS:5290 msgid "" "`Issue #21270 `__: We now override tuple " "methods in mock.call objects so that they can be used as normal call " "attributes." msgstr "" "`Issue #21270 `__: We now override tuple " "methods in mock.call objects so that they can be used as normal call " "attributes." #: ../../../Misc/NEWS:5293 msgid "" "`Issue #16662 `__: load_tests() is now " "unconditionally run when it is present in a package's __init__.py. " "TestLoader.loadTestsFromModule() still accepts use_load_tests, but it is " "deprecated and ignored. A new keyword-only attribute `pattern` is added and " "documented. Patch given by Robert Collins, tweaked by Barry Warsaw." msgstr "" "`Issue #16662 `__: load_tests() is now " "unconditionally run when it is present in a package's __init__.py. " "TestLoader.loadTestsFromModule() still accepts use_load_tests, but it is " "deprecated and ignored. A new keyword-only attribute `pattern` is added and " "documented. Patch given by Robert Collins, tweaked by Barry Warsaw." #: ../../../Misc/NEWS:5299 msgid "" "`Issue #22226 `__: First letter no longer is " "stripped from the \"status\" key in the result of Treeview.heading()." msgstr "" "`Issue #22226 `__: First letter no longer is " "stripped from the \"status\" key in the result of Treeview.heading()." #: ../../../Misc/NEWS:5302 msgid "" "`Issue #19524 `__: Fixed resource leak in the " "HTTP connection when an invalid response is received. Patch by Martin " "Panter." msgstr "" "`Issue #19524 `__: Fixed resource leak in the " "HTTP connection when an invalid response is received. Patch by Martin " "Panter." #: ../../../Misc/NEWS:5305 msgid "" "`Issue #20421 `__: Add a .version() method to " "SSL sockets exposing the actual protocol version in use." msgstr "" "`Issue #20421 `__: Add a .version() method to " "SSL sockets exposing the actual protocol version in use." #: ../../../Misc/NEWS:5308 msgid "" "`Issue #19546 `__: configparser exceptions no " "longer expose implementation details. Chained KeyErrors are removed, which " "leads to cleaner tracebacks. Patch by Claudiu Popa." msgstr "" "`Issue #19546 `__: configparser exceptions no " "longer expose implementation details. Chained KeyErrors are removed, which " "leads to cleaner tracebacks. Patch by Claudiu Popa." #: ../../../Misc/NEWS:5312 msgid "" "`Issue #22051 `__: turtledemo no longer " "reloads examples to re-run them. Initialization of variables and gui setup " "should be done in main(), which is called each time a demo is run, but not " "on import." msgstr "" "`Issue #22051 `__: turtledemo no longer " "reloads examples to re-run them. Initialization of variables and gui setup " "should be done in main(), which is called each time a demo is run, but not " "on import." #: ../../../Misc/NEWS:5316 msgid "" "`Issue #21933 `__: Turtledemo users can " "change the code font size with a menu selection or control(command) '-' or " "'+' or control-mousewheel. Original patch by Lita Cho." msgstr "" "`Issue #21933 `__: Turtledemo users can " "change the code font size with a menu selection or control(command) '-' or " "'+' or control-mousewheel. Original patch by Lita Cho." #: ../../../Misc/NEWS:5320 msgid "" "`Issue #21597 `__: The separator between the " "turtledemo text pane and the drawing canvas can now be grabbed and dragged " "with a mouse. The code text pane can be widened to easily view or copy the " "full width of the text. The canvas can be widened on small screens. " "Original patches by Jan Kanis and Lita Cho." msgstr "" "`Issue #21597 `__: The separator between the " "turtledemo text pane and the drawing canvas can now be grabbed and dragged " "with a mouse. The code text pane can be widened to easily view or copy the " "full width of the text. The canvas can be widened on small screens. " "Original patches by Jan Kanis and Lita Cho." #: ../../../Misc/NEWS:5325 msgid "" "`Issue #18132 `__: Turtledemo buttons no " "longer disappear when the window is shrunk. Original patches by Jan Kanis " "and Lita Cho." msgstr "" "`Issue #18132 `__: Turtledemo buttons no " "longer disappear when the window is shrunk. Original patches by Jan Kanis " "and Lita Cho." #: ../../../Misc/NEWS:5328 msgid "" "`Issue #22043 `__: time.monotonic() is now " "always available. ``threading.Lock.acquire()``, ``threading.RLock." "acquire()`` and socket operations now use a monotonic clock, instead of the " "system clock, when a timeout is used." msgstr "" "`Issue #22043 `__: time.monotonic() is now " "always available. ``threading.Lock.acquire()``, ``threading.RLock." "acquire()`` and socket operations now use a monotonic clock, instead of the " "system clock, when a timeout is used." #: ../../../Misc/NEWS:5333 msgid "" "`Issue #21527 `__: Add a default number of " "workers to ThreadPoolExecutor equal to 5 times the number of CPUs. Patch by " "Claudiu Popa." msgstr "" "`Issue #21527 `__: Add a default number of " "workers to ThreadPoolExecutor equal to 5 times the number of CPUs. Patch by " "Claudiu Popa." #: ../../../Misc/NEWS:5336 msgid "" "`Issue #22216 `__: smtplib now resets its " "state more completely after a quit. The most obvious consequence of the " "previous behavior was a STARTTLS failure during a connect/starttls/quit/" "connect/starttls sequence." msgstr "" "`Issue #22216 `__: smtplib now resets its " "state more completely after a quit. The most obvious consequence of the " "previous behavior was a STARTTLS failure during a connect/starttls/quit/" "connect/starttls sequence." #: ../../../Misc/NEWS:5340 msgid "" "`Issue #22098 `__: ctypes' BigEndianStructure " "and LittleEndianStructure now define an empty __slots__ so that subclasses " "don't always get an instance dict. Patch by Claudiu Popa." msgstr "" "`Issue #22098 `__: ctypes' BigEndianStructure " "and LittleEndianStructure now define an empty __slots__ so that subclasses " "don't always get an instance dict. Patch by Claudiu Popa." #: ../../../Misc/NEWS:5344 msgid "" "`Issue #22185 `__: Fix an occasional " "RuntimeError in threading.Condition.wait() caused by mutation of the waiters " "queue without holding the lock. Patch by Doug Zongker." msgstr "" "`Issue #22185 `__: Fix an occasional " "RuntimeError in threading.Condition.wait() caused by mutation of the waiters " "queue without holding the lock. Patch by Doug Zongker." #: ../../../Misc/NEWS:5348 msgid "" "`Issue #22287 `__: On UNIX, " "_PyTime_gettimeofday() now uses clock_gettime(CLOCK_REALTIME) if available. " "As a side effect, Python now depends on the librt library on Solaris and on " "Linux (only with glibc older than 2.17)." msgstr "" "`Issue #22287 `__: On UNIX, " "_PyTime_gettimeofday() now uses clock_gettime(CLOCK_REALTIME) if available. " "As a side effect, Python now depends on the librt library on Solaris and on " "Linux (only with glibc older than 2.17)." #: ../../../Misc/NEWS:5353 msgid "" "`Issue #22182 `__: Use e.args to unpack " "exceptions correctly in distutils.file_util.move_file. Patch by Claudiu Popa." msgstr "" "`Issue #22182 `__: Use e.args to unpack " "exceptions correctly in distutils.file_util.move_file. Patch by Claudiu Popa." #: ../../../Misc/NEWS:5356 msgid "" "The webbrowser module now uses subprocess's start_new_session=True rather " "than a potentially risky preexec_fn=os.setsid call." msgstr "" #: ../../../Misc/NEWS:5359 msgid "" "`Issue #22042 `__: signal.set_wakeup_fd(fd) " "now raises an exception if the file descriptor is in blocking mode." msgstr "" "`Issue #22042 `__: signal.set_wakeup_fd(fd) " "now raises an exception if the file descriptor is in blocking mode." #: ../../../Misc/NEWS:5362 msgid "" "`Issue #16808 `__: inspect.stack() now " "returns a named tuple instead of a tuple. Patch by Daniel Shahaf." msgstr "" "`Issue #16808 `__: inspect.stack() now " "returns a named tuple instead of a tuple. Patch by Daniel Shahaf." #: ../../../Misc/NEWS:5365 msgid "" "`Issue #22236 `__: Fixed Tkinter images " "copying operations in NoDefaultRoot mode." msgstr "" "`Issue #22236 `__: Fixed Tkinter images " "copying operations in NoDefaultRoot mode." #: ../../../Misc/NEWS:5367 msgid "" "`Issue #2527 `__: Add a *globals* argument to " "timeit functions, in order to override the globals namespace in which the " "timed code is executed. Patch by Ben Roberts." msgstr "" "`Issue #2527 `__: Add a *globals* argument to " "timeit functions, in order to override the globals namespace in which the " "timed code is executed. Patch by Ben Roberts." #: ../../../Misc/NEWS:5371 msgid "" "`Issue #22118 `__: Switch urllib.parse to use " "RFC 3986 semantics for the resolution of relative URLs, rather than RFCs " "1808 and 2396. Patch by Demian Brecht." msgstr "" "`Issue #22118 `__: Switch urllib.parse to use " "RFC 3986 semantics for the resolution of relative URLs, rather than RFCs " "1808 and 2396. Patch by Demian Brecht." #: ../../../Misc/NEWS:5375 msgid "" "`Issue #21549 `__: Added the \"members\" " "parameter to TarFile.list()." msgstr "" "`Issue #21549 `__: Added the \"members\" " "parameter to TarFile.list()." #: ../../../Misc/NEWS:5377 msgid "" "`Issue #19628 `__: Allow compileall recursion " "depth to be specified with a -r option." msgstr "" "`Issue #19628 `__: Allow compileall recursion " "depth to be specified with a -r option." #: ../../../Misc/NEWS:5380 msgid "" "`Issue #15696 `__: Add a __sizeof__ " "implementation for mmap objects on Windows." msgstr "" "`Issue #15696 `__: Add a __sizeof__ " "implementation for mmap objects on Windows." #: ../../../Misc/NEWS:5382 msgid "" "`Issue #22068 `__: Avoided reference loops " "with Variables and Fonts in Tkinter." msgstr "" "`Issue #22068 `__: Avoided reference loops " "with Variables and Fonts in Tkinter." #: ../../../Misc/NEWS:5384 msgid "" "`Issue #22165 `__: SimpleHTTPRequestHandler " "now supports undecodable file names." msgstr "" "`Issue #22165 `__: SimpleHTTPRequestHandler " "now supports undecodable file names." #: ../../../Misc/NEWS:5386 msgid "" "`Issue #15381 `__: Optimized line reading in " "io.BytesIO." msgstr "" "`Issue #15381 `__: Optimized line reading in " "io.BytesIO." #: ../../../Misc/NEWS:5388 msgid "" "`Issue #8797 `__: Raise HTTPError on failed " "Basic Authentication immediately. Initial patch by Sam Bull." msgstr "" "`Issue #8797 `__: Raise HTTPError on failed " "Basic Authentication immediately. Initial patch by Sam Bull." #: ../../../Misc/NEWS:5391 msgid "" "`Issue #20729 `__: Restored the use of lazy " "iterkeys()/itervalues()/iteritems() in the mailbox module." msgstr "" "`Issue #20729 `__: Restored the use of lazy " "iterkeys()/itervalues()/iteritems() in the mailbox module." #: ../../../Misc/NEWS:5394 msgid "" "`Issue #21448 `__: Changed FeedParser feed() " "to avoid O(N**2) behavior when parsing long line. Original patch by Raymond " "Hettinger." msgstr "" "`Issue #21448 `__: Changed FeedParser feed() " "to avoid O(N**2) behavior when parsing long line. Original patch by Raymond " "Hettinger." #: ../../../Misc/NEWS:5397 msgid "" "`Issue #22184 `__: The functools LRU Cache " "decorator factory now gives an earlier and clearer error message when the " "user forgets the required parameters." msgstr "" "`Issue #22184 `__: The functools LRU Cache " "decorator factory now gives an earlier and clearer error message when the " "user forgets the required parameters." #: ../../../Misc/NEWS:5400 msgid "" "`Issue #17923 `__: glob() patterns ending " "with a slash no longer match non-dirs on AIX. Based on patch by Delhallt." msgstr "" "`Issue #17923 `__: glob() patterns ending " "with a slash no longer match non-dirs on AIX. Based on patch by Delhallt." #: ../../../Misc/NEWS:5403 msgid "" "`Issue #21725 `__: Added support for RFC 6531 " "(SMTPUTF8) in smtpd." msgstr "" "`Issue #21725 `__: Added support for RFC 6531 " "(SMTPUTF8) in smtpd." #: ../../../Misc/NEWS:5405 msgid "" "`Issue #22176 `__: Update the ctypes module's " "libffi to v3.1. This release adds support for the Linux AArch64 and POWERPC " "ELF ABIv2 little endian architectures." msgstr "" "`Issue #22176 `__: Update the ctypes module's " "libffi to v3.1. This release adds support for the Linux AArch64 and POWERPC " "ELF ABIv2 little endian architectures." #: ../../../Misc/NEWS:5409 msgid "" "`Issue #5411 `__: Added support for the \"xztar" "\" format in the shutil module." msgstr "" "`Issue #5411 `__: Added support for the \"xztar" "\" format in the shutil module." #: ../../../Misc/NEWS:5411 msgid "" "`Issue #21121 `__: Don't force 3rd party C " "extensions to be built with -Werror=declaration-after-statement." msgstr "" "`Issue #21121 `__: Don't force 3rd party C " "extensions to be built with -Werror=declaration-after-statement." #: ../../../Misc/NEWS:5414 msgid "" "`Issue #21975 `__: Fixed crash when using " "uninitialized sqlite3.Row (in particular when unpickling pickled sqlite3." "Row). sqlite3.Row is now initialized in the __new__() method." msgstr "" "`Issue #21975 `__: Fixed crash when using " "uninitialized sqlite3.Row (in particular when unpickling pickled sqlite3." "Row). sqlite3.Row is now initialized in the __new__() method." #: ../../../Misc/NEWS:5418 msgid "" "`Issue #20170 `__: Convert posixmodule to use " "Argument Clinic." msgstr "" "`Issue #20170 `__: Convert posixmodule to use " "Argument Clinic." #: ../../../Misc/NEWS:5420 msgid "" "`Issue #21539 `__: Add an *exists_ok* " "argument to `Pathlib.mkdir()` to mimic `mkdir -p` and `os.makedirs()` " "functionality. When true, ignore FileExistsErrors. Patch by Berker Peksag." msgstr "" "`Issue #21539 `__: Add an *exists_ok* " "argument to `Pathlib.mkdir()` to mimic `mkdir -p` and `os.makedirs()` " "functionality. When true, ignore FileExistsErrors. Patch by Berker Peksag." #: ../../../Misc/NEWS:5424 msgid "" "`Issue #22127 `__: Bypass IDNA for pure-ASCII " "host names in the socket module (in particular for numeric IPs)." msgstr "" "`Issue #22127 `__: Bypass IDNA for pure-ASCII " "host names in the socket module (in particular for numeric IPs)." #: ../../../Misc/NEWS:5427 msgid "" "`Issue #21047 `__: set the default value for " "the *convert_charrefs* argument of HTMLParser to True. Patch by Berker " "Peksag." msgstr "" "`Issue #21047 `__: set the default value for " "the *convert_charrefs* argument of HTMLParser to True. Patch by Berker " "Peksag." #: ../../../Misc/NEWS:5430 msgid "Add an __all__ to html.entities." msgstr "" #: ../../../Misc/NEWS:5432 msgid "" "`Issue #15114 `__: the strict mode and " "argument of HTMLParser, HTMLParser.error, and the HTMLParserError exception " "have been removed." msgstr "" "`Issue #15114 `__: the strict mode and " "argument of HTMLParser, HTMLParser.error, and the HTMLParserError exception " "have been removed." #: ../../../Misc/NEWS:5435 msgid "" "`Issue #22085 `__: Dropped support of Tk 8.3 " "in Tkinter." msgstr "" "`Issue #22085 `__: Dropped support of Tk 8.3 " "in Tkinter." #: ../../../Misc/NEWS:5437 msgid "" "`Issue #21580 `__: Now Tkinter correctly " "handles bytes arguments passed to Tk. In particular this allows initializing " "images from binary data." msgstr "" "`Issue #21580 `__: Now Tkinter correctly " "handles bytes arguments passed to Tk. In particular this allows initializing " "images from binary data." #: ../../../Misc/NEWS:5440 msgid "" "`Issue #22003 `__: When initialized from a " "bytes object, io.BytesIO() now defers making a copy until it is mutated, " "improving performance and memory use on some use cases. Patch by David " "Wilson." msgstr "" "`Issue #22003 `__: When initialized from a " "bytes object, io.BytesIO() now defers making a copy until it is mutated, " "improving performance and memory use on some use cases. Patch by David " "Wilson." #: ../../../Misc/NEWS:5444 msgid "" "`Issue #22018 `__: On Windows, signal." "set_wakeup_fd() now also supports sockets. A side effect is that Python " "depends to the WinSock library." msgstr "" "`Issue #22018 `__: On Windows, signal." "set_wakeup_fd() now also supports sockets. A side effect is that Python " "depends to the WinSock library." #: ../../../Misc/NEWS:5447 msgid "" "`Issue #22054 `__: Add os.get_blocking() and " "os.set_blocking() functions to get and set the blocking mode of a file " "descriptor (False if the O_NONBLOCK flag is set, True otherwise). These " "functions are not available on Windows." msgstr "" "`Issue #22054 `__: Add os.get_blocking() and " "os.set_blocking() functions to get and set the blocking mode of a file " "descriptor (False if the O_NONBLOCK flag is set, True otherwise). These " "functions are not available on Windows." #: ../../../Misc/NEWS:5451 msgid "" "`Issue #17172 `__: Make turtledemo start as " "active on OS X even when run with subprocess. Patch by Lita Cho." msgstr "" "`Issue #17172 `__: Make turtledemo start as " "active on OS X even when run with subprocess. Patch by Lita Cho." #: ../../../Misc/NEWS:5454 msgid "" "`Issue #21704 `__: Fix build error for " "_multiprocessing when semaphores are not available. Patch by Arfrever " "Frehtes Taifersar Arahesis." msgstr "" "`Issue #21704 `__: Fix build error for " "_multiprocessing when semaphores are not available. Patch by Arfrever " "Frehtes Taifersar Arahesis." #: ../../../Misc/NEWS:5457 msgid "" "`Issue #20173 `__: Convert sha1, sha256, " "sha512 and md5 to ArgumentClinic. Patch by Vajrasky Kok." msgstr "" "`Issue #20173 `__: Convert sha1, sha256, " "sha512 and md5 to ArgumentClinic. Patch by Vajrasky Kok." #: ../../../Misc/NEWS:5460 msgid "" "Fix repr(_socket.socket) on Windows 64-bit: don't fail with OverflowError on " "closed socket. repr(socket.socket) already works fine." msgstr "" #: ../../../Misc/NEWS:5463 msgid "" "`Issue #22033 `__: Reprs of most Python " "implemened classes now contain actual class name instead of hardcoded one." msgstr "" "`Issue #22033 `__: Reprs of most Python " "implemened classes now contain actual class name instead of hardcoded one." #: ../../../Misc/NEWS:5466 msgid "" "`Issue #21947 `__: The dis module can now " "disassemble generator-iterator objects based on their gi_code attribute. " "Patch by Clement Rouault." msgstr "" "`Issue #21947 `__: The dis module can now " "disassemble generator-iterator objects based on their gi_code attribute. " "Patch by Clement Rouault." #: ../../../Misc/NEWS:5469 msgid "" "`Issue #16133 `__: The asynchat.async_chat." "handle_read() method now ignores BlockingIOError exceptions." msgstr "" "`Issue #16133 `__: The asynchat.async_chat." "handle_read() method now ignores BlockingIOError exceptions." #: ../../../Misc/NEWS:5472 msgid "" "`Issue #22044 `__: Fixed premature DECREF in " "call_tzinfo_method. Patch by Tom Flanagan." msgstr "" "`Issue #22044 `__: Fixed premature DECREF in " "call_tzinfo_method. Patch by Tom Flanagan." #: ../../../Misc/NEWS:5475 msgid "" "`Issue #19884 `__: readline: Disable the meta " "modifier key if stdout is not a terminal to not write the ANSI sequence ``" "\"\\033[1034h\"`` into stdout. This sequence is used on some terminal (ex: " "TERM=xterm-256color\") to enable support of 8 bit characters." msgstr "" "`Issue #19884 `__: readline: Disable the meta " "modifier key if stdout is not a terminal to not write the ANSI sequence ``" "\"\\033[1034h\"`` into stdout. This sequence is used on some terminal (ex: " "TERM=xterm-256color\") to enable support of 8 bit characters." #: ../../../Misc/NEWS:5480 msgid "" "`Issue #4350 `__: Removed a number of out-of-" "dated and non-working for a long time Tkinter methods." msgstr "" "`Issue #4350 `__: Removed a number of out-of-" "dated and non-working for a long time Tkinter methods." #: ../../../Misc/NEWS:5483 msgid "" "`Issue #6167 `__: Scrollbar.activate() now " "returns the name of active element if the argument is not specified. " "Scrollbar.set() now always accepts only 2 arguments." msgstr "" "`Issue #6167 `__: Scrollbar.activate() now " "returns the name of active element if the argument is not specified. " "Scrollbar.set() now always accepts only 2 arguments." #: ../../../Misc/NEWS:5487 msgid "" "`Issue #15275 `__: Clean up and speed up the " "ntpath module." msgstr "" "`Issue #15275 `__: Clean up and speed up the " "ntpath module." #: ../../../Misc/NEWS:5489 msgid "" "`Issue #21888 `__: plistlib's load() and " "loads() now work if the fmt parameter is specified." msgstr "" "`Issue #21888 `__: plistlib's load() and " "loads() now work if the fmt parameter is specified." #: ../../../Misc/NEWS:5492 msgid "" "`Issue #22032 `__: __qualname__ instead of " "__name__ is now always used to format fully qualified class names of Python " "implemented classes." msgstr "" "`Issue #22032 `__: __qualname__ instead of " "__name__ is now always used to format fully qualified class names of Python " "implemented classes." #: ../../../Misc/NEWS:5495 msgid "" "`Issue #22031 `__: Reprs now always use " "hexadecimal format with the \"0x\" prefix when contain an id in form \" at " "0x...\"." msgstr "" "`Issue #22031 `__: Reprs now always use " "hexadecimal format with the \"0x\" prefix when contain an id in form \" at " "0x...\"." #: ../../../Misc/NEWS:5498 msgid "" "`Issue #22018 `__: signal.set_wakeup_fd() now " "raises an OSError instead of a ValueError on ``fstat()`` failure." msgstr "" "`Issue #22018 `__: signal.set_wakeup_fd() now " "raises an OSError instead of a ValueError on ``fstat()`` failure." #: ../../../Misc/NEWS:5501 msgid "" "`Issue #21044 `__: tarfile.open() now handles " "fileobj with an integer 'name' attribute. Based on patch by Antoine Pietri." msgstr "" "`Issue #21044 `__: tarfile.open() now handles " "fileobj with an integer 'name' attribute. Based on patch by Antoine Pietri." #: ../../../Misc/NEWS:5504 msgid "" "`Issue #21966 `__: Respect -q command-line " "option when code module is ran." msgstr "" "`Issue #21966 `__: Respect -q command-line " "option when code module is ran." #: ../../../Misc/NEWS:5506 msgid "" "`Issue #19076 `__: Don't pass the redundant " "'file' argument to self.error()." msgstr "" "`Issue #19076 `__: Don't pass the redundant " "'file' argument to self.error()." #: ../../../Misc/NEWS:5508 msgid "" "`Issue #16382 `__: Improve exception message " "of warnings.warn() for bad category. Initial patch by Phil Elson." msgstr "" "`Issue #16382 `__: Improve exception message " "of warnings.warn() for bad category. Initial patch by Phil Elson." #: ../../../Misc/NEWS:5511 msgid "" "`Issue #21932 `__: os.read() now uses a :c:" "func:`Py_ssize_t` type instead of :c:type:`int` for the size to support " "reading more than 2 GB at once. On Windows, the size is truncted to INT_MAX. " "As any call to os.read(), the OS may read less bytes than the number of " "requested bytes." msgstr "" "`Issue #21932 `__: os.read() now uses a :c:" "func:`Py_ssize_t` type instead of :c:type:`int` for the size to support " "reading more than 2 GB at once. On Windows, the size is truncted to INT_MAX. " "As any call to os.read(), the OS may read less bytes than the number of " "requested bytes." #: ../../../Misc/NEWS:5516 msgid "" "`Issue #21942 `__: Fixed source file viewing " "in pydoc's server mode on Windows." msgstr "" "`Issue #21942 `__: Fixed source file viewing " "in pydoc's server mode on Windows." #: ../../../Misc/NEWS:5518 msgid "" "`Issue #11259 `__: asynchat.async_chat()." "set_terminator() now raises a ValueError if the number of received bytes is " "negative." msgstr "" "`Issue #11259 `__: asynchat.async_chat()." "set_terminator() now raises a ValueError if the number of received bytes is " "negative." #: ../../../Misc/NEWS:5521 msgid "" "`Issue #12523 `__: asynchat.async_chat.push() " "now raises a TypeError if it doesn't get a bytes string" msgstr "" "`Issue #12523 `__: asynchat.async_chat.push() " "now raises a TypeError if it doesn't get a bytes string" #: ../../../Misc/NEWS:5524 msgid "" "`Issue #21707 `__: Add missing kwonlyargcount " "argument to ModuleFinder.replace_paths_in_code()." msgstr "" "`Issue #21707 `__: Add missing kwonlyargcount " "argument to ModuleFinder.replace_paths_in_code()." #: ../../../Misc/NEWS:5527 msgid "" "`Issue #20639 `__: calling Path." "with_suffix('') allows removing the suffix again. Patch by July Tikhonov." msgstr "" "`Issue #20639 `__: calling Path." "with_suffix('') allows removing the suffix again. Patch by July Tikhonov." #: ../../../Misc/NEWS:5530 msgid "" "`Issue #21714 `__: Disallow the construction " "of invalid paths using Path.with_name(). Original patch by Antony Lee." msgstr "" "`Issue #21714 `__: Disallow the construction " "of invalid paths using Path.with_name(). Original patch by Antony Lee." #: ../../../Misc/NEWS:5533 msgid "" "`Issue #15014 `__: Added 'auth' method to " "smtplib to make implementing auth mechanisms simpler, and used it internally " "in the login method." msgstr "" "`Issue #15014 `__: Added 'auth' method to " "smtplib to make implementing auth mechanisms simpler, and used it internally " "in the login method." #: ../../../Misc/NEWS:5536 msgid "" "`Issue #21151 `__: Fixed a segfault in the " "winreg module when ``None`` is passed as a ``REG_BINARY`` value to " "SetValueEx. Patch by John Ehresman." msgstr "" "`Issue #21151 `__: Fixed a segfault in the " "winreg module when ``None`` is passed as a ``REG_BINARY`` value to " "SetValueEx. Patch by John Ehresman." #: ../../../Misc/NEWS:5539 msgid "" "`Issue #21090 `__: io.FileIO.readall() does " "not ignore I/O errors anymore. Before, it ignored I/O errors if at least the " "first C call read() succeed." msgstr "" "`Issue #21090 `__: io.FileIO.readall() does " "not ignore I/O errors anymore. Before, it ignored I/O errors if at least the " "first C call read() succeed." #: ../../../Misc/NEWS:5542 msgid "" "`Issue #5800 `__: headers parameter of wsgiref." "headers.Headers is now optional. Initial patch by Pablo Torres Navarrete and " "SilentGhost." msgstr "" "`Issue #5800 `__: headers parameter of wsgiref." "headers.Headers is now optional. Initial patch by Pablo Torres Navarrete and " "SilentGhost." #: ../../../Misc/NEWS:5545 msgid "" "`Issue #21781 `__: ssl.RAND_add() now " "supports strings longer than 2 GB." msgstr "" "`Issue #21781 `__: ssl.RAND_add() now " "supports strings longer than 2 GB." #: ../../../Misc/NEWS:5547 msgid "" "`Issue #21679 `__: Prevent extraneous fstat() " "calls during open(). Patch by Bohuslav Kabrda." msgstr "" "`Issue #21679 `__: Prevent extraneous fstat() " "calls during open(). Patch by Bohuslav Kabrda." #: ../../../Misc/NEWS:5550 msgid "" "`Issue #21863 `__: cProfile now displays the " "module name of C extension functions, in addition to their own name." msgstr "" "`Issue #21863 `__: cProfile now displays the " "module name of C extension functions, in addition to their own name." #: ../../../Misc/NEWS:5553 msgid "" "`Issue #11453 `__: asyncore: emit a " "ResourceWarning when an unclosed file_wrapper object is destroyed. The " "destructor now closes the file if needed. The close() method can now be " "called twice: the second call does nothing." msgstr "" "`Issue #11453 `__: asyncore: emit a " "ResourceWarning when an unclosed file_wrapper object is destroyed. The " "destructor now closes the file if needed. The close() method can now be " "called twice: the second call does nothing." #: ../../../Misc/NEWS:5557 msgid "" "`Issue #21858 `__: Better handling of Python " "exceptions in the sqlite3 module." msgstr "" "`Issue #21858 `__: Better handling of Python " "exceptions in the sqlite3 module." #: ../../../Misc/NEWS:5559 msgid "" "`Issue #21476 `__: Make sure the email.parser." "BytesParser TextIOWrapper is discarded after parsing, so the input file " "isn't unexpectedly closed." msgstr "" "`Issue #21476 `__: Make sure the email.parser." "BytesParser TextIOWrapper is discarded after parsing, so the input file " "isn't unexpectedly closed." #: ../../../Misc/NEWS:5562 msgid "" "`Issue #20295 `__: imghdr now recognizes " "OpenEXR format images." msgstr "" "`Issue #20295 `__: imghdr now recognizes " "OpenEXR format images." #: ../../../Misc/NEWS:5564 msgid "" "`Issue #21729 `__: Used the \"with\" " "statement in the dbm.dumb module to ensure files closing. Patch by Claudiu " "Popa." msgstr "" "`Issue #21729 `__: Used the \"with\" " "statement in the dbm.dumb module to ensure files closing. Patch by Claudiu " "Popa." #: ../../../Misc/NEWS:5567 msgid "" "`Issue #21491 `__: socketserver: Fix a race " "condition in child processes reaping." msgstr "" "`Issue #21491 `__: socketserver: Fix a race " "condition in child processes reaping." #: ../../../Misc/NEWS:5569 msgid "" "`Issue #21719 `__: Added the " "``st_file_attributes`` field to os.stat_result on Windows." msgstr "" "`Issue #21719 `__: Added the " "``st_file_attributes`` field to os.stat_result on Windows." #: ../../../Misc/NEWS:5572 msgid "" "`Issue #21832 `__: Require named tuple inputs " "to be exact strings." msgstr "" "`Issue #21832 `__: Require named tuple inputs " "to be exact strings." #: ../../../Misc/NEWS:5574 msgid "" "`Issue #21722 `__: The distutils \"upload\" " "command now exits with a non-zero return code when uploading fails. Patch " "by Martin Dengler." msgstr "" "`Issue #21722 `__: The distutils \"upload\" " "command now exits with a non-zero return code when uploading fails. Patch " "by Martin Dengler." #: ../../../Misc/NEWS:5577 msgid "" "`Issue #21723 `__: asyncio.Queue: support any " "type of number (ex: float) for the maximum size. Patch written by Vajrasky " "Kok." msgstr "" "`Issue #21723 `__: asyncio.Queue: support any " "type of number (ex: float) for the maximum size. Patch written by Vajrasky " "Kok." #: ../../../Misc/NEWS:5580 msgid "" "`Issue #21711 `__: support for \"site-python" "\" directories has now been removed from the site module (it was deprecated " "in 3.4)." msgstr "" "`Issue #21711 `__: support for \"site-python" "\" directories has now been removed from the site module (it was deprecated " "in 3.4)." #: ../../../Misc/NEWS:5583 msgid "" "`Issue #17552 `__: new socket.sendfile() " "method allowing a file to be sent over a socket by using high-performance os." "sendfile() on UNIX. Patch by Giampaolo Rodola'." msgstr "" "`Issue #17552 `__: new socket.sendfile() " "method allowing a file to be sent over a socket by using high-performance os." "sendfile() on UNIX. Patch by Giampaolo Rodola'." #: ../../../Misc/NEWS:5587 msgid "" "`Issue #18039 `__: dbm.dump.open() now always " "creates a new database when the flag has the value 'n'. Patch by Claudiu " "Popa." msgstr "" "`Issue #18039 `__: dbm.dump.open() now always " "creates a new database when the flag has the value 'n'. Patch by Claudiu " "Popa." #: ../../../Misc/NEWS:5590 msgid "" "`Issue #21326 `__: Add a new is_closed() " "method to asyncio.BaseEventLoop. run_forever() and run_until_complete() " "methods of asyncio.BaseEventLoop now raise an exception if the event loop " "was closed." msgstr "" "`Issue #21326 `__: Add a new is_closed() " "method to asyncio.BaseEventLoop. run_forever() and run_until_complete() " "methods of asyncio.BaseEventLoop now raise an exception if the event loop " "was closed." #: ../../../Misc/NEWS:5594 msgid "" "`Issue #21766 `__: Prevent a security hole in " "CGIHTTPServer by URL unquoting paths before checking for a CGI script at " "that path." msgstr "" "`Issue #21766 `__: Prevent a security hole in " "CGIHTTPServer by URL unquoting paths before checking for a CGI script at " "that path." #: ../../../Misc/NEWS:5597 msgid "" "`Issue #21310 `__: Fixed possible resource " "leak in failed open()." msgstr "" "`Issue #21310 `__: Fixed possible resource " "leak in failed open()." #: ../../../Misc/NEWS:5599 msgid "" "`Issue #21256 `__: Printout of keyword args " "should be in deterministic order in a mock function call. This will help to " "write better doctests." msgstr "" "`Issue #21256 `__: Printout of keyword args " "should be in deterministic order in a mock function call. This will help to " "write better doctests." #: ../../../Misc/NEWS:5602 msgid "" "`Issue #21677 `__: Fixed chaining " "nonnormalized exceptions in io close() methods." msgstr "" "`Issue #21677 `__: Fixed chaining " "nonnormalized exceptions in io close() methods." #: ../../../Misc/NEWS:5604 msgid "" "`Issue #11709 `__: Fix the pydoc.help " "function to not fail when sys.stdin is not a valid file." msgstr "" "`Issue #11709 `__: Fix the pydoc.help " "function to not fail when sys.stdin is not a valid file." #: ../../../Misc/NEWS:5607 msgid "" "`Issue #21515 `__: tempfile.TemporaryFile now " "uses os.O_TMPFILE flag is available." msgstr "" "`Issue #21515 `__: tempfile.TemporaryFile now " "uses os.O_TMPFILE flag is available." #: ../../../Misc/NEWS:5609 msgid "" "`Issue #13223 `__: Fix pydoc.writedoc so that " "the HTML documentation for methods that use 'self' in the example code is " "generated correctly." msgstr "" "`Issue #13223 `__: Fix pydoc.writedoc so that " "the HTML documentation for methods that use 'self' in the example code is " "generated correctly." #: ../../../Misc/NEWS:5612 msgid "" "`Issue #21463 `__: In urllib.request, fix " "pruning of the FTP cache." msgstr "" "`Issue #21463 `__: In urllib.request, fix " "pruning of the FTP cache." #: ../../../Misc/NEWS:5614 msgid "" "`Issue #21618 `__: The subprocess module " "could fail to close open fds that were inherited by the calling process and " "already higher than POSIX resource limits would otherwise allow. On systems " "with a functioning /proc/self/fd or /dev/fd interface the max is now ignored " "and all fds are closed." msgstr "" "`Issue #21618 `__: The subprocess module " "could fail to close open fds that were inherited by the calling process and " "already higher than POSIX resource limits would otherwise allow. On systems " "with a functioning /proc/self/fd or /dev/fd interface the max is now ignored " "and all fds are closed." #: ../../../Misc/NEWS:5619 msgid "" "`Issue #20383 `__: Introduce importlib.util." "module_from_spec() as the preferred way to create a new module." msgstr "" "`Issue #20383 `__: Introduce importlib.util." "module_from_spec() as the preferred way to create a new module." #: ../../../Misc/NEWS:5622 msgid "" "`Issue #21552 `__: Fixed possible integer " "overflow of too long string lengths in the tkinter module on 64-bit " "platforms." msgstr "" "`Issue #21552 `__: Fixed possible integer " "overflow of too long string lengths in the tkinter module on 64-bit " "platforms." #: ../../../Misc/NEWS:5625 msgid "" "`Issue #14315 `__: The zipfile module now " "ignores extra fields in the central directory that are too short to be " "parsed instead of letting a struct.unpack error bubble up as this \"bad data" "\" appears in many real world zip files in the wild and is ignored by other " "zip tools." msgstr "" "`Issue #14315 `__: The zipfile module now " "ignores extra fields in the central directory that are too short to be " "parsed instead of letting a struct.unpack error bubble up as this \"bad data" "\" appears in many real world zip files in the wild and is ignored by other " "zip tools." #: ../../../Misc/NEWS:5630 msgid "" "`Issue #13742 `__: Added \"key\" and \"reverse" "\" parameters to heapq.merge(). (First draft of patch contributed by Simon " "Sapin.)" msgstr "" "`Issue #13742 `__: Added \"key\" and \"reverse" "\" parameters to heapq.merge(). (First draft of patch contributed by Simon " "Sapin.)" #: ../../../Misc/NEWS:5633 msgid "" "`Issue #21402 `__: tkinter.ttk now works when " "default root window is not set." msgstr "" "`Issue #21402 `__: tkinter.ttk now works when " "default root window is not set." #: ../../../Misc/NEWS:5635 msgid "" "`Issue #3015 `__: _tkinter.create() now " "creates tkapp object with wantobject=1 by default." msgstr "" "`Issue #3015 `__: _tkinter.create() now " "creates tkapp object with wantobject=1 by default." #: ../../../Misc/NEWS:5638 msgid "" "`Issue #10203 `__: sqlite3.Row now truly " "supports sequence protocol. In particular it supports reverse() and " "negative indices. Original patch by Claudiu Popa." msgstr "" "`Issue #10203 `__: sqlite3.Row now truly " "supports sequence protocol. In particular it supports reverse() and " "negative indices. Original patch by Claudiu Popa." #: ../../../Misc/NEWS:5641 msgid "" "`Issue #18807 `__: If copying (no symlinks) " "specified for a venv, then the python interpreter aliases (python, python3) " "are now created by copying rather than symlinking." msgstr "" "`Issue #18807 `__: If copying (no symlinks) " "specified for a venv, then the python interpreter aliases (python, python3) " "are now created by copying rather than symlinking." #: ../../../Misc/NEWS:5645 msgid "" "`Issue #20197 `__: Added support for the WebP " "image type in the imghdr module. Patch by Fabrice Aneche and Claudiu Popa." msgstr "" "`Issue #20197 `__: Added support for the WebP " "image type in the imghdr module. Patch by Fabrice Aneche and Claudiu Popa." #: ../../../Misc/NEWS:5648 msgid "" "`Issue #21513 `__: Speedup some properties of " "IP addresses (IPv4Address, IPv6Address) such as .is_private or .is_multicast." msgstr "" "`Issue #21513 `__: Speedup some properties of " "IP addresses (IPv4Address, IPv6Address) such as .is_private or .is_multicast." #: ../../../Misc/NEWS:5651 msgid "" "`Issue #21137 `__: Improve the repr for " "threading.Lock() and its variants by showing the \"locked\" or \"unlocked\" " "status. Patch by Berker Peksag." msgstr "" "`Issue #21137 `__: Improve the repr for " "threading.Lock() and its variants by showing the \"locked\" or \"unlocked\" " "status. Patch by Berker Peksag." #: ../../../Misc/NEWS:5654 msgid "" "`Issue #21538 `__: The plistlib module now " "supports loading of binary plist files when reference or offset size is not " "a power of two." msgstr "" "`Issue #21538 `__: The plistlib module now " "supports loading of binary plist files when reference or offset size is not " "a power of two." #: ../../../Misc/NEWS:5657 msgid "" "`Issue #21455 `__: Add a default backlog to " "socket.listen()." msgstr "" "`Issue #21455 `__: Add a default backlog to " "socket.listen()." #: ../../../Misc/NEWS:5659 msgid "" "`Issue #21525 `__: Most Tkinter methods which " "accepted tuples now accept lists too." msgstr "" "`Issue #21525 `__: Most Tkinter methods which " "accepted tuples now accept lists too." #: ../../../Misc/NEWS:5661 msgid "" "`Issue #22166 `__: With the assistance of a " "new internal _codecs._forget_codec helping function, test_codecs now clears " "the encoding caches to avoid the appearance of a reference leak" msgstr "" "`Issue #22166 `__: With the assistance of a " "new internal _codecs._forget_codec helping function, test_codecs now clears " "the encoding caches to avoid the appearance of a reference leak" #: ../../../Misc/NEWS:5665 msgid "" "`Issue #22236 `__: Tkinter tests now don't " "reuse default root window. New root window is created for every test class." msgstr "" "`Issue #22236 `__: Tkinter tests now don't " "reuse default root window. New root window is created for every test class." #: ../../../Misc/NEWS:5668 msgid "" "`Issue #10744 `__: Fix PEP 3118 format " "strings on ctypes objects with a nontrivial shape." msgstr "" "`Issue #10744 `__: Fix PEP 3118 format " "strings on ctypes objects with a nontrivial shape." #: ../../../Misc/NEWS:5671 msgid "" "`Issue #20826 `__: Optimize ipaddress." "collapse_addresses()." msgstr "" "`Issue #20826 `__: Optimize ipaddress." "collapse_addresses()." #: ../../../Misc/NEWS:5673 msgid "" "`Issue #21487 `__: Optimize ipaddress." "summarize_address_range() and ipaddress.{IPv4Network,IPv6Network}.subnets()." msgstr "" "`Issue #21487 `__: Optimize ipaddress." "summarize_address_range() and ipaddress.{IPv4Network,IPv6Network}.subnets()." #: ../../../Misc/NEWS:5676 msgid "" "`Issue #21486 `__: Optimize parsing of " "netmasks in ipaddress.IPv4Network and ipaddress.IPv6Network." msgstr "" "`Issue #21486 `__: Optimize parsing of " "netmasks in ipaddress.IPv4Network and ipaddress.IPv6Network." #: ../../../Misc/NEWS:5679 msgid "" "`Issue #13916 `__: Disallowed the " "surrogatepass error handler for non UTF-\\* encodings." msgstr "" "`Issue #13916 `__: Disallowed the " "surrogatepass error handler for non UTF-\\* encodings." #: ../../../Misc/NEWS:5682 msgid "" "`Issue #20998 `__: Fixed re.fullmatch() of " "repeated single character pattern with ignore case. Original patch by " "Matthew Barnett." msgstr "" "`Issue #20998 `__: Fixed re.fullmatch() of " "repeated single character pattern with ignore case. Original patch by " "Matthew Barnett." #: ../../../Misc/NEWS:5685 msgid "" "`Issue #21075 `__: fileinput.FileInput now " "reads bytes from standard stream if binary mode is specified. Patch by Sam " "Kimbrel." msgstr "" "`Issue #21075 `__: fileinput.FileInput now " "reads bytes from standard stream if binary mode is specified. Patch by Sam " "Kimbrel." #: ../../../Misc/NEWS:5688 msgid "" "`Issue #19775 `__: Add a samefile() method to " "pathlib Path objects. Initial patch by Vajrasky Kok." msgstr "" "`Issue #19775 `__: Add a samefile() method to " "pathlib Path objects. Initial patch by Vajrasky Kok." #: ../../../Misc/NEWS:5691 msgid "" "`Issue #21226 `__: Set up modules properly in " "PyImport_ExecCodeModuleObject (and friends)." msgstr "" "`Issue #21226 `__: Set up modules properly in " "PyImport_ExecCodeModuleObject (and friends)." #: ../../../Misc/NEWS:5694 msgid "" "`Issue #21398 `__: Fix a unicode error in the " "pydoc pager when the documentation contains characters not encodable to the " "stdout encoding." msgstr "" "`Issue #21398 `__: Fix a unicode error in the " "pydoc pager when the documentation contains characters not encodable to the " "stdout encoding." #: ../../../Misc/NEWS:5697 msgid "" "`Issue #16531 `__: ipaddress.IPv4Network and " "ipaddress.IPv6Network now accept an (address, netmask) tuple argument, so as " "to easily construct network objects from existing addresses." msgstr "" "`Issue #16531 `__: ipaddress.IPv4Network and " "ipaddress.IPv6Network now accept an (address, netmask) tuple argument, so as " "to easily construct network objects from existing addresses." #: ../../../Misc/NEWS:5701 msgid "" "`Issue #21156 `__: importlib.abc." "InspectLoader.source_to_code() is now a staticmethod." msgstr "" "`Issue #21156 `__: importlib.abc." "InspectLoader.source_to_code() is now a staticmethod." #: ../../../Misc/NEWS:5704 msgid "" "`Issue #21424 `__: Simplified and optimized " "heaqp.nlargest() and nmsmallest() to make fewer tuple comparisons." msgstr "" "`Issue #21424 `__: Simplified and optimized " "heaqp.nlargest() and nmsmallest() to make fewer tuple comparisons." #: ../../../Misc/NEWS:5707 msgid "" "`Issue #21396 `__: Fix TextIOWrapper(..., " "write_through=True) to not force a flush() on the underlying binary stream. " "Patch by akira." msgstr "" "`Issue #21396 `__: Fix TextIOWrapper(..., " "write_through=True) to not force a flush() on the underlying binary stream. " "Patch by akira." #: ../../../Misc/NEWS:5710 msgid "" "`Issue #18314 `__: Unlink now removes " "junctions on Windows. Patch by Kim Gräsman" msgstr "" "`Issue #18314 `__: Unlink now removes " "junctions on Windows. Patch by Kim Gräsman" #: ../../../Misc/NEWS:5712 msgid "" "`Issue #21088 `__: Bugfix for curses.window." "addch() regression in 3.4.0. In porting to Argument Clinic, the first two " "arguments were reversed." msgstr "" "`Issue #21088 `__: Bugfix for curses.window." "addch() regression in 3.4.0. In porting to Argument Clinic, the first two " "arguments were reversed." #: ../../../Misc/NEWS:5715 msgid "" "`Issue #21407 `__: _decimal: The module now " "supports function signatures." msgstr "" "`Issue #21407 `__: _decimal: The module now " "supports function signatures." #: ../../../Misc/NEWS:5717 msgid "" "`Issue #10650 `__: Remove the non-standard " "'watchexp' parameter from the Decimal.quantize() method in the Python " "version. It had never been present in the C version." msgstr "" "`Issue #10650 `__: Remove the non-standard " "'watchexp' parameter from the Decimal.quantize() method in the Python " "version. It had never been present in the C version." #: ../../../Misc/NEWS:5721 msgid "" "`Issue #21469 `__: Reduced the risk of false " "positives in robotparser by checking to make sure that robots.txt has been " "read or does not exist prior to returning True in can_fetch()." msgstr "" "`Issue #21469 `__: Reduced the risk of false " "positives in robotparser by checking to make sure that robots.txt has been " "read or does not exist prior to returning True in can_fetch()." #: ../../../Misc/NEWS:5725 msgid "" "`Issue #19414 `__: Have the OrderedDict mark " "deleted links as unusable. This gives an early failure if the link is " "deleted during iteration." msgstr "" "`Issue #19414 `__: Have the OrderedDict mark " "deleted links as unusable. This gives an early failure if the link is " "deleted during iteration." #: ../../../Misc/NEWS:5728 msgid "" "`Issue #21421 `__: Add __slots__ to the " "MappingViews ABC. Patch by Josh Rosenberg." msgstr "" "`Issue #21421 `__: Add __slots__ to the " "MappingViews ABC. Patch by Josh Rosenberg." #: ../../../Misc/NEWS:5731 msgid "" "`Issue #21101 `__: Eliminate double hashing " "in the C speed-up code for collections.Counter()." msgstr "" "`Issue #21101 `__: Eliminate double hashing " "in the C speed-up code for collections.Counter()." #: ../../../Misc/NEWS:5734 msgid "" "`Issue #21321 `__: itertools.islice() now " "releases the reference to the source iterator when the slice is exhausted. " "Patch by Anton Afanasyev." msgstr "" "`Issue #21321 `__: itertools.islice() now " "releases the reference to the source iterator when the slice is exhausted. " "Patch by Anton Afanasyev." #: ../../../Misc/NEWS:5737 msgid "" "`Issue #21057 `__: TextIOWrapper now allows " "the underlying binary stream's read() or read1() method to return an " "arbitrary bytes-like object (such as a memoryview). Patch by Nikolaus Rath." msgstr "" "`Issue #21057 `__: TextIOWrapper now allows " "the underlying binary stream's read() or read1() method to return an " "arbitrary bytes-like object (such as a memoryview). Patch by Nikolaus Rath." #: ../../../Misc/NEWS:5741 msgid "" "`Issue #20951 `__: SSLSocket.send() now " "raises either SSLWantReadError or SSLWantWriteError on a non-blocking socket " "if the operation would block. Previously, it would return 0. Patch by " "Nikolaus Rath." msgstr "" "`Issue #20951 `__: SSLSocket.send() now " "raises either SSLWantReadError or SSLWantWriteError on a non-blocking socket " "if the operation would block. Previously, it would return 0. Patch by " "Nikolaus Rath." #: ../../../Misc/NEWS:5745 msgid "" "`Issue #13248 `__: removed previously " "deprecated asyncore.dispatcher __getattr__ cheap inheritance hack." msgstr "" "`Issue #13248 `__: removed previously " "deprecated asyncore.dispatcher __getattr__ cheap inheritance hack." #: ../../../Misc/NEWS:5748 msgid "" "`Issue #9815 `__: assertRaises now tries to " "clear references to local variables in the exception's traceback." msgstr "" "`Issue #9815 `__: assertRaises now tries to " "clear references to local variables in the exception's traceback." #: ../../../Misc/NEWS:5751 msgid "" "`Issue #19940 `__: ssl.cert_time_to_seconds() " "now interprets the given time string in the UTC timezone (as specified in " "RFC 5280), not the local timezone." msgstr "" "`Issue #19940 `__: ssl.cert_time_to_seconds() " "now interprets the given time string in the UTC timezone (as specified in " "RFC 5280), not the local timezone." #: ../../../Misc/NEWS:5755 msgid "" "`Issue #13204 `__: Calling sys.flags.__new__ " "would crash the interpreter, now it raises a TypeError." msgstr "" "`Issue #13204 `__: Calling sys.flags.__new__ " "would crash the interpreter, now it raises a TypeError." #: ../../../Misc/NEWS:5758 msgid "" "`Issue #19385 `__: Make operations on a " "closed dbm.dumb database always raise the same exception." msgstr "" "`Issue #19385 `__: Make operations on a " "closed dbm.dumb database always raise the same exception." #: ../../../Misc/NEWS:5761 msgid "" "`Issue #21207 `__: Detect when the os.urandom " "cached fd has been closed or replaced, and open it anew." msgstr "" "`Issue #21207 `__: Detect when the os.urandom " "cached fd has been closed or replaced, and open it anew." #: ../../../Misc/NEWS:5764 msgid "" "`Issue #21291 `__: subprocess's Popen.wait() " "is now thread safe so that multiple threads may be calling wait() or poll() " "on a Popen instance at the same time without losing the Popen.returncode " "value." msgstr "" "`Issue #21291 `__: subprocess's Popen.wait() " "is now thread safe so that multiple threads may be calling wait() or poll() " "on a Popen instance at the same time without losing the Popen.returncode " "value." #: ../../../Misc/NEWS:5768 msgid "" "`Issue #21127 `__: Path objects can now be " "instantiated from str subclass instances (such as ``numpy.str_``)." msgstr "" "`Issue #21127 `__: Path objects can now be " "instantiated from str subclass instances (such as ``numpy.str_``)." #: ../../../Misc/NEWS:5771 msgid "" "`Issue #15002 `__: urllib.response object to " "use _TemporaryFileWrapper (and _TemporaryFileCloser) facility. Provides a " "better way to handle file descriptor close. Patch contributed by Christian " "Theune." msgstr "" "`Issue #15002 `__: urllib.response object to " "use _TemporaryFileWrapper (and _TemporaryFileCloser) facility. Provides a " "better way to handle file descriptor close. Patch contributed by Christian " "Theune." #: ../../../Misc/NEWS:5775 msgid "" "`Issue #12220 `__: mindom now raises a custom " "ValueError indicating it doesn't support spaces in URIs instead of letting a " "'split' ValueError bubble up." msgstr "" "`Issue #12220 `__: mindom now raises a custom " "ValueError indicating it doesn't support spaces in URIs instead of letting a " "'split' ValueError bubble up." #: ../../../Misc/NEWS:5778 msgid "" "`Issue #21068 `__: The ssl.PROTOCOL* " "constants are now enum members." msgstr "" "`Issue #21068 `__: The ssl.PROTOCOL* " "constants are now enum members." #: ../../../Misc/NEWS:5780 msgid "" "`Issue #21276 `__: posixmodule: Don't define " "USE_XATTRS on KFreeBSD and the Hurd." msgstr "" "`Issue #21276 `__: posixmodule: Don't define " "USE_XATTRS on KFreeBSD and the Hurd." #: ../../../Misc/NEWS:5782 msgid "" "`Issue #21262 `__: New method " "assert_not_called for Mock. It raises AssertionError if the mock has been " "called." msgstr "" "`Issue #21262 `__: New method " "assert_not_called for Mock. It raises AssertionError if the mock has been " "called." #: ../../../Misc/NEWS:5785 msgid "" "`Issue #21238 `__: New keyword argument " "`unsafe` to Mock. It raises `AttributeError` incase of an attribute " "startswith assert or assret." msgstr "" "`Issue #21238 `__: New keyword argument " "`unsafe` to Mock. It raises `AttributeError` incase of an attribute " "startswith assert or assret." #: ../../../Misc/NEWS:5788 msgid "" "`Issue #20896 `__: ssl." "get_server_certificate() now uses PROTOCOL_SSLv23, not PROTOCOL_SSLv3, for " "maximum compatibility." msgstr "" "`Issue #20896 `__: ssl." "get_server_certificate() now uses PROTOCOL_SSLv23, not PROTOCOL_SSLv3, for " "maximum compatibility." #: ../../../Misc/NEWS:5791 msgid "" "`Issue #21239 `__: patch.stopall() didn't " "work deterministically when the same name was patched more than once." msgstr "" "`Issue #21239 `__: patch.stopall() didn't " "work deterministically when the same name was patched more than once." #: ../../../Misc/NEWS:5794 msgid "" "`Issue #21203 `__: Updated fileConfig and " "dictConfig to remove inconsistencies. Thanks to Jure Koren for the patch." msgstr "" "`Issue #21203 `__: Updated fileConfig and " "dictConfig to remove inconsistencies. Thanks to Jure Koren for the patch." #: ../../../Misc/NEWS:5797 msgid "" "`Issue #21222 `__: Passing name keyword " "argument to mock.create_autospec now works." msgstr "" "`Issue #21222 `__: Passing name keyword " "argument to mock.create_autospec now works." #: ../../../Misc/NEWS:5800 msgid "" "`Issue #21197 `__: Add lib64 -> lib symlink " "in venvs on 64-bit non-OS X POSIX." msgstr "" "`Issue #21197 `__: Add lib64 -> lib symlink " "in venvs on 64-bit non-OS X POSIX." #: ../../../Misc/NEWS:5802 msgid "" "`Issue #17498 `__: Some SMTP servers " "disconnect after certain errors, violating strict RFC conformance. Instead " "of losing the error code when we issue the subsequent RSET, smtplib now " "returns the error code and defers raising the SMTPServerDisconnected error " "until the next command is issued." msgstr "" "`Issue #17498 `__: Some SMTP servers " "disconnect after certain errors, violating strict RFC conformance. Instead " "of losing the error code when we issue the subsequent RSET, smtplib now " "returns the error code and defers raising the SMTPServerDisconnected error " "until the next command is issued." #: ../../../Misc/NEWS:5807 msgid "" "`Issue #17826 `__: setting an iterable " "side_effect on a mock function created by create_autospec now works. Patch " "by Kushal Das." msgstr "" "`Issue #17826 `__: setting an iterable " "side_effect on a mock function created by create_autospec now works. Patch " "by Kushal Das." #: ../../../Misc/NEWS:5810 msgid "" "`Issue #7776 `__: Fix ``Host:`` header and " "reconnection when using http.client.HTTPConnection.set_tunnel(). Patch by " "Nikolaus Rath." msgstr "" "`Issue #7776 `__: Fix ``Host:`` header and " "reconnection when using http.client.HTTPConnection.set_tunnel(). Patch by " "Nikolaus Rath." #: ../../../Misc/NEWS:5813 msgid "" "`Issue #20968 `__: unittest.mock.MagicMock " "now supports division. Patch by Johannes Baiter." msgstr "" "`Issue #20968 `__: unittest.mock.MagicMock " "now supports division. Patch by Johannes Baiter." #: ../../../Misc/NEWS:5816 msgid "" "`Issue #21529 `__ (CVE-2014-4616): Fix " "arbitrary memory access in JSONDecoder.raw_decode with a negative second " "parameter. Bug reported by Guido Vranken." msgstr "" "`Issue #21529 `__ (CVE-2014-4616): Fix " "arbitrary memory access in JSONDecoder.raw_decode with a negative second " "parameter. Bug reported by Guido Vranken." #: ../../../Misc/NEWS:5820 msgid "" "`Issue #21169 `__: getpass now handles non-" "ascii characters that the input stream encoding cannot encode by re-encoding " "using the replace error handler." msgstr "" "`Issue #21169 `__: getpass now handles non-" "ascii characters that the input stream encoding cannot encode by re-encoding " "using the replace error handler." #: ../../../Misc/NEWS:5824 msgid "" "`Issue #21171 `__: Fixed undocumented filter " "API of the rot13 codec. Patch by Berker Peksag." msgstr "" "`Issue #21171 `__: Fixed undocumented filter " "API of the rot13 codec. Patch by Berker Peksag." #: ../../../Misc/NEWS:5827 msgid "" "`Issue #20539 `__: Improved math.factorial " "error message for large positive inputs and changed exception type " "(OverflowError -> ValueError) for large negative inputs." msgstr "" "`Issue #20539 `__: Improved math.factorial " "error message for large positive inputs and changed exception type " "(OverflowError -> ValueError) for large negative inputs." #: ../../../Misc/NEWS:5831 msgid "" "`Issue #21172 `__: isinstance check relaxed " "from dict to collections.Mapping." msgstr "" "`Issue #21172 `__: isinstance check relaxed " "from dict to collections.Mapping." #: ../../../Misc/NEWS:5833 msgid "" "`Issue #21155 `__: asyncio.EventLoop." "create_unix_server() now raises a ValueError if path and sock are specified " "at the same time." msgstr "" "`Issue #21155 `__: asyncio.EventLoop." "create_unix_server() now raises a ValueError if path and sock are specified " "at the same time." #: ../../../Misc/NEWS:5836 msgid "" "`Issue #21136 `__: Avoid unnecessary " "normalization of Fractions resulting from power and other operations. Patch " "by Raymond Hettinger." msgstr "" "`Issue #21136 `__: Avoid unnecessary " "normalization of Fractions resulting from power and other operations. Patch " "by Raymond Hettinger." #: ../../../Misc/NEWS:5839 msgid "" "`Issue #17621 `__: Introduce importlib.util." "LazyLoader." msgstr "" "`Issue #17621 `__: Introduce importlib.util." "LazyLoader." #: ../../../Misc/NEWS:5841 msgid "" "`Issue #21076 `__: signal module constants " "were turned into enums. Patch by Giampaolo Rodola'." msgstr "" "`Issue #21076 `__: signal module constants " "were turned into enums. Patch by Giampaolo Rodola'." #: ../../../Misc/NEWS:5844 msgid "" "`Issue #20636 `__: Improved the repr of " "Tkinter widgets." msgstr "" "`Issue #20636 `__: Improved the repr of " "Tkinter widgets." #: ../../../Misc/NEWS:5846 msgid "" "`Issue #19505 `__: The items, keys, and " "values views of OrderedDict now support reverse iteration using reversed()." msgstr "" "`Issue #19505 `__: The items, keys, and " "values views of OrderedDict now support reverse iteration using reversed()." #: ../../../Misc/NEWS:5849 msgid "" "`Issue #21149 `__: Improved thread-safety in " "logging cleanup during interpreter shutdown. Thanks to Devin Jeanpierre for " "the patch." msgstr "" "`Issue #21149 `__: Improved thread-safety in " "logging cleanup during interpreter shutdown. Thanks to Devin Jeanpierre for " "the patch." #: ../../../Misc/NEWS:5852 msgid "" "`Issue #21058 `__: Fix a leak of file " "descriptor in :func:`tempfile.NamedTemporaryFile`, close the file descriptor " "if :func:`io.open` fails" msgstr "" "`Issue #21058 `__: Fix a leak of file " "descriptor in :func:`tempfile.NamedTemporaryFile`, close the file descriptor " "if :func:`io.open` fails" #: ../../../Misc/NEWS:5856 msgid "" "`Issue #21200 `__: Return None from pkgutil." "get_loader() when __spec__ is missing." msgstr "" "`Issue #21200 `__: Return None from pkgutil." "get_loader() when __spec__ is missing." #: ../../../Misc/NEWS:5858 msgid "" "`Issue #21013 `__: Enhance ssl." "create_default_context() when used for server side sockets to provide better " "security by default." msgstr "" "`Issue #21013 `__: Enhance ssl." "create_default_context() when used for server side sockets to provide better " "security by default." #: ../../../Misc/NEWS:5861 msgid "" "`Issue #20145 `__: `assertRaisesRegex` and " "`assertWarnsRegex` now raise a TypeError if the second argument is not a " "string or compiled regex." msgstr "" "`Issue #20145 `__: `assertRaisesRegex` and " "`assertWarnsRegex` now raise a TypeError if the second argument is not a " "string or compiled regex." #: ../../../Misc/NEWS:5864 msgid "" "`Issue #20633 `__: Replace relative import by " "absolute import." msgstr "" "`Issue #20633 `__: Replace relative import by " "absolute import." #: ../../../Misc/NEWS:5866 msgid "" "`Issue #20980 `__: Stop wrapping exception " "when using ThreadPool." msgstr "" "`Issue #20980 `__: Stop wrapping exception " "when using ThreadPool." #: ../../../Misc/NEWS:5868 msgid "" "`Issue #21082 `__: In os.makedirs, do not set " "the process-wide umask. Note this changes behavior of makedirs when " "exist_ok=True." msgstr "" "`Issue #21082 `__: In os.makedirs, do not set " "the process-wide umask. Note this changes behavior of makedirs when " "exist_ok=True." #: ../../../Misc/NEWS:5871 msgid "" "`Issue #20990 `__: Fix issues found by " "pyflakes for multiprocessing." msgstr "" "`Issue #20990 `__: Fix issues found by " "pyflakes for multiprocessing." #: ../../../Misc/NEWS:5873 msgid "" "`Issue #21015 `__: SSL contexts will now " "automatically select an elliptic curve for ECDH key exchange on OpenSSL " "1.0.2 and later, and otherwise default to \"prime256v1\"." msgstr "" "`Issue #21015 `__: SSL contexts will now " "automatically select an elliptic curve for ECDH key exchange on OpenSSL " "1.0.2 and later, and otherwise default to \"prime256v1\"." #: ../../../Misc/NEWS:5877 msgid "" "`Issue #21000 `__: Improve the command-line " "interface of json.tool." msgstr "" "`Issue #21000 `__: Improve the command-line " "interface of json.tool." #: ../../../Misc/NEWS:5879 msgid "" "`Issue #20995 `__: Enhance default ciphers " "used by the ssl module to enable better security and prioritize perfect " "forward secrecy." msgstr "" "`Issue #20995 `__: Enhance default ciphers " "used by the ssl module to enable better security and prioritize perfect " "forward secrecy." #: ../../../Misc/NEWS:5882 msgid "" "`Issue #20884 `__: Don't assume that __file__ " "is defined on importlib.__init__." msgstr "" "`Issue #20884 `__: Don't assume that __file__ " "is defined on importlib.__init__." #: ../../../Misc/NEWS:5884 msgid "" "`Issue #21499 `__: Ignore __builtins__ in " "several test_importlib.test_api tests." msgstr "" "`Issue #21499 `__: Ignore __builtins__ in " "several test_importlib.test_api tests." #: ../../../Misc/NEWS:5886 msgid "" "`Issue #20627 `__: xmlrpc.client.ServerProxy " "is now a context manager." msgstr "" "`Issue #20627 `__: xmlrpc.client.ServerProxy " "is now a context manager." #: ../../../Misc/NEWS:5888 msgid "" "`Issue #19165 `__: The formatter module now " "raises DeprecationWarning instead of PendingDeprecationWarning." msgstr "" "`Issue #19165 `__: The formatter module now " "raises DeprecationWarning instead of PendingDeprecationWarning." #: ../../../Misc/NEWS:5891 msgid "" "`Issue #13936 `__: Remove the ability of " "datetime.time instances to be considered false in boolean contexts." msgstr "" "`Issue #13936 `__: Remove the ability of " "datetime.time instances to be considered false in boolean contexts." #: ../../../Misc/NEWS:5894 msgid "" "`Issue #18931 `__: selectors module now " "supports /dev/poll on Solaris. Patch by Giampaolo Rodola'." msgstr "" "`Issue #18931 `__: selectors module now " "supports /dev/poll on Solaris. Patch by Giampaolo Rodola'." #: ../../../Misc/NEWS:5897 msgid "" "`Issue #19977 `__: When the ``LC_TYPE`` " "locale is the POSIX locale (``C`` locale), :py:data:`sys.stdin` and :py:data:" "`sys.stdout` are now using the ``surrogateescape`` error handler, instead of " "the ``strict`` error handler." msgstr "" "`Issue #19977 `__: When the ``LC_TYPE`` " "locale is the POSIX locale (``C`` locale), :py:data:`sys.stdin` and :py:data:" "`sys.stdout` are now using the ``surrogateescape`` error handler, instead of " "the ``strict`` error handler." #: ../../../Misc/NEWS:5901 msgid "" "`Issue #20574 `__: Implement incremental " "decoder for cp65001 code (Windows code page 65001, Microsoft UTF-8)." msgstr "" "`Issue #20574 `__: Implement incremental " "decoder for cp65001 code (Windows code page 65001, Microsoft UTF-8)." #: ../../../Misc/NEWS:5904 msgid "" "`Issue #20879 `__: Delay the initialization " "of encoding and decoding tables for base32, ascii85 and base85 codecs in the " "base64 module, and delay the initialization of the unquote_to_bytes() table " "of the urllib.parse module, to not waste memory if these modules are not " "used." msgstr "" "`Issue #20879 `__: Delay the initialization " "of encoding and decoding tables for base32, ascii85 and base85 codecs in the " "base64 module, and delay the initialization of the unquote_to_bytes() table " "of the urllib.parse module, to not waste memory if these modules are not " "used." #: ../../../Misc/NEWS:5909 msgid "" "`Issue #19157 `__: Include the broadcast " "address in the usuable hosts for IPv6 in ipaddress." msgstr "" "`Issue #19157 `__: Include the broadcast " "address in the usuable hosts for IPv6 in ipaddress." #: ../../../Misc/NEWS:5912 msgid "" "`Issue #11599 `__: When an external command " "(e.g. compiler) fails, distutils now prints out the whole command line " "(instead of just the command name) if the environment variable " "DISTUTILS_DEBUG is set." msgstr "" "`Issue #11599 `__: When an external command " "(e.g. compiler) fails, distutils now prints out the whole command line " "(instead of just the command name) if the environment variable " "DISTUTILS_DEBUG is set." #: ../../../Misc/NEWS:5916 msgid "" "`Issue #4931 `__: distutils should not produce " "unhelpful \"error: None\" messages anymore. distutils.util." "grok_environment_error is kept but doc-deprecated." msgstr "" "`Issue #4931 `__: distutils should not produce " "unhelpful \"error: None\" messages anymore. distutils.util." "grok_environment_error is kept but doc-deprecated." #: ../../../Misc/NEWS:5919 msgid "" "`Issue #20875 `__: Prevent possible gzip " "\"'read' is not defined\" NameError. Patch by Claudiu Popa." msgstr "" "`Issue #20875 `__: Prevent possible gzip " "\"'read' is not defined\" NameError. Patch by Claudiu Popa." #: ../../../Misc/NEWS:5922 msgid "" "`Issue #11558 `__: ``email.message.Message." "attach`` now returns a more useful error message if ``attach`` is called on " "a message for which ``is_multipart`` is False." msgstr "" "`Issue #11558 `__: ``email.message.Message." "attach`` now returns a more useful error message if ``attach`` is called on " "a message for which ``is_multipart`` is False." #: ../../../Misc/NEWS:5926 msgid "" "`Issue #20283 `__: RE pattern methods now " "accept the string keyword parameters as documented. The pattern and source " "keyword parameters are left as deprecated aliases." msgstr "" "`Issue #20283 `__: RE pattern methods now " "accept the string keyword parameters as documented. The pattern and source " "keyword parameters are left as deprecated aliases." #: ../../../Misc/NEWS:5930 msgid "" "`Issue #20778 `__: Fix modulefinder to work " "with bytecode-only modules." msgstr "" "`Issue #20778 `__: Fix modulefinder to work " "with bytecode-only modules." #: ../../../Misc/NEWS:5932 msgid "" "`Issue #20791 `__: copy.copy() now doesn't " "make a copy when the input is a bytes object. Initial patch by Peter Otten." msgstr "" "`Issue #20791 `__: copy.copy() now doesn't " "make a copy when the input is a bytes object. Initial patch by Peter Otten." #: ../../../Misc/NEWS:5935 msgid "" "`Issue #19748 `__: On AIX, time.mktime() now " "raises an OverflowError for year outsize range [1902; 2037]." msgstr "" "`Issue #19748 `__: On AIX, time.mktime() now " "raises an OverflowError for year outsize range [1902; 2037]." #: ../../../Misc/NEWS:5938 msgid "" "`Issue #19573 `__: inspect.signature: Use " "enum for parameter kind constants." msgstr "" "`Issue #19573 `__: inspect.signature: Use " "enum for parameter kind constants." #: ../../../Misc/NEWS:5940 msgid "" "`Issue #20726 `__: inspect.signature: Make " "Signature and Parameter picklable." msgstr "" "`Issue #20726 `__: inspect.signature: Make " "Signature and Parameter picklable." #: ../../../Misc/NEWS:5942 msgid "" "`Issue #17373 `__: Add inspect.Signature." "from_callable method." msgstr "" "`Issue #17373 `__: Add inspect.Signature." "from_callable method." #: ../../../Misc/NEWS:5944 msgid "" "`Issue #20378 `__: Improve repr of inspect." "Signature and inspect.Parameter." msgstr "" "`Issue #20378 `__: Improve repr of inspect." "Signature and inspect.Parameter." #: ../../../Misc/NEWS:5946 msgid "" "`Issue #20816 `__: Fix inspect.getcallargs() " "to raise correct TypeError for missing keyword-only arguments. Patch by " "Jeremiah Lowin." msgstr "" "`Issue #20816 `__: Fix inspect.getcallargs() " "to raise correct TypeError for missing keyword-only arguments. Patch by " "Jeremiah Lowin." #: ../../../Misc/NEWS:5949 msgid "" "`Issue #20817 `__: Fix inspect.getcallargs() " "to fail correctly if more than 3 arguments are missing. Patch by Jeremiah " "Lowin." msgstr "" "`Issue #20817 `__: Fix inspect.getcallargs() " "to fail correctly if more than 3 arguments are missing. Patch by Jeremiah " "Lowin." #: ../../../Misc/NEWS:5952 msgid "" "`Issue #6676 `__: Ensure a meaningful " "exception is raised when attempting to parse more than one XML document per " "pyexpat xmlparser instance. (Original patches by Hirokazu Yamamoto and " "Amaury Forgeot d'Arc, with suggested wording by David Gutteridge)" msgstr "" "`Issue #6676 `__: Ensure a meaningful " "exception is raised when attempting to parse more than one XML document per " "pyexpat xmlparser instance. (Original patches by Hirokazu Yamamoto and " "Amaury Forgeot d'Arc, with suggested wording by David Gutteridge)" #: ../../../Misc/NEWS:5957 msgid "" "`Issue #21117 `__: Fix inspect.signature to " "better support functools.partial. Due to the specifics of functools.partial " "implementation, positional-or-keyword arguments passed as keyword arguments " "become keyword-only." msgstr "" "`Issue #21117 `__: Fix inspect.signature to " "better support functools.partial. Due to the specifics of functools.partial " "implementation, positional-or-keyword arguments passed as keyword arguments " "become keyword-only." #: ../../../Misc/NEWS:5962 msgid "" "`Issue #20334 `__: inspect.Signature and " "inspect.Parameter are now hashable. Thanks to Antony Lee for bug reports and " "suggestions." msgstr "" "`Issue #20334 `__: inspect.Signature and " "inspect.Parameter are now hashable. Thanks to Antony Lee for bug reports and " "suggestions." #: ../../../Misc/NEWS:5965 msgid "" "`Issue #15916 `__: doctest.DocTestSuite " "returns an empty unittest.TestSuite instead of raising ValueError if it " "finds no tests" msgstr "" "`Issue #15916 `__: doctest.DocTestSuite " "returns an empty unittest.TestSuite instead of raising ValueError if it " "finds no tests" #: ../../../Misc/NEWS:5968 msgid "" "`Issue #21209 `__: Fix asyncio.tasks." "CoroWrapper to workaround a bug in yield-from implementation in CPythons " "prior to 3.4.1." msgstr "" "`Issue #21209 `__: Fix asyncio.tasks." "CoroWrapper to workaround a bug in yield-from implementation in CPythons " "prior to 3.4.1." #: ../../../Misc/NEWS:5971 msgid "" "asyncio: Add gi_{frame,running,code} properties to CoroWrapper (upstream " "`issue #163 `__)." msgstr "" #: ../../../Misc/NEWS:5974 msgid "" "`Issue #21311 `__: Avoid exception in " "_osx_support with non-standard compiler configurations. Patch by John " "Szakmeister." msgstr "" "`Issue #21311 `__: Avoid exception in " "_osx_support with non-standard compiler configurations. Patch by John " "Szakmeister." #: ../../../Misc/NEWS:5977 msgid "" "`Issue #11571 `__: Ensure that the turtle " "window becomes the topmost window when launched on OS X." msgstr "" "`Issue #11571 `__: Ensure that the turtle " "window becomes the topmost window when launched on OS X." #: ../../../Misc/NEWS:5980 msgid "" "`Issue #21801 `__: Validate that " "__signature__ is None or an instance of Signature." msgstr "" "`Issue #21801 `__: Validate that " "__signature__ is None or an instance of Signature." #: ../../../Misc/NEWS:5982 msgid "" "`Issue #21923 `__: Prevent AttributeError in " "distutils.sysconfig.customize_compiler due to possible uninitialized " "_config_vars." msgstr "" "`Issue #21923 `__: Prevent AttributeError in " "distutils.sysconfig.customize_compiler due to possible uninitialized " "_config_vars." #: ../../../Misc/NEWS:5985 msgid "" "`Issue #21323 `__: Fix http.server to again " "handle scripts in CGI subdirectories, broken by the fix for security `issue " "#19435 `__. Patch by Zach Byrne." msgstr "" "`Issue #21323 `__: Fix http.server to again " "handle scripts in CGI subdirectories, broken by the fix for security `issue " "#19435 `__. Patch by Zach Byrne." #: ../../../Misc/NEWS:5988 msgid "" "`Issue #22733 `__: Fix ffi_prep_args not zero-" "extending argument values correctly on 64-bit Windows." msgstr "" "`Issue #22733 `__: Fix ffi_prep_args not zero-" "extending argument values correctly on 64-bit Windows." #: ../../../Misc/NEWS:5991 msgid "" "`Issue #23302 `__: Default to TCP_NODELAY=1 " "upon establishing an HTTPConnection. Removed use of hard-coded MSS as it's " "an optimization that's no longer needed with Nagle disabled." msgstr "" "`Issue #23302 `__: Default to TCP_NODELAY=1 " "upon establishing an HTTPConnection. Removed use of hard-coded MSS as it's " "an optimization that's no longer needed with Nagle disabled." #: ../../../Misc/NEWS:5998 msgid "" "`Issue #20577 `__: Configuration of the max " "line length for the FormatParagraph extension has been moved from the " "General tab of the Idle preferences dialog to the FormatParagraph tab of the " "Config Extensions dialog. Patch by Tal Einat." msgstr "" "`Issue #20577 `__: Configuration of the max " "line length for the FormatParagraph extension has been moved from the " "General tab of the Idle preferences dialog to the FormatParagraph tab of the " "Config Extensions dialog. Patch by Tal Einat." #: ../../../Misc/NEWS:6003 msgid "" "`Issue #16893 `__: Update Idle doc chapter to " "match current Idle and add new information." msgstr "" "`Issue #16893 `__: Update Idle doc chapter to " "match current Idle and add new information." #: ../../../Misc/NEWS:6006 msgid "" "`Issue #3068 `__: Add Idle extension " "configuration dialog to Options menu. Changes are written to HOME/.idlerc/" "config-extensions.cfg. Original patch by Tal Einat." msgstr "" "`Issue #3068 `__: Add Idle extension " "configuration dialog to Options menu. Changes are written to HOME/.idlerc/" "config-extensions.cfg. Original patch by Tal Einat." #: ../../../Misc/NEWS:6010 msgid "" "`Issue #16233 `__: A module browser (File : " "Class Browser, Alt+C) requires an editor window with a filename. When Class " "Browser is requested otherwise, from a shell, output window, or 'Untitled' " "editor, Idle no longer displays an error box. It now pops up an Open Module " "box (Alt+M). If a valid name is entered and a module is opened, a " "corresponding browser is also opened." msgstr "" "`Issue #16233 `__: A module browser (File : " "Class Browser, Alt+C) requires an editor window with a filename. When Class " "Browser is requested otherwise, from a shell, output window, or 'Untitled' " "editor, Idle no longer displays an error box. It now pops up an Open Module " "box (Alt+M). If a valid name is entered and a module is opened, a " "corresponding browser is also opened." #: ../../../Misc/NEWS:6016 msgid "" "`Issue #4832 `__: Save As to type Python files " "automatically adds .py to the name you enter (even if your system does not " "display it). Some systems automatically add .txt when type is Text files." msgstr "" "`Issue #4832 `__: Save As to type Python files " "automatically adds .py to the name you enter (even if your system does not " "display it). Some systems automatically add .txt when type is Text files." #: ../../../Misc/NEWS:6020 msgid "" "`Issue #21986 `__: Code objects are not " "normally pickled by the pickle module. To match this, they are no longer " "pickled when running under Idle." msgstr "" "`Issue #21986 `__: Code objects are not " "normally pickled by the pickle module. To match this, they are no longer " "pickled when running under Idle." #: ../../../Misc/NEWS:6023 msgid "" "`Issue #17390 `__: Adjust Editor window " "title; remove 'Python', move version to end." msgstr "" "`Issue #17390 `__: Adjust Editor window " "title; remove 'Python', move version to end." #: ../../../Misc/NEWS:6026 msgid "" "`Issue #14105 `__: Idle debugger breakpoints " "no longer disappear when inserting or deleting lines." msgstr "" "`Issue #14105 `__: Idle debugger breakpoints " "no longer disappear when inserting or deleting lines." #: ../../../Misc/NEWS:6029 msgid "" "`Issue #17172 `__: Turtledemo can now be run " "from Idle. Currently, the entry is on the Help menu, but it may move to Run. " "Patch by Ramchandra Apt and Lita Cho." msgstr "" "`Issue #17172 `__: Turtledemo can now be run " "from Idle. Currently, the entry is on the Help menu, but it may move to Run. " "Patch by Ramchandra Apt and Lita Cho." #: ../../../Misc/NEWS:6033 msgid "" "`Issue #21765 `__: Add support for non-ascii " "identifiers to HyperParser." msgstr "" "`Issue #21765 `__: Add support for non-ascii " "identifiers to HyperParser." #: ../../../Misc/NEWS:6035 msgid "" "`Issue #21940 `__: Add unittest for " "WidgetRedirector. Initial patch by Saimadhav Heblikar." msgstr "" "`Issue #21940 `__: Add unittest for " "WidgetRedirector. Initial patch by Saimadhav Heblikar." #: ../../../Misc/NEWS:6038 msgid "" "`Issue #18592 `__: Add unittest for " "SearchDialogBase. Patch by Phil Webster." msgstr "" "`Issue #18592 `__: Add unittest for " "SearchDialogBase. Patch by Phil Webster." #: ../../../Misc/NEWS:6040 msgid "" "`Issue #21694 `__: Add unittest for " "ParenMatch. Patch by Saimadhav Heblikar." msgstr "" "`Issue #21694 `__: Add unittest for " "ParenMatch. Patch by Saimadhav Heblikar." #: ../../../Misc/NEWS:6042 msgid "" "`Issue #21686 `__: add unittest for " "HyperParser. Original patch by Saimadhav Heblikar." msgstr "" "`Issue #21686 `__: add unittest for " "HyperParser. Original patch by Saimadhav Heblikar." #: ../../../Misc/NEWS:6045 msgid "" "`Issue #12387 `__: Add missing " "upper(lower)case versions of default Windows key bindings for Idle so Caps " "Lock does not disable them. Patch by Roger Serwy." msgstr "" "`Issue #12387 `__: Add missing " "upper(lower)case versions of default Windows key bindings for Idle so Caps " "Lock does not disable them. Patch by Roger Serwy." #: ../../../Misc/NEWS:6048 msgid "" "`Issue #21695 `__: Closing a Find-in-files " "output window while the search is still in progress no longer closes Idle." msgstr "" "`Issue #21695 `__: Closing a Find-in-files " "output window while the search is still in progress no longer closes Idle." #: ../../../Misc/NEWS:6051 msgid "" "`Issue #18910 `__: Add unittest for textView. " "Patch by Phil Webster." msgstr "" "`Issue #18910 `__: Add unittest for textView. " "Patch by Phil Webster." #: ../../../Misc/NEWS:6053 msgid "" "`Issue #18292 `__: Add unittest for " "AutoExpand. Patch by Saihadhav Heblikar." msgstr "" "`Issue #18292 `__: Add unittest for " "AutoExpand. Patch by Saihadhav Heblikar." #: ../../../Misc/NEWS:6055 msgid "" "`Issue #18409 `__: Add unittest for " "AutoComplete. Patch by Phil Webster." msgstr "" "`Issue #18409 `__: Add unittest for " "AutoComplete. Patch by Phil Webster." #: ../../../Misc/NEWS:6057 msgid "" "`Issue #21477 `__: htest.py - Improve " "framework, complete set of tests. Patches by Saimadhav Heblikar" msgstr "" "`Issue #21477 `__: htest.py - Improve " "framework, complete set of tests. Patches by Saimadhav Heblikar" #: ../../../Misc/NEWS:6060 msgid "" "`Issue #18104 `__: Add idlelib/idle_test/" "htest.py with a few sample tests to begin consolidating and improving human-" "validated tests of Idle. Change other files as needed to work with htest. " "Running the module as __main__ runs all tests." msgstr "" "`Issue #18104 `__: Add idlelib/idle_test/" "htest.py with a few sample tests to begin consolidating and improving human-" "validated tests of Idle. Change other files as needed to work with htest. " "Running the module as __main__ runs all tests." #: ../../../Misc/NEWS:6064 msgid "" "`Issue #21139 `__: Change default paragraph " "width to 72, the PEP 8 recommendation." msgstr "" "`Issue #21139 `__: Change default paragraph " "width to 72, the PEP 8 recommendation." #: ../../../Misc/NEWS:6066 msgid "" "`Issue #21284 `__: Paragraph reformat test " "passes after user changes reformat width." msgstr "" "`Issue #21284 `__: Paragraph reformat test " "passes after user changes reformat width." #: ../../../Misc/NEWS:6068 msgid "" "`Issue #17654 `__: Ensure IDLE menus are " "customized properly on OS X for non-framework builds and for all variants of " "Tk." msgstr "" "`Issue #17654 `__: Ensure IDLE menus are " "customized properly on OS X for non-framework builds and for all variants of " "Tk." #: ../../../Misc/NEWS:6071 msgid "" "`Issue #23180 `__: Rename IDLE \"Windows\" " "menu item to \"Window\". Patch by Al Sweigart." msgstr "" "`Issue #23180 `__: Rename IDLE \"Windows\" " "menu item to \"Window\". Patch by Al Sweigart." #: ../../../Misc/NEWS:6077 msgid "" "`Issue #15506 `__: Use standard " "PKG_PROG_PKG_CONFIG autoconf macro in the configure script." msgstr "" "`Issue #15506 `__: Use standard " "PKG_PROG_PKG_CONFIG autoconf macro in the configure script." #: ../../../Misc/NEWS:6080 msgid "" "`Issue #22935 `__: Allow the ssl module to be " "compiled if openssl doesn't support SSL 3." msgstr "" "`Issue #22935 `__: Allow the ssl module to be " "compiled if openssl doesn't support SSL 3." #: ../../../Misc/NEWS:6083 msgid "" "`Issue #22592 `__: Drop support of the " "Borland C compiler to build Python. The distutils module still supports it " "to build extensions." msgstr "" "`Issue #22592 `__: Drop support of the " "Borland C compiler to build Python. The distutils module still supports it " "to build extensions." #: ../../../Misc/NEWS:6086 msgid "" "`Issue #22591 `__: Drop support of MS-DOS, " "especially of the DJGPP compiler (MS-DOS port of GCC)." msgstr "" "`Issue #22591 `__: Drop support of MS-DOS, " "especially of the DJGPP compiler (MS-DOS port of GCC)." #: ../../../Misc/NEWS:6089 msgid "" "`Issue #16537 `__: Check whether self." "extensions is empty in setup.py. Patch by Jonathan Hosmer." msgstr "" "`Issue #16537 `__: Check whether self." "extensions is empty in setup.py. Patch by Jonathan Hosmer." #: ../../../Misc/NEWS:6092 msgid "" "`Issue #22359 `__: Remove incorrect uses of " "recursive make. Patch by Jonas Wagner." msgstr "" "`Issue #22359 `__: Remove incorrect uses of " "recursive make. Patch by Jonas Wagner." #: ../../../Misc/NEWS:6095 msgid "" "`Issue #21958 `__: Define HAVE_ROUND when " "building with Visual Studio 2013 and above. Patch by Zachary Turner." msgstr "" "`Issue #21958 `__: Define HAVE_ROUND when " "building with Visual Studio 2013 and above. Patch by Zachary Turner." #: ../../../Misc/NEWS:6098 msgid "" "`Issue #18093 `__: the programs that embed " "the CPython runtime are now in a separate \"Programs\" directory, rather " "than being kept in the Modules directory." msgstr "" "`Issue #18093 `__: the programs that embed " "the CPython runtime are now in a separate \"Programs\" directory, rather " "than being kept in the Modules directory." #: ../../../Misc/NEWS:6102 msgid "" "`Issue #15759 `__: \"make suspicious\", " "\"make linkcheck\" and \"make doctest\" in Doc/ now display special message " "when and only when there are failures." msgstr "" "`Issue #15759 `__: \"make suspicious\", " "\"make linkcheck\" and \"make doctest\" in Doc/ now display special message " "when and only when there are failures." #: ../../../Misc/NEWS:6105 msgid "" "`Issue #21141 `__: The Windows build process " "no longer attempts to find Perl, instead relying on OpenSSL source being " "configured and ready to build. The ``PCbuild\\build_ssl.py`` script has " "been re-written and re-named to ``PCbuild\\prepare_ssl.py``, and takes care " "of configuring OpenSSL source for both 32 and 64 bit platforms. OpenSSL " "sources obtained from svn.python.org will always be pre-configured and ready " "to build." msgstr "" "`Issue #21141 `__: The Windows build process " "no longer attempts to find Perl, instead relying on OpenSSL source being " "configured and ready to build. The ``PCbuild\\build_ssl.py`` script has " "been re-written and re-named to ``PCbuild\\prepare_ssl.py``, and takes care " "of configuring OpenSSL source for both 32 and 64 bit platforms. OpenSSL " "sources obtained from svn.python.org will always be pre-configured and ready " "to build." #: ../../../Misc/NEWS:6112 msgid "" "`Issue #21037 `__: Add a build option to " "enable AddressSanitizer support." msgstr "" "`Issue #21037 `__: Add a build option to " "enable AddressSanitizer support." #: ../../../Misc/NEWS:6114 msgid "" "`Issue #19962 `__: The Windows build process " "now creates \"python.bat\" in the root of the source tree, which passes all " "arguments through to the most recently built interpreter." msgstr "" "`Issue #19962 `__: The Windows build process " "now creates \"python.bat\" in the root of the source tree, which passes all " "arguments through to the most recently built interpreter." #: ../../../Misc/NEWS:6118 msgid "" "`Issue #21285 `__: Refactor and fix curses " "configure check to always search in a ncursesw directory." msgstr "" "`Issue #21285 `__: Refactor and fix curses " "configure check to always search in a ncursesw directory." #: ../../../Misc/NEWS:6121 msgid "" "`Issue #15234 `__: For BerkelyDB and Sqlite, " "only add the found library and include directories if they aren't already " "being searched. This avoids an explicit runtime library dependency." msgstr "" "`Issue #15234 `__: For BerkelyDB and Sqlite, " "only add the found library and include directories if they aren't already " "being searched. This avoids an explicit runtime library dependency." #: ../../../Misc/NEWS:6125 msgid "" "`Issue #17861 `__: Tools/scripts/" "generate_opcode_h.py automatically regenerates Include/opcode.h from Lib/" "opcode.py if the latter gets any change." msgstr "" "`Issue #17861 `__: Tools/scripts/" "generate_opcode_h.py automatically regenerates Include/opcode.h from Lib/" "opcode.py if the latter gets any change." #: ../../../Misc/NEWS:6128 msgid "" "`Issue #20644 `__: OS X installer build " "support for documentation build changes in 3.4.1: assume externally supplied " "sphinx-build is available in /usr/bin." msgstr "" "`Issue #20644 `__: OS X installer build " "support for documentation build changes in 3.4.1: assume externally supplied " "sphinx-build is available in /usr/bin." #: ../../../Misc/NEWS:6131 msgid "" "`Issue #20022 `__: Eliminate use of " "deprecated bundlebuilder in OS X builds." msgstr "" "`Issue #20022 `__: Eliminate use of " "deprecated bundlebuilder in OS X builds." #: ../../../Misc/NEWS:6133 msgid "" "`Issue #15968 `__: Incorporated Tcl, Tk, and " "Tix builds into the Windows build solution." msgstr "" "`Issue #15968 `__: Incorporated Tcl, Tk, and " "Tix builds into the Windows build solution." #: ../../../Misc/NEWS:6136 msgid "" "`Issue #17095 `__: Fix Modules/Setup *shared* " "support." msgstr "" "`Issue #17095 `__: Fix Modules/Setup *shared* " "support." #: ../../../Misc/NEWS:6138 msgid "" "`Issue #21811 `__: Anticipated fixes to " "support OS X versions > 10.9." msgstr "" "`Issue #21811 `__: Anticipated fixes to " "support OS X versions > 10.9." #: ../../../Misc/NEWS:6140 msgid "" "`Issue #21166 `__: Prevent possible segfaults " "and other random failures of python --generate-posix-vars in pybuilddir.txt " "build target." msgstr "" "`Issue #21166 `__: Prevent possible segfaults " "and other random failures of python --generate-posix-vars in pybuilddir.txt " "build target." #: ../../../Misc/NEWS:6143 msgid "" "`Issue #18096 `__: Fix library order returned " "by python-config." msgstr "" "`Issue #18096 `__: Fix library order returned " "by python-config." #: ../../../Misc/NEWS:6145 msgid "" "`Issue #17219 `__: Add library build dir for " "Python extension cross-builds." msgstr "" "`Issue #17219 `__: Add library build dir for " "Python extension cross-builds." #: ../../../Misc/NEWS:6147 msgid "" "`Issue #22919 `__: Windows build updated to " "support VC 14.0 (Visual Studio 2015), which will be used for the official " "release." msgstr "" "`Issue #22919 `__: Windows build updated to " "support VC 14.0 (Visual Studio 2015), which will be used for the official " "release." #: ../../../Misc/NEWS:6150 msgid "" "`Issue #21236 `__: Build _msi.pyd with " "cabinet.lib instead of fci.lib" msgstr "" "`Issue #21236 `__: Build _msi.pyd with " "cabinet.lib instead of fci.lib" #: ../../../Misc/NEWS:6152 msgid "" "`Issue #17128 `__: Use private version of " "OpenSSL for OS X 10.5+ installer." msgstr "" "`Issue #17128 `__: Use private version of " "OpenSSL for OS X 10.5+ installer." #: ../../../Misc/NEWS:6157 msgid "" "`Issue #14203 `__: Remove obsolete support " "for view==NULL in PyBuffer_FillInfo(), bytearray_getbuffer(), " "bytesiobuf_getbuffer() and array_buffer_getbuf(). All functions now raise " "BufferError in that case." msgstr "" "`Issue #14203 `__: Remove obsolete support " "for view==NULL in PyBuffer_FillInfo(), bytearray_getbuffer(), " "bytesiobuf_getbuffer() and array_buffer_getbuf(). All functions now raise " "BufferError in that case." #: ../../../Misc/NEWS:6161 msgid "" "`Issue #22445 `__: PyBuffer_IsContiguous() " "now implements precise contiguity tests, compatible with NumPy's " "NPY_RELAXED_STRIDES_CHECKING compilation flag. Previously the function " "reported false negatives for corner cases." msgstr "" "`Issue #22445 `__: PyBuffer_IsContiguous() " "now implements precise contiguity tests, compatible with NumPy's " "NPY_RELAXED_STRIDES_CHECKING compilation flag. Previously the function " "reported false negatives for corner cases." #: ../../../Misc/NEWS:6165 msgid "" "`Issue #22079 `__: PyType_Ready() now checks " "that statically allocated type has no dynamically allocated bases." msgstr "" "`Issue #22079 `__: PyType_Ready() now checks " "that statically allocated type has no dynamically allocated bases." #: ../../../Misc/NEWS:6168 msgid "" "`Issue #22453 `__: Removed non-documented " "macro PyObject_REPR()." msgstr "" "`Issue #22453 `__: Removed non-documented " "macro PyObject_REPR()." #: ../../../Misc/NEWS:6170 msgid "" "`Issue #18395 `__: Rename " "``_Py_char2wchar()`` to :c:func:`Py_DecodeLocale`, rename " "``_Py_wchar2char()`` to :c:func:`Py_EncodeLocale`, and document these " "functions." msgstr "" "`Issue #18395 `__: Rename " "``_Py_char2wchar()`` to :c:func:`Py_DecodeLocale`, rename " "``_Py_wchar2char()`` to :c:func:`Py_EncodeLocale`, and document these " "functions." #: ../../../Misc/NEWS:6174 msgid "" "`Issue #21233 `__: Add new C functions: " "PyMem_RawCalloc(), PyMem_Calloc(), PyObject_Calloc(), _PyObject_GC_Calloc(). " "bytes(int) is now using ``calloc()`` instead of ``malloc()`` for large " "objects which is faster and use less memory." msgstr "" "`Issue #21233 `__: Add new C functions: " "PyMem_RawCalloc(), PyMem_Calloc(), PyObject_Calloc(), _PyObject_GC_Calloc(). " "bytes(int) is now using ``calloc()`` instead of ``malloc()`` for large " "objects which is faster and use less memory." #: ../../../Misc/NEWS:6179 msgid "" "`Issue #20942 `__: " "PyImport_ImportFrozenModuleObject() no longer sets __file__ to match what " "importlib does; this affects _frozen_importlib as well as any module loaded " "using imp.init_frozen()." msgstr "" "`Issue #20942 `__: " "PyImport_ImportFrozenModuleObject() no longer sets __file__ to match what " "importlib does; this affects _frozen_importlib as well as any module loaded " "using imp.init_frozen()." #: ../../../Misc/NEWS:6186 msgid "" "`Issue #19548 `__: Update the codecs module " "documentation to better cover the distinction between text encodings and " "other codecs, together with other clarifications. Patch by Martin Panter." msgstr "" "`Issue #19548 `__: Update the codecs module " "documentation to better cover the distinction between text encodings and " "other codecs, together with other clarifications. Patch by Martin Panter." #: ../../../Misc/NEWS:6190 msgid "" "`Issue #22394 `__: Doc/Makefile now supports " "``make venv PYTHON=../python`` to create a venv for generating the " "documentation, e.g., ``make html PYTHON=venv/bin/python3``." msgstr "" "`Issue #22394 `__: Doc/Makefile now supports " "``make venv PYTHON=../python`` to create a venv for generating the " "documentation, e.g., ``make html PYTHON=venv/bin/python3``." #: ../../../Misc/NEWS:6194 msgid "" "`Issue #21514 `__: The documentation of the " "json module now refers to new JSON RFC 7159 instead of obsoleted RFC 4627." msgstr "" "`Issue #21514 `__: The documentation of the " "json module now refers to new JSON RFC 7159 instead of obsoleted RFC 4627." #: ../../../Misc/NEWS:6197 msgid "" "`Issue #21777 `__: The binary sequence " "methods on bytes and bytearray are now documented explicitly, rather than " "assuming users will be able to derive the expected behaviour from the " "behaviour of the corresponding str methods." msgstr "" "`Issue #21777 `__: The binary sequence " "methods on bytes and bytearray are now documented explicitly, rather than " "assuming users will be able to derive the expected behaviour from the " "behaviour of the corresponding str methods." #: ../../../Misc/NEWS:6201 msgid "" "`Issue #6916 `__: undocument deprecated " "asynchat.fifo class." msgstr "" "`Issue #6916 `__: undocument deprecated " "asynchat.fifo class." #: ../../../Misc/NEWS:6203 msgid "" "`Issue #17386 `__: Expanded functionality of " "the ``Doc/make.bat`` script to make it much more comparable to ``Doc/" "Makefile``." msgstr "" "`Issue #17386 `__: Expanded functionality of " "the ``Doc/make.bat`` script to make it much more comparable to ``Doc/" "Makefile``." #: ../../../Misc/NEWS:6206 msgid "" "`Issue #21312 `__: Update the thread_foobar.h " "template file to include newer threading APIs. Patch by Jack McCracken." msgstr "" "`Issue #21312 `__: Update the thread_foobar.h " "template file to include newer threading APIs. Patch by Jack McCracken." #: ../../../Misc/NEWS:6209 msgid "" "`Issue #21043 `__: Remove the recommendation " "for specific CA organizations and to mention the ability to load the OS " "certificates." msgstr "" "`Issue #21043 `__: Remove the recommendation " "for specific CA organizations and to mention the ability to load the OS " "certificates." #: ../../../Misc/NEWS:6212 msgid "" "`Issue #20765 `__: Add missing documentation " "for PurePath.with_name() and PurePath.with_suffix()." msgstr "" "`Issue #20765 `__: Add missing documentation " "for PurePath.with_name() and PurePath.with_suffix()." #: ../../../Misc/NEWS:6215 msgid "" "`Issue #19407 `__: New package installation " "and distribution guides based on the Python Packaging Authority tools. " "Existing guides have been retained as legacy links from the distutils docs, " "as they still contain some required reference material for tool developers " "that isn't recorded anywhere else." msgstr "" "`Issue #19407 `__: New package installation " "and distribution guides based on the Python Packaging Authority tools. " "Existing guides have been retained as legacy links from the distutils docs, " "as they still contain some required reference material for tool developers " "that isn't recorded anywhere else." #: ../../../Misc/NEWS:6221 msgid "" "`Issue #19697 `__: Document cases where " "__main__.__spec__ is None." msgstr "" "`Issue #19697 `__: Document cases where " "__main__.__spec__ is None." #: ../../../Misc/NEWS:6226 msgid "" "`Issue #18982 `__: Add tests for CLI of the " "calendar module." msgstr "" "`Issue #18982 `__: Add tests for CLI of the " "calendar module." #: ../../../Misc/NEWS:6228 msgid "" "`Issue #19548 `__: Added some additional " "checks to test_codecs to ensure that statements in the updated documentation " "remain accurate. Patch by Martin Panter." msgstr "" "`Issue #19548 `__: Added some additional " "checks to test_codecs to ensure that statements in the updated documentation " "remain accurate. Patch by Martin Panter." #: ../../../Misc/NEWS:6232 msgid "" "`Issue #22838 `__: All test_re tests now work " "with unittest test discovery." msgstr "" "`Issue #22838 `__: All test_re tests now work " "with unittest test discovery." #: ../../../Misc/NEWS:6234 msgid "" "`Issue #22173 `__: Update lib2to3 tests to " "use unittest test discovery." msgstr "" "`Issue #22173 `__: Update lib2to3 tests to " "use unittest test discovery." #: ../../../Misc/NEWS:6236 msgid "" "`Issue #16000 `__: Convert test_curses to use " "unittest." msgstr "" "`Issue #16000 `__: Convert test_curses to use " "unittest." #: ../../../Misc/NEWS:6238 msgid "" "`Issue #21456 `__: Skip two tests in " "test_urllib2net.py if _ssl module not present. Patch by Remi Pointel." msgstr "" "`Issue #21456 `__: Skip two tests in " "test_urllib2net.py if _ssl module not present. Patch by Remi Pointel." #: ../../../Misc/NEWS:6241 msgid "" "`Issue #20746 `__: Fix test_pdb to run in " "refleak mode (-R). Patch by Xavier de Gaye." msgstr "" "`Issue #20746 `__: Fix test_pdb to run in " "refleak mode (-R). Patch by Xavier de Gaye." #: ../../../Misc/NEWS:6244 msgid "" "`Issue #22060 `__: test_ctypes has been " "somewhat cleaned up and simplified; it now uses unittest test discovery to " "find its tests." msgstr "" "`Issue #22060 `__: test_ctypes has been " "somewhat cleaned up and simplified; it now uses unittest test discovery to " "find its tests." #: ../../../Misc/NEWS:6247 msgid "" "`Issue #22104 `__: regrtest.py no longer " "holds a reference to the suite of tests loaded from test modules that don't " "define test_main()." msgstr "" "`Issue #22104 `__: regrtest.py no longer " "holds a reference to the suite of tests loaded from test modules that don't " "define test_main()." #: ../../../Misc/NEWS:6250 msgid "" "`Issue #22111 `__: Assorted cleanups in " "test_imaplib. Patch by Milan Oberkirch." msgstr "" "`Issue #22111 `__: Assorted cleanups in " "test_imaplib. Patch by Milan Oberkirch." #: ../../../Misc/NEWS:6252 msgid "" "`Issue #22002 `__: Added " "``load_package_tests`` function to test.support and used it to implement/" "augment test discovery in test_asyncio, test_email, test_importlib, " "test_json, and test_tools." msgstr "" "`Issue #22002 `__: Added " "``load_package_tests`` function to test.support and used it to implement/" "augment test discovery in test_asyncio, test_email, test_importlib, " "test_json, and test_tools." #: ../../../Misc/NEWS:6256 msgid "" "`Issue #21976 `__: Fix test_ssl to accept " "LibreSSL version strings. Thanks to William Orr." msgstr "" "`Issue #21976 `__: Fix test_ssl to accept " "LibreSSL version strings. Thanks to William Orr." #: ../../../Misc/NEWS:6259 msgid "" "`Issue #21918 `__: Converted test_tools from " "a module to a package containing separate test files for each tested script." msgstr "" "`Issue #21918 `__: Converted test_tools from " "a module to a package containing separate test files for each tested script." #: ../../../Misc/NEWS:6262 msgid "" "`Issue #9554 `__: Use modern unittest features " "in test_argparse. Initial patch by Denver Coneybeare and Radu Voicilas." msgstr "" "`Issue #9554 `__: Use modern unittest features " "in test_argparse. Initial patch by Denver Coneybeare and Radu Voicilas." #: ../../../Misc/NEWS:6265 msgid "" "`Issue #20155 `__: Changed HTTP method names " "in failing tests in test_httpservers so that packet filtering software " "(specifically Windows Base Filtering Engine) does not interfere with the " "transaction semantics expected by the tests." msgstr "" "`Issue #20155 `__: Changed HTTP method names " "in failing tests in test_httpservers so that packet filtering software " "(specifically Windows Base Filtering Engine) does not interfere with the " "transaction semantics expected by the tests." #: ../../../Misc/NEWS:6269 msgid "" "`Issue #19493 `__: Refactored the ctypes test " "package to skip tests explicitly rather than silently." msgstr "" "`Issue #19493 `__: Refactored the ctypes test " "package to skip tests explicitly rather than silently." #: ../../../Misc/NEWS:6272 msgid "" "`Issue #18492 `__: All resources are now " "allowed when tests are not run by regrtest.py." msgstr "" "`Issue #18492 `__: All resources are now " "allowed when tests are not run by regrtest.py." #: ../../../Misc/NEWS:6275 msgid "" "`Issue #21634 `__: Fix pystone micro-" "benchmark: use floor division instead of true division to benchmark integers " "instead of floating point numbers. Set pystone version to 1.2. Patch written " "by Lennart Regebro." msgstr "" "`Issue #21634 `__: Fix pystone micro-" "benchmark: use floor division instead of true division to benchmark integers " "instead of floating point numbers. Set pystone version to 1.2. Patch written " "by Lennart Regebro." #: ../../../Misc/NEWS:6279 msgid "" "`Issue #21605 `__: Added tests for Tkinter " "images." msgstr "" "`Issue #21605 `__: Added tests for Tkinter " "images." #: ../../../Misc/NEWS:6281 msgid "" "`Issue #21493 `__: Added test for ntpath." "expanduser(). Original patch by Claudiu Popa." msgstr "" "`Issue #21493 `__: Added test for ntpath." "expanduser(). Original patch by Claudiu Popa." #: ../../../Misc/NEWS:6284 msgid "" "`Issue #19925 `__: Added tests for the spwd " "module. Original patch by Vajrasky Kok." msgstr "" "`Issue #19925 `__: Added tests for the spwd " "module. Original patch by Vajrasky Kok." #: ../../../Misc/NEWS:6286 msgid "" "`Issue #21522 `__: Added Tkinter tests for " "Listbox.itemconfigure(), PanedWindow.paneconfigure(), and Menu." "entryconfigure()." msgstr "" "`Issue #21522 `__: Added Tkinter tests for " "Listbox.itemconfigure(), PanedWindow.paneconfigure(), and Menu." "entryconfigure()." #: ../../../Misc/NEWS:6289 msgid "" "`Issue #17756 `__: Fix test_code test when " "run from the installed location." msgstr "" "`Issue #17756 `__: Fix test_code test when " "run from the installed location." #: ../../../Misc/NEWS:6291 msgid "" "`Issue #17752 `__: Fix distutils tests when " "run from the installed location." msgstr "" "`Issue #17752 `__: Fix distutils tests when " "run from the installed location." #: ../../../Misc/NEWS:6293 msgid "" "`Issue #18604 `__: Consolidated checks for " "GUI availability. All platforms now at least check whether Tk can be " "instantiated when the GUI resource is requested." msgstr "" "`Issue #18604 `__: Consolidated checks for " "GUI availability. All platforms now at least check whether Tk can be " "instantiated when the GUI resource is requested." #: ../../../Misc/NEWS:6297 msgid "" "`Issue #21275 `__: Fix a socket test on " "KFreeBSD." msgstr "" "`Issue #21275 `__: Fix a socket test on " "KFreeBSD." #: ../../../Misc/NEWS:6299 msgid "" "`Issue #21223 `__: Pass test_site/" "test_startup_imports when some of the extensions are built as builtins." msgstr "" "`Issue #21223 `__: Pass test_site/" "test_startup_imports when some of the extensions are built as builtins." #: ../../../Misc/NEWS:6302 msgid "" "`Issue #20635 `__: Added tests for Tk " "geometry managers." msgstr "" "`Issue #20635 `__: Added tests for Tk " "geometry managers." #: ../../../Misc/NEWS:6304 msgid "Add test case for freeze." msgstr "Ajoute un test pour *freeze*." #: ../../../Misc/NEWS:6306 msgid "" "`Issue #20743 `__: Fix a reference leak in " "test_tcl." msgstr "" "`Issue #20743 `__: Fix a reference leak in " "test_tcl." #: ../../../Misc/NEWS:6308 msgid "" "`Issue #21097 `__: Move test_namespace_pkgs " "into test_importlib." msgstr "" "`Issue #21097 `__: Move test_namespace_pkgs " "into test_importlib." #: ../../../Misc/NEWS:6310 msgid "" "`Issue #21503 `__: Use test_both() " "consistently in test_importlib." msgstr "" "`Issue #21503 `__: Use test_both() " "consistently in test_importlib." #: ../../../Misc/NEWS:6312 msgid "" "`Issue #20939 `__: Avoid various network test " "failures due to new redirect of http://www.python.org/ to https://www.python." "org: use http://www.example.com instead." msgstr "" "`Issue #20939 `__: Avoid various network test " "failures due to new redirect of http://www.python.org/ to https://www.python." "org: use http://www.example.com instead." #: ../../../Misc/NEWS:6316 msgid "" "`Issue #20668 `__: asyncio tests no longer " "rely on tests.txt file. (Patch by Vajrasky Kok)" msgstr "" "`Issue #20668 `__: asyncio tests no longer " "rely on tests.txt file. (Patch by Vajrasky Kok)" #: ../../../Misc/NEWS:6319 msgid "" "`Issue #21093 `__: Prevent failures of ctypes " "test_macholib on OS X if a copy of libz exists in $HOME/lib or /usr/local/" "lib." msgstr "" "`Issue #21093 `__: Prevent failures of ctypes " "test_macholib on OS X if a copy of libz exists in $HOME/lib or /usr/local/" "lib." #: ../../../Misc/NEWS:6322 msgid "" "`Issue #22770 `__: Prevent some Tk segfaults " "on OS X when running gui tests." msgstr "" "`Issue #22770 `__: Prevent some Tk segfaults " "on OS X when running gui tests." #: ../../../Misc/NEWS:6324 msgid "" "`Issue #23211 `__: Workaround test_logging " "failure on some OS X 10.6 systems." msgstr "" "`Issue #23211 `__: Workaround test_logging " "failure on some OS X 10.6 systems." #: ../../../Misc/NEWS:6326 msgid "" "`Issue #23345 `__: Prevent test_ssl failures " "with large OpenSSL patch level values (like 0.9.8zc)." msgstr "" "`Issue #23345 `__: Prevent test_ssl failures " "with large OpenSSL patch level values (like 0.9.8zc)." #: ../../../Misc/NEWS:6332 msgid "" "`Issue #22314 `__: pydoc now works when the " "LINES environment variable is set." msgstr "" "`Issue #22314 `__: pydoc now works when the " "LINES environment variable is set." #: ../../../Misc/NEWS:6334 msgid "" "`Issue #22615 `__: Argument Clinic now " "supports the \"type\" argument for the int converter. This permits using " "the int converter with enums and typedefs." msgstr "" "`Issue #22615 `__: Argument Clinic now " "supports the \"type\" argument for the int converter. This permits using " "the int converter with enums and typedefs." #: ../../../Misc/NEWS:6338 msgid "" "`Issue #20076 `__: The makelocalealias.py " "script no longer ignores UTF-8 mapping." msgstr "" "`Issue #20076 `__: The makelocalealias.py " "script no longer ignores UTF-8 mapping." #: ../../../Misc/NEWS:6340 msgid "" "`Issue #20079 `__: The makelocalealias.py " "script now can parse the SUPPORTED file from glibc sources and supports " "command line options for source paths." msgstr "" "`Issue #20079 `__: The makelocalealias.py " "script now can parse the SUPPORTED file from glibc sources and supports " "command line options for source paths." #: ../../../Misc/NEWS:6343 msgid "" "`Issue #22201 `__: Command-line interface of " "the zipfile module now correctly extracts ZIP files with directory entries. " "Patch by Ryan Wilson." msgstr "" "`Issue #22201 `__: Command-line interface of " "the zipfile module now correctly extracts ZIP files with directory entries. " "Patch by Ryan Wilson." #: ../../../Misc/NEWS:6346 msgid "" "`Issue #22120 `__: For functions using an " "unsigned integer return converter, Argument Clinic now generates a cast to " "that type for the comparison to -1 in the generated code. (This suppresses " "a compilation warning.)" msgstr "" "`Issue #22120 `__: For functions using an " "unsigned integer return converter, Argument Clinic now generates a cast to " "that type for the comparison to -1 in the generated code. (This suppresses " "a compilation warning.)" #: ../../../Misc/NEWS:6350 msgid "" "`Issue #18974 `__: Tools/scripts/diff.py now " "uses argparse instead of optparse." msgstr "" "`Issue #18974 `__: Tools/scripts/diff.py now " "uses argparse instead of optparse." #: ../../../Misc/NEWS:6352 msgid "" "`Issue #21906 `__: Make Tools/scripts/md5sum." "py work in Python 3. Patch by Zachary Ware." msgstr "" "`Issue #21906 `__: Make Tools/scripts/md5sum." "py work in Python 3. Patch by Zachary Ware." #: ../../../Misc/NEWS:6355 msgid "" "`Issue #21629 `__: Fix Argument Clinic's \"--" "converters\" feature." msgstr "" "`Issue #21629 `__: Fix Argument Clinic's \"--" "converters\" feature." #: ../../../Misc/NEWS:6357 msgid "Add support for ``yield from`` to 2to3." msgstr "Ajoute le support de ``yield from`` à *2to3*." #: ../../../Misc/NEWS:6359 msgid "Add support for the PEP 465 matrix multiplication operator to 2to3." msgstr "" #: ../../../Misc/NEWS:6361 msgid "" "`Issue #16047 `__: Fix module exception list " "and __file__ handling in freeze. Patch by Meador Inge." msgstr "" "`Issue #16047 `__: Fix module exception list " "and __file__ handling in freeze. Patch by Meador Inge." #: ../../../Misc/NEWS:6364 msgid "" "`Issue #11824 `__: Consider ABI tags in " "freeze. Patch by Meador Inge." msgstr "" "`Issue #11824 `__: Consider ABI tags in " "freeze. Patch by Meador Inge." #: ../../../Misc/NEWS:6366 msgid "" "`Issue #20535 `__: PYTHONWARNING no longer " "affects the run_tests.py script. Patch by Arfrever Frehtes Taifersar " "Arahesis." msgstr "" "`Issue #20535 `__: PYTHONWARNING no longer " "affects the run_tests.py script. Patch by Arfrever Frehtes Taifersar " "Arahesis." #: ../../../Misc/NEWS:6372 msgid "" "`Issue #23260 `__: Update Windows installer" msgstr "" "`Issue #23260 `__: Update Windows installer" #: ../../../Misc/NEWS:6374 msgid "" "The bundled version of Tcl/Tk has been updated to 8.6.3. The most visible " "result of this change is the addition of new native file dialogs when " "running on Windows Vista or newer. See Tcl/Tk's TIP 432 for more " "information. Also, this version of Tcl/Tk includes support for Windows 10." msgstr "" #: ../../../Misc/NEWS:6379 msgid "" "`Issue #17896 `__: The Windows build scripts " "now expect external library sources to be in ``PCbuild\\..\\externals`` " "rather than ``PCbuild\\..\\..``." msgstr "" "`Issue #17896 `__: The Windows build scripts " "now expect external library sources to be in ``PCbuild\\..\\externals`` " "rather than ``PCbuild\\..\\..``." #: ../../../Misc/NEWS:6382 msgid "" "`Issue #17717 `__: The Windows build scripts " "now use a copy of NASM pulled from svn.python.org to build OpenSSL." msgstr "" "`Issue #17717 `__: The Windows build scripts " "now use a copy of NASM pulled from svn.python.org to build OpenSSL." #: ../../../Misc/NEWS:6385 msgid "" "`Issue #21907 `__: Improved the batch scripts " "provided for building Python." msgstr "" "`Issue #21907 `__: Improved the batch scripts " "provided for building Python." #: ../../../Misc/NEWS:6387 msgid "" "`Issue #22644 `__: The bundled version of " "OpenSSL has been updated to 1.0.1j." msgstr "" "`Issue #22644 `__: The bundled version of " "OpenSSL has been updated to 1.0.1j." #: ../../../Misc/NEWS:6389 msgid "" "`Issue #10747 `__: Use versioned labels in " "the Windows start menu. Patch by Olive Kilburn." msgstr "" "`Issue #10747 `__: Use versioned labels in " "the Windows start menu. Patch by Olive Kilburn." #: ../../../Misc/NEWS:6392 msgid "" "`Issue #22980 `__: .pyd files with a version " "and platform tag (for example, \".cp35-win32.pyd\") will now be loaded in " "preference to those without tags." msgstr "" "`Issue #22980 `__: .pyd files with a version " "and platform tag (for example, \".cp35-win32.pyd\") will now be loaded in " "preference to those without tags." #: ../../../Misc/NEWS:6397 msgid "Python 3.4.0" msgstr "Python 3.4.0" #: ../../../Misc/NEWS:6399 msgid "Release date: 2014-03-16" msgstr "" #: ../../../Misc/NEWS:6404 msgid "" "`Issue #20939 `__: Fix test_geturl failure in " "test_urllibnet due to new redirect of http://www.python.org/ to https://www." "python.org." msgstr "" "`Issue #20939 `__: Fix test_geturl failure in " "test_urllibnet due to new redirect of http://www.python.org/ to https://www." "python.org." #: ../../../Misc/NEWS:6410 msgid "Merge in all documentation changes since branching 3.4.0rc1." msgstr "" #: ../../../Misc/NEWS:6414 msgid "Python 3.4.0 release candidate 3" msgstr "" #: ../../../Misc/NEWS:6416 msgid "Release date: 2014-03-09" msgstr "Date de sortie : 2014-03-09" #: ../../../Misc/NEWS:6421 msgid "" "`Issue #20786 `__: Fix signatures for dict." "__delitem__ and property.__delete__ builtins." msgstr "" "`Issue #20786 `__: Fix signatures for dict." "__delitem__ and property.__delete__ builtins." #: ../../../Misc/NEWS:6427 msgid "" "`Issue #20839 `__: Don't trigger a " "DeprecationWarning in the still supported pkgutil.get_loader() API when " "__loader__ isn't set on a module (nor when pkgutil.find_loader() is called " "directly)." msgstr "" "`Issue #20839 `__: Don't trigger a " "DeprecationWarning in the still supported pkgutil.get_loader() API when " "__loader__ isn't set on a module (nor when pkgutil.find_loader() is called " "directly)." #: ../../../Misc/NEWS:6434 msgid "" "`Issue #14512 `__: Launch pydoc -b instead of " "pydocgui.pyw on Windows." msgstr "" "`Issue #14512 `__: Launch pydoc -b instead of " "pydocgui.pyw on Windows." #: ../../../Misc/NEWS:6436 msgid "" "`Issue #20748 `__: Uninstalling pip does not " "leave behind the pyc of the uninstaller anymore." msgstr "" "`Issue #20748 `__: Uninstalling pip does not " "leave behind the pyc of the uninstaller anymore." #: ../../../Misc/NEWS:6439 msgid "" "`Issue #20568 `__: The Windows installer now " "installs the unversioned ``pip`` command in addition to the versioned " "``pip3`` and ``pip3.4`` commands." msgstr "" "`Issue #20568 `__: The Windows installer now " "installs the unversioned ``pip`` command in addition to the versioned " "``pip3`` and ``pip3.4`` commands." #: ../../../Misc/NEWS:6442 msgid "" "`Issue #20757 `__: The ensurepip helper for " "the Windows uninstaller now skips uninstalling pip (rather than failing) if " "the user has updated pip to a different version from the one bundled with " "ensurepip." msgstr "" "`Issue #20757 `__: The ensurepip helper for " "the Windows uninstaller now skips uninstalling pip (rather than failing) if " "the user has updated pip to a different version from the one bundled with " "ensurepip." #: ../../../Misc/NEWS:6446 msgid "" "`Issue #20465 `__: Update OS X and Windows " "installer builds to use SQLite 3.8.3.1." msgstr "" "`Issue #20465 `__: Update OS X and Windows " "installer builds to use SQLite 3.8.3.1." #: ../../../Misc/NEWS:6451 msgid "Python 3.4.0 release candidate 2" msgstr "" #: ../../../Misc/NEWS:6453 msgid "Release date: 2014-02-23" msgstr "" #: ../../../Misc/NEWS:6458 msgid "" "`Issue #20625 `__: Parameter names in " "__annotations__ were not mangled properly. Discovered by Jonas Wielicki, " "patch by Yury Selivanov." msgstr "" "`Issue #20625 `__: Parameter names in " "__annotations__ were not mangled properly. Discovered by Jonas Wielicki, " "patch by Yury Selivanov." #: ../../../Misc/NEWS:6461 msgid "" "`Issue #20261 `__: In pickle, lookup " "__getnewargs__ and __getnewargs_ex__ on the type of the object." msgstr "" "`Issue #20261 `__: In pickle, lookup " "__getnewargs__ and __getnewargs_ex__ on the type of the object." #: ../../../Misc/NEWS:6464 msgid "" "`Issue #20619 `__: Give the AST nodes of " "keyword-only arguments a column and line number." msgstr "" "`Issue #20619 `__: Give the AST nodes of " "keyword-only arguments a column and line number." #: ../../../Misc/NEWS:6467 msgid "" "`Issue #20526 `__: Revert changes of `issue " "#19466 `__ which introduces a regression: " "don't clear anymore the state of Python threads early during the Python " "shutdown." msgstr "" "`Issue #20526 `__: Revert changes of `issue " "#19466 `__ which introduces a regression: " "don't clear anymore the state of Python threads early during the Python " "shutdown." #: ../../../Misc/NEWS:6474 msgid "" "`Issue #20710 `__: The pydoc summary line no " "longer displays the \"self\" parameter for bound methods." msgstr "" "`Issue #20710 `__: The pydoc summary line no " "longer displays the \"self\" parameter for bound methods." #: ../../../Misc/NEWS:6477 msgid "" "`Issue #20566 `__: Change asyncio." "as_completed() to use a Queue, to avoid O(N**2) behavior." msgstr "" "`Issue #20566 `__: Change asyncio." "as_completed() to use a Queue, to avoid O(N**2) behavior." #: ../../../Misc/NEWS:6480 msgid "" "`Issue #20704 `__: Implement new debug API in " "asyncio. Add new methods BaseEventLoop.set_debug() and BaseEventLoop." "get_debug(). Add support for setting 'asyncio.tasks._DEBUG' variable with " "'PYTHONASYNCIODEBUG' environment variable." msgstr "" "`Issue #20704 `__: Implement new debug API in " "asyncio. Add new methods BaseEventLoop.set_debug() and BaseEventLoop." "get_debug(). Add support for setting 'asyncio.tasks._DEBUG' variable with " "'PYTHONASYNCIODEBUG' environment variable." #: ../../../Misc/NEWS:6485 msgid "" "asyncio: Refactoring and fixes: BaseEventLoop.sock_connect() raises an error " "if the address is not resolved; use __slots__ in Handle and TimerHandle; " "as_completed() and wait() raise TypeError if the passed list of Futures is a " "single Future; call_soon() and other 'call_*()' functions raise TypeError if " "the passed callback is a coroutine function; _ProactorBasePipeTransport uses " "_FlowControlMixin; WriteTransport.set_write_buffer_size() calls " "_maybe_pause_protocol() to consider pausing receiving if the watermark " "limits have changed; fix _check_resolved_address() for IPv6 address; and " "other minor improvements, along with multiple documentation updates." msgstr "" #: ../../../Misc/NEWS:6496 msgid "" "`Issue #20684 `__: Fix inspect." "getfullargspec() to not to follow __wrapped__ chains. Make its behaviour " "consistent with bound methods first argument. Patch by Nick Coghlan and Yury " "Selivanov." msgstr "" "`Issue #20684 `__: Fix inspect." "getfullargspec() to not to follow __wrapped__ chains. Make its behaviour " "consistent with bound methods first argument. Patch by Nick Coghlan and Yury " "Selivanov." #: ../../../Misc/NEWS:6500 msgid "" "`Issue #20681 `__: Add new error handling API " "in asyncio. New APIs: loop.set_exception_handler(), loop." "default_exception_handler(), and loop.call_exception_handler()." msgstr "" "`Issue #20681 `__: Add new error handling API " "in asyncio. New APIs: loop.set_exception_handler(), loop." "default_exception_handler(), and loop.call_exception_handler()." #: ../../../Misc/NEWS:6504 msgid "" "`Issue #20673 `__: Implement support for UNIX " "Domain Sockets in asyncio. New APIs: loop.create_unix_connection(), loop." "create_unix_server(), streams.open_unix_connection(), and streams." "start_unix_server()." msgstr "" "`Issue #20673 `__: Implement support for UNIX " "Domain Sockets in asyncio. New APIs: loop.create_unix_connection(), loop." "create_unix_server(), streams.open_unix_connection(), and streams." "start_unix_server()." #: ../../../Misc/NEWS:6508 msgid "" "`Issue #20616 `__: Add a format() method to " "tracemalloc.Traceback." msgstr "" "`Issue #20616 `__: Add a format() method to " "tracemalloc.Traceback." #: ../../../Misc/NEWS:6510 msgid "" "`Issue #19744 `__: the ensurepip installation " "step now just prints a warning to stderr rather than failing outright if SSL/" "TLS is unavailable. This allows local installation of POSIX builds without " "SSL/TLS support." msgstr "" "`Issue #19744 `__: the ensurepip installation " "step now just prints a warning to stderr rather than failing outright if SSL/" "TLS is unavailable. This allows local installation of POSIX builds without " "SSL/TLS support." #: ../../../Misc/NEWS:6514 msgid "" "`Issue #20594 `__: Avoid name clash with the " "libc function posix_close." msgstr "" "`Issue #20594 `__: Avoid name clash with the " "libc function posix_close." #: ../../../Misc/NEWS:6519 msgid "" "`Issue #20641 `__: Run MSI custom actions " "(pip installation, pyc compilation) with the NoImpersonate flag, to support " "elevated execution (UAC)." msgstr "" "`Issue #20641 `__: Run MSI custom actions " "(pip installation, pyc compilation) with the NoImpersonate flag, to support " "elevated execution (UAC)." #: ../../../Misc/NEWS:6522 msgid "" "`Issue #20221 `__: Removed conflicting (or " "circular) hypot definition when compiled with VS 2010 or above. Initial " "patch by Tabrez Mohammed." msgstr "" "`Issue #20221 `__: Removed conflicting (or " "circular) hypot definition when compiled with VS 2010 or above. Initial " "patch by Tabrez Mohammed." #: ../../../Misc/NEWS:6525 msgid "" "`Issue #20609 `__: Restored the ability to " "build 64-bit Windows binaries on 32-bit Windows, which was broken by the " "change in `issue #19788 `__." msgstr "" "`Issue #20609 `__: Restored the ability to " "build 64-bit Windows binaries on 32-bit Windows, which was broken by the " "change in `issue #19788 `__." #: ../../../Misc/NEWS:6530 msgid "Python 3.4.0 release candidate 1" msgstr "" #: ../../../Misc/NEWS:6532 msgid "Release date: 2014-02-10" msgstr "Date de sortie : 2014-02-10" #: ../../../Misc/NEWS:6537 msgid "" "`Issue #19255 `__: The builtins module is " "restored to initial value before cleaning other modules. The sys and " "builtins modules are cleaned last." msgstr "" "`Issue #19255 `__: The builtins module is " "restored to initial value before cleaning other modules. The sys and " "builtins modules are cleaned last." #: ../../../Misc/NEWS:6540 msgid "" "`Issue #20588 `__: Make Python-ast.c C89 " "compliant." msgstr "" "`Issue #20588 `__: Make Python-ast.c C89 " "compliant." #: ../../../Misc/NEWS:6542 msgid "" "`Issue #20437 `__: Fixed 22 potential bugs " "when deleting object references." msgstr "" "`Issue #20437 `__: Fixed 22 potential bugs " "when deleting object references." #: ../../../Misc/NEWS:6544 msgid "" "`Issue #20500 `__: Displaying an exception at " "interpreter shutdown no longer risks triggering an assertion failure in " "PyObject_Str." msgstr "" "`Issue #20500 `__: Displaying an exception at " "interpreter shutdown no longer risks triggering an assertion failure in " "PyObject_Str." #: ../../../Misc/NEWS:6547 msgid "" "`Issue #20538 `__: UTF-7 incremental decoder " "produced inconsistent string when input was truncated in BASE64 section." msgstr "" "`Issue #20538 `__: UTF-7 incremental decoder " "produced inconsistent string when input was truncated in BASE64 section." #: ../../../Misc/NEWS:6550 msgid "" "`Issue #20404 `__: io.TextIOWrapper (and " "hence the open() builtin) now uses the internal codec marking system added " "for `issue #19619 `__ to throw LookupError " "for known non-text encodings at stream construction time. The existing " "output type checks remain in place to deal with unmarked third party codecs." msgstr "" "`Issue #20404 `__: io.TextIOWrapper (and " "hence the open() builtin) now uses the internal codec marking system added " "for `issue #19619 `__ to throw LookupError " "for known non-text encodings at stream construction time. The existing " "output type checks remain in place to deal with unmarked third party codecs." #: ../../../Misc/NEWS:6556 msgid "`Issue #17162 `__: Add PyType_GetSlot." msgstr "`Issue #17162 `__: Add PyType_GetSlot." #: ../../../Misc/NEWS:6558 msgid "" "`Issue #20162 `__: Fix an alignment issue in " "the siphash24() hash function which caused a crash on PowerPC 64-bit (ppc64)." msgstr "" "`Issue #20162 `__: Fix an alignment issue in " "the siphash24() hash function which caused a crash on PowerPC 64-bit (ppc64)." #: ../../../Misc/NEWS:6564 msgid "" "`Issue #20530 `__: The signatures for slot " "builtins have been updated to reflect the fact that they only accept " "positional-only arguments." msgstr "" "`Issue #20530 `__: The signatures for slot " "builtins have been updated to reflect the fact that they only accept " "positional-only arguments." #: ../../../Misc/NEWS:6567 msgid "" "`Issue #20517 `__: Functions in the os module " "that accept two filenames now register both filenames in the exception on " "failure." msgstr "" "`Issue #20517 `__: Functions in the os module " "that accept two filenames now register both filenames in the exception on " "failure." #: ../../../Misc/NEWS:6570 msgid "" "`Issue #20563 `__: The ipaddress module API " "is now considered stable." msgstr "" "`Issue #20563 `__: The ipaddress module API " "is now considered stable." #: ../../../Misc/NEWS:6572 msgid "" "`Issue #14983 `__: email.generator now always " "adds a line end after each MIME boundary marker, instead of doing so only " "when there is an epilogue. This fixes an RFC compliance bug and solves an " "issue with signed MIME parts." msgstr "" "`Issue #14983 `__: email.generator now always " "adds a line end after each MIME boundary marker, instead of doing so only " "when there is an epilogue. This fixes an RFC compliance bug and solves an " "issue with signed MIME parts." #: ../../../Misc/NEWS:6576 msgid "" "`Issue #20540 `__: Fix a performance " "regression (vs. Python 3.2) when layering a multiprocessing Connection over " "a TCP socket. For small payloads, Nagle's algorithm would introduce idle " "delays before the entire transmission of a message." msgstr "" "`Issue #20540 `__: Fix a performance " "regression (vs. Python 3.2) when layering a multiprocessing Connection over " "a TCP socket. For small payloads, Nagle's algorithm would introduce idle " "delays before the entire transmission of a message." #: ../../../Misc/NEWS:6581 msgid "" "`Issue #16983 `__: the new email header " "parsing code will now decode encoded words that are (incorrectly) surrounded " "by quotes, and register a defect." msgstr "" "`Issue #16983 `__: the new email header " "parsing code will now decode encoded words that are (incorrectly) surrounded " "by quotes, and register a defect." #: ../../../Misc/NEWS:6584 msgid "" "`Issue #19772 `__: email.generator no longer " "mutates the message object when doing a down-transform from 8bit to 7bit " "CTEs." msgstr "" "`Issue #19772 `__: email.generator no longer " "mutates the message object when doing a down-transform from 8bit to 7bit " "CTEs." #: ../../../Misc/NEWS:6587 msgid "" "`Issue #20536 `__: the statistics module now " "correctly handle Decimal instances with positive exponents" msgstr "" "`Issue #20536 `__: the statistics module now " "correctly handle Decimal instances with positive exponents" #: ../../../Misc/NEWS:6590 msgid "" "`Issue #18805 `__: the netmask/hostmask " "parsing in ipaddress now more reliably filters out illegal values and " "correctly allows any valid prefix length." msgstr "" "`Issue #18805 `__: the netmask/hostmask " "parsing in ipaddress now more reliably filters out illegal values and " "correctly allows any valid prefix length." #: ../../../Misc/NEWS:6593 msgid "" "`Issue #20481 `__: For at least Python 3.4, " "the statistics module will require that all inputs for a single operation be " "of a single consistent type, or else a mixed of ints and a single other " "consistent type. This avoids some interoperability issues that arose with " "the previous approach of coercing to a suitable common type." msgstr "" "`Issue #20481 `__: For at least Python 3.4, " "the statistics module will require that all inputs for a single operation be " "of a single consistent type, or else a mixed of ints and a single other " "consistent type. This avoids some interoperability issues that arose with " "the previous approach of coercing to a suitable common type." #: ../../../Misc/NEWS:6599 msgid "" "`Issue #20478 `__: the statistics module now " "treats collections.Counter inputs like any other iterable." msgstr "" "`Issue #20478 `__: the statistics module now " "treats collections.Counter inputs like any other iterable." #: ../../../Misc/NEWS:6602 msgid "" "`Issue #17369 `__: get_filename was raising " "an exception if the filename parameter's RFC2231 encoding was broken in " "certain ways. This was a regression relative to python2." msgstr "" "`Issue #17369 `__: get_filename was raising " "an exception if the filename parameter's RFC2231 encoding was broken in " "certain ways. This was a regression relative to python2." #: ../../../Misc/NEWS:6606 msgid "" "`Issue #20013 `__: Some imap servers " "disconnect if the current mailbox is deleted, and imaplib did not handle " "that case gracefully. Now it handles the 'bye' correctly." msgstr "" "`Issue #20013 `__: Some imap servers " "disconnect if the current mailbox is deleted, and imaplib did not handle " "that case gracefully. Now it handles the 'bye' correctly." #: ../../../Misc/NEWS:6610 msgid "" "`Issue #20531 `__: Revert 3.4 version of fix " "for #19063, and apply the 3.3 version. That is, do *not* raise an error if " "unicode is passed to email.message.Message.set_payload." msgstr "" "`Issue #20531 `__: Revert 3.4 version of fix " "for #19063, and apply the 3.3 version. That is, do *not* raise an error if " "unicode is passed to email.message.Message.set_payload." #: ../../../Misc/NEWS:6614 msgid "" "`Issue #20476 `__: If a non-compat32 policy " "is used with any of the email parsers, EmailMessage is now used as the " "factory class. The factory class should really come from the policy; that " "will get fixed in 3.5." msgstr "" "`Issue #20476 `__: If a non-compat32 policy " "is used with any of the email parsers, EmailMessage is now used as the " "factory class. The factory class should really come from the policy; that " "will get fixed in 3.5." #: ../../../Misc/NEWS:6618 msgid "" "`Issue #19920 `__: TarFile.list() no longer " "fails when outputs a listing containing non-encodable characters. Based on " "patch by Vajrasky Kok." msgstr "" "`Issue #19920 `__: TarFile.list() no longer " "fails when outputs a listing containing non-encodable characters. Based on " "patch by Vajrasky Kok." #: ../../../Misc/NEWS:6621 msgid "" "`Issue #20515 `__: Fix NULL pointer " "dereference introduced by `issue #20368 `__." msgstr "" "`Issue #20515 `__: Fix NULL pointer " "dereference introduced by `issue #20368 `__." #: ../../../Misc/NEWS:6623 msgid "" "`Issue #19186 `__: Restore namespacing of " "expat symbols inside the pyexpat module." msgstr "" "`Issue #19186 `__: Restore namespacing of " "expat symbols inside the pyexpat module." #: ../../../Misc/NEWS:6625 msgid "" "`Issue #20053 `__: ensurepip (and hence venv) " "are no longer affected by the settings in the default pip configuration file." msgstr "" "`Issue #20053 `__: ensurepip (and hence venv) " "are no longer affected by the settings in the default pip configuration file." #: ../../../Misc/NEWS:6628 msgid "" "`Issue #20426 `__: When passing the re.DEBUG " "flag, re.compile() displays the debug output every time it is called, " "regardless of the compilation cache." msgstr "" "`Issue #20426 `__: When passing the re.DEBUG " "flag, re.compile() displays the debug output every time it is called, " "regardless of the compilation cache." #: ../../../Misc/NEWS:6631 msgid "" "`Issue #20368 `__: The null character now " "correctly passed from Tcl to Python. Improved error handling in variables-" "related commands." msgstr "" "`Issue #20368 `__: The null character now " "correctly passed from Tcl to Python. Improved error handling in variables-" "related commands." #: ../../../Misc/NEWS:6634 msgid "" "`Issue #20435 `__: Fix _pyio.StringIO." "getvalue() to take into account newline translation settings." msgstr "" "`Issue #20435 `__: Fix _pyio.StringIO." "getvalue() to take into account newline translation settings." #: ../../../Misc/NEWS:6637 msgid "tracemalloc: Fix slicing traces and fix slicing a traceback." msgstr "" #: ../../../Misc/NEWS:6639 msgid "" "`Issue #20354 `__: Fix an alignment issue in " "the tracemalloc module on 64-bit platforms. Bug seen on 64-bit Linux when " "using \"make profile-opt\"." msgstr "" "`Issue #20354 `__: Fix an alignment issue in " "the tracemalloc module on 64-bit platforms. Bug seen on 64-bit Linux when " "using \"make profile-opt\"." #: ../../../Misc/NEWS:6642 msgid "" "`Issue #17159 `__: inspect.signature now " "accepts duck types of functions, which adds support for Cython functions. " "Initial patch by Stefan Behnel." msgstr "" "`Issue #17159 `__: inspect.signature now " "accepts duck types of functions, which adds support for Cython functions. " "Initial patch by Stefan Behnel." #: ../../../Misc/NEWS:6645 msgid "" "`Issue #18801 `__: Fix inspect." "classify_class_attrs to correctly classify object.__new__ and object." "__init__." msgstr "" "`Issue #18801 `__: Fix inspect." "classify_class_attrs to correctly classify object.__new__ and object." "__init__." #: ../../../Misc/NEWS:6648 msgid "Fixed cmath.isinf's name in its argument parsing code." msgstr "" #: ../../../Misc/NEWS:6650 msgid "" "`Issue #20311 `__, #20452: poll and epoll now " "round the timeout away from zero, instead of rounding towards zero, in " "select and selectors modules: select.epoll.poll(), selectors.PollSelector." "poll() and selectors.EpollSelector.poll(). For example, a timeout of one " "microsecond (1e-6) is now rounded to one millisecondi (1e-3), instead of " "being rounded to zero. However, the granularity property and asyncio's " "resolution feature were removed again." msgstr "" "`Issue #20311 `__, #20452: poll and epoll now " "round the timeout away from zero, instead of rounding towards zero, in " "select and selectors modules: select.epoll.poll(), selectors.PollSelector." "poll() and selectors.EpollSelector.poll(). For example, a timeout of one " "microsecond (1e-6) is now rounded to one millisecondi (1e-3), instead of " "being rounded to zero. However, the granularity property and asyncio's " "resolution feature were removed again." #: ../../../Misc/NEWS:6658 msgid "" "asyncio: Some refactoring; various fixes; add write flow control to unix " "pipes; Future.set_exception() instantiates the exception argument if it is a " "class; improved proactor pipe transport; support wait_for(f, None); don't " "log broken/disconnected pipes; use ValueError instead of assert for " "forbidden subprocess_{shell,exec} arguments; added a convenience API for " "subprocess management; added StreamReader.at_eof(); properly handle " "duplicate coroutines/futures in gather(), wait(), as_completed(); use a " "bytearray for buffering in StreamReader; and more." msgstr "" #: ../../../Misc/NEWS:6668 msgid "" "`Issue #20288 `__: fix handling of invalid " "numeric charrefs in HTMLParser." msgstr "" "`Issue #20288 `__: fix handling of invalid " "numeric charrefs in HTMLParser." #: ../../../Misc/NEWS:6670 msgid "" "`Issue #20424 `__: Python implementation of " "io.StringIO now supports lone surrogates." msgstr "" "`Issue #20424 `__: Python implementation of " "io.StringIO now supports lone surrogates." #: ../../../Misc/NEWS:6672 msgid "" "`Issue #20308 `__: inspect.signature now " "works on classes without user-defined __init__ or __new__ methods." msgstr "" "`Issue #20308 `__: inspect.signature now " "works on classes without user-defined __init__ or __new__ methods." #: ../../../Misc/NEWS:6675 msgid "" "`Issue #20372 `__: inspect.getfile (and a " "bunch of other inspect functions that use it) doesn't crash with unexpected " "AttributeError on classes defined in C without __module__." msgstr "" "`Issue #20372 `__: inspect.getfile (and a " "bunch of other inspect functions that use it) doesn't crash with unexpected " "AttributeError on classes defined in C without __module__." #: ../../../Misc/NEWS:6679 msgid "" "`Issue #20356 `__: inspect.signature " "formatting uses '/' to separate positional-only parameters from others." msgstr "" "`Issue #20356 `__: inspect.signature " "formatting uses '/' to separate positional-only parameters from others." #: ../../../Misc/NEWS:6682 msgid "" "`Issue #20223 `__: inspect.signature now " "supports methods defined with functools.partialmethods." msgstr "" "`Issue #20223 `__: inspect.signature now " "supports methods defined with functools.partialmethods." #: ../../../Misc/NEWS:6685 msgid "" "`Issue #19456 `__: ntpath.join() now joins " "relative paths correctly when a drive is present." msgstr "" "`Issue #19456 `__: ntpath.join() now joins " "relative paths correctly when a drive is present." #: ../../../Misc/NEWS:6688 msgid "" "`Issue #19077 `__: tempfile." "TemporaryDirectory cleanup no longer fails when called during shutdown. " "Emitting resource warning in __del__ no longer fails. Original patch by " "Antoine Pitrou." msgstr "" "`Issue #19077 `__: tempfile." "TemporaryDirectory cleanup no longer fails when called during shutdown. " "Emitting resource warning in __del__ no longer fails. Original patch by " "Antoine Pitrou." #: ../../../Misc/NEWS:6692 msgid "" "`Issue #20394 `__: Silence Coverity warning " "in audioop module." msgstr "" "`Issue #20394 `__: Silence Coverity warning " "in audioop module." #: ../../../Misc/NEWS:6694 msgid "" "`Issue #20367 `__: Fix behavior of concurrent." "futures.as_completed() for duplicate arguments. Patch by Glenn Langford." msgstr "" "`Issue #20367 `__: Fix behavior of concurrent." "futures.as_completed() for duplicate arguments. Patch by Glenn Langford." #: ../../../Misc/NEWS:6697 msgid "" "`Issue #8260 `__: The read(), readline() and " "readlines() methods of codecs.StreamReader returned incomplete data when " "were called after readline() or read(size). Based on patch by Amaury " "Forgeot d'Arc." msgstr "" "`Issue #8260 `__: The read(), readline() and " "readlines() methods of codecs.StreamReader returned incomplete data when " "were called after readline() or read(size). Based on patch by Amaury " "Forgeot d'Arc." #: ../../../Misc/NEWS:6701 msgid "" "`Issue #20105 `__: the codec exception " "chaining now correctly sets the traceback of the original exception as its " "__traceback__ attribute." msgstr "" "`Issue #20105 `__: the codec exception " "chaining now correctly sets the traceback of the original exception as its " "__traceback__ attribute." #: ../../../Misc/NEWS:6704 msgid "" "`Issue #17481 `__: inspect.getfullargspec() " "now uses inspect.signature() API." msgstr "" "`Issue #17481 `__: inspect.getfullargspec() " "now uses inspect.signature() API." #: ../../../Misc/NEWS:6706 msgid "" "`Issue #15304 `__: concurrent.futures.wait() " "can block forever even if Futures have completed. Patch by Glenn Langford." msgstr "" "`Issue #15304 `__: concurrent.futures.wait() " "can block forever even if Futures have completed. Patch by Glenn Langford." #: ../../../Misc/NEWS:6709 msgid "" "`Issue #14455 `__: plistlib: fix serializing " "integers in the range of an unsigned long long but outside of the range of " "signed long long for binary plist files." msgstr "" "`Issue #14455 `__: plistlib: fix serializing " "integers in the range of an unsigned long long but outside of the range of " "signed long long for binary plist files." #: ../../../Misc/NEWS:6716 msgid "" "`Issue #20406 `__: Use Python application " "icons for Idle window title bars. Patch mostly by Serhiy Storchaka." msgstr "" "`Issue #20406 `__: Use Python application " "icons for Idle window title bars. Patch mostly by Serhiy Storchaka." #: ../../../Misc/NEWS:6719 msgid "" "Update the python.gif icon for the Idle classbrowser and pathbowser from the " "old green snake to the new blue and yellow snakes." msgstr "" #: ../../../Misc/NEWS:6722 msgid "" "`Issue #17721 `__: Remove non-functional " "configuration dialog help button until we make it actually gives some help " "when clicked. Patch by Guilherme Simões." msgstr "" "`Issue #17721 `__: Remove non-functional " "configuration dialog help button until we make it actually gives some help " "when clicked. Patch by Guilherme Simões." #: ../../../Misc/NEWS:6728 msgid "" "`Issue #20532 `__: Tests which use _testcapi " "now are marked as CPython only." msgstr "" "`Issue #20532 `__: Tests which use _testcapi " "now are marked as CPython only." #: ../../../Misc/NEWS:6730 msgid "" "`Issue #19920 `__: Added tests for TarFile." "list(). Based on patch by Vajrasky Kok." msgstr "" "`Issue #19920 `__: Added tests for TarFile." "list(). Based on patch by Vajrasky Kok." #: ../../../Misc/NEWS:6732 msgid "" "`Issue #19990 `__: Added tests for the imghdr " "module. Based on patch by Claudiu Popa." msgstr "" "`Issue #19990 `__: Added tests for the imghdr " "module. Based on patch by Claudiu Popa." #: ../../../Misc/NEWS:6735 msgid "" "`Issue #20474 `__: Fix test_socket " "\"unexpected success\" failures on OS X 10.7+." msgstr "" "`Issue #20474 `__: Fix test_socket " "\"unexpected success\" failures on OS X 10.7+." #: ../../../Misc/NEWS:6740 msgid "" "`Issue #20530 `__: Argument Clinic's " "signature format has been revised again. The new syntax is highly human " "readable while still preventing false positives. The syntax also extends " "Python syntax to denote \"self\" and positional-only parameters, allowing " "inspect.Signature objects to be totally accurate for all supported builtins " "in Python 3.4." msgstr "" "`Issue #20530 `__: Argument Clinic's " "signature format has been revised again. The new syntax is highly human " "readable while still preventing false positives. The syntax also extends " "Python syntax to denote \"self\" and positional-only parameters, allowing " "inspect.Signature objects to be totally accurate for all supported builtins " "in Python 3.4." #: ../../../Misc/NEWS:6746 msgid "" "`Issue #20456 `__: Argument Clinic now " "observes the C preprocessor conditional compilation statements of the C " "files it parses. When a Clinic block is inside a conditional code, it " "adjusts its output to match, including automatically generating an empty " "methoddef macro." msgstr "" "`Issue #20456 `__: Argument Clinic now " "observes the C preprocessor conditional compilation statements of the C " "files it parses. When a Clinic block is inside a conditional code, it " "adjusts its output to match, including automatically generating an empty " "methoddef macro." #: ../../../Misc/NEWS:6751 msgid "" "`Issue #20456 `__: Cloned functions in " "Argument Clinic now use the correct name, not the name of the function they " "were cloned from, for text strings inside generated code." msgstr "" "`Issue #20456 `__: Cloned functions in " "Argument Clinic now use the correct name, not the name of the function they " "were cloned from, for text strings inside generated code." #: ../../../Misc/NEWS:6755 msgid "" "`Issue #20456 `__: Fixed Argument Clinic's " "test suite and \"--converters\" feature." msgstr "" "`Issue #20456 `__: Fixed Argument Clinic's " "test suite and \"--converters\" feature." #: ../../../Misc/NEWS:6757 msgid "" "`Issue #20456 `__: Argument Clinic now allows " "specifying different names for a parameter in Python and C, using \"as\" on " "the parameter line." msgstr "" "`Issue #20456 `__: Argument Clinic now allows " "specifying different names for a parameter in Python and C, using \"as\" on " "the parameter line." #: ../../../Misc/NEWS:6760 msgid "" "`Issue #20326 `__: Argument Clinic now uses a " "simple, unique signature to annotate text signatures in docstrings, " "resulting in fewer false positives. \"self\" parameters are also explicitly " "marked, allowing inspect.Signature() to authoritatively detect (and skip) " "said parameters." msgstr "" "`Issue #20326 `__: Argument Clinic now uses a " "simple, unique signature to annotate text signatures in docstrings, " "resulting in fewer false positives. \"self\" parameters are also explicitly " "marked, allowing inspect.Signature() to authoritatively detect (and skip) " "said parameters." #: ../../../Misc/NEWS:6765 msgid "" "`Issue #20326 `__: Argument Clinic now " "generates separate checksums for the input and output sections of the block, " "allowing external tools to verify that the input has not changed (and thus " "the output is not out-of-date)." msgstr "" "`Issue #20326 `__: Argument Clinic now " "generates separate checksums for the input and output sections of the block, " "allowing external tools to verify that the input has not changed (and thus " "the output is not out-of-date)." #: ../../../Misc/NEWS:6772 msgid "" "`Issue #20465 `__: Update SQLite shipped with " "OS X installer to 3.8.3." msgstr "" "`Issue #20465 `__: Update SQLite shipped with " "OS X installer to 3.8.3." #: ../../../Misc/NEWS:6775 ../../../Misc/NEWS:10493 msgid "C-API" msgstr "" #: ../../../Misc/NEWS:6777 msgid "" "`Issue #20517 `__: Added new functions " "allowing OSError exceptions to reference two filenames instead of one: " "PyErr_SetFromErrnoWithFilenameObjects() and " "PyErr_SetExcFromWindowsErrWithFilenameObjects()." msgstr "" "`Issue #20517 `__: Added new functions " "allowing OSError exceptions to reference two filenames instead of one: " "PyErr_SetFromErrnoWithFilenameObjects() and " "PyErr_SetExcFromWindowsErrWithFilenameObjects()." #: ../../../Misc/NEWS:6784 msgid "" "`Issue #20488 `__: Change wording to say " "importlib is *the* implementation of import instead of just *an* " "implementation." msgstr "" "`Issue #20488 `__: Change wording to say " "importlib is *the* implementation of import instead of just *an* " "implementation." #: ../../../Misc/NEWS:6787 msgid "" "`Issue #6386 `__: Clarify in the tutorial that " "specifying a symlink to execute means the directory containing the executed " "script and not the symlink is added to sys.path." msgstr "" "`Issue #6386 `__: Clarify in the tutorial that " "specifying a symlink to execute means the directory containing the executed " "script and not the symlink is added to sys.path." #: ../../../Misc/NEWS:6793 msgid "Python 3.4.0 Beta 3" msgstr "Python 3.4.0 Beta 3" #: ../../../Misc/NEWS:6795 msgid "Release date: 2014-01-26" msgstr "Date de sortie : 2014-01-26" #: ../../../Misc/NEWS:6800 msgid "" "`Issue #20189 `__: Four additional builtin " "types (PyTypeObject, PyMethodDescr_Type, _PyMethodWrapper_Type, and " "PyWrapperDescr_Type) have been modified to provide introspection information " "for builtins." msgstr "" "`Issue #20189 `__: Four additional builtin " "types (PyTypeObject, PyMethodDescr_Type, _PyMethodWrapper_Type, and " "PyWrapperDescr_Type) have been modified to provide introspection information " "for builtins." #: ../../../Misc/NEWS:6804 msgid "" "`Issue #17825 `__: Cursor \"^\" is correctly " "positioned for SyntaxError and IndentationError." msgstr "" "`Issue #17825 `__: Cursor \"^\" is correctly " "positioned for SyntaxError and IndentationError." #: ../../../Misc/NEWS:6807 msgid "" "`Issue #2382 `__: SyntaxError cursor \"^\" is " "now written at correct position in most cases when multibyte characters are " "in line (before \"^\"). This still not works correctly with wide East Asian " "characters." msgstr "" "`Issue #2382 `__: SyntaxError cursor \"^\" is " "now written at correct position in most cases when multibyte characters are " "in line (before \"^\"). This still not works correctly with wide East Asian " "characters." #: ../../../Misc/NEWS:6811 msgid "" "`Issue #18960 `__: The first line of Python " "script could be executed twice when the source encoding was specified on the " "second line. Now the source encoding declaration on the second line isn't " "effective if the first line contains anything except a comment. 'python -x' " "works now again with files with the source encoding declarations, and can be " "used to make Python batch files on Windows." msgstr "" "`Issue #18960 `__: The first line of Python " "script could be executed twice when the source encoding was specified on the " "second line. Now the source encoding declaration on the second line isn't " "effective if the first line contains anything except a comment. 'python -x' " "works now again with files with the source encoding declarations, and can be " "used to make Python batch files on Windows." #: ../../../Misc/NEWS:6821 msgid "" "asyncio: Various improvements and small changes not all covered by issues " "listed below. E.g. wait_for() now cancels the inner task if the timeout " "occcurs; tweaked the set of exported symbols; renamed Empty/Full to " "QueueEmpty/QueueFull; \"with (yield from lock)\" now uses a separate context " "manager; readexactly() raises if not enough data was read; PTY support " "tweaks." msgstr "" #: ../../../Misc/NEWS:6828 msgid "" "`Issue #20311 `__: asyncio: Add a granularity " "attribute to BaseEventLoop: maximum between the resolution of the " "BaseEventLoop.time() method and the resolution of the selector. The " "granuarility is used in the scheduler to round time and deadline." msgstr "" "`Issue #20311 `__: asyncio: Add a granularity " "attribute to BaseEventLoop: maximum between the resolution of the " "BaseEventLoop.time() method and the resolution of the selector. The " "granuarility is used in the scheduler to round time and deadline." #: ../../../Misc/NEWS:6833 msgid "" "`Issue #20311 `__: selectors: Add a " "resolution attribute to BaseSelector." msgstr "" "`Issue #20311 `__: selectors: Add a " "resolution attribute to BaseSelector." #: ../../../Misc/NEWS:6835 msgid "" "`Issue #20189 `__: unittest.mock now no " "longer assumes that any object for which it could get an inspect.Signature " "is a callable written in Python. Fix courtesy of Michael Foord." msgstr "" "`Issue #20189 `__: unittest.mock now no " "longer assumes that any object for which it could get an inspect.Signature " "is a callable written in Python. Fix courtesy of Michael Foord." #: ../../../Misc/NEWS:6839 msgid "" "`Issue #20317 `__: ExitStack.__exit__ could " "create a self-referential loop if an exception raised by a cleanup operation " "already had its context set correctly (for example, by the @contextmanager " "decorator). The infinite loop this caused is now avoided by checking if the " "expected context is already set before trying to fix it." msgstr "" "`Issue #20317 `__: ExitStack.__exit__ could " "create a self-referential loop if an exception raised by a cleanup operation " "already had its context set correctly (for example, by the @contextmanager " "decorator). The infinite loop this caused is now avoided by checking if the " "expected context is already set before trying to fix it." #: ../../../Misc/NEWS:6845 msgid "" "`Issue #20374 `__: Fix build with GNU " "readline >= 6.3." msgstr "" "`Issue #20374 `__: Fix build with GNU " "readline >= 6.3." #: ../../../Misc/NEWS:6847 msgid "" "`Issue #20262 `__: Warnings are raised now " "when duplicate names are added in the ZIP file or too long ZIP file comment " "is truncated." msgstr "" "`Issue #20262 `__: Warnings are raised now " "when duplicate names are added in the ZIP file or too long ZIP file comment " "is truncated." #: ../../../Misc/NEWS:6850 msgid "" "`Issue #20165 `__: The unittest module no " "longer considers tests marked with @expectedFailure successful if they pass." msgstr "" "`Issue #20165 `__: The unittest module no " "longer considers tests marked with @expectedFailure successful if they pass." #: ../../../Misc/NEWS:6853 msgid "" "`Issue #18574 `__: Added missing newline in " "100-Continue reply from http.server.BaseHTTPRequestHandler. Patch by " "Nikolaus Rath." msgstr "" "`Issue #18574 `__: Added missing newline in " "100-Continue reply from http.server.BaseHTTPRequestHandler. Patch by " "Nikolaus Rath." #: ../../../Misc/NEWS:6856 msgid "" "`Issue #20270 `__: urllib.urlparse now " "supports empty ports." msgstr "" "`Issue #20270 `__: urllib.urlparse now " "supports empty ports." #: ../../../Misc/NEWS:6858 msgid "" "`Issue #20243 `__: TarFile no longer raise " "ReadError when opened in write mode." msgstr "" "`Issue #20243 `__: TarFile no longer raise " "ReadError when opened in write mode." #: ../../../Misc/NEWS:6860 msgid "" "`Issue #20238 `__: TarFile opened with " "external fileobj and \"w:gz\" mode didn't write complete output on close." msgstr "" "`Issue #20238 `__: TarFile opened with " "external fileobj and \"w:gz\" mode didn't write complete output on close." #: ../../../Misc/NEWS:6863 msgid "" "`Issue #20245 `__: The open functions in the " "tarfile module now correctly handle empty mode." msgstr "" "`Issue #20245 `__: The open functions in the " "tarfile module now correctly handle empty mode." #: ../../../Misc/NEWS:6866 msgid "" "`Issue #20242 `__: Fixed basicConfig() format " "strings for the alternative formatting styles. Thanks to kespindler for the " "bug report and patch." msgstr "" "`Issue #20242 `__: Fixed basicConfig() format " "strings for the alternative formatting styles. Thanks to kespindler for the " "bug report and patch." #: ../../../Misc/NEWS:6869 msgid "" "`Issue #20246 `__: Fix buffer overflow in " "socket.recvfrom_into." msgstr "" "`Issue #20246 `__: Fix buffer overflow in " "socket.recvfrom_into." #: ../../../Misc/NEWS:6871 msgid "" "Issues #20206 and #5803: Fix edge case in email.quoprimime.encode where it " "truncated lines ending in a character needing encoding but no newline by " "using a more efficient algorithm that doesn't have the bug." msgstr "" #: ../../../Misc/NEWS:6875 msgid "" "`Issue #19082 `__: Working xmlrpc.server and " "xmlrpc.client examples. Both in modules and in documentation. Initial patch " "contributed by Vajrasky Kok." msgstr "" "`Issue #19082 `__: Working xmlrpc.server and " "xmlrpc.client examples. Both in modules and in documentation. Initial patch " "contributed by Vajrasky Kok." #: ../../../Misc/NEWS:6878 msgid "" "`Issue #20138 `__: The wsgiref." "application_uri() and wsgiref.request_uri() functions now conform to PEP " "3333 when handle non-ASCII URLs." msgstr "" "`Issue #20138 `__: The wsgiref." "application_uri() and wsgiref.request_uri() functions now conform to PEP " "3333 when handle non-ASCII URLs." #: ../../../Misc/NEWS:6881 msgid "" "`Issue #19097 `__: Raise the correct " "Exception when cgi.FieldStorage is given an invalid fileobj." msgstr "" "`Issue #19097 `__: Raise the correct " "Exception when cgi.FieldStorage is given an invalid fileobj." #: ../../../Misc/NEWS:6884 msgid "" "`Issue #20152 `__: Ported Python/import.c " "over to Argument Clinic." msgstr "" "`Issue #20152 `__: Ported Python/import.c " "over to Argument Clinic." #: ../../../Misc/NEWS:6886 msgid "" "`Issue #13107 `__: argparse and optparse no " "longer raises an exception when output a help on environment with too small " "COLUMNS. Based on patch by Elazar Gershuni." msgstr "" "`Issue #13107 `__: argparse and optparse no " "longer raises an exception when output a help on environment with too small " "COLUMNS. Based on patch by Elazar Gershuni." #: ../../../Misc/NEWS:6890 msgid "" "`Issue #20207 `__: Always disable SSLv2 " "except when PROTOCOL_SSLv2 is explicitly asked for." msgstr "" "`Issue #20207 `__: Always disable SSLv2 " "except when PROTOCOL_SSLv2 is explicitly asked for." #: ../../../Misc/NEWS:6893 msgid "" "`Issue #18960 `__: The tokenize module now " "ignore the source encoding declaration on the second line if the first line " "contains anything except a comment." msgstr "" "`Issue #18960 `__: The tokenize module now " "ignore the source encoding declaration on the second line if the first line " "contains anything except a comment." #: ../../../Misc/NEWS:6896 msgid "" "`Issue #20078 `__: Reading malformed zipfiles " "no longer hangs with 100% CPU consumption." msgstr "" "`Issue #20078 `__: Reading malformed zipfiles " "no longer hangs with 100% CPU consumption." #: ../../../Misc/NEWS:6899 msgid "" "`Issue #20113 `__: os.readv() and os.writev() " "now raise an OSError exception on error instead of returning -1." msgstr "" "`Issue #20113 `__: os.readv() and os.writev() " "now raise an OSError exception on error instead of returning -1." #: ../../../Misc/NEWS:6902 msgid "" "`Issue #19719 `__: Make importlib.abc." "MetaPathFinder.find_module(), PathEntryFinder.find_loader(), and Loader." "load_module() use PEP 451 APIs to help with backwards-compatibility." msgstr "" "`Issue #19719 `__: Make importlib.abc." "MetaPathFinder.find_module(), PathEntryFinder.find_loader(), and Loader." "load_module() use PEP 451 APIs to help with backwards-compatibility." #: ../../../Misc/NEWS:6906 msgid "" "`Issue #20144 `__: inspect.Signature now " "supports parsing simple symbolic constants as parameter default values in " "__text_signature__." msgstr "" "`Issue #20144 `__: inspect.Signature now " "supports parsing simple symbolic constants as parameter default values in " "__text_signature__." #: ../../../Misc/NEWS:6909 msgid "" "`Issue #20072 `__: Fixed multiple errors in " "tkinter with wantobjects is False." msgstr "" "`Issue #20072 `__: Fixed multiple errors in " "tkinter with wantobjects is False." #: ../../../Misc/NEWS:6911 msgid "" "`Issue #20229 `__: Avoid plistlib deprecation " "warning in platform.mac_ver()." msgstr "" "`Issue #20229 `__: Avoid plistlib deprecation " "warning in platform.mac_ver()." #: ../../../Misc/NEWS:6913 msgid "" "`Issue #14455 `__: Fix some problems with the " "new binary plist support in plistlib." msgstr "" "`Issue #14455 `__: Fix some problems with the " "new binary plist support in plistlib." #: ../../../Misc/NEWS:6918 msgid "" "`Issue #17390 `__: Add Python version to Idle " "editor window title bar. Original patches by Edmond Burnett and Kent Johnson." msgstr "" "`Issue #17390 `__: Add Python version to Idle " "editor window title bar. Original patches by Edmond Burnett and Kent Johnson." #: ../../../Misc/NEWS:6921 msgid "" "`Issue #18960 `__: IDLE now ignores the " "source encoding declaration on the second line if the first line contains " "anything except a comment." msgstr "" "`Issue #18960 `__: IDLE now ignores the " "source encoding declaration on the second line if the first line contains " "anything except a comment." #: ../../../Misc/NEWS:6927 msgid "" "`Issue #20358 `__: Tests for curses.window." "overlay and curses.window.overwrite no longer specify min{row,col} > max{row," "col}." msgstr "" "`Issue #20358 `__: Tests for curses.window." "overlay and curses.window.overwrite no longer specify min{row,col} > max{row," "col}." #: ../../../Misc/NEWS:6930 msgid "" "`Issue #19804 `__: The test_find_mac test in " "test_uuid is now skipped if the ifconfig executable is not available." msgstr "" "`Issue #19804 `__: The test_find_mac test in " "test_uuid is now skipped if the ifconfig executable is not available." #: ../../../Misc/NEWS:6933 msgid "" "`Issue #19886 `__: Use better estimated " "memory requirements for bigmem tests." msgstr "" "`Issue #19886 `__: Use better estimated " "memory requirements for bigmem tests." #: ../../../Misc/NEWS:6938 msgid "" "`Issue #20390 `__: Argument Clinic's \"file\" " "output preset now defaults to \"{dirname}/clinic/{basename}.h\"." msgstr "" "`Issue #20390 `__: Argument Clinic's \"file\" " "output preset now defaults to \"{dirname}/clinic/{basename}.h\"." #: ../../../Misc/NEWS:6941 msgid "" "`Issue #20390 `__: Argument Clinic's \"class" "\" directive syntax has been extended with two new required arguments: " "\"typedef\" and \"type_object\"." msgstr "" "`Issue #20390 `__: Argument Clinic's \"class" "\" directive syntax has been extended with two new required arguments: " "\"typedef\" and \"type_object\"." #: ../../../Misc/NEWS:6944 msgid "" "`Issue #20390 `__: Argument Clinic: If " "__new__ or __init__ functions didn't use kwargs (or args), the " "PyArg_NoKeywords (or PyArg_NoPositional) calls generated are only run when " "the type object is an exact match." msgstr "" "`Issue #20390 `__: Argument Clinic: If " "__new__ or __init__ functions didn't use kwargs (or args), the " "PyArg_NoKeywords (or PyArg_NoPositional) calls generated are only run when " "the type object is an exact match." #: ../../../Misc/NEWS:6948 msgid "" "`Issue #20390 `__: Argument Clinic now fails " "if you have required parameters after optional parameters." msgstr "" "`Issue #20390 `__: Argument Clinic now fails " "if you have required parameters after optional parameters." #: ../../../Misc/NEWS:6951 msgid "" "`Issue #20390 `__: Argument Clinic converters " "now have a new template they can inject code into: \"modifiers\". Code put " "there is run in the parsing function after argument parsing but before the " "call to the impl." msgstr "" "`Issue #20390 `__: Argument Clinic converters " "now have a new template they can inject code into: \"modifiers\". Code put " "there is run in the parsing function after argument parsing but before the " "call to the impl." #: ../../../Misc/NEWS:6955 msgid "" "`Issue #20376 `__: Argument Clinic now " "escapes backslashes in docstrings." msgstr "" "`Issue #20376 `__: Argument Clinic now " "escapes backslashes in docstrings." #: ../../../Misc/NEWS:6957 msgid "" "`Issue #20381 `__: Argument Clinic now sanity " "checks the default argument when c_default is also specified, providing a " "nice failure message for disallowed values." msgstr "" "`Issue #20381 `__: Argument Clinic now sanity " "checks the default argument when c_default is also specified, providing a " "nice failure message for disallowed values." #: ../../../Misc/NEWS:6961 msgid "" "`Issue #20189 `__: Argument Clinic now " "ensures that parser functions for __new__ are always of type newfunc, the " "type of the tp_new slot. Similarly, parser functions for __init__ are now " "always of type initproc, the type of tp_init." msgstr "" "`Issue #20189 `__: Argument Clinic now " "ensures that parser functions for __new__ are always of type newfunc, the " "type of the tp_new slot. Similarly, parser functions for __init__ are now " "always of type initproc, the type of tp_init." #: ../../../Misc/NEWS:6966 msgid "" "`Issue #20189 `__: Argument Clinic now " "suppresses the docstring for __new__ and __init__ functions if no docstring " "is provided in the input." msgstr "" "`Issue #20189 `__: Argument Clinic now " "suppresses the docstring for __new__ and __init__ functions if no docstring " "is provided in the input." #: ../../../Misc/NEWS:6969 msgid "" "`Issue #20189 `__: Argument Clinic now " "suppresses the \"self\" parameter in the impl for @staticmethod functions." msgstr "" "`Issue #20189 `__: Argument Clinic now " "suppresses the \"self\" parameter in the impl for @staticmethod functions." #: ../../../Misc/NEWS:6972 msgid "" "`Issue #20294 `__: Argument Clinic now " "supports argument parsing for __new__ and __init__ functions." msgstr "" "`Issue #20294 `__: Argument Clinic now " "supports argument parsing for __new__ and __init__ functions." #: ../../../Misc/NEWS:6975 msgid "" "`Issue #20299 `__: Argument Clinic custom " "converters may now change the default value of c_default and py_default with " "a class member." msgstr "" "`Issue #20299 `__: Argument Clinic custom " "converters may now change the default value of c_default and py_default with " "a class member." #: ../../../Misc/NEWS:6978 msgid "" "`Issue #20287 `__: Argument Clinic's output " "is now configurable, allowing delaying its output or even redirecting it to " "a separate file." msgstr "" "`Issue #20287 `__: Argument Clinic's output " "is now configurable, allowing delaying its output or even redirecting it to " "a separate file." #: ../../../Misc/NEWS:6981 msgid "" "`Issue #20226 `__: Argument Clinic now " "permits simple expressions (e.g. \"sys.maxsize - 1\") as default values for " "parameters." msgstr "" "`Issue #20226 `__: Argument Clinic now " "permits simple expressions (e.g. \"sys.maxsize - 1\") as default values for " "parameters." #: ../../../Misc/NEWS:6984 msgid "" "`Issue #19936 `__: Added executable bits or " "shebang lines to Python scripts which requires them. Disable executable " "bits and shebang lines in test and benchmark files in order to prevent using " "a random system python, and in source files of modules which don't provide " "command line interface. Fixed shebang lines in the unittestgui and checkpip " "scripts." msgstr "" "`Issue #19936 `__: Added executable bits or " "shebang lines to Python scripts which requires them. Disable executable " "bits and shebang lines in test and benchmark files in order to prevent using " "a random system python, and in source files of modules which don't provide " "command line interface. Fixed shebang lines in the unittestgui and checkpip " "scripts." #: ../../../Misc/NEWS:6990 msgid "" "`Issue #20268 `__: Argument Clinic now " "supports cloning the parameters and return converter of existing functions." msgstr "" "`Issue #20268 `__: Argument Clinic now " "supports cloning the parameters and return converter of existing functions." #: ../../../Misc/NEWS:6993 msgid "" "`Issue #20228 `__: Argument Clinic now has " "special support for class special methods." msgstr "" "`Issue #20228 `__: Argument Clinic now has " "special support for class special methods." #: ../../../Misc/NEWS:6996 msgid "" "`Issue #20214 `__: Fixed a number of small " "issues and documentation errors in Argument Clinic (see issue for details)." msgstr "" "`Issue #20214 `__: Fixed a number of small " "issues and documentation errors in Argument Clinic (see issue for details)." #: ../../../Misc/NEWS:6999 msgid "" "`Issue #20196 `__: Fixed a bug where Argument " "Clinic did not generate correct parsing code for functions with positional-" "only parameters where all arguments are optional." msgstr "" "`Issue #20196 `__: Fixed a bug where Argument " "Clinic did not generate correct parsing code for functions with positional-" "only parameters where all arguments are optional." #: ../../../Misc/NEWS:7003 msgid "" "`Issue #18960 `__: 2to3 and the findnocoding." "py script now ignore the source encoding declaration on the second line if " "the first line contains anything except a comment." msgstr "" "`Issue #18960 `__: 2to3 and the findnocoding." "py script now ignore the source encoding declaration on the second line if " "the first line contains anything except a comment." #: ../../../Misc/NEWS:7007 msgid "" "`Issue #19723 `__: The marker comments " "Argument Clinic uses have been changed to improve readability." msgstr "" "`Issue #19723 `__: The marker comments " "Argument Clinic uses have been changed to improve readability." #: ../../../Misc/NEWS:7010 msgid "" "`Issue #20157 `__: When Argument Clinic " "renames a parameter because its name collides with a C keyword, it no longer " "exposes that rename to PyArg_Parse." msgstr "" "`Issue #20157 `__: When Argument Clinic " "renames a parameter because its name collides with a C keyword, it no longer " "exposes that rename to PyArg_Parse." #: ../../../Misc/NEWS:7013 msgid "" "`Issue #20141 `__: Improved Argument Clinic's " "support for the PyArg_Parse \"O!\" format unit." msgstr "" "`Issue #20141 `__: Improved Argument Clinic's " "support for the PyArg_Parse \"O!\" format unit." #: ../../../Misc/NEWS:7016 msgid "" "`Issue #20144 `__: Argument Clinic now " "supports simple symbolic constants as parameter default values." msgstr "" "`Issue #20144 `__: Argument Clinic now " "supports simple symbolic constants as parameter default values." #: ../../../Misc/NEWS:7019 msgid "" "`Issue #20143 `__: The line numbers reported " "in Argument Clinic errors are now more accurate." msgstr "" "`Issue #20143 `__: The line numbers reported " "in Argument Clinic errors are now more accurate." #: ../../../Misc/NEWS:7022 msgid "" "`Issue #20142 `__: Py_buffer variables " "generated by Argument Clinic are now initialized with a default value." msgstr "" "`Issue #20142 `__: Py_buffer variables " "generated by Argument Clinic are now initialized with a default value." #: ../../../Misc/NEWS:7028 msgid "" "`Issue #12837 `__: Silence a tautological " "comparison warning on OS X under Clang in socketmodule.c." msgstr "" "`Issue #12837 `__: Silence a tautological " "comparison warning on OS X under Clang in socketmodule.c." #: ../../../Misc/NEWS:7033 msgid "Python 3.4.0 Beta 2" msgstr "Python 3.4.0 Beta 2" #: ../../../Misc/NEWS:7035 msgid "Release date: 2014-01-05" msgstr "Date de sortie : 05-01-2014" #: ../../../Misc/NEWS:7040 msgid "" "`Issue #17432 `__: Drop UCS2 from names of " "Unicode functions in python3.def." msgstr "" "`Issue #17432 `__: Drop UCS2 from names of " "Unicode functions in python3.def." #: ../../../Misc/NEWS:7042 msgid "" "`Issue #19526 `__: Exclude all new API from " "the stable ABI. Exceptions can be made if a need is demonstrated." msgstr "" "`Issue #19526 `__: Exclude all new API from " "the stable ABI. Exceptions can be made if a need is demonstrated." #: ../../../Misc/NEWS:7045 msgid "" "`Issue #19969 `__: PyBytes_FromFormatV() now " "raises an OverflowError if \"%c\" argument is not in range [0; 255]." msgstr "" "`Issue #19969 `__: PyBytes_FromFormatV() now " "raises an OverflowError if \"%c\" argument is not in range [0; 255]." #: ../../../Misc/NEWS:7048 msgid "" "`Issue #19995 `__: %c, %o, %x, and %X now " "issue a DeprecationWarning on non-integer input; reworded docs to clarify " "that an integer type should define both __int__ and __index__." msgstr "" "`Issue #19995 `__: %c, %o, %x, and %X now " "issue a DeprecationWarning on non-integer input; reworded docs to clarify " "that an integer type should define both __int__ and __index__." #: ../../../Misc/NEWS:7052 msgid "" "`Issue #19787 `__: PyThread_set_key_value() " "now always set the value. In Python 3.3, the function did nothing if the key " "already exists (if the current value is a non-NULL pointer)." msgstr "" "`Issue #19787 `__: PyThread_set_key_value() " "now always set the value. In Python 3.3, the function did nothing if the key " "already exists (if the current value is a non-NULL pointer)." #: ../../../Misc/NEWS:7056 msgid "" "`Issue #14432 `__: Remove the thread state " "field from the frame structure. Fix a crash when a generator is created in a " "C thread that is destroyed while the generator is still used. The issue was " "that a generator contains a frame, and the frame kept a reference to the " "Python state of the destroyed C thread. The crash occurs when a trace " "function is setup." msgstr "" "`Issue #14432 `__: Remove the thread state " "field from the frame structure. Fix a crash when a generator is created in a " "C thread that is destroyed while the generator is still used. The issue was " "that a generator contains a frame, and the frame kept a reference to the " "Python state of the destroyed C thread. The crash occurs when a trace " "function is setup." #: ../../../Misc/NEWS:7062 msgid "" "`Issue #19576 `__: PyGILState_Ensure() now " "initializes threads. At startup, Python has no concrete GIL. If " "PyGILState_Ensure() is called from a new thread for the first time and " "PyEval_InitThreads() was not called yet, a GIL needs to be created." msgstr "" "`Issue #19576 `__: PyGILState_Ensure() now " "initializes threads. At startup, Python has no concrete GIL. If " "PyGILState_Ensure() is called from a new thread for the first time and " "PyEval_InitThreads() was not called yet, a GIL needs to be created." #: ../../../Misc/NEWS:7067 msgid "" "`Issue #17576 `__: Deprecation warning " "emitted now when __int__() or __index__() return not int instance." msgstr "" "`Issue #17576 `__: Deprecation warning " "emitted now when __int__() or __index__() return not int instance." #: ../../../Misc/NEWS:7070 msgid "" "`Issue #19932 `__: Fix typo in import.h, " "missing whitespaces in function prototypes." msgstr "" "`Issue #19932 `__: Fix typo in import.h, " "missing whitespaces in function prototypes." #: ../../../Misc/NEWS:7072 msgid "" "`Issue #19736 `__: Add module-level statvfs " "constants defined for GNU/glibc based systems." msgstr "" "`Issue #19736 `__: Add module-level statvfs " "constants defined for GNU/glibc based systems." #: ../../../Misc/NEWS:7075 msgid "" "`Issue #20097 `__: Fix bad use of \"self\" in " "importlib's WindowsRegistryFinder." msgstr "" "`Issue #20097 `__: Fix bad use of \"self\" in " "importlib's WindowsRegistryFinder." #: ../../../Misc/NEWS:7077 msgid "" "`Issue #19729 `__: In str.format(), fix " "recursive expansion in format spec." msgstr "" "`Issue #19729 `__: In str.format(), fix " "recursive expansion in format spec." #: ../../../Misc/NEWS:7079 msgid "" "`Issue #19638 `__: Fix possible crash / " "undefined behaviour from huge (more than 2 billion characters) input strings " "in _Py_dg_strtod." msgstr "" "`Issue #19638 `__: Fix possible crash / " "undefined behaviour from huge (more than 2 billion characters) input strings " "in _Py_dg_strtod." #: ../../../Misc/NEWS:7085 msgid "" "`Issue #20154 `__: Deadlock in asyncio." "StreamReader.readexactly()." msgstr "" "`Issue #20154 `__: Deadlock in asyncio." "StreamReader.readexactly()." #: ../../../Misc/NEWS:7087 msgid "" "`Issue #16113 `__: Remove sha3 module again." msgstr "" "`Issue #16113 `__: Remove sha3 module again." #: ../../../Misc/NEWS:7089 msgid "" "`Issue #20111 `__: pathlib.Path.with_suffix() " "now sanity checks the given suffix." msgstr "" "`Issue #20111 `__: pathlib.Path.with_suffix() " "now sanity checks the given suffix." #: ../../../Misc/NEWS:7091 msgid "" "Fix breakage in TestSuite.countTestCases() introduced by `issue #11798 " "`__." msgstr "" #: ../../../Misc/NEWS:7093 msgid "" "`Issue #20108 `__: Avoid parameter name clash " "in inspect.getcallargs()." msgstr "" "`Issue #20108 `__: Avoid parameter name clash " "in inspect.getcallargs()." #: ../../../Misc/NEWS:7095 msgid "" "`Issue #19918 `__: Fix PurePath.relative_to() " "under Windows." msgstr "" "`Issue #19918 `__: Fix PurePath.relative_to() " "under Windows." #: ../../../Misc/NEWS:7097 msgid "" "`Issue #19422 `__: Explicitly disallow non-" "SOCK_STREAM sockets in the ssl module, rather than silently let them emit " "clear text data." msgstr "" "`Issue #19422 `__: Explicitly disallow non-" "SOCK_STREAM sockets in the ssl module, rather than silently let them emit " "clear text data." #: ../../../Misc/NEWS:7100 msgid "" "`Issue #20046 `__: Locale alias table no " "longer contains entities which can be calculated. Generalized support of " "the euro modifier." msgstr "" "`Issue #20046 `__: Locale alias table no " "longer contains entities which can be calculated. Generalized support of " "the euro modifier." #: ../../../Misc/NEWS:7103 msgid "" "`Issue #20027 `__: Fixed locale aliases for " "devanagari locales." msgstr "" "`Issue #20027 `__: Fixed locale aliases for " "devanagari locales." #: ../../../Misc/NEWS:7105 msgid "" "`Issue #20067 `__: Tkinter variables now work " "when wantobjects is false." msgstr "" "`Issue #20067 `__: Tkinter variables now work " "when wantobjects is false." #: ../../../Misc/NEWS:7107 msgid "" "`Issue #19020 `__: Tkinter now uses " "splitlist() instead of split() in configure methods." msgstr "" "`Issue #19020 `__: Tkinter now uses " "splitlist() instead of split() in configure methods." #: ../../../Misc/NEWS:7110 msgid "" "`Issue #19744 `__: ensurepip now provides a " "better error message when Python is built without SSL/TLS support (pip " "currently requires that support to run, even if only operating with local " "wheel files)" msgstr "" "`Issue #19744 `__: ensurepip now provides a " "better error message when Python is built without SSL/TLS support (pip " "currently requires that support to run, even if only operating with local " "wheel files)" #: ../../../Misc/NEWS:7114 msgid "" "`Issue #19734 `__: ensurepip now ignores all " "pip environment variables to avoid odd behaviour based on user configuration " "settings" msgstr "" "`Issue #19734 `__: ensurepip now ignores all " "pip environment variables to avoid odd behaviour based on user configuration " "settings" #: ../../../Misc/NEWS:7117 msgid "Fix TypeError on \"setup.py upload --show-response\"." msgstr "" #: ../../../Misc/NEWS:7119 msgid "" "`Issue #20045 `__: Fix \"setup.py register --" "list-classifiers\"." msgstr "" "`Issue #20045 `__: Fix \"setup.py register --" "list-classifiers\"." #: ../../../Misc/NEWS:7121 msgid "" "`Issue #18879 `__: When a method is looked up " "on a temporary file, avoid closing the file before the method is possibly " "called." msgstr "" "`Issue #18879 `__: When a method is looked up " "on a temporary file, avoid closing the file before the method is possibly " "called." #: ../../../Misc/NEWS:7124 msgid "" "`Issue #20037 `__: Avoid crashes when opening " "a text file late at interpreter shutdown." msgstr "" "`Issue #20037 `__: Avoid crashes when opening " "a text file late at interpreter shutdown." #: ../../../Misc/NEWS:7127 msgid "" "`Issue #19967 `__: Thanks to the PEP 442, " "asyncio.Future now uses a destructor to log uncaught exceptions, instead of " "the dedicated _TracebackLogger class." msgstr "" "`Issue #19967 `__: Thanks to the PEP 442, " "asyncio.Future now uses a destructor to log uncaught exceptions, instead of " "the dedicated _TracebackLogger class." #: ../../../Misc/NEWS:7131 msgid "Added a Task.current_task() class method to asyncio." msgstr "" #: ../../../Misc/NEWS:7133 msgid "" "`Issue #19850 `__: Set SA_RESTART in asyncio " "when registering a signal handler to limit EINTR occurrences." msgstr "" "`Issue #19850 `__: Set SA_RESTART in asyncio " "when registering a signal handler to limit EINTR occurrences." #: ../../../Misc/NEWS:7136 msgid "" "Implemented write flow control in asyncio for proactor event loop (Windows)." msgstr "" #: ../../../Misc/NEWS:7138 msgid "" "Change write buffer in asyncio use to avoid O(N**2) behavior. Make write()/" "sendto() accept bytearray/memoryview." msgstr "" #: ../../../Misc/NEWS:7141 msgid "" "`Issue #20034 `__: Updated alias mapping to " "most recent locale.alias file from X.org distribution using makelocalealias." "py." msgstr "" "`Issue #20034 `__: Updated alias mapping to " "most recent locale.alias file from X.org distribution using makelocalealias." "py." #: ../../../Misc/NEWS:7144 msgid "" "`Issue #5815 `__: Fixed support for locales " "with modifiers. Fixed support for locale encodings with hyphens." msgstr "" "`Issue #5815 `__: Fixed support for locales " "with modifiers. Fixed support for locale encodings with hyphens." #: ../../../Misc/NEWS:7147 msgid "" "`Issue #20026 `__: Fix the sqlite module to " "handle correctly invalid isolation level (wrong type)." msgstr "" "`Issue #20026 `__: Fix the sqlite module to " "handle correctly invalid isolation level (wrong type)." #: ../../../Misc/NEWS:7150 msgid "" "`Issue #18829 `__: csv.Dialect() now checks " "type for delimiter, escapechar and quotechar fields. Original patch by " "Vajrasky Kok." msgstr "" "`Issue #18829 `__: csv.Dialect() now checks " "type for delimiter, escapechar and quotechar fields. Original patch by " "Vajrasky Kok." #: ../../../Misc/NEWS:7153 msgid "" "`Issue #19855 `__: uuid.getnode() on Unix now " "looks on the PATH for the executables used to find the mac address, with /" "sbin and /usr/sbin as fallbacks." msgstr "" "`Issue #19855 `__: uuid.getnode() on Unix now " "looks on the PATH for the executables used to find the mac address, with /" "sbin and /usr/sbin as fallbacks." #: ../../../Misc/NEWS:7157 msgid "" "`Issue #20007 `__: HTTPResponse.read(0) no " "more prematurely closes connection. Original patch by Simon Sapin." msgstr "" "`Issue #20007 `__: HTTPResponse.read(0) no " "more prematurely closes connection. Original patch by Simon Sapin." #: ../../../Misc/NEWS:7160 msgid "" "`Issue #19946 `__: multiprocessing now uses " "runpy to initialize __main__ in child processes when necessary, allowing it " "to correctly handle scripts without suffixes and submodules that use " "explicit relative imports or otherwise rely on parent modules being " "correctly imported prior to execution." msgstr "" "`Issue #19946 `__: multiprocessing now uses " "runpy to initialize __main__ in child processes when necessary, allowing it " "to correctly handle scripts without suffixes and submodules that use " "explicit relative imports or otherwise rely on parent modules being " "correctly imported prior to execution." #: ../../../Misc/NEWS:7166 msgid "" "`Issue #19921 `__: When Path.mkdir() is " "called with parents=True, any missing parent is created with the default " "permissions, ignoring the mode argument (mimicking the POSIX \"mkdir -p\" " "command)." msgstr "" "`Issue #19921 `__: When Path.mkdir() is " "called with parents=True, any missing parent is created with the default " "permissions, ignoring the mode argument (mimicking the POSIX \"mkdir -p\" " "command)." #: ../../../Misc/NEWS:7170 msgid "" "`Issue #19887 `__: Improve the Path.resolve() " "algorithm to support certain symlink chains." msgstr "" "`Issue #19887 `__: Improve the Path.resolve() " "algorithm to support certain symlink chains." #: ../../../Misc/NEWS:7173 msgid "" "`Issue #19912 `__: Fixed numerous bugs in " "ntpath.splitunc()." msgstr "" "`Issue #19912 `__: Fixed numerous bugs in " "ntpath.splitunc()." #: ../../../Misc/NEWS:7175 msgid "" "`Issue #19911 `__: ntpath.splitdrive() now " "correctly processes the 'İ' character (U+0130, LATIN CAPITAL LETTER I WITH " "DOT ABOVE)." msgstr "" "`Issue #19911 `__: ntpath.splitdrive() now " "correctly processes the 'İ' character (U+0130, LATIN CAPITAL LETTER I WITH " "DOT ABOVE)." #: ../../../Misc/NEWS:7178 msgid "" "`Issue #19532 `__: python -m compileall with " "no filename/directory arguments now respects the -f and -q flags instead of " "ignoring them." msgstr "" "`Issue #19532 `__: python -m compileall with " "no filename/directory arguments now respects the -f and -q flags instead of " "ignoring them." #: ../../../Misc/NEWS:7181 msgid "" "`Issue #19623 `__: Fixed writing to " "unseekable files in the aifc module." msgstr "" "`Issue #19623 `__: Fixed writing to " "unseekable files in the aifc module." #: ../../../Misc/NEWS:7183 msgid "" "`Issue #19946 `__: multiprocessing.spawn now " "raises ImportError when the module to be used as the main module cannot be " "imported." msgstr "" "`Issue #19946 `__: multiprocessing.spawn now " "raises ImportError when the module to be used as the main module cannot be " "imported." #: ../../../Misc/NEWS:7186 msgid "" "`Issue #17919 `__: select.poll.register() " "again works with poll.POLLNVAL on AIX. Fixed integer overflow in the " "eventmask parameter." msgstr "" "`Issue #17919 `__: select.poll.register() " "again works with poll.POLLNVAL on AIX. Fixed integer overflow in the " "eventmask parameter." #: ../../../Misc/NEWS:7189 msgid "" "`Issue #19063 `__: if a Charset's " "body_encoding was set to None, the email package would generate a message " "claiming the Content-Transfer-Encoding was 7bit, and produce garbage output " "for the content. This now works. A couple of other set_payload mishandlings " "of non-ASCII are also fixed. In addition, calling set_payload with a string " "argument without specifying a charset now raises an error (this is a new " "error in 3.4)." msgstr "" "`Issue #19063 `__: if a Charset's " "body_encoding was set to None, the email package would generate a message " "claiming the Content-Transfer-Encoding was 7bit, and produce garbage output " "for the content. This now works. A couple of other set_payload mishandlings " "of non-ASCII are also fixed. In addition, calling set_payload with a string " "argument without specifying a charset now raises an error (this is a new " "error in 3.4)." #: ../../../Misc/NEWS:7196 msgid "" "`Issue #15475 `__: Add __sizeof__ " "implementations for itertools objects." msgstr "" "`Issue #15475 `__: Add __sizeof__ " "implementations for itertools objects." #: ../../../Misc/NEWS:7198 msgid "" "`Issue #19944 `__: Fix importlib.find_spec() " "so it imports parents as needed and move the function to importlib.util." msgstr "" "`Issue #19944 `__: Fix importlib.find_spec() " "so it imports parents as needed and move the function to importlib.util." #: ../../../Misc/NEWS:7201 msgid "" "`Issue #19880 `__: Fix a reference leak in " "unittest.TestCase. Explicitly break reference cycles between frames and the " "_Outcome instance." msgstr "" "`Issue #19880 `__: Fix a reference leak in " "unittest.TestCase. Explicitly break reference cycles between frames and the " "_Outcome instance." #: ../../../Misc/NEWS:7204 msgid "" "`Issue #17429 `__: platform." "linux_distribution() now decodes files from the UTF-8 encoding with the " "surrogateescape error handler, instead of decoding from the locale encoding " "in strict mode. It fixes the function on Fedora 19 which is probably the " "first major distribution release with a non-ASCII name. Patch written by " "Toshio Kuratomi." msgstr "" "`Issue #17429 `__: platform." "linux_distribution() now decodes files from the UTF-8 encoding with the " "surrogateescape error handler, instead of decoding from the locale encoding " "in strict mode. It fixes the function on Fedora 19 which is probably the " "first major distribution release with a non-ASCII name. Patch written by " "Toshio Kuratomi." #: ../../../Misc/NEWS:7210 msgid "" "`Issue #19343 `__: Expose FreeBSD-specific " "APIs in resource module. Original patch by Koobs." msgstr "" "`Issue #19343 `__: Expose FreeBSD-specific " "APIs in resource module. Original patch by Koobs." #: ../../../Misc/NEWS:7213 msgid "" "`Issue #19929 `__: Call os.read with 32768 " "within subprocess.Popen.communicate rather than 4096 for efficiency. A " "microbenchmark shows Linux and OS X both using ~50% less cpu time this way." msgstr "" "`Issue #19929 `__: Call os.read with 32768 " "within subprocess.Popen.communicate rather than 4096 for efficiency. A " "microbenchmark shows Linux and OS X both using ~50% less cpu time this way." #: ../../../Misc/NEWS:7217 msgid "" "`Issue #19506 `__: Use a memoryview to avoid " "a data copy when piping data to stdin within subprocess.Popen.communicate. " "5-10% less cpu usage." msgstr "" "`Issue #19506 `__: Use a memoryview to avoid " "a data copy when piping data to stdin within subprocess.Popen.communicate. " "5-10% less cpu usage." #: ../../../Misc/NEWS:7220 msgid "" "`Issue #19876 `__: selectors unregister() no " "longer raises ValueError or OSError if the FD is closed (as long as it was " "registered)." msgstr "" "`Issue #19876 `__: selectors unregister() no " "longer raises ValueError or OSError if the FD is closed (as long as it was " "registered)." #: ../../../Misc/NEWS:7223 msgid "" "`Issue #19908 `__: pathlib now joins relative " "Windows paths correctly when a drive is present. Original patch by Antoine " "Pitrou." msgstr "" "`Issue #19908 `__: pathlib now joins relative " "Windows paths correctly when a drive is present. Original patch by Antoine " "Pitrou." #: ../../../Misc/NEWS:7226 msgid "" "`Issue #19296 `__: Silence compiler warning " "in dbm_open" msgstr "" "`Issue #19296 `__: Silence compiler warning " "in dbm_open" #: ../../../Misc/NEWS:7228 msgid "" "`Issue #6784 `__: Strings from Python 2 can " "now be unpickled as bytes objects by setting the encoding argument of " "Unpickler to be 'bytes'. Initial patch by Merlijn van Deen." msgstr "" "`Issue #6784 `__: Strings from Python 2 can " "now be unpickled as bytes objects by setting the encoding argument of " "Unpickler to be 'bytes'. Initial patch by Merlijn van Deen." #: ../../../Misc/NEWS:7232 msgid "" "`Issue #19839 `__: Fix regression in bz2 " "module's handling of non-bzip2 data at EOF, and analogous bug in lzma module." msgstr "" "`Issue #19839 `__: Fix regression in bz2 " "module's handling of non-bzip2 data at EOF, and analogous bug in lzma module." #: ../../../Misc/NEWS:7235 msgid "" "`Issue #19881 `__: Fix pickling bug where " "cpickle would emit bad pickle data for large bytes string (i.e., with size " "greater than 2**32-1)." msgstr "" "`Issue #19881 `__: Fix pickling bug where " "cpickle would emit bad pickle data for large bytes string (i.e., with size " "greater than 2**32-1)." #: ../../../Misc/NEWS:7238 msgid "" "`Issue #19138 `__: doctest's " "IGNORE_EXCEPTION_DETAIL now allows a match when no exception detail exists " "(no colon following the exception's name, or a colon does follow but no text " "follows the colon)." msgstr "" "`Issue #19138 `__: doctest's " "IGNORE_EXCEPTION_DETAIL now allows a match when no exception detail exists " "(no colon following the exception's name, or a colon does follow but no text " "follows the colon)." #: ../../../Misc/NEWS:7242 msgid "" "`Issue #19927 `__: Add __eq__ to path-based " "loaders in importlib." msgstr "" "`Issue #19927 `__: Add __eq__ to path-based " "loaders in importlib." #: ../../../Misc/NEWS:7244 msgid "" "`Issue #19827 `__: On UNIX, setblocking() and " "settimeout() methods of socket.socket can now avoid a second syscall if the " "ioctl() function can be used, or if the non-blocking flag of the socket is " "unchanged." msgstr "" "`Issue #19827 `__: On UNIX, setblocking() and " "settimeout() methods of socket.socket can now avoid a second syscall if the " "ioctl() function can be used, or if the non-blocking flag of the socket is " "unchanged." #: ../../../Misc/NEWS:7248 msgid "" "`Issue #19785 `__: smtplib now supports " "SSLContext.check_hostname and server name indication for TLS/SSL connections." msgstr "" "`Issue #19785 `__: smtplib now supports " "SSLContext.check_hostname and server name indication for TLS/SSL connections." #: ../../../Misc/NEWS:7251 msgid "" "`Issue #19784 `__: poplib now supports " "SSLContext.check_hostname and server name indication for TLS/SSL connections." msgstr "" "`Issue #19784 `__: poplib now supports " "SSLContext.check_hostname and server name indication for TLS/SSL connections." #: ../../../Misc/NEWS:7254 msgid "" "`Issue #19783 `__: nntplib now supports " "SSLContext.check_hostname and server name indication for TLS/SSL connections." msgstr "" "`Issue #19783 `__: nntplib now supports " "SSLContext.check_hostname and server name indication for TLS/SSL connections." #: ../../../Misc/NEWS:7257 msgid "" "`Issue #19782 `__: imaplib now supports " "SSLContext.check_hostname and server name indication for TLS/SSL connections." msgstr "" "`Issue #19782 `__: imaplib now supports " "SSLContext.check_hostname and server name indication for TLS/SSL connections." #: ../../../Misc/NEWS:7260 msgid "" "`Issue #20123 `__: Fix pydoc.synopsis() for " "\"binary\" modules." msgstr "" "`Issue #20123 `__: Fix pydoc.synopsis() for " "\"binary\" modules." #: ../../../Misc/NEWS:7262 msgid "" "`Issue #19834 `__: Support unpickling of " "exceptions pickled by Python 2." msgstr "" "`Issue #19834 `__: Support unpickling of " "exceptions pickled by Python 2." #: ../../../Misc/NEWS:7264 msgid "" "`Issue #19781 `__: ftplib now supports " "SSLContext.check_hostname and server name indication for TLS/SSL connections." msgstr "" "`Issue #19781 `__: ftplib now supports " "SSLContext.check_hostname and server name indication for TLS/SSL connections." #: ../../../Misc/NEWS:7267 msgid "" "`Issue #19509 `__: Add SSLContext." "check_hostname to match the peer's certificate with server_hostname on " "handshake." msgstr "" "`Issue #19509 `__: Add SSLContext." "check_hostname to match the peer's certificate with server_hostname on " "handshake." #: ../../../Misc/NEWS:7270 msgid "" "`Issue #15798 `__: Fixed subprocess.Popen() " "to no longer fail if file descriptor 0, 1 or 2 is closed." msgstr "" "`Issue #15798 `__: Fixed subprocess.Popen() " "to no longer fail if file descriptor 0, 1 or 2 is closed." #: ../../../Misc/NEWS:7273 msgid "" "`Issue #17897 `__: Optimized unpickle " "prefetching." msgstr "" "`Issue #17897 `__: Optimized unpickle " "prefetching." #: ../../../Misc/NEWS:7275 msgid "" "`Issue #3693 `__: Make the error message more " "helpful when the array.array() constructor is given a str. Move the array " "module typecode documentation to the docstring of the constructor." msgstr "" "`Issue #3693 `__: Make the error message more " "helpful when the array.array() constructor is given a str. Move the array " "module typecode documentation to the docstring of the constructor." #: ../../../Misc/NEWS:7279 msgid "" "`Issue #19088 `__: Fixed incorrect caching of " "the copyreg module in object.__reduce__() and object.__reduce_ex__()." msgstr "" "`Issue #19088 `__: Fixed incorrect caching of " "the copyreg module in object.__reduce__() and object.__reduce_ex__()." #: ../../../Misc/NEWS:7282 msgid "" "`Issue #19698 `__: Removed exec_module() " "methods from importlib.machinery.BuiltinImporter and ExtensionFileLoader." msgstr "" "`Issue #19698 `__: Removed exec_module() " "methods from importlib.machinery.BuiltinImporter and ExtensionFileLoader." #: ../../../Misc/NEWS:7285 msgid "" "`Issue #18864 `__: Added a setter for " "ModuleSpec.has_location." msgstr "" "`Issue #18864 `__: Added a setter for " "ModuleSpec.has_location." #: ../../../Misc/NEWS:7287 msgid "" "Fixed _pickle.Unpickler to not fail when loading empty strings as persistent " "IDs." msgstr "" #: ../../../Misc/NEWS:7290 msgid "" "`Issue #11480 `__: Fixed copy.copy to work " "with classes with custom metaclasses. Patch by Daniel Urban." msgstr "" "`Issue #11480 `__: Fixed copy.copy to work " "with classes with custom metaclasses. Patch by Daniel Urban." #: ../../../Misc/NEWS:7293 msgid "" "`Issue #6477 `__: Added support for pickling " "the types of built-in singletons (i.e., Ellipsis, NotImplemented, None)." msgstr "" "`Issue #6477 `__: Added support for pickling " "the types of built-in singletons (i.e., Ellipsis, NotImplemented, None)." #: ../../../Misc/NEWS:7296 msgid "" "`Issue #19713 `__: Add remaining PEP 451-" "related deprecations and move away from using find_module/find_loaer/" "load_module." msgstr "" "`Issue #19713 `__: Add remaining PEP 451-" "related deprecations and move away from using find_module/find_loaer/" "load_module." #: ../../../Misc/NEWS:7299 msgid "" "`Issue #19708 `__: Update pkgutil to use the " "new importer APIs." msgstr "" "`Issue #19708 `__: Update pkgutil to use the " "new importer APIs." #: ../../../Misc/NEWS:7301 msgid "" "`Issue #19703 `__: Update pydoc to use the " "new importer APIs." msgstr "" "`Issue #19703 `__: Update pydoc to use the " "new importer APIs." #: ../../../Misc/NEWS:7303 msgid "" "`Issue #19851 `__: Fixed a regression in " "reloading sub-modules." msgstr "" "`Issue #19851 `__: Fixed a regression in " "reloading sub-modules." #: ../../../Misc/NEWS:7305 msgid "ssl.create_default_context() sets OP_NO_COMPRESSION to prevent CRIME." msgstr "" #: ../../../Misc/NEWS:7307 msgid "" "`Issue #19802 `__: Add socket.SO_PRIORITY." msgstr "" "`Issue #19802 `__: Add socket.SO_PRIORITY." #: ../../../Misc/NEWS:7309 msgid "" "`Issue #11508 `__: Fixed uuid.getnode() and " "uuid.uuid1() on environment with virtual interface. Original patch by Kent " "Frazier." msgstr "" "`Issue #11508 `__: Fixed uuid.getnode() and " "uuid.uuid1() on environment with virtual interface. Original patch by Kent " "Frazier." #: ../../../Misc/NEWS:7312 msgid "" "`Issue #11489 `__: JSON decoder now accepts " "lone surrogates." msgstr "" "`Issue #11489 `__: JSON decoder now accepts " "lone surrogates." #: ../../../Misc/NEWS:7314 msgid "" "`Issue #19545 `__: Avoid chained exceptions " "while passing stray % to time.strptime(). Initial patch by Claudiu Popa." msgstr "" "`Issue #19545 `__: Avoid chained exceptions " "while passing stray % to time.strptime(). Initial patch by Claudiu Popa." #: ../../../Misc/NEWS:7320 msgid "" "`Issue #20058 `__: sys.stdin.readline() in " "IDLE now always returns only one line." msgstr "" "`Issue #20058 `__: sys.stdin.readline() in " "IDLE now always returns only one line." #: ../../../Misc/NEWS:7322 msgid "" "`Issue #19481 `__: print() of string subclass " "instance in IDLE no longer hangs." msgstr "" "`Issue #19481 `__: print() of string subclass " "instance in IDLE no longer hangs." #: ../../../Misc/NEWS:7324 msgid "" "`Issue #18270 `__: Prevent possible IDLE " "AttributeError on OS X when no initial shell window is present." msgstr "" "`Issue #18270 `__: Prevent possible IDLE " "AttributeError on OS X when no initial shell window is present." #: ../../../Misc/NEWS:7330 msgid "" "`Issue #20055 `__: Fix test_shutil under " "Windows with symlink privileges held. Patch by Vajrasky Kok." msgstr "" "`Issue #20055 `__: Fix test_shutil under " "Windows with symlink privileges held. Patch by Vajrasky Kok." #: ../../../Misc/NEWS:7333 msgid "" "`Issue #20070 `__: Don't run test_urllib2net " "when network resources are not enabled." msgstr "" "`Issue #20070 `__: Don't run test_urllib2net " "when network resources are not enabled." #: ../../../Misc/NEWS:7336 msgid "" "`Issue #19938 `__: Re-enabled " "test_bug_1333982 in test_dis, which had been disabled since 3.0 due to the " "changes in listcomp handling." msgstr "" "`Issue #19938 `__: Re-enabled " "test_bug_1333982 in test_dis, which had been disabled since 3.0 due to the " "changes in listcomp handling." #: ../../../Misc/NEWS:7339 msgid "" "`Issue #19320 `__: test_tcl no longer fails " "when wantobjects is false." msgstr "" "`Issue #19320 `__: test_tcl no longer fails " "when wantobjects is false." #: ../../../Misc/NEWS:7341 msgid "" "`Issue #19919 `__: Fix flaky SSL test. " "connect_ex() sometimes returns EWOULDBLOCK on Windows or VMs hosted on " "Windows." msgstr "" "`Issue #19919 `__: Fix flaky SSL test. " "connect_ex() sometimes returns EWOULDBLOCK on Windows or VMs hosted on " "Windows." #: ../../../Misc/NEWS:7344 msgid "" "`Issue #19912 `__: Added tests for ntpath." "splitunc()." msgstr "" "`Issue #19912 `__: Added tests for ntpath." "splitunc()." #: ../../../Misc/NEWS:7346 msgid "" "`Issue #19828 `__: Fixed test_site when the " "whole suite is run with -S." msgstr "" "`Issue #19828 `__: Fixed test_site when the " "whole suite is run with -S." #: ../../../Misc/NEWS:7348 msgid "" "`Issue #19928 `__: Implemented a test for " "repr() of cell objects." msgstr "" "`Issue #19928 `__: Implemented a test for " "repr() of cell objects." #: ../../../Misc/NEWS:7350 msgid "" "`Issue #19535 `__: Fixed test_docxmlrpc, " "test_functools, test_inspect, and test_statistics when python is run with -" "OO." msgstr "" "`Issue #19535 `__: Fixed test_docxmlrpc, " "test_functools, test_inspect, and test_statistics when python is run with -" "OO." #: ../../../Misc/NEWS:7353 msgid "" "`Issue #19926 `__: Removed unneeded test_main " "from test_abstract_numbers. Patch by Vajrasky Kok." msgstr "" "`Issue #19926 `__: Removed unneeded test_main " "from test_abstract_numbers. Patch by Vajrasky Kok." #: ../../../Misc/NEWS:7356 msgid "" "`Issue #19572 `__: More skipped tests " "explicitly marked as skipped." msgstr "" "`Issue #19572 `__: More skipped tests " "explicitly marked as skipped." #: ../../../Misc/NEWS:7358 msgid "" "`Issue #19595 `__, #19987: Re-enabled a long-" "disabled test in test_winsound." msgstr "" "`Issue #19595 `__, #19987: Re-enabled a long-" "disabled test in test_winsound." #: ../../../Misc/NEWS:7360 msgid "" "`Issue #19588 `__: Fixed tests in test_random " "that were silently skipped most of the time. Patch by Julian Gindi." msgstr "" "`Issue #19588 `__: Fixed tests in test_random " "that were silently skipped most of the time. Patch by Julian Gindi." #: ../../../Misc/NEWS:7366 msgid "" "`Issue #19728 `__: Enable pip installation by " "default on Windows." msgstr "" "`Issue #19728 `__: Enable pip installation by " "default on Windows." #: ../../../Misc/NEWS:7368 msgid "`Issue #16136 `__: Remove VMS support" msgstr "`Issue #16136 `__: Remove VMS support" #: ../../../Misc/NEWS:7370 msgid "" "`Issue #18215 `__: Add script Tools/ssl/" "test_multiple_versions.py to compile and run Python's unit tests with " "multiple versions of OpenSSL." msgstr "" "`Issue #18215 `__: Add script Tools/ssl/" "test_multiple_versions.py to compile and run Python's unit tests with " "multiple versions of OpenSSL." #: ../../../Misc/NEWS:7373 msgid "" "`Issue #19922 `__: define " "_INCLUDE__STDC_A1_SOURCE in HP-UX to include mbstate_t for mbrtowc()." msgstr "" "`Issue #19922 `__: define " "_INCLUDE__STDC_A1_SOURCE in HP-UX to include mbstate_t for mbrtowc()." #: ../../../Misc/NEWS:7376 msgid "" "`Issue #19788 `__: kill_python(_d).exe is now " "run as a PreBuildEvent on the pythoncore sub-project. This should prevent " "build errors due a previous build's python(_d).exe still running." msgstr "" "`Issue #19788 `__: kill_python(_d).exe is now " "run as a PreBuildEvent on the pythoncore sub-project. This should prevent " "build errors due a previous build's python(_d).exe still running." #: ../../../Misc/NEWS:7383 msgid "" "`Issue #20265 `__: Updated some parts of the " "Using Windows document." msgstr "" "`Issue #20265 `__: Updated some parts of the " "Using Windows document." #: ../../../Misc/NEWS:7385 msgid "" "`Issue #20266 `__: Updated some parts of the " "Windows FAQ." msgstr "" "`Issue #20266 `__: Updated some parts of the " "Windows FAQ." #: ../../../Misc/NEWS:7387 msgid "" "`Issue #20255 `__: Updated the about and bugs " "pages." msgstr "" "`Issue #20255 `__: Updated the about and bugs " "pages." #: ../../../Misc/NEWS:7389 msgid "" "`Issue #20253 `__: Fixed a typo in the " "ipaddress docs that advertised an illegal attribute name. Found by INADA " "Naoki." msgstr "" "`Issue #20253 `__: Fixed a typo in the " "ipaddress docs that advertised an illegal attribute name. Found by INADA " "Naoki." #: ../../../Misc/NEWS:7392 msgid "" "`Issue #18840 `__: Introduce the json module " "in the tutorial, and de-emphasize the pickle module." msgstr "" "`Issue #18840 `__: Introduce the json module " "in the tutorial, and de-emphasize the pickle module." #: ../../../Misc/NEWS:7395 msgid "" "`Issue #19845 `__: Updated the Compiling " "Python on Windows section." msgstr "" "`Issue #19845 `__: Updated the Compiling " "Python on Windows section." #: ../../../Misc/NEWS:7397 msgid "" "`Issue #19795 `__: Improved markup of True/" "False constants." msgstr "" "`Issue #19795 `__: Improved markup of True/" "False constants." #: ../../../Misc/NEWS:7402 msgid "" "`Issue #19659 `__: Added documentation for " "Argument Clinic." msgstr "" "`Issue #19659 `__: Added documentation for " "Argument Clinic." #: ../../../Misc/NEWS:7404 msgid "" "`Issue #19976 `__: Argument Clinic " "METH_NOARGS functions now always take two parameters." msgstr "" "`Issue #19976 `__: Argument Clinic " "METH_NOARGS functions now always take two parameters." #: ../../../Misc/NEWS:7409 msgid "Python 3.4.0 Beta 1" msgstr "Python 3.4.0 Beta 1" #: ../../../Misc/NEWS:7411 msgid "Release date: 2013-11-24" msgstr "" #: ../../../Misc/NEWS:7416 msgid "" "Use the repr of a module name in more places in import, especially " "exceptions." msgstr "" #: ../../../Misc/NEWS:7419 msgid "" "`Issue #19619 `__: str.encode, bytes.decode " "and bytearray.decode now use an internal API to throw LookupError for known " "non-text encodings, rather than attempting the encoding or decoding " "operation and then throwing a TypeError for an unexpected output type. (The " "latter mechanism remains in place for third party non-text encodings)" msgstr "" "`Issue #19619 `__: str.encode, bytes.decode " "and bytearray.decode now use an internal API to throw LookupError for known " "non-text encodings, rather than attempting the encoding or decoding " "operation and then throwing a TypeError for an unexpected output type. (The " "latter mechanism remains in place for third party non-text encodings)" #: ../../../Misc/NEWS:7425 msgid "" "`Issue #19183 `__: Implement PEP 456 'secure " "and interchangeable hash algorithm'. Python now uses SipHash24 on all major " "platforms." msgstr "" "`Issue #19183 `__: Implement PEP 456 'secure " "and interchangeable hash algorithm'. Python now uses SipHash24 on all major " "platforms." #: ../../../Misc/NEWS:7428 msgid "" "`Issue #12892 `__: The utf-16* and utf-32* " "encoders no longer allow surrogate code points (U+D800-U+DFFF) to be " "encoded. The utf-32* decoders no longer decode byte sequences that " "correspond to surrogate code points. The surrogatepass error handler now " "works with the utf-16* and utf-32* codecs. Based on patches by Victor " "Stinner and Kang-Hao (Kenny) Lu." msgstr "" "`Issue #12892 `__: The utf-16* and utf-32* " "encoders no longer allow surrogate code points (U+D800-U+DFFF) to be " "encoded. The utf-32* decoders no longer decode byte sequences that " "correspond to surrogate code points. The surrogatepass error handler now " "works with the utf-16* and utf-32* codecs. Based on patches by Victor " "Stinner and Kang-Hao (Kenny) Lu." #: ../../../Misc/NEWS:7434 msgid "" "`Issue #17806 `__: Added keyword-argument " "support for \"tabsize\" to str/bytes.expandtabs()." msgstr "" "`Issue #17806 `__: Added keyword-argument " "support for \"tabsize\" to str/bytes.expandtabs()." #: ../../../Misc/NEWS:7437 msgid "" "`Issue #17828 `__: Output type errors in str." "encode(), bytes.decode() and bytearray.decode() now direct users to codecs." "encode() or codecs.decode() as appropriate." msgstr "" "`Issue #17828 `__: Output type errors in str." "encode(), bytes.decode() and bytearray.decode() now direct users to codecs." "encode() or codecs.decode() as appropriate." #: ../../../Misc/NEWS:7441 msgid "" "`Issue #17828 `__: The interpreter now " "attempts to chain errors that occur in codec processing with a replacement " "exception of the same type that includes the codec name in the error " "message. It ensures it only does this when the creation of the replacement " "exception won't lose any information." msgstr "" "`Issue #17828 `__: The interpreter now " "attempts to chain errors that occur in codec processing with a replacement " "exception of the same type that includes the codec name in the error " "message. It ensures it only does this when the creation of the replacement " "exception won't lose any information." #: ../../../Misc/NEWS:7446 msgid "" "`Issue #19466 `__: Clear the frames of daemon " "threads earlier during the Python shutdown to call object destructors. So " "\"unclosed file\" resource warnings are now correctly emitted for daemon " "threads." msgstr "" "`Issue #19466 `__: Clear the frames of daemon " "threads earlier during the Python shutdown to call object destructors. So " "\"unclosed file\" resource warnings are now correctly emitted for daemon " "threads." #: ../../../Misc/NEWS:7450 msgid "" "`Issue #19514 `__: Deduplicate some " "_Py_IDENTIFIER declarations. Patch by Andrei Dorian Duma." msgstr "" "`Issue #19514 `__: Deduplicate some " "_Py_IDENTIFIER declarations. Patch by Andrei Dorian Duma." #: ../../../Misc/NEWS:7453 msgid "" "`Issue #17936 `__: Fix O(n**2) behaviour when " "adding or removing many subclasses of a given type." msgstr "" "`Issue #17936 `__: Fix O(n**2) behaviour when " "adding or removing many subclasses of a given type." #: ../../../Misc/NEWS:7456 msgid "" "`Issue #19428 `__: zipimport now handles " "errors when reading truncated or invalid ZIP archive." msgstr "" "`Issue #19428 `__: zipimport now handles " "errors when reading truncated or invalid ZIP archive." #: ../../../Misc/NEWS:7459 msgid "" "`Issue #18408 `__: Add a new " "PyFrame_FastToLocalsWithError() function to handle exceptions when merging " "fast locals into f_locals of a frame. PyEval_GetLocals() now raises an " "exception and return NULL on failure." msgstr "" "`Issue #18408 `__: Add a new " "PyFrame_FastToLocalsWithError() function to handle exceptions when merging " "fast locals into f_locals of a frame. PyEval_GetLocals() now raises an " "exception and return NULL on failure." #: ../../../Misc/NEWS:7463 msgid "" "`Issue #19369 `__: Optimized the usage of " "__length_hint__()." msgstr "" "`Issue #19369 `__: Optimized the usage of " "__length_hint__()." #: ../../../Misc/NEWS:7465 msgid "" "`Issue #28026 `__: Raise ImportError when " "exec_module() exists but create_module() is missing." msgstr "" "`Issue #28026 `__: Raise ImportError when " "exec_module() exists but create_module() is missing." #: ../../../Misc/NEWS:7468 msgid "" "`Issue #18603 `__: Ensure that PyOS_mystricmp " "and PyOS_mystrnicmp are in the Python executable and not removed by the " "linker's optimizer." msgstr "" "`Issue #18603 `__: Ensure that PyOS_mystricmp " "and PyOS_mystrnicmp are in the Python executable and not removed by the " "linker's optimizer." #: ../../../Misc/NEWS:7471 msgid "" "`Issue #19306 `__: Add extra hints to the " "faulthandler module's stack dumps that these are \"upside down\"." msgstr "" "`Issue #19306 `__: Add extra hints to the " "faulthandler module's stack dumps that these are \"upside down\"." #: ../../../Misc/NEWS:7477 msgid "" "`Issue #3158 `__: doctest can now find " "doctests in functions and methods written in C." msgstr "" "`Issue #3158 `__: doctest can now find " "doctests in functions and methods written in C." #: ../../../Misc/NEWS:7480 msgid "" "`Issue #13477 `__: Added command line " "interface to the tarfile module. Original patch by Berker Peksag." msgstr "" "`Issue #13477 `__: Added command line " "interface to the tarfile module. Original patch by Berker Peksag." #: ../../../Misc/NEWS:7483 msgid "" "`Issue #19674 `__: inspect.signature() now " "produces a correct signature for some builtins." msgstr "" "`Issue #19674 `__: inspect.signature() now " "produces a correct signature for some builtins." #: ../../../Misc/NEWS:7486 msgid "" "`Issue #19722 `__: Added opcode." "stack_effect(), which computes the stack effect of bytecode instructions." msgstr "" "`Issue #19722 `__: Added opcode." "stack_effect(), which computes the stack effect of bytecode instructions." #: ../../../Misc/NEWS:7489 msgid "" "`Issue #19735 `__: Implement private function " "ssl._create_stdlib_context() to create SSLContext objects in Python's stdlib " "module. It provides a single configuration point and makes use of SSLContext." "load_default_certs()." msgstr "" "`Issue #19735 `__: Implement private function " "ssl._create_stdlib_context() to create SSLContext objects in Python's stdlib " "module. It provides a single configuration point and makes use of SSLContext." "load_default_certs()." #: ../../../Misc/NEWS:7493 msgid "" "`Issue #16203 `__: Add re.fullmatch() " "function and regex.fullmatch() method, which anchor the pattern at both ends " "of the string to match. Original patch by Matthew Barnett." msgstr "" "`Issue #16203 `__: Add re.fullmatch() " "function and regex.fullmatch() method, which anchor the pattern at both ends " "of the string to match. Original patch by Matthew Barnett." #: ../../../Misc/NEWS:7497 msgid "" "`Issue #13592 `__: Improved the repr for " "regular expression pattern objects. Based on patch by Hugo Lopes Tavares." msgstr "" "`Issue #13592 `__: Improved the repr for " "regular expression pattern objects. Based on patch by Hugo Lopes Tavares." #: ../../../Misc/NEWS:7500 msgid "" "`Issue #19641 `__: Added the audioop." "byteswap() function to convert big-endian samples to little-endian and vice " "versa." msgstr "" "`Issue #19641 `__: Added the audioop." "byteswap() function to convert big-endian samples to little-endian and vice " "versa." #: ../../../Misc/NEWS:7503 msgid "" "`Issue #15204 `__: Deprecated the 'U' mode in " "file-like objects." msgstr "" "`Issue #15204 `__: Deprecated the 'U' mode in " "file-like objects." #: ../../../Misc/NEWS:7505 msgid "" "`Issue #17810 `__: Implement PEP 3154, pickle " "protocol 4." msgstr "" "`Issue #17810 `__: Implement PEP 3154, pickle " "protocol 4." #: ../../../Misc/NEWS:7507 msgid "" "`Issue #19668 `__: Added support for the " "cp1125 encoding." msgstr "" "`Issue #19668 `__: Added support for the " "cp1125 encoding." #: ../../../Misc/NEWS:7509 msgid "" "`Issue #19689 `__: Add ssl." "create_default_context() factory function. It creates a new SSLContext " "object with secure default settings." msgstr "" "`Issue #19689 `__: Add ssl." "create_default_context() factory function. It creates a new SSLContext " "object with secure default settings." #: ../../../Misc/NEWS:7512 msgid "" "`Issue #19727 `__: os.utime(..., None) is now " "potentially more precise under Windows." msgstr "" "`Issue #19727 `__: os.utime(..., None) is now " "potentially more precise under Windows." #: ../../../Misc/NEWS:7515 msgid "" "`Issue #17201 `__: ZIP64 extensions now are " "enabled by default. Patch by William Mallard." msgstr "" "`Issue #17201 `__: ZIP64 extensions now are " "enabled by default. Patch by William Mallard." #: ../../../Misc/NEWS:7518 msgid "" "`Issue #19292 `__: Add SSLContext." "load_default_certs() to load default root CA certificates from default " "stores or system stores. By default the method loads CA certs for " "authentication of server certs." msgstr "" "`Issue #19292 `__: Add SSLContext." "load_default_certs() to load default root CA certificates from default " "stores or system stores. By default the method loads CA certs for " "authentication of server certs." #: ../../../Misc/NEWS:7522 msgid "" "`Issue #19673 `__: Add pathlib to the stdlib " "as a provisional module (PEP 428)." msgstr "" "`Issue #19673 `__: Add pathlib to the stdlib " "as a provisional module (PEP 428)." #: ../../../Misc/NEWS:7524 msgid "" "`Issue #16596 `__: pdb in a generator now " "properly skips over yield and yield from rather than stepping out of the " "generator into its caller. (This is essential for stepping through asyncio " "coroutines.)" msgstr "" "`Issue #16596 `__: pdb in a generator now " "properly skips over yield and yield from rather than stepping out of the " "generator into its caller. (This is essential for stepping through asyncio " "coroutines.)" #: ../../../Misc/NEWS:7528 msgid "" "`Issue #17916 `__: Added dis.Bytecode." "from_traceback() and dis.Bytecode.current_offset to easily display \"current " "instruction\" markers in the new disassembly API (Patch by Claudiu Popa)." msgstr "" "`Issue #17916 `__: Added dis.Bytecode." "from_traceback() and dis.Bytecode.current_offset to easily display \"current " "instruction\" markers in the new disassembly API (Patch by Claudiu Popa)." #: ../../../Misc/NEWS:7532 msgid "" "`Issue #19552 `__: venv now supports " "bootstrapping pip into virtual environments" msgstr "" "`Issue #19552 `__: venv now supports " "bootstrapping pip into virtual environments" #: ../../../Misc/NEWS:7534 msgid "" "`Issue #17134 `__: Finalize interface to " "Windows' certificate store. Cert and CRL enumeration are now two functions. " "enum_certificates() also returns purpose flags as set of OIDs." msgstr "" "`Issue #17134 `__: Finalize interface to " "Windows' certificate store. Cert and CRL enumeration are now two functions. " "enum_certificates() also returns purpose flags as set of OIDs." #: ../../../Misc/NEWS:7538 msgid "" "`Issue #19555 `__: Restore sysconfig." "get_config_var('SO'), (and the distutils equivalent) with a " "DeprecationWarning pointing people at $EXT_SUFFIX." msgstr "" "`Issue #19555 `__: Restore sysconfig." "get_config_var('SO'), (and the distutils equivalent) with a " "DeprecationWarning pointing people at $EXT_SUFFIX." #: ../../../Misc/NEWS:7541 msgid "" "`Issue #8813 `__: Add SSLContext.verify_flags " "to change the verification flags of the context in order to enable " "certification revocation list (CRL) checks or strict X509 rules." msgstr "" "`Issue #8813 `__: Add SSLContext.verify_flags " "to change the verification flags of the context in order to enable " "certification revocation list (CRL) checks or strict X509 rules." #: ../../../Misc/NEWS:7545 msgid "" "`Issue #18294 `__: Fix the zlib module to " "make it 64-bit safe." msgstr "" "`Issue #18294 `__: Fix the zlib module to " "make it 64-bit safe." #: ../../../Misc/NEWS:7547 msgid "" "`Issue #19682 `__: Fix compatibility issue " "with old version of OpenSSL that was introduced by `Issue #18379 `__." msgstr "" "`Issue #19682 `__: Fix compatibility issue " "with old version of OpenSSL that was introduced by `Issue #18379 `__." #: ../../../Misc/NEWS:7550 msgid "" "`Issue #14455 `__: plistlib now supports " "binary plists and has an updated API." msgstr "" "`Issue #14455 `__: plistlib now supports " "binary plists and has an updated API." #: ../../../Misc/NEWS:7552 msgid "" "`Issue #19633 `__: Fixed writing not " "compressed 16- and 32-bit wave files on big-endian platforms." msgstr "" "`Issue #19633 `__: Fixed writing not " "compressed 16- and 32-bit wave files on big-endian platforms." #: ../../../Misc/NEWS:7555 msgid "" "`Issue #18379 `__: SSLSocket.getpeercert() " "returns CA issuer AIA fields, OCSP and CRL distribution points." msgstr "" "`Issue #18379 `__: SSLSocket.getpeercert() " "returns CA issuer AIA fields, OCSP and CRL distribution points." #: ../../../Misc/NEWS:7558 msgid "" "`Issue #18138 `__: Implement cadata argument " "of SSLContext.load_verify_location() to load CA certificates and CRL from " "memory. It supports PEM and DER encoded strings." msgstr "" "`Issue #18138 `__: Implement cadata argument " "of SSLContext.load_verify_location() to load CA certificates and CRL from " "memory. It supports PEM and DER encoded strings." #: ../../../Misc/NEWS:7562 msgid "" "`Issue #18775 `__: Add name and block_size " "attribute to HMAC object. They now provide the same API elements as non-" "keyed cryptographic hash functions." msgstr "" "`Issue #18775 `__: Add name and block_size " "attribute to HMAC object. They now provide the same API elements as non-" "keyed cryptographic hash functions." #: ../../../Misc/NEWS:7565 msgid "" "`Issue #17276 `__: MD5 as default digestmod " "for HMAC is deprecated. The HMAC module supports digestmod names, e.g. hmac." "HMAC('sha1')." msgstr "" "`Issue #17276 `__: MD5 as default digestmod " "for HMAC is deprecated. The HMAC module supports digestmod names, e.g. hmac." "HMAC('sha1')." #: ../../../Misc/NEWS:7568 msgid "" "`Issue #19449 `__: in csv's writerow, handle " "non-string keys when generating the error message that certain keys are not " "in the 'fieldnames' list." msgstr "" "`Issue #19449 `__: in csv's writerow, handle " "non-string keys when generating the error message that certain keys are not " "in the 'fieldnames' list." #: ../../../Misc/NEWS:7571 msgid "" "`Issue #13633 `__: Added a new " "convert_charrefs keyword arg to HTMLParser that, when True, automatically " "converts all character references." msgstr "" "`Issue #13633 `__: Added a new " "convert_charrefs keyword arg to HTMLParser that, when True, automatically " "converts all character references." #: ../../../Misc/NEWS:7574 msgid "" "`Issue #2927 `__: Added the unescape() " "function to the html module." msgstr "" "`Issue #2927 `__: Added the unescape() " "function to the html module." #: ../../../Misc/NEWS:7576 msgid "" "`Issue #8402 `__: Added the escape() function " "to the glob module." msgstr "" "`Issue #8402 `__: Added the escape() function " "to the glob module." #: ../../../Misc/NEWS:7578 msgid "" "`Issue #17618 `__: Add Base85 and Ascii85 " "encoding/decoding to the base64 module." msgstr "" "`Issue #17618 `__: Add Base85 and Ascii85 " "encoding/decoding to the base64 module." #: ../../../Misc/NEWS:7580 msgid "" "`Issue #19634 `__: time.strftime(\"%y\") now " "raises a ValueError on AIX when given a year before 1900." msgstr "" "`Issue #19634 `__: time.strftime(\"%y\") now " "raises a ValueError on AIX when given a year before 1900." #: ../../../Misc/NEWS:7583 msgid "" "Fix test.support.bind_port() to not cause an error when Python was compiled " "on a system with SO_REUSEPORT defined in the headers but run on a system " "with an OS kernel that does not support that reasonably new socket option." msgstr "" #: ../../../Misc/NEWS:7587 msgid "" "Fix compilation error under gcc of the ctypes module bundled libffi for arm." msgstr "" #: ../../../Misc/NEWS:7589 msgid "" "`Issue #19448 `__: Add private API to SSL " "module to lookup ASN.1 objects by OID, NID, short name and long name." msgstr "" "`Issue #19448 `__: Add private API to SSL " "module to lookup ASN.1 objects by OID, NID, short name and long name." #: ../../../Misc/NEWS:7592 msgid "" "`Issue #19282 `__: dbm.open now supports the " "context management protocol. (Initial patch by Claudiu Popa)" msgstr "" "`Issue #19282 `__: dbm.open now supports the " "context management protocol. (Initial patch by Claudiu Popa)" #: ../../../Misc/NEWS:7595 msgid "" "`Issue #8311 `__: Added support for writing " "any bytes-like objects in the aifc, sunau, and wave modules." msgstr "" "`Issue #8311 `__: Added support for writing " "any bytes-like objects in the aifc, sunau, and wave modules." #: ../../../Misc/NEWS:7598 msgid "" "`Issue #5202 `__: Added support for unseekable " "files in the wave module." msgstr "" "`Issue #5202 `__: Added support for unseekable " "files in the wave module." #: ../../../Misc/NEWS:7600 msgid "" "`Issue #19544 `__ and `Issue #1180 `__: Restore global option to ignore ~/.pydistutils.cfg " "in Distutils, accidentally removed in backout of distutils2 changes." msgstr "" "`Issue #19544 `__ and `Issue #1180 `__: Restore global option to ignore ~/.pydistutils.cfg " "in Distutils, accidentally removed in backout of distutils2 changes." #: ../../../Misc/NEWS:7604 msgid "" "`Issue #19523 `__: Closed FileHandler leak " "which occurred when delay was set." msgstr "" "`Issue #19523 `__: Closed FileHandler leak " "which occurred when delay was set." #: ../../../Misc/NEWS:7606 msgid "" "`Issue #19544 `__ and `Issue #6516 `__: Restore support for --user and --group parameters " "to sdist command accidentally rolled back as part of the distutils2 rollback." msgstr "" "`Issue #19544 `__ and `Issue #6516 `__: Restore support for --user and --group parameters " "to sdist command accidentally rolled back as part of the distutils2 rollback." #: ../../../Misc/NEWS:7610 msgid "" "`Issue #13674 `__: Prevented time.strftime " "from crashing on Windows when given a year before 1900 and a format of %y." msgstr "" "`Issue #13674 `__: Prevented time.strftime " "from crashing on Windows when given a year before 1900 and a format of %y." #: ../../../Misc/NEWS:7613 msgid "" "`Issue #19406 `__: implementation of the " "ensurepip module (part of PEP 453). Patch by Donald Stufft and Nick Coghlan." msgstr "" "`Issue #19406 `__: implementation of the " "ensurepip module (part of PEP 453). Patch by Donald Stufft and Nick Coghlan." #: ../../../Misc/NEWS:7616 msgid "" "`Issue #19544 `__ and `Issue #6286 `__: Restore use of urllib over http allowing use of " "http_proxy for Distutils upload command, a feature accidentally lost in the " "rollback of distutils2." msgstr "" "`Issue #19544 `__ and `Issue #6286 `__: Restore use of urllib over http allowing use of " "http_proxy for Distutils upload command, a feature accidentally lost in the " "rollback of distutils2." #: ../../../Misc/NEWS:7620 msgid "" "`Issue #19544 `__ and `Issue #7457 `__: Restore the read_pkg_file method to distutils.dist." "DistributionMetadata accidentally removed in the undo of distutils2." msgstr "" "`Issue #19544 `__ and `Issue #7457 `__: Restore the read_pkg_file method to distutils.dist." "DistributionMetadata accidentally removed in the undo of distutils2." #: ../../../Misc/NEWS:7624 msgid "" "`Issue #16685 `__: Added support for any " "bytes-like objects in the audioop module. Removed support for strings." msgstr "" "`Issue #16685 `__: Added support for any " "bytes-like objects in the audioop module. Removed support for strings." #: ../../../Misc/NEWS:7627 msgid "" "`Issue #7171 `__: Add Windows implementation " "of ``inet_ntop`` and ``inet_pton`` to socket module. Patch by Atsuo Ishimoto." msgstr "" "`Issue #7171 `__: Add Windows implementation " "of ``inet_ntop`` and ``inet_pton`` to socket module. Patch by Atsuo Ishimoto." #: ../../../Misc/NEWS:7630 msgid "" "`Issue #19261 `__: Added support for writing " "24-bit samples in the sunau module." msgstr "" "`Issue #19261 `__: Added support for writing " "24-bit samples in the sunau module." #: ../../../Misc/NEWS:7632 msgid "" "`Issue #1097797 `__: Added CP273 encoding, " "used on IBM mainframes in Germany and Austria. Mapping provided by Michael " "Bierenfeld." msgstr "" "`Issue #1097797 `__: Added CP273 encoding, " "used on IBM mainframes in Germany and Austria. Mapping provided by Michael " "Bierenfeld." #: ../../../Misc/NEWS:7635 msgid "" "`Issue #1575020 `__: Fixed support of 24-" "bit wave files on big-endian platforms." msgstr "" "`Issue #1575020 `__: Fixed support of 24-" "bit wave files on big-endian platforms." #: ../../../Misc/NEWS:7637 msgid "" "`Issue #19378 `__: Fixed a number of cases in " "the dis module where the new \"file\" parameter was not being honoured " "correctly" msgstr "" "`Issue #19378 `__: Fixed a number of cases in " "the dis module where the new \"file\" parameter was not being honoured " "correctly" #: ../../../Misc/NEWS:7640 msgid "" "`Issue #19378 `__: Removed the \"dis.Bytecode." "show_info\" method" msgstr "" "`Issue #19378 `__: Removed the \"dis.Bytecode." "show_info\" method" #: ../../../Misc/NEWS:7642 msgid "" "`Issue #19378 `__: Renamed the \"dis.Bytecode." "display_code\" method to \"dis.Bytecode.dis\" and converted it to returning " "a string rather than printing output." msgstr "" "`Issue #19378 `__: Renamed the \"dis.Bytecode." "display_code\" method to \"dis.Bytecode.dis\" and converted it to returning " "a string rather than printing output." #: ../../../Misc/NEWS:7646 msgid "" "`Issue #19378 `__: the \"line_offset\" " "parameter in the new \"dis.get_instructions\" API has been renamed to " "\"first_line\" (and the default value and usage changed accordingly). This " "should reduce confusion with the more common use of \"offset\" in the dis " "docs to refer to bytecode offsets." msgstr "" "`Issue #19378 `__: the \"line_offset\" " "parameter in the new \"dis.get_instructions\" API has been renamed to " "\"first_line\" (and the default value and usage changed accordingly). This " "should reduce confusion with the more common use of \"offset\" in the dis " "docs to refer to bytecode offsets." #: ../../../Misc/NEWS:7651 msgid "" "`Issue #18678 `__: Corrected spwd struct " "member names in spwd module: sp_nam->sp_namp, and sp_pwd->sp_pwdp. The old " "names are kept as extra structseq members, for backward compatibility." msgstr "" "`Issue #18678 `__: Corrected spwd struct " "member names in spwd module: sp_nam->sp_namp, and sp_pwd->sp_pwdp. The old " "names are kept as extra structseq members, for backward compatibility." #: ../../../Misc/NEWS:7655 msgid "" "`Issue #6157 `__: Fixed tkinter.Text.debug(). " "tkinter.Text.bbox() now raises TypeError instead of TclError on wrong number " "of arguments. Original patch by Guilherme Polo." msgstr "" "`Issue #6157 `__: Fixed tkinter.Text.debug(). " "tkinter.Text.bbox() now raises TypeError instead of TclError on wrong number " "of arguments. Original patch by Guilherme Polo." #: ../../../Misc/NEWS:7659 msgid "" "`Issue #10197 `__: Rework subprocess." "get[status]output to use subprocess functionality and thus to work on " "Windows. Patch by Nick Coghlan" msgstr "" "`Issue #10197 `__: Rework subprocess." "get[status]output to use subprocess functionality and thus to work on " "Windows. Patch by Nick Coghlan" #: ../../../Misc/NEWS:7662 msgid "" "`Issue #6160 `__: The bbox() method of tkinter." "Spinbox now returns a tuple of integers instead of a string. Based on patch " "by Guilherme Polo." msgstr "" "`Issue #6160 `__: The bbox() method of tkinter." "Spinbox now returns a tuple of integers instead of a string. Based on patch " "by Guilherme Polo." #: ../../../Misc/NEWS:7665 msgid "" "`Issue #19403 `__: contextlib.redirect_stdout " "is now reentrant" msgstr "" "`Issue #19403 `__: contextlib.redirect_stdout " "is now reentrant" #: ../../../Misc/NEWS:7667 msgid "" "`Issue #19286 `__: Directories in " "``package_data`` are no longer added to the filelist, preventing failure " "outlined in the ticket." msgstr "" "`Issue #19286 `__: Directories in " "``package_data`` are no longer added to the filelist, preventing failure " "outlined in the ticket." #: ../../../Misc/NEWS:7670 msgid "" "`Issue #19480 `__: HTMLParser now accepts all " "valid start-tag names as defined by the HTML5 standard." msgstr "" "`Issue #19480 `__: HTMLParser now accepts all " "valid start-tag names as defined by the HTML5 standard." #: ../../../Misc/NEWS:7673 msgid "" "`Issue #15114 `__: The html.parser module now " "raises a DeprecationWarning when the strict argument of HTMLParser or the " "HTMLParser.error method are used." msgstr "" "`Issue #15114 `__: The html.parser module now " "raises a DeprecationWarning when the strict argument of HTMLParser or the " "HTMLParser.error method are used." #: ../../../Misc/NEWS:7676 msgid "" "`Issue #19410 `__: Undo the special-casing " "removal of '' for importlib.machinery.FileFinder." msgstr "" "`Issue #19410 `__: Undo the special-casing " "removal of '' for importlib.machinery.FileFinder." #: ../../../Misc/NEWS:7679 msgid "" "`Issue #19424 `__: Fix the warnings module to " "accept filename containing surrogate characters." msgstr "" "`Issue #19424 `__: Fix the warnings module to " "accept filename containing surrogate characters." #: ../../../Misc/NEWS:7682 msgid "" "`Issue #19435 `__: Fix directory traversal " "attack on CGIHttpRequestHandler." msgstr "" "`Issue #19435 `__: Fix directory traversal " "attack on CGIHttpRequestHandler." #: ../../../Misc/NEWS:7684 msgid "" "`Issue #19227 `__: Remove pthread_atfork() " "handler. The handler was added to solve #18747 but has caused issues." msgstr "" "`Issue #19227 `__: Remove pthread_atfork() " "handler. The handler was added to solve #18747 but has caused issues." #: ../../../Misc/NEWS:7687 msgid "" "`Issue #19420 `__: Fix reference leak in " "module initialization code of _hashopenssl.c" msgstr "" "`Issue #19420 `__: Fix reference leak in " "module initialization code of _hashopenssl.c" #: ../../../Misc/NEWS:7690 msgid "" "`Issue #19329 `__: Optimized compiling " "charsets in regular expressions." msgstr "" "`Issue #19329 `__: Optimized compiling " "charsets in regular expressions." #: ../../../Misc/NEWS:7692 msgid "" "`Issue #19227 `__: Try to fix deadlocks " "caused by re-seeding then OpenSSL pseudo-random number generator on fork()." msgstr "" "`Issue #19227 `__: Try to fix deadlocks " "caused by re-seeding then OpenSSL pseudo-random number generator on fork()." #: ../../../Misc/NEWS:7695 msgid "" "`Issue #16037 `__: HTTPMessage.readheaders() " "raises an HTTPException when more than 100 headers are read. Adapted from " "patch by Jyrki Pulliainen." msgstr "" "`Issue #16037 `__: HTTPMessage.readheaders() " "raises an HTTPException when more than 100 headers are read. Adapted from " "patch by Jyrki Pulliainen." #: ../../../Misc/NEWS:7698 msgid "" "`Issue #16040 `__: CVE-2013-1752: nntplib: " "Limit maximum line lengths to 2048 to prevent readline() calls from " "consuming too much memory. Patch by Jyrki Pulliainen." msgstr "" "`Issue #16040 `__: CVE-2013-1752: nntplib: " "Limit maximum line lengths to 2048 to prevent readline() calls from " "consuming too much memory. Patch by Jyrki Pulliainen." #: ../../../Misc/NEWS:7702 msgid "" "`Issue #16041 `__: CVE-2013-1752: poplib: " "Limit maximum line lengths to 2048 to prevent readline() calls from " "consuming too much memory. Patch by Jyrki Pulliainen." msgstr "" "`Issue #16041 `__: CVE-2013-1752: poplib: " "Limit maximum line lengths to 2048 to prevent readline() calls from " "consuming too much memory. Patch by Jyrki Pulliainen." #: ../../../Misc/NEWS:7706 msgid "" "`Issue #17997 `__: Change behavior of ``ssl." "match_hostname()`` to follow RFC 6125, for security reasons. It now doesn't " "match multiple wildcards nor wildcards inside IDN fragments." msgstr "" "`Issue #17997 `__: Change behavior of ``ssl." "match_hostname()`` to follow RFC 6125, for security reasons. It now doesn't " "match multiple wildcards nor wildcards inside IDN fragments." #: ../../../Misc/NEWS:7710 msgid "" "`Issue #16039 `__: CVE-2013-1752: Change use " "of readline in imaplib module to limit line length. Patch by Emil Lind." msgstr "" "`Issue #16039 `__: CVE-2013-1752: Change use " "of readline in imaplib module to limit line length. Patch by Emil Lind." #: ../../../Misc/NEWS:7713 msgid "" "`Issue #19330 `__: the unnecessary wrapper " "functions have been removed from the implementations of the new contextlib." "redirect_stdout and contextlib.suppress context managers, which also ensures " "they provide reasonable help() output on instances" msgstr "" "`Issue #19330 `__: the unnecessary wrapper " "functions have been removed from the implementations of the new contextlib." "redirect_stdout and contextlib.suppress context managers, which also ensures " "they provide reasonable help() output on instances" #: ../../../Misc/NEWS:7718 msgid "" "`Issue #19393 `__: Fix symtable.symtable " "function to not be confused when there are functions or classes named \"top" "\"." msgstr "" "`Issue #19393 `__: Fix symtable.symtable " "function to not be confused when there are functions or classes named \"top" "\"." #: ../../../Misc/NEWS:7721 msgid "" "`Issue #18685 `__: Restore re performance to " "pre-PEP 393 levels." msgstr "" "`Issue #18685 `__: Restore re performance to " "pre-PEP 393 levels." #: ../../../Misc/NEWS:7723 msgid "" "`Issue #19339 `__: telnetlib module is now " "using time.monotonic() when available to compute timeout." msgstr "" "`Issue #19339 `__: telnetlib module is now " "using time.monotonic() when available to compute timeout." #: ../../../Misc/NEWS:7726 msgid "" "`Issue #19399 `__: fix sporadic " "test_subprocess failure." msgstr "" "`Issue #19399 `__: fix sporadic " "test_subprocess failure." #: ../../../Misc/NEWS:7728 msgid "" "`Issue #13234 `__: Fix os.listdir to work " "with extended paths on Windows. Patch by Santoso Wijaya." msgstr "" "`Issue #13234 `__: Fix os.listdir to work " "with extended paths on Windows. Patch by Santoso Wijaya." #: ../../../Misc/NEWS:7731 msgid "" "`Issue #19375 `__: The site module adding a " "\"site-python\" directory to sys.path, if it exists, is now deprecated." msgstr "" "`Issue #19375 `__: The site module adding a " "\"site-python\" directory to sys.path, if it exists, is now deprecated." #: ../../../Misc/NEWS:7734 msgid "" "`Issue #19379 `__: Lazily import linecache in " "the warnings module, to make startup with warnings faster until a warning " "gets printed." msgstr "" "`Issue #19379 `__: Lazily import linecache in " "the warnings module, to make startup with warnings faster until a warning " "gets printed." #: ../../../Misc/NEWS:7737 msgid "" "`Issue #19288 `__: Fixed the \"in\" operator " "of dbm.gnu databases for string argument. Original patch by Arfrever " "Frehtes Taifersar Arahesis." msgstr "" "`Issue #19288 `__: Fixed the \"in\" operator " "of dbm.gnu databases for string argument. Original patch by Arfrever " "Frehtes Taifersar Arahesis." #: ../../../Misc/NEWS:7740 msgid "" "`Issue #19287 `__: Fixed the \"in\" operator " "of dbm.ndbm databases for string argument. Original patch by Arfrever " "Frehtes Taifersar Arahesis." msgstr "" "`Issue #19287 `__: Fixed the \"in\" operator " "of dbm.ndbm databases for string argument. Original patch by Arfrever " "Frehtes Taifersar Arahesis." #: ../../../Misc/NEWS:7743 msgid "" "`Issue #19327 `__: Fixed the working of " "regular expressions with too big charset." msgstr "" "`Issue #19327 `__: Fixed the working of " "regular expressions with too big charset." #: ../../../Misc/NEWS:7745 msgid "" "`Issue #17400 `__: New 'is_global' attribute " "for ipaddress to tell if an address is allocated by IANA for global or " "private networks." msgstr "" "`Issue #17400 `__: New 'is_global' attribute " "for ipaddress to tell if an address is allocated by IANA for global or " "private networks." #: ../../../Misc/NEWS:7748 msgid "" "`Issue #19350 `__: Increasing the test " "coverage of macurl2path. Patch by Colin Williams." msgstr "" "`Issue #19350 `__: Increasing the test " "coverage of macurl2path. Patch by Colin Williams." #: ../../../Misc/NEWS:7751 msgid "" "`Issue #19365 `__: Optimized the parsing of " "long replacement string in re.sub*() functions." msgstr "" "`Issue #19365 `__: Optimized the parsing of " "long replacement string in re.sub*() functions." #: ../../../Misc/NEWS:7754 msgid "" "`Issue #19352 `__: Fix unittest discovery " "when a module can be reached through several paths (e.g. under Debian/Ubuntu " "with virtualenv)." msgstr "" "`Issue #19352 `__: Fix unittest discovery " "when a module can be reached through several paths (e.g. under Debian/Ubuntu " "with virtualenv)." #: ../../../Misc/NEWS:7757 msgid "" "`Issue #15207 `__: Fix mimetypes to read from " "correct part of Windows registry Original patch by Dave Chambers" msgstr "" "`Issue #15207 `__: Fix mimetypes to read from " "correct part of Windows registry Original patch by Dave Chambers" #: ../../../Misc/NEWS:7760 msgid "" "`Issue #16595 `__: Add prlimit() to resource " "module." msgstr "" "`Issue #16595 `__: Add prlimit() to resource " "module." #: ../../../Misc/NEWS:7762 msgid "" "`Issue #19324 `__: Expose Linux-specific " "constants in resource module." msgstr "" "`Issue #19324 `__: Expose Linux-specific " "constants in resource module." #: ../../../Misc/NEWS:7764 msgid "Load SSL's error strings in hashlib." msgstr "" #: ../../../Misc/NEWS:7766 msgid "" "`Issue #18527 `__: Upgrade internal copy of " "zlib to 1.2.8." msgstr "" "`Issue #18527 `__: Upgrade internal copy of " "zlib to 1.2.8." #: ../../../Misc/NEWS:7768 msgid "" "`Issue #19274 `__: Add a filterfunc parameter " "to PyZipFile.writepy." msgstr "" "`Issue #19274 `__: Add a filterfunc parameter " "to PyZipFile.writepy." #: ../../../Misc/NEWS:7770 msgid "" "`Issue #8964 `__: fix platform._sys_version to " "handle IronPython 2.6+. Patch by Martin Matusiak." msgstr "" "`Issue #8964 `__: fix platform._sys_version to " "handle IronPython 2.6+. Patch by Martin Matusiak." #: ../../../Misc/NEWS:7773 msgid "" "`Issue #19413 `__: Restore pre-3.3 reload() " "semantics of re-finding modules." msgstr "" "`Issue #19413 `__: Restore pre-3.3 reload() " "semantics of re-finding modules." #: ../../../Misc/NEWS:7775 msgid "" "`Issue #18958 `__: Improve error message for " "json.load(s) while passing a string that starts with a UTF-8 BOM." msgstr "" "`Issue #18958 `__: Improve error message for " "json.load(s) while passing a string that starts with a UTF-8 BOM." #: ../../../Misc/NEWS:7778 msgid "" "`Issue #19307 `__: Improve error message for " "json.load(s) while passing objects of the wrong type." msgstr "" "`Issue #19307 `__: Improve error message for " "json.load(s) while passing objects of the wrong type." #: ../../../Misc/NEWS:7781 msgid "" "`Issue #16038 `__: CVE-2013-1752: ftplib: " "Limit amount of data read by limiting the call to readline(). Original " "patch by Michał Jastrzębski and Giampaolo Rodola." msgstr "" "`Issue #16038 `__: CVE-2013-1752: ftplib: " "Limit amount of data read by limiting the call to readline(). Original " "patch by Michał Jastrzębski and Giampaolo Rodola." #: ../../../Misc/NEWS:7785 msgid "" "`Issue #17087 `__: Improved the repr for " "regular expression match objects." msgstr "" "`Issue #17087 `__: Improved the repr for " "regular expression match objects." #: ../../../Misc/NEWS:7790 msgid "" "`Issue #19664 `__: test_userdict's repr test " "no longer depends on the order of dict elements." msgstr "" "`Issue #19664 `__: test_userdict's repr test " "no longer depends on the order of dict elements." #: ../../../Misc/NEWS:7793 msgid "" "`Issue #19440 `__: Clean up test_capi by " "removing an unnecessary __future__ import, converting from test_main to " "unittest.main, and running the _testcapi module tests as subTests of a " "unittest TestCase method." msgstr "" "`Issue #19440 `__: Clean up test_capi by " "removing an unnecessary __future__ import, converting from test_main to " "unittest.main, and running the _testcapi module tests as subTests of a " "unittest TestCase method." #: ../../../Misc/NEWS:7797 msgid "" "`Issue #19378 `__: the main dis module tests " "are now run with both stdout redirection *and* passing an explicit file " "parameter" msgstr "" "`Issue #19378 `__: the main dis module tests " "are now run with both stdout redirection *and* passing an explicit file " "parameter" #: ../../../Misc/NEWS:7800 msgid "" "`Issue #19378 `__: removed the not-actually-" "helpful assertInstructionMatches and assertBytecodeExactlyMatches helpers " "from bytecode_helper" msgstr "" "`Issue #19378 `__: removed the not-actually-" "helpful assertInstructionMatches and assertBytecodeExactlyMatches helpers " "from bytecode_helper" #: ../../../Misc/NEWS:7803 msgid "" "`Issue #18702 `__: All skipped tests now " "reported as skipped." msgstr "" "`Issue #18702 `__: All skipped tests now " "reported as skipped." #: ../../../Misc/NEWS:7805 msgid "" "`Issue #19439 `__: interpreter embedding " "tests are now executed on Windows (Patch by Zachary Ware)" msgstr "" "`Issue #19439 `__: interpreter embedding " "tests are now executed on Windows (Patch by Zachary Ware)" #: ../../../Misc/NEWS:7808 msgid "" "`Issue #19085 `__: Added basic tests for all " "tkinter widget options." msgstr "" "`Issue #19085 `__: Added basic tests for all " "tkinter widget options." #: ../../../Misc/NEWS:7810 msgid "" "`Issue #19384 `__: Fix test_py_compile for " "root user, patch by Claudiu Popa." msgstr "" "`Issue #19384 `__: Fix test_py_compile for " "root user, patch by Claudiu Popa." #: ../../../Misc/NEWS:7815 msgid "" "`Issue #18326 `__: Clarify that list.sort's " "arguments are keyword-only. Also, attempt to reduce confusion in the " "glossary by not saying there are different \"types\" of arguments and " "parameters." msgstr "" "`Issue #18326 `__: Clarify that list.sort's " "arguments are keyword-only. Also, attempt to reduce confusion in the " "glossary by not saying there are different \"types\" of arguments and " "parameters." #: ../../../Misc/NEWS:7822 msgid "" "`Issue #19358 `__: \"make clinic\" now runs " "the Argument Clinic preprocessor over all CPython source files." msgstr "" "`Issue #19358 `__: \"make clinic\" now runs " "the Argument Clinic preprocessor over all CPython source files." #: ../../../Misc/NEWS:7825 msgid "Update SQLite to 3.8.1, xz to 5.0.5, and Tcl/Tk to 8.6.1 on Windows." msgstr "" #: ../../../Misc/NEWS:7827 msgid "" "`Issue #16632 `__: Enable DEP and ASLR on " "Windows." msgstr "" "`Issue #16632 `__: Enable DEP and ASLR on " "Windows." #: ../../../Misc/NEWS:7829 msgid "" "`Issue #17791 `__: Drop PREFIX and " "EXEC_PREFIX definitions from PC/pyconfig.h" msgstr "" "`Issue #17791 `__: Drop PREFIX and " "EXEC_PREFIX definitions from PC/pyconfig.h" #: ../../../Misc/NEWS:7831 msgid "" "Add workaround for VS 2010 nmake clean issue. VS 2010 doesn't set up PATH " "for nmake.exe correctly." msgstr "" #: ../../../Misc/NEWS:7834 msgid "" "`Issue #19550 `__: Implement Windows " "installer changes of PEP 453 (ensurepip)." msgstr "" "`Issue #19550 `__: Implement Windows " "installer changes of PEP 453 (ensurepip)." #: ../../../Misc/NEWS:7836 msgid "" "`Issue #19520 `__: Fix compiler warning in " "the _sha3 module on 32bit Windows." msgstr "" "`Issue #19520 `__: Fix compiler warning in " "the _sha3 module on 32bit Windows." #: ../../../Misc/NEWS:7838 msgid "" "`Issue #19356 `__: Avoid using a C variabled " "named \"_self\", it's a reserved word in some C compilers." msgstr "" "`Issue #19356 `__: Avoid using a C variabled " "named \"_self\", it's a reserved word in some C compilers." #: ../../../Misc/NEWS:7841 msgid "" "`Issue #15792 `__: Correct build options on " "Win64. Patch by Jeremy Kloth." msgstr "" "`Issue #15792 `__: Correct build options on " "Win64. Patch by Jeremy Kloth." #: ../../../Misc/NEWS:7843 msgid "" "`Issue #19373 `__: Apply upstream change to " "Tk 8.5.15 fixing OS X 10.9 screen refresh problem for OS X installer build." msgstr "" "`Issue #19373 `__: Apply upstream change to " "Tk 8.5.15 fixing OS X 10.9 screen refresh problem for OS X installer build." #: ../../../Misc/NEWS:7846 msgid "" "`Issue #19649 `__: On OS X, the same set of " "file names are now installed in bin directories for all configurations: non-" "framework vs framework, and single arch vs universal builds. pythonx.y-32 " "is now always installed for 64-bit/32-bit universal builds. The obsolete " "and undocumented pythonw* symlinks are no longer installed anywhere." msgstr "" "`Issue #19649 `__: On OS X, the same set of " "file names are now installed in bin directories for all configurations: non-" "framework vs framework, and single arch vs universal builds. pythonx.y-32 " "is now always installed for 64-bit/32-bit universal builds. The obsolete " "and undocumented pythonw* symlinks are no longer installed anywhere." #: ../../../Misc/NEWS:7852 msgid "" "`Issue #19553 `__: PEP 453 - \"make install\" " "and \"make altinstall\" now install or upgrade pip by default, using the " "bundled pip provided by the new ensurepip module. A new configure option, --" "with-ensurepip[=upgrade|install|no], is available to override the default " "ensurepip \"--upgrade\" option. The option can also be set with \"make " "[alt]install ENSUREPIP=[upgrade|install|no]\"." msgstr "" "`Issue #19553 `__: PEP 453 - \"make install\" " "and \"make altinstall\" now install or upgrade pip by default, using the " "bundled pip provided by the new ensurepip module. A new configure option, --" "with-ensurepip[=upgrade|install|no], is available to override the default " "ensurepip \"--upgrade\" option. The option can also be set with \"make " "[alt]install ENSUREPIP=[upgrade|install|no]\"." #: ../../../Misc/NEWS:7858 msgid "" "`Issue #19551 `__: PEP 453 - the OS X " "installer now installs pip by default." msgstr "" "`Issue #19551 `__: PEP 453 - the OS X " "installer now installs pip by default." #: ../../../Misc/NEWS:7860 msgid "" "Update third-party libraries for OS X installers: xz 5.0.3 -> 5.0.5, SQLite " "3.7.13 -> 3.8.1" msgstr "" #: ../../../Misc/NEWS:7863 msgid "" "`Issue #15663 `__: Revert OS X installer " "built-in Tcl/Tk support for 3.4.0b1. Some third-party projects, such as " "Matplotlib and PIL/Pillow, depended on being able to build with Tcl and Tk " "frameworks in /Library/Frameworks." msgstr "" "`Issue #15663 `__: Revert OS X installer " "built-in Tcl/Tk support for 3.4.0b1. Some third-party projects, such as " "Matplotlib and PIL/Pillow, depended on being able to build with Tcl and Tk " "frameworks in /Library/Frameworks." #: ../../../Misc/NEWS:7871 msgid "" "`Issue #19730 `__: Argument Clinic now " "supports all the existing PyArg \"format units\" as legacy converters, as " "well as two new features: \"self converters\" and the \"version\" directive." msgstr "" "`Issue #19730 `__: Argument Clinic now " "supports all the existing PyArg \"format units\" as legacy converters, as " "well as two new features: \"self converters\" and the \"version\" directive." #: ../../../Misc/NEWS:7875 msgid "" "`Issue #19552 `__: pyvenv now bootstraps pip " "into virtual environments by default (pass --without-pip to request the old " "behaviour)" msgstr "" "`Issue #19552 `__: pyvenv now bootstraps pip " "into virtual environments by default (pass --without-pip to request the old " "behaviour)" #: ../../../Misc/NEWS:7878 msgid "" "`Issue #19390 `__: Argument Clinic no longer " "accepts malformed Python and C ids." msgstr "" "`Issue #19390 `__: Argument Clinic no longer " "accepts malformed Python and C ids." #: ../../../Misc/NEWS:7883 msgid "Python 3.4.0 Alpha 4" msgstr "Python 3.4.0 Alpha 4" #: ../../../Misc/NEWS:7885 msgid "Release date: 2013-10-20" msgstr "Date de sortie : 2013-10-20" #: ../../../Misc/NEWS:7890 msgid "" "`Issue #19301 `__: Give classes and functions " "that are explicitly marked global a global qualname." msgstr "" "`Issue #19301 `__: Give classes and functions " "that are explicitly marked global a global qualname." #: ../../../Misc/NEWS:7893 msgid "" "`Issue #19279 `__: UTF-7 decoder no longer " "produces illegal strings." msgstr "" "`Issue #19279 `__: UTF-7 decoder no longer " "produces illegal strings." #: ../../../Misc/NEWS:7895 msgid "" "`Issue #16612 `__: Add \"Argument Clinic\", a " "compile-time preprocessor for C files to generate argument parsing code. " "(See PEP 436.)" msgstr "" "`Issue #16612 `__: Add \"Argument Clinic\", a " "compile-time preprocessor for C files to generate argument parsing code. " "(See PEP 436.)" #: ../../../Misc/NEWS:7898 msgid "" "`Issue #18810 `__: Shift stat calls in " "importlib.machinery.FileFinder such that the code is optimistic that if " "something exists in a directory named exactly like the possible package " "being searched for that it's in actuality a directory." msgstr "" "`Issue #18810 `__: Shift stat calls in " "importlib.machinery.FileFinder such that the code is optimistic that if " "something exists in a directory named exactly like the possible package " "being searched for that it's in actuality a directory." #: ../../../Misc/NEWS:7903 msgid "" "`Issue #18416 `__: importlib.machinery." "PathFinder now treats '' as the cwd and importlib.machinery.FileFinder no " "longer special-cases '' to '.'. This leads to modules imported from cwd to " "now possess an absolute file path for __file__ (this does not affect modules " "specified by path on the CLI but it does affect -m/runpy). It also allows " "FileFinder to be more consistent by not having an edge case." msgstr "" "`Issue #18416 `__: importlib.machinery." "PathFinder now treats '' as the cwd and importlib.machinery.FileFinder no " "longer special-cases '' to '.'. This leads to modules imported from cwd to " "now possess an absolute file path for __file__ (this does not affect modules " "specified by path on the CLI but it does affect -m/runpy). It also allows " "FileFinder to be more consistent by not having an edge case." #: ../../../Misc/NEWS:7910 msgid "" "`Issue #4555 `__: All exported C symbols are " "now prefixed with either \"Py\" or \"_Py\"." msgstr "" "`Issue #4555 `__: All exported C symbols are " "now prefixed with either \"Py\" or \"_Py\"." #: ../../../Misc/NEWS:7913 msgid "" "`Issue #19219 `__: Speed up marshal.loads(), " "and make pyc files slightly (5% to 10%) smaller." msgstr "" "`Issue #19219 `__: Speed up marshal.loads(), " "and make pyc files slightly (5% to 10%) smaller." #: ../../../Misc/NEWS:7916 msgid "" "`Issue #19221 `__: Upgrade Unicode database " "to version 6.3.0." msgstr "" "`Issue #19221 `__: Upgrade Unicode database " "to version 6.3.0." #: ../../../Misc/NEWS:7918 msgid "" "`Issue #16742 `__: The result of the C " "callback PyOS_ReadlineFunctionPointer must now be a string allocated by " "PyMem_RawMalloc() or PyMem_RawRealloc() (or NULL if an error occurred), " "instead of a string allocated by PyMem_Malloc() or PyMem_Realloc()." msgstr "" "`Issue #16742 `__: The result of the C " "callback PyOS_ReadlineFunctionPointer must now be a string allocated by " "PyMem_RawMalloc() or PyMem_RawRealloc() (or NULL if an error occurred), " "instead of a string allocated by PyMem_Malloc() or PyMem_Realloc()." #: ../../../Misc/NEWS:7923 msgid "" "`Issue #19199 `__: Remove ``PyThreadState." "tick_counter`` field" msgstr "" "`Issue #19199 `__: Remove ``PyThreadState." "tick_counter`` field" #: ../../../Misc/NEWS:7925 msgid "" "Fix macro expansion of _PyErr_OCCURRED(), and make sure to use it in at " "least one place so as to avoid regressions." msgstr "" #: ../../../Misc/NEWS:7928 msgid "" "`Issue #19087 `__: Improve bytearray " "allocation in order to allow cheap popping of data at the front (slice " "deletion)." msgstr "" "`Issue #19087 `__: Improve bytearray " "allocation in order to allow cheap popping of data at the front (slice " "deletion)." #: ../../../Misc/NEWS:7931 msgid "" "`Issue #19014 `__: memoryview.cast() is now " "allowed on zero-length views." msgstr "" "`Issue #19014 `__: memoryview.cast() is now " "allowed on zero-length views." #: ../../../Misc/NEWS:7933 msgid "" "`Issue #18690 `__: memoryview is now " "automatically registered with collections.abc.Sequence" msgstr "" "`Issue #18690 `__: memoryview is now " "automatically registered with collections.abc.Sequence" #: ../../../Misc/NEWS:7936 msgid "" "`Issue #19078 `__: memoryview now correctly " "supports the reversed builtin (Patch by Claudiu Popa)" msgstr "" "`Issue #19078 `__: memoryview now correctly " "supports the reversed builtin (Patch by Claudiu Popa)" #: ../../../Misc/NEWS:7942 msgid "" "`Issue #17457 `__: unittest test discovery " "now works with namespace packages. Patch by Claudiu Popa." msgstr "" "`Issue #17457 `__: unittest test discovery " "now works with namespace packages. Patch by Claudiu Popa." #: ../../../Misc/NEWS:7945 msgid "" "`Issue #18235 `__: Fix the sysconfig " "variables LDSHARED and BLDSHARED under AIX. Patch by David Edelsohn." msgstr "" "`Issue #18235 `__: Fix the sysconfig " "variables LDSHARED and BLDSHARED under AIX. Patch by David Edelsohn." #: ../../../Misc/NEWS:7948 msgid "" "`Issue #18606 `__: Add the new \"statistics\" " "module (PEP 450). Contributed by Steven D'Aprano." msgstr "" "`Issue #18606 `__: Add the new \"statistics\" " "module (PEP 450). Contributed by Steven D'Aprano." #: ../../../Misc/NEWS:7951 msgid "" "`Issue #12866 `__: The audioop module now " "supports 24-bit samples." msgstr "" "`Issue #12866 `__: The audioop module now " "supports 24-bit samples." #: ../../../Misc/NEWS:7953 msgid "" "`Issue #19254 `__: Provide an optimized " "Python implementation of pbkdf2_hmac." msgstr "" "`Issue #19254 `__: Provide an optimized " "Python implementation of pbkdf2_hmac." #: ../../../Misc/NEWS:7955 msgid "" "Issues #19201, `Issue #19222 `__, `Issue " "#19223 `__: Add \"x\" mode (exclusive " "creation) in opening file to bz2, gzip and lzma modules. Patches by Tim " "Heaney and Vajrasky Kok." msgstr "" #: ../../../Misc/NEWS:7959 msgid "Fix a reference count leak in _sre." msgstr "" #: ../../../Misc/NEWS:7961 msgid "" "`Issue #19262 `__: Initial check in of the " "'asyncio' package (a.k.a. Tulip, a.k.a. PEP 3156). There are no docs yet, " "and the PEP is slightly out of date with the code. This module will have " "*provisional* status in Python 3.4." msgstr "" "`Issue #19262 `__: Initial check in of the " "'asyncio' package (a.k.a. Tulip, a.k.a. PEP 3156). There are no docs yet, " "and the PEP is slightly out of date with the code. This module will have " "*provisional* status in Python 3.4." #: ../../../Misc/NEWS:7966 msgid "" "`Issue #19276 `__: Fixed the wave module on " "64-bit big-endian platforms." msgstr "" "`Issue #19276 `__: Fixed the wave module on " "64-bit big-endian platforms." #: ../../../Misc/NEWS:7968 msgid "" "`Issue #19266 `__: Rename the new-in-3.4 " "``contextlib.ignore`` context manager to ``contextlib.suppress`` in order to " "be more consistent with existing descriptions of that operation elsewhere in " "the language and standard library documentation (Patch by Zero Piraeus)." msgstr "" "`Issue #19266 `__: Rename the new-in-3.4 " "``contextlib.ignore`` context manager to ``contextlib.suppress`` in order to " "be more consistent with existing descriptions of that operation elsewhere in " "the language and standard library documentation (Patch by Zero Piraeus)." #: ../../../Misc/NEWS:7973 msgid "" "`Issue #18891 `__: Completed the new email " "package (provisional) API additions by adding new classes EmailMessage, " "MIMEPart, and ContentManager." msgstr "" "`Issue #18891 `__: Completed the new email " "package (provisional) API additions by adding new classes EmailMessage, " "MIMEPart, and ContentManager." #: ../../../Misc/NEWS:7976 msgid "" "`Issue #18281 `__: Unused stat constants " "removed from `tarfile`." msgstr "" "`Issue #18281 `__: Unused stat constants " "removed from `tarfile`." #: ../../../Misc/NEWS:7978 msgid "" "`Issue #18999 `__: Multiprocessing now " "supports 'contexts' with the same API as the module, but bound to specified " "start methods." msgstr "" "`Issue #18999 `__: Multiprocessing now " "supports 'contexts' with the same API as the module, but bound to specified " "start methods." #: ../../../Misc/NEWS:7981 msgid "" "`Issue #18468 `__: The re.split, re.findall, " "and re.sub functions and the group() and groups() methods of match object " "now always return a string or a bytes object." msgstr "" "`Issue #18468 `__: The re.split, re.findall, " "and re.sub functions and the group() and groups() methods of match object " "now always return a string or a bytes object." #: ../../../Misc/NEWS:7985 msgid "" "`Issue #18725 `__: The textwrap module now " "supports truncating multiline text." msgstr "" "`Issue #18725 `__: The textwrap module now " "supports truncating multiline text." #: ../../../Misc/NEWS:7987 msgid "" "`Issue #18776 `__: atexit callbacks now " "display their full traceback when they raise an exception." msgstr "" "`Issue #18776 `__: atexit callbacks now " "display their full traceback when they raise an exception." #: ../../../Misc/NEWS:7990 msgid "" "`Issue #17827 `__: Add the missing " "documentation for ``codecs.encode`` and ``codecs.decode``." msgstr "" "`Issue #17827 `__: Add the missing " "documentation for ``codecs.encode`` and ``codecs.decode``." #: ../../../Misc/NEWS:7993 msgid "" "`Issue #19218 `__: Rename collections.abc to " "_collections_abc in order to speed up interpreter start." msgstr "" "`Issue #19218 `__: Rename collections.abc to " "_collections_abc in order to speed up interpreter start." #: ../../../Misc/NEWS:7996 msgid "" "`Issue #18582 `__: Add 'pbkdf2_hmac' to the " "hashlib module. It implements PKCS#5 password-based key derivation functions " "with HMAC as pseudorandom function." msgstr "" "`Issue #18582 `__: Add 'pbkdf2_hmac' to the " "hashlib module. It implements PKCS#5 password-based key derivation functions " "with HMAC as pseudorandom function." #: ../../../Misc/NEWS:7999 msgid "" "`Issue #19131 `__: The aifc module now " "correctly reads and writes sampwidth of compressed streams." msgstr "" "`Issue #19131 `__: The aifc module now " "correctly reads and writes sampwidth of compressed streams." #: ../../../Misc/NEWS:8002 msgid "" "`Issue #19209 `__: Remove import of copyreg " "from the os module to speed up interpreter startup. stat_result and " "statvfs_result are now hard-coded to reside in the os module." msgstr "" "`Issue #19209 `__: Remove import of copyreg " "from the os module to speed up interpreter startup. stat_result and " "statvfs_result are now hard-coded to reside in the os module." #: ../../../Misc/NEWS:8006 msgid "" "`Issue #19205 `__: Don't import the 're' " "module in site and sysconfig module to speed up interpreter start." msgstr "" "`Issue #19205 `__: Don't import the 're' " "module in site and sysconfig module to speed up interpreter start." #: ../../../Misc/NEWS:8009 msgid "" "`Issue #9548 `__: Add a minimal \"_bootlocale" "\" module that is imported by the _io module instead of the full locale " "module." msgstr "" "`Issue #9548 `__: Add a minimal \"_bootlocale" "\" module that is imported by the _io module instead of the full locale " "module." #: ../../../Misc/NEWS:8012 msgid "" "`Issue #18764 `__: Remove the 'print' alias " "for the PDB 'p' command so that it no longer shadows the print function." msgstr "" "`Issue #18764 `__: Remove the 'print' alias " "for the PDB 'p' command so that it no longer shadows the print function." #: ../../../Misc/NEWS:8015 msgid "" "`Issue #19158 `__: A rare race in " "BoundedSemaphore could allow .release() too often." msgstr "" "`Issue #19158 `__: A rare race in " "BoundedSemaphore could allow .release() too often." #: ../../../Misc/NEWS:8018 msgid "" "`Issue #15805 `__: Add contextlib." "redirect_stdout()." msgstr "" "`Issue #15805 `__: Add contextlib." "redirect_stdout()." #: ../../../Misc/NEWS:8020 msgid "" "`Issue #18716 `__: Deprecate the formatter " "module." msgstr "" "`Issue #18716 `__: Deprecate the formatter " "module." #: ../../../Misc/NEWS:8022 msgid "" "`Issue #10712 `__: 2to3 has a new \"asserts\" " "fixer that replaces deprecated names of unittest methods (e.g. " "failUnlessEqual -> assertEqual)." msgstr "" "`Issue #10712 `__: 2to3 has a new \"asserts\" " "fixer that replaces deprecated names of unittest methods (e.g. " "failUnlessEqual -> assertEqual)." #: ../../../Misc/NEWS:8025 msgid "" "`Issue #18037 `__: 2to3 now escapes ``'\\u'`` " "and ``'\\U'`` in native strings." msgstr "" "`Issue #18037 `__: 2to3 now escapes ``'\\u'`` " "and ``'\\U'`` in native strings." #: ../../../Misc/NEWS:8027 msgid "" "`Issue #17839 `__: base64.decodebytes and " "base64.encodebytes now accept any object that exports a 1 dimensional array " "of bytes (this means the same is now also true for base64_codec)" msgstr "" "`Issue #17839 `__: base64.decodebytes and " "base64.encodebytes now accept any object that exports a 1 dimensional array " "of bytes (this means the same is now also true for base64_codec)" #: ../../../Misc/NEWS:8031 msgid "" "`Issue #19132 `__: The pprint module now " "supports compact mode." msgstr "" "`Issue #19132 `__: The pprint module now " "supports compact mode." #: ../../../Misc/NEWS:8033 msgid "" "`Issue #19137 `__: The pprint module now " "correctly formats instances of set and frozenset subclasses." msgstr "" "`Issue #19137 `__: The pprint module now " "correctly formats instances of set and frozenset subclasses." #: ../../../Misc/NEWS:8036 msgid "" "`Issue #10042 `__: functools.total_ordering " "now correctly handles NotImplemented being returned by the underlying " "comparison function (Patch by Katie Miller)" msgstr "" "`Issue #10042 `__: functools.total_ordering " "now correctly handles NotImplemented being returned by the underlying " "comparison function (Patch by Katie Miller)" #: ../../../Misc/NEWS:8040 msgid "" "`Issue #19092 `__: contextlib.ExitStack now " "correctly reraises exceptions from the __exit__ callbacks of inner context " "managers (Patch by Hrvoje Nikšić)" msgstr "" "`Issue #19092 `__: contextlib.ExitStack now " "correctly reraises exceptions from the __exit__ callbacks of inner context " "managers (Patch by Hrvoje Nikšić)" #: ../../../Misc/NEWS:8044 msgid "" "`Issue #12641 `__: Avoid passing \"-mno-cygwin" "\" to the mingw32 compiler, except when necessary. Patch by Oscar Benjamin." msgstr "" "`Issue #12641 `__: Avoid passing \"-mno-cygwin" "\" to the mingw32 compiler, except when necessary. Patch by Oscar Benjamin." #: ../../../Misc/NEWS:8047 msgid "" "`Issue #5845 `__: In site.py, only load " "readline history from ~/.python_history if no history has been read " "already. This avoids double writes to the history file at shutdown." msgstr "" "`Issue #5845 `__: In site.py, only load " "readline history from ~/.python_history if no history has been read " "already. This avoids double writes to the history file at shutdown." #: ../../../Misc/NEWS:8051 msgid "Properly initialize all fields of a SSL object after allocation." msgstr "" #: ../../../Misc/NEWS:8053 msgid "" "`Issue #19095 `__: SSLSocket.getpeercert() " "now raises ValueError when the SSL handshake hasn't been done." msgstr "" "`Issue #19095 `__: SSLSocket.getpeercert() " "now raises ValueError when the SSL handshake hasn't been done." #: ../../../Misc/NEWS:8056 msgid "" "`Issue #4366 `__: Fix building extensions on " "all platforms when --enable-shared is used." msgstr "" "`Issue #4366 `__: Fix building extensions on " "all platforms when --enable-shared is used." #: ../../../Misc/NEWS:8059 msgid "" "`Issue #19030 `__: Fixed `inspect.getmembers` " "and `inspect.classify_class_attrs` to attempt activating descriptors before " "falling back to a __dict__ search for faulty descriptors. `inspect." "classify_class_attrs` no longer returns Attributes whose home class is None." msgstr "" "`Issue #19030 `__: Fixed `inspect.getmembers` " "and `inspect.classify_class_attrs` to attempt activating descriptors before " "falling back to a __dict__ search for faulty descriptors. `inspect." "classify_class_attrs` no longer returns Attributes whose home class is None." #: ../../../Misc/NEWS:8067 msgid "" "`Issue #1772673 `__: The type of `char*` " "arguments now changed to `const char*`." msgstr "" "`Issue #1772673 `__: The type of `char*` " "arguments now changed to `const char*`." #: ../../../Misc/NEWS:8069 msgid "" "`Issue #16129 `__: Added a " "`Py_SetStandardStreamEncoding` pre-initialization API to allow embedding " "applications like Blender to force a particular encoding and error handler " "for the standard IO streams (initial patch by Bastien Montagne)" msgstr "" "`Issue #16129 `__: Added a " "`Py_SetStandardStreamEncoding` pre-initialization API to allow embedding " "applications like Blender to force a particular encoding and error handler " "for the standard IO streams (initial patch by Bastien Montagne)" #: ../../../Misc/NEWS:8077 msgid "" "`Issue #19275 `__: Fix test_site on AMD64 " "Snow Leopard" msgstr "" "`Issue #19275 `__: Fix test_site on AMD64 " "Snow Leopard" #: ../../../Misc/NEWS:8079 msgid "" "`Issue #14407 `__: Fix unittest test " "discovery in test_concurrent_futures." msgstr "" "`Issue #14407 `__: Fix unittest test " "discovery in test_concurrent_futures." #: ../../../Misc/NEWS:8081 msgid "" "`Issue #18919 `__: Unified and extended tests " "for audio modules: aifc, sunau and wave." msgstr "" "`Issue #18919 `__: Unified and extended tests " "for audio modules: aifc, sunau and wave." #: ../../../Misc/NEWS:8084 msgid "" "`Issue #18714 `__: Added tests for ``pdb." "find_function()``." msgstr "" "`Issue #18714 `__: Added tests for ``pdb." "find_function()``." #: ../../../Misc/NEWS:8089 msgid "" "`Issue #18758 `__: Fixed and improved cross-" "references." msgstr "" "`Issue #18758 `__: Fixed and improved cross-" "references." #: ../../../Misc/NEWS:8091 msgid "" "`Issue #18972 `__: Modernize email examples " "and use the argparse module in them." msgstr "" "`Issue #18972 `__: Modernize email examples " "and use the argparse module in them." #: ../../../Misc/NEWS:8096 msgid "" "`Issue #19130 `__: Correct PCbuild/readme." "txt, Python 3.3 and 3.4 require VS 2010." msgstr "" "`Issue #19130 `__: Correct PCbuild/readme." "txt, Python 3.3 and 3.4 require VS 2010." #: ../../../Misc/NEWS:8098 msgid "" "`Issue #15663 `__: Update OS X 10.6+ " "installer to use Tcl/Tk 8.5.15." msgstr "" "`Issue #15663 `__: Update OS X 10.6+ " "installer to use Tcl/Tk 8.5.15." #: ../../../Misc/NEWS:8104 msgid "" "`Issue #14499 `__: Fix several problems with " "OS X universal build support:" msgstr "" "`Issue #14499 `__: Fix several problems with " "OS X universal build support:" #: ../../../Misc/NEWS:8101 msgid "ppc arch detection for extension module builds broke with Xcode 5" msgstr "" #: ../../../Misc/NEWS:8102 msgid "ppc arch detection in configure did not work on OS X 10.4" msgstr "" #: ../../../Misc/NEWS:8103 msgid "-sysroot and -arch flags were unnecessarily duplicated" msgstr "" #: ../../../Misc/NEWS:8104 msgid "there was no obvious way to configure an intel-32 only build." msgstr "" #: ../../../Misc/NEWS:8106 msgid "" "`Issue #19019 `__: Change the OS X installer " "build script to use CFLAGS instead of OPT for special build options. By " "setting OPT, some compiler-specific options like -fwrapv were overridden and " "thus not used, which could result in broken interpreters when building with " "clang." msgstr "" "`Issue #19019 `__: Change the OS X installer " "build script to use CFLAGS instead of OPT for special build options. By " "setting OPT, some compiler-specific options like -fwrapv were overridden and " "thus not used, which could result in broken interpreters when building with " "clang." #: ../../../Misc/NEWS:8113 msgid "Python 3.4.0 Alpha 3" msgstr "Python 3.4.0 Alpha 3" #: ../../../Misc/NEWS:8115 msgid "Release date: 2013-09-29" msgstr "Date de sortie : 29-09-2013" #: ../../../Misc/NEWS:8120 msgid "" "`Issue #18818 `__: The \"encodingname\" part " "of PYTHONIOENCODING is now optional." msgstr "" "`Issue #18818 `__: The \"encodingname\" part " "of PYTHONIOENCODING is now optional." #: ../../../Misc/NEWS:8122 msgid "" "`Issue #19098 `__: Prevent overflow in the " "compiler when the recursion limit is set absurdly high." msgstr "" "`Issue #19098 `__: Prevent overflow in the " "compiler when the recursion limit is set absurdly high." #: ../../../Misc/NEWS:8128 msgid "" "`Issue #18929 `__: `inspect." "classify_class_attrs()` now correctly finds class attributes returned by " "`dir()` that are located in the metaclass." msgstr "" "`Issue #18929 `__: `inspect." "classify_class_attrs()` now correctly finds class attributes returned by " "`dir()` that are located in the metaclass." #: ../../../Misc/NEWS:8131 msgid "" "`Issue #18950 `__: Fix miscellaneous bugs in " "the sunau module. Au_read.readframes() now updates current file position and " "reads correct number of frames from multichannel stream. Au_write." "writeframesraw() now correctly updates current file position. Au_read." "getnframes() now returns an integer (as in Python 2). Au_read and Au_write " "now correctly works with file object if start file position is not a zero." msgstr "" "`Issue #18950 `__: Fix miscellaneous bugs in " "the sunau module. Au_read.readframes() now updates current file position and " "reads correct number of frames from multichannel stream. Au_write." "writeframesraw() now correctly updates current file position. Au_read." "getnframes() now returns an integer (as in Python 2). Au_read and Au_write " "now correctly works with file object if start file position is not a zero." #: ../../../Misc/NEWS:8138 msgid "" "`Issue #18594 `__: The fast path for " "collections.Counter() was never taken due to an over-restrictive type check." msgstr "" "`Issue #18594 `__: The fast path for " "collections.Counter() was never taken due to an over-restrictive type check." #: ../../../Misc/NEWS:8141 msgid "" "`Issue #19053 `__: ZipExtFile.read1() with " "non-zero argument no more returns empty bytes until end of data." msgstr "" "`Issue #19053 `__: ZipExtFile.read1() with " "non-zero argument no more returns empty bytes until end of data." #: ../../../Misc/NEWS:8144 msgid "" "logging: added support for Unix domain sockets to SocketHandler and " "DatagramHandler." msgstr "" #: ../../../Misc/NEWS:8147 msgid "" "`Issue #18996 `__: TestCase.assertEqual() now " "more cleverly shorten differing strings in error report." msgstr "" "`Issue #18996 `__: TestCase.assertEqual() now " "more cleverly shorten differing strings in error report." #: ../../../Misc/NEWS:8150 msgid "" "`Issue #19034 `__: repr() for tkinter.Tcl_Obj " "now exposes string reperesentation." msgstr "" "`Issue #19034 `__: repr() for tkinter.Tcl_Obj " "now exposes string reperesentation." #: ../../../Misc/NEWS:8152 msgid "" "`Issue #18978 `__: ``urllib.request.Request`` " "now allows the method to be indicated on the class and no longer sets it to " "None in ``__init__``." msgstr "" "`Issue #18978 `__: ``urllib.request.Request`` " "now allows the method to be indicated on the class and no longer sets it to " "None in ``__init__``." #: ../../../Misc/NEWS:8155 msgid "" "`Issue #18626 `__: the inspect module now " "offers a basic command line introspection interface (Initial patch by " "Claudiu Popa)" msgstr "" "`Issue #18626 `__: the inspect module now " "offers a basic command line introspection interface (Initial patch by " "Claudiu Popa)" #: ../../../Misc/NEWS:8158 msgid "" "`Issue #3015 `__: Fixed tkinter with " "wantobject=False. Any Tcl command call returned empty string." msgstr "" "`Issue #3015 `__: Fixed tkinter with " "wantobject=False. Any Tcl command call returned empty string." #: ../../../Misc/NEWS:8161 msgid "" "`Issue #19037 `__: The mailbox module now " "makes all changes to maildir files before moving them into place, to avoid " "race conditions with other programs that may be accessing the maildir " "directory." msgstr "" "`Issue #19037 `__: The mailbox module now " "makes all changes to maildir files before moving them into place, to avoid " "race conditions with other programs that may be accessing the maildir " "directory." #: ../../../Misc/NEWS:8165 msgid "" "`Issue #14984 `__: On POSIX systems, when " "netrc is called without a filename argument (and therefore is reading the " "user's $HOME/.netrc file), it now enforces the same security rules as " "typical ftp clients: the .netrc file must be owned by the user that owns the " "process and must not be readable by any other user." msgstr "" "`Issue #14984 `__: On POSIX systems, when " "netrc is called without a filename argument (and therefore is reading the " "user's $HOME/.netrc file), it now enforces the same security rules as " "typical ftp clients: the .netrc file must be owned by the user that owns the " "process and must not be readable by any other user." #: ../../../Misc/NEWS:8171 msgid "" "`Issue #18873 `__: The tokenize module now " "detects Python source code encoding only in comment lines." msgstr "" "`Issue #18873 `__: The tokenize module now " "detects Python source code encoding only in comment lines." #: ../../../Misc/NEWS:8174 msgid "" "`Issue #17764 `__: Enable http.server to bind " "to a user specified network interface. Patch contributed by Malte Swart." msgstr "" "`Issue #17764 `__: Enable http.server to bind " "to a user specified network interface. Patch contributed by Malte Swart." #: ../../../Misc/NEWS:8177 msgid "" "`Issue #18937 `__: Add an assertLogs() " "context manager to unittest.TestCase to ensure that a block of code emits a " "message using the logging module." msgstr "" "`Issue #18937 `__: Add an assertLogs() " "context manager to unittest.TestCase to ensure that a block of code emits a " "message using the logging module." #: ../../../Misc/NEWS:8180 msgid "" "`Issue #17324 `__: Fix http.server's request " "handling case on trailing '/'. Patch contributed by Vajrasky Kok." msgstr "" "`Issue #17324 `__: Fix http.server's request " "handling case on trailing '/'. Patch contributed by Vajrasky Kok." #: ../../../Misc/NEWS:8183 msgid "" "`Issue #19018 `__: The heapq.merge() function " "no longer suppresses IndexError in the underlying iterables." msgstr "" "`Issue #19018 `__: The heapq.merge() function " "no longer suppresses IndexError in the underlying iterables." #: ../../../Misc/NEWS:8186 msgid "" "`Issue #18784 `__: The uuid module no longer " "attempts to load libc via ctypes.CDLL if all the necessary functions have " "already been found in libuuid. Patch by Evgeny Sologubov." msgstr "" "`Issue #18784 `__: The uuid module no longer " "attempts to load libc via ctypes.CDLL if all the necessary functions have " "already been found in libuuid. Patch by Evgeny Sologubov." #: ../../../Misc/NEWS:8190 msgid "" "The :envvar:`PYTHONFAULTHANDLER` environment variable now only enables the " "faulthandler module if the variable is non-empty. Same behaviour than other " "variables like :envvar:`PYTHONDONTWRITEBYTECODE`." msgstr "" #: ../../../Misc/NEWS:8194 msgid "" "`Issue #1565525 `__: New function " "``traceback.clear_frames`` will clear the local variables of all the stack " "frames referenced by a traceback object." msgstr "" "`Issue #1565525 `__: New function " "``traceback.clear_frames`` will clear the local variables of all the stack " "frames referenced by a traceback object." #: ../../../Misc/NEWS:8201 msgid "" "`Issue #18952 `__: Fix regression in support " "data downloads introduced when test.support was converted to a package. " "Regression noticed by Zachary Ware." msgstr "" "`Issue #18952 `__: Fix regression in support " "data downloads introduced when test.support was converted to a package. " "Regression noticed by Zachary Ware." #: ../../../Misc/NEWS:8208 msgid "" "`Issue #18873 `__: IDLE now detects Python " "source code encoding only in comment lines." msgstr "" "`Issue #18873 `__: IDLE now detects Python " "source code encoding only in comment lines." #: ../../../Misc/NEWS:8211 msgid "" "`Issue #18988 `__: The \"Tab\" key now works " "when a word is already autocompleted." msgstr "" "`Issue #18988 `__: The \"Tab\" key now works " "when a word is already autocompleted." #: ../../../Misc/NEWS:8216 msgid "" "`Issue #17003 `__: Unified the size argument " "names in the io module with common practice." msgstr "" "`Issue #17003 `__: Unified the size argument " "names in the io module with common practice." #: ../../../Misc/NEWS:8222 msgid "" "`Issue #18596 `__: Support the use of address " "sanity checking in recent versions of clang and GCC by appropriately marking " "known false alarms in the small object allocator. Patch contributed by Dhiru " "Kholia." msgstr "" "`Issue #18596 `__: Support the use of address " "sanity checking in recent versions of clang and GCC by appropriately marking " "known false alarms in the small object allocator. Patch contributed by Dhiru " "Kholia." #: ../../../Misc/NEWS:8229 msgid "" "`Issue #18873 `__: 2to3 and the findnocoding." "py script now detect Python source code encoding only in comment lines." msgstr "" "`Issue #18873 `__: 2to3 and the findnocoding." "py script now detect Python source code encoding only in comment lines." #: ../../../Misc/NEWS:8234 msgid "Python 3.4.0 Alpha 2" msgstr "Python 3.4.0 Alpha 2" #: ../../../Misc/NEWS:8236 msgid "Release date: 2013-09-09" msgstr "Date de sortie : 09-09-2013" #: ../../../Misc/NEWS:8241 msgid "" "`Issue #18942 `__: sys._debugmallocstats() " "output was damaged on Windows." msgstr "" "`Issue #18942 `__: sys._debugmallocstats() " "output was damaged on Windows." #: ../../../Misc/NEWS:8243 msgid "" "`Issue #18571 `__: Implementation of the PEP " "446: file descriptors and file handles are now created non-inheritable; add " "functions os.get/set_inheritable(), os.get/set_handle_inheritable() and " "socket.socket.get/set_inheritable()." msgstr "" "`Issue #18571 `__: Implementation of the PEP " "446: file descriptors and file handles are now created non-inheritable; add " "functions os.get/set_inheritable(), os.get/set_handle_inheritable() and " "socket.socket.get/set_inheritable()." #: ../../../Misc/NEWS:8248 msgid "" "`Issue #11619 `__: The parser and the import " "machinery do not encode Unicode filenames anymore on Windows." msgstr "" "`Issue #11619 `__: The parser and the import " "machinery do not encode Unicode filenames anymore on Windows." #: ../../../Misc/NEWS:8251 msgid "" "`Issue #18808 `__: Non-daemon threads are now " "automatically joined when a sub-interpreter is shutdown (it would previously " "dump a fatal error)." msgstr "" "`Issue #18808 `__: Non-daemon threads are now " "automatically joined when a sub-interpreter is shutdown (it would previously " "dump a fatal error)." #: ../../../Misc/NEWS:8254 msgid "Remove support for compiling on systems without getcwd()." msgstr "" #: ../../../Misc/NEWS:8256 msgid "" "`Issue #18774 `__: Remove last bits of GNU " "PTH thread code and thread_pth.h." msgstr "" "`Issue #18774 `__: Remove last bits of GNU " "PTH thread code and thread_pth.h." #: ../../../Misc/NEWS:8258 msgid "" "`Issue #18771 `__: Add optimization to set " "object lookups to reduce the cost of hash collisions. The core idea is to " "inspect a second key/hash pair for each cache line retrieved." msgstr "" "`Issue #18771 `__: Add optimization to set " "object lookups to reduce the cost of hash collisions. The core idea is to " "inspect a second key/hash pair for each cache line retrieved." #: ../../../Misc/NEWS:8262 msgid "" "`Issue #16105 `__: When a signal handler " "fails to write to the file descriptor registered with ``signal." "set_wakeup_fd()``, report an exception instead of ignoring the error." msgstr "" "`Issue #16105 `__: When a signal handler " "fails to write to the file descriptor registered with ``signal." "set_wakeup_fd()``, report an exception instead of ignoring the error." #: ../../../Misc/NEWS:8266 msgid "" "`Issue #18722 `__: Remove uses of the " "\"register\" keyword in C code." msgstr "" "`Issue #18722 `__: Remove uses of the " "\"register\" keyword in C code." #: ../../../Misc/NEWS:8268 msgid "" "`Issue #18667 `__: Add missing \"HAVE_FCHOWNAT" "\" symbol to posix._have_functions." msgstr "" "`Issue #18667 `__: Add missing \"HAVE_FCHOWNAT" "\" symbol to posix._have_functions." #: ../../../Misc/NEWS:8270 msgid "" "`Issue #16499 `__: Add command line option " "for isolated mode." msgstr "" "`Issue #16499 `__: Add command line option " "for isolated mode." #: ../../../Misc/NEWS:8272 msgid "" "`Issue #15301 `__: Parsing fd, uid, and gid " "parameters for builtins in Modules/posixmodule.c is now far more robust." msgstr "" "`Issue #15301 `__: Parsing fd, uid, and gid " "parameters for builtins in Modules/posixmodule.c is now far more robust." #: ../../../Misc/NEWS:8275 msgid "" "`Issue #18368 `__: PyOS_StdioReadline() no " "longer leaks memory when realloc() fail." msgstr "" "`Issue #18368 `__: PyOS_StdioReadline() no " "longer leaks memory when realloc() fail." #: ../../../Misc/NEWS:8278 msgid "" "`Issue #17934 `__: Add a clear() method to " "frame objects, to help clean up expensive details (local variables) and " "break reference cycles." msgstr "" "`Issue #17934 `__: Add a clear() method to " "frame objects, to help clean up expensive details (local variables) and " "break reference cycles." #: ../../../Misc/NEWS:8281 msgid "" "`Issue #18780 `__: %-formatting codes %d, %i, " "and %u now treat int-subclasses as int (displays value of int-subclass " "instead of str(int-subclass) )." msgstr "" "`Issue #18780 `__: %-formatting codes %d, %i, " "and %u now treat int-subclasses as int (displays value of int-subclass " "instead of str(int-subclass) )." #: ../../../Misc/NEWS:8287 msgid "" "`Issue #18808 `__: Thread.join() now waits " "for the underlying thread state to be destroyed before returning. This " "prevents unpredictable aborts in Py_EndInterpreter() when some non-daemon " "threads are still running." msgstr "" "`Issue #18808 `__: Thread.join() now waits " "for the underlying thread state to be destroyed before returning. This " "prevents unpredictable aborts in Py_EndInterpreter() when some non-daemon " "threads are still running." #: ../../../Misc/NEWS:8291 msgid "" "`Issue #18458 `__: Prevent crashes with newer " "versions of libedit. Its readline emulation has changed from 0-based " "indexing to 1-based like gnu readline." msgstr "" "`Issue #18458 `__: Prevent crashes with newer " "versions of libedit. Its readline emulation has changed from 0-based " "indexing to 1-based like gnu readline." #: ../../../Misc/NEWS:8294 msgid "" "`Issue #18852 `__: Handle case of ``readline." "__doc__`` being ``None`` in the new readline activation code in ``site.py``." msgstr "" "`Issue #18852 `__: Handle case of ``readline." "__doc__`` being ``None`` in the new readline activation code in ``site.py``." #: ../../../Misc/NEWS:8297 msgid "" "`Issue #18672 `__: Fixed format specifiers " "for Py_ssize_t in debugging output in the _sre module." msgstr "" "`Issue #18672 `__: Fixed format specifiers " "for Py_ssize_t in debugging output in the _sre module." #: ../../../Misc/NEWS:8300 msgid "" "`Issue #18830 `__: inspect.getclasstree() no " "longer produces duplicate entries even when input list contains duplicates." msgstr "" "`Issue #18830 `__: inspect.getclasstree() no " "longer produces duplicate entries even when input list contains duplicates." #: ../../../Misc/NEWS:8303 msgid "" "`Issue #18878 `__: sunau.open now supports " "the context management protocol. Based on patches by Claudiu Popa and R. " "David Murray." msgstr "" "`Issue #18878 `__: sunau.open now supports " "the context management protocol. Based on patches by Claudiu Popa and R. " "David Murray." #: ../../../Misc/NEWS:8306 msgid "" "`Issue #18909 `__: Fix _tkinter.tkapp." "interpaddr() on Windows 64-bit, don't cast 64-bit pointer to long (32 bits)." msgstr "" "`Issue #18909 `__: Fix _tkinter.tkapp." "interpaddr() on Windows 64-bit, don't cast 64-bit pointer to long (32 bits)." #: ../../../Misc/NEWS:8309 msgid "" "`Issue #18876 `__: The FileIO.mode attribute " "now better reflects the actual mode under which the file was opened. Patch " "by Erik Bray." msgstr "" "`Issue #18876 `__: The FileIO.mode attribute " "now better reflects the actual mode under which the file was opened. Patch " "by Erik Bray." #: ../../../Misc/NEWS:8312 msgid "" "`Issue #16853 `__: Add new selectors module." msgstr "" "`Issue #16853 `__: Add new selectors module." #: ../../../Misc/NEWS:8314 msgid "" "`Issue #18882 `__: Add threading." "main_thread() function." msgstr "" "`Issue #18882 `__: Add threading." "main_thread() function." #: ../../../Misc/NEWS:8316 msgid "" "`Issue #18901 `__: The sunau getparams method " "now returns a namedtuple rather than a plain tuple. Patch by Claudiu Popa." msgstr "" "`Issue #18901 `__: The sunau getparams method " "now returns a namedtuple rather than a plain tuple. Patch by Claudiu Popa." #: ../../../Misc/NEWS:8319 msgid "" "`Issue #17487 `__: The result of the wave " "getparams method now is pickleable again. Patch by Claudiu Popa." msgstr "" "`Issue #17487 `__: The result of the wave " "getparams method now is pickleable again. Patch by Claudiu Popa." #: ../../../Misc/NEWS:8322 msgid "" "`Issue #18756 `__: os.urandom() now uses a " "lazily-opened persistent file descriptor, so as to avoid using many file " "descriptors when run in parallel from multiple threads." msgstr "" "`Issue #18756 `__: os.urandom() now uses a " "lazily-opened persistent file descriptor, so as to avoid using many file " "descriptors when run in parallel from multiple threads." #: ../../../Misc/NEWS:8326 msgid "" "`Issue #18418 `__: After fork(), reinit all " "threads states, not only active ones. Patch by A. Jesse Jiryu Davis." msgstr "" "`Issue #18418 `__: After fork(), reinit all " "threads states, not only active ones. Patch by A. Jesse Jiryu Davis." #: ../../../Misc/NEWS:8329 msgid "" "`Issue #17974 `__: Switch unittest from using " "getopt to using argparse." msgstr "" "`Issue #17974 `__: Switch unittest from using " "getopt to using argparse." #: ../../../Misc/NEWS:8331 msgid "" "`Issue #11798 `__: TestSuite now drops " "references to own tests after execution." msgstr "" "`Issue #11798 `__: TestSuite now drops " "references to own tests after execution." #: ../../../Misc/NEWS:8333 msgid "" "`Issue #16611 `__: http.cookie now correctly " "parses the 'secure' and 'httponly' cookie flags." msgstr "" "`Issue #16611 `__: http.cookie now correctly " "parses the 'secure' and 'httponly' cookie flags." #: ../../../Misc/NEWS:8336 msgid "" "`Issue #11973 `__: Fix a problem in kevent. " "The flags and fflags fields are now properly handled as unsigned." msgstr "" "`Issue #11973 `__: Fix a problem in kevent. " "The flags and fflags fields are now properly handled as unsigned." #: ../../../Misc/NEWS:8339 msgid "" "`Issue #18807 `__: ``pyvenv`` now takes a --" "copies argument allowing copies instead of symlinks even where symlinks are " "available and the default." msgstr "" "`Issue #18807 `__: ``pyvenv`` now takes a --" "copies argument allowing copies instead of symlinks even where symlinks are " "available and the default." #: ../../../Misc/NEWS:8342 msgid "" "`Issue #18538 `__: ``python -m dis`` now uses " "argparse for argument processing. Patch by Michele Orrù." msgstr "" "`Issue #18538 `__: ``python -m dis`` now uses " "argparse for argument processing. Patch by Michele Orrù." #: ../../../Misc/NEWS:8345 msgid "" "`Issue #18394 `__: Close cgi.FieldStorage's " "optional file." msgstr "" "`Issue #18394 `__: Close cgi.FieldStorage's " "optional file." #: ../../../Misc/NEWS:8347 msgid "" "`Issue #17702 `__: On error, os.environb now " "suppresses the exception context when raising a new KeyError with the " "original key." msgstr "" "`Issue #17702 `__: On error, os.environb now " "suppresses the exception context when raising a new KeyError with the " "original key." #: ../../../Misc/NEWS:8350 msgid "" "`Issue #16809 `__: Fixed some tkinter " "incompabilities with Tcl/Tk 8.6." msgstr "" "`Issue #16809 `__: Fixed some tkinter " "incompabilities with Tcl/Tk 8.6." #: ../../../Misc/NEWS:8352 msgid "" "`Issue #16809 `__: Tkinter's splitlist() and " "split() methods now accept Tcl_Obj argument." msgstr "" "`Issue #16809 `__: Tkinter's splitlist() and " "split() methods now accept Tcl_Obj argument." #: ../../../Misc/NEWS:8355 msgid "" "`Issue #17211 `__: Yield a namedtuple in " "pkgutil. Patch by Ramchandra Apte." msgstr "" "`Issue #17211 `__: Yield a namedtuple in " "pkgutil. Patch by Ramchandra Apte." #: ../../../Misc/NEWS:8358 msgid "" "`Issue #18324 `__: set_payload now correctly " "handles binary input. This also supersedes the previous fixes for #14360, " "#1717, and #16564." msgstr "" "`Issue #18324 `__: set_payload now correctly " "handles binary input. This also supersedes the previous fixes for #14360, " "#1717, and #16564." #: ../../../Misc/NEWS:8361 msgid "" "`Issue #18794 `__: Add a fileno() method and " "a closed attribute to select.devpoll objects." msgstr "" "`Issue #18794 `__: Add a fileno() method and " "a closed attribute to select.devpoll objects." #: ../../../Misc/NEWS:8364 msgid "" "`Issue #17119 `__: Fixed integer overflows " "when processing large strings and tuples in the tkinter module." msgstr "" "`Issue #17119 `__: Fixed integer overflows " "when processing large strings and tuples in the tkinter module." #: ../../../Misc/NEWS:8367 msgid "" "`Issue #15352 `__: Rebuild frozen modules " "when marshal.c is changed." msgstr "" "`Issue #15352 `__: Rebuild frozen modules " "when marshal.c is changed." #: ../../../Misc/NEWS:8369 msgid "" "`Issue #18747 `__: Re-seed OpenSSL's pseudo-" "random number generator after fork. A pthread_atfork() parent handler is " "used to seed the PRNG with pid, time and some stack data." msgstr "" "`Issue #18747 `__: Re-seed OpenSSL's pseudo-" "random number generator after fork. A pthread_atfork() parent handler is " "used to seed the PRNG with pid, time and some stack data." #: ../../../Misc/NEWS:8373 msgid "" "`Issue #8865 `__: Concurrent invocation of " "select.poll.poll() now raises a RuntimeError exception. Patch by Christian " "Schubert." msgstr "" "`Issue #8865 `__: Concurrent invocation of " "select.poll.poll() now raises a RuntimeError exception. Patch by Christian " "Schubert." #: ../../../Misc/NEWS:8376 msgid "" "`Issue #18777 `__: The ssl module now uses " "the new CRYPTO_THREADID API of OpenSSL 1.0.0+ instead of the deprecated " "CRYPTO id callback function." msgstr "" "`Issue #18777 `__: The ssl module now uses " "the new CRYPTO_THREADID API of OpenSSL 1.0.0+ instead of the deprecated " "CRYPTO id callback function." #: ../../../Misc/NEWS:8379 msgid "" "`Issue #18768 `__: Correct doc string of " "RAND_edg(). Patch by Vajrasky Kok." msgstr "" "`Issue #18768 `__: Correct doc string of " "RAND_edg(). Patch by Vajrasky Kok." #: ../../../Misc/NEWS:8381 msgid "" "`Issue #18178 `__: Fix ctypes on BSD. " "dlmalloc.c was compiled twice which broke malloc weak symbols." msgstr "" "`Issue #18178 `__: Fix ctypes on BSD. " "dlmalloc.c was compiled twice which broke malloc weak symbols." #: ../../../Misc/NEWS:8384 msgid "" "`Issue #18709 `__: Fix CVE-2013-4238. The SSL " "module now handles NULL bytes inside subjectAltName correctly. Formerly the " "module has used OpenSSL's GENERAL_NAME_print() function to get the string " "representation of ASN.1 strings for ``rfc822Name`` (email), ``dNSName`` " "(DNS) and ``uniformResourceIdentifier`` (URI)." msgstr "" "`Issue #18709 `__: Fix CVE-2013-4238. The SSL " "module now handles NULL bytes inside subjectAltName correctly. Formerly the " "module has used OpenSSL's GENERAL_NAME_print() function to get the string " "representation of ASN.1 strings for ``rfc822Name`` (email), ``dNSName`` " "(DNS) and ``uniformResourceIdentifier`` (URI)." #: ../../../Misc/NEWS:8390 msgid "" "`Issue #18701 `__: Remove support of old " "CPython versions (<3.0) from C code." msgstr "" "`Issue #18701 `__: Remove support of old " "CPython versions (<3.0) from C code." #: ../../../Misc/NEWS:8392 msgid "" "`Issue #18756 `__: Improve error reporting in " "os.urandom() when the failure is due to something else than /dev/urandom not " "existing (for example, exhausting the file descriptor limit)." msgstr "" "`Issue #18756 `__: Improve error reporting in " "os.urandom() when the failure is due to something else than /dev/urandom not " "existing (for example, exhausting the file descriptor limit)." #: ../../../Misc/NEWS:8396 msgid "" "`Issue #18673 `__: Add O_TMPFILE to os " "module. O_TMPFILE requires Linux kernel 3.11 or newer. It's only defined on " "system with 3.11 uapi headers, too." msgstr "" "`Issue #18673 `__: Add O_TMPFILE to os " "module. O_TMPFILE requires Linux kernel 3.11 or newer. It's only defined on " "system with 3.11 uapi headers, too." #: ../../../Misc/NEWS:8399 msgid "" "`Issue #18532 `__: Change the builtin hash " "algorithms' names to lower case names as promised by hashlib's documentation." msgstr "" "`Issue #18532 `__: Change the builtin hash " "algorithms' names to lower case names as promised by hashlib's documentation." #: ../../../Misc/NEWS:8402 msgid "" "`Issue #8713 `__: add new spwan and forkserver " "start methods, and new functions get_all_start_methods, get_start_method, " "and set_start_method, to multiprocessing." msgstr "" "`Issue #8713 `__: add new spwan and forkserver " "start methods, and new functions get_all_start_methods, get_start_method, " "and set_start_method, to multiprocessing." #: ../../../Misc/NEWS:8406 msgid "" "`Issue #18405 `__: Improve the entropy of " "crypt.mksalt()." msgstr "" "`Issue #18405 `__: Improve the entropy of " "crypt.mksalt()." #: ../../../Misc/NEWS:8408 msgid "" "`Issue #12015 `__: The tempfile module now " "uses a suffix of 8 random characters instead of 6, to reduce the risk of " "filename collision. The entropy was reduced when uppercase letters were " "removed from the charset used to generate random characters." msgstr "" "`Issue #12015 `__: The tempfile module now " "uses a suffix of 8 random characters instead of 6, to reduce the risk of " "filename collision. The entropy was reduced when uppercase letters were " "removed from the charset used to generate random characters." #: ../../../Misc/NEWS:8413 msgid "" "`Issue #18585 `__: Add :func:`textwrap." "shorten` to collapse and truncate a piece of text to a given length." msgstr "" "`Issue #18585 `__: Add :func:`textwrap." "shorten` to collapse and truncate a piece of text to a given length." #: ../../../Misc/NEWS:8416 msgid "" "`Issue #18598 `__: Tweak exception message " "for importlib.import_module() to include the module name when a key argument " "is missing." msgstr "" "`Issue #18598 `__: Tweak exception message " "for importlib.import_module() to include the module name when a key argument " "is missing." #: ../../../Misc/NEWS:8419 msgid "" "`Issue #19151 `__: Fix docstring and use of " "_get_supported_file_loaders() to reflect 2-tuples." msgstr "" "`Issue #19151 `__: Fix docstring and use of " "_get_supported_file_loaders() to reflect 2-tuples." #: ../../../Misc/NEWS:8422 msgid "" "`Issue #19152 `__: Add ExtensionFileLoader." "get_filename()." msgstr "" "`Issue #19152 `__: Add ExtensionFileLoader." "get_filename()." #: ../../../Misc/NEWS:8424 msgid "" "`Issue #18676 `__: Change 'positive' to 'non-" "negative' in queue.py put and get docstrings and ValueError messages. Patch " "by Zhongyue Luo" msgstr "" "`Issue #18676 `__: Change 'positive' to 'non-" "negative' in queue.py put and get docstrings and ValueError messages. Patch " "by Zhongyue Luo" #: ../../../Misc/NEWS:8427 msgid "Fix refcounting issue with extension types in tkinter." msgstr "" #: ../../../Misc/NEWS:8429 msgid "" "`Issue #8112 `__: xlmrpc.server's " "DocXMLRPCServer server no longer raises an error if methods have " "annotations; it now correctly displays the annotations." msgstr "" "`Issue #8112 `__: xlmrpc.server's " "DocXMLRPCServer server no longer raises an error if methods have " "annotations; it now correctly displays the annotations." #: ../../../Misc/NEWS:8432 msgid "" "`Issue #18600 `__: Added policy argument to " "email.message.Message.as_string, and as_bytes and __bytes__ methods to " "Message." msgstr "" "`Issue #18600 `__: Added policy argument to " "email.message.Message.as_string, and as_bytes and __bytes__ methods to " "Message." #: ../../../Misc/NEWS:8435 msgid "" "`Issue #18671 `__: Output more information " "when logging exceptions occur." msgstr "" "`Issue #18671 `__: Output more information " "when logging exceptions occur." #: ../../../Misc/NEWS:8437 msgid "" "`Issue #18621 `__: Prevent the site module's " "patched builtins from keeping too many references alive for too long." msgstr "" "`Issue #18621 `__: Prevent the site module's " "patched builtins from keeping too many references alive for too long." #: ../../../Misc/NEWS:8440 msgid "" "`Issue #4885 `__: Add weakref support to mmap " "objects. Patch by Valerie Lambert." msgstr "" "`Issue #4885 `__: Add weakref support to mmap " "objects. Patch by Valerie Lambert." #: ../../../Misc/NEWS:8442 msgid "" "`Issue #8860 `__: Fixed rounding in timedelta " "constructor." msgstr "" "`Issue #8860 `__: Fixed rounding in timedelta " "constructor." #: ../../../Misc/NEWS:8444 msgid "" "`Issue #18849 `__: Fixed a Windows-specific " "tempfile bug where collision with an existing directory caused mkstemp and " "related APIs to fail instead of retrying. Report and fix by Vlad Shcherbina." msgstr "" "`Issue #18849 `__: Fixed a Windows-specific " "tempfile bug where collision with an existing directory caused mkstemp and " "related APIs to fail instead of retrying. Report and fix by Vlad Shcherbina." #: ../../../Misc/NEWS:8448 msgid "" "`Issue #18920 `__: argparse's default " "destination for the version action (-v, --version) has also been changed to " "stdout, to match the Python executable." msgstr "" "`Issue #18920 `__: argparse's default " "destination for the version action (-v, --version) has also been changed to " "stdout, to match the Python executable." #: ../../../Misc/NEWS:8454 msgid "" "`Issue #18623 `__: Factor out the " "_SuppressCoreFiles context manager into test.support. Patch by Valerie " "Lambert." msgstr "" "`Issue #18623 `__: Factor out the " "_SuppressCoreFiles context manager into test.support. Patch by Valerie " "Lambert." #: ../../../Misc/NEWS:8457 msgid "" "`Issue #12037 `__: Fix test_email for desktop " "Windows." msgstr "" "`Issue #12037 `__: Fix test_email for desktop " "Windows." #: ../../../Misc/NEWS:8459 msgid "" "`Issue #15507 `__: test_subprocess's " "test_send_signal could fail if the test runner were run in an environment " "where the process inherited an ignore setting for SIGINT. Restore the " "SIGINT handler to the desired KeyboardInterrupt raising one during that test." msgstr "" "`Issue #15507 `__: test_subprocess's " "test_send_signal could fail if the test runner were run in an environment " "where the process inherited an ignore setting for SIGINT. Restore the " "SIGINT handler to the desired KeyboardInterrupt raising one during that test." #: ../../../Misc/NEWS:8464 msgid "" "`Issue #16799 `__: Switched from getopt to " "argparse style in regrtest's argument parsing. Added more tests for " "regrtest's argument parsing." msgstr "" "`Issue #16799 `__: Switched from getopt to " "argparse style in regrtest's argument parsing. Added more tests for " "regrtest's argument parsing." #: ../../../Misc/NEWS:8467 msgid "" "`Issue #18792 `__: Use \"127.0.0.1\" or " "\"::1\" instead of \"localhost\" as much as possible, since \"localhost\" " "goes through a DNS lookup under recent Windows versions." msgstr "" "`Issue #18792 `__: Use \"127.0.0.1\" or " "\"::1\" instead of \"localhost\" as much as possible, since \"localhost\" " "goes through a DNS lookup under recent Windows versions." #: ../../../Misc/NEWS:8474 msgid "" "`Issue #18489 `__: Add tests for " "SearchEngine. Original patch by Phil Webster." msgstr "" "`Issue #18489 `__: Add tests for " "SearchEngine. Original patch by Phil Webster." #: ../../../Misc/NEWS:8479 msgid "" "`Issue #18743 `__: Fix references to non-" "existent \"StringIO\" module." msgstr "" "`Issue #18743 `__: Fix references to non-" "existent \"StringIO\" module." #: ../../../Misc/NEWS:8481 msgid "" "`Issue #18783 `__: Removed existing mentions " "of Python long type in docstrings, error messages and comments." msgstr "" "`Issue #18783 `__: Removed existing mentions " "of Python long type in docstrings, error messages and comments." #: ../../../Misc/NEWS:8487 msgid "" "`Issue #1584 `__: Provide configure options to " "override default search paths for Tcl and Tk when building _tkinter." msgstr "" "`Issue #1584 `__: Provide configure options to " "override default search paths for Tcl and Tk when building _tkinter." #: ../../../Misc/NEWS:8490 msgid "" "`Issue #15663 `__: Tcl/Tk 8.5.14 is now " "included with the OS X 10.6+ 64-/32-bit installer. It is no longer " "necessary to install a third-party version of Tcl/Tk 8.5 to work around the " "problems in the Apple-supplied Tcl/Tk 8.5 shipped in OS X 10.6 and later " "releases." msgstr "" "`Issue #15663 `__: Tcl/Tk 8.5.14 is now " "included with the OS X 10.6+ 64-/32-bit installer. It is no longer " "necessary to install a third-party version of Tcl/Tk 8.5 to work around the " "problems in the Apple-supplied Tcl/Tk 8.5 shipped in OS X 10.6 and later " "releases." #: ../../../Misc/NEWS:8498 msgid "" "`Issue #18922 `__: Now The Lib/smtpd.py and " "Tools/i18n/msgfmt.py scripts write their version strings to stdout, and not " "to sderr." msgstr "" "`Issue #18922 `__: Now The Lib/smtpd.py and " "Tools/i18n/msgfmt.py scripts write their version strings to stdout, and not " "to sderr." #: ../../../Misc/NEWS:8503 msgid "Python 3.4.0 Alpha 1" msgstr "Python 3.4.0 Alpha 1" #: ../../../Misc/NEWS:8505 msgid "Release date: 2013-08-03" msgstr "Date de sortie : 2013-08-03" #: ../../../Misc/NEWS:8510 msgid "" "`Issue #16741 `__: Fix an error reporting in " "int()." msgstr "" "`Issue #16741 `__: Fix an error reporting in " "int()." #: ../../../Misc/NEWS:8512 msgid "" "`Issue #17899 `__: Fix rare file descriptor " "leak in os.listdir()." msgstr "" "`Issue #17899 `__: Fix rare file descriptor " "leak in os.listdir()." #: ../../../Misc/NEWS:8514 msgid "" "`Issue #10241 `__: Clear extension module " "dict copies at interpreter shutdown. Patch by Neil Schemenauer, minimally " "modified." msgstr "" "`Issue #10241 `__: Clear extension module " "dict copies at interpreter shutdown. Patch by Neil Schemenauer, minimally " "modified." #: ../../../Misc/NEWS:8517 msgid "" "`Issue #9035 `__: ismount now recognises " "volumes mounted below a drive root on Windows. Original patch by Atsuo " "Ishimoto." msgstr "" "`Issue #9035 `__: ismount now recognises " "volumes mounted below a drive root on Windows. Original patch by Atsuo " "Ishimoto." #: ../../../Misc/NEWS:8520 msgid "" "`Issue #18214 `__: Improve finalization of " "Python modules to avoid setting their globals to None, in most cases." msgstr "" "`Issue #18214 `__: Improve finalization of " "Python modules to avoid setting their globals to None, in most cases." #: ../../../Misc/NEWS:8523 msgid "" "`Issue #18112 `__: PEP 442 implementation " "(safe object finalization)." msgstr "" "`Issue #18112 `__: PEP 442 implementation " "(safe object finalization)." #: ../../../Misc/NEWS:8525 msgid "" "`Issue #18552 `__: Check return value of " "PyArena_AddPyObject() in obj2ast_object()." msgstr "" "`Issue #18552 `__: Check return value of " "PyArena_AddPyObject() in obj2ast_object()." #: ../../../Misc/NEWS:8528 msgid "" "`Issue #18560 `__: Fix potential NULL pointer " "dereference in sum()." msgstr "" "`Issue #18560 `__: Fix potential NULL pointer " "dereference in sum()." #: ../../../Misc/NEWS:8530 msgid "" "`Issue #18520 `__: Add a new " "PyStructSequence_InitType2() function, same than PyStructSequence_InitType() " "except that it has a return value (0 on success, -1 on error)." msgstr "" "`Issue #18520 `__: Add a new " "PyStructSequence_InitType2() function, same than PyStructSequence_InitType() " "except that it has a return value (0 on success, -1 on error)." #: ../../../Misc/NEWS:8534 msgid "" "`Issue #15905 `__: Fix theoretical buffer " "overflow in handling of sys.argv[0], prefix and exec_prefix if the operation " "system does not obey MAXPATHLEN." msgstr "" "`Issue #15905 `__: Fix theoretical buffer " "overflow in handling of sys.argv[0], prefix and exec_prefix if the operation " "system does not obey MAXPATHLEN." #: ../../../Misc/NEWS:8537 msgid "" "`Issue #18408 `__: Fix many various bugs in " "code handling errors, especially on memory allocation failure (MemoryError)." msgstr "" "`Issue #18408 `__: Fix many various bugs in " "code handling errors, especially on memory allocation failure (MemoryError)." #: ../../../Misc/NEWS:8540 msgid "" "`Issue #18344 `__: Fix potential ref-leaks in " "_bufferedreader_read_all()." msgstr "" "`Issue #18344 `__: Fix potential ref-leaks in " "_bufferedreader_read_all()." #: ../../../Misc/NEWS:8542 msgid "" "`Issue #18342 `__: Use the repr of a module " "name when an import fails when using ``from ... import ...``." msgstr "" "`Issue #18342 `__: Use the repr of a module " "name when an import fails when using ``from ... import ...``." #: ../../../Misc/NEWS:8545 msgid "" "`Issue #17872 `__: Fix a segfault in marshal." "load() when input stream returns more bytes than requested." msgstr "" "`Issue #17872 `__: Fix a segfault in marshal." "load() when input stream returns more bytes than requested." #: ../../../Misc/NEWS:8548 msgid "" "`Issue #18338 `__: `python --version` now " "prints version string to stdout, and not to stderr. Patch by Berker Peksag " "and Michael Dickens." msgstr "" "`Issue #18338 `__: `python --version` now " "prints version string to stdout, and not to stderr. Patch by Berker Peksag " "and Michael Dickens." #: ../../../Misc/NEWS:8551 msgid "" "`Issue #18426 `__: Fix NULL pointer " "dereference in C extension import when PyModule_GetDef() returns an error." msgstr "" "`Issue #18426 `__: Fix NULL pointer " "dereference in C extension import when PyModule_GetDef() returns an error." #: ../../../Misc/NEWS:8554 msgid "" "`Issue #17206 `__: On Windows, increase the " "stack size from 2 MB to 4.2 MB to fix a stack overflow in the marshal module " "(fix a crash in test_marshal). Patch written by Jeremy Kloth." msgstr "" "`Issue #17206 `__: On Windows, increase the " "stack size from 2 MB to 4.2 MB to fix a stack overflow in the marshal module " "(fix a crash in test_marshal). Patch written by Jeremy Kloth." #: ../../../Misc/NEWS:8558 msgid "" "`Issue #3329 `__: Implement the PEP 445: Add " "new APIs to customize Python memory allocators." msgstr "" "`Issue #3329 `__: Implement the PEP 445: Add " "new APIs to customize Python memory allocators." #: ../../../Misc/NEWS:8561 msgid "" "`Issue #18328 `__: Reorder ops in " "PyThreadState_Delete*() functions. Now the tstate is first removed from TLS " "and then deallocated." msgstr "" "`Issue #18328 `__: Reorder ops in " "PyThreadState_Delete*() functions. Now the tstate is first removed from TLS " "and then deallocated." #: ../../../Misc/NEWS:8564 msgid "" "`Issue #13483 `__: Use VirtualAlloc in " "obmalloc on Windows." msgstr "" "`Issue #13483 `__: Use VirtualAlloc in " "obmalloc on Windows." #: ../../../Misc/NEWS:8566 msgid "" "`Issue #18184 `__: PyUnicode_FromFormat() and " "PyUnicode_FromFormatV() now raise OverflowError when an argument of %c " "format is out of range." msgstr "" "`Issue #18184 `__: PyUnicode_FromFormat() and " "PyUnicode_FromFormatV() now raise OverflowError when an argument of %c " "format is out of range." #: ../../../Misc/NEWS:8569 msgid "" "`Issue #18111 `__: The min() and max() " "functions now support a default argument to be returned instead of raising a " "ValueError on an empty sequence. (Contributed by Julian Berman.)" msgstr "" "`Issue #18111 `__: The min() and max() " "functions now support a default argument to be returned instead of raising a " "ValueError on an empty sequence. (Contributed by Julian Berman.)" #: ../../../Misc/NEWS:8573 msgid "" "`Issue #18137 `__: Detect integer overflow on " "precision in float.__format__() and complex.__format__()." msgstr "" "`Issue #18137 `__: Detect integer overflow on " "precision in float.__format__() and complex.__format__()." #: ../../../Misc/NEWS:8576 msgid "" "`Issue #15767 `__: Introduce " "ModuleNotFoundError which is raised when a module could not be found." msgstr "" "`Issue #15767 `__: Introduce " "ModuleNotFoundError which is raised when a module could not be found." #: ../../../Misc/NEWS:8579 msgid "" "`Issue #18183 `__: Fix various unicode " "operations on strings with large unicode codepoints." msgstr "" "`Issue #18183 `__: Fix various unicode " "operations on strings with large unicode codepoints." #: ../../../Misc/NEWS:8582 msgid "" "`Issue #18180 `__: Fix ref leak in " "_PyImport_GetDynLoadWindows()." msgstr "" "`Issue #18180 `__: Fix ref leak in " "_PyImport_GetDynLoadWindows()." #: ../../../Misc/NEWS:8584 msgid "" "`Issue #18038 `__: SyntaxError raised during " "compilation sources with illegal encoding now always contains an encoding " "name." msgstr "" "`Issue #18038 `__: SyntaxError raised during " "compilation sources with illegal encoding now always contains an encoding " "name." #: ../../../Misc/NEWS:8587 msgid "" "`Issue #17931 `__: Resolve confusion on " "Windows between pids and process handles." msgstr "" "`Issue #17931 `__: Resolve confusion on " "Windows between pids and process handles." #: ../../../Misc/NEWS:8590 msgid "" "Tweak the exception message when the magic number or size value in a " "bytecode file is truncated." msgstr "" #: ../../../Misc/NEWS:8593 msgid "" "`Issue #17932 `__: Fix an integer overflow " "issue on Windows 64-bit in iterators: change the C type of seqiterobject." "it_index from long to Py_ssize_t." msgstr "" "`Issue #17932 `__: Fix an integer overflow " "issue on Windows 64-bit in iterators: change the C type of seqiterobject." "it_index from long to Py_ssize_t." #: ../../../Misc/NEWS:8596 msgid "" "`Issue #18065 `__: Don't set __path__ to the " "package name for frozen packages." msgstr "" "`Issue #18065 `__: Don't set __path__ to the " "package name for frozen packages." #: ../../../Misc/NEWS:8598 msgid "" "`Issue #18088 `__: When reloading a module, " "unconditionally reset all relevant attributes on the module (e.g. __name__, " "__loader__, __package__, __file__, __cached__)." msgstr "" "`Issue #18088 `__: When reloading a module, " "unconditionally reset all relevant attributes on the module (e.g. __name__, " "__loader__, __package__, __file__, __cached__)." #: ../../../Misc/NEWS:8602 msgid "" "`Issue #17937 `__: Try harder to collect " "cyclic garbage at shutdown." msgstr "" "`Issue #17937 `__: Try harder to collect " "cyclic garbage at shutdown." #: ../../../Misc/NEWS:8604 msgid "" "`Issue #12370 `__: Prevent class bodies from " "interfering with the __class__ closure." msgstr "" "`Issue #12370 `__: Prevent class bodies from " "interfering with the __class__ closure." #: ../../../Misc/NEWS:8607 msgid "" "`Issue #17644 `__: Fix a crash in str.format " "when curly braces are used in square brackets." msgstr "" "`Issue #17644 `__: Fix a crash in str.format " "when curly braces are used in square brackets." #: ../../../Misc/NEWS:8610 msgid "" "`Issue #17237 `__: Fix crash in the ASCII " "decoder on m68k." msgstr "" "`Issue #17237 `__: Fix crash in the ASCII " "decoder on m68k." #: ../../../Misc/NEWS:8612 msgid "" "`Issue #17927 `__: Frame objects kept " "arguments alive if they had been copied into a cell, even if the cell was " "cleared." msgstr "" "`Issue #17927 `__: Frame objects kept " "arguments alive if they had been copied into a cell, even if the cell was " "cleared." #: ../../../Misc/NEWS:8615 msgid "" "`Issue #1545463 `__: At shutdown, defer " "finalization of codec modules so that stderr remains usable." msgstr "" "`Issue #1545463 `__: At shutdown, defer " "finalization of codec modules so that stderr remains usable." #: ../../../Misc/NEWS:8618 msgid "" "`Issue #7330 `__: Implement width and " "precision (ex: \"%5.3s\") for the format string of PyUnicode_FromFormat() " "function, original patch written by Ysj Ray." msgstr "" "`Issue #7330 `__: Implement width and " "precision (ex: \"%5.3s\") for the format string of PyUnicode_FromFormat() " "function, original patch written by Ysj Ray." #: ../../../Misc/NEWS:8621 msgid "" "`Issue #1545463 `__: Global variables " "caught in reference cycles are now garbage-collected at shutdown." msgstr "" "`Issue #1545463 `__: Global variables " "caught in reference cycles are now garbage-collected at shutdown." #: ../../../Misc/NEWS:8624 msgid "" "`Issue #17094 `__: Clear stale thread states " "after fork(). Note that this is a potentially disruptive change since it " "may release some system resources which would otherwise remain perpetually " "alive (e.g. database connections kept in thread-local storage)." msgstr "" "`Issue #17094 `__: Clear stale thread states " "after fork(). Note that this is a potentially disruptive change since it " "may release some system resources which would otherwise remain perpetually " "alive (e.g. database connections kept in thread-local storage)." #: ../../../Misc/NEWS:8629 msgid "" "`Issue #17408 `__: Avoid using an obsolete " "instance of the copyreg module when the interpreter is shutdown and then " "started again." msgstr "" "`Issue #17408 `__: Avoid using an obsolete " "instance of the copyreg module when the interpreter is shutdown and then " "started again." #: ../../../Misc/NEWS:8632 msgid "" "`Issue #5845 `__: Enable tab-completion in the " "interactive interpreter by default, thanks to a new sys.__interactivehook__." msgstr "" "`Issue #5845 `__: Enable tab-completion in the " "interactive interpreter by default, thanks to a new sys.__interactivehook__." #: ../../../Misc/NEWS:8635 msgid "" "`Issue #17115 `__,17116: Module " "initialization now includes setting __package__ and __loader__ attributes to " "None." msgstr "" "`Issue #17115 `__,17116: Module " "initialization now includes setting __package__ and __loader__ attributes to " "None." #: ../../../Misc/NEWS:8638 msgid "" "`Issue #17853 `__: Ensure locals of a class " "that shadow free variables always win over the closures." msgstr "" "`Issue #17853 `__: Ensure locals of a class " "that shadow free variables always win over the closures." #: ../../../Misc/NEWS:8641 msgid "" "`Issue #17863 `__: In the interactive " "console, don't loop forever if the encoding can't be fetched from stdin." msgstr "" "`Issue #17863 `__: In the interactive " "console, don't loop forever if the encoding can't be fetched from stdin." #: ../../../Misc/NEWS:8644 msgid "" "`Issue #17867 `__: Raise an ImportError if " "__import__ is not found in __builtins__." msgstr "" "`Issue #17867 `__: Raise an ImportError if " "__import__ is not found in __builtins__." #: ../../../Misc/NEWS:8646 msgid "" "`Issue #18698 `__: Ensure importlib.reload() " "returns the module out of sys.modules." msgstr "" "`Issue #18698 `__: Ensure importlib.reload() " "returns the module out of sys.modules." #: ../../../Misc/NEWS:8648 msgid "" "`Issue #17857 `__: Prevent build failures " "with pre-3.5.0 versions of sqlite3, such as was shipped with Centos 5 and " "Mac OS X 10.4." msgstr "" "`Issue #17857 `__: Prevent build failures " "with pre-3.5.0 versions of sqlite3, such as was shipped with Centos 5 and " "Mac OS X 10.4." #: ../../../Misc/NEWS:8651 msgid "" "`Issue #17413 `__: sys.settrace callbacks " "were being passed a string instead of an exception instance for the 'value' " "element of the arg tuple if the exception originated from C code; now an " "exception instance is always provided." msgstr "" "`Issue #17413 `__: sys.settrace callbacks " "were being passed a string instead of an exception instance for the 'value' " "element of the arg tuple if the exception originated from C code; now an " "exception instance is always provided." #: ../../../Misc/NEWS:8655 msgid "" "`Issue #17782 `__: Fix undefined behaviour on " "platforms where ``struct timespec``'s \"tv_nsec\" member is not a C long." msgstr "" "`Issue #17782 `__: Fix undefined behaviour on " "platforms where ``struct timespec``'s \"tv_nsec\" member is not a C long." #: ../../../Misc/NEWS:8658 msgid "" "`Issue #17722 `__: When looking up __round__, " "resolve descriptors." msgstr "" "`Issue #17722 `__: When looking up __round__, " "resolve descriptors." #: ../../../Misc/NEWS:8660 msgid "" "`Issue #16061 `__: Speed up str.replace() for " "replacing 1-character strings." msgstr "" "`Issue #16061 `__: Speed up str.replace() for " "replacing 1-character strings." #: ../../../Misc/NEWS:8662 msgid "" "`Issue #17715 `__: Fix segmentation fault " "from raising an exception in a __trunc__ method." msgstr "" "`Issue #17715 `__: Fix segmentation fault " "from raising an exception in a __trunc__ method." #: ../../../Misc/NEWS:8665 msgid "" "`Issue #17643 `__: Add __callback__ attribute " "to weakref.ref." msgstr "" "`Issue #17643 `__: Add __callback__ attribute " "to weakref.ref." #: ../../../Misc/NEWS:8667 msgid "" "`Issue #16447 `__: Fixed potential " "segmentation fault when setting __name__ on a class." msgstr "" "`Issue #16447 `__: Fixed potential " "segmentation fault when setting __name__ on a class." #: ../../../Misc/NEWS:8670 msgid "" "`Issue #17669 `__: Fix crash involving " "finalization of generators using yield from." msgstr "" "`Issue #17669 `__: Fix crash involving " "finalization of generators using yield from." #: ../../../Misc/NEWS:8672 msgid "" "`Issue #14439 `__: Python now prints the " "traceback on runpy failure at startup." msgstr "" "`Issue #14439 `__: Python now prints the " "traceback on runpy failure at startup." #: ../../../Misc/NEWS:8674 msgid "" "`Issue #17469 `__: Fix " "_Py_GetAllocatedBlocks() and sys.getallocatedblocks() when running on " "valgrind." msgstr "" "`Issue #17469 `__: Fix " "_Py_GetAllocatedBlocks() and sys.getallocatedblocks() when running on " "valgrind." #: ../../../Misc/NEWS:8677 msgid "" "`Issue #17619 `__: Make input() check for " "Ctrl-C correctly on Windows." msgstr "" "`Issue #17619 `__: Make input() check for " "Ctrl-C correctly on Windows." #: ../../../Misc/NEWS:8679 msgid "" "`Issue #17357 `__: Add missing verbosity " "messages for -v/-vv that were lost during the importlib transition." msgstr "" "`Issue #17357 `__: Add missing verbosity " "messages for -v/-vv that were lost during the importlib transition." #: ../../../Misc/NEWS:8682 msgid "" "`Issue #17610 `__: Don't rely on non-standard " "behavior of the C qsort() function." msgstr "" "`Issue #17610 `__: Don't rely on non-standard " "behavior of the C qsort() function." #: ../../../Misc/NEWS:8684 msgid "" "`Issue #17323 `__: The \"[X refs, Y blocks]\" " "printed by debug builds has been disabled by default. It can be re-enabled " "with the `-X showrefcount` option." msgstr "" "`Issue #17323 `__: The \"[X refs, Y blocks]\" " "printed by debug builds has been disabled by default. It can be re-enabled " "with the `-X showrefcount` option." #: ../../../Misc/NEWS:8687 msgid "" "`Issue #17328 `__: Fix possible refleak in " "dict.setdefault." msgstr "" "`Issue #17328 `__: Fix possible refleak in " "dict.setdefault." #: ../../../Misc/NEWS:8689 msgid "" "`Issue #17275 `__: Corrected class name in " "init error messages of the C version of BufferedWriter and BufferedRandom." msgstr "" "`Issue #17275 `__: Corrected class name in " "init error messages of the C version of BufferedWriter and BufferedRandom." #: ../../../Misc/NEWS:8692 msgid "" "`Issue #7963 `__: Fixed misleading error " "message that issued when object is called without arguments." msgstr "" "`Issue #7963 `__: Fixed misleading error " "message that issued when object is called without arguments." #: ../../../Misc/NEWS:8695 msgid "" "`Issue #8745 `__: Small speed up zipimport on " "Windows. Patch by Catalin Iacob." msgstr "" "`Issue #8745 `__: Small speed up zipimport on " "Windows. Patch by Catalin Iacob." #: ../../../Misc/NEWS:8697 msgid "" "`Issue #5308 `__: Raise ValueError when " "marshalling too large object (a sequence with size >= 2**31), instead of " "producing illegal marshal data." msgstr "" "`Issue #5308 `__: Raise ValueError when " "marshalling too large object (a sequence with size >= 2**31), instead of " "producing illegal marshal data." #: ../../../Misc/NEWS:8700 msgid "" "`Issue #12983 `__: Bytes literals with " "invalid ``\\x`` escape now raise a SyntaxError and a full traceback " "including line number." msgstr "" "`Issue #12983 `__: Bytes literals with " "invalid ``\\x`` escape now raise a SyntaxError and a full traceback " "including line number." #: ../../../Misc/NEWS:8703 msgid "" "`Issue #16967 `__: In function definition, " "evaluate positional defaults before keyword-only defaults." msgstr "" "`Issue #16967 `__: In function definition, " "evaluate positional defaults before keyword-only defaults." #: ../../../Misc/NEWS:8706 msgid "" "`Issue #17173 `__: Remove uses of locale-" "dependent C functions (isalpha() etc.) in the interpreter." msgstr "" "`Issue #17173 `__: Remove uses of locale-" "dependent C functions (isalpha() etc.) in the interpreter." #: ../../../Misc/NEWS:8709 msgid "" "`Issue #17137 `__: When a Unicode string is " "resized, the internal wide character string (wstr) format is now cleared." msgstr "" "`Issue #17137 `__: When a Unicode string is " "resized, the internal wide character string (wstr) format is now cleared." #: ../../../Misc/NEWS:8712 msgid "" "`Issue #17043 `__: The unicode-internal " "decoder no longer read past the end of input buffer." msgstr "" "`Issue #17043 `__: The unicode-internal " "decoder no longer read past the end of input buffer." #: ../../../Misc/NEWS:8715 msgid "" "`Issue #17098 `__: All modules now have " "__loader__ set even if they pre-exist the bootstrapping of importlib." msgstr "" "`Issue #17098 `__: All modules now have " "__loader__ set even if they pre-exist the bootstrapping of importlib." #: ../../../Misc/NEWS:8718 msgid "" "`Issue #16979 `__: Fix error handling bugs in " "the unicode-escape-decode decoder." msgstr "" "`Issue #16979 `__: Fix error handling bugs in " "the unicode-escape-decode decoder." #: ../../../Misc/NEWS:8720 msgid "" "`Issue #16772 `__: The base argument to the " "int constructor no longer accepts floats, or other non-integer objects with " "an __int__ method. Objects with an __index__ method are now accepted." msgstr "" "`Issue #16772 `__: The base argument to the " "int constructor no longer accepts floats, or other non-integer objects with " "an __int__ method. Objects with an __index__ method are now accepted." #: ../../../Misc/NEWS:8724 msgid "" "`Issue #10156 `__: In the interpreter's " "initialization phase, unicode globals are now initialized dynamically as " "needed." msgstr "" "`Issue #10156 `__: In the interpreter's " "initialization phase, unicode globals are now initialized dynamically as " "needed." #: ../../../Misc/NEWS:8727 msgid "" "`Issue #16980 `__: Fix processing of escaped " "non-ascii bytes in the unicode-escape-decode decoder." msgstr "" "`Issue #16980 `__: Fix processing of escaped " "non-ascii bytes in the unicode-escape-decode decoder." #: ../../../Misc/NEWS:8730 msgid "" "`Issue #16975 `__: Fix error handling bug in " "the escape-decode bytes decoder." msgstr "" "`Issue #16975 `__: Fix error handling bug in " "the escape-decode bytes decoder." #: ../../../Misc/NEWS:8732 msgid "" "`Issue #14850 `__: Now a charmap decoder " "treats U+FFFE as \"undefined mapping\" in any mapping, not only in a string." msgstr "" "`Issue #14850 `__: Now a charmap decoder " "treats U+FFFE as \"undefined mapping\" in any mapping, not only in a string." #: ../../../Misc/NEWS:8735 msgid "" "`Issue #16613 `__: Add *m* argument to " "``collections.Chainmap.new_child`` to allow the new child map to be " "specified explicitly." msgstr "" "`Issue #16613 `__: Add *m* argument to " "``collections.Chainmap.new_child`` to allow the new child map to be " "specified explicitly." #: ../../../Misc/NEWS:8738 msgid "" "`Issue #16730 `__: importlib.machinery." "FileFinder now no longers raises an exception when trying to populate its " "cache and it finds out the directory is unreadable or has turned into a " "file. Reported and diagnosed by David Pritchard." msgstr "" "`Issue #16730 `__: importlib.machinery." "FileFinder now no longers raises an exception when trying to populate its " "cache and it finds out the directory is unreadable or has turned into a " "file. Reported and diagnosed by David Pritchard." #: ../../../Misc/NEWS:8743 msgid "" "`Issue #16906 `__: Fix a logic error that " "prevented most static strings from being cleared." msgstr "" "`Issue #16906 `__: Fix a logic error that " "prevented most static strings from being cleared." #: ../../../Misc/NEWS:8746 msgid "" "`Issue #11461 `__: Fix the incremental UTF-16 " "decoder. Original patch by Amaury Forgeot d'Arc." msgstr "" "`Issue #11461 `__: Fix the incremental UTF-16 " "decoder. Original patch by Amaury Forgeot d'Arc." #: ../../../Misc/NEWS:8749 msgid "" "`Issue #16856 `__: Fix a segmentation fault " "from calling repr() on a dict with a key whose repr raise an exception." msgstr "" "`Issue #16856 `__: Fix a segmentation fault " "from calling repr() on a dict with a key whose repr raise an exception." #: ../../../Misc/NEWS:8752 msgid "" "`Issue #16367 `__: Fix FileIO.readall() on " "Windows for files larger than 2 GB." msgstr "" "`Issue #16367 `__: Fix FileIO.readall() on " "Windows for files larger than 2 GB." #: ../../../Misc/NEWS:8754 msgid "" "`Issue #16761 `__: Calling int() with base " "argument only now raises TypeError." msgstr "" "`Issue #16761 `__: Calling int() with base " "argument only now raises TypeError." #: ../../../Misc/NEWS:8756 msgid "" "`Issue #16759 `__: Support the full DWORD " "(unsigned long) range in Reg2Py when retrieving a REG_DWORD value. This " "corrects functions like winreg.QueryValueEx that may have been returning " "truncated values." msgstr "" "`Issue #16759 `__: Support the full DWORD " "(unsigned long) range in Reg2Py when retrieving a REG_DWORD value. This " "corrects functions like winreg.QueryValueEx that may have been returning " "truncated values." #: ../../../Misc/NEWS:8760 msgid "" "`Issue #14420 `__: Support the full DWORD " "(unsigned long) range in Py2Reg when passed a REG_DWORD value. Fixes " "OverflowError in winreg.SetValueEx." msgstr "" "`Issue #14420 `__: Support the full DWORD " "(unsigned long) range in Py2Reg when passed a REG_DWORD value. Fixes " "OverflowError in winreg.SetValueEx." #: ../../../Misc/NEWS:8763 msgid "" "`Issue #11939 `__: Set the st_dev attribute " "of stat_result to allow Windows to take advantage of the os.path.samefile/" "sameopenfile/samestat implementations used by other platforms." msgstr "" "`Issue #11939 `__: Set the st_dev attribute " "of stat_result to allow Windows to take advantage of the os.path.samefile/" "sameopenfile/samestat implementations used by other platforms." #: ../../../Misc/NEWS:8767 msgid "" "`Issue #16772 `__: The int() constructor's " "second argument (base) no longer accepts non integer values. Consistent " "with the behavior in Python 2." msgstr "" "`Issue #16772 `__: The int() constructor's " "second argument (base) no longer accepts non integer values. Consistent " "with the behavior in Python 2." #: ../../../Misc/NEWS:8770 msgid "" "`Issue #14470 `__: Remove w9xpopen support " "per PEP 11." msgstr "" "`Issue #14470 `__: Remove w9xpopen support " "per PEP 11." #: ../../../Misc/NEWS:8772 msgid "" "`Issue #9856 `__: Replace deprecation warning " "with raising TypeError in object.__format__. Patch by Florent Xicluna." msgstr "" "`Issue #9856 `__: Replace deprecation warning " "with raising TypeError in object.__format__. Patch by Florent Xicluna." #: ../../../Misc/NEWS:8775 msgid "" "`Issue #16597 `__: In buffered and text IO, " "call close() on the underlying stream if invoking flush() fails." msgstr "" "`Issue #16597 `__: In buffered and text IO, " "call close() on the underlying stream if invoking flush() fails." #: ../../../Misc/NEWS:8778 msgid "" "`Issue #16722 `__: In the bytes() " "constructor, try to call __bytes__ on the argument before __index__." msgstr "" "`Issue #16722 `__: In the bytes() " "constructor, try to call __bytes__ on the argument before __index__." #: ../../../Misc/NEWS:8781 msgid "" "`Issue #16421 `__: loading multiple modules " "from one shared object is now handled correctly (previously, the first " "module loaded from that file was silently returned). Patch by Václav " "Šmilauer." msgstr "" "`Issue #16421 `__: loading multiple modules " "from one shared object is now handled correctly (previously, the first " "module loaded from that file was silently returned). Patch by Václav " "Šmilauer." #: ../../../Misc/NEWS:8785 msgid "" "`Issue #16602 `__: When a weakref's target " "was part of a long deallocation chain, the object could remain reachable " "through its weakref even though its refcount had dropped to zero." msgstr "" "`Issue #16602 `__: When a weakref's target " "was part of a long deallocation chain, the object could remain reachable " "through its weakref even though its refcount had dropped to zero." #: ../../../Misc/NEWS:8789 msgid "" "`Issue #16495 `__: Remove extraneous NULL " "encoding check from bytes_decode()." msgstr "" "`Issue #16495 `__: Remove extraneous NULL " "encoding check from bytes_decode()." #: ../../../Misc/NEWS:8791 msgid "" "`Issue #16619 `__: Create NameConstant AST " "class to represent None, True, and False literals. As a result, these " "constants are never loaded at runtime from builtins." msgstr "" "`Issue #16619 `__: Create NameConstant AST " "class to represent None, True, and False literals. As a result, these " "constants are never loaded at runtime from builtins." #: ../../../Misc/NEWS:8795 msgid "" "`Issue #16455 `__: On FreeBSD and Solaris, if " "the locale is C, the ASCII/surrogateescape codec is now used (instead of the " "locale encoding) to decode the command line arguments. This change fixes " "inconsistencies with os.fsencode() and os.fsdecode(), because these " "operating systems announce an ASCII locale encoding, but actually use the " "ISO-8859-1 encoding in practice." msgstr "" "`Issue #16455 `__: On FreeBSD and Solaris, if " "the locale is C, the ASCII/surrogateescape codec is now used (instead of the " "locale encoding) to decode the command line arguments. This change fixes " "inconsistencies with os.fsencode() and os.fsdecode(), because these " "operating systems announce an ASCII locale encoding, but actually use the " "ISO-8859-1 encoding in practice." #: ../../../Misc/NEWS:8801 msgid "" "`Issue #16562 `__: Optimize dict equality " "testing. Patch by Serhiy Storchaka." msgstr "" "`Issue #16562 `__: Optimize dict equality " "testing. Patch by Serhiy Storchaka." #: ../../../Misc/NEWS:8803 msgid "" "`Issue #16588 `__: Silence unused-but-set " "warnings in Python/thread_pthread" msgstr "" "`Issue #16588 `__: Silence unused-but-set " "warnings in Python/thread_pthread" #: ../../../Misc/NEWS:8805 msgid "" "`Issue #16592 `__: stringlib_bytes_join " "doesn't raise MemoryError on allocation failure." msgstr "" "`Issue #16592 `__: stringlib_bytes_join " "doesn't raise MemoryError on allocation failure." #: ../../../Misc/NEWS:8808 msgid "" "`Issue #16546 `__: Fix: ast.YieldFrom " "argument is now mandatory." msgstr "" "`Issue #16546 `__: Fix: ast.YieldFrom " "argument is now mandatory." #: ../../../Misc/NEWS:8810 msgid "" "`Issue #16514 `__: Fix regression causing a " "traceback when sys.path[0] is None (actually, any non-string or non-bytes " "type)." msgstr "" "`Issue #16514 `__: Fix regression causing a " "traceback when sys.path[0] is None (actually, any non-string or non-bytes " "type)." #: ../../../Misc/NEWS:8813 msgid "" "`Issue #16306 `__: Fix multiple error " "messages when unknown command line parameters where passed to the " "interpreter. Patch by Hieu Nguyen." msgstr "" "`Issue #16306 `__: Fix multiple error " "messages when unknown command line parameters where passed to the " "interpreter. Patch by Hieu Nguyen." #: ../../../Misc/NEWS:8816 msgid "" "`Issue #16215 `__: Fix potential double " "memory free in str.replace(). Patch by Serhiy Storchaka." msgstr "" "`Issue #16215 `__: Fix potential double " "memory free in str.replace(). Patch by Serhiy Storchaka." #: ../../../Misc/NEWS:8819 msgid "" "`Issue #16290 `__: A float return value from " "the __complex__ special method is no longer accepted in the complex() " "constructor." msgstr "" "`Issue #16290 `__: A float return value from " "the __complex__ special method is no longer accepted in the complex() " "constructor." #: ../../../Misc/NEWS:8822 msgid "" "`Issue #16416 `__: On Mac OS X, operating " "system data are now always encoded/decoded to/from UTF-8/surrogateescape, " "instead of the locale encoding (which may be ASCII if no locale environment " "variable is set), to avoid inconsistencies with os.fsencode() and os." "fsdecode() functions which are already using UTF-8/surrogateescape." msgstr "" "`Issue #16416 `__: On Mac OS X, operating " "system data are now always encoded/decoded to/from UTF-8/surrogateescape, " "instead of the locale encoding (which may be ASCII if no locale environment " "variable is set), to avoid inconsistencies with os.fsencode() and os." "fsdecode() functions which are already using UTF-8/surrogateescape." #: ../../../Misc/NEWS:8828 msgid "" "`Issue #16453 `__: Fix equality testing of " "dead weakref objects." msgstr "" "`Issue #16453 `__: Fix equality testing of " "dead weakref objects." #: ../../../Misc/NEWS:8830 msgid "" "`Issue #9535 `__: Fix pending signals that " "have been received but not yet handled by Python to not persist after os." "fork() in the child process." msgstr "" "`Issue #9535 `__: Fix pending signals that " "have been received but not yet handled by Python to not persist after os." "fork() in the child process." #: ../../../Misc/NEWS:8833 msgid "" "`Issue #14794 `__: Fix slice.indices to " "return correct results for huge values, rather than raising OverflowError." msgstr "" "`Issue #14794 `__: Fix slice.indices to " "return correct results for huge values, rather than raising OverflowError." #: ../../../Misc/NEWS:8836 msgid "" "`Issue #15001 `__: fix segfault on \"del sys." "modules['__main__']\". Patch by Victor Stinner." msgstr "" "`Issue #15001 `__: fix segfault on \"del sys." "modules['__main__']\". Patch by Victor Stinner." #: ../../../Misc/NEWS:8839 msgid "" "`Issue #8271 `__: the utf-8 decoder now " "outputs the correct number of U+FFFD characters when used with the 'replace' " "error handler on invalid utf-8 sequences. Patch by Serhiy Storchaka, tests " "by Ezio Melotti." msgstr "" "`Issue #8271 `__: the utf-8 decoder now " "outputs the correct number of U+FFFD characters when used with the 'replace' " "error handler on invalid utf-8 sequences. Patch by Serhiy Storchaka, tests " "by Ezio Melotti." #: ../../../Misc/NEWS:8843 msgid "" "`Issue #5765 `__: Apply a hard recursion limit " "in the compiler instead of blowing the stack and segfaulting. Initial patch " "by Andrea Griffini." msgstr "" "`Issue #5765 `__: Apply a hard recursion limit " "in the compiler instead of blowing the stack and segfaulting. Initial patch " "by Andrea Griffini." #: ../../../Misc/NEWS:8846 msgid "" "`Issue #16402 `__: When slicing a range, fix " "shadowing of exceptions from __index__." msgstr "" "`Issue #16402 `__: When slicing a range, fix " "shadowing of exceptions from __index__." #: ../../../Misc/NEWS:8849 msgid "" "`Issue #16336 `__: fix input checking in the " "surrogatepass error handler. Patch by Serhiy Storchaka." msgstr "" "`Issue #16336 `__: fix input checking in the " "surrogatepass error handler. Patch by Serhiy Storchaka." #: ../../../Misc/NEWS:8852 msgid "" "`Issue #8401 `__: assigning an int to a " "bytearray slice (e.g. b[3:4] = 5) now raises an error." msgstr "" "`Issue #8401 `__: assigning an int to a " "bytearray slice (e.g. b[3:4] = 5) now raises an error." #: ../../../Misc/NEWS:8855 msgid "" "`Issue #7317 `__: Display full tracebacks when " "an error occurs asynchronously. Patch by Alon Horev with update by Alexey " "Kachayev." msgstr "" "`Issue #7317 `__: Display full tracebacks when " "an error occurs asynchronously. Patch by Alon Horev with update by Alexey " "Kachayev." #: ../../../Misc/NEWS:8858 msgid "" "`Issue #16309 `__: Make PYTHONPATH=\"\" " "behavior the same as if PYTHONPATH not set at all." msgstr "" "`Issue #16309 `__: Make PYTHONPATH=\"\" " "behavior the same as if PYTHONPATH not set at all." #: ../../../Misc/NEWS:8861 msgid "" "`Issue #10189 `__: Improve the error " "reporting of SyntaxErrors related to global and nonlocal statements." msgstr "" "`Issue #10189 `__: Improve the error " "reporting of SyntaxErrors related to global and nonlocal statements." #: ../../../Misc/NEWS:8864 msgid "" "Fix segfaults on setting __qualname__ on builtin types and attempting to " "delete it on any type." msgstr "" #: ../../../Misc/NEWS:8867 msgid "" "`Issue #14625 `__: Rewrite the UTF-32 " "decoder. It is now 3x to 4x faster. Patch written by Serhiy Storchaka." msgstr "" "`Issue #14625 `__: Rewrite the UTF-32 " "decoder. It is now 3x to 4x faster. Patch written by Serhiy Storchaka." #: ../../../Misc/NEWS:8870 msgid "" "`Issue #16345 `__: Fix an infinite loop when " "``fromkeys`` on a dict subclass received a nonempty dict from the " "constructor." msgstr "" "`Issue #16345 `__: Fix an infinite loop when " "``fromkeys`` on a dict subclass received a nonempty dict from the " "constructor." #: ../../../Misc/NEWS:8873 msgid "" "`Issue #16271 `__: Fix strange bugs that " "resulted from __qualname__ appearing in a class's __dict__ and on type." msgstr "" "`Issue #16271 `__: Fix strange bugs that " "resulted from __qualname__ appearing in a class's __dict__ and on type." #: ../../../Misc/NEWS:8876 msgid "" "`Issue #12805 `__: Make bytes.join and " "bytearray.join faster when the separator is empty. Patch by Serhiy " "Storchaka." msgstr "" "`Issue #12805 `__: Make bytes.join and " "bytearray.join faster when the separator is empty. Patch by Serhiy " "Storchaka." #: ../../../Misc/NEWS:8879 msgid "" "`Issue #6074 `__: Ensure cached bytecode files " "can always be updated by the user that created them, even when the source " "file is read-only." msgstr "" "`Issue #6074 `__: Ensure cached bytecode files " "can always be updated by the user that created them, even when the source " "file is read-only." #: ../../../Misc/NEWS:8882 msgid "" "`Issue #15958 `__: bytes.join and bytearray." "join now accept arbitrary buffer objects." msgstr "" "`Issue #15958 `__: bytes.join and bytearray." "join now accept arbitrary buffer objects." #: ../../../Misc/NEWS:8885 msgid "" "`Issue #14783 `__: Improve int() docstring " "and switch docstrings for str(), range(), and slice() to use multi-line " "signatures." msgstr "" "`Issue #14783 `__: Improve int() docstring " "and switch docstrings for str(), range(), and slice() to use multi-line " "signatures." #: ../../../Misc/NEWS:8888 msgid "" "`Issue #16160 `__: Subclass support now works " "for types.SimpleNamespace." msgstr "" "`Issue #16160 `__: Subclass support now works " "for types.SimpleNamespace." #: ../../../Misc/NEWS:8890 msgid "" "`Issue #16148 `__: Implement PEP 424, adding " "operator.length_hint and PyObject_LengthHint." msgstr "" "`Issue #16148 `__: Implement PEP 424, adding " "operator.length_hint and PyObject_LengthHint." #: ../../../Misc/NEWS:8893 msgid "Upgrade Unicode data (UCD) to version 6.2." msgstr "" #: ../../../Misc/NEWS:8895 msgid "" "`Issue #15379 `__: Fix passing of non-BMP " "characters as integers for the charmap decoder (already working as unicode " "strings). Patch by Serhiy Storchaka." msgstr "" "`Issue #15379 `__: Fix passing of non-BMP " "characters as integers for the charmap decoder (already working as unicode " "strings). Patch by Serhiy Storchaka." #: ../../../Misc/NEWS:8898 msgid "" "`Issue #15144 `__: Fix possible integer " "overflow when handling pointers as integer values, by using `Py_uintptr_t` " "instead of `size_t`. Patch by Serhiy Storchaka." msgstr "" "`Issue #15144 `__: Fix possible integer " "overflow when handling pointers as integer values, by using `Py_uintptr_t` " "instead of `size_t`. Patch by Serhiy Storchaka." #: ../../../Misc/NEWS:8902 msgid "" "`Issue #15965 `__: Explicitly cast `AT_FDCWD` " "as (int). Required on Solaris 10 (which defines `AT_FDCWD` as " "``0xffd19553``), harmless on other platforms." msgstr "" "`Issue #15965 `__: Explicitly cast `AT_FDCWD` " "as (int). Required on Solaris 10 (which defines `AT_FDCWD` as " "``0xffd19553``), harmless on other platforms." #: ../../../Misc/NEWS:8905 msgid "" "`Issue #15839 `__: Convert SystemErrors in " "`super()` to RuntimeErrors." msgstr "" "`Issue #15839 `__: Convert SystemErrors in " "`super()` to RuntimeErrors." #: ../../../Misc/NEWS:8907 msgid "" "`Issue #15448 `__: Buffered IO now frees the " "buffer when closed, instead of when deallocating." msgstr "" "`Issue #15448 `__: Buffered IO now frees the " "buffer when closed, instead of when deallocating." #: ../../../Misc/NEWS:8910 msgid "" "`Issue #15846 `__: Fix SystemError which " "happened when using `ast.parse()` in an exception handler on code with " "syntax errors." msgstr "" "`Issue #15846 `__: Fix SystemError which " "happened when using `ast.parse()` in an exception handler on code with " "syntax errors." #: ../../../Misc/NEWS:8913 msgid "" "`Issue #15897 `__: zipimport.c doesn't check " "return value of fseek(). Patch by Felipe Cruz." msgstr "" "`Issue #15897 `__: zipimport.c doesn't check " "return value of fseek(). Patch by Felipe Cruz." #: ../../../Misc/NEWS:8916 msgid "" "`Issue #15801 `__: Make sure mappings passed " "to '%' formatting are actually subscriptable." msgstr "" "`Issue #15801 `__: Make sure mappings passed " "to '%' formatting are actually subscriptable." #: ../../../Misc/NEWS:8919 msgid "" "`Issue #15111 `__: __import__ should " "propagate ImportError when raised as a side-effect of a module triggered " "from using fromlist." msgstr "" "`Issue #15111 `__: __import__ should " "propagate ImportError when raised as a side-effect of a module triggered " "from using fromlist." #: ../../../Misc/NEWS:8922 msgid "" "`Issue #15022 `__: Add pickle and comparison " "support to types.SimpleNamespace." msgstr "" "`Issue #15022 `__: Add pickle and comparison " "support to types.SimpleNamespace." #: ../../../Misc/NEWS:8927 msgid "" "`Issue #4331 `__: Added functools." "partialmethod (Initial patch by Alon Horev)" msgstr "" "`Issue #4331 `__: Added functools." "partialmethod (Initial patch by Alon Horev)" #: ../../../Misc/NEWS:8929 msgid "" "`Issue #13461 `__: Fix a crash in the " "TextIOWrapper.tell method on 64-bit platforms. Patch by Yogesh Chaudhari." msgstr "" "`Issue #13461 `__: Fix a crash in the " "TextIOWrapper.tell method on 64-bit platforms. Patch by Yogesh Chaudhari." #: ../../../Misc/NEWS:8932 msgid "" "`Issue #18681 `__: Fix a NameError in " "importlib.reload() (noticed by Weizhao Li)." msgstr "" "`Issue #18681 `__: Fix a NameError in " "importlib.reload() (noticed by Weizhao Li)." #: ../../../Misc/NEWS:8934 msgid "" "`Issue #14323 `__: Expanded the number of " "digits in the coefficients for the RGB -- YIQ conversions so that they match " "the FCC NTSC versions." msgstr "" "`Issue #14323 `__: Expanded the number of " "digits in the coefficients for the RGB -- YIQ conversions so that they match " "the FCC NTSC versions." #: ../../../Misc/NEWS:8937 msgid "" "`Issue #17998 `__: Fix an internal error in " "regular expression engine." msgstr "" "`Issue #17998 `__: Fix an internal error in " "regular expression engine." #: ../../../Misc/NEWS:8939 msgid "" "`Issue #17557 `__: Fix os.getgroups() to work " "with the modified behavior of getgroups(2) on OS X 10.8. Original patch by " "Mateusz Lenik." msgstr "" "`Issue #17557 `__: Fix os.getgroups() to work " "with the modified behavior of getgroups(2) on OS X 10.8. Original patch by " "Mateusz Lenik." #: ../../../Misc/NEWS:8942 msgid "" "`Issue #18608 `__: Avoid keeping a strong " "reference to the locale module inside the _io module." msgstr "" "`Issue #18608 `__: Avoid keeping a strong " "reference to the locale module inside the _io module." #: ../../../Misc/NEWS:8945 msgid "" "`Issue #18619 `__: Fix atexit leaking " "callbacks registered from sub-interpreters, and make it GC-aware." msgstr "" "`Issue #18619 `__: Fix atexit leaking " "callbacks registered from sub-interpreters, and make it GC-aware." #: ../../../Misc/NEWS:8948 msgid "" "`Issue #15699 `__: The readline module now " "uses PEP 3121-style module initialization, so as to reclaim allocated " "resources (Python callbacks) at shutdown. Original patch by Robin Schreiber." msgstr "" "`Issue #15699 `__: The readline module now " "uses PEP 3121-style module initialization, so as to reclaim allocated " "resources (Python callbacks) at shutdown. Original patch by Robin Schreiber." #: ../../../Misc/NEWS:8952 msgid "" "`Issue #17616 `__: wave.open now supports the " "context management protocol." msgstr "" "`Issue #17616 `__: wave.open now supports the " "context management protocol." #: ../../../Misc/NEWS:8954 msgid "" "`Issue #18599 `__: Fix name attribute of " "_sha1.sha1() object. It now returns 'SHA1' instead of 'SHA'." msgstr "" "`Issue #18599 `__: Fix name attribute of " "_sha1.sha1() object. It now returns 'SHA1' instead of 'SHA'." #: ../../../Misc/NEWS:8957 msgid "" "`Issue #13266 `__: Added inspect.unwrap to " "easily unravel __wrapped__ chains (initial patch by Daniel Urban and Aaron " "Iles)" msgstr "" "`Issue #13266 `__: Added inspect.unwrap to " "easily unravel __wrapped__ chains (initial patch by Daniel Urban and Aaron " "Iles)" #: ../../../Misc/NEWS:8960 msgid "" "`Issue #18561 `__: Skip name in ctypes' " "_build_callargs() if name is NULL." msgstr "" "`Issue #18561 `__: Skip name in ctypes' " "_build_callargs() if name is NULL." #: ../../../Misc/NEWS:8962 msgid "" "`Issue #18559 `__: Fix NULL pointer " "dereference error in _pickle module" msgstr "" "`Issue #18559 `__: Fix NULL pointer " "dereference error in _pickle module" #: ../../../Misc/NEWS:8964 msgid "" "`Issue #18556 `__: Check the return type of " "PyUnicode_AsWideChar() in ctype's U_set()." msgstr "" "`Issue #18556 `__: Check the return type of " "PyUnicode_AsWideChar() in ctype's U_set()." #: ../../../Misc/NEWS:8967 msgid "" "`Issue #17818 `__: aifc.getparams now returns " "a namedtuple." msgstr "" "`Issue #17818 `__: aifc.getparams now returns " "a namedtuple." #: ../../../Misc/NEWS:8969 msgid "" "`Issue #18549 `__: Eliminate dead code in " "socket_ntohl()" msgstr "" "`Issue #18549 `__: Eliminate dead code in " "socket_ntohl()" #: ../../../Misc/NEWS:8971 msgid "" "`Issue #18530 `__: Remove additional stat " "call from posixpath.ismount. Patch by Alex Gaynor." msgstr "" "`Issue #18530 `__: Remove additional stat " "call from posixpath.ismount. Patch by Alex Gaynor." #: ../../../Misc/NEWS:8974 msgid "" "`Issue #18514 `__: Fix unreachable " "Py_DECREF() call in PyCData_FromBaseObj()" msgstr "" "`Issue #18514 `__: Fix unreachable " "Py_DECREF() call in PyCData_FromBaseObj()" #: ../../../Misc/NEWS:8976 msgid "" "`Issue #9177 `__: Calling read() or write() " "now raises ValueError, not AttributeError, on a closed SSL socket. Patch by " "Senko Rasic." msgstr "" "`Issue #9177 `__: Calling read() or write() " "now raises ValueError, not AttributeError, on a closed SSL socket. Patch by " "Senko Rasic." #: ../../../Misc/NEWS:8979 msgid "" "`Issue #18513 `__: Fix behaviour of cmath." "rect w.r.t. signed zeros on OS X 10.8 + gcc." msgstr "" "`Issue #18513 `__: Fix behaviour of cmath." "rect w.r.t. signed zeros on OS X 10.8 + gcc." #: ../../../Misc/NEWS:8982 msgid "" "`Issue #18479 `__: Changed venv Activate.ps1 " "to make deactivate a function, and removed Deactivate.ps1." msgstr "" "`Issue #18479 `__: Changed venv Activate.ps1 " "to make deactivate a function, and removed Deactivate.ps1." #: ../../../Misc/NEWS:8985 msgid "" "`Issue #18480 `__: Add missing call to " "PyType_Ready to the _elementtree extension." msgstr "" "`Issue #18480 `__: Add missing call to " "PyType_Ready to the _elementtree extension." #: ../../../Misc/NEWS:8987 msgid "" "`Issue #17778 `__: Fix test discovery for " "test_multiprocessing. (Patch by Zachary Ware.)" msgstr "" "`Issue #17778 `__: Fix test discovery for " "test_multiprocessing. (Patch by Zachary Ware.)" #: ../../../Misc/NEWS:8990 msgid "" "`Issue #18393 `__: The private module " "_gestalt and private functions platform._mac_ver_gestalt, platform." "_mac_ver_lookup and platform._bcd2str have been removed. This does not " "affect the public interface of the platform module." msgstr "" "`Issue #18393 `__: The private module " "_gestalt and private functions platform._mac_ver_gestalt, platform." "_mac_ver_lookup and platform._bcd2str have been removed. This does not " "affect the public interface of the platform module." #: ../../../Misc/NEWS:8995 msgid "" "`Issue #17482 `__: functools.update_wrapper " "(and functools.wraps) now set the __wrapped__ attribute correctly even if " "the underlying function has a __wrapped__ attribute set." msgstr "" "`Issue #17482 `__: functools.update_wrapper " "(and functools.wraps) now set the __wrapped__ attribute correctly even if " "the underlying function has a __wrapped__ attribute set." #: ../../../Misc/NEWS:8999 msgid "" "`Issue #18431 `__: The new email header " "parser now decodes RFC2047 encoded words in structured headers." msgstr "" "`Issue #18431 `__: The new email header " "parser now decodes RFC2047 encoded words in structured headers." #: ../../../Misc/NEWS:9002 msgid "" "`Issue #18432 `__: The sched module's queue " "method was incorrectly returning an iterator instead of a list." msgstr "" "`Issue #18432 `__: The sched module's queue " "method was incorrectly returning an iterator instead of a list." #: ../../../Misc/NEWS:9005 msgid "" "`Issue #18044 `__: The new email header " "parser was mis-parsing encoded words where an encoded character immediately " "followed the '?' that follows the CTE character, resulting in a decoding " "failure. They are now decoded correctly." msgstr "" "`Issue #18044 `__: The new email header " "parser was mis-parsing encoded words where an encoded character immediately " "followed the '?' that follows the CTE character, resulting in a decoding " "failure. They are now decoded correctly." #: ../../../Misc/NEWS:9009 msgid "" "`Issue #18101 `__: Tcl.split() now process " "strings nested in a tuple as it do with byte strings." msgstr "" "`Issue #18101 `__: Tcl.split() now process " "strings nested in a tuple as it do with byte strings." #: ../../../Misc/NEWS:9012 msgid "" "`Issue #18116 `__: getpass was always getting " "an error when testing /dev/tty, and thus was always falling back to stdin, " "and would then raise an exception if stdin could not be used (such as /dev/" "null). It also leaked an open file. All of these issues are now fixed." msgstr "" "`Issue #18116 `__: getpass was always getting " "an error when testing /dev/tty, and thus was always falling back to stdin, " "and would then raise an exception if stdin could not be used (such as /dev/" "null). It also leaked an open file. All of these issues are now fixed." #: ../../../Misc/NEWS:9017 msgid "" "`Issue #17198 `__: Fix a NameError in the dbm " "module. Patch by Valentina Mukhamedzhanova." msgstr "" "`Issue #17198 `__: Fix a NameError in the dbm " "module. Patch by Valentina Mukhamedzhanova." #: ../../../Misc/NEWS:9020 msgid "" "`Issue #18013 `__: Fix cgi.FieldStorage to " "parse the W3C sample form." msgstr "" "`Issue #18013 `__: Fix cgi.FieldStorage to " "parse the W3C sample form." #: ../../../Misc/NEWS:9022 msgid "" "`Issue #18020 `__: improve html.escape speed " "by an order of magnitude. Patch by Matt Bryant." msgstr "" "`Issue #18020 `__: improve html.escape speed " "by an order of magnitude. Patch by Matt Bryant." #: ../../../Misc/NEWS:9025 msgid "" "`Issue #18347 `__: ElementTree's html " "serializer now preserves the case of closing tags." msgstr "" "`Issue #18347 `__: ElementTree's html " "serializer now preserves the case of closing tags." #: ../../../Misc/NEWS:9028 msgid "" "`Issue #17261 `__: Ensure multiprocessing's " "proxies use proper address." msgstr "" "`Issue #17261 `__: Ensure multiprocessing's " "proxies use proper address." #: ../../../Misc/NEWS:9030 msgid "" "`Issue #18343 `__: faulthandler.register() " "now keeps the previous signal handler when the function is called twice, so " "faulthandler.unregister() restores correctly the original signal handler." msgstr "" "`Issue #18343 `__: faulthandler.register() " "now keeps the previous signal handler when the function is called twice, so " "faulthandler.unregister() restores correctly the original signal handler." #: ../../../Misc/NEWS:9034 msgid "" "`Issue #17097 `__: Make multiprocessing " "ignore EINTR." msgstr "" "`Issue #17097 `__: Make multiprocessing " "ignore EINTR." #: ../../../Misc/NEWS:9036 msgid "" "`Issue #18339 `__: Negative ints keys in " "unpickler.memo dict no longer cause a segfault inside the _pickle C " "extension." msgstr "" "`Issue #18339 `__: Negative ints keys in " "unpickler.memo dict no longer cause a segfault inside the _pickle C " "extension." #: ../../../Misc/NEWS:9039 msgid "" "`Issue #18240 `__: The HMAC module is no " "longer restricted to bytes and accepts any bytes-like object, e.g. " "memoryview. Original patch by Jonas Borgström." msgstr "" "`Issue #18240 `__: The HMAC module is no " "longer restricted to bytes and accepts any bytes-like object, e.g. " "memoryview. Original patch by Jonas Borgström." #: ../../../Misc/NEWS:9042 msgid "" "`Issue #18224 `__: Removed pydoc script from " "created venv, as it causes problems on Windows and adds no value over and " "above python -m pydoc ..." msgstr "" "`Issue #18224 `__: Removed pydoc script from " "created venv, as it causes problems on Windows and adds no value over and " "above python -m pydoc ..." #: ../../../Misc/NEWS:9045 msgid "" "`Issue #18155 `__: The csv module now " "correctly handles csv files that use a delimiter character that has a " "special meaning in regexes, instead of throwing an exception." msgstr "" "`Issue #18155 `__: The csv module now " "correctly handles csv files that use a delimiter character that has a " "special meaning in regexes, instead of throwing an exception." #: ../../../Misc/NEWS:9049 msgid "" "`Issue #14360 `__: encode_quopri can now be " "successfully used as an encoder when constructing a MIMEApplication object." msgstr "" "`Issue #14360 `__: encode_quopri can now be " "successfully used as an encoder when constructing a MIMEApplication object." #: ../../../Misc/NEWS:9052 msgid "" "`Issue #11390 `__: Add -o and -f command line " "options to the doctest CLI to specify doctest options (and convert it to " "using argparse)." msgstr "" "`Issue #11390 `__: Add -o and -f command line " "options to the doctest CLI to specify doctest options (and convert it to " "using argparse)." #: ../../../Misc/NEWS:9055 msgid "" "`Issue #18135 `__: ssl.SSLSocket.write() now " "raises an OverflowError if the input string in longer than 2 gigabytes, and " "ssl.SSLContext.load_cert_chain() raises a ValueError if the password is " "longer than 2 gigabytes. The ssl module does not support partial write." msgstr "" "`Issue #18135 `__: ssl.SSLSocket.write() now " "raises an OverflowError if the input string in longer than 2 gigabytes, and " "ssl.SSLContext.load_cert_chain() raises a ValueError if the password is " "longer than 2 gigabytes. The ssl module does not support partial write." #: ../../../Misc/NEWS:9060 msgid "" "`Issue #11016 `__: Add C implementation of " "the stat module as _stat." msgstr "" "`Issue #11016 `__: Add C implementation of " "the stat module as _stat." #: ../../../Misc/NEWS:9062 msgid "" "`Issue #18248 `__: Fix libffi build on AIX." msgstr "" "`Issue #18248 `__: Fix libffi build on AIX." #: ../../../Misc/NEWS:9064 msgid "" "`Issue #18259 `__: Declare sethostname in " "socketmodule.c for AIX" msgstr "" "`Issue #18259 `__: Declare sethostname in " "socketmodule.c for AIX" #: ../../../Misc/NEWS:9066 msgid "" "`Issue #18147 `__: Add diagnostic functions " "to ssl.SSLContext(). get_ca_list() lists all loaded CA certificates and " "cert_store_stats() returns amount of loaded X.509 certs, X.509 CA certs and " "CRLs." msgstr "" "`Issue #18147 `__: Add diagnostic functions " "to ssl.SSLContext(). get_ca_list() lists all loaded CA certificates and " "cert_store_stats() returns amount of loaded X.509 certs, X.509 CA certs and " "CRLs." #: ../../../Misc/NEWS:9070 msgid "" "`Issue #18167 `__: cgi.FieldStorage no longer " "fails to handle multipart/form-data when ``\\r\\n`` appears at end of 65535 " "bytes without other newlines." msgstr "" "`Issue #18167 `__: cgi.FieldStorage no longer " "fails to handle multipart/form-data when ``\\r\\n`` appears at end of 65535 " "bytes without other newlines." #: ../../../Misc/NEWS:9073 msgid "" "`Issue #18076 `__: Introduce importlib.util." "decode_source()." msgstr "" "`Issue #18076 `__: Introduce importlib.util." "decode_source()." #: ../../../Misc/NEWS:9075 msgid "" "`Issue #18357 `__: add tests for dictview set " "difference. Patch by Fraser Tweedale." msgstr "" "`Issue #18357 `__: add tests for dictview set " "difference. Patch by Fraser Tweedale." #: ../../../Misc/NEWS:9078 msgid "" "importlib.abc.SourceLoader.get_source() no longer changes SyntaxError or " "UnicodeDecodeError into ImportError." msgstr "" #: ../../../Misc/NEWS:9081 msgid "" "`Issue #18058 `__, 18057: Make the namespace " "package loader meet the importlib.abc.InspectLoader ABC, allowing for " "namespace packages to work with runpy." msgstr "" "`Issue #18058 `__, 18057: Make the namespace " "package loader meet the importlib.abc.InspectLoader ABC, allowing for " "namespace packages to work with runpy." #: ../../../Misc/NEWS:9085 msgid "" "`Issue #17177 `__: The imp module is pending " "deprecation." msgstr "" "`Issue #17177 `__: The imp module is pending " "deprecation." #: ../../../Misc/NEWS:9087 msgid "" "subprocess: Prevent a possible double close of parent pipe fds when the " "subprocess exec runs into an error. Prevent a regular multi-close of the /" "dev/null fd when any of stdin, stdout and stderr was set to DEVNULL." msgstr "" #: ../../../Misc/NEWS:9091 msgid "" "`Issue #18194 `__: Introduce importlib.util." "cache_from_source() and source_from_cache() while documenting the equivalent " "functions in imp as deprecated." msgstr "" "`Issue #18194 `__: Introduce importlib.util." "cache_from_source() and source_from_cache() while documenting the equivalent " "functions in imp as deprecated." #: ../../../Misc/NEWS:9095 msgid "" "`Issue #17907 `__: Document imp.new_module() " "as deprecated in favour of types.ModuleType." msgstr "" "`Issue #17907 `__: Document imp.new_module() " "as deprecated in favour of types.ModuleType." #: ../../../Misc/NEWS:9098 msgid "" "`Issue #18192 `__: Introduce importlib.util." "MAGIC_NUMBER and document as deprecated imp.get_magic()." msgstr "" "`Issue #18192 `__: Introduce importlib.util." "MAGIC_NUMBER and document as deprecated imp.get_magic()." #: ../../../Misc/NEWS:9101 msgid "" "`Issue #18149 `__: Add filecmp.clear_cache() " "to manually clear the filecmp cache. Patch by Mark Levitt" msgstr "" "`Issue #18149 `__: Add filecmp.clear_cache() " "to manually clear the filecmp cache. Patch by Mark Levitt" #: ../../../Misc/NEWS:9104 msgid "" "`Issue #18193 `__: Add importlib.reload()." msgstr "" "`Issue #18193 `__: Add importlib.reload()." #: ../../../Misc/NEWS:9106 msgid "" "`Issue #18157 `__: Stop using imp." "load_module() in pydoc." msgstr "" "`Issue #18157 `__: Stop using imp." "load_module() in pydoc." #: ../../../Misc/NEWS:9108 msgid "" "`Issue #16102 `__: Make uuid." "_netbios_getnode() work again on Python 3." msgstr "" "`Issue #16102 `__: Make uuid." "_netbios_getnode() work again on Python 3." #: ../../../Misc/NEWS:9110 msgid "" "`Issue #17134 `__: Add ssl.enum_cert_store() " "as interface to Windows' cert store." msgstr "" "`Issue #17134 `__: Add ssl.enum_cert_store() " "as interface to Windows' cert store." #: ../../../Misc/NEWS:9112 msgid "" "`Issue #18143 `__: Implement ssl." "get_default_verify_paths() in order to debug the default locations for " "cafile and capath." msgstr "" "`Issue #18143 `__: Implement ssl." "get_default_verify_paths() in order to debug the default locations for " "cafile and capath." #: ../../../Misc/NEWS:9115 msgid "" "`Issue #17314 `__: Move multiprocessing." "forking over to importlib." msgstr "" "`Issue #17314 `__: Move multiprocessing." "forking over to importlib." #: ../../../Misc/NEWS:9117 msgid "" "`Issue #11959 `__: SMTPServer and SMTPChannel " "now take an optional map, use of which avoids affecting global state." msgstr "" "`Issue #11959 `__: SMTPServer and SMTPChannel " "now take an optional map, use of which avoids affecting global state." #: ../../../Misc/NEWS:9120 msgid "" "`Issue #18109 `__: os.uname() now decodes " "fields from the locale encoding, and socket.gethostname() now decodes the " "hostname from the locale encoding, instead of using the UTF-8 encoding in " "strict mode." msgstr "" "`Issue #18109 `__: os.uname() now decodes " "fields from the locale encoding, and socket.gethostname() now decodes the " "hostname from the locale encoding, instead of using the UTF-8 encoding in " "strict mode." #: ../../../Misc/NEWS:9124 msgid "" "`Issue #18089 `__: Implement importlib.abc." "InspectLoader.load_module." msgstr "" "`Issue #18089 `__: Implement importlib.abc." "InspectLoader.load_module." #: ../../../Misc/NEWS:9126 msgid "" "`Issue #18088 `__: Introduce importlib.abc." "Loader.init_module_attrs for setting module attributes. Leads to the pending " "deprecation of importlib.util.module_for_loader." msgstr "" "`Issue #18088 `__: Introduce importlib.abc." "Loader.init_module_attrs for setting module attributes. Leads to the pending " "deprecation of importlib.util.module_for_loader." #: ../../../Misc/NEWS:9130 msgid "" "`Issue #17403 `__: urllib.parse.robotparser " "normalizes the urls before adding to ruleline. This helps in handling " "certain types invalid urls in a conservative manner. Patch contributed by " "Mher Movsisyan." msgstr "" "`Issue #17403 `__: urllib.parse.robotparser " "normalizes the urls before adding to ruleline. This helps in handling " "certain types invalid urls in a conservative manner. Patch contributed by " "Mher Movsisyan." #: ../../../Misc/NEWS:9134 msgid "" "`Issue #18070 `__: Have importlib.util." "module_for_loader() set attributes unconditionally in order to properly " "support reloading." msgstr "" "`Issue #18070 `__: Have importlib.util." "module_for_loader() set attributes unconditionally in order to properly " "support reloading." #: ../../../Misc/NEWS:9137 msgid "" "Added importlib.util.module_to_load to return a context manager to provide " "the proper module object to load." msgstr "" #: ../../../Misc/NEWS:9140 msgid "" "`Issue #18025 `__: Fixed a segfault in io." "BufferedIOBase.readinto() when raw stream's read() returns more bytes than " "requested." msgstr "" "`Issue #18025 `__: Fixed a segfault in io." "BufferedIOBase.readinto() when raw stream's read() returns more bytes than " "requested." #: ../../../Misc/NEWS:9143 msgid "" "`Issue #18011 `__: As was originally " "intended, base64.b32decode() now raises a binascii.Error if there are non-" "b32-alphabet characters present in the input string, instead of a TypeError." msgstr "" "`Issue #18011 `__: As was originally " "intended, base64.b32decode() now raises a binascii.Error if there are non-" "b32-alphabet characters present in the input string, instead of a TypeError." #: ../../../Misc/NEWS:9147 msgid "" "`Issue #18072 `__: Implement importlib.abc." "InspectLoader.get_code() and importlib.abc.ExecutionLoader.get_code()." msgstr "" "`Issue #18072 `__: Implement importlib.abc." "InspectLoader.get_code() and importlib.abc.ExecutionLoader.get_code()." #: ../../../Misc/NEWS:9150 msgid "" "`Issue #8240 `__: Set the " "SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER flag on SSL sockets." msgstr "" "`Issue #8240 `__: Set the " "SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER flag on SSL sockets." #: ../../../Misc/NEWS:9153 msgid "" "`Issue #17269 `__: Workaround for socket." "getaddrinfo crash on MacOS X with port None or \"0\" and flags " "AI_NUMERICSERV." msgstr "" "`Issue #17269 `__: Workaround for socket." "getaddrinfo crash on MacOS X with port None or \"0\" and flags " "AI_NUMERICSERV." #: ../../../Misc/NEWS:9156 msgid "" "`Issue #16986 `__: ElementTree now correctly " "works with string input when the internal XML encoding is not UTF-8 or US-" "ASCII." msgstr "" "`Issue #16986 `__: ElementTree now correctly " "works with string input when the internal XML encoding is not UTF-8 or US-" "ASCII." #: ../../../Misc/NEWS:9159 msgid "" "`Issue #17996 `__: socket module now exposes " "AF_LINK constant on BSD and OSX." msgstr "" "`Issue #17996 `__: socket module now exposes " "AF_LINK constant on BSD and OSX." #: ../../../Misc/NEWS:9161 msgid "" "`Issue #17900 `__: Allowed pickling of " "recursive OrderedDicts. Decreased pickled size and pickling time." msgstr "" "`Issue #17900 `__: Allowed pickling of " "recursive OrderedDicts. Decreased pickled size and pickling time." #: ../../../Misc/NEWS:9164 msgid "" "`Issue #17914 `__: Add os.cpu_count(). Patch " "by Yogesh Chaudhari, based on an initial patch by Trent Nelson." msgstr "" "`Issue #17914 `__: Add os.cpu_count(). Patch " "by Yogesh Chaudhari, based on an initial patch by Trent Nelson." #: ../../../Misc/NEWS:9167 msgid "" "`Issue #17812 `__: Fixed quadratic complexity " "of base64.b32encode(). Optimize base64.b32encode() and base64.b32decode() " "(speed up to 3x)." msgstr "" "`Issue #17812 `__: Fixed quadratic complexity " "of base64.b32encode(). Optimize base64.b32encode() and base64.b32decode() " "(speed up to 3x)." #: ../../../Misc/NEWS:9170 msgid "" "`Issue #17980 `__: Fix possible abuse of ssl." "match_hostname() for denial of service using certificates with many " "wildcards (CVE-2013-2099)." msgstr "" "`Issue #17980 `__: Fix possible abuse of ssl." "match_hostname() for denial of service using certificates with many " "wildcards (CVE-2013-2099)." #: ../../../Misc/NEWS:9173 msgid "" "`Issue #15758 `__: Fix FileIO.readall() so it " "no longer has O(n**2) complexity." msgstr "" "`Issue #15758 `__: Fix FileIO.readall() so it " "no longer has O(n**2) complexity." #: ../../../Misc/NEWS:9175 msgid "" "`Issue #14596 `__: The struct.Struct() " "objects now use a more compact implementation." msgstr "" "`Issue #14596 `__: The struct.Struct() " "objects now use a more compact implementation." #: ../../../Misc/NEWS:9178 msgid "" "`Issue #17981 `__: logging's SysLogHandler " "now closes the socket when it catches socket OSErrors." msgstr "" "`Issue #17981 `__: logging's SysLogHandler " "now closes the socket when it catches socket OSErrors." #: ../../../Misc/NEWS:9181 msgid "" "`Issue #17964 `__: Fix os.sysconf(): the " "return type of the C sysconf() function is long, not int." msgstr "" "`Issue #17964 `__: Fix os.sysconf(): the " "return type of the C sysconf() function is long, not int." #: ../../../Misc/NEWS:9184 msgid "Fix typos in the multiprocessing module." msgstr "" #: ../../../Misc/NEWS:9186 msgid "" "`Issue #17754 `__: Make ctypes.util." "find_library() independent of the locale." msgstr "" "`Issue #17754 `__: Make ctypes.util." "find_library() independent of the locale." #: ../../../Misc/NEWS:9188 msgid "" "`Issue #17968 `__: Fix memory leak in os." "listxattr()." msgstr "" "`Issue #17968 `__: Fix memory leak in os." "listxattr()." #: ../../../Misc/NEWS:9190 msgid "" "`Issue #17606 `__: Fixed support of encoded " "byte strings in the XMLGenerator characters() and ignorableWhitespace() " "methods. Original patch by Sebastian Ortiz Vasquez." msgstr "" "`Issue #17606 `__: Fixed support of encoded " "byte strings in the XMLGenerator characters() and ignorableWhitespace() " "methods. Original patch by Sebastian Ortiz Vasquez." #: ../../../Misc/NEWS:9194 msgid "" "`Issue #17732 `__: Ignore distutils.cfg " "options pertaining to install paths if a virtual environment is active." msgstr "" "`Issue #17732 `__: Ignore distutils.cfg " "options pertaining to install paths if a virtual environment is active." #: ../../../Misc/NEWS:9197 msgid "" "`Issue #17915 `__: Fix interoperability of " "xml.sax with file objects returned by codecs.open()." msgstr "" "`Issue #17915 `__: Fix interoperability of " "xml.sax with file objects returned by codecs.open()." #: ../../../Misc/NEWS:9200 msgid "" "`Issue #16601 `__: Restarting iteration over " "tarfile really restarts rather than continuing from where it left off. " "Patch by Michael Birtwell." msgstr "" "`Issue #16601 `__: Restarting iteration over " "tarfile really restarts rather than continuing from where it left off. " "Patch by Michael Birtwell." #: ../../../Misc/NEWS:9203 msgid "" "`Issue #17289 `__: The readline module now " "plays nicer with external modules or applications changing the " "rl_completer_word_break_characters global variable. Initial patch by " "Bradley Froehle." msgstr "" "`Issue #17289 `__: The readline module now " "plays nicer with external modules or applications changing the " "rl_completer_word_break_characters global variable. Initial patch by " "Bradley Froehle." #: ../../../Misc/NEWS:9207 msgid "" "`Issue #12181 `__: select module: Fix struct " "kevent definition on OpenBSD 64-bit platforms. Patch by Federico Schwindt." msgstr "" "`Issue #12181 `__: select module: Fix struct " "kevent definition on OpenBSD 64-bit platforms. Patch by Federico Schwindt." #: ../../../Misc/NEWS:9210 msgid "" "`Issue #11816 `__: multiple improvements to " "the dis module: get_instructions generator, ability to redirect output to a " "file, Bytecode and Instruction abstractions. Patch by Nick Coghlan, Ryan " "Kelly and Thomas Kluyver." msgstr "" "`Issue #11816 `__: multiple improvements to " "the dis module: get_instructions generator, ability to redirect output to a " "file, Bytecode and Instruction abstractions. Patch by Nick Coghlan, Ryan " "Kelly and Thomas Kluyver." #: ../../../Misc/NEWS:9214 msgid "" "`Issue #13831 `__: Embed stringification of " "remote traceback in local traceback raised when pool task raises an " "exception." msgstr "" "`Issue #13831 `__: Embed stringification of " "remote traceback in local traceback raised when pool task raises an " "exception." #: ../../../Misc/NEWS:9217 msgid "" "`Issue #15528 `__: Add weakref.finalize to " "support finalization using weakref callbacks." msgstr "" "`Issue #15528 `__: Add weakref.finalize to " "support finalization using weakref callbacks." #: ../../../Misc/NEWS:9220 msgid "" "`Issue #14173 `__: Avoid crashing when " "reading a signal handler during interpreter shutdown." msgstr "" "`Issue #14173 `__: Avoid crashing when " "reading a signal handler during interpreter shutdown." #: ../../../Misc/NEWS:9223 msgid "" "`Issue #15902 `__: Fix imp.load_module() " "accepting None as a file when loading an extension module." msgstr "" "`Issue #15902 `__: Fix imp.load_module() " "accepting None as a file when loading an extension module." #: ../../../Misc/NEWS:9226 msgid "" "`Issue #13721 `__: SSLSocket.getpeercert() " "and SSLSocket.do_handshake() now raise an OSError with ENOTCONN, instead of " "an AttributeError, when the SSLSocket is not connected." msgstr "" "`Issue #13721 `__: SSLSocket.getpeercert() " "and SSLSocket.do_handshake() now raise an OSError with ENOTCONN, instead of " "an AttributeError, when the SSLSocket is not connected." #: ../../../Misc/NEWS:9230 msgid "" "`Issue #14679 `__: add an __all__ (that " "contains only HTMLParser) to html.parser." msgstr "" "`Issue #14679 `__: add an __all__ (that " "contains only HTMLParser) to html.parser." #: ../../../Misc/NEWS:9232 msgid "" "`Issue #17802 `__: Fix an UnboundLocalError " "in html.parser. Initial tests by Thomas Barlow." msgstr "" "`Issue #17802 `__: Fix an UnboundLocalError " "in html.parser. Initial tests by Thomas Barlow." #: ../../../Misc/NEWS:9235 msgid "" "`Issue #17358 `__: Modules loaded by imp." "load_source() and load_compiled() (and by extension load_module()) now have " "a better chance of working when reloaded." msgstr "" "`Issue #17358 `__: Modules loaded by imp." "load_source() and load_compiled() (and by extension load_module()) now have " "a better chance of working when reloaded." #: ../../../Misc/NEWS:9238 msgid "" "`Issue #17804 `__: New function ``struct." "iter_unpack`` allows for streaming struct unpacking." msgstr "" "`Issue #17804 `__: New function ``struct." "iter_unpack`` allows for streaming struct unpacking." #: ../../../Misc/NEWS:9241 msgid "" "`Issue #17830 `__: When keyword.py is used to " "update a keyword file, it now preserves the line endings of the original " "file." msgstr "" "`Issue #17830 `__: When keyword.py is used to " "update a keyword file, it now preserves the line endings of the original " "file." #: ../../../Misc/NEWS:9244 msgid "" "`Issue #17272 `__: Making the urllib." "request's Request.full_url a descriptor. Fixes bugs with assignment to " "full_url. Patch by Demian Brecht." msgstr "" "`Issue #17272 `__: Making the urllib." "request's Request.full_url a descriptor. Fixes bugs with assignment to " "full_url. Patch by Demian Brecht." #: ../../../Misc/NEWS:9247 msgid "" "`Issue #17353 `__: Plistlib emitted empty " "data tags with deeply nested datastructures" msgstr "" "`Issue #17353 `__: Plistlib emitted empty " "data tags with deeply nested datastructures" #: ../../../Misc/NEWS:9249 msgid "" "`Issue #11714 `__: Use 'with' statements to " "assure a Semaphore releases a condition variable. Original patch by Thomas " "Rachel." msgstr "" "`Issue #11714 `__: Use 'with' statements to " "assure a Semaphore releases a condition variable. Original patch by Thomas " "Rachel." #: ../../../Misc/NEWS:9252 msgid "" "`Issue #16624 `__: `subprocess.check_output` " "now accepts an `input` argument, allowing the subprocess's stdin to be " "provided as a (byte) string. Patch by Zack Weinberg." msgstr "" "`Issue #16624 `__: `subprocess.check_output` " "now accepts an `input` argument, allowing the subprocess's stdin to be " "provided as a (byte) string. Patch by Zack Weinberg." #: ../../../Misc/NEWS:9256 msgid "" "`Issue #17795 `__: Reverted backwards-" "incompatible change in SysLogHandler with Unix domain sockets." msgstr "" "`Issue #17795 `__: Reverted backwards-" "incompatible change in SysLogHandler with Unix domain sockets." #: ../../../Misc/NEWS:9259 msgid "" "`Issue #16694 `__: Add a pure Python " "implementation of the operator module. Patch by Zachary Ware." msgstr "" "`Issue #16694 `__: Add a pure Python " "implementation of the operator module. Patch by Zachary Ware." #: ../../../Misc/NEWS:9262 msgid "" "`Issue #11182 `__: remove the unused and " "undocumented pydoc.Scanner class. Patch by Martin Morrison." msgstr "" "`Issue #11182 `__: remove the unused and " "undocumented pydoc.Scanner class. Patch by Martin Morrison." #: ../../../Misc/NEWS:9265 msgid "" "`Issue #17741 `__: Add ElementTree." "XMLPullParser, an event-driven parser for non-blocking applications." msgstr "" "`Issue #17741 `__: Add ElementTree." "XMLPullParser, an event-driven parser for non-blocking applications." #: ../../../Misc/NEWS:9268 msgid "" "`Issue #17555 `__: Fix ForkAwareThreadLock so " "that size of after fork registry does not grow exponentially with generation " "of process." msgstr "" "`Issue #17555 `__: Fix ForkAwareThreadLock so " "that size of after fork registry does not grow exponentially with generation " "of process." #: ../../../Misc/NEWS:9271 msgid "" "`Issue #17707 `__: fix regression in " "multiprocessing.Queue's get() method where it did not block for short " "timeouts." msgstr "" "`Issue #17707 `__: fix regression in " "multiprocessing.Queue's get() method where it did not block for short " "timeouts." #: ../../../Misc/NEWS:9274 msgid "" "`Issue #17720 `__: Fix the Python " "implementation of pickle.Unpickler to correctly process the APPENDS opcode " "when it is used on non-list objects." msgstr "" "`Issue #17720 `__: Fix the Python " "implementation of pickle.Unpickler to correctly process the APPENDS opcode " "when it is used on non-list objects." #: ../../../Misc/NEWS:9277 msgid "" "`Issue #17012 `__: shutil.which() no longer " "falls back to the PATH environment variable if an empty path argument is " "specified. Patch by Serhiy Storchaka." msgstr "" "`Issue #17012 `__: shutil.which() no longer " "falls back to the PATH environment variable if an empty path argument is " "specified. Patch by Serhiy Storchaka." #: ../../../Misc/NEWS:9280 msgid "" "`Issue #17710 `__: Fix pickle raising a " "SystemError on bogus input." msgstr "" "`Issue #17710 `__: Fix pickle raising a " "SystemError on bogus input." #: ../../../Misc/NEWS:9282 msgid "" "`Issue #17341 `__: Include the invalid name " "in the error messages from re about invalid group names." msgstr "" "`Issue #17341 `__: Include the invalid name " "in the error messages from re about invalid group names." #: ../../../Misc/NEWS:9285 msgid "" "`Issue #17702 `__: os.environ now raises " "KeyError with the original environment variable name (str on UNIX), instead " "of using the encoded name (bytes on UNIX)." msgstr "" "`Issue #17702 `__: os.environ now raises " "KeyError with the original environment variable name (str on UNIX), instead " "of using the encoded name (bytes on UNIX)." #: ../../../Misc/NEWS:9289 msgid "" "`Issue #16163 `__: Make the importlib based " "version of pkgutil.iter_importers work for submodules. Initial patch by " "Berker Peksag." msgstr "" "`Issue #16163 `__: Make the importlib based " "version of pkgutil.iter_importers work for submodules. Initial patch by " "Berker Peksag." #: ../../../Misc/NEWS:9292 msgid "" "`Issue #16804 `__: Fix a bug in the 'site' " "module that caused running 'python -S -m site' to incorrectly throw an " "exception." msgstr "" "`Issue #16804 `__: Fix a bug in the 'site' " "module that caused running 'python -S -m site' to incorrectly throw an " "exception." #: ../../../Misc/NEWS:9295 msgid "" "`Issue #15480 `__: Remove the deprecated and " "unused TYPE_INT64 code from marshal. Initial patch by Daniel Riti." msgstr "" "`Issue #15480 `__: Remove the deprecated and " "unused TYPE_INT64 code from marshal. Initial patch by Daniel Riti." #: ../../../Misc/NEWS:9298 msgid "" "`Issue #2118 `__: SMTPException is now a " "subclass of OSError." msgstr "" "`Issue #2118 `__: SMTPException is now a " "subclass of OSError." #: ../../../Misc/NEWS:9300 msgid "" "`Issue #17016 `__: Get rid of possible " "pointer wraparounds and integer overflows in the re module. Patch by " "Nickolai Zeldovich." msgstr "" "`Issue #17016 `__: Get rid of possible " "pointer wraparounds and integer overflows in the re module. Patch by " "Nickolai Zeldovich." #: ../../../Misc/NEWS:9303 msgid "" "`Issue #16658 `__: add missing return to " "HTTPConnection.send(). Patch by Jeff Knupp." msgstr "" "`Issue #16658 `__: add missing return to " "HTTPConnection.send(). Patch by Jeff Knupp." #: ../../../Misc/NEWS:9306 msgid "" "`Issue #9556 `__: the logging package now " "allows specifying a time-of-day for a TimedRotatingFileHandler to rotate." msgstr "" "`Issue #9556 `__: the logging package now " "allows specifying a time-of-day for a TimedRotatingFileHandler to rotate." #: ../../../Misc/NEWS:9309 msgid "" "`Issue #14971 `__: unittest test discovery no " "longer gets confused when a function has a different __name__ than its name " "in the TestCase class dictionary." msgstr "" "`Issue #14971 `__: unittest test discovery no " "longer gets confused when a function has a different __name__ than its name " "in the TestCase class dictionary." #: ../../../Misc/NEWS:9312 msgid "" "`Issue #17487 `__: The wave getparams method " "now returns a namedtuple rather than a plain tuple." msgstr "" "`Issue #17487 `__: The wave getparams method " "now returns a namedtuple rather than a plain tuple." #: ../../../Misc/NEWS:9315 msgid "" "`Issue #17675 `__: socket repr() provides " "local and remote addresses (if any). Patch by Giampaolo Rodola'" msgstr "" "`Issue #17675 `__: socket repr() provides " "local and remote addresses (if any). Patch by Giampaolo Rodola'" #: ../../../Misc/NEWS:9318 msgid "" "`Issue #17093 `__: Make the ABCs in importlib." "abc provide default values or raise reasonable exceptions for their methods " "to make them more amenable to super() calls." msgstr "" "`Issue #17093 `__: Make the ABCs in importlib." "abc provide default values or raise reasonable exceptions for their methods " "to make them more amenable to super() calls." #: ../../../Misc/NEWS:9322 msgid "" "`Issue #17566 `__: Make importlib.abc.Loader." "module_repr() optional instead of an abstractmethod; now it raises " "NotImplementedError so as to be ignored by default." msgstr "" "`Issue #17566 `__: Make importlib.abc.Loader." "module_repr() optional instead of an abstractmethod; now it raises " "NotImplementedError so as to be ignored by default." #: ../../../Misc/NEWS:9325 msgid "" "`Issue #17678 `__: Remove the use of " "deprecated method in http/cookiejar.py by changing the call to " "get_origin_req_host() to origin_req_host." msgstr "" "`Issue #17678 `__: Remove the use of " "deprecated method in http/cookiejar.py by changing the call to " "get_origin_req_host() to origin_req_host." #: ../../../Misc/NEWS:9328 msgid "" "`Issue #17666 `__: Fix reading gzip files " "with an extra field." msgstr "" "`Issue #17666 `__: Fix reading gzip files " "with an extra field." #: ../../../Misc/NEWS:9330 msgid "" "`Issue #16475 `__: Support object instancing, " "recursion and interned strings in marshal" msgstr "" "`Issue #16475 `__: Support object instancing, " "recursion and interned strings in marshal" #: ../../../Misc/NEWS:9333 msgid "" "`Issue #17502 `__: Process DEFAULT values in " "mock side_effect that returns iterator." msgstr "" "`Issue #17502 `__: Process DEFAULT values in " "mock side_effect that returns iterator." #: ../../../Misc/NEWS:9335 msgid "" "`Issue #16795 `__: On the ast.arguments " "object, unify vararg with varargannotation and kwarg and kwargannotation. " "Change the column offset of ast.Attribute to be at the attribute name." msgstr "" "`Issue #16795 `__: On the ast.arguments " "object, unify vararg with varargannotation and kwarg and kwargannotation. " "Change the column offset of ast.Attribute to be at the attribute name." #: ../../../Misc/NEWS:9339 msgid "" "`Issue #17434 `__: Properly raise a " "SyntaxError when a string occurs between future imports." msgstr "" "`Issue #17434 `__: Properly raise a " "SyntaxError when a string occurs between future imports." #: ../../../Misc/NEWS:9342 msgid "" "`Issue #17117 `__: Import and @importlib.util." "set_loader now set __loader__ when it has a value of None or the attribute " "doesn't exist." msgstr "" "`Issue #17117 `__: Import and @importlib.util." "set_loader now set __loader__ when it has a value of None or the attribute " "doesn't exist." #: ../../../Misc/NEWS:9345 msgid "" "`Issue #17032 `__: The \"global\" in the " "\"NameError: global name 'x' is not defined\" error message has been " "removed. Patch by Ram Rachum." msgstr "" "`Issue #17032 `__: The \"global\" in the " "\"NameError: global name 'x' is not defined\" error message has been " "removed. Patch by Ram Rachum." #: ../../../Misc/NEWS:9348 msgid "" "`Issue #18080 `__: When building a C " "extension module on OS X, if the compiler is overridden with the CC " "environment variable, use the new compiler as the default for linking if " "LDSHARED is not also overridden. This restores Distutils behavior " "introduced in 3.2.3 and inadvertently dropped in 3.3.0." msgstr "" "`Issue #18080 `__: When building a C " "extension module on OS X, if the compiler is overridden with the CC " "environment variable, use the new compiler as the default for linking if " "LDSHARED is not also overridden. This restores Distutils behavior " "introduced in 3.2.3 and inadvertently dropped in 3.3.0." #: ../../../Misc/NEWS:9353 msgid "" "`Issue #18113 `__: Fixed a refcount leak in " "the curses.panel module's set_userptr() method. Reported by Atsuo Ishimoto." msgstr "" "`Issue #18113 `__: Fixed a refcount leak in " "the curses.panel module's set_userptr() method. Reported by Atsuo Ishimoto." #: ../../../Misc/NEWS:9356 msgid "Implement PEP 443 \"Single-dispatch generic functions\"." msgstr "" #: ../../../Misc/NEWS:9358 msgid "" "Implement PEP 435 \"Adding an Enum type to the Python standard library\"." msgstr "" #: ../../../Misc/NEWS:9360 msgid "" "`Issue #15596 `__: Faster pickling of unicode " "strings." msgstr "" "`Issue #15596 `__: Faster pickling of unicode " "strings." #: ../../../Misc/NEWS:9362 msgid "" "`Issue #17572 `__: Avoid chained exceptions " "when passing bad directives to time.strptime(). Initial patch by Claudiu " "Popa." msgstr "" "`Issue #17572 `__: Avoid chained exceptions " "when passing bad directives to time.strptime(). Initial patch by Claudiu " "Popa." #: ../../../Misc/NEWS:9365 msgid "" "`Issue #17435 `__: threading.Timer's __init__ " "method no longer uses mutable default values for the args and kwargs " "parameters." msgstr "" "`Issue #17435 `__: threading.Timer's __init__ " "method no longer uses mutable default values for the args and kwargs " "parameters." #: ../../../Misc/NEWS:9368 msgid "" "`Issue #17526 `__: fix an IndexError raised " "while passing code without filename to inspect.findsource(). Initial patch " "by Tyler Doyle." msgstr "" "`Issue #17526 `__: fix an IndexError raised " "while passing code without filename to inspect.findsource(). Initial patch " "by Tyler Doyle." #: ../../../Misc/NEWS:9371 msgid "" "`Issue #17540 `__: Added style parameter to " "logging formatter configuration by dict." msgstr "" "`Issue #17540 `__: Added style parameter to " "logging formatter configuration by dict." #: ../../../Misc/NEWS:9373 msgid "" "`Issue #16692 `__: The ssl module now " "supports TLS 1.1 and TLS 1.2. Initial patch by Michele Orrù." msgstr "" "`Issue #16692 `__: The ssl module now " "supports TLS 1.1 and TLS 1.2. Initial patch by Michele Orrù." #: ../../../Misc/NEWS:9376 msgid "" "`Issue #17025 `__: multiprocessing: Reduce " "Queue and SimpleQueue contention." msgstr "" "`Issue #17025 `__: multiprocessing: Reduce " "Queue and SimpleQueue contention." #: ../../../Misc/NEWS:9378 msgid "" "`Issue #17536 `__: Add to webbrowser's " "browser list: www-browser, x-www-browser, iceweasel, iceape." msgstr "" "`Issue #17536 `__: Add to webbrowser's " "browser list: www-browser, x-www-browser, iceweasel, iceape." #: ../../../Misc/NEWS:9381 msgid "" "`Issue #17150 `__: pprint now uses line " "continuations to wrap long string literals." msgstr "" "`Issue #17150 `__: pprint now uses line " "continuations to wrap long string literals." #: ../../../Misc/NEWS:9384 msgid "" "`Issue #17488 `__: Change the subprocess." "Popen bufsize parameter default value from unbuffered (0) to buffering (-1) " "to match the behavior existing code expects and match the behavior of the " "subprocess module in Python 2 to avoid introducing hard to track down bugs." msgstr "" "`Issue #17488 `__: Change the subprocess." "Popen bufsize parameter default value from unbuffered (0) to buffering (-1) " "to match the behavior existing code expects and match the behavior of the " "subprocess module in Python 2 to avoid introducing hard to track down bugs." #: ../../../Misc/NEWS:9389 msgid "" "`Issue #17521 `__: Corrected non-enabling of " "logger following two calls to fileConfig()." msgstr "" "`Issue #17521 `__: Corrected non-enabling of " "logger following two calls to fileConfig()." #: ../../../Misc/NEWS:9392 msgid "" "`Issue #17508 `__: Corrected logging " "MemoryHandler configuration in dictConfig() where the target handler wasn't " "configured first." msgstr "" "`Issue #17508 `__: Corrected logging " "MemoryHandler configuration in dictConfig() where the target handler wasn't " "configured first." #: ../../../Misc/NEWS:9395 msgid "" "`Issue #17209 `__: curses.window.get_wch() " "now correctly handles KeyboardInterrupt (CTRL+c)." msgstr "" "`Issue #17209 `__: curses.window.get_wch() " "now correctly handles KeyboardInterrupt (CTRL+c)." #: ../../../Misc/NEWS:9398 msgid "" "`Issue #5713 `__: smtplib now handles 421 " "(closing connection) error codes when sending mail by closing the socket and " "reporting the 421 error code via the exception appropriate to the command " "that received the error response." msgstr "" "`Issue #5713 `__: smtplib now handles 421 " "(closing connection) error codes when sending mail by closing the socket and " "reporting the 421 error code via the exception appropriate to the command " "that received the error response." #: ../../../Misc/NEWS:9402 msgid "" "`Issue #16997 `__: unittest.TestCase now " "provides a subTest() context manager to procedurally generate, in an easy " "way, small test instances." msgstr "" "`Issue #16997 `__: unittest.TestCase now " "provides a subTest() context manager to procedurally generate, in an easy " "way, small test instances." #: ../../../Misc/NEWS:9405 msgid "" "`Issue #17485 `__: Also delete the Request " "Content-Length header if the data attribute is deleted. (Follow on to issue " "`Issue #16464 `__)." msgstr "" "`Issue #17485 `__: Also delete the Request " "Content-Length header if the data attribute is deleted. (Follow on to issue " "`Issue #16464 `__)." #: ../../../Misc/NEWS:9408 msgid "" "`Issue #15927 `__: CVS now correctly parses " "escaped newlines and carriage when parsing with quoting turned off." msgstr "" "`Issue #15927 `__: CVS now correctly parses " "escaped newlines and carriage when parsing with quoting turned off." #: ../../../Misc/NEWS:9411 msgid "" "`Issue #17467 `__: add readline and readlines " "support to mock_open in unittest.mock." msgstr "" "`Issue #17467 `__: add readline and readlines " "support to mock_open in unittest.mock." #: ../../../Misc/NEWS:9414 msgid "" "`Issue #13248 `__: removed deprecated and " "undocumented difflib.isbjunk, isbpopular." msgstr "" "`Issue #13248 `__: removed deprecated and " "undocumented difflib.isbjunk, isbpopular." #: ../../../Misc/NEWS:9417 msgid "" "`Issue #17192 `__: Update the ctypes module's " "libffi to v3.0.13. This specifically addresses a stack misalignment issue " "on x86 and issues on some more recent platforms." msgstr "" "`Issue #17192 `__: Update the ctypes module's " "libffi to v3.0.13. This specifically addresses a stack misalignment issue " "on x86 and issues on some more recent platforms." #: ../../../Misc/NEWS:9421 msgid "" "`Issue #8862 `__: Fixed curses cleanup when " "getkey is interrupted by a signal." msgstr "" "`Issue #8862 `__: Fixed curses cleanup when " "getkey is interrupted by a signal." #: ../../../Misc/NEWS:9423 msgid "" "`Issue #17443 `__: imaplib.IMAP4_stream was " "using the default unbuffered IO in subprocess, but the imap code assumes " "buffered IO. In Python2 this worked by accident. IMAP4_stream now " "explicitly uses buffered IO." msgstr "" "`Issue #17443 `__: imaplib.IMAP4_stream was " "using the default unbuffered IO in subprocess, but the imap code assumes " "buffered IO. In Python2 this worked by accident. IMAP4_stream now " "explicitly uses buffered IO." #: ../../../Misc/NEWS:9427 msgid "" "`Issue #17476 `__: Fixed regression relative " "to Python2 in undocumented pydoc 'allmethods'; it was missing unbound " "methods on the class." msgstr "" "`Issue #17476 `__: Fixed regression relative " "to Python2 in undocumented pydoc 'allmethods'; it was missing unbound " "methods on the class." #: ../../../Misc/NEWS:9430 msgid "" "`Issue #17474 `__: Remove the deprecated " "methods of Request class." msgstr "" "`Issue #17474 `__: Remove the deprecated " "methods of Request class." #: ../../../Misc/NEWS:9432 msgid "" "`Issue #16709 `__: unittest discover order is " "no-longer filesystem specific. Patch by Jeff Ramnani." msgstr "" "`Issue #16709 `__: unittest discover order is " "no-longer filesystem specific. Patch by Jeff Ramnani." #: ../../../Misc/NEWS:9435 msgid "" "Use the HTTPS PyPI url for upload, overriding any plain HTTP URL in pypirc." msgstr "" #: ../../../Misc/NEWS:9437 msgid "" "`Issue #5024 `__: sndhdr.whichhdr now returns " "the frame count for WAV files rather than -1." msgstr "" "`Issue #5024 `__: sndhdr.whichhdr now returns " "the frame count for WAV files rather than -1." #: ../../../Misc/NEWS:9440 msgid "" "`Issue #17460 `__: Remove the strict argument " "of HTTPConnection and removing the DeprecationWarning being issued from 3.2 " "onwards." msgstr "" "`Issue #17460 `__: Remove the strict argument " "of HTTPConnection and removing the DeprecationWarning being issued from 3.2 " "onwards." #: ../../../Misc/NEWS:9443 msgid "" "`Issue #16880 `__: Do not assume _imp." "load_dynamic() is defined in the imp module." msgstr "" "`Issue #16880 `__: Do not assume _imp." "load_dynamic() is defined in the imp module." #: ../../../Misc/NEWS:9445 msgid "" "`Issue #16389 `__: Fixed a performance " "regression relative to Python 3.1 in the caching of compiled regular " "expressions." msgstr "" "`Issue #16389 `__: Fixed a performance " "regression relative to Python 3.1 in the caching of compiled regular " "expressions." #: ../../../Misc/NEWS:9448 msgid "Added missing FeedParser and BytesFeedParser to email.parser.__all__." msgstr "" #: ../../../Misc/NEWS:9450 msgid "" "`Issue #17431 `__: Fix missing import of " "BytesFeedParser in email.parser." msgstr "" "`Issue #17431 `__: Fix missing import of " "BytesFeedParser in email.parser." #: ../../../Misc/NEWS:9452 msgid "" "`Issue #12921 `__: http.server's send_error " "takes an explain argument to send more information in response. Patch " "contributed by Karl." msgstr "" "`Issue #12921 `__: http.server's send_error " "takes an explain argument to send more information in response. Patch " "contributed by Karl." #: ../../../Misc/NEWS:9455 msgid "" "`Issue #17414 `__: Add timeit, repeat, and " "default_timer to timeit.__all__." msgstr "" "`Issue #17414 `__: Add timeit, repeat, and " "default_timer to timeit.__all__." #: ../../../Misc/NEWS:9457 msgid "" "`Issue #1285086 `__: Get rid of the " "refcounting hack and speed up urllib.parse.unquote() and urllib.parse." "unquote_to_bytes()." msgstr "" "`Issue #1285086 `__: Get rid of the " "refcounting hack and speed up urllib.parse.unquote() and urllib.parse." "unquote_to_bytes()." #: ../../../Misc/NEWS:9460 msgid "" "`Issue #17099 `__: Have importlib." "find_loader() raise ValueError when __loader__ is not set, harmonizing with " "what happens when the attribute is set to None." msgstr "" "`Issue #17099 `__: Have importlib." "find_loader() raise ValueError when __loader__ is not set, harmonizing with " "what happens when the attribute is set to None." #: ../../../Misc/NEWS:9463 msgid "Expose the O_PATH constant in the os module if it is available." msgstr "" #: ../../../Misc/NEWS:9465 msgid "" "`Issue #17368 `__: Fix an off-by-one error in " "the Python JSON decoder that caused a failure while decoding empty object " "literals when object_pairs_hook was specified." msgstr "" "`Issue #17368 `__: Fix an off-by-one error in " "the Python JSON decoder that caused a failure while decoding empty object " "literals when object_pairs_hook was specified." #: ../../../Misc/NEWS:9469 msgid "" "`Issue #17385 `__: Fix quadratic behavior in " "threading.Condition. The FIFO queue now uses a deque instead of a list." msgstr "" "`Issue #17385 `__: Fix quadratic behavior in " "threading.Condition. The FIFO queue now uses a deque instead of a list." #: ../../../Misc/NEWS:9472 msgid "" "`Issue #15806 `__: Add contextlib.ignore(). " "This creates a context manager to ignore specified exceptions, replacing the " "\"except SomeException: pass\" idiom." msgstr "" "`Issue #15806 `__: Add contextlib.ignore(). " "This creates a context manager to ignore specified exceptions, replacing the " "\"except SomeException: pass\" idiom." #: ../../../Misc/NEWS:9475 msgid "" "`Issue #14645 `__: The email generator " "classes now produce output using the specified linesep throughout. " "Previously if the prolog, epilog, or body were stored with a different " "linesep, that linesep was used. This fix corrects an RFC non-compliance " "issue with smtplib.send_message." msgstr "" "`Issue #14645 `__: The email generator " "classes now produce output using the specified linesep throughout. " "Previously if the prolog, epilog, or body were stored with a different " "linesep, that linesep was used. This fix corrects an RFC non-compliance " "issue with smtplib.send_message." #: ../../../Misc/NEWS:9480 msgid "" "`Issue #17278 `__: Fix a crash in heapq." "heappush() and heapq.heappop() when the list is being resized concurrently." msgstr "" "`Issue #17278 `__: Fix a crash in heapq." "heappush() and heapq.heappop() when the list is being resized concurrently." #: ../../../Misc/NEWS:9483 msgid "" "`Issue #16962 `__: Use getdents64 instead of " "the obsolete getdents syscall in the subprocess module on Linux." msgstr "" "`Issue #16962 `__: Use getdents64 instead of " "the obsolete getdents syscall in the subprocess module on Linux." #: ../../../Misc/NEWS:9486 msgid "" "`Issue #16935 `__: unittest now counts the " "module as skipped if it raises SkipTest, instead of counting it as an " "error. Patch by Zachary Ware." msgstr "" "`Issue #16935 `__: unittest now counts the " "module as skipped if it raises SkipTest, instead of counting it as an " "error. Patch by Zachary Ware." #: ../../../Misc/NEWS:9489 msgid "" "`Issue #17018 `__: Make Process.join() retry " "if os.waitpid() fails with EINTR." msgstr "" "`Issue #17018 `__: Make Process.join() retry " "if os.waitpid() fails with EINTR." #: ../../../Misc/NEWS:9491 msgid "" "`Issue #17223 `__: array module: Fix a " "crasher when converting an array containing invalid characters (outside " "range [U+0000; U+10ffff]) to Unicode: repr(array), str(array) and array." "tounicode(). Patch written by Manuel Jacob." msgstr "" "`Issue #17223 `__: array module: Fix a " "crasher when converting an array containing invalid characters (outside " "range [U+0000; U+10ffff]) to Unicode: repr(array), str(array) and array." "tounicode(). Patch written by Manuel Jacob." #: ../../../Misc/NEWS:9495 msgid "" "`Issue #17197 `__: profile/cProfile modules " "refactored so that code of run() and runctx() utility functions is not " "duplicated in both modules." msgstr "" "`Issue #17197 `__: profile/cProfile modules " "refactored so that code of run() and runctx() utility functions is not " "duplicated in both modules." #: ../../../Misc/NEWS:9498 msgid "" "`Issue #14720 `__: sqlite3: Convert datetime " "microseconds correctly. Patch by Lowe Thiderman." msgstr "" "`Issue #14720 `__: sqlite3: Convert datetime " "microseconds correctly. Patch by Lowe Thiderman." #: ../../../Misc/NEWS:9501 msgid "" "`Issue #15132 `__: Allow a list for the " "defaultTest argument of unittest.TestProgram. Patch by Jyrki Pulliainen." msgstr "" "`Issue #15132 `__: Allow a list for the " "defaultTest argument of unittest.TestProgram. Patch by Jyrki Pulliainen." #: ../../../Misc/NEWS:9504 msgid "" "`Issue #17225 `__: JSON decoder now counts " "columns in the first line starting with 1, as in other lines." msgstr "" "`Issue #17225 `__: JSON decoder now counts " "columns in the first line starting with 1, as in other lines." #: ../../../Misc/NEWS:9507 msgid "" "`Issue #6623 `__: Added explicit " "DeprecationWarning for ftplib.netrc, which has been deprecated and " "undocumented for a long time." msgstr "" "`Issue #6623 `__: Added explicit " "DeprecationWarning for ftplib.netrc, which has been deprecated and " "undocumented for a long time." #: ../../../Misc/NEWS:9510 msgid "" "`Issue #13700 `__: Fix byte/string handling " "in imaplib authentication when an authobject is specified." msgstr "" "`Issue #13700 `__: Fix byte/string handling " "in imaplib authentication when an authobject is specified." #: ../../../Misc/NEWS:9513 msgid "" "`Issue #13153 `__: Tkinter functions now " "raise TclError instead of ValueError when a string argument contains non-BMP " "character." msgstr "" "`Issue #13153 `__: Tkinter functions now " "raise TclError instead of ValueError when a string argument contains non-BMP " "character." #: ../../../Misc/NEWS:9516 msgid "" "`Issue #9669 `__: Protect re against infinite " "loops on zero-width matching in non-greedy repeat. Patch by Matthew Barnett." msgstr "" "`Issue #9669 `__: Protect re against infinite " "loops on zero-width matching in non-greedy repeat. Patch by Matthew Barnett." #: ../../../Misc/NEWS:9519 msgid "" "`Issue #13169 `__: The maximal repetition " "number in a regular expression has been increased from 65534 to 2147483647 " "(on 32-bit platform) or 4294967294 (on 64-bit)." msgstr "" "`Issue #13169 `__: The maximal repetition " "number in a regular expression has been increased from 65534 to 2147483647 " "(on 32-bit platform) or 4294967294 (on 64-bit)." #: ../../../Misc/NEWS:9523 msgid "" "`Issue #17143 `__: Fix a missing import in " "the trace module. Initial patch by Berker Peksag." msgstr "" "`Issue #17143 `__: Fix a missing import in " "the trace module. Initial patch by Berker Peksag." #: ../../../Misc/NEWS:9526 msgid "" "`Issue #15220 `__: email.feedparser's line " "splitting algorithm is now simpler and faster." msgstr "" "`Issue #15220 `__: email.feedparser's line " "splitting algorithm is now simpler and faster." #: ../../../Misc/NEWS:9529 msgid "" "`Issue #16743 `__: Fix mmap overflow check on " "32 bit Windows." msgstr "" "`Issue #16743 `__: Fix mmap overflow check on " "32 bit Windows." #: ../../../Misc/NEWS:9531 msgid "" "`Issue #16996 `__: webbrowser module now uses " "shutil.which() to find a web-browser on the executable search path." msgstr "" "`Issue #16996 `__: webbrowser module now uses " "shutil.which() to find a web-browser on the executable search path." #: ../../../Misc/NEWS:9534 msgid "" "`Issue #16800 `__: tempfile.gettempdir() no " "longer left temporary files when the disk is full. Original patch by Amir " "Szekely." msgstr "" "`Issue #16800 `__: tempfile.gettempdir() no " "longer left temporary files when the disk is full. Original patch by Amir " "Szekely." #: ../../../Misc/NEWS:9537 msgid "`Issue #17192 `__: Import libffi-3.0.12." msgstr "" "`Issue #17192 `__: Import libffi-3.0.12." #: ../../../Misc/NEWS:9539 msgid "" "`Issue #16564 `__: Fixed regression relative " "to Python2 in the operation of email.encoders.encode_7or8bit when used with " "binary data." msgstr "" "`Issue #16564 `__: Fixed regression relative " "to Python2 in the operation of email.encoders.encode_7or8bit when used with " "binary data." #: ../../../Misc/NEWS:9542 msgid "" "`Issue #17052 `__: unittest discovery should " "use self.testLoader." msgstr "" "`Issue #17052 `__: unittest discovery should " "use self.testLoader." #: ../../../Misc/NEWS:9544 msgid "" "`Issue #4591 `__: Uid and gid values larger " "than 2**31 are supported now." msgstr "" "`Issue #4591 `__: Uid and gid values larger " "than 2**31 are supported now." #: ../../../Misc/NEWS:9546 msgid "" "`Issue #17141 `__: random.vonmisesvariate() " "no longer hangs for large kappas." msgstr "" "`Issue #17141 `__: random.vonmisesvariate() " "no longer hangs for large kappas." #: ../../../Misc/NEWS:9548 msgid "" "`Issue #17149 `__: Fix random.vonmisesvariate " "to always return results in [0, 2*math.pi]." msgstr "" "`Issue #17149 `__: Fix random.vonmisesvariate " "to always return results in [0, 2*math.pi]." #: ../../../Misc/NEWS:9551 msgid "" "`Issue #1470548 `__: XMLGenerator now works " "with binary output streams." msgstr "" "`Issue #1470548 `__: XMLGenerator now works " "with binary output streams." #: ../../../Misc/NEWS:9553 msgid "" "`Issue #6975 `__: os.path.realpath() now " "correctly resolves multiple nested symlinks on POSIX platforms." msgstr "" "`Issue #6975 `__: os.path.realpath() now " "correctly resolves multiple nested symlinks on POSIX platforms." #: ../../../Misc/NEWS:9556 msgid "" "`Issue #13773 `__: sqlite3.connect() gets a " "new `uri` parameter to pass the filename as a URI, allowing custom options " "to be passed." msgstr "" "`Issue #13773 `__: sqlite3.connect() gets a " "new `uri` parameter to pass the filename as a URI, allowing custom options " "to be passed." #: ../../../Misc/NEWS:9559 msgid "" "`Issue #16564 `__: Fixed regression relative " "to Python2 in the operation of email.encoders.encode_noop when used with " "binary data." msgstr "" "`Issue #16564 `__: Fixed regression relative " "to Python2 in the operation of email.encoders.encode_noop when used with " "binary data." #: ../../../Misc/NEWS:9562 msgid "" "`Issue #10355 `__: The mode, name, encoding " "and newlines properties now work on SpooledTemporaryFile objects even when " "they have not yet rolled over. Obsolete method xreadline (which has never " "worked in Python 3) has been removed." msgstr "" "`Issue #10355 `__: The mode, name, encoding " "and newlines properties now work on SpooledTemporaryFile objects even when " "they have not yet rolled over. Obsolete method xreadline (which has never " "worked in Python 3) has been removed." #: ../../../Misc/NEWS:9567 msgid "" "`Issue #16686 `__: Fixed a lot of bugs in " "audioop module. Fixed crashes in avgpp(), maxpp() and ratecv(). Fixed an " "integer overflow in add(), bias(), and ratecv(). reverse(), lin2lin() and " "ratecv() no more lose precision for 32-bit samples. max() and rms() no more " "returns a negative result and various other functions now work correctly " "with 32-bit sample -0x80000000." msgstr "" "`Issue #16686 `__: Fixed a lot of bugs in " "audioop module. Fixed crashes in avgpp(), maxpp() and ratecv(). Fixed an " "integer overflow in add(), bias(), and ratecv(). reverse(), lin2lin() and " "ratecv() no more lose precision for 32-bit samples. max() and rms() no more " "returns a negative result and various other functions now work correctly " "with 32-bit sample -0x80000000." #: ../../../Misc/NEWS:9573 msgid "" "`Issue #17073 `__: Fix some integer overflows " "in sqlite3 module." msgstr "" "`Issue #17073 `__: Fix some integer overflows " "in sqlite3 module." #: ../../../Misc/NEWS:9575 msgid "" "`Issue #16723 `__: httplib.HTTPResponse no " "longer marked closed when the connection is automatically closed." msgstr "" "`Issue #16723 `__: httplib.HTTPResponse no " "longer marked closed when the connection is automatically closed." #: ../../../Misc/NEWS:9578 msgid "" "`Issue #15359 `__: Add CAN_BCM protocol " "support to the socket module. Patch by Brian Thorne." msgstr "" "`Issue #15359 `__: Add CAN_BCM protocol " "support to the socket module. Patch by Brian Thorne." #: ../../../Misc/NEWS:9581 msgid "" "`Issue #16948 `__: Fix quoted printable body " "encoding for non-latin1 character sets in the email package." msgstr "" "`Issue #16948 `__: Fix quoted printable body " "encoding for non-latin1 character sets in the email package." #: ../../../Misc/NEWS:9584 msgid "" "`Issue #16811 `__: Fix folding of headers " "with no value in the provisional email policies." msgstr "" "`Issue #16811 `__: Fix folding of headers " "with no value in the provisional email policies." #: ../../../Misc/NEWS:9587 msgid "" "`Issue #17132 `__: Update symbol for \"yield " "from\" grammar changes." msgstr "" "`Issue #17132 `__: Update symbol for \"yield " "from\" grammar changes." #: ../../../Misc/NEWS:9589 msgid "" "`Issue #17076 `__: Make copying of xattrs " "more tolerant of missing FS support. Patch by Thomas Wouters." msgstr "" "`Issue #17076 `__: Make copying of xattrs " "more tolerant of missing FS support. Patch by Thomas Wouters." #: ../../../Misc/NEWS:9592 msgid "" "`Issue #17089 `__: Expat parser now correctly " "works with string input when the internal XML encoding is not UTF-8 or US-" "ASCII. It also now accepts bytes and strings larger than 2 GiB." msgstr "" "`Issue #17089 `__: Expat parser now correctly " "works with string input when the internal XML encoding is not UTF-8 or US-" "ASCII. It also now accepts bytes and strings larger than 2 GiB." #: ../../../Misc/NEWS:9596 msgid "" "`Issue #6083 `__: Fix multiple segmentation " "faults occurred when PyArg_ParseTuple parses nested mutating sequence." msgstr "" "`Issue #6083 `__: Fix multiple segmentation " "faults occurred when PyArg_ParseTuple parses nested mutating sequence." #: ../../../Misc/NEWS:9599 msgid "" "`Issue #5289 `__: Fix ctypes.util.find_library " "on Solaris." msgstr "" "`Issue #5289 `__: Fix ctypes.util.find_library " "on Solaris." #: ../../../Misc/NEWS:9601 msgid "" "`Issue #17106 `__: Fix a segmentation fault " "in io.TextIOWrapper when an underlying stream or a decoder produces data of " "an unexpected type (i.e. when io.TextIOWrapper initialized with text stream " "or use bytes-to-bytes codec)." msgstr "" "`Issue #17106 `__: Fix a segmentation fault " "in io.TextIOWrapper when an underlying stream or a decoder produces data of " "an unexpected type (i.e. when io.TextIOWrapper initialized with text stream " "or use bytes-to-bytes codec)." #: ../../../Misc/NEWS:9605 msgid "" "`Issue #17015 `__: When it has a spec, a Mock " "object now inspects its signature when matching calls, so that arguments can " "be matched positionally or by name." msgstr "" "`Issue #17015 `__: When it has a spec, a Mock " "object now inspects its signature when matching calls, so that arguments can " "be matched positionally or by name." #: ../../../Misc/NEWS:9609 msgid "" "`Issue #15633 `__: httplib.HTTPResponse is " "now mark closed when the server sends less than the advertised Content-" "Length." msgstr "" "`Issue #15633 `__: httplib.HTTPResponse is " "now mark closed when the server sends less than the advertised Content-" "Length." #: ../../../Misc/NEWS:9612 msgid "" "`Issue #12268 `__: The io module file object " "write methods no longer abort early when one of its write system calls is " "interrupted (EINTR)." msgstr "" "`Issue #12268 `__: The io module file object " "write methods no longer abort early when one of its write system calls is " "interrupted (EINTR)." #: ../../../Misc/NEWS:9615 msgid "" "`Issue #6972 `__: The zipfile module no longer " "overwrites files outside of its destination path when extracting malicious " "zip files." msgstr "" "`Issue #6972 `__: The zipfile module no longer " "overwrites files outside of its destination path when extracting malicious " "zip files." #: ../../../Misc/NEWS:9618 msgid "" "`Issue #4844 `__: ZipFile now raises " "BadZipFile when opens a ZIP file with an incomplete \"End of Central " "Directory\" record. Original patch by Guilherme Polo and Alan McIntyre." msgstr "" "`Issue #4844 `__: ZipFile now raises " "BadZipFile when opens a ZIP file with an incomplete \"End of Central " "Directory\" record. Original patch by Guilherme Polo and Alan McIntyre." #: ../../../Misc/NEWS:9622 msgid "" "`Issue #17071 `__: Signature.bind() now works " "when one of the keyword arguments is named ``self``." msgstr "" "`Issue #17071 `__: Signature.bind() now works " "when one of the keyword arguments is named ``self``." #: ../../../Misc/NEWS:9625 msgid "" "`Issue #12004 `__: Fix an internal error in " "PyZipFile when writing an invalid Python file. Patch by Ben Morgan." msgstr "" "`Issue #12004 `__: Fix an internal error in " "PyZipFile when writing an invalid Python file. Patch by Ben Morgan." #: ../../../Misc/NEWS:9628 msgid "" "Have py_compile use importlib as much as possible to avoid code duplication. " "Code now raises FileExistsError if the file path to be used for the byte-" "compiled file is a symlink or non-regular file as a warning that import will " "not keep the file path type if it writes to that path." msgstr "" #: ../../../Misc/NEWS:9633 msgid "" "`Issue #16972 `__: Have site.addpackage() " "consider already known paths even when none are explicitly passed in. Bug " "report and fix by Kirill." msgstr "" "`Issue #16972 `__: Have site.addpackage() " "consider already known paths even when none are explicitly passed in. Bug " "report and fix by Kirill." #: ../../../Misc/NEWS:9636 msgid "" "`Issue #1602133 `__: on Mac OS X a shared " "library build (``--enable-shared``) now fills the ``os.environ`` variable " "correctly." msgstr "" "`Issue #1602133 `__: on Mac OS X a shared " "library build (``--enable-shared``) now fills the ``os.environ`` variable " "correctly." #: ../../../Misc/NEWS:9639 msgid "" "`Issue #15505 `__: `unittest.installHandler` " "no longer assumes SIGINT handler is set to a callable object." msgstr "" "`Issue #15505 `__: `unittest.installHandler` " "no longer assumes SIGINT handler is set to a callable object." #: ../../../Misc/NEWS:9642 msgid "" "`Issue #13454 `__: Fix a crash when deleting " "an iterator created by itertools.tee() if all other iterators were very " "advanced before." msgstr "" "`Issue #13454 `__: Fix a crash when deleting " "an iterator created by itertools.tee() if all other iterators were very " "advanced before." #: ../../../Misc/NEWS:9645 msgid "" "`Issue #12411 `__: Fix to cgi.parse_multipart " "to correctly use bytes boundaries and bytes data. Patch by Jonas Wagner." msgstr "" "`Issue #12411 `__: Fix to cgi.parse_multipart " "to correctly use bytes boundaries and bytes data. Patch by Jonas Wagner." #: ../../../Misc/NEWS:9648 msgid "" "`Issue #16957 `__: shutil.which() no longer " "searches a bare file name in the current directory on Unix and no longer " "searches a relative file path with a directory part in PATH directories. " "Patch by Thomas Kluyver." msgstr "" "`Issue #16957 `__: shutil.which() no longer " "searches a bare file name in the current directory on Unix and no longer " "searches a relative file path with a directory part in PATH directories. " "Patch by Thomas Kluyver." #: ../../../Misc/NEWS:9652 msgid "" "`Issue #1159051 `__: GzipFile now raises " "EOFError when reading a corrupted file with truncated header or footer." msgstr "" "`Issue #1159051 `__: GzipFile now raises " "EOFError when reading a corrupted file with truncated header or footer." #: ../../../Misc/NEWS:9655 msgid "" "`Issue #16993 `__: shutil.which() now " "preserves the case of the path and extension on Windows." msgstr "" "`Issue #16993 `__: shutil.which() now " "preserves the case of the path and extension on Windows." #: ../../../Misc/NEWS:9658 msgid "" "`Issue #16992 `__: On Windows in signal." "set_wakeup_fd, validate the file descriptor argument." msgstr "" "`Issue #16992 `__: On Windows in signal." "set_wakeup_fd, validate the file descriptor argument." #: ../../../Misc/NEWS:9661 msgid "" "`Issue #16422 `__: For compatibility with the " "Python version, the C version of decimal now uses strings instead of " "integers for rounding mode constants." msgstr "" "`Issue #16422 `__: For compatibility with the " "Python version, the C version of decimal now uses strings instead of " "integers for rounding mode constants." #: ../../../Misc/NEWS:9664 msgid "" "`Issue #15861 `__: tkinter now correctly " "works with lists and tuples containing strings with whitespaces, backslashes " "or unbalanced braces." msgstr "" "`Issue #15861 `__: tkinter now correctly " "works with lists and tuples containing strings with whitespaces, backslashes " "or unbalanced braces." #: ../../../Misc/NEWS:9667 msgid "" "`Issue #9720 `__: zipfile now writes correct " "local headers for files larger than 4 GiB." msgstr "" "`Issue #9720 `__: zipfile now writes correct " "local headers for files larger than 4 GiB." #: ../../../Misc/NEWS:9670 msgid "" "`Issue #16955 `__: Fix the poll() method for " "multiprocessing's socket connections on Windows." msgstr "" "`Issue #16955 `__: Fix the poll() method for " "multiprocessing's socket connections on Windows." #: ../../../Misc/NEWS:9673 msgid "SSLContext.load_dh_params() now properly closes the input file." msgstr "" #: ../../../Misc/NEWS:9675 msgid "" "`Issue #15031 `__: Refactor some .pyc " "management code to cut down on code duplication. Thanks to Ronan Lamy for " "the report and taking an initial stab at the problem." msgstr "" "`Issue #15031 `__: Refactor some .pyc " "management code to cut down on code duplication. Thanks to Ronan Lamy for " "the report and taking an initial stab at the problem." #: ../../../Misc/NEWS:9679 msgid "" "`Issue #16398 `__: Optimize deque.rotate() so " "that it only moves pointers and doesn't touch the underlying data with " "increfs and decrefs." msgstr "" "`Issue #16398 `__: Optimize deque.rotate() so " "that it only moves pointers and doesn't touch the underlying data with " "increfs and decrefs." #: ../../../Misc/NEWS:9682 msgid "" "`Issue #16900 `__: Issue a ResourceWarning " "when an ssl socket is left unclosed." msgstr "" "`Issue #16900 `__: Issue a ResourceWarning " "when an ssl socket is left unclosed." #: ../../../Misc/NEWS:9684 msgid "" "`Issue #13899 `__: ``\\A``, ``\\Z``, and ``" "\\B`` now correctly match the A, Z, and B literals when used inside " "character classes (e.g. ``'[\\A]'``). Patch by Matthew Barnett." msgstr "" "`Issue #13899 `__: ``\\A``, ``\\Z``, and ``" "\\B`` now correctly match the A, Z, and B literals when used inside " "character classes (e.g. ``'[\\A]'``). Patch by Matthew Barnett." #: ../../../Misc/NEWS:9688 msgid "" "`Issue #15545 `__: Fix regression in " "sqlite3's iterdump method where it was failing if the connection used a row " "factory (such as sqlite3.Row) that produced unsortable objects. (Regression " "was introduced by fix for 9750)." msgstr "" "`Issue #15545 `__: Fix regression in " "sqlite3's iterdump method where it was failing if the connection used a row " "factory (such as sqlite3.Row) that produced unsortable objects. (Regression " "was introduced by fix for 9750)." #: ../../../Misc/NEWS:9692 msgid "fcntl: add F_DUPFD_CLOEXEC constant, available on Linux 2.6.24+." msgstr "" #: ../../../Misc/NEWS:9694 msgid "" "`Issue #15972 `__: Fix error messages when os " "functions expecting a file name or file descriptor receive the incorrect " "type." msgstr "" "`Issue #15972 `__: Fix error messages when os " "functions expecting a file name or file descriptor receive the incorrect " "type." #: ../../../Misc/NEWS:9697 msgid "" "`Issue #8109 `__: The ssl module now has " "support for server-side SNI, thanks to a :meth:`SSLContext." "set_servername_callback` method. Patch by Daniel Black." msgstr "" "`Issue #8109 `__: The ssl module now has " "support for server-side SNI, thanks to a :meth:`SSLContext." "set_servername_callback` method. Patch by Daniel Black." #: ../../../Misc/NEWS:9701 msgid "" "`Issue #16860 `__: In tempfile, use O_CLOEXEC " "when available to set the close-on-exec flag atomically." msgstr "" "`Issue #16860 `__: In tempfile, use O_CLOEXEC " "when available to set the close-on-exec flag atomically." #: ../../../Misc/NEWS:9704 msgid "" "`Issue #16674 `__: random.getrandbits() is " "now 20-40% faster for small integers." msgstr "" "`Issue #16674 `__: random.getrandbits() is " "now 20-40% faster for small integers." #: ../../../Misc/NEWS:9706 msgid "" "`Issue #16009 `__: JSON error messages now " "provide more information." msgstr "" "`Issue #16009 `__: JSON error messages now " "provide more information." #: ../../../Misc/NEWS:9708 msgid "" "`Issue #16828 `__: Fix error incorrectly " "raised by bz2.compress(b'') and bz2.BZ2Compressor.compress(b''). Initial " "patch by Martin Packman." msgstr "" "`Issue #16828 `__: Fix error incorrectly " "raised by bz2.compress(b'') and bz2.BZ2Compressor.compress(b''). Initial " "patch by Martin Packman." #: ../../../Misc/NEWS:9711 msgid "" "`Issue #16833 `__: In http.client." "HTTPConnection, do not concatenate the request headers and body when the " "payload exceeds 16 KB, since it can consume more memory for no benefit. " "Patch by Benno Leslie." msgstr "" "`Issue #16833 `__: In http.client." "HTTPConnection, do not concatenate the request headers and body when the " "payload exceeds 16 KB, since it can consume more memory for no benefit. " "Patch by Benno Leslie." #: ../../../Misc/NEWS:9715 msgid "" "`Issue #16541 `__: tk_setPalette() now works " "with keyword arguments." msgstr "" "`Issue #16541 `__: tk_setPalette() now works " "with keyword arguments." #: ../../../Misc/NEWS:9717 msgid "" "`Issue #16820 `__: In configparser, `parser." "popitem()` no longer raises ValueError. This makes `parser.clean()` work " "correctly." msgstr "" "`Issue #16820 `__: In configparser, `parser." "popitem()` no longer raises ValueError. This makes `parser.clean()` work " "correctly." #: ../../../Misc/NEWS:9720 msgid "" "`Issue #16820 `__: In configparser, " "``parser['section'] = {}`` now preserves section order within the parser. " "This makes `parser.update()` preserve section order as well." msgstr "" "`Issue #16820 `__: In configparser, " "``parser['section'] = {}`` now preserves section order within the parser. " "This makes `parser.update()` preserve section order as well." #: ../../../Misc/NEWS:9724 msgid "" "`Issue #16820 `__: In configparser, " "``parser['DEFAULT'] = {}`` now correctly clears previous values stored in " "the default section. Same goes for ``parser.update({'DEFAULT': {}})``." msgstr "" "`Issue #16820 `__: In configparser, " "``parser['DEFAULT'] = {}`` now correctly clears previous values stored in " "the default section. Same goes for ``parser.update({'DEFAULT': {}})``." #: ../../../Misc/NEWS:9728 msgid "" "`Issue #9586 `__: Redefine SEM_FAILED on " "MacOSX to keep compiler happy." msgstr "" "`Issue #9586 `__: Redefine SEM_FAILED on " "MacOSX to keep compiler happy." #: ../../../Misc/NEWS:9730 msgid "" "`Issue #16787 `__: Increase asyncore and " "asynchat default output buffers size, to decrease CPU usage and increase " "throughput." msgstr "" "`Issue #16787 `__: Increase asyncore and " "asynchat default output buffers size, to decrease CPU usage and increase " "throughput." #: ../../../Misc/NEWS:9733 msgid "" "`Issue #10527 `__: make multiprocessing use " "poll() instead of select() if available." msgstr "" "`Issue #10527 `__: make multiprocessing use " "poll() instead of select() if available." #: ../../../Misc/NEWS:9735 msgid "" "`Issue #16688 `__: Now regexes contained " "backreferences correctly work with non-ASCII strings. Patch by Matthew " "Barnett." msgstr "" "`Issue #16688 `__: Now regexes contained " "backreferences correctly work with non-ASCII strings. Patch by Matthew " "Barnett." #: ../../../Misc/NEWS:9738 msgid "" "`Issue #16486 `__: Make aifc files act as " "context managers." msgstr "" "`Issue #16486 `__: Make aifc files act as " "context managers." #: ../../../Misc/NEWS:9740 msgid "" "`Issue #16485 `__: Now file descriptors are " "closed if file header patching failed on closing an aifc file." msgstr "" "`Issue #16485 `__: Now file descriptors are " "closed if file header patching failed on closing an aifc file." #: ../../../Misc/NEWS:9743 msgid "" "`Issue #16640 `__: Run less code under a lock " "in sched module." msgstr "" "`Issue #16640 `__: Run less code under a lock " "in sched module." #: ../../../Misc/NEWS:9745 msgid "" "`Issue #16165 `__: sched.scheduler.run() no " "longer blocks a scheduler for other threads." msgstr "" "`Issue #16165 `__: sched.scheduler.run() no " "longer blocks a scheduler for other threads." #: ../../../Misc/NEWS:9748 msgid "" "`Issue #16641 `__: Default values of sched." "scheduler.enter() are no longer modifiable." msgstr "" "`Issue #16641 `__: Default values of sched." "scheduler.enter() are no longer modifiable." #: ../../../Misc/NEWS:9751 msgid "" "`Issue #16618 `__: Make glob.glob match " "consistently across strings and bytes regarding leading dots. Patch by " "Serhiy Storchaka." msgstr "" "`Issue #16618 `__: Make glob.glob match " "consistently across strings and bytes regarding leading dots. Patch by " "Serhiy Storchaka." #: ../../../Misc/NEWS:9754 msgid "" "`Issue #16788 `__: Add samestat to Lib/ntpath." "py" msgstr "" "`Issue #16788 `__: Add samestat to Lib/ntpath." "py" #: ../../../Misc/NEWS:9756 msgid "" "`Issue #16713 `__: Parsing of 'tel' urls " "using urlparse separates params from path." msgstr "" "`Issue #16713 `__: Parsing of 'tel' urls " "using urlparse separates params from path." #: ../../../Misc/NEWS:9759 msgid "" "`Issue #16443 `__: Add docstrings to regular " "expression match objects. Patch by Anton Kasyanov." msgstr "" "`Issue #16443 `__: Add docstrings to regular " "expression match objects. Patch by Anton Kasyanov." #: ../../../Misc/NEWS:9762 msgid "" "`Issue #15701 `__: Fix HTTPError info method " "call to return the headers information." msgstr "" "`Issue #15701 `__: Fix HTTPError info method " "call to return the headers information." #: ../../../Misc/NEWS:9764 msgid "" "`Issue #16752 `__: Add a missing import to " "modulefinder. Patch by Berker Peksag." msgstr "" "`Issue #16752 `__: Add a missing import to " "modulefinder. Patch by Berker Peksag." #: ../../../Misc/NEWS:9766 msgid "" "`Issue #16646 `__: ftplib.FTP.makeport() " "might lose socket error details. (patch by Serhiy Storchaka)" msgstr "" "`Issue #16646 `__: ftplib.FTP.makeport() " "might lose socket error details. (patch by Serhiy Storchaka)" #: ../../../Misc/NEWS:9769 msgid "" "`Issue #16626 `__: Fix infinite recursion in " "glob.glob() on Windows when the pattern contains a wildcard in the drive or " "UNC path. Patch by Serhiy Storchaka." msgstr "" "`Issue #16626 `__: Fix infinite recursion in " "glob.glob() on Windows when the pattern contains a wildcard in the drive or " "UNC path. Patch by Serhiy Storchaka." #: ../../../Misc/NEWS:9773 msgid "" "`Issue #15783 `__: Except for the number " "methods, the C version of decimal now supports all None default values " "present in decimal.py. These values were largely undocumented." msgstr "" "`Issue #15783 `__: Except for the number " "methods, the C version of decimal now supports all None default values " "present in decimal.py. These values were largely undocumented." #: ../../../Misc/NEWS:9777 msgid "" "`Issue #11175 `__: argparse.FileType now " "accepts encoding and errors arguments. Patch by Lucas Maystre." msgstr "" "`Issue #11175 `__: argparse.FileType now " "accepts encoding and errors arguments. Patch by Lucas Maystre." #: ../../../Misc/NEWS:9780 msgid "" "`Issue #16488 `__: epoll() objects now " "support the `with` statement. Patch by Serhiy Storchaka." msgstr "" "`Issue #16488 `__: epoll() objects now " "support the `with` statement. Patch by Serhiy Storchaka." #: ../../../Misc/NEWS:9783 msgid "" "`Issue #16298 `__: In HTTPResponse.read(), " "close the socket when there is no Content-Length and the incoming stream is " "finished. Patch by Eran Rundstein." msgstr "" "`Issue #16298 `__: In HTTPResponse.read(), " "close the socket when there is no Content-Length and the incoming stream is " "finished. Patch by Eran Rundstein." #: ../../../Misc/NEWS:9787 msgid "" "`Issue #16049 `__: Add abc.ABC class to " "enable the use of inheritance to create ABCs, rather than the more " "cumbersome metaclass=ABCMeta. Patch by Bruno Dupuis." msgstr "" "`Issue #16049 `__: Add abc.ABC class to " "enable the use of inheritance to create ABCs, rather than the more " "cumbersome metaclass=ABCMeta. Patch by Bruno Dupuis." #: ../../../Misc/NEWS:9791 msgid "" "Expose the TCP_FASTOPEN and MSG_FASTOPEN flags in socket when they're " "available." msgstr "" #: ../../../Misc/NEWS:9794 msgid "" "`Issue #15701 `__: Add a .headers attribute " "to urllib.error.HTTPError. Patch contributed by Berker Peksag." msgstr "" "`Issue #15701 `__: Add a .headers attribute " "to urllib.error.HTTPError. Patch contributed by Berker Peksag." #: ../../../Misc/NEWS:9797 msgid "" "`Issue #15872 `__: Fix 3.3 regression " "introduced by the new fd-based shutil.rmtree that caused it to not ignore " "certain errors when ignore_errors was set. Patch by Alessandro Moura and " "Serhiy Storchaka." msgstr "" "`Issue #15872 `__: Fix 3.3 regression " "introduced by the new fd-based shutil.rmtree that caused it to not ignore " "certain errors when ignore_errors was set. Patch by Alessandro Moura and " "Serhiy Storchaka." #: ../../../Misc/NEWS:9801 msgid "" "`Issue #16248 `__: Disable code execution " "from the user's home directory by tkinter when the -E flag is passed to " "Python. Patch by Zachary Ware." msgstr "" "`Issue #16248 `__: Disable code execution " "from the user's home directory by tkinter when the -E flag is passed to " "Python. Patch by Zachary Ware." #: ../../../Misc/NEWS:9804 msgid "" "`Issue #13390 `__: New function :func:`sys." "getallocatedblocks()` returns the number of memory blocks currently " "allocated." msgstr "" "`Issue #13390 `__: New function :func:`sys." "getallocatedblocks()` returns the number of memory blocks currently " "allocated." #: ../../../Misc/NEWS:9807 msgid "" "`Issue #16628 `__: Fix a memory leak in " "ctypes.resize()." msgstr "" "`Issue #16628 `__: Fix a memory leak in " "ctypes.resize()." #: ../../../Misc/NEWS:9809 msgid "" "`Issue #13614 `__: Fix setup.py register " "failure with invalid rst in description. Patch by Julien Courteau and Pierre " "Paul Lefebvre." msgstr "" "`Issue #13614 `__: Fix setup.py register " "failure with invalid rst in description. Patch by Julien Courteau and Pierre " "Paul Lefebvre." #: ../../../Misc/NEWS:9812 msgid "" "`Issue #13512 `__: Create ~/.pypirc securely " "(CVE-2011-4944). Initial patch by Philip Jenvey, tested by Mageia and " "Debian." msgstr "" "`Issue #13512 `__: Create ~/.pypirc securely " "(CVE-2011-4944). Initial patch by Philip Jenvey, tested by Mageia and " "Debian." #: ../../../Misc/NEWS:9815 msgid "" "`Issue #7719 `__: Make distutils ignore ``." "nfs*`` files instead of choking later on. Initial patch by SilentGhost and " "Jeff Ramnani." msgstr "" "`Issue #7719 `__: Make distutils ignore ``." "nfs*`` files instead of choking later on. Initial patch by SilentGhost and " "Jeff Ramnani." #: ../../../Misc/NEWS:9818 msgid "" "`Issue #13120 `__: Allow calling pdb." "set_trace() from thread. Patch by Ilya Sandler." msgstr "" "`Issue #13120 `__: Allow calling pdb." "set_trace() from thread. Patch by Ilya Sandler." #: ../../../Misc/NEWS:9821 msgid "" "`Issue #16585 `__: Make CJK encoders support " "error handlers that return bytes per PEP 383." msgstr "" "`Issue #16585 `__: Make CJK encoders support " "error handlers that return bytes per PEP 383." #: ../../../Misc/NEWS:9824 msgid "" "`Issue #10182 `__: The re module doesn't " "truncate indices to 32 bits anymore. Patch by Serhiy Storchaka." msgstr "" "`Issue #10182 `__: The re module doesn't " "truncate indices to 32 bits anymore. Patch by Serhiy Storchaka." #: ../../../Misc/NEWS:9827 msgid "" "`Issue #16333 `__: use (\",\", \": \") as " "default separator in json when indent is specified, to avoid trailing " "whitespace. Patch by Serhiy Storchaka." msgstr "" "`Issue #16333 `__: use (\",\", \": \") as " "default separator in json when indent is specified, to avoid trailing " "whitespace. Patch by Serhiy Storchaka." #: ../../../Misc/NEWS:9830 msgid "" "`Issue #16573 `__: In 2to3, treat enumerate() " "like a consuming call, so superfluous list() calls aren't added to filter(), " "map(), and zip() which are directly passed enumerate()." msgstr "" "`Issue #16573 `__: In 2to3, treat enumerate() " "like a consuming call, so superfluous list() calls aren't added to filter(), " "map(), and zip() which are directly passed enumerate()." #: ../../../Misc/NEWS:9834 msgid "" "`Issue #16464 `__: Reset the Content-Length " "header when a urllib Request is reused with new data." msgstr "" "`Issue #16464 `__: Reset the Content-Length " "header when a urllib Request is reused with new data." #: ../../../Misc/NEWS:9837 msgid "" "`Issue #12848 `__: The pure Python pickle " "implementation now treats object lengths as unsigned 32-bit integers, like " "the C implementation does. Patch by Serhiy Storchaka." msgstr "" "`Issue #12848 `__: The pure Python pickle " "implementation now treats object lengths as unsigned 32-bit integers, like " "the C implementation does. Patch by Serhiy Storchaka." #: ../../../Misc/NEWS:9841 msgid "" "`Issue #16423 `__: urllib.request now has " "support for ``data:`` URLs. Patch by Mathias Panzenböck." msgstr "" "`Issue #16423 `__: urllib.request now has " "support for ``data:`` URLs. Patch by Mathias Panzenböck." #: ../../../Misc/NEWS:9844 msgid "" "`Issue #4473 `__: Add a POP3.stls() to switch " "a clear-text POP3 session into an encrypted POP3 session, on supported " "servers. Patch by Lorenzo Catucci." msgstr "" "`Issue #4473 `__: Add a POP3.stls() to switch " "a clear-text POP3 session into an encrypted POP3 session, on supported " "servers. Patch by Lorenzo Catucci." #: ../../../Misc/NEWS:9847 msgid "" "`Issue #4473 `__: Add a POP3.capa() method to " "query the capabilities advertised by the POP3 server. Patch by Lorenzo " "Catucci." msgstr "" "`Issue #4473 `__: Add a POP3.capa() method to " "query the capabilities advertised by the POP3 server. Patch by Lorenzo " "Catucci." #: ../../../Misc/NEWS:9850 msgid "" "`Issue #4473 `__: Ensure the socket is " "shutdown cleanly in POP3.close(). Patch by Lorenzo Catucci." msgstr "" "`Issue #4473 `__: Ensure the socket is " "shutdown cleanly in POP3.close(). Patch by Lorenzo Catucci." #: ../../../Misc/NEWS:9853 msgid "" "`Issue #16522 `__: added FAIL_FAST flag to " "doctest." msgstr "" "`Issue #16522 `__: added FAIL_FAST flag to " "doctest." #: ../../../Misc/NEWS:9855 msgid "" "`Issue #15627 `__: Add the importlib.abc." "InspectLoader.source_to_code() method." msgstr "" "`Issue #15627 `__: Add the importlib.abc." "InspectLoader.source_to_code() method." #: ../../../Misc/NEWS:9857 msgid "" "`Issue #16408 `__: Fix file descriptors not " "being closed in error conditions in the zipfile module. Patch by Serhiy " "Storchaka." msgstr "" "`Issue #16408 `__: Fix file descriptors not " "being closed in error conditions in the zipfile module. Patch by Serhiy " "Storchaka." #: ../../../Misc/NEWS:9860 msgid "" "`Issue #14631 `__: Add a new :class:`weakref." "WeakMethod` to simulate weak references to bound methods." msgstr "" "`Issue #14631 `__: Add a new :class:`weakref." "WeakMethod` to simulate weak references to bound methods." #: ../../../Misc/NEWS:9863 msgid "" "`Issue #16469 `__: Fix exceptions from float -" "> Fraction and Decimal -> Fraction conversions for special values to be " "consistent with those for float -> int and Decimal -> int. Patch by Alexey " "Kachayev." msgstr "" "`Issue #16469 `__: Fix exceptions from float -" "> Fraction and Decimal -> Fraction conversions for special values to be " "consistent with those for float -> int and Decimal -> int. Patch by Alexey " "Kachayev." #: ../../../Misc/NEWS:9867 msgid "" "`Issue #16481 `__: multiprocessing no longer " "leaks process handles on Windows." msgstr "" "`Issue #16481 `__: multiprocessing no longer " "leaks process handles on Windows." #: ../../../Misc/NEWS:9869 msgid "" "`Issue #12428 `__: Add a pure Python " "implementation of functools.partial(). Patch by Brian Thorne." msgstr "" "`Issue #12428 `__: Add a pure Python " "implementation of functools.partial(). Patch by Brian Thorne." #: ../../../Misc/NEWS:9872 msgid "" "`Issue #16140 `__: The subprocess module no " "longer double closes its child subprocess.PIPE parent file descriptors on " "child error prior to exec()." msgstr "" "`Issue #16140 `__: The subprocess module no " "longer double closes its child subprocess.PIPE parent file descriptors on " "child error prior to exec()." #: ../../../Misc/NEWS:9875 msgid "" "Remove a bare print to stdout from the subprocess module that could have " "happened if the child process wrote garbage to its pre-exec error pipe." msgstr "" #: ../../../Misc/NEWS:9878 msgid "" "The subprocess module now raises its own SubprocessError instead of a " "RuntimeError in various error situations which should not normally happen." msgstr "" #: ../../../Misc/NEWS:9881 msgid "" "`Issue #16327 `__: The subprocess module no " "longer leaks file descriptors used for stdin/stdout/stderr pipes to the " "child when fork() fails." msgstr "" "`Issue #16327 `__: The subprocess module no " "longer leaks file descriptors used for stdin/stdout/stderr pipes to the " "child when fork() fails." #: ../../../Misc/NEWS:9884 msgid "" "`Issue #14396 `__: Handle the odd rare case " "of waitpid returning 0 when not expected in subprocess.Popen.wait()." msgstr "" "`Issue #14396 `__: Handle the odd rare case " "of waitpid returning 0 when not expected in subprocess.Popen.wait()." #: ../../../Misc/NEWS:9887 msgid "" "`Issue #16411 `__: Fix a bug where zlib." "decompressobj().flush() might try to access previously-freed memory. Patch " "by Serhiy Storchaka." msgstr "" "`Issue #16411 `__: Fix a bug where zlib." "decompressobj().flush() might try to access previously-freed memory. Patch " "by Serhiy Storchaka." #: ../../../Misc/NEWS:9890 msgid "" "`Issue #16357 `__: fix calling accept() on a " "SSLSocket created through SSLContext.wrap_socket(). Original patch by Jeff " "McNeil." msgstr "" "`Issue #16357 `__: fix calling accept() on a " "SSLSocket created through SSLContext.wrap_socket(). Original patch by Jeff " "McNeil." #: ../../../Misc/NEWS:9893 msgid "" "`Issue #16409 `__: The reporthook callback " "made by the legacy urllib.request.urlretrieve API now properly supplies a " "constant non-zero block_size as it did in Python 3.2 and 2.7. This matches " "the behavior of urllib.request.URLopener.retrieve." msgstr "" "`Issue #16409 `__: The reporthook callback " "made by the legacy urllib.request.urlretrieve API now properly supplies a " "constant non-zero block_size as it did in Python 3.2 and 2.7. This matches " "the behavior of urllib.request.URLopener.retrieve." #: ../../../Misc/NEWS:9898 msgid "" "`Issue #16431 `__: Use the type information " "when constructing a Decimal subtype from a Decimal argument." msgstr "" "`Issue #16431 `__: Use the type information " "when constructing a Decimal subtype from a Decimal argument." #: ../../../Misc/NEWS:9901 msgid "" "`Issue #15641 `__: Clean up deprecated " "classes from importlib. Patch by Taras Lyapun." msgstr "" "`Issue #15641 `__: Clean up deprecated " "classes from importlib. Patch by Taras Lyapun." #: ../../../Misc/NEWS:9904 msgid "" "`Issue #16350 `__: zlib.decompressobj()." "decompress() now accumulates data from successive calls after EOF in " "unused_data, instead of only saving the argument to the last call. " "decompressobj().flush() now correctly sets unused_data and unconsumed_tail. " "A bug in the handling of MemoryError when setting the unconsumed_tail " "attribute has also been fixed. Patch by Serhiy Storchaka." msgstr "" "`Issue #16350 `__: zlib.decompressobj()." "decompress() now accumulates data from successive calls after EOF in " "unused_data, instead of only saving the argument to the last call. " "decompressobj().flush() now correctly sets unused_data and unconsumed_tail. " "A bug in the handling of MemoryError when setting the unconsumed_tail " "attribute has also been fixed. Patch by Serhiy Storchaka." #: ../../../Misc/NEWS:9910 msgid "" "`Issue #12759 `__: sre_parse now raises a " "proper error when the name of the group is missing. Initial patch by Serhiy " "Storchaka." msgstr "" "`Issue #12759 `__: sre_parse now raises a " "proper error when the name of the group is missing. Initial patch by Serhiy " "Storchaka." #: ../../../Misc/NEWS:9913 msgid "" "`Issue #16152 `__: fix tokenize to ignore " "whitespace at the end of the code when no newline is found. Patch by Ned " "Batchelder." msgstr "" "`Issue #16152 `__: fix tokenize to ignore " "whitespace at the end of the code when no newline is found. Patch by Ned " "Batchelder." #: ../../../Misc/NEWS:9916 msgid "" "`Issue #16284 `__: Prevent keeping " "unnecessary references to worker functions in concurrent.futures " "ThreadPoolExecutor." msgstr "" "`Issue #16284 `__: Prevent keeping " "unnecessary references to worker functions in concurrent.futures " "ThreadPoolExecutor." #: ../../../Misc/NEWS:9919 msgid "" "`Issue #16230 `__: Fix a crash in select." "select() when one of the lists changes size while iterated on. Patch by " "Serhiy Storchaka." msgstr "" "`Issue #16230 `__: Fix a crash in select." "select() when one of the lists changes size while iterated on. Patch by " "Serhiy Storchaka." #: ../../../Misc/NEWS:9922 msgid "" "`Issue #16228 `__: Fix a crash in the json " "module where a list changes size while it is being encoded. Patch by Serhiy " "Storchaka." msgstr "" "`Issue #16228 `__: Fix a crash in the json " "module where a list changes size while it is being encoded. Patch by Serhiy " "Storchaka." #: ../../../Misc/NEWS:9925 msgid "" "`Issue #16351 `__: New function gc." "get_stats() returns per-generation collection statistics." msgstr "" "`Issue #16351 `__: New function gc." "get_stats() returns per-generation collection statistics." #: ../../../Misc/NEWS:9928 msgid "" "`Issue #14897 `__: Enhance error messages of " "struct.pack and struct.pack_into. Patch by Matti Mäki." msgstr "" "`Issue #14897 `__: Enhance error messages of " "struct.pack and struct.pack_into. Patch by Matti Mäki." #: ../../../Misc/NEWS:9931 msgid "" "`Issue #16316 `__: mimetypes now recognizes " "the .xz and .txz (.tar.xz) extensions. Patch by Serhiy Storchaka." msgstr "" "`Issue #16316 `__: mimetypes now recognizes " "the .xz and .txz (.tar.xz) extensions. Patch by Serhiy Storchaka." #: ../../../Misc/NEWS:9934 msgid "" "`Issue #12890 `__: cgitb no longer prints " "spurious

tags in text mode when the logdir option is specified." msgstr "" "`Issue #12890 `__: cgitb no longer prints " "spurious

tags in text mode when the logdir option is specified." #: ../../../Misc/NEWS:9937 msgid "" "`Issue #16307 `__: Fix multiprocessing.Pool." "map_async not calling its callbacks. Patch by Janne Karila." msgstr "" "`Issue #16307 `__: Fix multiprocessing.Pool." "map_async not calling its callbacks. Patch by Janne Karila." #: ../../../Misc/NEWS:9940 msgid "" "`Issue #16305 `__: Fix a segmentation fault " "occurring when interrupting math.factorial." msgstr "" "`Issue #16305 `__: Fix a segmentation fault " "occurring when interrupting math.factorial." #: ../../../Misc/NEWS:9943 msgid "" "`Issue #16116 `__: Fix include and library " "paths to be correct when building C extensions in venvs." msgstr "" "`Issue #16116 `__: Fix include and library " "paths to be correct when building C extensions in venvs." #: ../../../Misc/NEWS:9946 msgid "" "`Issue #16245 `__: Fix the value of a few " "entities in html.entities.html5." msgstr "" "`Issue #16245 `__: Fix the value of a few " "entities in html.entities.html5." #: ../../../Misc/NEWS:9948 msgid "" "`Issue #16301 `__: Fix the localhost " "verification in urllib/request.py for ``file://`` urls." msgstr "" "`Issue #16301 `__: Fix the localhost " "verification in urllib/request.py for ``file://`` urls." #: ../../../Misc/NEWS:9951 msgid "" "`Issue #16250 `__: Fix the invocations of " "URLError which had misplaced filename attribute for exception." msgstr "" "`Issue #16250 `__: Fix the invocations of " "URLError which had misplaced filename attribute for exception." #: ../../../Misc/NEWS:9954 msgid "" "`Issue #10836 `__: Fix exception raised when " "file not found in urlretrieve Initial patch by Ezio Melotti." msgstr "" "`Issue #10836 `__: Fix exception raised when " "file not found in urlretrieve Initial patch by Ezio Melotti." #: ../../../Misc/NEWS:9957 msgid "" "`Issue #14398 `__: Fix size truncation and " "overflow bugs in the bz2 module." msgstr "" "`Issue #14398 `__: Fix size truncation and " "overflow bugs in the bz2 module." #: ../../../Misc/NEWS:9959 msgid "" "`Issue #12692 `__: Fix resource leak in " "urllib.request when talking to an HTTP server that does not include a " "``Connection: close`` header in its responses." msgstr "" "`Issue #12692 `__: Fix resource leak in " "urllib.request when talking to an HTTP server that does not include a " "``Connection: close`` header in its responses." #: ../../../Misc/NEWS:9962 msgid "" "`Issue #12034 `__: Fix bogus caching of " "result in check_GetFinalPathNameByHandle. Patch by Atsuo Ishimoto." msgstr "" "`Issue #12034 `__: Fix bogus caching of " "result in check_GetFinalPathNameByHandle. Patch by Atsuo Ishimoto." #: ../../../Misc/NEWS:9965 msgid "" "Improve performance of `lzma.LZMAFile` (see also `issue #16034 `__)." msgstr "" #: ../../../Misc/NEWS:9967 msgid "" "`Issue #16220 `__: wsgiref now always calls " "close() on an iterable response. Patch by Brent Tubbs." msgstr "" "`Issue #16220 `__: wsgiref now always calls " "close() on an iterable response. Patch by Brent Tubbs." #: ../../../Misc/NEWS:9970 msgid "" "`Issue #16270 `__: urllib may hang when used " "for retrieving files via FTP by using a context manager. Patch by Giampaolo " "Rodola'." msgstr "" "`Issue #16270 `__: urllib may hang when used " "for retrieving files via FTP by using a context manager. Patch by Giampaolo " "Rodola'." #: ../../../Misc/NEWS:9973 msgid "" "`Issue #16461 `__: Wave library should be " "able to deal with 4GB wav files, and sample rate of 44100 Hz." msgstr "" "`Issue #16461 `__: Wave library should be " "able to deal with 4GB wav files, and sample rate of 44100 Hz." #: ../../../Misc/NEWS:9976 msgid "" "`Issue #16176 `__: Properly identify Windows " "8 via platform.platform()" msgstr "" "`Issue #16176 `__: Properly identify Windows " "8 via platform.platform()" #: ../../../Misc/NEWS:9978 msgid "" "`Issue #16088 `__: BaseHTTPRequestHandler's " "send_error method includes a Content-Length header in its response now. " "Patch by Antoine Pitrou." msgstr "" "`Issue #16088 `__: BaseHTTPRequestHandler's " "send_error method includes a Content-Length header in its response now. " "Patch by Antoine Pitrou." #: ../../../Misc/NEWS:9981 msgid "" "`Issue #16114 `__: The subprocess module no " "longer provides a misleading error message stating that args[0] did not " "exist when either the cwd or executable keyword arguments specified a path " "that did not exist." msgstr "" "`Issue #16114 `__: The subprocess module no " "longer provides a misleading error message stating that args[0] did not " "exist when either the cwd or executable keyword arguments specified a path " "that did not exist." #: ../../../Misc/NEWS:9985 msgid "" "`Issue #16169 `__: Fix ctypes.WinError()'s " "confusion between errno and winerror." msgstr "" "`Issue #16169 `__: Fix ctypes.WinError()'s " "confusion between errno and winerror." #: ../../../Misc/NEWS:9987 msgid "" "`Issue #16110 `__: logging.fileConfig now " "accepts a pre-initialised ConfigParser instance." msgstr "" "`Issue #16110 `__: logging.fileConfig now " "accepts a pre-initialised ConfigParser instance." #: ../../../Misc/NEWS:9990 msgid "" "`Issue #1492704 `__: shutil.copyfile() " "raises a distinct SameFileError now if source and destination are the same " "file. Patch by Atsuo Ishimoto." msgstr "" "`Issue #1492704 `__: shutil.copyfile() " "raises a distinct SameFileError now if source and destination are the same " "file. Patch by Atsuo Ishimoto." #: ../../../Misc/NEWS:9993 msgid "" "`Issue #13896 `__: Make shelf instances work " "with 'with' as context managers. Original patch by Filip Gruszczyński." msgstr "" "`Issue #13896 `__: Make shelf instances work " "with 'with' as context managers. Original patch by Filip Gruszczyński." #: ../../../Misc/NEWS:9996 msgid "" "`Issue #15417 `__: Add support for csh and " "fish in venv activation scripts." msgstr "" "`Issue #15417 `__: Add support for csh and " "fish in venv activation scripts." #: ../../../Misc/NEWS:9998 msgid "" "`Issue #14377 `__: ElementTree.write and some " "of the module-level functions have a new parameter - *short_empty_elements*. " "It controls how elements with no contents are emitted." msgstr "" "`Issue #14377 `__: ElementTree.write and some " "of the module-level functions have a new parameter - *short_empty_elements*. " "It controls how elements with no contents are emitted." #: ../../../Misc/NEWS:10002 msgid "" "`Issue #16089 `__: Allow ElementTree." "TreeBuilder to work again with a non-Element element_factory (fixes a " "regression in SimpleTAL)." msgstr "" "`Issue #16089 `__: Allow ElementTree." "TreeBuilder to work again with a non-Element element_factory (fixes a " "regression in SimpleTAL)." #: ../../../Misc/NEWS:10005 msgid "" "`Issue #9650 `__: List commonly used format " "codes in time.strftime and time.strptime docsttings. Original patch by Mike " "Hoy." msgstr "" "`Issue #9650 `__: List commonly used format " "codes in time.strftime and time.strptime docsttings. Original patch by Mike " "Hoy." #: ../../../Misc/NEWS:10008 msgid "" "`Issue #15452 `__: logging configuration " "socket listener now has a verify option that allows an application to apply " "a verification function to the received configuration data before it is " "acted upon." msgstr "" "`Issue #15452 `__: logging configuration " "socket listener now has a verify option that allows an application to apply " "a verification function to the received configuration data before it is " "acted upon." #: ../../../Misc/NEWS:10012 msgid "" "`Issue #16034 `__: Fix performance " "regressions in the new `bz2.BZ2File` implementation. Initial patch by " "Serhiy Storchaka." msgstr "" "`Issue #16034 `__: Fix performance " "regressions in the new `bz2.BZ2File` implementation. Initial patch by " "Serhiy Storchaka." #: ../../../Misc/NEWS:10015 msgid "" "`pty.spawn()` now returns the child process status returned by `os." "waitpid()`." msgstr "" #: ../../../Misc/NEWS:10017 msgid "" "`Issue #15756 `__: `subprocess.poll()` now " "properly handles `errno.ECHILD` to return a returncode of 0 when the child " "has already exited or cannot be waited on." msgstr "" "`Issue #15756 `__: `subprocess.poll()` now " "properly handles `errno.ECHILD` to return a returncode of 0 when the child " "has already exited or cannot be waited on." #: ../../../Misc/NEWS:10021 msgid "" "`Issue #15323 `__: Improve failure message of " "`Mock.assert_called_once_with()`." msgstr "" "`Issue #15323 `__: Improve failure message of " "`Mock.assert_called_once_with()`." #: ../../../Misc/NEWS:10023 msgid "" "`Issue #16064 `__: ``unittest -m`` claims " "executable is \"python\", not \"python3\"." msgstr "" "`Issue #16064 `__: ``unittest -m`` claims " "executable is \"python\", not \"python3\"." #: ../../../Misc/NEWS:10025 msgid "" "`Issue #12376 `__: Pass on parameters in " "`TextTestResult.__init__()` super call." msgstr "" "`Issue #12376 `__: Pass on parameters in " "`TextTestResult.__init__()` super call." #: ../../../Misc/NEWS:10027 msgid "" "`Issue #15222 `__: Insert blank line after " "each message in mbox mailboxes." msgstr "" "`Issue #15222 `__: Insert blank line after " "each message in mbox mailboxes." #: ../../../Misc/NEWS:10029 msgid "" "`Issue #16013 `__: Fix `csv.Reader` parsing " "issue with ending quote characters. Patch by Serhiy Storchaka." msgstr "" "`Issue #16013 `__: Fix `csv.Reader` parsing " "issue with ending quote characters. Patch by Serhiy Storchaka." #: ../../../Misc/NEWS:10032 msgid "" "`Issue #15421 `__: Fix an OverflowError in " "`Calendar.itermonthdates()` after `datetime.MAXYEAR`. Patch by Cédric Krier." msgstr "" "`Issue #15421 `__: Fix an OverflowError in " "`Calendar.itermonthdates()` after `datetime.MAXYEAR`. Patch by Cédric Krier." #: ../../../Misc/NEWS:10035 msgid "" "`Issue #16112 `__: platform.architecture does " "not correctly escape argument to /usr/bin/file. Patch by David Benjamin." msgstr "" "`Issue #16112 `__: platform.architecture does " "not correctly escape argument to /usr/bin/file. Patch by David Benjamin." #: ../../../Misc/NEWS:10038 msgid "" "`Issue #15970 `__: `xml.etree.ElementTree` " "now serializes correctly the empty HTML elements 'meta' and 'param'." msgstr "" "`Issue #15970 `__: `xml.etree.ElementTree` " "now serializes correctly the empty HTML elements 'meta' and 'param'." #: ../../../Misc/NEWS:10041 msgid "" "`Issue #15842 `__: The `SocketIO.{readable," "writable,seekable}` methods now raise ValueError when the file-like object " "is closed. Patch by Alessandro Moura." msgstr "" "`Issue #15842 `__: The `SocketIO.{readable," "writable,seekable}` methods now raise ValueError when the file-like object " "is closed. Patch by Alessandro Moura." #: ../../../Misc/NEWS:10044 msgid "" "`Issue #15876 `__: Fix a refleak in the " "`curses` module: window.encoding." msgstr "" "`Issue #15876 `__: Fix a refleak in the " "`curses` module: window.encoding." #: ../../../Misc/NEWS:10046 msgid "" "`Issue #15881 `__: Fix `atexit` hook in " "`multiprocessing`. Original patch by Chris McDonough." msgstr "" "`Issue #15881 `__: Fix `atexit` hook in " "`multiprocessing`. Original patch by Chris McDonough." #: ../../../Misc/NEWS:10049 msgid "" "`Issue #15841 `__: The readable(), writable() " "and seekable() methods of `io.BytesIO` and `io.StringIO` objects now raise " "ValueError when the object has been closed. Patch by Alessandro Moura." msgstr "" "`Issue #15841 `__: The readable(), writable() " "and seekable() methods of `io.BytesIO` and `io.StringIO` objects now raise " "ValueError when the object has been closed. Patch by Alessandro Moura." #: ../../../Misc/NEWS:10053 msgid "" "`Issue #15447 `__: Use `subprocess.DEVNULL` " "in webbrowser, instead of opening `os.devnull` explicitly and leaving it " "open." msgstr "" "`Issue #15447 `__: Use `subprocess.DEVNULL` " "in webbrowser, instead of opening `os.devnull` explicitly and leaving it " "open." #: ../../../Misc/NEWS:10056 msgid "" "`Issue #15509 `__: `webbrowser.UnixBrowser` " "no longer passes empty arguments to Popen when ``%action`` substitutions " "produce empty strings." msgstr "" "`Issue #15509 `__: `webbrowser.UnixBrowser` " "no longer passes empty arguments to Popen when ``%action`` substitutions " "produce empty strings." #: ../../../Misc/NEWS:10059 msgid "" "`Issue #12776 `__, `issue #11839 `__: Call `argparse` type function (specified by " "add_argument) only once. Before, the type function was called twice in the " "case where the default was specified and the argument was given as well. " "This was especially problematic for the FileType type, as a default file " "would always be opened, even if a file argument was specified on the command " "line." msgstr "" "`Issue #12776 `__, `issue #11839 `__: Call `argparse` type function (specified by " "add_argument) only once. Before, the type function was called twice in the " "case where the default was specified and the argument was given as well. " "This was especially problematic for the FileType type, as a default file " "would always be opened, even if a file argument was specified on the command " "line." #: ../../../Misc/NEWS:10065 msgid "" "`Issue #15906 `__: Fix a regression in " "argparse caused by the preceding change, when ``action='append'``, " "``type='str'`` and ``default=[]``." msgstr "" "`Issue #15906 `__: Fix a regression in " "argparse caused by the preceding change, when ``action='append'``, " "``type='str'`` and ``default=[]``." #: ../../../Misc/NEWS:10068 msgid "" "`Issue #16113 `__: Added sha3 module based on " "the Keccak reference implementation 3.2. The `hashlib` module has four " "additional hash algorithms: `sha3_224`, `sha3_256`, `sha3_384` and " "`sha3_512`. As part of the patch some common code was moved from " "_hashopenssl.c to hashlib.h." msgstr "" "`Issue #16113 `__: Added sha3 module based on " "the Keccak reference implementation 3.2. The `hashlib` module has four " "additional hash algorithms: `sha3_224`, `sha3_256`, `sha3_384` and " "`sha3_512`. As part of the patch some common code was moved from " "_hashopenssl.c to hashlib.h." #: ../../../Misc/NEWS:10073 msgid "" "ctypes.call_commethod was removed, since its only usage was in the defunct " "samples directory." msgstr "" #: ../../../Misc/NEWS:10076 msgid "" "`Issue #16692 `__: Added TLSv1.1 and TLSv1.2 " "support for the ssl modules." msgstr "" "`Issue #16692 `__: Added TLSv1.1 and TLSv1.2 " "support for the ssl modules." #: ../../../Misc/NEWS:10078 msgid "" "`Issue #16832 `__: add abc.get_cache_token() " "to expose cache validity checking support in ABCMeta." msgstr "" "`Issue #16832 `__: add abc.get_cache_token() " "to expose cache validity checking support in ABCMeta." #: ../../../Misc/NEWS:10084 msgid "" "`Issue #18429 `__: Format / Format Paragraph, " "now works when comment blocks are selected. As with text blocks, this works " "best when the selection only includes complete lines." msgstr "" "`Issue #18429 `__: Format / Format Paragraph, " "now works when comment blocks are selected. As with text blocks, this works " "best when the selection only includes complete lines." #: ../../../Misc/NEWS:10088 msgid "" "`Issue #18226 `__: Add docstrings and " "unittests for FormatParagraph.py. Original patches by Todd Rovito and Phil " "Webster." msgstr "" "`Issue #18226 `__: Add docstrings and " "unittests for FormatParagraph.py. Original patches by Todd Rovito and Phil " "Webster." #: ../../../Misc/NEWS:10091 msgid "" "`Issue #18279 `__: Format - Strip trailing " "whitespace no longer marks a file as changed when it has not been changed. " "This fix followed the addition of a test file originally written by Phil " "Webster (the issue's main goal)." msgstr "" "`Issue #18279 `__: Format - Strip trailing " "whitespace no longer marks a file as changed when it has not been changed. " "This fix followed the addition of a test file originally written by Phil " "Webster (the issue's main goal)." #: ../../../Misc/NEWS:10095 msgid "" "`Issue #7136 `__: In the Idle File menu, \"New " "Window\" is renamed \"New File\". Patch by Tal Einat, Roget Serwy, and Todd " "Rovito." msgstr "" "`Issue #7136 `__: In the Idle File menu, \"New " "Window\" is renamed \"New File\". Patch by Tal Einat, Roget Serwy, and Todd " "Rovito." #: ../../../Misc/NEWS:10098 msgid "Remove dead imports of imp." msgstr "" #: ../../../Misc/NEWS:10100 msgid "" "`Issue #18196 `__: Avoid displaying spurious " "SystemExit tracebacks." msgstr "" "`Issue #18196 `__: Avoid displaying spurious " "SystemExit tracebacks." #: ../../../Misc/NEWS:10102 msgid "" "`Issue #5492 `__: Avoid traceback when exiting " "IDLE caused by a race condition." msgstr "" "`Issue #5492 `__: Avoid traceback when exiting " "IDLE caused by a race condition." #: ../../../Misc/NEWS:10104 msgid "" "`Issue #17511 `__: Keep IDLE find dialog open " "after clicking \"Find Next\". Original patch by Sarah K." msgstr "" "`Issue #17511 `__: Keep IDLE find dialog open " "after clicking \"Find Next\". Original patch by Sarah K." #: ../../../Misc/NEWS:10107 msgid "" "`Issue #18055 `__: Move IDLE off of imp and " "on to importlib." msgstr "" "`Issue #18055 `__: Move IDLE off of imp and " "on to importlib." #: ../../../Misc/NEWS:10109 msgid "" "`Issue #15392 `__: Create a unittest " "framework for IDLE. Initial patch by Rajagopalasarma Jayakrishnan. See Lib/" "idlelib/idle_test/README.txt for how to run Idle tests." msgstr "" "`Issue #15392 `__: Create a unittest " "framework for IDLE. Initial patch by Rajagopalasarma Jayakrishnan. See Lib/" "idlelib/idle_test/README.txt for how to run Idle tests." #: ../../../Misc/NEWS:10113 msgid "" "`Issue #14146 `__: Highlight source line " "while debugging on Windows." msgstr "" "`Issue #14146 `__: Highlight source line " "while debugging on Windows." #: ../../../Misc/NEWS:10115 msgid "" "`Issue #17838 `__: Allow sys.stdin to be " "reassigned." msgstr "" "`Issue #17838 `__: Allow sys.stdin to be " "reassigned." #: ../../../Misc/NEWS:10117 msgid "" "`Issue #13495 `__: Avoid loading the color " "delegator twice in IDLE." msgstr "" "`Issue #13495 `__: Avoid loading the color " "delegator twice in IDLE." #: ../../../Misc/NEWS:10119 msgid "" "`Issue #17798 `__: Allow IDLE to edit new " "files when specified on command line." msgstr "" "`Issue #17798 `__: Allow IDLE to edit new " "files when specified on command line." #: ../../../Misc/NEWS:10121 msgid "" "`Issue #14735 `__: Update IDLE docs to omit " "\"Control-z on Windows\"." msgstr "" "`Issue #14735 `__: Update IDLE docs to omit " "\"Control-z on Windows\"." #: ../../../Misc/NEWS:10123 msgid "" "`Issue #17532 `__: Always include Options " "menu for IDLE on OS X. Patch by Guilherme Simões." msgstr "" "`Issue #17532 `__: Always include Options " "menu for IDLE on OS X. Patch by Guilherme Simões." #: ../../../Misc/NEWS:10126 msgid "" "`Issue #17585 `__: Fixed IDLE regression. Now " "closes when using exit() or quit()." msgstr "" "`Issue #17585 `__: Fixed IDLE regression. Now " "closes when using exit() or quit()." #: ../../../Misc/NEWS:10128 msgid "" "`Issue #17657 `__: Show full Tk version in " "IDLE's about dialog. Patch by Todd Rovito." msgstr "" "`Issue #17657 `__: Show full Tk version in " "IDLE's about dialog. Patch by Todd Rovito." #: ../../../Misc/NEWS:10131 msgid "" "`Issue #17613 `__: Prevent traceback when " "removing syntax colorizer in IDLE." msgstr "" "`Issue #17613 `__: Prevent traceback when " "removing syntax colorizer in IDLE." #: ../../../Misc/NEWS:10133 msgid "" "`Issue #1207589 `__: Backwards-" "compatibility patch for right-click menu in IDLE." msgstr "" "`Issue #1207589 `__: Backwards-" "compatibility patch for right-click menu in IDLE." #: ../../../Misc/NEWS:10135 msgid "" "`Issue #16887 `__: IDLE now accepts Cancel in " "tabify/untabify dialog box." msgstr "" "`Issue #16887 `__: IDLE now accepts Cancel in " "tabify/untabify dialog box." #: ../../../Misc/NEWS:10137 msgid "" "`Issue #17625 `__: In IDLE, close the replace " "dialog after it is used." msgstr "" "`Issue #17625 `__: In IDLE, close the replace " "dialog after it is used." #: ../../../Misc/NEWS:10139 msgid "" "`Issue #14254 `__: IDLE now handles readline " "correctly across shell restarts." msgstr "" "`Issue #14254 `__: IDLE now handles readline " "correctly across shell restarts." #: ../../../Misc/NEWS:10141 msgid "" "`Issue #17614 `__: IDLE no longer raises " "exception when quickly closing a file." msgstr "" "`Issue #17614 `__: IDLE no longer raises " "exception when quickly closing a file." #: ../../../Misc/NEWS:10143 msgid "" "`Issue #6698 `__: IDLE now opens just an " "editor window when configured to do so." msgstr "" "`Issue #6698 `__: IDLE now opens just an " "editor window when configured to do so." #: ../../../Misc/NEWS:10145 msgid "" "`Issue #8900 `__: Using keyboard shortcuts in " "IDLE to open a file no longer raises an exception." msgstr "" "`Issue #8900 `__: Using keyboard shortcuts in " "IDLE to open a file no longer raises an exception." #: ../../../Misc/NEWS:10148 msgid "" "`Issue #6649 `__: Fixed missing exit status in " "IDLE. Patch by Guilherme Polo." msgstr "" "`Issue #6649 `__: Fixed missing exit status in " "IDLE. Patch by Guilherme Polo." #: ../../../Misc/NEWS:10150 msgid "" "`Issue #17114 `__: IDLE now uses non-strict " "config parser." msgstr "" "`Issue #17114 `__: IDLE now uses non-strict " "config parser." #: ../../../Misc/NEWS:10152 msgid "" "`Issue #9290 `__: In IDLE the sys.std* streams " "now implement io.TextIOBase interface and support all mandatory methods and " "properties." msgstr "" "`Issue #9290 `__: In IDLE the sys.std* streams " "now implement io.TextIOBase interface and support all mandatory methods and " "properties." #: ../../../Misc/NEWS:10155 msgid "" "`Issue #5066 `__: Update IDLE docs. Patch by " "Todd Rovito." msgstr "" "`Issue #5066 `__: Update IDLE docs. Patch by " "Todd Rovito." #: ../../../Misc/NEWS:10157 msgid "" "`Issue #16829 `__: IDLE printing no longer " "fails if there are spaces or other special characters in the file path." msgstr "" "`Issue #16829 `__: IDLE printing no longer " "fails if there are spaces or other special characters in the file path." #: ../../../Misc/NEWS:10160 msgid "" "`Issue #16491 `__: IDLE now prints chained " "exception tracebacks." msgstr "" "`Issue #16491 `__: IDLE now prints chained " "exception tracebacks." #: ../../../Misc/NEWS:10162 msgid "" "`Issue #16819 `__: IDLE method completion now " "correctly works for bytes literals." msgstr "" "`Issue #16819 `__: IDLE method completion now " "correctly works for bytes literals." #: ../../../Misc/NEWS:10164 msgid "" "`Issue #16504 `__: IDLE now catches " "SyntaxErrors raised by tokenizer. Patch by Roger Serwy." msgstr "" "`Issue #16504 `__: IDLE now catches " "SyntaxErrors raised by tokenizer. Patch by Roger Serwy." #: ../../../Misc/NEWS:10167 msgid "" "`Issue #16511 `__: Use default IDLE width and " "height if config param is not valid. Patch Serhiy Storchaka." msgstr "" "`Issue #16511 `__: Use default IDLE width and " "height if config param is not valid. Patch Serhiy Storchaka." #: ../../../Misc/NEWS:10170 msgid "" "`Issue #1207589 `__: Add Cut/Copy/Paste " "items to IDLE right click Context Menu. Patch by Todd Rovito." msgstr "" "`Issue #1207589 `__: Add Cut/Copy/Paste " "items to IDLE right click Context Menu. Patch by Todd Rovito." #: ../../../Misc/NEWS:10173 msgid "" "`Issue #16123 `__: IDLE - deprecate running " "without a subprocess. Patch by Roger Serwy." msgstr "" "`Issue #16123 `__: IDLE - deprecate running " "without a subprocess. Patch by Roger Serwy." #: ../../../Misc/NEWS:10179 msgid "" "`Issue #1666318 `__: Add a test that shutil." "copytree() retains directory permissions. Patch by Catherine Devlin." msgstr "" "`Issue #1666318 `__: Add a test that shutil." "copytree() retains directory permissions. Patch by Catherine Devlin." #: ../../../Misc/NEWS:10182 msgid "" "`Issue #18273 `__: move the tests in Lib/test/" "json_tests to Lib/test/test_json and make them discoverable by unittest. " "Patch by Zachary Ware." msgstr "" "`Issue #18273 `__: move the tests in Lib/test/" "json_tests to Lib/test/test_json and make them discoverable by unittest. " "Patch by Zachary Ware." #: ../../../Misc/NEWS:10185 msgid "Fix a fcntl test case on KFreeBSD, Debian #708653 (Petr Salinger)." msgstr "" #: ../../../Misc/NEWS:10187 msgid "" "`Issue #18396 `__: Fix spurious test failure " "in test_signal on Windows when faulthandler is enabled (Patch by Jeremy " "Kloth)" msgstr "" "`Issue #18396 `__: Fix spurious test failure " "in test_signal on Windows when faulthandler is enabled (Patch by Jeremy " "Kloth)" #: ../../../Misc/NEWS:10190 msgid "" "`Issue #17046 `__: Fix broken " "test_executable_without_cwd in test_subprocess." msgstr "" "`Issue #17046 `__: Fix broken " "test_executable_without_cwd in test_subprocess." #: ../../../Misc/NEWS:10192 msgid "" "`Issue #15415 `__: Add new temp_dir() and " "change_cwd() context managers to test.support, and refactor temp_cwd() to " "use them. Patch by Chris Jerdonek." msgstr "" "`Issue #15415 `__: Add new temp_dir() and " "change_cwd() context managers to test.support, and refactor temp_cwd() to " "use them. Patch by Chris Jerdonek." #: ../../../Misc/NEWS:10195 msgid "" "`Issue #15494 `__: test.support is now a " "package rather than a module (Initial patch by Indra Talip)" msgstr "" "`Issue #15494 `__: test.support is now a " "package rather than a module (Initial patch by Indra Talip)" #: ../../../Misc/NEWS:10198 msgid "" "`Issue #17944 `__: test_zipfile now " "discoverable and uses subclassing to generate tests for different " "compression types. Fixed a bug with skipping some tests due to use of " "exhausted iterators." msgstr "" "`Issue #17944 `__: test_zipfile now " "discoverable and uses subclassing to generate tests for different " "compression types. Fixed a bug with skipping some tests due to use of " "exhausted iterators." #: ../../../Misc/NEWS:10202 msgid "" "`Issue #18266 `__: test_largefile now works " "with unittest test discovery and supports running only selected tests. " "Patch by Zachary Ware." msgstr "" "`Issue #18266 `__: test_largefile now works " "with unittest test discovery and supports running only selected tests. " "Patch by Zachary Ware." #: ../../../Misc/NEWS:10205 msgid "" "`Issue #17767 `__: test_locale now works with " "unittest test discovery. Original patch by Zachary Ware." msgstr "" "`Issue #17767 `__: test_locale now works with " "unittest test discovery. Original patch by Zachary Ware." #: ../../../Misc/NEWS:10208 msgid "" "`Issue #18375 `__: Assume --randomize when --" "randseed is used for running the testsuite." msgstr "" "`Issue #18375 `__: Assume --randomize when --" "randseed is used for running the testsuite." #: ../../../Misc/NEWS:10211 msgid "" "`Issue #11185 `__: Fix test_wait4 under AIX. " "Patch by Sébastien Sablé." msgstr "" "`Issue #11185 `__: Fix test_wait4 under AIX. " "Patch by Sébastien Sablé." #: ../../../Misc/NEWS:10213 msgid "" "`Issue #18207 `__: Fix test_ssl for some " "versions of OpenSSL that ignore seconds in ASN1_TIME fields." msgstr "" "`Issue #18207 `__: Fix test_ssl for some " "versions of OpenSSL that ignore seconds in ASN1_TIME fields." #: ../../../Misc/NEWS:10216 msgid "" "`Issue #18094 `__: test_uuid no longer " "reports skipped tests as passed." msgstr "" "`Issue #18094 `__: test_uuid no longer " "reports skipped tests as passed." #: ../../../Misc/NEWS:10218 msgid "" "`Issue #17992 `__: Add timeouts to asyncore " "and asynchat tests so that they won't accidentally hang." msgstr "" "`Issue #17992 `__: Add timeouts to asyncore " "and asynchat tests so that they won't accidentally hang." #: ../../../Misc/NEWS:10221 msgid "" "`Issue #17833 `__: Fix test_gdb failures seen " "on machines where debug symbols for glibc are available (seen on PPC64 " "Linux)." msgstr "" "`Issue #17833 `__: Fix test_gdb failures seen " "on machines where debug symbols for glibc are available (seen on PPC64 " "Linux)." #: ../../../Misc/NEWS:10224 msgid "" "`Issue #7855 `__: Add tests for ctypes/winreg " "for issues found in IronPython. Initial patch by Dino Viehland." msgstr "" "`Issue #7855 `__: Add tests for ctypes/winreg " "for issues found in IronPython. Initial patch by Dino Viehland." #: ../../../Misc/NEWS:10227 msgid "" "`Issue #11078 `__: test___all__ now checks " "for duplicates in __all__. Initial patch by R. David Murray." msgstr "" "`Issue #11078 `__: test___all__ now checks " "for duplicates in __all__. Initial patch by R. David Murray." #: ../../../Misc/NEWS:10230 msgid "" "`Issue #17712 `__: Fix test_gdb failures on " "Ubuntu 13.04." msgstr "" "`Issue #17712 `__: Fix test_gdb failures on " "Ubuntu 13.04." #: ../../../Misc/NEWS:10232 msgid "" "`Issue #17835 `__: Fix test_io when the " "default OS pipe buffer size is larger than one million bytes." msgstr "" "`Issue #17835 `__: Fix test_io when the " "default OS pipe buffer size is larger than one million bytes." #: ../../../Misc/NEWS:10235 msgid "" "`Issue #17065 `__: Use process-unique key for " "winreg tests to avoid failures if test is run multiple times in parallel " "(eg: on a buildbot host)." msgstr "" "`Issue #17065 `__: Use process-unique key for " "winreg tests to avoid failures if test is run multiple times in parallel " "(eg: on a buildbot host)." #: ../../../Misc/NEWS:10238 msgid "" "`Issue #12820 `__: add tests for the xml.dom." "minicompat module. Patch by John Chandler and Phil Connell." msgstr "" "`Issue #12820 `__: add tests for the xml.dom." "minicompat module. Patch by John Chandler and Phil Connell." #: ../../../Misc/NEWS:10241 msgid "" "`Issue #17691 `__: test_univnewlines now " "works with unittest test discovery. Patch by Zachary Ware." msgstr "" "`Issue #17691 `__: test_univnewlines now " "works with unittest test discovery. Patch by Zachary Ware." #: ../../../Misc/NEWS:10244 msgid "" "`Issue #17790 `__: test_set now works with " "unittest test discovery. Patch by Zachary Ware." msgstr "" "`Issue #17790 `__: test_set now works with " "unittest test discovery. Patch by Zachary Ware." #: ../../../Misc/NEWS:10247 msgid "" "`Issue #17789 `__: test_random now works with " "unittest test discovery. Patch by Zachary Ware." msgstr "" "`Issue #17789 `__: test_random now works with " "unittest test discovery. Patch by Zachary Ware." #: ../../../Misc/NEWS:10250 msgid "" "`Issue #17779 `__: test_osx_env now works " "with unittest test discovery. Patch by Zachary Ware." msgstr "" "`Issue #17779 `__: test_osx_env now works " "with unittest test discovery. Patch by Zachary Ware." #: ../../../Misc/NEWS:10253 msgid "" "`Issue #17766 `__: test_iterlen now works " "with unittest test discovery. Patch by Zachary Ware." msgstr "" "`Issue #17766 `__: test_iterlen now works " "with unittest test discovery. Patch by Zachary Ware." #: ../../../Misc/NEWS:10256 msgid "" "`Issue #17690 `__: test_time now works with " "unittest test discovery. Patch by Zachary Ware." msgstr "" "`Issue #17690 `__: test_time now works with " "unittest test discovery. Patch by Zachary Ware." #: ../../../Misc/NEWS:10259 msgid "" "`Issue #17692 `__: test_sqlite now works with " "unittest test discovery. Patch by Zachary Ware." msgstr "" "`Issue #17692 `__: test_sqlite now works with " "unittest test discovery. Patch by Zachary Ware." #: ../../../Misc/NEWS:10262 msgid "" "`Issue #11995 `__: test_pydoc doesn't import " "all sys.path modules anymore." msgstr "" "`Issue #11995 `__: test_pydoc doesn't import " "all sys.path modules anymore." #: ../../../Misc/NEWS:10264 msgid "" "`Issue #17448 `__: test_sax now skips if " "there are no xml parsers available instead of raising an ImportError." msgstr "" "`Issue #17448 `__: test_sax now skips if " "there are no xml parsers available instead of raising an ImportError." #: ../../../Misc/NEWS:10267 msgid "" "`Issue #11420 `__: make test suite pass with -" "B/DONTWRITEBYTECODE set. Initial patch by Thomas Wouters." msgstr "" "`Issue #11420 `__: make test suite pass with -" "B/DONTWRITEBYTECODE set. Initial patch by Thomas Wouters." #: ../../../Misc/NEWS:10270 msgid "" "`Issue #10652 `__: make tcl/tk tests run " "after __all__ test, patch by Zachary Ware." msgstr "" "`Issue #10652 `__: make tcl/tk tests run " "after __all__ test, patch by Zachary Ware." #: ../../../Misc/NEWS:10273 msgid "" "`Issue #11963 `__: remove human verification " "from test_parser and test_subprocess." msgstr "" "`Issue #11963 `__: remove human verification " "from test_parser and test_subprocess." #: ../../../Misc/NEWS:10275 msgid "" "`Issue #11732 `__: add a new " "suppress_crash_popup() context manager to test.support that disables crash " "popups on Windows and use it in test_faulthandler and test_capi." msgstr "" "`Issue #11732 `__: add a new " "suppress_crash_popup() context manager to test.support that disables crash " "popups on Windows and use it in test_faulthandler and test_capi." #: ../../../Misc/NEWS:10279 msgid "" "`Issue #13898 `__: test_ssl no longer prints " "a spurious stack trace on Ubuntu." msgstr "" "`Issue #13898 `__: test_ssl no longer prints " "a spurious stack trace on Ubuntu." #: ../../../Misc/NEWS:10281 msgid "" "`Issue #17283 `__: Share code between " "`__main__.py` and `regrtest.py` in `Lib/test`." msgstr "" "`Issue #17283 `__: Share code between " "`__main__.py` and `regrtest.py` in `Lib/test`." #: ../../../Misc/NEWS:10284 msgid "" "`Issue #17249 `__: convert a test in " "test_capi to use unittest and reap threads." msgstr "" "`Issue #17249 `__: convert a test in " "test_capi to use unittest and reap threads." #: ../../../Misc/NEWS:10286 msgid "" "`Issue #17107 `__: Test client-side SNI " "support in urllib.request thanks to the new server-side SNI support in the " "ssl module. Initial patch by Daniel Black." msgstr "" "`Issue #17107 `__: Test client-side SNI " "support in urllib.request thanks to the new server-side SNI support in the " "ssl module. Initial patch by Daniel Black." #: ../../../Misc/NEWS:10290 msgid "" "`Issue #17041 `__: Fix testing when Python is " "configured with the --without-doc-strings." msgstr "" "`Issue #17041 `__: Fix testing when Python is " "configured with the --without-doc-strings." #: ../../../Misc/NEWS:10293 msgid "" "`Issue #16923 `__: Fix ResourceWarnings in " "test_ssl." msgstr "" "`Issue #16923 `__: Fix ResourceWarnings in " "test_ssl." #: ../../../Misc/NEWS:10295 msgid "" "`Issue #15539 `__: Added regression tests for " "Tools/scripts/pindent.py." msgstr "" "`Issue #15539 `__: Added regression tests for " "Tools/scripts/pindent.py." #: ../../../Misc/NEWS:10297 msgid "" "`Issue #17479 `__: test_io now works with " "unittest test discovery. Patch by Zachary Ware." msgstr "" "`Issue #17479 `__: test_io now works with " "unittest test discovery. Patch by Zachary Ware." #: ../../../Misc/NEWS:10300 msgid "" "`Issue #17066 `__: test_robotparser now works " "with unittest test discovery. Patch by Zachary Ware." msgstr "" "`Issue #17066 `__: test_robotparser now works " "with unittest test discovery. Patch by Zachary Ware." #: ../../../Misc/NEWS:10303 msgid "" "`Issue #17334 `__: test_index now works with " "unittest test discovery. Patch by Zachary Ware." msgstr "" "`Issue #17334 `__: test_index now works with " "unittest test discovery. Patch by Zachary Ware." #: ../../../Misc/NEWS:10306 msgid "" "`Issue #17333 `__: test_imaplib now works " "with unittest test discovery. Patch by Zachary Ware." msgstr "" "`Issue #17333 `__: test_imaplib now works " "with unittest test discovery. Patch by Zachary Ware." #: ../../../Misc/NEWS:10309 msgid "" "`Issue #17082 `__: test_dbm* now work with " "unittest test discovery. Patch by Zachary Ware." msgstr "" "`Issue #17082 `__: test_dbm* now work with " "unittest test discovery. Patch by Zachary Ware." #: ../../../Misc/NEWS:10312 msgid "" "`Issue #17079 `__: test_ctypes now works with " "unittest test discovery. Patch by Zachary Ware." msgstr "" "`Issue #17079 `__: test_ctypes now works with " "unittest test discovery. Patch by Zachary Ware." #: ../../../Misc/NEWS:10315 msgid "" "`Issue #17304 `__: test_hash now works with " "unittest test discovery. Patch by Zachary Ware." msgstr "" "`Issue #17304 `__: test_hash now works with " "unittest test discovery. Patch by Zachary Ware." #: ../../../Misc/NEWS:10318 msgid "" "`Issue #17303 `__: test_future* now work with " "unittest test discovery. Patch by Zachary Ware." msgstr "" "`Issue #17303 `__: test_future* now work with " "unittest test discovery. Patch by Zachary Ware." #: ../../../Misc/NEWS:10321 msgid "" "`Issue #17163 `__: test_file now works with " "unittest test discovery. Patch by Zachary Ware." msgstr "" "`Issue #17163 `__: test_file now works with " "unittest test discovery. Patch by Zachary Ware." #: ../../../Misc/NEWS:10324 msgid "" "`Issue #16925 `__: test_configparser now " "works with unittest test discovery. Patch by Zachary Ware." msgstr "" "`Issue #16925 `__: test_configparser now " "works with unittest test discovery. Patch by Zachary Ware." #: ../../../Misc/NEWS:10327 msgid "" "`Issue #16918 `__: test_codecs now works with " "unittest test discovery. Patch by Zachary Ware." msgstr "" "`Issue #16918 `__: test_codecs now works with " "unittest test discovery. Patch by Zachary Ware." #: ../../../Misc/NEWS:10330 msgid "" "`Issue #16919 `__: test_crypt now works with " "unittest test discovery. Patch by Zachary Ware." msgstr "" "`Issue #16919 `__: test_crypt now works with " "unittest test discovery. Patch by Zachary Ware." #: ../../../Misc/NEWS:10333 msgid "" "`Issue #16910 `__: test_bytes, test_unicode, " "and test_userstring now work with unittest test discovery. Patch by Zachary " "Ware." msgstr "" "`Issue #16910 `__: test_bytes, test_unicode, " "and test_userstring now work with unittest test discovery. Patch by Zachary " "Ware." #: ../../../Misc/NEWS:10336 msgid "" "`Issue #16905 `__: test_warnings now works " "with unittest test discovery. Initial patch by Berker Peksag." msgstr "" "`Issue #16905 `__: test_warnings now works " "with unittest test discovery. Initial patch by Berker Peksag." #: ../../../Misc/NEWS:10339 msgid "" "`Issue #16898 `__: test_bufio now works with " "unittest test discovery. Patch by Zachary Ware." msgstr "" "`Issue #16898 `__: test_bufio now works with " "unittest test discovery. Patch by Zachary Ware." #: ../../../Misc/NEWS:10342 msgid "" "`Issue #16888 `__: test_array now works with " "unittest test discovery. Patch by Zachary Ware." msgstr "" "`Issue #16888 `__: test_array now works with " "unittest test discovery. Patch by Zachary Ware." #: ../../../Misc/NEWS:10345 msgid "" "`Issue #16896 `__: test_asyncore now works " "with unittest test discovery. Patch by Zachary Ware." msgstr "" "`Issue #16896 `__: test_asyncore now works " "with unittest test discovery. Patch by Zachary Ware." #: ../../../Misc/NEWS:10348 msgid "" "`Issue #16897 `__: test_bisect now works with " "unittest test discovery. Initial patch by Zachary Ware." msgstr "" "`Issue #16897 `__: test_bisect now works with " "unittest test discovery. Initial patch by Zachary Ware." #: ../../../Misc/NEWS:10351 msgid "" "`Issue #16852 `__: test_genericpath, " "test_posixpath, test_ntpath, and test_macpath now work with unittest test " "discovery. Patch by Zachary Ware." msgstr "" "`Issue #16852 `__: test_genericpath, " "test_posixpath, test_ntpath, and test_macpath now work with unittest test " "discovery. Patch by Zachary Ware." #: ../../../Misc/NEWS:10354 msgid "" "`Issue #16748 `__: test_heapq now works with " "unittest test discovery." msgstr "" "`Issue #16748 `__: test_heapq now works with " "unittest test discovery." #: ../../../Misc/NEWS:10356 msgid "" "`Issue #10646 `__: Tests rearranged for os." "samefile/samestat to check for not just symlinks but also hard links." msgstr "" "`Issue #10646 `__: Tests rearranged for os." "samefile/samestat to check for not just symlinks but also hard links." #: ../../../Misc/NEWS:10359 msgid "" "`Issue #15302 `__: Switch regrtest from using " "getopt to using argparse." msgstr "" "`Issue #15302 `__: Switch regrtest from using " "getopt to using argparse." #: ../../../Misc/NEWS:10361 msgid "" "`Issue #15324 `__: Fix regrtest parsing of --" "fromfile, --match, and --randomize options." msgstr "" "`Issue #15324 `__: Fix regrtest parsing of --" "fromfile, --match, and --randomize options." #: ../../../Misc/NEWS:10364 msgid "" "`Issue #16702 `__: test_urllib2_localnet " "tests now correctly ignores proxies for localhost tests." msgstr "" "`Issue #16702 `__: test_urllib2_localnet " "tests now correctly ignores proxies for localhost tests." #: ../../../Misc/NEWS:10367 msgid "" "`Issue #16664 `__: Add regression tests for " "glob's behaviour concerning entries starting with a \".\". Patch by " "Sebastian Kreft." msgstr "" "`Issue #16664 `__: Add regression tests for " "glob's behaviour concerning entries starting with a \".\". Patch by " "Sebastian Kreft." #: ../../../Misc/NEWS:10370 msgid "" "`Issue #13390 `__: The ``-R`` option to " "regrtest now also checks for memory allocation leaks, using :func:`sys." "getallocatedblocks()`." msgstr "" "`Issue #13390 `__: The ``-R`` option to " "regrtest now also checks for memory allocation leaks, using :func:`sys." "getallocatedblocks()`." #: ../../../Misc/NEWS:10373 msgid "" "`Issue #16559 `__: Add more tests for the " "json module, including some from the official test suite at json.org. Patch " "by Serhiy Storchaka." msgstr "" "`Issue #16559 `__: Add more tests for the " "json module, including some from the official test suite at json.org. Patch " "by Serhiy Storchaka." #: ../../../Misc/NEWS:10376 msgid "" "`Issue #16661 `__: Fix the `os." "getgrouplist()` test by not assuming that it gives the same output as :" "command:`id -G`." msgstr "" "`Issue #16661 `__: Fix the `os." "getgrouplist()` test by not assuming that it gives the same output as :" "command:`id -G`." #: ../../../Misc/NEWS:10379 msgid "" "`Issue #16115 `__: Add some tests for the " "executable argument to subprocess.Popen(). Initial patch by Kushal Das." msgstr "" "`Issue #16115 `__: Add some tests for the " "executable argument to subprocess.Popen(). Initial patch by Kushal Das." #: ../../../Misc/NEWS:10382 msgid "" "`Issue #16126 `__: PyErr_Format format " "mismatch in _testcapimodule.c. Patch by Serhiy Storchaka." msgstr "" "`Issue #16126 `__: PyErr_Format format " "mismatch in _testcapimodule.c. Patch by Serhiy Storchaka." #: ../../../Misc/NEWS:10385 msgid "" "`Issue #15304 `__: Fix warning message when " "`os.chdir()` fails inside `test.support.temp_cwd()`. Patch by Chris " "Jerdonek." msgstr "" "`Issue #15304 `__: Fix warning message when " "`os.chdir()` fails inside `test.support.temp_cwd()`. Patch by Chris " "Jerdonek." #: ../../../Misc/NEWS:10388 msgid "" "`Issue #15802 `__: Fix test logic in " "`TestMaildir.test_create_tmp()`. Patch by Serhiy Storchaka." msgstr "" "`Issue #15802 `__: Fix test logic in " "`TestMaildir.test_create_tmp()`. Patch by Serhiy Storchaka." #: ../../../Misc/NEWS:10391 msgid "" "`Issue #15557 `__: Added a test suite for the " "webbrowser module, thanks to Anton Barkovsky." msgstr "" "`Issue #15557 `__: Added a test suite for the " "webbrowser module, thanks to Anton Barkovsky." #: ../../../Misc/NEWS:10394 msgid "" "`Issue #16698 `__: Skip posix test_getgroups " "when built with OS X deployment target prior to 10.6." msgstr "" "`Issue #16698 `__: Skip posix test_getgroups " "when built with OS X deployment target prior to 10.6." #: ../../../Misc/NEWS:10400 msgid "" "`Issue #16067 `__: Add description into MSI " "file to replace installer's temporary name." msgstr "" "`Issue #16067 `__: Add description into MSI " "file to replace installer's temporary name." #: ../../../Misc/NEWS:10403 msgid "" "`Issue #18257 `__: Fix readlink usage in " "python-config. Install the python version again on Darwin." msgstr "" "`Issue #18257 `__: Fix readlink usage in " "python-config. Install the python version again on Darwin." #: ../../../Misc/NEWS:10406 msgid "" "`Issue #18481 `__: Add C coverage reporting " "with gcov and lcov. A new make target \"coverage-report\" creates an " "instrumented Python build, runs unit tests and creates a HTML. The report " "can be updated with \"make coverage-lcov\"." msgstr "" "`Issue #18481 `__: Add C coverage reporting " "with gcov and lcov. A new make target \"coverage-report\" creates an " "instrumented Python build, runs unit tests and creates a HTML. The report " "can be updated with \"make coverage-lcov\"." #: ../../../Misc/NEWS:10410 msgid "" "`Issue #17845 `__: Clarified the message " "printed when some module are not built." msgstr "" "`Issue #17845 `__: Clarified the message " "printed when some module are not built." #: ../../../Misc/NEWS:10412 msgid "" "`Issue #18256 `__: Compilation fix for recent " "AIX releases. Patch by David Edelsohn." msgstr "" "`Issue #18256 `__: Compilation fix for recent " "AIX releases. Patch by David Edelsohn." #: ../../../Misc/NEWS:10415 msgid "" "`Issue #17547 `__: In configure, explicitly " "pass -Wformat for the benefit for GCC 4.8." msgstr "" "`Issue #17547 `__: In configure, explicitly " "pass -Wformat for the benefit for GCC 4.8." #: ../../../Misc/NEWS:10418 msgid "" "`Issue #15172 `__: Document NASM 2.10+ as " "requirement for building OpenSSL 1.0.1 on Windows." msgstr "" "`Issue #15172 `__: Document NASM 2.10+ as " "requirement for building OpenSSL 1.0.1 on Windows." #: ../../../Misc/NEWS:10421 msgid "" "`Issue #17591 `__: Use lowercase filenames " "when including Windows header files. Patch by Roumen Petrov." msgstr "" "`Issue #17591 `__: Use lowercase filenames " "when including Windows header files. Patch by Roumen Petrov." #: ../../../Misc/NEWS:10424 msgid "" "`Issue #17550 `__: Fix the --enable-profiling " "configure switch." msgstr "" "`Issue #17550 `__: Fix the --enable-profiling " "configure switch." #: ../../../Misc/NEWS:10426 msgid "" "`Issue #17425 `__: Build with openssl 1.0.1d " "on Windows." msgstr "" "`Issue #17425 `__: Build with openssl 1.0.1d " "on Windows." #: ../../../Misc/NEWS:10428 msgid "" "`Issue #16754 `__: Fix the incorrect shared " "library extension on linux. Introduce two makefile macros SHLIB_SUFFIX and " "EXT_SUFFIX. SO now has the value of SHLIB_SUFFIX again (as in 2.x and 3.1). " "The SO macro is removed in 3.4." msgstr "" "`Issue #16754 `__: Fix the incorrect shared " "library extension on linux. Introduce two makefile macros SHLIB_SUFFIX and " "EXT_SUFFIX. SO now has the value of SHLIB_SUFFIX again (as in 2.x and 3.1). " "The SO macro is removed in 3.4." #: ../../../Misc/NEWS:10432 msgid "" "`Issue #5033 `__: Fix building of the sqlite3 " "extension module when the SQLite library version has \"beta\" in it. Patch " "by Andreas Pelme." msgstr "" "`Issue #5033 `__: Fix building of the sqlite3 " "extension module when the SQLite library version has \"beta\" in it. Patch " "by Andreas Pelme." #: ../../../Misc/NEWS:10435 msgid "" "`Issue #17228 `__: Fix building without " "pymalloc." msgstr "" "`Issue #17228 `__: Fix building without " "pymalloc." #: ../../../Misc/NEWS:10437 msgid "" "`Issue #3718 `__: Use AC_ARG_VAR to set " "MACHDEP in configure.ac." msgstr "" "`Issue #3718 `__: Use AC_ARG_VAR to set " "MACHDEP in configure.ac." #: ../../../Misc/NEWS:10439 msgid "" "`Issue #16235 `__: Implement python-config as " "a shell script." msgstr "" "`Issue #16235 `__: Implement python-config as " "a shell script." #: ../../../Misc/NEWS:10441 msgid "" "`Issue #16769 `__: Remove outdated Visual " "Studio projects." msgstr "" "`Issue #16769 `__: Remove outdated Visual " "Studio projects." #: ../../../Misc/NEWS:10443 msgid "" "`Issue #17031 `__: Fix running regen in cross " "builds." msgstr "" "`Issue #17031 `__: Fix running regen in cross " "builds." #: ../../../Misc/NEWS:10445 msgid "" "`Issue #3754 `__: fix typo in pthread " "AC_CACHE_VAL." msgstr "" "`Issue #3754 `__: fix typo in pthread " "AC_CACHE_VAL." #: ../../../Misc/NEWS:10447 msgid "" "`Issue #15484 `__: Fix _PYTHON_PROJECT_BASE " "for srcdir != builddir builds; use _PYTHON_PROJECT_BASE in distutils/" "sysconfig.py." msgstr "" "`Issue #15484 `__: Fix _PYTHON_PROJECT_BASE " "for srcdir != builddir builds; use _PYTHON_PROJECT_BASE in distutils/" "sysconfig.py." #: ../../../Misc/NEWS:10450 msgid "Drop support for Windows 2000 (changeset e52df05b496a)." msgstr "" #: ../../../Misc/NEWS:10452 msgid "" "`Issue #17029 `__: Let h2py search the " "multiarch system include directory." msgstr "" "`Issue #17029 `__: Let h2py search the " "multiarch system include directory." #: ../../../Misc/NEWS:10454 msgid "" "`Issue #16953 `__: Fix socket module " "compilation on platforms with HAVE_BROKEN_POLL. Patch by Jeffrey Armstrong." msgstr "" "`Issue #16953 `__: Fix socket module " "compilation on platforms with HAVE_BROKEN_POLL. Patch by Jeffrey Armstrong." #: ../../../Misc/NEWS:10457 msgid "" "`Issue #16320 `__: Remove redundant Makefile " "dependencies for strings and bytes." msgstr "" "`Issue #16320 `__: Remove redundant Makefile " "dependencies for strings and bytes." #: ../../../Misc/NEWS:10459 msgid "" "Cross compiling needs host and build settings. configure no longer creates a " "broken PYTHON_FOR_BUILD variable when --build is missing." msgstr "" #: ../../../Misc/NEWS:10462 msgid "" "Fix cross compiling issue in setup.py, ensure that lib_dirs and inc_dirs are " "defined in cross compiling mode, too." msgstr "" #: ../../../Misc/NEWS:10465 msgid "" "`Issue #16836 `__: Enable IPv6 support even " "if IPv6 is disabled on the build host." msgstr "" "`Issue #16836 `__: Enable IPv6 support even " "if IPv6 is disabled on the build host." #: ../../../Misc/NEWS:10467 msgid "" "`Issue #16593 `__: Have BSD 'make -s' do the " "right thing, thanks to Daniel Shahaf" msgstr "" "`Issue #16593 `__: Have BSD 'make -s' do the " "right thing, thanks to Daniel Shahaf" #: ../../../Misc/NEWS:10469 msgid "" "`Issue #16262 `__: fix out-of-src-tree " "builds, if mercurial is not installed." msgstr "" "`Issue #16262 `__: fix out-of-src-tree " "builds, if mercurial is not installed." #: ../../../Misc/NEWS:10471 msgid "" "`Issue #15298 `__: ensure _sysconfigdata is " "generated in build directory, not source directory." msgstr "" "`Issue #15298 `__: ensure _sysconfigdata is " "generated in build directory, not source directory." #: ../../../Misc/NEWS:10474 msgid "" "`Issue #15833 `__: Fix a regression in 3.3 " "that resulted in exceptions being raised if importlib failed to write byte-" "compiled files. This affected attempts to build Python out-of-tree from a " "read-only source directory." msgstr "" "`Issue #15833 `__: Fix a regression in 3.3 " "that resulted in exceptions being raised if importlib failed to write byte-" "compiled files. This affected attempts to build Python out-of-tree from a " "read-only source directory." #: ../../../Misc/NEWS:10478 msgid "" "`Issue #15923 `__: Fix a mistake in ``asdl_c." "py`` that resulted in a TypeError after 2801bf875a24 (see #15801)." msgstr "" "`Issue #15923 `__: Fix a mistake in ``asdl_c." "py`` that resulted in a TypeError after 2801bf875a24 (see #15801)." #: ../../../Misc/NEWS:10481 msgid "`Issue #16135 `__: Remove OS/2 support." msgstr "`Issue #16135 `__: Remove OS/2 support." #: ../../../Misc/NEWS:10483 msgid "" "`Issue #15819 `__: Make sure we can build " "Python out-of-tree from a read-only source directory. (Somewhat related to " "`issue #9860 `__.)" msgstr "" "`Issue #15819 `__: Make sure we can build " "Python out-of-tree from a read-only source directory. (Somewhat related to " "`issue #9860 `__.)" #: ../../../Misc/NEWS:10486 msgid "" "`Issue #15587 `__: Enable Tk high-resolution " "text rendering on Macs with Retina displays. Applies to Tkinter apps, such " "as IDLE, on OS X framework builds linked with Cocoa Tk 8.5." msgstr "" "`Issue #15587 `__: Enable Tk high-resolution " "text rendering on Macs with Retina displays. Applies to Tkinter apps, such " "as IDLE, on OS X framework builds linked with Cocoa Tk 8.5." #: ../../../Misc/NEWS:10490 msgid "" "`Issue #17161 `__: make install now also " "installs a python3 man page." msgstr "" "`Issue #17161 `__: make install now also " "installs a python3 man page." #: ../../../Misc/NEWS:10495 msgid "" "`Issue #18351 `__: Fix various issues in a " "function in importlib provided to help " "PyImport_ExecCodeModuleWithPathnames() (and thus by extension " "PyImport_ExecCodeModule() and PyImport_ExecCodeModuleEx())." msgstr "" "`Issue #18351 `__: Fix various issues in a " "function in importlib provided to help " "PyImport_ExecCodeModuleWithPathnames() (and thus by extension " "PyImport_ExecCodeModule() and PyImport_ExecCodeModuleEx())." #: ../../../Misc/NEWS:10499 msgid "" "`Issue #15767 `__: Added " "PyErr_SetImportErrorSubclass()." msgstr "" "`Issue #15767 `__: Added " "PyErr_SetImportErrorSubclass()." #: ../../../Misc/NEWS:10501 msgid "PyErr_SetImportError() now sets TypeError when its msg argument is set." msgstr "" #: ../../../Misc/NEWS:10503 msgid "" "`Issue #9369 `__: The types of `char*` " "arguments of PyObject_CallFunction() and PyObject_CallMethod() now changed " "to `const char*`. Based on patches by Jörg Müller and Lars Buitinck." msgstr "" "`Issue #9369 `__: The types of `char*` " "arguments of PyObject_CallFunction() and PyObject_CallMethod() now changed " "to `const char*`. Based on patches by Jörg Müller and Lars Buitinck." #: ../../../Misc/NEWS:10507 msgid "" "`Issue #17206 `__: Py_CLEAR(), Py_DECREF(), " "Py_XINCREF() and Py_XDECREF() now expand their arguments once instead of " "multiple times. Patch written by Illia Polosukhin." msgstr "" "`Issue #17206 `__: Py_CLEAR(), Py_DECREF(), " "Py_XINCREF() and Py_XDECREF() now expand their arguments once instead of " "multiple times. Patch written by Illia Polosukhin." #: ../../../Misc/NEWS:10511 msgid "" "`Issue #17522 `__: Add the PyGILState_Check() " "API." msgstr "" "`Issue #17522 `__: Add the PyGILState_Check() " "API." #: ../../../Misc/NEWS:10513 msgid "" "`Issue #17327 `__: Add PyDict_SetDefault." msgstr "" "`Issue #17327 `__: Add PyDict_SetDefault." #: ../../../Misc/NEWS:10515 msgid "" "`Issue #16881 `__: Fix Py_ARRAY_LENGTH macro " "for GCC < 3.1." msgstr "" "`Issue #16881 `__: Fix Py_ARRAY_LENGTH macro " "for GCC < 3.1." #: ../../../Misc/NEWS:10517 msgid "" "`Issue #16505 `__: Remove unused " "Py_TPFLAGS_INT_SUBCLASS." msgstr "" "`Issue #16505 `__: Remove unused " "Py_TPFLAGS_INT_SUBCLASS." #: ../../../Misc/NEWS:10519 msgid "" "`Issue #16086 `__: PyTypeObject.tp_flags and " "PyType_Spec.flags are now unsigned (unsigned long and unsigned int) to avoid " "an undefined behaviour with Py_TPFLAGS_TYPE_SUBCLASS ((1 << 31). " "PyType_GetFlags() result type is now unsigned too (unsigned long, instead of " "long)." msgstr "" "`Issue #16086 `__: PyTypeObject.tp_flags and " "PyType_Spec.flags are now unsigned (unsigned long and unsigned int) to avoid " "an undefined behaviour with Py_TPFLAGS_TYPE_SUBCLASS ((1 << 31). " "PyType_GetFlags() result type is now unsigned too (unsigned long, instead of " "long)." #: ../../../Misc/NEWS:10524 msgid "" "`Issue #16166 `__: Add PY_LITTLE_ENDIAN and " "PY_BIG_ENDIAN macros and unified endianness detection and handling." msgstr "" "`Issue #16166 `__: Add PY_LITTLE_ENDIAN and " "PY_BIG_ENDIAN macros and unified endianness detection and handling." #: ../../../Misc/NEWS:10530 msgid "" "`Issue #23006 `__: Improve the documentation " "and indexing of dict.__missing__. Add an entry in the language datamodel " "special methods section. Revise and index its discussion in the stdtypes " "mapping/dict section." msgstr "" "`Issue #23006 `__: Improve the documentation " "and indexing of dict.__missing__. Add an entry in the language datamodel " "special methods section. Revise and index its discussion in the stdtypes " "mapping/dict section." #: ../../../Misc/NEWS:10534 msgid "" "`Issue #17701 `__: Improving strftime " "documentation." msgstr "" "`Issue #17701 `__: Improving strftime " "documentation." #: ../../../Misc/NEWS:10536 msgid "" "`Issue #18440 `__: Clarify that `hash()` can " "truncate the value returned from an object's custom `__hash__()` method." msgstr "" "`Issue #18440 `__: Clarify that `hash()` can " "truncate the value returned from an object's custom `__hash__()` method." #: ../../../Misc/NEWS:10539 msgid "" "`Issue #17844 `__: Add links to encoders and " "decoders for bytes-to-bytes codecs." msgstr "" "`Issue #17844 `__: Add links to encoders and " "decoders for bytes-to-bytes codecs." #: ../../../Misc/NEWS:10541 msgid "" "`Issue #14097 `__: improve the \"introduction" "\" page of the tutorial." msgstr "" "`Issue #14097 `__: improve the \"introduction" "\" page of the tutorial." #: ../../../Misc/NEWS:10543 msgid "" "`Issue #17977 `__: The documentation for the " "cadefault argument's default value in urllib.request.urlopen() is fixed to " "match the code." msgstr "" "`Issue #17977 `__: The documentation for the " "cadefault argument's default value in urllib.request.urlopen() is fixed to " "match the code." #: ../../../Misc/NEWS:10546 msgid "" "`Issue #6696 `__: add documentation for the " "Profile objects, and improve profile/cProfile docs. Patch by Tom Pinckney." msgstr "" "`Issue #6696 `__: add documentation for the " "Profile objects, and improve profile/cProfile docs. Patch by Tom Pinckney." #: ../../../Misc/NEWS:10549 msgid "" "`Issue #15940 `__: Specify effect of locale " "on time functions." msgstr "" "`Issue #15940 `__: Specify effect of locale " "on time functions." #: ../../../Misc/NEWS:10551 msgid "" "`Issue #17538 `__: Document XML vulnerabilties" msgstr "" "`Issue #17538 `__: Document XML vulnerabilties" #: ../../../Misc/NEWS:10553 msgid "" "`Issue #16642 `__: sched.scheduler timefunc " "initial default is time.monotonic. Patch by Ramchandra Apte" msgstr "" "`Issue #16642 `__: sched.scheduler timefunc " "initial default is time.monotonic. Patch by Ramchandra Apte" #: ../../../Misc/NEWS:10556 msgid "" "`Issue #17047 `__: remove doubled words in " "docs and docstrings reported by Serhiy Storchaka and Matthew Barnett." msgstr "" "`Issue #17047 `__: remove doubled words in " "docs and docstrings reported by Serhiy Storchaka and Matthew Barnett." #: ../../../Misc/NEWS:10559 msgid "" "`Issue #15465 `__: Document the versioning " "macros in the C API docs rather than the standard library docs. Patch by " "Kushal Das." msgstr "" "`Issue #15465 `__: Document the versioning " "macros in the C API docs rather than the standard library docs. Patch by " "Kushal Das." #: ../../../Misc/NEWS:10562 msgid "" "`Issue #16406 `__: Combine the pages for " "uploading and registering to PyPI." msgstr "" "`Issue #16406 `__: Combine the pages for " "uploading and registering to PyPI." #: ../../../Misc/NEWS:10564 msgid "" "`Issue #16403 `__: Document how distutils " "uses the maintainer field in PKG-INFO. Patch by Jyrki Pulliainen." msgstr "" "`Issue #16403 `__: Document how distutils " "uses the maintainer field in PKG-INFO. Patch by Jyrki Pulliainen." #: ../../../Misc/NEWS:10567 msgid "" "`Issue #16695 `__: Document how glob handles " "filenames starting with a dot. Initial patch by Jyrki Pulliainen." msgstr "" "`Issue #16695 `__: Document how glob handles " "filenames starting with a dot. Initial patch by Jyrki Pulliainen." #: ../../../Misc/NEWS:10570 msgid "" "`Issue #8890 `__: Stop advertising an insecure " "practice by replacing uses of the /tmp directory with better alternatives in " "the documentation. Patch by Geoff Wilson." msgstr "" "`Issue #8890 `__: Stop advertising an insecure " "practice by replacing uses of the /tmp directory with better alternatives in " "the documentation. Patch by Geoff Wilson." #: ../../../Misc/NEWS:10574 msgid "" "`Issue #17203 `__: add long option names to " "unittest discovery docs." msgstr "" "`Issue #17203 `__: add long option names to " "unittest discovery docs." #: ../../../Misc/NEWS:10576 msgid "" "`Issue #13094 `__: add \"Why do lambdas " "defined in a loop with different values all return the same result?\" " "programming FAQ." msgstr "" "`Issue #13094 `__: add \"Why do lambdas " "defined in a loop with different values all return the same result?\" " "programming FAQ." #: ../../../Misc/NEWS:10579 msgid "" "`Issue #14901 `__: Update portions of the " "Windows FAQ. Patch by Ashish Nitin Patil." msgstr "" "`Issue #14901 `__: Update portions of the " "Windows FAQ. Patch by Ashish Nitin Patil." #: ../../../Misc/NEWS:10582 msgid "" "`Issue #16267 `__: Better document the 3.3+ " "approach to combining @abstractmethod with @staticmethod, @classmethod and " "@property" msgstr "" "`Issue #16267 `__: Better document the 3.3+ " "approach to combining @abstractmethod with @staticmethod, @classmethod and " "@property" #: ../../../Misc/NEWS:10585 msgid "" "`Issue #15209 `__: Clarify exception chaining " "description in exceptions module documentation" msgstr "" "`Issue #15209 `__: Clarify exception chaining " "description in exceptions module documentation" #: ../../../Misc/NEWS:10588 msgid "" "`Issue #15990 `__: Improve argument/parameter " "documentation." msgstr "" "`Issue #15990 `__: Improve argument/parameter " "documentation." #: ../../../Misc/NEWS:10590 msgid "" "`Issue #16209 `__: Move the documentation for " "the str built-in function to a new str class entry in the \"Text Sequence " "Type\" section." msgstr "" "`Issue #16209 `__: Move the documentation for " "the str built-in function to a new str class entry in the \"Text Sequence " "Type\" section." #: ../../../Misc/NEWS:10593 msgid "" "`Issue #13538 `__: Improve str() and object." "__str__() documentation." msgstr "" "`Issue #13538 `__: Improve str() and object." "__str__() documentation." #: ../../../Misc/NEWS:10595 msgid "" "`Issue #16489 `__: Make it clearer that " "importlib.find_loader() needs parent packages to be explicitly imported." msgstr "" "`Issue #16489 `__: Make it clearer that " "importlib.find_loader() needs parent packages to be explicitly imported." #: ../../../Misc/NEWS:10598 msgid "" "`Issue #16400 `__: Update the description of " "which versions of a given package PyPI displays." msgstr "" "`Issue #16400 `__: Update the description of " "which versions of a given package PyPI displays." #: ../../../Misc/NEWS:10601 msgid "" "`Issue #15677 `__: Document that zlib and " "gzip accept a compression level of 0 to mean 'no compression'. Patch by " "Brian Brazil." msgstr "" "`Issue #15677 `__: Document that zlib and " "gzip accept a compression level of 0 to mean 'no compression'. Patch by " "Brian Brazil." #: ../../../Misc/NEWS:10604 msgid "" "`Issue #16197 `__: Update winreg docstrings " "and documentation to match code. Patch by Zachary Ware." msgstr "" "`Issue #16197 `__: Update winreg docstrings " "and documentation to match code. Patch by Zachary Ware." #: ../../../Misc/NEWS:10607 msgid "" "`Issue #8040 `__: added a version switcher to " "the documentation. Patch by Yury Selivanov." msgstr "" "`Issue #8040 `__: added a version switcher to " "the documentation. Patch by Yury Selivanov." #: ../../../Misc/NEWS:10610 msgid "" "`Issue #16241 `__: Document -X faulthandler " "command line option. Patch by Marek Šuppa." msgstr "" "`Issue #16241 `__: Document -X faulthandler " "command line option. Patch by Marek Šuppa." #: ../../../Misc/NEWS:10613 msgid "" "Additional comments and some style changes in the concurrent.futures URL " "retrieval example" msgstr "" #: ../../../Misc/NEWS:10616 msgid "" "`Issue #16115 `__: Improve subprocess.Popen() " "documentation around args, shell, and executable arguments." msgstr "" "`Issue #16115 `__: Improve subprocess.Popen() " "documentation around args, shell, and executable arguments." #: ../../../Misc/NEWS:10619 msgid "" "`Issue #13498 `__: Clarify docs of os." "makedirs()'s exist_ok argument. Done with great native-speaker help from R. " "David Murray." msgstr "" "`Issue #13498 `__: Clarify docs of os." "makedirs()'s exist_ok argument. Done with great native-speaker help from R. " "David Murray." #: ../../../Misc/NEWS:10622 msgid "" "`Issue #15533 `__: Clarify docs and add tests " "for `subprocess.Popen()`'s cwd argument." msgstr "" "`Issue #15533 `__: Clarify docs and add tests " "for `subprocess.Popen()`'s cwd argument." #: ../../../Misc/NEWS:10625 msgid "" "`Issue #15979 `__: Improve timeit " "documentation." msgstr "" "`Issue #15979 `__: Improve timeit " "documentation." #: ../../../Misc/NEWS:10627 msgid "" "`Issue #16036 `__: Improve documentation of " "built-in `int()`'s signature and arguments." msgstr "" "`Issue #16036 `__: Improve documentation of " "built-in `int()`'s signature and arguments." #: ../../../Misc/NEWS:10630 msgid "" "`Issue #15935 `__: Clarification of " "`argparse` docs, re: add_argument() type and default arguments. Patch " "contributed by Chris Jerdonek." msgstr "" "`Issue #15935 `__: Clarification of " "`argparse` docs, re: add_argument() type and default arguments. Patch " "contributed by Chris Jerdonek." #: ../../../Misc/NEWS:10633 msgid "" "`Issue #11964 `__: Document a change in v3.2 " "to the behavior of the indent parameter of json encoding operations." msgstr "" "`Issue #11964 `__: Document a change in v3.2 " "to the behavior of the indent parameter of json encoding operations." #: ../../../Misc/NEWS:10636 msgid "" "`Issue #15116 `__: Remove references to " "appscript as it is no longer being supported." msgstr "" "`Issue #15116 `__: Remove references to " "appscript as it is no longer being supported." #: ../../../Misc/NEWS:10642 msgid "" "`Issue #18817 `__: Fix a resource warning in " "Lib/aifc.py demo. Patch by Vajrasky Kok." msgstr "" "`Issue #18817 `__: Fix a resource warning in " "Lib/aifc.py demo. Patch by Vajrasky Kok." #: ../../../Misc/NEWS:10645 msgid "" "`Issue #18439 `__: Make patchcheck work on " "Windows for ACKS, NEWS." msgstr "" "`Issue #18439 `__: Make patchcheck work on " "Windows for ACKS, NEWS." #: ../../../Misc/NEWS:10647 msgid "" "`Issue #18448 `__: Fix a typo in Tools/demo/" "eiffel.py." msgstr "" "`Issue #18448 `__: Fix a typo in Tools/demo/" "eiffel.py." #: ../../../Misc/NEWS:10649 msgid "" "`Issue #18457 `__: Fixed saving of formulas " "and complex numbers in Tools/demo/ss1.py." msgstr "" "`Issue #18457 `__: Fixed saving of formulas " "and complex numbers in Tools/demo/ss1.py." #: ../../../Misc/NEWS:10652 msgid "" "`Issue #18449 `__: Make Tools/demo/ss1.py " "work again on Python 3. Patch by Févry Thibault." msgstr "" "`Issue #18449 `__: Make Tools/demo/ss1.py " "work again on Python 3. Patch by Févry Thibault." #: ../../../Misc/NEWS:10655 msgid "" "`Issue #12990 `__: The \"Python Launcher\" on " "OSX could not launch python scripts that have paths that include wide " "characters." msgstr "" "`Issue #12990 `__: The \"Python Launcher\" on " "OSX could not launch python scripts that have paths that include wide " "characters." #: ../../../Misc/NEWS:10658 msgid "" "`Issue #15239 `__: Make mkstringprep.py work " "again on Python 3." msgstr "" "`Issue #15239 `__: Make mkstringprep.py work " "again on Python 3." #: ../../../Misc/NEWS:10660 msgid "" "`Issue #17028 `__: Allowed Python arguments " "to be supplied to the Windows launcher." msgstr "" "`Issue #17028 `__: Allowed Python arguments " "to be supplied to the Windows launcher." #: ../../../Misc/NEWS:10663 msgid "" "`Issue #17156 `__: pygettext.py now detects " "the encoding of source files and correctly writes and escapes non-ascii " "characters." msgstr "" "`Issue #17156 `__: pygettext.py now detects " "the encoding of source files and correctly writes and escapes non-ascii " "characters." #: ../../../Misc/NEWS:10666 msgid "" "`Issue #15539 `__: Fix a number of bugs in " "Tools/scripts/pindent.py. Now pindent.py works with a \"with\" statement. " "pindent.py no longer produces improper indentation. pindent.py now works " "with continued lines broken after \"class\" or \"def\" keywords and with " "continuations at the start of line." msgstr "" "`Issue #15539 `__: Fix a number of bugs in " "Tools/scripts/pindent.py. Now pindent.py works with a \"with\" statement. " "pindent.py no longer produces improper indentation. pindent.py now works " "with continued lines broken after \"class\" or \"def\" keywords and with " "continuations at the start of line." #: ../../../Misc/NEWS:10671 msgid "" "`Issue #11797 `__: Add a 2to3 fixer that maps " "reload() to imp.reload()." msgstr "" "`Issue #11797 `__: Add a 2to3 fixer that maps " "reload() to imp.reload()." #: ../../../Misc/NEWS:10673 msgid "" "`Issue #10966 `__: Remove the concept of " "unexpected skipped tests." msgstr "" "`Issue #10966 `__: Remove the concept of " "unexpected skipped tests." #: ../../../Misc/NEWS:10675 msgid "" "`Issue #9893 `__: Removed the Misc/Vim " "directory." msgstr "" "`Issue #9893 `__: Removed the Misc/Vim " "directory." #: ../../../Misc/NEWS:10677 msgid "Removed the Misc/TextMate directory." msgstr "Le répertoire Misc/TextMate a été supprimé." #: ../../../Misc/NEWS:10679 msgid "" "`Issue #16245 `__: Add the Tools/scripts/" "parse_html5_entities.py script to parse the list of HTML5 entities and " "update the html.entities.html5 dictionary." msgstr "" "`Issue #16245 `__: Add the Tools/scripts/" "parse_html5_entities.py script to parse the list of HTML5 entities and " "update the html.entities.html5 dictionary." #: ../../../Misc/NEWS:10682 msgid "" "`Issue #15378 `__: Fix Tools/unicode/" "comparecodecs.py. Patch by Serhiy Storchaka." msgstr "" "`Issue #15378 `__: Fix Tools/unicode/" "comparecodecs.py. Patch by Serhiy Storchaka." #: ../../../Misc/NEWS:10684 msgid "" "`Issue #16549 `__: Make json.tool work again " "on Python 3 and add tests. Initial patch by Berker Peksag and Serhiy " "Storchaka." msgstr "" "`Issue #16549 `__: Make json.tool work again " "on Python 3 and add tests. Initial patch by Berker Peksag and Serhiy " "Storchaka." #: ../../../Misc/NEWS:10687 msgid "" "`Issue #13301 `__: use ast.literal_eval() " "instead of eval() in Tools/i18n/msgfmt.py. Patch by Serhiy Storchaka." msgstr "" "`Issue #13301 `__: use ast.literal_eval() " "instead of eval() in Tools/i18n/msgfmt.py. Patch by Serhiy Storchaka." #: ../../../Misc/NEWS:10693 msgid "" "`Issue #18569 `__: The installer now adds .py " "to the PATHEXT variable when extensions are registered. Patch by Paul Moore." msgstr "" "`Issue #18569 `__: The installer now adds .py " "to the PATHEXT variable when extensions are registered. Patch by Paul Moore." #: ../../../Misc/NEWS:10696 msgid "**(For information about older versions, consult the HISTORY file.)**" msgstr "" "**(Pour des informations sur les versions précédentes, consultez le fichier " "HISTORY.)**" #: ../Doc/whatsnew/index.rst:5 msgid "What's New in Python" msgstr "Nouveautés de Python" #: ../Doc/whatsnew/index.rst:7 msgid "" "The \"What's New in Python\" series of essays takes tours through the most " "important changes between major Python versions. They are a \"must read\" " "for anyone wishing to stay up-to-date after a new release." msgstr "" "La série d'essais \"Quoi de neuf dans Python\" reprend les plus importants " "changements entres les versions majeures de Python. Elles sont à lire pour " "quiconque souhaitant être à jour suite à une nouvelle sortie." #: ../Doc/whatsnew/index.rst:30 msgid "" "The \"Changelog\" is a HTML version of the file :source:`Misc/NEWS` which " "contains *all* nontrivial changes to Python for the current version." msgstr "" "Le « Changelog » est une version HTML du fichier :source:`Misc/NEWS` qui " "contient *tous* les changements non-triviaux de Python pour la version " "courante."